1 #ifndef SH_STATIC_H 2 #define SH_STATIC_H 3 4 #include "config_xor.h" 5 6 #if defined(SH_COMPILE_STATIC) && defined(__linux__) 7 8 #ifdef SH_NEED_PWD_GRP 9 int sh_initgroups(const char *user, gid_t gid); 10 struct group * sh_getgrent(void); 11 struct passwd * sh_getpwent(void); 12 void sh_endgrent(void); 13 void sh_setgrent(void); 14 void sh_endpwent(void); 15 void sh_setpwent(void); 16 struct group * sh_getgrnam(const char *name); 17 int sh_getgrnam_r(const char *name, struct group *gbuf, 18 char *buf, size_t buflen, struct group **gbufp); 19 20 struct passwd * sh_getpwnam(const char *name); 21 int sh_getpwnam_r(const char *name, struct passwd *pwbuf, 22 char *buf, size_t buflen, struct passwd **pwbufp); 23 24 struct group * sh_getgrgid(gid_t gid); 25 int sh_getgrgid_r(gid_t gid, struct group *gbuf, 26 char *buf, size_t buflen, struct group **gbufp); 27 28 struct passwd * sh_getpwuid(uid_t uid); 29 int sh_getpwuid_r(uid_t uid, struct passwd *pwbuf, 30 char *buf, size_t buflen, struct passwd **pwbufp); 31 32 #endif 33 34 #ifdef SH_NEED_GETHOSTBYXXX 35 struct hostent * sh_gethostbyaddr (const void *addr, socklen_t len, int type); 36 struct hostent * sh_gethostbyname(const char *name); 37 #endif 38 39 #else 40 41 #define sh_initgroups initgroups 42 #define sh_getgrnam getgrnam 43 #define sh_getgrnam_r getgrnam_r 44 #define sh_getgrgid getgrgid 45 #define sh_getgrgid_r getgrgid_r 46 #define sh_getpwnam getpwnam 47 #define sh_getpwnam_r getpwnam_r 48 #define sh_getpwuid getpwuid 49 #define sh_getpwuid_r getpwuid_r 50 #define sh_getpwent getpwent 51 #define sh_endpwent endpwent 52 #define sh_setpwent setpwent 53 54 #define sh_gethostbyaddr gethostbyaddr 55 #define sh_gethostbyname gethostbyname 56 57 #endif 58 59 #endif 60 61