summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormikeb <mikeb@openbsd.org>2012-12-12 17:23:53 +0000
committermikeb <mikeb@openbsd.org>2012-12-12 17:23:53 +0000
commitfc91c3864195f518bdea03d491513d519f49ef2a (patch)
treedb1637af62f9d377edc95359c6fc96f8eddd9920
parentuse OpenSSL's EVP_aes_{128,192,256}_ctr() API and remove our hand-rolled (diff)
downloadwireguard-openbsd-fc91c3864195f518bdea03d491513d519f49ef2a.tar.xz
wireguard-openbsd-fc91c3864195f518bdea03d491513d519f49ef2a.zip
Rearrange the code a bit to prevent splx() from being called with an
uninitialized variable. Found by Owain G. Ainsworth, ok guenther
-rw-r--r--sys/net/raw_usrreq.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/net/raw_usrreq.c b/sys/net/raw_usrreq.c
index 0b65d2e7602..aeca02715f8 100644
--- a/sys/net/raw_usrreq.c
+++ b/sys/net/raw_usrreq.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: raw_usrreq.c,v 1.15 2012/11/27 17:29:07 mikeb Exp $ */
+/* $OpenBSD: raw_usrreq.c,v 1.16 2012/12/12 17:23:53 mikeb Exp $ */
/* $NetBSD: raw_usrreq.c,v 1.11 1996/02/13 22:00:43 christos Exp $ */
/*
@@ -221,7 +221,7 @@ raw_usrreq(struct socket *so, int req, struct mbuf *m, struct mbuf *nam,
#endif
case PRU_CONNECT2:
error = EOPNOTSUPP;
- goto release;
+ break;
case PRU_DISCONNECT:
if (rp->rcb_faddr == 0) {
@@ -310,8 +310,8 @@ raw_usrreq(struct socket *so, int req, struct mbuf *m, struct mbuf *nam,
default:
panic("raw_usrreq");
}
-release:
splx(s);
+release:
if (m != NULL)
m_freem(m);
return (error);