summaryrefslogtreecommitdiffstats
path: root/fs/overlayfs
diff options
context:
space:
mode:
authorMiklos Szeredi <miklos@szeredi.hu>2015-11-10 17:08:41 +0100
committerMiklos Szeredi <miklos@szeredi.hu>2015-11-10 17:08:41 +0100
commit97daf8b97ad6f913a34c82515be64dc9ac08d63e (patch)
tree5ab438b8e383f9fe8b6f0737046852bd333050d5 /fs/overlayfs
parent8d3095f4ad47ac409440a0ba1c80e13519ff867d (diff)
downloadlinux-stable-97daf8b97ad6f913a34c82515be64dc9ac08d63e.tar.gz
linux-stable-97daf8b97ad6f913a34c82515be64dc9ac08d63e.tar.bz2
linux-stable-97daf8b97ad6f913a34c82515be64dc9ac08d63e.zip
ovl: allow zero size xattr
When ovl_copy_xattr() encountered a zero size xattr no more xattrs were copied and the function returned success. This is clearly not the desired behavior. Signed-off-by: Miklos Szeredi <miklos@szeredi.hu> Cc: <stable@vger.kernel.org>
Diffstat (limited to 'fs/overlayfs')
-rw-r--r--fs/overlayfs/copy_up.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/overlayfs/copy_up.c b/fs/overlayfs/copy_up.c
index 871fcb67be97..394e87f8340f 100644
--- a/fs/overlayfs/copy_up.c
+++ b/fs/overlayfs/copy_up.c
@@ -54,7 +54,7 @@ int ovl_copy_xattr(struct dentry *old, struct dentry *new)
for (name = buf; name < (buf + list_size); name += strlen(name) + 1) {
size = vfs_getxattr(old, name, value, XATTR_SIZE_MAX);
- if (size <= 0) {
+ if (size < 0) {
error = size;
goto out_free_value;
}