diff options
Diffstat (limited to 'fs/file.c')
| -rw-r--r-- | fs/file.c | 3 | 
1 files changed, 3 insertions, 0 deletions
diff --git a/fs/file.c b/fs/file.c index 0f1bda4bebf..d3b5fa80b71 100644 --- a/fs/file.c +++ b/fs/file.c @@ -922,6 +922,9 @@ SYSCALL_DEFINE3(dup3, unsigned int, oldfd, unsigned int, newfd, int, flags)  	if ((flags & ~O_CLOEXEC) != 0)  		return -EINVAL; +	if (unlikely(oldfd == newfd)) +		return -EINVAL; +  	if (newfd >= rlimit(RLIMIT_NOFILE))  		return -EMFILE;  |