1: /*
   2:  * Copyright (c) 1980 Regents of the University of California.
   3:  * All rights reserved.  The Berkeley software License Agreement
   4:  * specifies the terms and conditions for redistribution.
   5:  */
   6: 
   7: #if defined(LIBC_SCCS) && !defined(lint)
   8: static char sccsid[] = "@(#)getpw.c	5.2 (Berkeley) 3/9/86";
   9: #endif LIBC_SCCS and not lint
  10: 
  11: #include    <stdio.h>
  12: 
  13: getpw(uid, buf)
  14: int uid;
  15: char buf[];
  16: {
  17:     static FILE *pwf;
  18:     register n, c;
  19:     register char *bp;
  20: 
  21:     if(pwf == 0)
  22:         pwf = fopen("/etc/passwd", "r");
  23:     if(pwf == NULL)
  24:         return(1);
  25:     rewind(pwf);
  26: 
  27:     for (;;) {
  28:         bp = buf;
  29:         while((c=getc(pwf)) != '\n') {
  30:             if(c == EOF)
  31:                 return(1);
  32:             *bp++ = c;
  33:         }
  34:         *bp++ = '\0';
  35:         bp = buf;
  36:         n = 3;
  37:         while(--n)
  38:         while((c = *bp++) != ':')
  39:             if(c == '\n')
  40:                 return(1);
  41:         while((c = *bp++) != ':') {
  42:             if(c<'0' || c>'9')
  43:                 continue;
  44:             n = n*10+c-'0';
  45:         }
  46:         if(n == uid)
  47:             return(0);
  48:     }
  49: }

Defined functions

Defined variables

sccsid defined in line 8; never used
Last modified: 1986-03-10
Generated: 2016-12-26
Generated by src2html V0.67
page hit count: ?E00
Valid CSS Valid XHTML 1.0 Strict