summaryrefslogtreecommitdiff
path: root/net/ipv6/tcp_ipv6.c
diff options
context:
space:
mode:
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-12-03 03:20:59 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2014-12-03 03:20:59 +0300
commitdeef2a118aed02aa9421e399056c82045e728282 (patch)
treeffd415cb12df4d1afba0a5f9f37bf17dc3f5e86f /net/ipv6/tcp_ipv6.c
parentaa9d9be96d33d97488e1bdf13a144931a3fce08e (diff)
parent009d0431c3914de64666bec0d350e54fdd59df6a (diff)
downloadlinux-deef2a118aed02aa9421e399056c82045e728282.tar.xz
Merge 3.18-rc7 into staging-work.
We want those staging fixes in here as well. Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'net/ipv6/tcp_ipv6.c')
-rw-r--r--net/ipv6/tcp_ipv6.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/net/ipv6/tcp_ipv6.c b/net/ipv6/tcp_ipv6.c
index ace29b60813c..dc495ae2ead0 100644
--- a/net/ipv6/tcp_ipv6.c
+++ b/net/ipv6/tcp_ipv6.c
@@ -903,7 +903,10 @@ static void tcp_v6_send_reset(struct sock *sk, struct sk_buff *skb)
if (th->rst)
return;
- if (!ipv6_unicast_destination(skb))
+ /* If sk not NULL, it means we did a successful lookup and incoming
+ * route had to be correct. prequeue might have dropped our dst.
+ */
+ if (!sk && !ipv6_unicast_destination(skb))
return;
#ifdef CONFIG_TCP_MD5SIG