[PATCH] audit inode for all xattr syscalls
Collect inode info for the remaining xattr syscalls that operate on a file descriptor. These don't call a path_lookup variant, so they aren't covered by the general audit hook. Signed-off-by: Amy Griffis <amy.griffis@hp.com> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
@@ -350,6 +350,7 @@ sys_fgetxattr(int fd, char __user *name, void __user *value, size_t size)
|
|||||||
f = fget(fd);
|
f = fget(fd);
|
||||||
if (!f)
|
if (!f)
|
||||||
return error;
|
return error;
|
||||||
|
audit_inode(NULL, f->f_path.dentry->d_inode);
|
||||||
error = getxattr(f->f_path.dentry, name, value, size);
|
error = getxattr(f->f_path.dentry, name, value, size);
|
||||||
fput(f);
|
fput(f);
|
||||||
return error;
|
return error;
|
||||||
@@ -422,6 +423,7 @@ sys_flistxattr(int fd, char __user *list, size_t size)
|
|||||||
f = fget(fd);
|
f = fget(fd);
|
||||||
if (!f)
|
if (!f)
|
||||||
return error;
|
return error;
|
||||||
|
audit_inode(NULL, f->f_path.dentry->d_inode);
|
||||||
error = listxattr(f->f_path.dentry, list, size);
|
error = listxattr(f->f_path.dentry, list, size);
|
||||||
fput(f);
|
fput(f);
|
||||||
return error;
|
return error;
|
||||||
|
Reference in New Issue
Block a user