summaryrefslogtreecommitdiff
path: root/zebra/interface.h
diff options
context:
space:
mode:
authorDonald Sharp <sharpd@cumulusnetworks.com>2018-09-19 11:02:42 -0400
committerDonald Sharp <sharpd@cumulusnetworks.com>2018-09-19 11:25:22 -0400
commitee98d1f11c940d5dc62509bc2cb9ca0f6ae4117d (patch)
tree0b6c57955f379d2a60b038a68655998fbe91bf80 /zebra/interface.h
parent19f2b5e8751ef6aca63896ac73900b5edc31fc62 (diff)
zebra: Abstract mac neigh installation into it's own function
Abstract the mac neigh installation for 169.254.0.1 into it's own function that we can pass the mac address into. This will allow a future commit to use this functionality when we have the appropriate mac address from reading optional attributes of a RA packet. Signed-off-by: Donald Sharp <sharpd@cumuusnetworks.com>
Diffstat (limited to 'zebra/interface.h')
-rw-r--r--zebra/interface.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/zebra/interface.h b/zebra/interface.h
index 02a05e6146..b632d25c2a 100644
--- a/zebra/interface.h
+++ b/zebra/interface.h
@@ -279,6 +279,7 @@ struct zebra_if {
* for bgp unnumbered?
*/
bool v6_2_v4_ll_neigh_entry;
+ char neigh_mac[6];
struct in6_addr v6_2_v4_ll_addr6;
};
@@ -332,6 +333,10 @@ extern struct interface *if_link_per_ns(struct zebra_ns *, struct interface *);
extern const char *ifindex2ifname_per_ns(struct zebra_ns *, unsigned int);
extern void if_unlink_per_ns(struct interface *);
+extern void if_nbr_mac_to_ipv4ll_neigh_update(struct interface *fip,
+ char mac[6],
+ struct in6_addr *address,
+ int add);
extern void if_nbr_ipv6ll_to_ipv4ll_neigh_update(struct interface *ifp,
struct in6_addr *address,
int add);