diff options
author | 2020-08-01 23:41:55 +0000 | |
---|---|---|
committer | 2020-08-01 23:41:55 +0000 | |
commit | 41d03808d33adb44a4899ee88e35540765225e61 (patch) | |
tree | 455ef68189d405e9696886b2748f415c45b1244c /sys/netinet/tcp_usrreq.c | |
parent | Clean up/simplify more of the dtls1/ssl3 record writing code: (diff) | |
download | wireguard-openbsd-41d03808d33adb44a4899ee88e35540765225e61.tar.xz wireguard-openbsd-41d03808d33adb44a4899ee88e35540765225e61.zip |
Move range check inside sysctl_int_arr
Range violations are now consistently reported as EOPNOTSUPP.
Previously they were mixed with ENOPROTOOPT.
OK kn@
Diffstat (limited to 'sys/netinet/tcp_usrreq.c')
-rw-r--r-- | sys/netinet/tcp_usrreq.c | 15 |
1 files changed, 6 insertions, 9 deletions
diff --git a/sys/netinet/tcp_usrreq.c b/sys/netinet/tcp_usrreq.c index 086fd603e19..bf86ceed534 100644 --- a/sys/netinet/tcp_usrreq.c +++ b/sys/netinet/tcp_usrreq.c @@ -1,4 +1,4 @@ -/* $OpenBSD: tcp_usrreq.c,v 1.173 2020/06/18 14:52:51 mpi Exp $ */ +/* $OpenBSD: tcp_usrreq.c,v 1.174 2020/08/01 23:41:55 gnezdo Exp $ */ /* $NetBSD: tcp_usrreq.c,v 1.20 1996/02/13 23:44:16 christos Exp $ */ /* @@ -1115,14 +1115,11 @@ tcp_sysctl(int *name, u_int namelen, void *oldp, size_t *oldlenp, void *newp, return (error); default: - if (name[0] < TCPCTL_MAXID) { - NET_LOCK(); - error = sysctl_int_arr(tcpctl_vars, name, namelen, - oldp, oldlenp, newp, newlen); - NET_UNLOCK(); - return (error); - } - return (ENOPROTOOPT); + NET_LOCK(); + error = sysctl_int_arr(tcpctl_vars, nitems(tcpctl_vars), name, + namelen, oldp, oldlenp, newp, newlen); + NET_UNLOCK(); + return (error); } /* NOTREACHED */ } |