Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
ethernet: add sanity checks to p2p_ethernet_add/del
[vpp.git]
/
src
/
vnet
/
ethernet
/
ethernet.h
diff --git
a/src/vnet/ethernet/ethernet.h
b/src/vnet/ethernet/ethernet.h
index
cde6fb9
..
2f544bb
100644
(file)
--- a/
src/vnet/ethernet/ethernet.h
+++ b/
src/vnet/ethernet/ethernet.h
@@
-257,7
+257,18
@@
typedef struct
u32 input_next_mpls;
} next_by_ethertype_t;
u32 input_next_mpls;
} next_by_ethertype_t;
+struct ethernet_main_t_;
+
+typedef void (ethernet_address_change_function_t)
+ (struct ethernet_main_t_ * im, u32 sw_if_index, uword opaque);
+
typedef struct
typedef struct
+{
+ ethernet_address_change_function_t *function;
+ uword function_opaque;
+} ethernet_address_change_ctx_t;
+
+typedef struct ethernet_main_t_
{
vlib_main_t *vlib_main;
{
vlib_main_t *vlib_main;
@@
-300,6
+311,13
@@
typedef struct
/* Allocated loopback instances */
uword *bm_loopback_instances;
/* Allocated loopback instances */
uword *bm_loopback_instances;
+
+ /** Functions to call when interface hw address changes. */
+ ethernet_address_change_ctx_t *address_change_callbacks;
+
+ /** Default interface MTU */
+ u32 default_mtu;
+
} ethernet_main_t;
extern ethernet_main_t ethernet_main;
} ethernet_main_t;
extern ethernet_main_t ethernet_main;
@@
-552,8
+570,6
@@
void ethernet_update_adjacency (vnet_main_t * vnm, u32 sw_if_index, u32 ai);
u8 *ethernet_build_rewrite (vnet_main_t * vnm,
u32 sw_if_index,
vnet_link_t link_type, const void *dst_address);
u8 *ethernet_build_rewrite (vnet_main_t * vnm,
u32 sw_if_index,
vnet_link_t link_type, const void *dst_address);
-const u8 *ethernet_ip4_mcast_dst_addr (void);
-const u8 *ethernet_ip6_mcast_dst_addr (void);
void ethernet_input_init (vlib_main_t * vm, ethernet_main_t * em);
extern vlib_node_registration_t ethernet_input_node;
void ethernet_input_init (vlib_main_t * vm, ethernet_main_t * em);
extern vlib_node_registration_t ethernet_input_node;