MPLS Unifom mode
[vpp.git] / src / vnet / dpo / dpo.h
index 304b433..4d48478 100644 (file)
@@ -63,6 +63,7 @@ typedef enum dpo_proto_t_
     DPO_PROTO_IP6,
     DPO_PROTO_MPLS,
     DPO_PROTO_ETHERNET,
+    DPO_PROTO_BIER,
     DPO_PROTO_NSH,
 } __attribute__((packed)) dpo_proto_t;
 
@@ -75,6 +76,7 @@ typedef enum dpo_proto_t_
     [DPO_PROTO_ETHERNET]  = "ethernet", \
     [DPO_PROTO_MPLS] = "mpls", \
     [DPO_PROTO_NSH] = "nsh",    \
+    [DPO_PROTO_BIER] = "bier", \
 }
 
 #define FOR_EACH_DPO_PROTO(_proto)    \
@@ -109,13 +111,19 @@ typedef enum dpo_type_t_ {
     DPO_LOOKUP,
     DPO_LISP_CP,
     DPO_CLASSIFY,
-    DPO_MPLS_LABEL,
-    DPO_MPLS_DISPOSITION,
+    DPO_MPLS_DISPOSITION_PIPE,
+    DPO_MPLS_DISPOSITION_UNIFORM,
     DPO_MFIB_ENTRY,
     DPO_INTERFACE_RX,
     DPO_INTERFACE_TX,
-    DPO_L2_BRIDGE,
+    DPO_DVR,
     DPO_L3_PROXY,
+    DPO_BIER_TABLE,
+    DPO_BIER_FMASK,
+    DPO_BIER_IMP,
+    DPO_BIER_DISP_TABLE,
+    DPO_BIER_DISP_ENTRY,
+    DPO_IP6_LL,
     DPO_LAST,
 } __attribute__((packed)) dpo_type_t;
 
@@ -138,13 +146,19 @@ typedef enum dpo_type_t_ {
     [DPO_REPLICATE] = "dpo-replicate", \
     [DPO_LISP_CP] = "dpo-lisp-cp",     \
     [DPO_CLASSIFY] = "dpo-classify",   \
-    [DPO_MPLS_LABEL] = "dpo-mpls-label", \
-    [DPO_MPLS_DISPOSITION] = "dpo-mpls-diposition", \
-    [DPO_MFIB_ENTRY] = "dpo-mfib_entry", \
+    [DPO_MPLS_DISPOSITION_PIPE] = "dpo-mpls-diposition-pipe", \
+    [DPO_MPLS_DISPOSITION_UNIFORM] = "dpo-mpls-diposition-uniform", \
+    [DPO_MFIB_ENTRY] = "dpo-mfib-entry", \
     [DPO_INTERFACE_RX] = "dpo-interface-rx",   \
     [DPO_INTERFACE_TX] = "dpo-interface-tx",   \
-    [DPO_L2_BRIDGE] = "dpo-l2-bridge", \
+    [DPO_DVR] = "dpo-dvr",     \
     [DPO_L3_PROXY] = "dpo-l3-proxy",   \
+    [DPO_BIER_TABLE] = "bier-table",   \
+    [DPO_BIER_FMASK] = "bier-fmask",   \
+    [DPO_BIER_IMP] = "bier-imposition",        \
+    [DPO_BIER_DISP_ENTRY] = "bier-disp-entry", \
+    [DPO_BIER_DISP_TABLE] = "bier-disp-table", \
+    [DPO_IP6_LL] = "ip6-link-local",   \
 }
 
 /**