• Al Viro's avatar
    [PATCH] fix RLIM_NOFILE handling · 4e1e018e
    Al Viro authored
    * dup2() should return -EBADF on exceeded sysctl_nr_open
    * dup() should *not* return -EINVAL even if you have rlimit set to 0;
      it should get -EMFILE instead.
    Check for orig_start exceeding rlimit taken to sys_fcntl().
    Failing expand_files() in dup{2,3}() now gets -EMFILE remapped to -EBADF.
    Consequently, remaining checks for rlimit are taken to expand_files().
    Signed-off-by: default avatarAl Viro <viro@zeniv.linux.org.uk>
open.c 27.4 KB