From: Arnaldo Carvalho de Melo Date: Tue, 13 Sep 2005 22:03:15 +0000 (-0300) Subject: [DCCP]: Check if already in the CLOSING state in dccp_rcv_closereq X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=811265b8e8bf84e3b91507bf6a3a8eea20e7a4b7;p=linux-beck.git [DCCP]: Check if already in the CLOSING state in dccp_rcv_closereq It is possible to receive more than one CLOSEREQ packet if the CLOSE packet sent in response is somehow lost, change the state to DCCP_CLOSING only on the first CLOSEREQ packet received. Signed-off-by: Arnaldo Carvalho de Melo --- diff --git a/net/dccp/input.c b/net/dccp/input.c index c60bc3433f5e..f01d588299c8 100644 --- a/net/dccp/input.c +++ b/net/dccp/input.c @@ -50,7 +50,8 @@ static void dccp_rcv_closereq(struct sock *sk, struct sk_buff *skb) return; } - dccp_set_state(sk, DCCP_CLOSING); + if (sk->sk_state != DCCP_CLOSING) + dccp_set_state(sk, DCCP_CLOSING); dccp_send_close(sk, 0); }