mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-06-22 06:32:08 +00:00
ipv6: Add redirect support to all protocol icmp error handlers.
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
3a5ad2ee5e
commit
ec18d9a269
13 changed files with 69 additions and 14 deletions
|
@ -434,16 +434,19 @@ static void esp6_err(struct sk_buff *skb, struct inet6_skb_parm *opt,
|
|||
struct xfrm_state *x;
|
||||
|
||||
if (type != ICMPV6_DEST_UNREACH &&
|
||||
type != ICMPV6_PKT_TOOBIG)
|
||||
type != ICMPV6_PKT_TOOBIG &&
|
||||
type != NDISC_REDIRECT)
|
||||
return;
|
||||
|
||||
x = xfrm_state_lookup(net, skb->mark, (const xfrm_address_t *)&iph->daddr,
|
||||
esph->spi, IPPROTO_ESP, AF_INET6);
|
||||
if (!x)
|
||||
return;
|
||||
pr_debug("pmtu discovery on SA ESP/%08x/%pI6\n",
|
||||
ntohl(esph->spi), &iph->daddr);
|
||||
ip6_update_pmtu(skb, net, info, 0, 0);
|
||||
|
||||
if (type == NDISC_REDIRECT)
|
||||
ip6_redirect(skb, net, 0, 0);
|
||||
else
|
||||
ip6_update_pmtu(skb, net, info, 0, 0);
|
||||
xfrm_state_put(x);
|
||||
}
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue