summaryrefslogtreecommitdiffstats
path: root/net
diff options
context:
space:
mode:
authorDavid S. Miller <davem@davemloft.net>2011-01-24 16:01:58 -0800
committerDavid S. Miller <davem@davemloft.net>2011-01-24 16:01:58 -0800
commitd80bc0fd262ef840ed4e82593ad6416fa1ba3fc4 (patch)
tree3a6af0460cad71f1b2efa4acae895dfe2a52634a /net
parent3dce38a02d6370dca690cd923619d4b00024b723 (diff)
downloadlinux-d80bc0fd262ef840ed4e82593ad6416fa1ba3fc4.tar.gz
linux-d80bc0fd262ef840ed4e82593ad6416fa1ba3fc4.tar.bz2
linux-d80bc0fd262ef840ed4e82593ad6416fa1ba3fc4.zip
ipv6: Always clone offlink routes.
Do not handle PMTU vs. route lookup creation any differently wrt. offlink routes, always clone them. Reported-by: PK <runningdoglackey@yahoo.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r--net/ipv6/route.c9
1 files changed, 1 insertions, 8 deletions
diff --git a/net/ipv6/route.c b/net/ipv6/route.c
index 373bd0416f69..1534508f6c68 100644
--- a/net/ipv6/route.c
+++ b/net/ipv6/route.c
@@ -72,8 +72,6 @@
#define RT6_TRACE(x...) do { ; } while (0)
#endif
-#define CLONE_OFFLINK_ROUTE 0
-
static struct rt6_info * ip6_rt_copy(struct rt6_info *ort);
static struct dst_entry *ip6_dst_check(struct dst_entry *dst, u32 cookie);
static unsigned int ip6_default_advmss(const struct dst_entry *dst);
@@ -738,13 +736,8 @@ restart:
if (!rt->rt6i_nexthop && !(rt->rt6i_flags & RTF_NONEXTHOP))
nrt = rt6_alloc_cow(rt, &fl->fl6_dst, &fl->fl6_src);
- else {
-#if CLONE_OFFLINK_ROUTE
+ else
nrt = rt6_alloc_clone(rt, &fl->fl6_dst);
-#else
- goto out2;
-#endif
- }
dst_release(&rt->dst);
rt = nrt ? : net->ipv6.ip6_null_entry;