summaryrefslogtreecommitdiffstats
path: root/sys/net/raw_cb.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/net/raw_cb.c')
-rw-r--r--sys/net/raw_cb.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/sys/net/raw_cb.c b/sys/net/raw_cb.c
index 31566d1..f45be72 100644
--- a/sys/net/raw_cb.c
+++ b/sys/net/raw_cb.c
@@ -98,10 +98,9 @@ raw_detach(rp)
{
struct socket *so = rp->rcb_socket;
- ACCEPT_LOCK();
- SOCK_LOCK(so);
- so->so_pcb = 0;
- sotryfree(so);
+ KASSERT(so->so_pcb == rp, ("raw_detach: so_pcb != rp"));
+
+ so->so_pcb = NULL;
mtx_lock(&rawcb_mtx);
LIST_REMOVE(rp, list);
mtx_unlock(&rawcb_mtx);
OpenPOWER on IntegriCloud