summaryrefslogtreecommitdiffstats
path: root/net/core
diff options
context:
space:
mode:
authorEric Dumazet <edumazet@google.com>2015-03-12 16:44:08 -0700
committerDavid S. Miller <davem@davemloft.net>2015-03-12 22:58:13 -0400
commit41b822c59e21414d829bcfd00df0c8f7f13b1b95 (patch)
tree68dcc05d4673f0e196dc772ad063f93b008bf25d /net/core
parent0159dfd3d7dff2da646f53039d29319b830207be (diff)
downloadlinux-41b822c59e21414d829bcfd00df0c8f7f13b1b95.tar.bz2
inet: prepare sock_edemux() & sock_gen_put() for new SYN_RECV state
sock_edemux() & sock_gen_put() should be ready to cope with request socks. Signed-off-by: Eric Dumazet <edumazet@google.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/core')
-rw-r--r--net/core/sock.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/core/sock.c b/net/core/sock.c
index 63d871a91b5c..4bc42efb3e40 100644
--- a/net/core/sock.c
+++ b/net/core/sock.c
@@ -1668,6 +1668,8 @@ void sock_edemux(struct sk_buff *skb)
if (sk->sk_state == TCP_TIME_WAIT)
inet_twsk_put(inet_twsk(sk));
+ else if (sk->sk_state == TCP_NEW_SYN_RECV)
+ reqsk_put(inet_reqsk(sk));
else
sock_put(sk);
}