Changeset b9cb41b


Ignore:
Timestamp:
Dec 6, 2008, 11:25:33 PM (9 years ago)
Author:
Anders Kaseorg <andersk@mit.edu>
Branches:
master, debian, release-1.4, release-1.5, release-1.6, release-1.7, release-1.8, release-1.9
Children:
56d0189
Parents:
49a8434
git-author:
Anders Kaseorg <andersk@mit.edu> (12/06/08 23:20:19)
git-committer:
Anders Kaseorg <andersk@mit.edu> (12/06/08 23:25:33)
Message:
Replace questionable sprintf(buf, "%s...", buf, ...) pattern, which is
broken by -D_FORTIFY_SOURCE.

perl -pe 's/(sprintf\s*\(\s*([^,]*))(\s*,\s*")%s([^"]*"\s*,)\s*\2\s*,/\1 + strlen(\2)\3\4/g'
Files:
5 edited

Legend:

Unmodified
Added
Removed
  • functions.c

    r49a8434 rb9cb41b  
    16421642        /* fix this */
    16431643        sprintf(buff, "  Checkd Ath: %i\n", n->z_checked_auth);
    1644         sprintf(buff, "%s  Multi notc: %s\n", buff, n->z_multinotice);
    1645         sprintf(buff, "%s  Num other : %i\n", buff, n->z_num_other_fields);
    1646         sprintf(buff, "%s  Msg Len   : %i\n", buff, n->z_message_len);
     1644        sprintf(buff + strlen(buff), "  Multi notc: %s\n", n->z_multinotice);
     1645        sprintf(buff + strlen(buff), "  Num other : %i\n", n->z_num_other_fields);
     1646        sprintf(buff + strlen(buff), "  Msg Len   : %i\n", n->z_message_len);
    16471647        owl_fmtext_append_normal(&fm, buff);
    16481648       
     
    25892589  sprintf(argbuff, "class ^(un)*%s(\\.d)*$", tmpclass);
    25902590  if (tmpinstance) {
    2591     sprintf(argbuff, "%s and ( instance ^(un)*%s(\\.d)*$ )", argbuff, tmpinstance);
     2591    sprintf(argbuff + strlen(argbuff), " and ( instance ^(un)*%s(\\.d)*$ )", tmpinstance);
    25922592  }
    25932593  owl_free(tmpclass);
     
    29992999    owl_text_tr(quoted, '\'', '.');
    30003000    owl_text_tr(quoted, '"', '.');
    3001     sprintf(buff, "%s ^(un)*%s(\\.d)*$", buff, quoted);
     3001    sprintf(buff + strlen(buff), " ^(un)*%s(\\.d)*$", quoted);
    30023002    owl_free(quoted);
    30033003  }
     
    30093009    owl_text_tr(quoted, '\'', '.');
    30103010    owl_text_tr(quoted, '"', '.');
    3011     sprintf(buff, "%s and instance ^(un)*%s(\\.d)*$", buff, quoted);
     3011    sprintf(buff + strlen(buff), " and instance ^(un)*%s(\\.d)*$", quoted);
    30123012    owl_free(quoted);
    30133013  }
     
    30173017    owl_text_tr(quoted, '\'', '.');
    30183018    owl_text_tr(quoted, '"', '.');
    3019     sprintf(buff, "%s and recipient ^%s$", buff, quoted);
     3019    sprintf(buff + strlen(buff), " and recipient ^%s$", quoted);
    30203020    owl_free(quoted);
    30213021  }
  • global.c

    rb7bb454 rb9cb41b  
    568568  strcpy(g->startupargs, "");
    569569  for (i=0; i<argc; i++) {
    570     sprintf(g->startupargs, "%s%s ", g->startupargs, argv[i]);
     570    sprintf(g->startupargs + strlen(g->startupargs), "%s ", argv[i]);
    571571  }
    572572  g->startupargs[strlen(g->startupargs)-1]='\0';
  • zcrypt.c

    r34509d5 rb9cb41b  
    375375
    376376    for (i = 0; i < 8; i++) {
    377       sprintf(out, "%s%c", out, ((output[i] & 0xf0) >> 4) + BASE_CODE);
    378       sprintf(out, "%s%c", out, (output[i] & 0x0f)        + BASE_CODE);
     377      sprintf(out + strlen(out), "%c", ((output[i] & 0xf0) >> 4) + BASE_CODE);
     378      sprintf(out + strlen(out), "%c", (output[i] & 0x0f)        + BASE_CODE);
    379379    }
    380380
  • zephyr.c

    r451db9e rb9cb41b  
    814814    ZGetLocations(&locations,&one);
    815815    myuser=short_zuser(user);
    816     sprintf(out, "%s%s: %s\t%s\t%s\n", out, myuser,
     816    sprintf(out + strlen(out), "%s: %s\t%s\t%s\n", myuser,
    817817            locations.host ? locations.host : "?",
    818818            locations.tty ? locations.tty : "?",
  • zwrite.c

    r3f3ee61 rb9cb41b  
    231231    for (i=0; i<j; i++) {
    232232      if (strcmp(z->realm, "")) {
    233         sprintf(toline, "%s%s@%s ", toline, (char *) owl_list_get_element(&(z->recips), i), z->realm);
     233        sprintf(toline + strlen(toline), "%s@%s ", (char *) owl_list_get_element(&(z->recips), i), z->realm);
    234234      } else {
    235         sprintf(toline, "%s%s ", toline, (char *) owl_list_get_element(&(z->recips), i));
     235        sprintf(toline + strlen(toline), "%s ", (char *) owl_list_get_element(&(z->recips), i));
    236236      }
    237237    }
Note: See TracChangeset for help on using the changeset viewer.