]> git.ipfire.org Git - thirdparty/glibc.git/blame - include/pwd.h
Correct range checking in mallopt/mxfast/tcache [BZ #25194]
[thirdparty/glibc.git] / include / pwd.h
CommitLineData
6796bc80 1#ifndef _PWD_H
28f540f4 2#include <pwd/pwd.h>
bdbf022d 3
31341567 4#ifndef _ISOMAC
bdbf022d 5/* Now define the internal interfaces. */
fe559c5e 6extern int __getpwent_r (struct passwd *__resultbuf, char *__buffer,
dff07c4b
UD
7 size_t __buflen, struct passwd **__result)
8 attribute_hidden;
ed073f0e
AJ
9extern int __old_getpwent_r (struct passwd *__resultbuf, char *__buffer,
10 size_t __buflen, struct passwd **__result);
fe559c5e
UD
11extern int __getpwuid_r (__uid_t __uid, struct passwd *__resultbuf,
12 char *__buffer, size_t __buflen,
783cd767 13 struct passwd **__result) attribute_hidden;
ed073f0e
AJ
14extern int __old_getpwuid_r (__uid_t __uid, struct passwd *__resultbuf,
15 char *__buffer, size_t __buflen,
16 struct passwd **__result);
a784e502 17extern int __getpwnam_r (const char *__name, struct passwd *__resultbuf,
fe559c5e 18 char *__buffer, size_t __buflen,
783cd767 19 struct passwd **__result) attribute_hidden;
a784e502 20extern int __old_getpwnam_r (const char *__name, struct passwd *__resultbuf,
ed073f0e
AJ
21 char *__buffer, size_t __buflen,
22 struct passwd **__result);
fe559c5e
UD
23extern int __fgetpwent_r (FILE * __stream, struct passwd *__resultbuf,
24 char *__buffer, size_t __buflen,
783cd767 25 struct passwd **__result) attribute_hidden;
51eecc4a 26
676599b3 27#include <nss.h>
ed073f0e
AJ
28
29struct parser_data;
30extern int _nss_files_parse_pwent (char *line, struct passwd *result,
31 struct parser_data *data,
32 size_t datalen, int *errnop);
5656e294 33libc_hidden_proto (_nss_files_parse_pwent)
ed073f0e 34
51eecc4a
AJ
35#define DECLARE_NSS_PROTOTYPES(service) \
36extern enum nss_status _nss_ ## service ## _setpwent (int); \
37extern enum nss_status _nss_ ## service ## _endpwent (void); \
38extern enum nss_status _nss_ ## service ## _getpwnam_r \
a784e502 39 (const char *name, struct passwd *pwd, \
51eecc4a
AJ
40 char *buffer, size_t buflen, int *errnop); \
41extern enum nss_status _nss_ ## service ## _getpwuid_r \
a784e502 42 (uid_t uid, struct passwd *pwd, \
51eecc4a
AJ
43 char *buffer, size_t buflen, int *errnop); \
44extern enum nss_status _nss_ ## service ##_getpwent_r \
a784e502 45 (struct passwd *result, char *buffer, \
51eecc4a
AJ
46 size_t buflen, int *errnop);
47
48DECLARE_NSS_PROTOTYPES (compat)
49DECLARE_NSS_PROTOTYPES (files)
50DECLARE_NSS_PROTOTYPES (hesiod)
51DECLARE_NSS_PROTOTYPES (nis)
52DECLARE_NSS_PROTOTYPES (nisplus)
53
54#undef DECLARE_NSS_PROTOTYPES
31341567 55#endif
51eecc4a 56
6796bc80 57#endif