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

Diff for /src/usr.bin/cap_mkdb/cap_mkdb.c between version 1.4 and 1.5

version 1.4, 1999/03/05 04:47:45 version 1.5, 2000/01/09 01:10:37
Line 202 
Line 202 
                 }                  }
   
                 /* Create the stored record. */                  /* Create the stored record. */
                 (void) memmove(&((u_char *)(data.data))[1], bp, len + 1);  
                 data.size = len + 2;  
                 if (info) {                  if (info) {
                           (void) memcpy(&((u_char *)(data.data))[1], bp, len + 1);
                           data.size = len + 2;
                         for (t = memchr((char *)data.data + 1, ',', data.size - 1);                          for (t = memchr((char *)data.data + 1, ',', data.size - 1);
                              t;                               t;
                              t = memchr(t, ',', data.size - (t - (char *)data.data)))                               t = memchr(t, ',', data.size - (t - (char *)data.data)))
Line 214 
Line 214 
                                 warnx("NUL in entry: %.*s", (int)MIN(len, 20), bp);                                  warnx("NUL in entry: %.*s", (int)MIN(len, 20), bp);
                                 continue;                                  continue;
                         }                          }
                   } else {
                           char *capbeg, *capend;
   
                           t = (char *)data.data + 1;
                           /* Copy the cap name and trailing ':' */
                           len = p - bp + 1;
                           memcpy(t, bp, len);
                           t += len;
   
                           /* Copy entry, collapsing empty fields. */
                           capbeg = p + 1;
                           while (*capbeg) {
                                   /* Skip empty fields. */
                                   if ((len = strspn(capbeg, ": \t\n\r")))
                                           capbeg += len;
   
                                   /* Find the end of this cap and copy it w/ : */
                                   capend = strchr(capbeg, ':');
                                   if (capend)
                                           len = capend - capbeg + 1;
                                   else
                                           len = strlen(capbeg);
                                   memcpy(t, capbeg, len);
                                   t += len;
                                   capbeg += len;
                           }
                           *t = '\0';
                           data.size = t - (char *)data.data + 1;
                 }                  }
   
                 /* Store the record under the name field. */                  /* Store the record under the name field. */

Legend:
Removed from v.1.4  
changed lines
  Added in v.1.5