diff options
author | Jan Kara <[email protected]> | 2011-04-20 20:30:40 +0200 |
---|---|---|
committer | Linus Torvalds <[email protected]> | 2011-04-21 07:34:44 -0700 |
commit | df7e130384efd1c732aa08648dad46687fee3d96 (patch) | |
tree | 7dd8f9f0fe4cdcb27242a33783440bae5690e47e | |
parent | 584f79046780e10cb24367a691f8c28398a00e84 (diff) |
vfs: Pass setxattr(2) flags properly
For some reason generic_setxattr() did not pass flags (XATTR_CREATE,
XATTR_REPLACE) to the filesystem specific helper. This caused that
setxattr(2) syscall just ignored these flags.
Fix the bug by passing flags correctly.
Signed-off-by: Jan Kara <[email protected]>
Acked-by: Christoph Hellwig <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
-rw-r--r-- | fs/xattr.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/xattr.c b/fs/xattr.c index a19acdb81cd1..f1ef94974dea 100644 --- a/fs/xattr.c +++ b/fs/xattr.c @@ -666,7 +666,7 @@ generic_setxattr(struct dentry *dentry, const char *name, const void *value, siz handler = xattr_resolve_name(dentry->d_sb->s_xattr, &name); if (!handler) return -EOPNOTSUPP; - return handler->set(dentry, name, value, size, 0, handler->flags); + return handler->set(dentry, name, value, size, flags, handler->flags); } /* |