Commit 66c0bfe3 authored by Andrey Utkin's avatar Andrey Utkin Committed by Greg Kroah-Hartman

nfs3_list_one_acl(): check get_acl() result with IS_ERR_OR_NULL

commit 7a9e75a1 upstream.

There was a check for result being not NULL. But get_acl() may return
NULL, or ERR_PTR, or actual pointer.
The purpose of the function where current change is done is to "list
ACLs only when they are available", so any error condition of get_acl()
mustn't be elevated, and returning 0 there is still valid.

Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=81111Signed-off-by: default avatarAndrey Utkin <andrey.krieger.utkin@gmail.com>
Reviewed-by: default avatarChristoph Hellwig <hch@lst.de>
Fixes: 74adf83f (nfs: only show Posix ACLs in listxattr if actually...)
Signed-off-by: default avatarTrond Myklebust <trond.myklebust@primarydata.com>
Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
parent 8b1a7f3d
...@@ -256,7 +256,7 @@ nfs3_list_one_acl(struct inode *inode, int type, const char *name, void *data, ...@@ -256,7 +256,7 @@ nfs3_list_one_acl(struct inode *inode, int type, const char *name, void *data,
char *p = data + *result; char *p = data + *result;
acl = get_acl(inode, type); acl = get_acl(inode, type);
if (!acl) if (IS_ERR_OR_NULL(acl))
return 0; return 0;
posix_acl_release(acl); posix_acl_release(acl);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment