All pastes #10877 Raw Edit

Mine!

public text v1 · immutable
#10877 ·published 2005-05-04 03:48 UTC
rendered paste body
Index: sys-xattr.c
===================================================================
--- sys-xattr.c (revision 43993)
+++ sys-xattr.c (working copy)
@@ -31,9 +31,14 @@
        if (Mono_Posix_FromXattrFlags (flags, &_flags) == -1)
                return -1;

+#if __APPLE__
+       return setxattr (path, name, value, size, 0, _flags);
+#else
        return setxattr (path, name, value, size, _flags);
+#endif
 }

+#if !__APPLE__
 gint32
 Mono_Posix_Syscall_lsetxattr (const char *path, const char *name, char *value, mph_size_t size, gint32 flags)
 {
@@ -45,6 +50,7 @@

        return lsetxattr (path, name, value, size, _flags);
 }
+#endif

 gint32
 Mono_Posix_Syscall_fsetxattr (int fd, const char *name, char *value, mph_size_t size, gint32 flags)
@@ -55,49 +61,74 @@
        if (Mono_Posix_FromXattrFlags (flags, &_flags) == -1)
                return -1;

+#if __APPLE__
+       return fsetxattr (fd, name, value, (size_t) size, 0, _flags);
+#else
        return lsetxattr (fd, name, value, (size_t) size, _flags);
+#endif
+
 }

 mph_ssize_t
 Mono_Posix_Syscall_getxattr (const char *path, const char *name, void *value, mph_size_t size)
 {
        mph_return_if_size_t_overflow (size);
+#if __APPLE__
+       return getxattr (path, name, value, (size_t) size, 0, 0);
+#else
        return getxattr (path, name, value, (size_t) size);
+#endif
 }

+#if !__APPLE__
 mph_ssize_t
 Mono_Posix_Syscall_lgetxattr (const char *path, const char *name, void *value, mph_size_t size)
 {
        mph_return_if_size_t_overflow (size);
        return lgetxattr (path, name, value, (size_t) size);
 }
+#endif

 mph_ssize_t
 Mono_Posix_Syscall_fgetxattr (int fd, const char *name, void *value, mph_size_t size)
 {
        mph_return_if_size_t_overflow (size);
+#if __APPLE__
+       return fgetxattr (fd, name, value, (size_t) size, 0, 0);
+#else
        return fgetxattr (fd, name, value, (size_t) size);
+#endif
 }

 mph_ssize_t
 Mono_Posix_Syscall_listxattr (const char *path, char *list, mph_size_t size)
 {
        mph_return_if_size_t_overflow (size);
+#if __APPLE__
+       return listxattr (path, list, (size_t) size, 0);
+#else
        return listxattr (path, list, (size_t) size);
+#endif
 }

+#if !__APPLE__
 mph_ssize_t
 Mono_Posix_Syscall_llistxattr (const char *path, char *list, mph_size_t size)
 {
        mph_return_if_size_t_overflow (size);
        return llistxattr (path, list, (size_t) size);
 }
+#endif

 mph_ssize_t
 Mono_Posix_Syscall_flistxattr (int fd, char *list, mph_size_t size)
 {
        mph_return_if_size_t_overflow (size);
+#if __APPLE__
+       return flistxattr (fd, list, (size_t) size, 0);
+#else
        return flistxattr (fd, list, (size_t) size);
+#endif
 }

 G_END_DECLS