diff options
author | David Gwynne <dlg@cvs.openbsd.org> | 2015-02-09 12:04:28 +0000 |
---|---|---|
committer | David Gwynne <dlg@cvs.openbsd.org> | 2015-02-09 12:04:28 +0000 |
commit | 5b0ec66d129a52b7a9e38bf18ec5eff7effc9742 (patch) | |
tree | 07eddf0bd60d5f29dee9e8e2f554f5ba1a067ab3 /sys/netinet6/ip6_input.c | |
parent | 1feeb1c2cf20bd1832234467e5e810827c2e8491 (diff) |
provide a net.inet6.ip6.ifq sysctl so people can see and fiddle
with the ip6intrq.
ok claudio@
Diffstat (limited to 'sys/netinet6/ip6_input.c')
-rw-r--r-- | sys/netinet6/ip6_input.c | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/sys/netinet6/ip6_input.c b/sys/netinet6/ip6_input.c index 522d579ca24..a3bec2816f5 100644 --- a/sys/netinet6/ip6_input.c +++ b/sys/netinet6/ip6_input.c @@ -1,4 +1,4 @@ -/* $OpenBSD: ip6_input.c,v 1.137 2015/02/09 09:50:00 mpi Exp $ */ +/* $OpenBSD: ip6_input.c,v 1.138 2015/02/09 12:04:27 dlg Exp $ */ /* $KAME: ip6_input.c,v 1.188 2001/03/29 05:34:31 itojun Exp $ */ /* @@ -1405,9 +1405,9 @@ ip6_sysctl(int *name, u_int namelen, void *oldp, size_t *oldlenp, #endif int error, s; - /* All sysctl names at this level are terminal. */ - if (namelen != 1) - return ENOTDIR; + /* Almost all sysctl names at this level are terminal. */ + if (namelen != 1 && name[0] != IPV6CTL_IFQUEUE) + return (ENOTDIR); switch (name[0]) { case IPV6CTL_V6ONLY: @@ -1444,6 +1444,9 @@ ip6_sysctl(int *name, u_int namelen, void *oldp, size_t *oldlenp, splx(s); } return (error); + case IPV6CTL_IFQUEUE: + return (sysctl_ifq(name + 1, namelen - 1, + oldp, oldlenp, newp, newlen, &ip6intrq)); default: if (name[0] < IPV6CTL_MAXID) return (sysctl_int_arr(ipv6ctl_vars, name, namelen, |