diff options
author | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-25 12:24:53 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2006-03-25 12:24:53 -0500 |
commit | 1b9a3917366028cc451a98dd22e3bcd537d4e5c1 (patch) | |
tree | d911058720e0a9aeeaf9f407ccdc6fbf4047f47d /fs/open.c | |
parent | 3661f00e2097676847deb01add1a0918044bd816 (diff) | |
parent | 71e1c784b24a026a490b3de01541fc5ee14ebc09 (diff) |
Merge branch 'audit.b3' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current
* 'audit.b3' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/audit-current: (22 commits)
[PATCH] fix audit_init failure path
[PATCH] EXPORT_SYMBOL patch for audit_log, audit_log_start, audit_log_end and audit_format
[PATCH] sem2mutex: audit_netlink_sem
[PATCH] simplify audit_free() locking
[PATCH] Fix audit operators
[PATCH] promiscuous mode
[PATCH] Add tty to syscall audit records
[PATCH] add/remove rule update
[PATCH] audit string fields interface + consumer
[PATCH] SE Linux audit events
[PATCH] Minor cosmetic cleanups to the code moved into auditfilter.c
[PATCH] Fix audit record filtering with !CONFIG_AUDITSYSCALL
[PATCH] Fix IA64 success/failure indication in syscall auditing.
[PATCH] Miscellaneous bug and warning fixes
[PATCH] Capture selinux subject/object context information.
[PATCH] Exclude messages by message type
[PATCH] Collect more inode information during syscall processing.
[PATCH] Pass dentry, not just name, in fsnotify creation hooks.
[PATCH] Define new range of userspace messages.
[PATCH] Filter rule comparators
...
Fixed trivial conflict in security/selinux/hooks.c
Diffstat (limited to 'fs/open.c')
-rw-r--r-- | fs/open.c | 8 |
1 files changed, 7 insertions, 1 deletions
@@ -27,6 +27,7 @@ | |||
27 | #include <linux/pagemap.h> | 27 | #include <linux/pagemap.h> |
28 | #include <linux/syscalls.h> | 28 | #include <linux/syscalls.h> |
29 | #include <linux/rcupdate.h> | 29 | #include <linux/rcupdate.h> |
30 | #include <linux/audit.h> | ||
30 | 31 | ||
31 | #include <asm/unistd.h> | 32 | #include <asm/unistd.h> |
32 | 33 | ||
@@ -626,6 +627,8 @@ asmlinkage long sys_fchmod(unsigned int fd, mode_t mode) | |||
626 | dentry = file->f_dentry; | 627 | dentry = file->f_dentry; |
627 | inode = dentry->d_inode; | 628 | inode = dentry->d_inode; |
628 | 629 | ||
630 | audit_inode(NULL, inode, 0); | ||
631 | |||
629 | err = -EROFS; | 632 | err = -EROFS; |
630 | if (IS_RDONLY(inode)) | 633 | if (IS_RDONLY(inode)) |
631 | goto out_putf; | 634 | goto out_putf; |
@@ -775,7 +778,10 @@ asmlinkage long sys_fchown(unsigned int fd, uid_t user, gid_t group) | |||
775 | 778 | ||
776 | file = fget(fd); | 779 | file = fget(fd); |
777 | if (file) { | 780 | if (file) { |
778 | error = chown_common(file->f_dentry, user, group); | 781 | struct dentry * dentry; |
782 | dentry = file->f_dentry; | ||
783 | audit_inode(NULL, dentry->d_inode, 0); | ||
784 | error = chown_common(dentry, user, group); | ||
779 | fput(file); | 785 | fput(file); |
780 | } | 786 | } |
781 | return error; | 787 | return error; |