[BACK]Return to getcap.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/getcap.c between version 1.7 and 1.10

version 1.7, 1994/03/06 07:54:35 version 1.10, 1995/08/24 05:26:35
Line 1 
Line 1 
   /*      $NetBSD$        */
   
 /*-  /*-
  * Copyright (c) 1992 The Regents of the University of California.   * Copyright (c) 1992, 1993
  * All rights reserved.   *      The Regents of the University of California.  All rights reserved.
  *   *
  * This code is derived from software contributed to Berkeley by   * This code is derived from software contributed to Berkeley by
  * Casey Leedom of Lawrence Livermore National Laboratory.   * Casey Leedom of Lawrence Livermore National Laboratory.
Line 35 
Line 37 
  */   */
   
 #if defined(LIBC_SCCS) && !defined(lint)  #if defined(LIBC_SCCS) && !defined(lint)
 /*static char *sccsid = "from: @(#)getcap.c     5.15 (Berkeley) 3/19/93";*/  #if 0
 static char *rcsid = "$Id$";  static char sccsid[] = "@(#)getcap.c    8.3 (Berkeley) 3/25/94";
   #else
   static char rcsid[] = "$NetBSD$";
   #endif
 #endif /* LIBC_SCCS and not lint */  #endif /* LIBC_SCCS and not lint */
   
 #include <sys/types.h>  #include <sys/types.h>
Line 251  getent(cap, len, db_array, fd, name, dep
Line 256  getent(cap, len, db_array, fd, name, dep
                              != NULL) {                               != NULL) {
                                 free(record);                                  free(record);
                                 retval = cdbget(capdbp, &record, name);                                  retval = cdbget(capdbp, &record, name);
                                 clen = strlen(record);                                  if (retval < 0) {
                                 if ((cbuf = malloc(clen + 1)) == NULL) {                                          /* no record available */
                                         errno = ENOMEM;                                          (void)capdbp->close(capdbp);
                                         return (-2);                                          return (retval);
                                 }                                  }
                                 memmove(cbuf, record, clen + 1);                                  /* save the data; close frees it */
                                   clen = strlen(record);
                                   cbuf = malloc(clen + 1);
                                   memcpy(cbuf, record, clen + 1);
                                 if (capdbp->close(capdbp) < 0) {                                  if (capdbp->close(capdbp) < 0) {
                                         free(cbuf);                                          free(cbuf);
                                         return (-2);                                          return (-2);
Line 268  getent(cap, len, db_array, fd, name, dep
Line 276  getent(cap, len, db_array, fd, name, dep
                                 fd = open(*db_p, O_RDONLY, 0);                                  fd = open(*db_p, O_RDONLY, 0);
                                 if (fd < 0) {                                  if (fd < 0) {
                                         /* No error on unfound file. */                                          /* No error on unfound file. */
                                         if (errno == ENOENT)                                          continue;
                                                 continue;  
                                         free(record);  
                                         return (-2);  
                                 }                                  }
                                 myfd = 1;                                  myfd = 1;
                         }                          }

Legend:
Removed from v.1.7  
changed lines
  Added in v.1.10

CVSweb <webmaster@jp.NetBSD.org>