diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2010-01-17 14:01:16 -0500 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2010-01-17 14:01:16 -0500 |
commit | 7dc9c484a71525794ca05cf7a47f283f1b54cd12 (patch) | |
tree | e150ea705069b06af5c6e0d077a94437f24e991a /security | |
parent | 3a5dd791abef032fe57fc652c0232913c696e59b (diff) | |
parent | 27d55f1f4c190b14092fcca3069c7d15df83514f (diff) |
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs-2.6:
do_add_mount() should sanitize mnt_flags
CIFS shouldn't make mountpoints shrinkable
mnt_flags fixes in do_remount()
attach_recursive_mnt() needs to hold vfsmount_lock over set_mnt_shared()
may_umount() needs namespace_sem
Fix configfs leak
Fix the -ESTALE handling in do_filp_open()
ecryptfs: Fix refcnt leak on ecryptfs_follow_link() error path
Fix ACC_MODE() for real
Unrot uml mconsole a bit
hppfs: handle ->put_link()
Kill 9p readlink()
fix autofs/afs/etc. magic mountpoint breakage
Diffstat (limited to 'security')
-rw-r--r-- | security/tomoyo/tomoyo.c | 7 |
1 files changed, 1 insertions, 6 deletions
diff --git a/security/tomoyo/tomoyo.c b/security/tomoyo/tomoyo.c index 8a00ade85166..2aceebf5f354 100644 --- a/security/tomoyo/tomoyo.c +++ b/security/tomoyo/tomoyo.c | |||
@@ -80,9 +80,8 @@ static int tomoyo_bprm_check_security(struct linux_binprm *bprm) | |||
80 | return tomoyo_find_next_domain(bprm); | 80 | return tomoyo_find_next_domain(bprm); |
81 | /* | 81 | /* |
82 | * Read permission is checked against interpreters using next domain. | 82 | * Read permission is checked against interpreters using next domain. |
83 | * '1' is the result of open_to_namei_flags(O_RDONLY). | ||
84 | */ | 83 | */ |
85 | return tomoyo_check_open_permission(domain, &bprm->file->f_path, 1); | 84 | return tomoyo_check_open_permission(domain, &bprm->file->f_path, O_RDONLY); |
86 | } | 85 | } |
87 | 86 | ||
88 | static int tomoyo_path_truncate(struct path *path, loff_t length, | 87 | static int tomoyo_path_truncate(struct path *path, loff_t length, |
@@ -184,10 +183,6 @@ static int tomoyo_file_fcntl(struct file *file, unsigned int cmd, | |||
184 | static int tomoyo_dentry_open(struct file *f, const struct cred *cred) | 183 | static int tomoyo_dentry_open(struct file *f, const struct cred *cred) |
185 | { | 184 | { |
186 | int flags = f->f_flags; | 185 | int flags = f->f_flags; |
187 | |||
188 | if ((flags + 1) & O_ACCMODE) | ||
189 | flags++; | ||
190 | flags |= f->f_flags & (O_APPEND | O_TRUNC); | ||
191 | /* Don't check read permission here if called from do_execve(). */ | 186 | /* Don't check read permission here if called from do_execve(). */ |
192 | if (current->in_execve) | 187 | if (current->in_execve) |
193 | return 0; | 188 | return 0; |