From baff583e8bb5f703ab07aab55fea9a7ddf42a468 Mon Sep 17 00:00:00 2001 From: Maitane Zotes Date: Wed, 5 Mar 2014 09:13:43 +0100 Subject: ospf6d: implement admin distance Until today the admin distance cannot be configured for any IPv6 routing protocol. This patch implements it for ospf6. Signed-off-by: Maitane Zotes Signed-off-by: Roman Hoog Antink --- ospf6d/ospf6_zebra.h | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'ospf6d/ospf6_zebra.h') diff --git a/ospf6d/ospf6_zebra.h b/ospf6d/ospf6_zebra.h index 5b28c0763..83032b64b 100644 --- a/ospf6d/ospf6_zebra.h +++ b/ospf6d/ospf6_zebra.h @@ -35,6 +35,16 @@ extern unsigned char conf_debug_ospf6_zebra; #define IS_OSPF6_DEBUG_ZEBRA(e) \ (conf_debug_ospf6_zebra & OSPF6_DEBUG_ZEBRA_ ## e) +/* OSPF6 distance */ +struct ospf6_distance +{ + /* Distance value for the IP source prefix */ + u_char distance; + + /* Name of the access-list to be matched */ + char *access_list; +}; + extern struct zclient *zclient; extern void ospf6_zebra_route_update_add (struct ospf6_route *request); @@ -48,6 +58,15 @@ extern void ospf6_zebra_init (struct thread_master *); extern void ospf6_zebra_add_discard (struct ospf6_route *request); extern void ospf6_zebra_delete_discard (struct ospf6_route *request); +struct ospf6; +extern void ospf6_distance_reset (struct ospf6 *); +extern u_char ospf6_distance_apply (struct prefix_ipv6 *, struct ospf6_route *); + +extern int ospf6_distance_set (struct vty *, struct ospf6 *, const char *, + const char *, const char *); +extern int ospf6_distance_unset (struct vty *, struct ospf6 *, const char *, + const char *, const char *); + extern int config_write_ospf6_debug_zebra (struct vty *vty); extern void install_element_ospf6_debug_zebra (void); -- cgit v1.2.3