4 #include <attr/xattr.h>
7 ssize_t sys_getxattr(const char *path, const char *name, void *value, size_t size)
9 return getxattr(path, name, value, size);
12 ssize_t sys_fgetxattr(int filedes, const char *name, void *value, size_t size)
14 return fgetxattr(filedes, name, value, size);
17 int sys_setxattr(const char *path, const char *name, const void *value,
18 size_t size, int flags)
20 return setxattr(path, name, value, size, flags);
23 int sys_fsetxattr(int filedes, const char *name, const void *value,
24 size_t size, int flags)
26 return fsetxattr(filedes, name, value, size, flags);
30 int main(int argc, const char *argv[])
32 const char *fname = argv[1];
34 size_t size = 1*1024*1024;
35 char *buf = malloc(size);
36 const char *attrname = "user.DOSATTRIB";
38 memset(buf, 'x', size);
41 rc = sys_setxattr(fname, attrname, buf, size, 0);
43 } while (rc == -1 && size > 1);
48 printf("set xattr of size %d\n", size);
50 rc = sys_getxattr(fname, attrname, buf, size);