summaryrefslogtreecommitdiffstats
path: root/sys/net
diff options
context:
space:
mode:
Diffstat (limited to 'sys/net')
-rw-r--r--sys/net/raw_cb.c4
-rw-r--r--sys/net/raw_usrreq.c1
2 files changed, 2 insertions, 3 deletions
diff --git a/sys/net/raw_cb.c b/sys/net/raw_cb.c
index f45be72..705db61 100644
--- a/sys/net/raw_cb.c
+++ b/sys/net/raw_cb.c
@@ -113,7 +113,7 @@ raw_detach(rp)
}
/*
- * Disconnect and possibly release resources.
+ * Disconnect raw socket.
*/
void
raw_disconnect(rp)
@@ -125,8 +125,6 @@ raw_disconnect(rp)
m_freem(dtom(rp->rcb_faddr));
rp->rcb_faddr = 0;
#endif
- if (rp->rcb_socket->so_state & SS_NOFDREF)
- raw_detach(rp);
}
#ifdef notdef
diff --git a/sys/net/raw_usrreq.c b/sys/net/raw_usrreq.c
index 5a7449a..4f2f006 100644
--- a/sys/net/raw_usrreq.c
+++ b/sys/net/raw_usrreq.c
@@ -146,6 +146,7 @@ raw_uabort(struct socket *so)
KASSERT(rp != NULL, ("raw_uabort: rp == NULL"));
raw_disconnect(rp);
soisdisconnected(so);
+ raw_detach(rp);
}
/* pru_accept is EOPNOTSUPP */
OpenPOWER on IntegriCloud