audit: add refused symlink to audit_names
authorRichard Guy Briggs <rgb@redhat.com>
Wed, 21 Mar 2018 08:42:21 +0000 (04:42 -0400)
committerPaul Moore <paul@paul-moore.com>
Wed, 21 Mar 2018 15:31:03 +0000 (11:31 -0400)
Audit link denied events for symlinks had duplicate PATH records rather
than just updating the existing PATH record.  Update the symlink's PATH
record with the current dentry and inode information.

See: https://github.com/linux-audit/audit-kernel/issues/21

Signed-off-by: Richard Guy Briggs <rgb@redhat.com>
Signed-off-by: Paul Moore <paul@paul-moore.com>
fs/namei.c

index e3682bb..5f8e8e2 100644 (file)
@@ -945,6 +945,7 @@ static inline int may_follow_link(struct nameidata *nd)
        if (nd->flags & LOOKUP_RCU)
                return -ECHILD;
 
+       audit_inode(nd->name, nd->stack[0].link.dentry, 0);
        audit_log_link_denied("follow_link");
        return -EACCES;
 }