diff options
Diffstat (limited to 'net/ipv6/tcp_ipv6.c')
-rw-r--r-- | net/ipv6/tcp_ipv6.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c index b792e870686b..38c196ca6011 100644 --- a/net/ipv6/tcp_ipv6.c +++ b/net/ipv6/tcp_ipv6.c | |||
@@ -963,7 +963,8 @@ static int tcp_v6_conn_request(struct sock *sk, struct sk_buff *skb) | |||
963 | if (!ipv6_unicast_destination(skb)) | 963 | if (!ipv6_unicast_destination(skb)) |
964 | goto drop; | 964 | goto drop; |
965 | 965 | ||
966 | if (inet_csk_reqsk_queue_is_full(sk) && !isn) { | 966 | if ((sysctl_tcp_syncookies == 2 || |
967 | inet_csk_reqsk_queue_is_full(sk)) && !isn) { | ||
967 | want_cookie = tcp_syn_flood_action(sk, skb, "TCPv6"); | 968 | want_cookie = tcp_syn_flood_action(sk, skb, "TCPv6"); |
968 | if (!want_cookie) | 969 | if (!want_cookie) |
969 | goto drop; | 970 | goto drop; |