X-Git-Url: https://gerrit.fd.io/r/gitweb?a=blobdiff_plain;f=src%2Fvnet%2Fl2%2Fl2_output.h;h=1cc1e738841a9f6bdf06f1879e36d02d1bead959;hb=0938eba153ed20b8a32b7278ed6301b45ce257cc;hp=6b00d01655cd6914bafa9fe0974c645d617e9d46;hpb=25b049484fcf9161edb2c19250066b893c38c264;p=vpp.git diff --git a/src/vnet/l2/l2_output.h b/src/vnet/l2/l2_output.h index 6b00d01655c..1cc1e738841 100644 --- a/src/vnet/l2/l2_output.h +++ b/src/vnet/l2/l2_output.h @@ -28,8 +28,6 @@ typedef struct { - u32 feature_bitmap; - /* * vlan tag rewrite for ingress and egress * ingress vtr is located here because the same config data is used for @@ -40,9 +38,7 @@ typedef struct ptr_config_t input_pbb_vtr; ptr_config_t output_pbb_vtr; - /* some of these flags may get integrated into the feature bitmap */ - u8 fwd_enable; - u8 flood_enable; + u32 feature_bitmap; /* split horizon group */ u8 shg; @@ -85,7 +81,9 @@ extern vlib_node_registration_t l2output_node; #define foreach_l2output_feat \ _(OUTPUT, "interface-output") \ _(SPAN, "span-l2-output") \ - _(GBP_POLICY, "gbp-policy") \ + _(GBP_POLICY_LPM, "gbp-policy-lpm") \ + _(GBP_POLICY_PORT, "gbp-policy-port") \ + _(GBP_POLICY_MAC, "gbp-policy-mac") \ _(CFM, "feature-bitmap-drop") \ _(QOS, "feature-bitmap-drop") \ _(ACL, "l2-output-acl") \ @@ -95,6 +93,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 */ @@ -111,6 +110,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<