summaryrefslogtreecommitdiffstats
path: root/sys/netmpls
diff options
context:
space:
mode:
authorgnezdo <gnezdo@openbsd.org>2020-08-01 23:41:55 +0000
committergnezdo <gnezdo@openbsd.org>2020-08-01 23:41:55 +0000
commit41d03808d33adb44a4899ee88e35540765225e61 (patch)
tree455ef68189d405e9696886b2748f415c45b1244c /sys/netmpls
parentClean up/simplify more of the dtls1/ssl3 record writing code: (diff)
downloadwireguard-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/netmpls')
-rw-r--r--sys/netmpls/mpls_raw.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/sys/netmpls/mpls_raw.c b/sys/netmpls/mpls_raw.c
index c87158a91cb..dd6c0f62e41 100644
--- a/sys/netmpls/mpls_raw.c
+++ b/sys/netmpls/mpls_raw.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: mpls_raw.c,v 1.16 2019/11/05 08:26:38 claudio Exp $ */
+/* $OpenBSD: mpls_raw.c,v 1.17 2020/08/01 23:41:56 gnezdo Exp $ */
/*
* Copyright (C) 1999, 2000 and 2001 AYAME Project, WIDE Project.
@@ -57,16 +57,13 @@ int
mpls_sysctl(int *name, u_int namelen, void *oldp, size_t *oldlenp, void *newp,
size_t newlen)
{
- if (name[0] >= MPLSCTL_MAXID)
- return (EOPNOTSUPP);
-
/* Almost all sysctl names at this level are terminal. */
if (namelen != 1)
return (ENOTDIR);
switch (name[0]) {
default:
- return sysctl_int_arr(mplsctl_vars, name, namelen,
- oldp, oldlenp, newp, newlen);
+ return sysctl_int_arr(mplsctl_vars, nitems(mplsctl_vars), name,
+ namelen, oldp, oldlenp, newp, newlen);
}
}