[w32file] Move MonoIO.Find{First,Next,Close} to managed
[mono.git] / support / macros.c
index c64c7dae52832cde199f77566d25f3ac8696abeb..8d455889d7ca4c30ea10c8a6e7c2471afcec7179 100644 (file)
@@ -1,3 +1,4 @@
+#include "mph.h"
 #include <sys/types.h>
 #include <sys/wait.h>
 #include <sys/stat.h>
@@ -7,6 +8,8 @@
 #include <errno.h>
 #include <dirent.h>
 #include <string.h>
+#include <glib.h>
+#include "map.h"
 
 int wifexited (int status)
 {
@@ -38,7 +41,7 @@ int wstopsig (int status)
        return WSTOPSIG (status);
 }
 
-int helper_Mono_Posix_Stat(char *filename, int dereference, 
+int helper_Mono_Posix_Stat(const char *filename, int dereference, 
        int *device,
        int *inode,
        int *mode,
@@ -46,12 +49,12 @@ int helper_Mono_Posix_Stat(char *filename, int dereference,
        int *uid,
        int *gid,
        int *rdev,
-       long *size,
-       long *blksize,
-       long *blocks,
-       long *atime,
-       long *mtime,
-       long *ctime
+       gint64 *size,
+       gint64 *blksize,
+       gint64 *blocks,
+       gint64 *atime,
+       gint64 *mtime,
+       gint64 *ctime
        ) {
        int ret;
        struct stat buf;
@@ -90,12 +93,22 @@ char *helper_Mono_Posix_GetGroupName(int gid) {
        return strdup (p->gr_name);
 }
 
-char *helper_Mono_Posix_readdir(DIR *dir) {
-       struct dirent* e = readdir(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,
+       int *uid,
+       int *gid,
+       char **name,
+       char **home,
+       char **shell);
+
 int helper_Mono_Posix_getpwnamuid (int mode, char *in_name, int in_uid,
        char **account,
        char **password,
@@ -142,3 +155,5 @@ int helper_Mono_Posix_getpwnamuid (int mode, char *in_name, int in_uid,
 
        return 0;
 }
+#endif  /* def HAVE_GETPWNAM_R */
+