summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorderaadt <deraadt@openbsd.org>1997-08-21 05:17:37 +0000
committerderaadt <deraadt@openbsd.org>1997-08-21 05:17:37 +0000
commitfcee08570f5bd5e6acad67c6a8b45376015279a8 (patch)
tree04fcef197fbd3fe6771178534f74957245801c6e
parentthis has not been used for a while (diff)
downloadwireguard-openbsd-fcee08570f5bd5e6acad67c6a8b45376015279a8.tar.xz
wireguard-openbsd-fcee08570f5bd5e6acad67c6a8b45376015279a8.zip
constrain nfiles so that fdavail() never lies; bug report and test program from abelits@phobos.illtel.denver.co.us
-rw-r--r--sys/kern/kern_descrip.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/kern/kern_descrip.c b/sys/kern/kern_descrip.c
index 735d3b96e77..9e4b42861ab 100644
--- a/sys/kern/kern_descrip.c
+++ b/sys/kern/kern_descrip.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: kern_descrip.c,v 1.12 1997/07/25 17:31:38 mickey Exp $ */
+/* $OpenBSD: kern_descrip.c,v 1.13 1997/08/21 05:17:37 deraadt Exp $ */
/* $NetBSD: kern_descrip.c,v 1.42 1996/03/30 22:24:38 christos Exp $ */
/*
@@ -543,6 +543,7 @@ fdalloc(p, want, result)
nfiles = NDEXTENT;
else
nfiles = 2 * fdp->fd_nfiles;
+ nfiles = min(lim, nfiles);
MALLOC(newofile, struct file **, nfiles * OFILESIZE,
M_FILEDESC, M_WAITOK);
newofileflags = (char *) &newofile[nfiles];