16 #ifndef __GBP_POLICY_DPO_H__ 17 #define __GBP_POLICY_DPO_H__
gbp_policy_dpo_t * gbp_policy_dpo_pool
DPO pool.
struct gbp_policy_dpo_t_ gbp_policy_dpo_t
The GBP FWD DPO.
u32 index_t
A Data-Path Object is an object that represents actions that are applied to packets are they are swit...
vlib_node_registration_t gbp_policy_port_node
(constructor) VLIB_REGISTER_NODE (gbp_policy_port_node)
enum dpo_type_t_ dpo_type_t
Common types of data-path objects New types can be dynamically added using dpo_register_new_type() ...
u32 gpd_sw_if_index
output sw_if_index
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.
vlib_node_registration_t ip4_gbp_policy_dpo_node
(constructor) VLIB_REGISTER_NODE (ip4_gbp_policy_dpo_node)
vlib_node_registration_t ip6_gbp_policy_dpo_node
(constructor) VLIB_REGISTER_NODE (ip6_gbp_policy_dpo_node)
dpo_type_t gbp_policy_dpo_get_type(void)
sclass_t gpd_sclass
SClass.
static gbp_policy_dpo_t * gbp_policy_dpo_get(index_t index)
u16 gpd_locks
number of locks.
dpo_type_t gbp_policy_dpo_type
Types exposed for the Data-plane.
struct _vlib_node_registration vlib_node_registration_t
dpo_id_t gpd_dpo
Stacked DPO on DVR/ADJ of output interface.
CLIB_CACHE_LINE_ALIGN_MARK(cacheline0)
dpo_proto_t gpd_proto
The protocol of packets using this DPO.
void gbp_policy_dpo_add_or_lock(dpo_proto_t dproto, sclass_t sclass, u32 sw_if_index, dpo_id_t *dpo)