From 0c96e0e0213ea5cfe4a9b2f817fcf6e113134854 Mon Sep 17 00:00:00 2001 From: Flavio Leitner Date: Tue, 5 Mar 2013 08:11:01 +0000 Subject: [PATCH] --- yaml --- r: 368107 b: refs/heads/master c: dd9f319d94c99b96fc9b34ccde7389a91059fe31 h: refs/heads/master i: 368105: 2b2aeebf1812f941a403fdc8d651fcc47b32ba10 368103: da8d22fa58623467ac8a32c1baa832bf3948c59e v: v3 --- [refs] | 2 +- trunk/net/ipv6/inet6_connection_sock.c | 4 ++++ 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 73e850e849b9..fae671706f3d 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: fae4f3cf49ac9d91b83c705809d71fdeb0dc9284 +refs/heads/master: dd9f319d94c99b96fc9b34ccde7389a91059fe31 diff --git a/trunk/net/ipv6/inet6_connection_sock.c b/trunk/net/ipv6/inet6_connection_sock.c index 9bfab19ff3c0..5f25510f584e 100644 --- a/trunk/net/ipv6/inet6_connection_sock.c +++ b/trunk/net/ipv6/inet6_connection_sock.c @@ -54,6 +54,10 @@ int inet6_csk_bind_conflict(const struct sock *sk, if (ipv6_rcv_saddr_equal(sk, sk2)) break; } + if (!relax && reuse && sk2->sk_reuse && + sk2->sk_state != TCP_LISTEN && + ipv6_rcv_saddr_equal(sk, sk2)) + break; } }