aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMark Johnston <markj@FreeBSD.org>2026-06-20 14:12:19 +0000
committerMark Johnston <markj@FreeBSD.org>2026-06-20 14:12:19 +0000
commitf7b71f832c990da0bf203095f02405df665529d0 (patch)
treea5d34e7c4b5dc06320398d41db4a8e960723a0b8
parent8ed580b1d3811e73e25db3d8a9fd235156c65387 (diff)
if_ovpn: Fix a lock leak in an error path
Reviewed by: kp MFC after: 1 week Fixes: 04a7134c1e92 ("if_ovpn: fix use-after-free of mbuf") Differential Revision: https://reviews.freebsd.org/D57696
-rw-r--r--sys/net/if_ovpn.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/net/if_ovpn.c b/sys/net/if_ovpn.c
index 7c416055e939..b4796fb95589 100644
--- a/sys/net/if_ovpn.c
+++ b/sys/net/if_ovpn.c
@@ -2517,6 +2517,7 @@ ovpn_udp_input(struct mbuf *m, int off, struct inpcb *inp,
m = m_unshare(m, M_NOWAIT);
if (m == NULL) {
+ OVPN_RUNLOCK(sc);
OVPN_COUNTER_ADD(sc, nomem_data_pkts_in, 1);
if_inc_counter(sc->ifp, IFCOUNTER_IERRORS, 1);
return (true);