diff options
Diffstat (limited to 'net/ipv6/sit.c')
| -rw-r--r-- | net/ipv6/sit.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/net/ipv6/sit.c b/net/ipv6/sit.c index 1e03305c0549..e8a1dabef803 100644 --- a/net/ipv6/sit.c +++ b/net/ipv6/sit.c | |||
| @@ -546,7 +546,8 @@ static int ipip6_err(struct sk_buff *skb, u32 info) | |||
| 546 | } | 546 | } |
| 547 | 547 | ||
| 548 | err = 0; | 548 | err = 0; |
| 549 | if (!ip6_err_gen_icmpv6_unreach(skb, iph->ihl * 4, type, data_len)) | 549 | if (__in6_dev_get(skb->dev) && |
| 550 | !ip6_err_gen_icmpv6_unreach(skb, iph->ihl * 4, type, data_len)) | ||
| 550 | goto out; | 551 | goto out; |
| 551 | 552 | ||
| 552 | if (t->parms.iph.daddr == 0) | 553 | if (t->parms.iph.daddr == 0) |
