summaryrefslogtreecommitdiffstats
path: root/sys
diff options
context:
space:
mode:
authorpho <pho@FreeBSD.org>2008-12-27 10:13:43 +0000
committerpho <pho@FreeBSD.org>2008-12-27 10:13:43 +0000
commitfbacc4af8363faaa38cc1a61d5827e3c61c3e60f (patch)
treeb8688bfbca0832ed449fd319f797b0ec0e28d380 /sys
parent4a6f6562e4a18d08e5b76560c66f8790a550b2ee (diff)
downloadFreeBSD-src-fbacc4af8363faaa38cc1a61d5827e3c61c3e60f.zip
FreeBSD-src-fbacc4af8363faaa38cc1a61d5827e3c61c3e60f.tar.gz
Prevent overflow of uio_resid.
Approved by: kib
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/vfs_syscalls.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/vfs_syscalls.c b/sys/kern/vfs_syscalls.c
index 198009d..4d3978a 100644
--- a/sys/kern/vfs_syscalls.c
+++ b/sys/kern/vfs_syscalls.c
@@ -4069,6 +4069,8 @@ kern_getdirentries(struct thread *td, int fd, char *buf, u_int count,
int error, eofflag;
AUDIT_ARG(fd, fd);
+ if (count > INT_MAX)
+ return (EINVAL);
if ((error = getvnode(td->td_proc->p_fd, fd, &fp)) != 0)
return (error);
if ((fp->f_flag & FREAD) == 0) {
OpenPOWER on IntegriCloud