projects
/
linux.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
ddd3e07
)
don't leak O_CLOEXEC into ->f_flags
author
Al Viro
<viro@zeniv.linux.org.uk>
Sun, 26 Aug 2012 15:01:04 +0000
(11:01 -0400)
committer
Al Viro
<viro@zeniv.linux.org.uk>
Thu, 27 Sep 2012 01:10:01 +0000
(21:10 -0400)
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
fs/open.c
patch
|
blob
|
history
fs/proc/fd.c
patch
|
blob
|
history
diff --git
a/fs/open.c
b/fs/open.c
index
3076001
..
03028d0
100644
(file)
--- a/
fs/open.c
+++ b/
fs/open.c
@@
-814,7
+814,7
@@
static inline int build_open_flags(int flags, umode_t mode, struct open_flags *o
op->mode = 0;
/* Must never be set by userspace */
- flags &= ~FMODE_NONOTIFY;
+ flags &= ~FMODE_NONOTIFY
& ~O_CLOEXEC
;
/*
* O_SYNC is implemented as __O_SYNC|O_DSYNC. As many places only
diff --git
a/fs/proc/fd.c
b/fs/proc/fd.c
index
9cef449
..
f28a875
100644
(file)
--- a/
fs/proc/fd.c
+++ b/
fs/proc/fd.c
@@
-36,7
+36,7
@@
static int seq_show(struct seq_file *m, void *v)
if (file) {
struct fdtable *fdt = files_fdtable(files);
- f_flags = file->f_flags
& ~O_CLOEXEC
;
+ f_flags = file->f_flags;
if (close_on_exec(fd, fdt))
f_flags |= O_CLOEXEC;