Commit 5bad7e07 authored by Sridhar Samudrala's avatar Sridhar Samudrala

[SCTP] Fix to free associations in the accept queue of a one-to-one

       style listening socket that is closed.
parent 592e6a4d
...@@ -663,10 +663,11 @@ static void sctp_cmd_delete_tcb(sctp_cmd_seq_t *cmds, ...@@ -663,10 +663,11 @@ static void sctp_cmd_delete_tcb(sctp_cmd_seq_t *cmds,
struct sock *sk = asoc->base.sk; struct sock *sk = asoc->base.sk;
/* If it is a non-temporary association belonging to a TCP-style /* If it is a non-temporary association belonging to a TCP-style
* listening socket, do not free it so that accept() can pick it * listening socket that is not closed, do not free it so that accept()
* up later. * can pick it up later.
*/ */
if (sctp_style(sk, TCP) && sctp_sstate(sk, LISTENING) && (!asoc->temp)) if (sctp_style(sk, TCP) && sctp_sstate(sk, LISTENING) &&
(!asoc->temp) && (sk->sk_shutdown != SHUTDOWN_MASK))
return; return;
sctp_unhash_established(asoc); sctp_unhash_established(asoc);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment