diff options
author | Al Viro <viro@zeniv.linux.org.uk> | 2007-06-07 12:19:32 -0400 |
---|---|---|
committer | Al Viro <viro@zeniv.linux.org.uk> | 2007-10-21 02:37:18 -0400 |
commit | 5a190ae69766da9a34bf31200c5cea4c0667cf94 (patch) | |
tree | 340c500fe42518abe6d1159a00619b1bd02f07fc /kernel | |
parent | cfa76f024f7c9e65169425804e5b32e71f66d0ee (diff) |
[PATCH] pass dentry to audit_inode()/audit_inode_child()
makes caller simpler *and* allows to scan ancestors
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Diffstat (limited to 'kernel')
-rw-r--r-- | kernel/auditsc.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/auditsc.c b/kernel/auditsc.c index e19b5a33aede..8a85c203be12 100644 --- a/kernel/auditsc.c +++ b/kernel/auditsc.c | |||
@@ -1403,10 +1403,11 @@ static void audit_copy_inode(struct audit_names *name, const struct inode *inode | |||
1403 | * | 1403 | * |
1404 | * Called from fs/namei.c:path_lookup(). | 1404 | * Called from fs/namei.c:path_lookup(). |
1405 | */ | 1405 | */ |
1406 | void __audit_inode(const char *name, const struct inode *inode) | 1406 | void __audit_inode(const char *name, const struct dentry *dentry) |
1407 | { | 1407 | { |
1408 | int idx; | 1408 | int idx; |
1409 | struct audit_context *context = current->audit_context; | 1409 | struct audit_context *context = current->audit_context; |
1410 | const struct inode *inode = inode = dentry->d_inode; | ||
1410 | 1411 | ||
1411 | if (!context->in_syscall) | 1412 | if (!context->in_syscall) |
1412 | return; | 1413 | return; |
@@ -1443,12 +1444,13 @@ void __audit_inode(const char *name, const struct inode *inode) | |||
1443 | * must be hooked prior, in order to capture the target inode during | 1444 | * must be hooked prior, in order to capture the target inode during |
1444 | * unsuccessful attempts. | 1445 | * unsuccessful attempts. |
1445 | */ | 1446 | */ |
1446 | void __audit_inode_child(const char *dname, const struct inode *inode, | 1447 | void __audit_inode_child(const char *dname, const struct dentry *dentry, |
1447 | const struct inode *parent) | 1448 | const struct inode *parent) |
1448 | { | 1449 | { |
1449 | int idx; | 1450 | int idx; |
1450 | struct audit_context *context = current->audit_context; | 1451 | struct audit_context *context = current->audit_context; |
1451 | const char *found_parent = NULL, *found_child = NULL; | 1452 | const char *found_parent = NULL, *found_child = NULL; |
1453 | const struct inode *inode = dentry->d_inode; | ||
1452 | int dirlen = 0; | 1454 | int dirlen = 0; |
1453 | 1455 | ||
1454 | if (!context->in_syscall) | 1456 | if (!context->in_syscall) |