home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 35 Internet / 35-Internet.zip / radi116c.zip / radius116c / src / radius / pwd.h < prev    next >
C/C++ Source or Header  |  1997-02-01  |  2KB  |  102 lines

  1. #ifndef _PWD_INCLUDED /* allow multiple inclusions */
  2. #define _PWD_INCLUDED
  3.  
  4. #ifdef __cplusplus
  5. extern "C" {
  6. #endif
  7.  
  8. #include <types.h>
  9.  
  10. #ifdef _INCLUDE_POSIX_SOURCE
  11.  
  12. #  ifndef _GID_T
  13. #    define _GID_T
  14.      typedef long gid_t;
  15. #  endif /* _GID_T */
  16.  
  17. #  ifndef _UID_T
  18. #    define _UID_T
  19.      typedef long uid_t;
  20. #  endif /* _UID_T */
  21.  
  22.    struct passwd {
  23.     char    *pw_name;
  24.     char     *pw_passwd;
  25. #ifdef _CLASSIC_ID_TYPES
  26.     int    pw_uid;
  27.     int    pw_gid;
  28. #else
  29.     uid_t    pw_uid;
  30.     gid_t    pw_gid;
  31. #endif
  32.     char     *pw_age;
  33.     char    *pw_comment;
  34.     char    *pw_gecos;
  35.     char    *pw_dir;
  36.     char    *pw_shell;
  37.     long    pw_audid;
  38.     int    pw_audflg;
  39.    };
  40.  
  41. #  if defined(__STDC__) || defined(__cplusplus)
  42.      extern struct passwd *getpwuid(uid_t);
  43.      extern struct passwd *getpwnam(const char *);
  44. #  else /* __STDC__ || __cplusplus */
  45.      extern struct passwd *getpwuid();
  46.      extern struct passwd *getpwnam();
  47. #  endif /* __STDC__ || __cplusplus */
  48. #endif /* _INCLUDE_POSIX_SOURCE */
  49.  
  50. #ifdef _INCLUDE_HPUX_SOURCE
  51.    struct s_passwd {
  52.        char    *pw_name;
  53.        char    *pw_passwd;
  54.        char    *pw_age;
  55.        long     pw_audid;
  56.        int     pw_audflg;
  57.    };
  58.  
  59.    struct comment {
  60.     char    *c_dept;
  61.     char    *c_name;
  62.     char    *c_acct;
  63.     char    *c_bin;
  64.    };
  65.  
  66. #  if defined(__STDC__) || defined(__cplusplus)
  67. #    ifndef _STDIO_INCLUDED
  68. #      include <stdio.h>
  69. #    endif /* _STDIO_INCLUDED */
  70.  
  71.      extern void setpwent(void);
  72.      extern void endpwent(void);
  73.      extern struct passwd *getpwent(void);
  74.      extern struct passwd *fgetpwent(FILE *);
  75.      extern struct s_passwd *getspwent(void);
  76.      extern struct s_passwd *getspwuid(int);
  77.      extern struct s_passwd *getspwaid(int);
  78.      extern struct s_passwd *getspwnam(char *);
  79.      extern struct s_passwd *fgetspwent(FILE *);
  80. #  else /* __STDC__ || __cplusplus */
  81.      extern void setpwent();
  82.      extern void endpwent();
  83.      extern struct passwd *getpwent();
  84.      extern struct passwd *fgetpwent();
  85.      extern struct s_passwd *getspwent();
  86.      extern struct s_passwd *getspwuid();
  87.      extern struct s_passwd *getspwaid();
  88.      extern struct s_passwd *getspwnam();
  89.      extern struct s_passwd *fgetspwent();
  90. #  endif /* __STDC__ || __cplusplus */
  91.  
  92. #  ifndef UID_NOBODY        /* Uid of NFS "nobody". */
  93. #     define UID_NOBODY ((unsigned short) 0xfffe)
  94. #  endif
  95. #endif /* _INCLUDE_HPUX_SOURCE */
  96.  
  97. #ifdef __cplusplus
  98. }
  99. #endif
  100.  
  101. #endif /* _PWD_INCLUDED */
  102.