don't leak O_CLOEXEC into ->f_flags
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
ddd3e0771b
commit
c6f3d81115
@ -814,7 +814,7 @@ static inline int build_open_flags(int flags, umode_t mode, struct open_flags *o
|
|||||||
op->mode = 0;
|
op->mode = 0;
|
||||||
|
|
||||||
/* Must never be set by userspace */
|
/* 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
|
* O_SYNC is implemented as __O_SYNC|O_DSYNC. As many places only
|
||||||
|
@ -36,7 +36,7 @@ static int seq_show(struct seq_file *m, void *v)
|
|||||||
if (file) {
|
if (file) {
|
||||||
struct fdtable *fdt = files_fdtable(files);
|
struct fdtable *fdt = files_fdtable(files);
|
||||||
|
|
||||||
f_flags = file->f_flags & ~O_CLOEXEC;
|
f_flags = file->f_flags;
|
||||||
if (close_on_exec(fd, fdt))
|
if (close_on_exec(fd, fdt))
|
||||||
f_flags |= O_CLOEXEC;
|
f_flags |= O_CLOEXEC;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user