summaryrefslogtreecommitdiffstats
path: root/bgpd/bgp_attr_evpn.h
diff options
context:
space:
mode:
Diffstat (limited to 'bgpd/bgp_attr_evpn.h')
-rw-r--r--bgpd/bgp_attr_evpn.h42
1 files changed, 26 insertions, 16 deletions
diff --git a/bgpd/bgp_attr_evpn.h b/bgpd/bgp_attr_evpn.h
index 3a93f6ae6..26650ef8b 100644
--- a/bgpd/bgp_attr_evpn.h
+++ b/bgpd/bgp_attr_evpn.h
@@ -22,31 +22,37 @@
#define _QUAGGA_BGP_ATTR_EVPN_H
/* value of first byte of ESI */
-#define ESI_TYPE_ARBITRARY 0 /* */
-#define ESI_TYPE_LACP 1 /* <> */
-#define ESI_TYPE_BRIDGE 2 /* <Root bridge Mac-6B>:<Root Br Priority-2B>:00 */
-#define ESI_TYPE_MAC 3 /* <Syst Mac Add-6B>:<Local Discriminator Value-3B> */
-#define ESI_TYPE_ROUTER 4 /* <RouterId-4B>:<Local Discriminator Value-4B> */
-#define ESI_TYPE_AS 5 /* <AS-4B>:<Local Discriminator Value-4B> */
+#define ESI_TYPE_ARBITRARY 0 /* */
+#define ESI_TYPE_LACP 1 /* <> */
+#define ESI_TYPE_BRIDGE 2 /* <Root bridge Mac-6B>:<Root Br Priority-2B>:00 */
+#define ESI_TYPE_MAC 3 /* <Syst Mac Add-6B>:<Local Discriminator Value-3B> */
+#define ESI_TYPE_ROUTER 4 /* <RouterId-4B>:<Local Discriminator Value-4B> */
+#define ESI_TYPE_AS 5 /* <AS-4B>:<Local Discriminator Value-4B> */
+
+
#define MAX_ESI {0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff,0xff}
#define ESI_LEN 10
#define MAX_ET 0xffffffff
+
u_long eth_tag_id;
struct attr;
-struct eth_segment_id {
- u_char val[ESI_LEN];
+struct eth_segment_id
+{
+ u_char val[ESI_LEN];
};
-union gw_addr {
- struct in_addr ipv4;
- struct in6_addr ipv6;
+union gw_addr
+{
+ struct in_addr ipv4;
+ struct in6_addr ipv6;
};
-struct bgp_route_evpn {
- struct eth_segment_id eth_s_id;
- union gw_addr gw_ip;
+struct bgp_route_evpn
+{
+ struct eth_segment_id eth_s_id;
+ union gw_addr gw_ip;
};
extern int str2esi(const char *str, struct eth_segment_id *id);
@@ -55,5 +61,9 @@ extern char *ecom_mac2str(char *ecom_mac);
extern void bgp_add_routermac_ecom(struct attr *attr, struct ethaddr *routermac);
extern int bgp_build_evpn_prefix(int type, uint32_t eth_tag,
- struct prefix *dst);
-#endif /* _QUAGGA_BGP_ATTR_EVPN_H */
+ struct prefix *dst);
+
+extern u_int32_t
+bgp_attr_mac_mobility_seqnum (struct attr *attr, u_char *sticky);
+
+#endif /* _QUAGGA_BGP_ATTR_EVPN_H */