Code Review
/
vpp.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
review
|
tree
raw
|
inline
| side by side
BD ARP entry use common API types
[vpp.git]
/
src
/
vnet
/
l2
/
l2_input.h
diff --git
a/src/vnet/l2/l2_input.h
b/src/vnet/l2/l2_input.h
index
ea9dcad
..
f55e703
100644
(file)
--- a/
src/vnet/l2/l2_input.h
+++ b/
src/vnet/l2/l2_input.h
@@
-104,6
+104,7
@@
l2input_bd_config (u32 bd_index)
_(FLOOD, "l2-flood") \
_(ARP_TERM, "arp-term-l2bd") \
_(UU_FLOOD, "l2-flood") \
_(FLOOD, "l2-flood") \
_(ARP_TERM, "arp-term-l2bd") \
_(UU_FLOOD, "l2-flood") \
+ _(UU_FWD, "l2-uu-fwd") \
_(GBP_FWD, "gbp-fwd") \
_(FWD, "l2-fwd") \
_(RW, "l2-rw") \
_(GBP_FWD, "gbp-fwd") \
_(FWD, "l2-fwd") \
_(RW, "l2-rw") \
@@
-116,6
+117,7
@@
l2input_bd_config (u32 bd_index)
_(VPATH, "vpath-input-l2") \
_(ACL, "l2-input-acl") \
_(POLICER_CLAS, "l2-policer-classify") \
_(VPATH, "vpath-input-l2") \
_(ACL, "l2-input-acl") \
_(POLICER_CLAS, "l2-policer-classify") \
+ _(INPUT_FEAT_ARC, "l2-input-feat-arc") \
_(INPUT_CLASSIFY, "l2-input-classify") \
_(SPAN, "span-l2-input")
_(INPUT_CLASSIFY, "l2-input-classify") \
_(SPAN, "span-l2-input")
@@
-133,6
+135,7
@@
STATIC_ASSERT (L2INPUT_N_FEAT <= 32, "too many l2 input features");
/* Feature bit masks */
typedef enum
{
/* Feature bit masks */
typedef enum
{
+ L2INPUT_FEAT_NONE = 0,
#define _(sym,str) L2INPUT_FEAT_##sym = (1<<L2INPUT_FEAT_##sym##_BIT),
foreach_l2input_feat
#undef _
#define _(sym,str) L2INPUT_FEAT_##sym = (1<<L2INPUT_FEAT_##sym##_BIT),
foreach_l2input_feat
#undef _
@@
-192,11
+195,15
@@
l2_input_config_t *l2input_intf_config (u32 sw_if_index);
/* Enable (or disable) the feature in the bitmap for the given interface */
u32 l2input_intf_bitmap_enable (u32 sw_if_index,
/* Enable (or disable) the feature in the bitmap for the given interface */
u32 l2input_intf_bitmap_enable (u32 sw_if_index,
- u32 feature_bitmap, u32 enable);
+ l2input_feat_masks_t feature_bitmap,
+ u32 enable);
/* Sets modifies flags from a bridge domain */
u32 l2input_set_bridge_features (u32 bd_index, u32 feat_mask, u32 feat_value);
/* Sets modifies flags from a bridge domain */
u32 l2input_set_bridge_features (u32 bd_index, u32 feat_mask, u32 feat_value);
+void l2input_interface_mac_change (u32 sw_if_index,
+ const u8 * old_address,
+ const u8 * new_address);
#define MODE_L3 0
#define MODE_L2_BRIDGE 1
#define MODE_L3 0
#define MODE_L2_BRIDGE 1
@@
-210,7
+217,8
@@
u32 set_int_l2_mode (vlib_main_t * vm,
vnet_main_t * vnet_main,
u32 mode,
u32 sw_if_index,
vnet_main_t * vnet_main,
u32 mode,
u32 sw_if_index,
- u32 bd_index, u32 bvi, u32 shg, u32 xc_sw_if_index);
+ u32 bd_index, l2_bd_port_type_t port_type,
+ u32 shg, u32 xc_sw_if_index);
static inline void
vnet_update_l2_len (vlib_buffer_t * b)
static inline void
vnet_update_l2_len (vlib_buffer_t * b)
@@
-219,7
+227,7
@@
vnet_update_l2_len (vlib_buffer_t * b)
u16 ethertype;
u8 vlan_count = 0;
u16 ethertype;
u8 vlan_count = 0;
- /* point at curr
r
ent l2 hdr */
+ /* point at current l2 hdr */
eth = vlib_buffer_get_current (b);
/*
eth = vlib_buffer_get_current (b);
/*
@@
-250,7
+258,7
@@
vnet_update_l2_len (vlib_buffer_t * b)
* Compute flow hash of an ethernet packet, use 5-tuple hash if L3 packet
* is ip4 or ip6. Otherwise hash on smac/dmac/etype.
* The vlib buffer current pointer is expected to be at ethernet header
* Compute flow hash of an ethernet packet, use 5-tuple hash if L3 packet
* is ip4 or ip6. Otherwise hash on smac/dmac/etype.
* The vlib buffer current pointer is expected to be at ethernet header
- * and vnet l2.l2_len is exp
p
ected to be setup already.
+ * and vnet l2.l2_len is expected to be setup already.
*/
static inline u32
vnet_l2_compute_flow_hash (vlib_buffer_t * b)
*/
static inline u32
vnet_l2_compute_flow_hash (vlib_buffer_t * b)