diff options
author | 2001-09-16 00:42:44 +0000 | |
---|---|---|
committer | 2001-09-16 00:42:44 +0000 | |
commit | 10155aa39e81186d9f2eb7ebab7f0c376c6233d0 (patch) | |
tree | 6dc3285b68a24a3d9a45aecf256705a5370d607e /sys/kern/vfs_subr.c | |
parent | Mostly rewritten decode of fpu emulation: (diff) | |
download | wireguard-openbsd-10155aa39e81186d9f2eb7ebab7f0c376c6233d0.tar.xz wireguard-openbsd-10155aa39e81186d9f2eb7ebab7f0c376c6233d0.zip |
Add some missing lengths checks when passing data from userland to
kernel. From based on NetBSD patches.
Diffstat (limited to 'sys/kern/vfs_subr.c')
-rw-r--r-- | sys/kern/vfs_subr.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index b0534e07561..bc6919c9793 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1,4 +1,4 @@ -/* $OpenBSD: vfs_subr.c,v 1.65 2001/08/02 08:16:45 assar Exp $ */ +/* $OpenBSD: vfs_subr.c,v 1.66 2001/09/16 00:42:44 millert Exp $ */ /* $NetBSD: vfs_subr.c,v 1.53 1996/04/22 01:39:13 christos Exp $ */ /* @@ -1513,6 +1513,8 @@ vfs_hang_addrlist(mp, nep, argp) mp->mnt_flag |= MNT_DEFEXPORTED; return (0); } + if (argp->ex_addrlen > MLEN) + return (EINVAL); i = sizeof(struct netcred) + argp->ex_addrlen + argp->ex_masklen; np = (struct netcred *)malloc(i, M_NETADDR, M_WAITOK); bzero((caddr_t)np, i); |