16 #ifndef __MPLS_DISP_DPO_H__ 17 #define __MPLS_DISP_DPO_H__ 67 "MPLS Disposition DPO is larger than one cache line.");
u16 mdd_locks
Number of locks/users of the label.
struct mpls_disp_dpo_t mpls_disp_dpo_t
A representation of an MPLS label for imposition in the data-path.
u32 index_t
A Data-Path Object is an object that represents actions that are applied to packets are they are swit...
dpo_proto_t mdd_payload_proto
The protocol of the payload/packets that are being encapped.
fib_rpf_id_t mdd_rpf_id
RPF-ID (if this is an mcast disposition)
enum dpo_proto_t_ dpo_proto_t
Data path protocol.
The identity of a DPO is a combination of its type and its instance number/index of objects of that t...
#define pool_elt_at_index(p, i)
Returns pointer to element at given index.
enum fib_mpls_lsp_mode_t_ fib_mpls_lsp_mode_t
MPLS LSP mode - only valid at the head and tail.
mpls_disp_dpo_t * mpls_disp_dpo_pool
u8 * format_mpls_disp_dpo(u8 *s, va_list *args)
vl_api_vxlan_gbp_api_tunnel_mode_t mode
u32 fib_rpf_id_t
An RPF-ID is numerical value that is used RPF validate.
A representation of an MPLS label for imposition in the data-path.
void mpls_disp_dpo_module_init(void)
dpo_id_t mdd_dpo
Next DPO in the graph.
static mpls_disp_dpo_t * mpls_disp_dpo_get(index_t index)
fib_mpls_lsp_mode_t mdd_mode
LSP mode.
CLIB_CACHE_LINE_ALIGN_MARK(cacheline0)
required for pool_get_aligned.
void mpls_disp_dpo_create(dpo_proto_t payload_proto, fib_rpf_id_t rpf_id, fib_mpls_lsp_mode_t mode, const dpo_id_t *parent, dpo_id_t *dpo)
Create an MPLS label object.
#define CLIB_CACHE_LINE_BYTES