Fix locale memmem namespace (bug 17585).
[platform/upstream/glibc.git] / include / pwd.h
1 #ifndef _PWD_H
2 #include <pwd/pwd.h>
3
4 #ifndef _ISOMAC
5 /* Now define the internal interfaces.  */
6 extern int __getpwent_r (struct passwd *__resultbuf, char *__buffer,
7                          size_t __buflen, struct passwd **__result)
8      attribute_hidden;
9 extern int __old_getpwent_r (struct passwd *__resultbuf, char *__buffer,
10                              size_t __buflen, struct passwd **__result);
11 extern int __getpwuid_r (__uid_t __uid, struct passwd *__resultbuf,
12                          char *__buffer, size_t __buflen,
13                          struct passwd **__result);
14 extern int __old_getpwuid_r (__uid_t __uid, struct passwd *__resultbuf,
15                              char *__buffer, size_t __buflen,
16                              struct passwd **__result);
17 extern int __getpwnam_r (const char *__name, struct passwd *__resultbuf,
18                          char *__buffer, size_t __buflen,
19                          struct passwd **__result);
20 extern int __old_getpwnam_r (const char *__name, struct passwd *__resultbuf,
21                              char *__buffer, size_t __buflen,
22                              struct passwd **__result);
23 extern int __fgetpwent_r (FILE * __stream, struct passwd *__resultbuf,
24                           char *__buffer, size_t __buflen,
25                           struct passwd **__result);
26
27 #include <nss/nss.h>
28
29 struct parser_data;
30 extern int _nss_files_parse_pwent (char *line, struct passwd *result,
31                                    struct parser_data *data,
32                                    size_t datalen, int *errnop);
33 libc_hidden_proto (_nss_files_parse_pwent)
34
35 #define DECLARE_NSS_PROTOTYPES(service)                                 \
36 extern enum nss_status _nss_ ## service ## _setpwent (int);             \
37 extern enum nss_status _nss_ ## service ## _endpwent (void);            \
38 extern enum nss_status _nss_ ## service ## _getpwnam_r                  \
39                        (const char *name, struct passwd *pwd,           \
40                         char *buffer, size_t buflen, int *errnop);      \
41 extern enum nss_status _nss_ ## service ## _getpwuid_r                  \
42                        (uid_t uid, struct passwd *pwd,                  \
43                         char *buffer, size_t buflen, int *errnop);      \
44 extern enum nss_status _nss_ ## service ##_getpwent_r                   \
45                        (struct passwd *result, char *buffer,            \
46                         size_t buflen, int *errnop);
47
48 DECLARE_NSS_PROTOTYPES (compat)
49 DECLARE_NSS_PROTOTYPES (files)
50 DECLARE_NSS_PROTOTYPES (hesiod)
51 DECLARE_NSS_PROTOTYPES (nis)
52 DECLARE_NSS_PROTOTYPES (nisplus)
53
54 #undef DECLARE_NSS_PROTOTYPES
55 #endif
56
57 #endif