On Wed, 2010-03-31 at 17:06 -0700, jvrao wrote: > lsetxattr()/lgetxsttr() functions are not working on a ext4 symlink. > But works fine on a regular file. > > I tried the following program.. Not sure if I am missing something. > Any help will be appreciated. > > I tried your test program on ext2/3/btrfs, it seems all broken. Not sure how this not being visible? Thought xattrs are heavily used by default on some distros. Mingming > --------- simple program ------------- > [jvrao]# cat sxl.c > #include <stdio.h> > #include <sys/types.h> > #include <attr/xattr.h> > > main() > { > int ha=5; > int ha_out=-1; > int err; > err = lsetxattr("./foo", "user.junk", &ha, sizeof(int),0); > if (err == -1) > perror("lsetxattr failed"); > lgetxattr("./foo", "user.junk", &ha_out, sizeof(int)); > if (err == -1) > perror("lsetxattr failed"); > printf("file:./foo ha:%d ha_out:%d\n", ha, ha_out); > > ha_out = -1; > err = lsetxattr("./foo.sl", "user.junk", &ha, sizeof(int),0); > if (err == -1) > perror("lsetxattr failed"); > lgetxattr("./foo.sl", "user.junk", &ha_out, sizeof(int)); > if (err == -1) > perror("lsetxattr failed"); > printf("file:./foo.sl ha:%d ha_out:%d\n", ha, ha_out); > } > ------------------------ > > [jvrao]# ls -l foo* > -rw-r--r--. 1 root root 0 2010-03-31 16:49 foo > lrwxrwxrwx. 1 root root 3 2010-03-31 16:49 foo.sl -> foo > > [jvrao]# ./sxl > file:./foo ha:5 ha_out:5 > lsetxattr failed: Operation not permitted > lsetxattr failed: Operation not permitted > file:./foo.sl ha:5 ha_out:-1 > > > > -- > To unsubscribe from this list: send the line "unsubscribe linux-ext4" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-ext4" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html