diff options
author | Amy Griffis <amy.griffis@hp.com> | 2007-02-13 14:14:41 -0500 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2007-05-11 05:38:26 -0400 |
commit | 510f4006e7a82b37b53c17bbe64ec20f3a59302b (patch) | |
tree | 928792618c3719378d99fe0365806ef0df4414a8 | |
parent | e41e8bde43026d5d2e41464e6105a50b31e34102 (diff) |
[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>
-rw-r--r-- | fs/xattr.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/fs/xattr.c b/fs/xattr.c index 9f4568b55b0f..4523aca79659 100644 --- a/fs/xattr.c +++ b/fs/xattr.c | |||
@@ -350,6 +350,7 @@ sys_fgetxattr(int fd, char __user *name, void __user *value, size_t size) | |||
350 | f = fget(fd); | 350 | f = fget(fd); |
351 | if (!f) | 351 | if (!f) |
352 | return error; | 352 | return error; |
353 | audit_inode(NULL, f->f_path.dentry->d_inode); | ||
353 | error = getxattr(f->f_path.dentry, name, value, size); | 354 | error = getxattr(f->f_path.dentry, name, value, size); |
354 | fput(f); | 355 | fput(f); |
355 | return error; | 356 | return error; |
@@ -422,6 +423,7 @@ sys_flistxattr(int fd, char __user *list, size_t size) | |||
422 | f = fget(fd); | 423 | f = fget(fd); |
423 | if (!f) | 424 | if (!f) |
424 | return error; | 425 | return error; |
426 | audit_inode(NULL, f->f_path.dentry->d_inode); | ||
425 | error = listxattr(f->f_path.dentry, list, size); | 427 | error = listxattr(f->f_path.dentry, list, size); |
426 | fput(f); | 428 | fput(f); |
427 | return error; | 429 | return error; |