[BACK]Return to getinfo.c CVS log [TXT][DIR] Up to [local] / src / usr.bin / cap_mkdb

Diff for /src/usr.bin/cap_mkdb/Attic/getinfo.c between version 1.11 and 1.12

version 1.11, 2007/05/06 01:12:25 version 1.12, 2007/05/07 02:23:13
Line 137 
Line 137 
 {  {
         char *r_end, *rp, **db_p;          char *r_end, *rp, **db_p;
         int myfd, eof, foundit;          int myfd, eof, foundit;
         char *record;          char *record, *s;
         int tc_not_resolved;          int tc_not_resolved;
   
         /*          /*
Line 266 
Line 266 
   
                                         pos = rp - record;                                          pos = rp - record;
                                         newsize = r_end - record + BFRAG;                                          newsize = r_end - record + BFRAG;
                                         record = realloc(record, newsize);                                          s = realloc(record, newsize);
                                         if (record == NULL) {                                          if (s == NULL) {
                                                   free(record);
                                                 errno = ENOMEM;                                                  errno = ENOMEM;
                                                 if (myfd)                                                  if (myfd)
                                                         (void)close(fd);                                                          (void)close(fd);
                                                 return (-2);                                                  return (-2);
                                         }                                          }
                                           record = s;
                                         r_end = record + newsize;                                          r_end = record + newsize;
                                         rp = record + pos;                                          rp = record + pos;
                                 }                                  }
Line 313 
Line 315 
          * references in it ...           * references in it ...
          */           */
         {          {
                 char *newicap, *s;                  char *newicap;
                 int newilen;                  int newilen;
                 u_int ilen;                  u_int ilen;
                 int diff, iret, tclen;                  int diff, iret, tclen;
Line 337 
Line 339 
                          * Find end of use=name and stomp on the trailing `,'                           * Find end of use=name and stomp on the trailing `,'
                          * (if present) so we can use it to call ourselves.                           * (if present) so we can use it to call ourselves.
                          */                           */
                         s = tc;                          s = tc + strcspn(tc, ",");
                         for (;;)                          if (*s == ',') {
                                 if (*s == '\0')                                  *s = '\0';
                                         break;                                  ++s;
                                 else                          }
                                         if (*s++ == ',') {  
                                                 *(s - 1) = '\0';  
                                                 break;  
                                         }  
                         tcstart = tc - 4;                          tcstart = tc - 4;
                         tclen = s - tcstart;                          tclen = s - tcstart;
                         tcend = s;                          tcend = s;
Line 373 
Line 371 
                                 }                                  }
                         }                          }
                         /* not interested in name field of tc'ed record */                          /* not interested in name field of tc'ed record */
                         s = newicap;                          s = newicap + strcspn(newicap, ",");
                         for (;;)                          if (*s == ',')
                                 if (*s == '\0')                                  ++s;
                                         break;  
                                 else  
                                         if (*s++ == ',')  
                                                 break;  
                         newilen -= s - newicap;                          newilen -= s - newicap;
                         newicap = s;                          newicap = s;
   
Line 403 
Line 397 
                                 newsize = r_end - record + diff + BFRAG;                                  newsize = r_end - record + diff + BFRAG;
                                 tcpos = tcstart - record;                                  tcpos = tcstart - record;
                                 tcposend = tcend - record;                                  tcposend = tcend - record;
                                 record = realloc(record, newsize);                                  s = realloc(record, newsize);
                                 if (record == NULL) {                                  if (s == NULL) {
                                           free(record);
                                         errno = ENOMEM;                                          errno = ENOMEM;
                                         if (myfd)                                          if (myfd)
                                                 (void)close(fd);                                                  (void)close(fd);
                                         free(icap);                                          free(icap);
                                         return (-2);                                          return (-2);
                                 }                                  }
                                   record = s;
                                 r_end = record + newsize;                                  r_end = record + newsize;
                                 rp = record + pos;                                  rp = record + pos;
                                 tcstart = record + tcpos;                                  tcstart = record + tcpos;
Line 441 
Line 437 
         if (myfd)          if (myfd)
                 (void)close(fd);                  (void)close(fd);
         *len = rp - record - 1; /* don't count NUL */          *len = rp - record - 1; /* don't count NUL */
         if (r_end > rp)          if (r_end > rp) {
                 if ((record =                  if ((s =
                      realloc(record, (size_t)(rp - record))) == NULL) {                       realloc(record, (size_t)(rp - record))) == NULL) {
                           free(record);
                         errno = ENOMEM;                          errno = ENOMEM;
                         return (-2);                          return (-2);
                 }                  } else
                           record = s;
           }
   
         *cap = record;          *cap = record;
         if (tc_not_resolved)          if (tc_not_resolved)

Legend:
Removed from v.1.11  
changed lines
  Added in v.1.12