diff options
Diffstat (limited to 'sys/netinet6')
-rw-r--r-- | sys/netinet6/in6.c | 2 | ||||
-rw-r--r-- | sys/netinet6/sctp6_usrreq.c | 2 | ||||
-rw-r--r-- | sys/netinet6/udp6_usrreq.c | 2 |
3 files changed, 5 insertions, 1 deletions
diff --git a/sys/netinet6/in6.c b/sys/netinet6/in6.c index ffbe64f4de80..00a0b40154d2 100644 --- a/sys/netinet6/in6.c +++ b/sys/netinet6/in6.c @@ -587,7 +587,7 @@ in6_control_ioctl(u_long cmd, void *data, #endif error = in6_addifaddr(ifp, ifra, ia); ia = NULL; - break; + goto out; case SIOCDIFADDR_IN6: in6_purgeifaddr(ia); diff --git a/sys/netinet6/sctp6_usrreq.c b/sys/netinet6/sctp6_usrreq.c index c0e758e9e12b..8964ccf54c54 100644 --- a/sys/netinet6/sctp6_usrreq.c +++ b/sys/netinet6/sctp6_usrreq.c @@ -375,6 +375,8 @@ sctp6_getcred(SYSCTL_HANDLER_ARGS) vrf_id = SCTP_DEFAULT_VRFID; + if (req->newptr == NULL) + return (EINVAL); error = priv_check(req->td, PRIV_NETINET_GETCRED); if (error) return (error); diff --git a/sys/netinet6/udp6_usrreq.c b/sys/netinet6/udp6_usrreq.c index 40216ad4c420..c44510e3b65f 100644 --- a/sys/netinet6/udp6_usrreq.c +++ b/sys/netinet6/udp6_usrreq.c @@ -617,6 +617,8 @@ udp6_getcred(SYSCTL_HANDLER_ARGS) struct inpcb *inp; int error; + if (req->newptr == NULL) + return (EINVAL); error = priv_check(req->td, PRIV_NETINET_GETCRED); if (error) return (error); |