diff options
Diffstat (limited to 'newlib')
-rw-r--r-- | newlib/ChangeLog | 5 | ||||
-rw-r--r-- | newlib/libc/include/pwd.h | 12 |
2 files changed, 15 insertions, 2 deletions
diff --git a/newlib/ChangeLog b/newlib/ChangeLog index 6ac584a..988d0e6 100644 --- a/newlib/ChangeLog +++ b/newlib/ChangeLog @@ -1,3 +1,8 @@ +2014-01-17 Corinna Vinschen <vinschen@redhat.com> + + * libc/include/pwd.h: Use __foo_VISIBLE macros from sys/cdefs.h. + (setpassent): Declare. + 2014-01-17 Sebastian Huber <sebastian.huber@embedded-brains.de> * libc/include/sys/_default_fcntl.h (LOCK_SH): Define. diff --git a/newlib/libc/include/pwd.h b/newlib/libc/include/pwd.h index 1526abf..d849f5f 100644 --- a/newlib/libc/include/pwd.h +++ b/newlib/libc/include/pwd.h @@ -41,7 +41,7 @@ extern "C" { #include <sys/types.h> -#ifndef _POSIX_SOURCE +#if __BSD_VISIBLE #define _PATH_PASSWD "/etc/passwd" #define _PASSWORD_LEN 128 /* max length, not counting NULL */ @@ -61,16 +61,24 @@ struct passwd { #ifndef __INSIDE_CYGWIN__ struct passwd *getpwuid (uid_t); struct passwd *getpwnam (const char *); + +#if __POSIX_VISIBLE >= 200112 || __XSI_VISIBLE >= 500 int getpwnam_r (const char *, struct passwd *, char *, size_t , struct passwd **); int getpwuid_r (uid_t, struct passwd *, char *, size_t, struct passwd **); -#ifndef _POSIX_SOURCE +#endif + +#if __XSI_VISIBLE >= 500 struct passwd *getpwent (void); void setpwent (void); void endpwent (void); #endif + +#if __BSD_VISIBLE +int setpassent (int); #endif +#endif /*!__INSIDE_CYGWIN__*/ #ifdef __cplusplus } |