X-Git-Url: http://wien.tomnetworks.com/gitweb/?a=blobdiff_plain;f=support%2Fmacros.c;h=d2cf5e7bcdbb95922b01c51f2200283350af380d;hb=8d44cb69b32bd1776546b6a70b848651f37e6fe9;hp=802f0631942be93fa8c47e1ef97bfb226e4e33cd;hpb=9869ae24b88761ab261c4311e24f7383b4af3f02;p=mono.git diff --git a/support/macros.c b/support/macros.c index 802f0631942..d2cf5e7bcdb 100644 --- a/support/macros.c +++ b/support/macros.c @@ -9,6 +9,7 @@ #include #include #include +#include "map.h" int wifexited (int status) { @@ -81,23 +82,24 @@ int helper_Mono_Posix_Stat(const char *filename, int dereference, return 0; } -const char *helper_Mono_Posix_GetUserName(int uid) { +char *helper_Mono_Posix_GetUserName(int uid) { struct passwd *p = getpwuid(uid); if (p == NULL) return NULL; return strdup (p->pw_name); } -const char *helper_Mono_Posix_GetGroupName(int gid) { +char *helper_Mono_Posix_GetGroupName(int gid) { struct group *p = getgrgid(gid); if (p == NULL) return NULL; return strdup (p->gr_name); } -const char *helper_Mono_Posix_readdir(void *dir) { +char *helper_Mono_Posix_readdir(void *dir) { struct dirent* e = readdir((DIR*) dir); if (e == NULL) return NULL; return strdup (e->d_name); } +#if HAVE_GETPWNAM_R int helper_Mono_Posix_getpwnamuid (int mode, char *in_name, int in_uid, char **account, char **password, @@ -144,3 +146,5 @@ int helper_Mono_Posix_getpwnamuid (int mode, char *in_name, int in_uid, return 0; } +#endif /* def HAVE_GETPWNAM_R */ +