lists.openwall.net | lists / announce owl-users owl-dev john-users john-dev passwdqc-users yescrypt popa3d-users / oss-security kernel-hardening musl sabotage tlsify passwords / crypt-dev xvendor / Bugtraq Full-Disclosure linux-kernel linux-netdev linux-ext4 linux-hardening PHC | |
Open Source and information security mailing list archives
| ||
|
Date: Sun, 22 Dec 2019 10:51:10 +0800 From: Hangbin Liu <liuhangbin@...il.com> To: netdev@...r.kernel.org Cc: Julian Anastasov <ja@....bg>, Marcelo Ricardo Leitner <marcelo.leitner@...il.com>, David Ahern <dsahern@...il.com>, Eric Dumazet <edumazet@...gle.com>, Guillaume Nault <gnault@...hat.com>, David Miller <davem@...emloft.net>, Pablo Neira <pablo@...filter.org>, Stephen Hemminger <stephen@...workplumber.org>, Alexey Kodanev <alexey.kodanev@...cle.com>, Hangbin Liu <liuhangbin@...il.com> Subject: [PATCHv5 net 2/8] ip6_gre: do not confirm neighbor when do pmtu update When we do ipv6 gre pmtu update, we will also do neigh confirm currently. This will cause the neigh cache be refreshed and set to REACHABLE before xmit. But if the remote mac address changed, e.g. device is deleted and recreated, we will not able to notice this and still use the old mac address as the neigh cache is REACHABLE. Fix this by disable neigh confirm when do pmtu update v5: No change. v4: No change. v3: Do not remove dst_confirm_neigh, but add a new bool parameter in dst_ops.update_pmtu to control whether we should do neighbor confirm. Also split the big patch to small ones for each area. v2: Remove dst_confirm_neigh in __ip6_rt_update_pmtu. Reported-by: Jianlin Shi <jishi@...hat.com> Reviewed-by: Guillaume Nault <gnault@...hat.com> Acked-by: David Ahern <dsahern@...il.com> Signed-off-by: Hangbin Liu <liuhangbin@...il.com> --- net/ipv6/ip6_gre.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/net/ipv6/ip6_gre.c b/net/ipv6/ip6_gre.c index 071cb237f00b..189de56f5e36 100644 --- a/net/ipv6/ip6_gre.c +++ b/net/ipv6/ip6_gre.c @@ -1040,7 +1040,7 @@ static netdev_tx_t ip6erspan_tunnel_xmit(struct sk_buff *skb, /* TooBig packet may have updated dst->dev's mtu */ if (!t->parms.collect_md && dst && dst_mtu(dst) > dst->dev->mtu) - dst->ops->update_pmtu(dst, NULL, skb, dst->dev->mtu, true); + dst->ops->update_pmtu(dst, NULL, skb, dst->dev->mtu, false); err = ip6_tnl_xmit(skb, dev, dsfield, &fl6, encap_limit, &mtu, NEXTHDR_GRE); -- 2.19.2
Powered by blists - more mailing lists