diff options
author | David S. Miller <davem@davemloft.net> | 2011-06-24 18:23:34 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2011-07-01 20:30:43 -0400 |
commit | 11d53b4990226247a950e2b1ccfa4cf93bfbc822 (patch) | |
tree | 1d753762b2e7142e84526a146008e7bd029a6635 /net | |
parent | 6e4e2f811bade330126d4029c88c831784a7efd9 (diff) |
ipv6: Don't change dst->flags using assignments.
This blows away any flags already set in the entry.
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r-- | net/ipv6/route.c | 12 |
1 files changed, 2 insertions, 10 deletions
diff --git a/net/ipv6/route.c b/net/ipv6/route.c index de2b1decd786..c2af4da074b0 100644 --- a/net/ipv6/route.c +++ b/net/ipv6/route.c | |||
@@ -1062,14 +1062,6 @@ struct dst_entry *icmp6_dst_alloc(struct net_device *dev, | |||
1062 | dst_metric_set(&rt->dst, RTAX_HOPLIMIT, 255); | 1062 | dst_metric_set(&rt->dst, RTAX_HOPLIMIT, 255); |
1063 | rt->dst.output = ip6_output; | 1063 | rt->dst.output = ip6_output; |
1064 | 1064 | ||
1065 | #if 0 /* there's no chance to use these for ndisc */ | ||
1066 | rt->dst.flags = ipv6_addr_type(addr) & IPV6_ADDR_UNICAST | ||
1067 | ? DST_HOST | ||
1068 | : 0; | ||
1069 | ipv6_addr_copy(&rt->rt6i_dst.addr, addr); | ||
1070 | rt->rt6i_dst.plen = 128; | ||
1071 | #endif | ||
1072 | |||
1073 | spin_lock_bh(&icmp6_dst_lock); | 1065 | spin_lock_bh(&icmp6_dst_lock); |
1074 | rt->dst.next = icmp6_dst_gc_list; | 1066 | rt->dst.next = icmp6_dst_gc_list; |
1075 | icmp6_dst_gc_list = &rt->dst; | 1067 | icmp6_dst_gc_list = &rt->dst; |
@@ -1244,7 +1236,7 @@ int ip6_route_add(struct fib6_config *cfg) | |||
1244 | ipv6_addr_prefix(&rt->rt6i_dst.addr, &cfg->fc_dst, cfg->fc_dst_len); | 1236 | ipv6_addr_prefix(&rt->rt6i_dst.addr, &cfg->fc_dst, cfg->fc_dst_len); |
1245 | rt->rt6i_dst.plen = cfg->fc_dst_len; | 1237 | rt->rt6i_dst.plen = cfg->fc_dst_len; |
1246 | if (rt->rt6i_dst.plen == 128) | 1238 | if (rt->rt6i_dst.plen == 128) |
1247 | rt->dst.flags = DST_HOST; | 1239 | rt->dst.flags |= DST_HOST; |
1248 | 1240 | ||
1249 | #ifdef CONFIG_IPV6_SUBTREES | 1241 | #ifdef CONFIG_IPV6_SUBTREES |
1250 | ipv6_addr_prefix(&rt->rt6i_src.addr, &cfg->fc_src, cfg->fc_src_len); | 1242 | ipv6_addr_prefix(&rt->rt6i_src.addr, &cfg->fc_src, cfg->fc_src_len); |
@@ -2025,7 +2017,7 @@ struct rt6_info *addrconf_dst_alloc(struct inet6_dev *idev, | |||
2025 | 2017 | ||
2026 | in6_dev_hold(idev); | 2018 | in6_dev_hold(idev); |
2027 | 2019 | ||
2028 | rt->dst.flags = DST_HOST; | 2020 | rt->dst.flags |= DST_HOST; |
2029 | rt->dst.input = ip6_input; | 2021 | rt->dst.input = ip6_input; |
2030 | rt->dst.output = ip6_output; | 2022 | rt->dst.output = ip6_output; |
2031 | rt->rt6i_idev = idev; | 2023 | rt->rt6i_idev = idev; |