FD.io VPP
v21.06-3-gbb25fbf28
Vector Packet Processing
|
Go to the source code of this file.
Data Structures | |
struct | lisp_gpe_tenant_t_ |
Representation of the data associated with a LISP overlay tenant. More... | |
Typedefs | |
typedef enum lisp_gpe_tenant_lock_t_ | lisp_gpe_tenant_lock_t |
Refernece counting lock types on the tenant. More... | |
typedef struct lisp_gpe_tenant_t_ | lisp_gpe_tenant_t |
Representation of the data associated with a LISP overlay tenant. More... | |
Enumerations | |
enum | lisp_gpe_tenant_lock_t_ { LISP_GPE_TENANT_LOCK_L2_IFACE, LISP_GPE_TENANT_LOCK_L3_IFACE, LISP_GPE_TENANT_LOCK_NUM } |
Refernece counting lock types on the tenant. More... | |
Functions | |
u32 | lisp_gpe_tenant_find_or_create (u32 vni) |
Find or create a tenant for the given VNI. More... | |
u32 | lisp_gpe_tenant_l3_iface_add_or_lock (u32 vni, u32 vrf, u8 with_default_route) |
Add/create and lock a new or find and lock the existing L3 interface for the tenant. More... | |
void | lisp_gpe_tenant_l3_iface_unlock (u32 vni) |
Release the lock held on the tenant's L3 interface. More... | |
u32 | lisp_gpe_tenant_l2_iface_add_or_lock (u32 vni, u32 vrf) |
Add/create and lock a new or find and lock the existing L2 interface for the tenant. More... | |
void | lisp_gpe_tenant_l2_iface_unlock (u32 vni) |
Release the lock held on the tenant's L3 interface. More... | |
const lisp_gpe_tenant_t * | lisp_gpe_tenant_get (u32 index) |
get a const pointer to the tenant object More... | |
void | lisp_gpe_tenant_flush (void) |
Flush/delete ALL the tenants. More... | |
typedef enum lisp_gpe_tenant_lock_t_ lisp_gpe_tenant_lock_t |
Refernece counting lock types on the tenant.
When all of these counters drop to zero, we no longer need the tenant.
typedef struct lisp_gpe_tenant_t_ lisp_gpe_tenant_t |
Representation of the data associated with a LISP overlay tenant.
This object exists to manage the shared resources of the L2 and L3 interface of a given tenant.
Refernece counting lock types on the tenant.
When all of these counters drop to zero, we no longer need the tenant.
Enumerator | |
---|---|
LISP_GPE_TENANT_LOCK_L2_IFACE | |
LISP_GPE_TENANT_LOCK_L3_IFACE | |
LISP_GPE_TENANT_LOCK_NUM |
Definition at line 25 of file lisp_gpe_tenant.h.
Find or create a tenant for the given VNI.
Definition at line 67 of file lisp_gpe_tenant.c.
void lisp_gpe_tenant_flush | ( | void | ) |
Flush/delete ALL the tenants.
Definition at line 261 of file lisp_gpe_tenant.c.
const lisp_gpe_tenant_t* lisp_gpe_tenant_get | ( | u32 | index | ) |
get a const pointer to the tenant object
Definition at line 252 of file lisp_gpe_tenant.c.
Add/create and lock a new or find and lock the existing L2 interface for the tenant.
@paran vni The tenant's VNI
table_id | the Tenant's L2 Bridge Domain ID. |
Definition at line 182 of file lisp_gpe_tenant.c.
void lisp_gpe_tenant_l2_iface_unlock | ( | u32 | vni | ) |
Release the lock held on the tenant's L3 interface.
Definition at line 215 of file lisp_gpe_tenant.c.
Add/create and lock a new or find and lock the existing L3 interface for the tenant.
@paran vni The tenant's VNI
table_id | the Tenant's L3 table ID. |
with_default_route | Install default route for the interface |
Definition at line 110 of file lisp_gpe_tenant.c.
void lisp_gpe_tenant_l3_iface_unlock | ( | u32 | vni | ) |
Release the lock held on the tenant's L3 interface.
Definition at line 139 of file lisp_gpe_tenant.c.