summaryrefslogtreecommitdiff
path: root/proto_vlan_q_in_q.c
diff options
context:
space:
mode:
authorTobias Klauser <tklauser@distanz.ch>2016-04-26 10:32:34 +0200
committerTobias Klauser <tklauser@distanz.ch>2016-04-26 11:22:11 +0200
commit01a9a2a5a8c56ce8699616a608a28de4e537ff56 (patch)
treeaf75edf3ba777c3bec5603f1234134a5787bc56f /proto_vlan_q_in_q.c
parentf3057cdf8518d4931a12beb3f4322638500efec8 (diff)
trafgen: Use mkostemp_or_die() to create unique temporary file
Use the mkostemp_or_die() wrapper introduced in commit a87f181bd836 ("ioops: Add mkostemp_or_die") to safely create a unique temporary file instead of using rand() to manually create a (potentially unsafe) temporary filename. Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Diffstat (limited to 'proto_vlan_q_in_q.c')
0 files changed, 0 insertions, 0 deletions
leads to unnecessary complexity in userspace dealing with IPv6 multipath routes. This patch allows all nexthops to be deleted without specifying each one in the delete request. Internally, this is done by walking the sibling list of the route matching the specifications given (prefix, length, metric, protocol, etc). $ ip -6 ro ls vrf red 2001:db8:1::/120 dev eth1 proto kernel metric 256 pref medium 2001:db8:2::/120 dev eth2 proto kernel metric 256 pref medium 2001:db8:200::/120 via 2001:db8:1::2 dev eth1 metric 1024 pref medium 2001:db8:200::/120 via 2001:db8:2::2 dev eth2 metric 1024 pref medium ... $ ip -6 ro del vrf red 2001:db8:200::/120 $ ip -6 ro ls vrf red 2001:db8:1::/120 dev eth1 proto kernel metric 256 pref medium 2001:db8:2::/120 dev eth2 proto kernel metric 256 pref medium ... Because IPv6 allows individual nexthops to be deleted without deleting the entire route, the ip6_route_multipath_del and non-multipath code path (ip6_route_del) have to be discriminated so that all nexthops are only deleted for the latter case. This is done by making the existing fc_type in fib6_config a u16 and then adding a new u16 field with fc_delete_all_nh as the first bit. Suggested-by: Dinesh Dutt <ddutt@cumulusnetworks.com> Signed-off-by: David Ahern <dsa@cumulusnetworks.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net')
-rw-r--r--net/ipv6/route.c38
1 files changed, 36 insertions, 2 deletions
diff --git a/net/ipv6/route.c b/net/ipv6/route.c