GBP Endpoint Learning
[vpp.git] / src / vnet / l2 / l2_output.h
index b3d3505..33eeb8e 100644 (file)
@@ -81,7 +81,8 @@ extern vlib_node_registration_t l2output_node;
 #define foreach_l2output_feat \
  _(OUTPUT,            "interface-output")           \
  _(SPAN,              "span-l2-output")             \
- _(GBP_POLICY,        "gbp-policy")                 \
+ _(GBP_POLICY_PORT,   "gbp-policy-port")            \
+ _(GBP_POLICY_MAC,    "gbp-policy-mac")             \
  _(CFM,               "feature-bitmap-drop")        \
  _(QOS,               "feature-bitmap-drop")        \
  _(ACL,               "l2-output-acl")              \
@@ -91,6 +92,7 @@ extern vlib_node_registration_t l2output_node;
  _(STP_BLOCKED,       "feature-bitmap-drop")        \
  _(LINESTATUS_DOWN,   "feature-bitmap-drop")        \
  _(OUTPUT_CLASSIFY,   "l2-output-classify")        \
+ _(OUTPUT_FEAT_ARC,   "l2-output-feat-arc")        \
  _(XCRW,             "l2-xcrw")
 
 /* Feature bitmap positions */
@@ -107,6 +109,7 @@ STATIC_ASSERT (L2OUTPUT_N_FEAT <= 32, "too many l2 output features");
 /* Feature bit masks */
 typedef enum
 {
+  L2OUTPUT_FEAT_NONE = 0,
 #define _(sym,str) L2OUTPUT_FEAT_##sym = (1<<L2OUTPUT_FEAT_##sym##_BIT),
   foreach_l2output_feat
 #undef _
@@ -158,7 +161,8 @@ l2_output_config_t *l2output_intf_config (u32 sw_if_index);
 
 /** Enable (or disable) the feature in the bitmap for the given interface */
 void l2output_intf_bitmap_enable (u32 sw_if_index,
-                                 u32 feature_bitmap, u32 enable);
+                                 l2output_feat_masks_t feature_bitmap,
+                                 u32 enable);
 
 #endif