]> git.baikalelectronics.ru Git - kernel.git/commit
ipv4: fix redirect handling
authorEric Dumazet <eric.dumazet@gmail.com>
Fri, 18 Nov 2011 20:24:32 +0000 (15:24 -0500)
committerDavid S. Miller <davem@davemloft.net>
Fri, 18 Nov 2011 20:24:32 +0000 (15:24 -0500)
commit339d72a89ea1db4c67964b4183acd71d7abe9a4e
treef0dc4bce125d845703ef6377d645a5ca9864e612
parent9d6022f28318ce7d95f3d9eba304a303d5128b02
ipv4: fix redirect handling

commit edfa3a087784 (ipv4: Cache learned redirect information in
inetpeer.) introduced a regression in ICMP redirect handling.

It assumed ipv4_dst_check() would be called because all possible routes
were attached to the inetpeer we modify in ip_rt_redirect(), but thats
not true.

commit 7be0fbf305 (route: fix ICMP redirect validation) tried to fix
this but solution was not complete. (It fixed only one route)

So we must lookup existing routes (including different TOS values) and
call check_peer_redir() on them.

Reported-by: Ivan Zahariev <famzah@icdsoft.com>
Signed-off-by: Eric Dumazet <eric.dumazet@gmail.com>
CC: Flavio Leitner <fbl@redhat.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv4/route.c