readdir.c: get rid of the last __put_user(), drop now-useless access_ok()
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
parent
82af599b70
commit
5fb1514164
11
fs/readdir.c
11
fs/readdir.c
@ -276,9 +276,6 @@ SYSCALL_DEFINE3(getdents, unsigned int, fd,
|
|||||||
};
|
};
|
||||||
int error;
|
int error;
|
||||||
|
|
||||||
if (!access_ok(dirent, count))
|
|
||||||
return -EFAULT;
|
|
||||||
|
|
||||||
f = fdget_pos(fd);
|
f = fdget_pos(fd);
|
||||||
if (!f.file)
|
if (!f.file)
|
||||||
return -EBADF;
|
return -EBADF;
|
||||||
@ -362,9 +359,6 @@ int ksys_getdents64(unsigned int fd, struct linux_dirent64 __user *dirent,
|
|||||||
};
|
};
|
||||||
int error;
|
int error;
|
||||||
|
|
||||||
if (!access_ok(dirent, count))
|
|
||||||
return -EFAULT;
|
|
||||||
|
|
||||||
f = fdget_pos(fd);
|
f = fdget_pos(fd);
|
||||||
if (!f.file)
|
if (!f.file)
|
||||||
return -EBADF;
|
return -EBADF;
|
||||||
@ -377,7 +371,7 @@ int ksys_getdents64(unsigned int fd, struct linux_dirent64 __user *dirent,
|
|||||||
typeof(lastdirent->d_off) d_off = buf.ctx.pos;
|
typeof(lastdirent->d_off) d_off = buf.ctx.pos;
|
||||||
|
|
||||||
lastdirent = (void __user *) buf.current_dir - buf.prev_reclen;
|
lastdirent = (void __user *) buf.current_dir - buf.prev_reclen;
|
||||||
if (__put_user(d_off, &lastdirent->d_off))
|
if (put_user(d_off, &lastdirent->d_off))
|
||||||
error = -EFAULT;
|
error = -EFAULT;
|
||||||
else
|
else
|
||||||
error = count - buf.count;
|
error = count - buf.count;
|
||||||
@ -537,9 +531,6 @@ COMPAT_SYSCALL_DEFINE3(getdents, unsigned int, fd,
|
|||||||
};
|
};
|
||||||
int error;
|
int error;
|
||||||
|
|
||||||
if (!access_ok(dirent, count))
|
|
||||||
return -EFAULT;
|
|
||||||
|
|
||||||
f = fdget_pos(fd);
|
f = fdget_pos(fd);
|
||||||
if (!f.file)
|
if (!f.file)
|
||||||
return -EBADF;
|
return -EBADF;
|
||||||
|
Loading…
Reference in New Issue
Block a user