* include/grp.h (DECLARE_NSS_PROTOTYPES): New.
[kopensolaris-gnu/glibc.git] / include / pwd.h
1 #ifndef _PWD_H
2 #include <pwd/pwd.h>
3
4 /* Now define the internal interfaces.  */
5 extern int __getpwent_r (struct passwd *__resultbuf, char *__buffer,
6                          size_t __buflen, struct passwd **__result);
7 extern int __getpwuid_r (__uid_t __uid, struct passwd *__resultbuf,
8                          char *__buffer, size_t __buflen,
9                          struct passwd **__result);
10 extern int __getpwnam_r (__const char *__name, struct passwd *__resultbuf,
11                          char *__buffer, size_t __buflen,
12                          struct passwd **__result);
13 extern int __fgetpwent_r (FILE * __stream, struct passwd *__resultbuf,
14                           char *__buffer, size_t __buflen,
15                           struct passwd **__result);
16
17 #include <nss/nss.h>
18 #define DECLARE_NSS_PROTOTYPES(service)                                 \
19 extern enum nss_status _nss_ ## service ## _setpwent (int);             \
20 extern enum nss_status _nss_ ## service ## _endpwent (void);            \
21 extern enum nss_status _nss_ ## service ## _getpwnam_r                  \
22                        (const char *name, struct passwd *pwd,           \
23                         char *buffer, size_t buflen, int *errnop);      \
24 extern enum nss_status _nss_ ## service ## _getpwuid_r                  \
25                        (uid_t uid, struct passwd *pwd,                  \
26                         char *buffer, size_t buflen, int *errnop);      \
27 extern enum nss_status _nss_ ## service ##_getpwent_r                   \
28                        (struct passwd *result, char *buffer,            \
29                         size_t buflen, int *errnop);
30
31 DECLARE_NSS_PROTOTYPES (compat)
32 DECLARE_NSS_PROTOTYPES (files)
33 DECLARE_NSS_PROTOTYPES (hesiod)
34 DECLARE_NSS_PROTOTYPES (nis)
35 DECLARE_NSS_PROTOTYPES (nisplus)
36
37 #undef DECLARE_NSS_PROTOTYPES
38
39 #endif