ipv6: Check dest prefix length on original route not copied one in rt6_alloc_cow().
authorDavid S. Miller <davem@davemloft.net>
Tue, 13 Dec 2011 22:35:06 +0000 (17:35 -0500)
committerDavid S. Miller <davem@davemloft.net>
Tue, 13 Dec 2011 22:35:06 +0000 (17:35 -0500)
commitbb3c36863e8001fc21a88bebfdead4da4c23e848
tree68d479f11721abaac0713792d096b98aa04b9854
parent3f1e6d3fd37bd4f25e5b19f1c7ca21850426c33f
ipv6: Check dest prefix length on original route not copied one in rt6_alloc_cow().

After commit 8e2ec639173f325977818c45011ee176ef2b11f6 ("ipv6: don't
use inetpeer to store metrics for routes.") the test in rt6_alloc_cow()
for setting the ANYCAST flag is now wrong.

'rt' will always now have a plen of 128, because it is set explicitly
to 128 by ip6_rt_copy.

So to restore the semantics of the test, check the destination prefix
length of 'ort'.

Signed-off-by: David S. Miller <davem@davemloft.net>
net/ipv6/route.c