This will be used to separate the xattr operations from the AT_* flags.
Cc: Alexander Viro <[email protected]>
Signed-off-by: Florian Weimer <[email protected]>
---
fs/xattr.c | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/fs/xattr.c b/fs/xattr.c
index 3377dff..9e44641 100644
--- a/fs/xattr.c
+++ b/fs/xattr.c
@@ -24,6 +24,8 @@
#include <asm/uaccess.h>
+#define XATTR_SET_MASK (XATTR_CREATE | XATTR_REPLACE)
+
/*
* Check permissions for extended attribute access. This is a bit complicated
* because different namespaces have very different rules.
@@ -327,7 +329,7 @@ setxattr(struct dentry *d, const char __user *name, const void __user *value,
void *vvalue = NULL; /* If non-NULL, we used vmalloc() */
char kname[XATTR_NAME_MAX + 1];
- if (flags & ~(XATTR_CREATE|XATTR_REPLACE))
+ if (flags & ~XATTR_SET_MASK)
return -EINVAL;
error = strncpy_from_user(kname, name, sizeof(kname));
--
1.8.3.1