summaryrefslogtreecommitdiff
path: root/zebra/zebra_static.h
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2017-08-08 13:39:38 -0400
committerGitHub <noreply@github.com>2017-08-08 13:39:38 -0400
commit76a86854181c27819e5cf71b12ae1fa5ccd9e02a (patch)
tree691b03e51b9c99874d4ef26f9ca9b29cbee1b199 /zebra/zebra_static.h
parentf66e92bc4856352dc4c1c81fa35b1dd570cd83e5 (diff)
parent06e0a0cb3c630c2b221fecd2f081348b36943a6e (diff)
Merge pull request #920 from opensourcerouting/static-routes-ifindex-update-3.0reindent-3.0-before
[3.0] fixup static routes' ifindexes when interfaces (dis)appear
Diffstat (limited to 'zebra/zebra_static.h')
-rw-r--r--zebra/zebra_static.h15
1 files changed, 8 insertions, 7 deletions
diff --git a/zebra/zebra_static.h b/zebra/zebra_static.h
index adc2efff58..6d3bafa325 100644
--- a/zebra/zebra_static.h
+++ b/zebra/zebra_static.h
@@ -32,11 +32,11 @@ struct static_nh_label
};
typedef enum {
- STATIC_IFINDEX,
+ STATIC_IFNAME,
STATIC_IPV4_GATEWAY,
STATIC_BLACKHOLE,
STATIC_IPV6_GATEWAY,
- STATIC_IPV6_GATEWAY_IFINDEX,
+ STATIC_IPV6_GATEWAY_IFNAME,
} zebra_static_types;
/* Static route information. */
@@ -64,7 +64,7 @@ struct static_route
* Under IPv4 addr and ifindex are
* used independentyly.
* STATIC_IPV4_GATEWAY uses addr
- * STATIC_IFINDEX uses ifindex
+ * STATIC_IFNAME uses ifindex
*/
union g_addr addr;
ifindex_t ifindex;
@@ -91,16 +91,15 @@ static_uninstall_route (afi_t afi, safi_t safi, struct prefix *p,
extern int
static_add_route (afi_t, safi_t safi, u_char type, struct prefix *p,
- struct prefix_ipv6 *src_p,
- union g_addr *gate, ifindex_t ifindex,
+ struct prefix_ipv6 *src_p, union g_addr *gate,
const char *ifname, u_char flags, route_tag_t tag,
u_char distance, struct zebra_vrf *zvrf,
struct static_nh_label *snh_label);
extern int
static_delete_route (afi_t, safi_t safi, u_char type, struct prefix *p,
- struct prefix_ipv6 *src_p,
- union g_addr *gate, ifindex_t ifindex, route_tag_t tag,
+ struct prefix_ipv6 *src_p, union g_addr *gate,
+ const char *ifname, route_tag_t tag,
u_char distance, struct zebra_vrf *zvrf,
struct static_nh_label *snh_label);
@@ -119,4 +118,6 @@ static_ipv6_func (struct vty *vty, int add_cmd, const char *dest_str,
const char *distance_str, const char *vrf_id_str,
const char *label_str);
+extern void static_ifindex_update(struct interface *ifp, bool up);
+
#endif