diff options
author | Maciej Żenczykowski <maze@google.com> | 2019-09-02 18:23:36 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2019-09-05 00:31:50 +0200 |
commit | d55a2e374a94fa34a3048c6a2be535266e506d97 (patch) | |
tree | aabaa7f2b246209a378fa34b24436446fc990139 /kernel/irq_work.c | |
parent | sctp: use transport pf_retrans in sctp_do_8_2_transport_strike (diff) | |
download | linux-d55a2e374a94fa34a3048c6a2be535266e506d97.tar.xz linux-d55a2e374a94fa34a3048c6a2be535266e506d97.zip |
net-ipv6: fix excessive RTF_ADDRCONF flag on ::1/128 local route (and others)
There is a subtle change in behaviour introduced by:
commit c7a1ce397adacaf5d4bb2eab0a738b5f80dc3e43
'ipv6: Change addrconf_f6i_alloc to use ip6_route_info_create'
Before that patch /proc/net/ipv6_route includes:
00000000000000000000000000000001 80 00000000000000000000000000000000 00 00000000000000000000000000000000 00000000 00000003 00000000 80200001 lo
Afterwards /proc/net/ipv6_route includes:
00000000000000000000000000000001 80 00000000000000000000000000000000 00 00000000000000000000000000000000 00000000 00000002 00000000 80240001 lo
ie. the above commit causes the ::1/128 local (automatic) route to be flagged with RTF_ADDRCONF (0x040000).
AFAICT, this is incorrect since these routes are *not* coming from RA's.
As such, this patch restores the old behaviour.
Fixes: c7a1ce397ada ("ipv6: Change addrconf_f6i_alloc to use ip6_route_info_create")
Cc: David Ahern <dsahern@gmail.com>
Cc: Lorenzo Colitti <lorenzo@google.com>
Signed-off-by: Maciej Żenczykowski <maze@google.com>
Reviewed-by: David Ahern <dsahern@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'kernel/irq_work.c')
0 files changed, 0 insertions, 0 deletions