summaryrefslogtreecommitdiffstats
path: root/sys/netinet/sctp_input.c
diff options
context:
space:
mode:
authortuexen <tuexen@FreeBSD.org>2012-09-22 22:04:17 +0000
committertuexen <tuexen@FreeBSD.org>2012-09-22 22:04:17 +0000
commitfa9edb685ba4be52ba2b3c6364bdf03cd100c070 (patch)
tree963bb0cdc3e90e09a49286fec929ccd10e1314b2 /sys/netinet/sctp_input.c
parent9d2d29036982345e1cf61816192bd16627e8a37f (diff)
downloadFreeBSD-src-fa9edb685ba4be52ba2b3c6364bdf03cd100c070.zip
FreeBSD-src-fa9edb685ba4be52ba2b3c6364bdf03cd100c070.tar.gz
Fix a bug related to handling Re-config chunks. It is not true that
the association can be removed if the socket is gone. MFC after: 3 days
Diffstat (limited to 'sys/netinet/sctp_input.c')
-rw-r--r--sys/netinet/sctp_input.c17
1 files changed, 0 insertions, 17 deletions
diff --git a/sys/netinet/sctp_input.c b/sys/netinet/sctp_input.c
index 7f038d4..c49e174 100644
--- a/sys/netinet/sctp_input.c
+++ b/sys/netinet/sctp_input.c
@@ -5387,23 +5387,6 @@ process_control_chunks:
*offset = length;
return (NULL);
}
- if (inp->sctp_flags & SCTP_PCB_FLAGS_SOCKET_GONE) {
- /* We are not interested anymore */
-#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
- so = SCTP_INP_SO(inp);
- atomic_add_int(&stcb->asoc.refcnt, 1);
- SCTP_TCB_UNLOCK(stcb);
- SCTP_SOCKET_LOCK(so, 1);
- SCTP_TCB_LOCK(stcb);
- atomic_subtract_int(&stcb->asoc.refcnt, 1);
-#endif
- (void)sctp_free_assoc(inp, stcb, SCTP_NORMAL_PROC, SCTP_FROM_SCTP_INPUT + SCTP_LOC_30);
-#if defined(__APPLE__) || defined(SCTP_SO_LOCK_TESTING)
- SCTP_SOCKET_UNLOCK(so, 1);
-#endif
- *offset = length;
- return (NULL);
- }
if (stcb->asoc.peer_supports_strreset == 0) {
/*
* hmm, peer should have announced this, but
OpenPOWER on IntegriCloud