diff options
| author | Takashi Iwai <tiwai@suse.de> | 2014-12-08 11:33:24 +0100 |
|---|---|---|
| committer | Takashi Iwai <tiwai@suse.de> | 2014-12-08 11:33:24 +0100 |
| commit | 77de61c3975da6f2200935c341e84018ece6ce36 (patch) | |
| tree | 36508cf93ef62a80c988fa18c86eda1274e03877 /net/ipv4/tcp_ipv4.c | |
| parent | 66139a48cee1530c91f37c145384b4ee7043f0b7 (diff) | |
| parent | 048184540171672a724ab8f8bada7fcc0762f5c6 (diff) | |
Merge branch 'for-next' into for-linus
Diffstat (limited to 'net/ipv4/tcp_ipv4.c')
| -rw-r--r-- | net/ipv4/tcp_ipv4.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/ipv4/tcp_ipv4.c b/net/ipv4/tcp_ipv4.c index 9c7d7621466b..147be2024290 100644 --- a/net/ipv4/tcp_ipv4.c +++ b/net/ipv4/tcp_ipv4.c @@ -598,7 +598,10 @@ static void tcp_v4_send_reset(struct sock *sk, struct sk_buff *skb) if (th->rst) return; - if (skb_rtable(skb)->rt_type != RTN_LOCAL) + /* 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 && skb_rtable(skb)->rt_type != RTN_LOCAL) return; /* Swap the send and the receive. */ |
