diff options
author | Filip Tehlar <ftehlar@cisco.com> | 2019-02-26 07:28:33 -0800 |
---|---|---|
committer | Damjan Marion <dmarion@me.com> | 2019-02-28 09:17:37 +0000 |
commit | b9625cbdb1bbb5c67e792bd28fbb6b0801a257b4 (patch) | |
tree | 1e51aa87958d6d7a8c53b98e02a1485d9e47547d /src/plugins/l2e/l2e.h | |
parent | 901cbb9e4dcda09e93452129096c057efea4e390 (diff) |
l2e: Migrate old MULTIARCH macros to VLIB_NODE_FN
Change-Id: I55f45d84212e2293e3798dff6850d86d75414d02
Signed-off-by: Filip Tehlar <ftehlar@cisco.com>
Diffstat (limited to 'src/plugins/l2e/l2e.h')
-rw-r--r-- | src/plugins/l2e/l2e.h | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/src/plugins/l2e/l2e.h b/src/plugins/l2e/l2e.h index 954950149f9..e548d333f9d 100644 --- a/src/plugins/l2e/l2e.h +++ b/src/plugins/l2e/l2e.h @@ -20,6 +20,47 @@ #include <vnet/vnet.h> /** + * Per-interface L2 configuration + */ +typedef struct l2_emulation_t_ +{ + /** + * Enabled or Disabled. + * this is required since one L3 protocl can be enabled, but others not + */ + u8 enabled; +} l2_emulation_t; + +/** + * per-packet trace data + */ +typedef struct l2_emulation_trace_t_ +{ + /* per-pkt trace data */ + u8 extracted; +} l2_emulation_trace_t; + +/** + * Grouping of global data for the L2 emulation feature + */ +typedef struct l2_emulation_main_t_ +{ + u16 msg_id_base; + + u32 l2_emulation_node_index; + + /** + * Per-interface vector of emulation configs + */ + l2_emulation_t *l2_emulations; + + /** + * Next nodes for L2 output features + */ + u32 l2_input_feat_next[32]; +} l2_emulation_main_t; + +/** * L2 Emulation is a feautre that is applied to L2 ports to 'extract' * IP packets from the L2 path and inject them into the L3 path (i.e. * into the appropriate ip[4|6]_input node). @@ -30,6 +71,8 @@ extern void l2_emulation_enable (u32 sw_if_index); extern void l2_emulation_disable (u32 sw_if_index); +extern l2_emulation_main_t l2_emulation_main; + #endif /* |