[BACK]Return to getgrent.c CVS log [TXT][DIR] Up to [cvs.NetBSD.org] / src / lib / libc / gen

Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files.

Diff for /src/lib/libc/gen/getgrent.c between version 1.54.2.3 and 1.54.2.4

version 1.54.2.3, 2005/07/11 21:25:27 version 1.54.2.4, 2005/07/11 21:27:00
Line 365  __grscan_files(int *retval, struct group
Line 365  __grscan_files(int *retval, struct group
                                                         /* scan line by line */                                                          /* scan line by line */
         while (fgets(filebuf, sizeof(filebuf), state->fp) != NULL) {          while (fgets(filebuf, sizeof(filebuf), state->fp) != NULL) {
                 ep = strchr(filebuf, '\n');                  ep = strchr(filebuf, '\n');
                 if (ep == NULL) {       /* fail on lines that are too big */                  if (ep == NULL) {       /* skip lines that are too big */
                         int ch;                          int ch;
   
                         while ((ch = getc(state->fp)) != '\n' && ch != EOF)                          while ((ch = getc(state->fp)) != '\n' && ch != EOF)
                                 continue;                                  continue;
                         rv = NS_UNAVAIL;                          continue;
                         break;  
                 }                  }
                 *ep = '\0';                             /* clear trailing \n */                  *ep = '\0';                             /* clear trailing \n */
   
Line 380  __grscan_files(int *retval, struct group
Line 379  __grscan_files(int *retval, struct group
   
                                                         /* validate line */                                                          /* validate line */
                 if (! _gr_parse(filebuf, grp, buffer, buflen)) {                  if (! _gr_parse(filebuf, grp, buffer, buflen)) {
                         rv = NS_UNAVAIL;                          continue;                       /* skip bad lines */
                         break;  
                 }                  }
                 if (! search) {                         /* just want this one */                  if (! search) {                         /* just want this one */
                         rv = NS_SUCCESS;                          rv = NS_SUCCESS;
Line 666  __grscan_dns(int *retval, struct group *
Line 664  __grscan_dns(int *retval, struct group *
                         return rv;                          return rv;
         }          }
   
    next_dns_entry:
         hp = NULL;          hp = NULL;
         rv = NS_NOTFOUND;          rv = NS_NOTFOUND;
   
Line 708  __grscan_dns(int *retval, struct group *
Line 707  __grscan_dns(int *retval, struct group *
                     (!name && gid == grp->gr_gid)) {    /* want specific */                      (!name && gid == grp->gr_gid)) {    /* want specific */
                         rv = NS_SUCCESS;                          rv = NS_SUCCESS;
                 }                  }
         } else          } else {                                        /* dodgy entry */
                 rv = NS_UNAVAIL;                  if (!search) {                  /* try again if ! searching */
                           hesiod_free_list(state->context, hp);
                           goto next_dns_entry;
                   }
           }
   
  dnsgrscan_out:   dnsgrscan_out:
         if (rv != NS_SUCCESS && rv != NS_NOTFOUND)          if (rv != NS_SUCCESS && rv != NS_NOTFOUND)
Line 982  __grscan_nis(int *retval, struct group *
Line 985  __grscan_nis(int *retval, struct group *
                         return rv;                          return rv;
         }          }
   
    next_nis_entry:
         key = NULL;          key = NULL;
         data = NULL;          data = NULL;
         rv = NS_SUCCESS;          rv = NS_SUCCESS;
Line 1048  __grscan_nis(int *retval, struct group *
Line 1052  __grscan_nis(int *retval, struct group *
                                                         /* want specific */                                                          /* want specific */
                                 rv = NS_SUCCESS;                                  rv = NS_SUCCESS;
                         }                          }
                 } else                  } else {                                /* dodgy entry */
                         rv = NS_UNAVAIL;                          if (!search) {          /* try again if ! searching */
                                   if (key)
                                           free(key);
                                   free(data);
                                   goto next_nis_entry;
                           }
                   }
         }          }
   
         if (rv != NS_SUCCESS && rv != NS_NOTFOUND)          if (rv != NS_SUCCESS && rv != NS_NOTFOUND)
Line 1426  __grscan_compat(int *retval, struct grou
Line 1436  __grscan_compat(int *retval, struct grou
                         break;                          break;
   
                 ep = strchr(filebuf, '\n');                  ep = strchr(filebuf, '\n');
                 if (ep == NULL) {       /* fail on lines that are too big */                  if (ep == NULL) {       /* skip lines that are too big */
                         int ch;                          int ch;
   
                         while ((ch = getc(state->fp)) != '\n' && ch != EOF)                          while ((ch = getc(state->fp)) != '\n' && ch != EOF)
                                 continue;                                  continue;
                         rv = NS_UNAVAIL;                          continue;
                         break;  
                 }                  }
                 *ep = '\0';                             /* clear trailing \n */                  *ep = '\0';                             /* clear trailing \n */
   
Line 1462  __grscan_compat(int *retval, struct grou
Line 1471  __grscan_compat(int *retval, struct grou
   
                                                         /* validate line */                                                          /* validate line */
                 if (! _gr_parse(filebuf, grp, buffer, buflen)) {                  if (! _gr_parse(filebuf, grp, buffer, buflen)) {
                         rv = NS_UNAVAIL;                          continue;                       /* skip bad lines */
                         break;  
                 }                  }
   
  compatgrscan_cmpgrp:   compatgrscan_cmpgrp:

Legend:
Removed from v.1.54.2.3  
changed lines
  Added in v.1.54.2.4

CVSweb <webmaster@jp.NetBSD.org>