40 #ifndef __OPENAPI_L2OL3TUNNEL_H__
41 #define __OPENAPI_L2OL3TUNNEL_H__
49 #define OPEN_L2OL3_TUNNEL_VXLAN_UDP_PORT (4789)
51 #define OPEN_L2OL3_TENANT_ID_MIN (1)
52 #define OPEN_L2OL3_TENANT_ID_MAX (0xFFFFFE)
53 #define OPEN_L2OL3_TENANT_ID_RESERVED (0xFFFFFF)
62 OPEN_L2OL3_TUNNEL_TYPE_INVALID = 0,
77 OPEN_L2OL3_REASON_INVALID = 0,
88 uint32_t localTepIpAddr;
102 uint32_t accessHandle;
146 uint32_t tunnelHandle;
149 uint32_t remoteIPAddr;
157 unsigned char macAddress[OPEN_MAC_ADDR_LEN];
173 uint32_t globalTunnelModeFailures;
174 uint32_t numTenantCreateFailures;
175 uint32_t numTenantDeleteFailures;
176 uint32_t numTenantVlanAddFailures;
177 uint32_t numTenantVlanDeleteFailures;
178 uint32_t numTenantSrcTepAddFailures;
179 uint32_t numTenantSrcTepDeleteFailures;
180 uint32_t numAccessCreateFailures;
181 uint32_t numAccessDeleteFailures;
182 uint32_t numTenantTunnelCreateFailures;
183 uint32_t numTenantTunnelModifyFailures;
184 uint32_t numTenantTunnelDeleteFailures;
185 uint32_t numVxlanUdpDstCfgFailures;
186 uint32_t numStaticFwdAddFailures;
187 uint32_t numStaticFwdDeleteFailures;
188 uint32_t numLearnedFwdAddFailures;
189 uint32_t numLearnedFwdDeleteFailures;
197 uint32_t numTenantVlans;
198 uint32_t numTenantLocalTeps;
199 uint32_t numAccessPorts;
200 uint32_t numTenantTunnels;
201 uint32_t numStaticFwdEntries;
202 uint32_t numLearnedFwdEntries;
203 uint32_t numTotalFwdEntries;
210 uint32_t maxNumTenants;
211 uint32_t maxNumAccessPorts;
212 uint32_t maxNumTunnelPorts;
213 uint32_t maxNumTunnelsInHw;
214 uint32_t maxNumLocalStaticFwdEntriesPerInterface;
216 uint32_t maxNumRemoteStaticFwdEntriesPerTenant;
218 uint32_t maxNumRemoteStaticFwdEntriesPerSwitch;
220 uint32_t maxNumFwdEntries;
246 uint32_t *capabilities );
363 uint32_t udpDestPort );
385 uint32_t * udpDestPort );
600 uint32_t * nextTenant,
620 uint32_t accessPortHandle,
641 uint32_t accessPortHandle,
702 uint32_t remoteIPAddr,
703 uint32_t * tunnelHandle );
723 uint32_t tunnelHandle );
742 uint32_t tunnelHandle,
795 uint32_t tunnelHandle,
826 uint32_t tunnelHandle );
864 uint32_t destIntfHandle );
open_error_t openapiL2oL3TunnelGet(openapiClientHandle_t *client_handle, uint32_t tunnelHandle, open_l2ol3TunnelInfo_t *tunnelInfo)
Gets tenant tunnel entry from the specified tunnel handle.
open_error_t openapiL2oL3TunnelCapabilitiesGet(openapiClientHandle_t *client_handle, uint32_t *capabilities)
Get Overlay capabilities of the Switch.
OPEN_L2OL3_TUNNEL_TYPE_t
Overlay Types.
Tunnel Port Entry Information.
open_error_t openapiL2oL3TenantL2FwdEntryGet(openapiClientHandle_t *client_handle, uint32_t tenantId, open_buffdesc *macAddress, open_l2ol3L2FwdEntry_t *macEntry)
Gets forwarding entry specified by tenant and MAC address.
Failed to configure terminator.
open_error_t openapiL2oL3ResourceLimitsGet(openapiClientHandle_t *client_handle, open_l2ol3ResourceLimits_t *resourceLimits)
Get Overlay configuration maximum allowed limits.
open_error_t openapiL2oL3ResourceStatsGet(openapiClientHandle_t *client_handle, open_l2ol3ResourceStats_t *resourceStats)
Get Overlay global statistics.
Classifies based on incoming port.
Tunnel Status Information.
open_error_t openapiL2oL3TenantDelete(openapiClientHandle_t *client_handle, uint32_t tenant)
Deletes specified tenant configuration.
open_error_t openapiL2oL3SwitchVxlanUdpDestPortSet(openapiClientHandle_t *client_handle, uint32_t udpDestPort)
Set VXLAN UDP port on the switch.
open_error_t
OPEN uses these enumerators to indicate the error codes.
Tenant Configuration Information.
open_error_t openapiL2oL3AccessPortNextGet(openapiClientHandle_t *client_handle, uint32_t accessPortHandle, open_l2ol3AccessPortInfo_t *accessPortNextInfo)
Gets next access port entry for the next numerically higher access port handle after the specified ac...
open_error_t openapiL2oL3TunnelLocalIPAddrGet(openapiClientHandle_t *client_handle, uint32_t *ipAddr)
Gets the preferred IP address that can be used as Local TEP or local Overlay Gateway IP address...
open_error_t openapiL2oL3TenantL2FwdEntryNextGet(openapiClientHandle_t *client_handle, uint32_t tenantId, open_buffdesc *macAddress, open_l2ol3L2FwdEntry_t *nextMacEntry)
Get the next forwarding entry available after the forwarding entry specified by tenant and MAC addres...
open_error_t openapiL2oL3TunnelNextGet(openapiClientHandle_t *client_handle, uint32_t tunnelId, open_l2ol3TunnelInfo_t *tunnelInfoNext)
Gets tunnel entry for the next numerically higher tunnel handle after the specified tunnel handle...
open_error_t openapiL2oL3TenantCreate(openapiClientHandle_t *client_handle, OPEN_L2OL3_CONFIG_t configType, uint32_t tenant, open_l2ol3TenantConfig_t tenantConfig)
Creates or updates specified tenant configuration.
Overlay Global Statistics Information.
Next-hop is not resolved.
Overlay Failure Statistics Information.
open_error_t openapiL2oL3SwitchVxlanUdpDestPortGet(openapiClientHandle_t *client_handle, uint32_t *udpDestPort)
Gets VXLAN UDP port configured on the switch.
OPEN_CONTROL_t
OPEN uses these enumerators to indicate enable or disable for a given config or status parameter...
open_error_t openapiL2oL3SwitchTunnelModeSet(openapiClientHandle_t *client_handle, OPEN_L2OL3_TUNNEL_TYPE_t tunnelType, OPEN_CONTROL_t mode)
Set the switch mode for the specified type of Overlay functionality.
open_error_t openapiL2oL3SwitchTunnelModeGet(openapiClientHandle_t *client_handle, OPEN_L2OL3_TUNNEL_TYPE_t tunnelType, OPEN_CONTROL_t *mode)
Gets the mode of the specified Overlay type.
OPEN_BOOL_t
OPEN uses these enumerators to indicate true or false for a given config or status parameter...
open_error_t openapiL2oL3TenantNextGet(openapiClientHandle_t *client_handle, uint32_t tenant, uint32_t *nextTenant, open_l2ol3TenantConfig_t *nextTenantConfig)
Get the next tenant entry for the next numerically higher tenant after the specified tenant...
open_error_t openapiL2oL3TenantL2FwdEntryDelete(openapiClientHandle_t *client_handle, uint32_t tenantId, open_buffdesc *macAddress)
Deletes a forwarding entry of the specified tenant system.
Classifies based on incoming VLAN tag.
Access Port Entry Information.
open_error_t openapiL2oL3TunnelCounterClear(openapiClientHandle_t *client_handle, uint32_t tunnelHandle)
Clears packet/byte counters of the tenant tunnel specified by tunnel handle.
Tunnel Counters Information.
open_error_t openapiL2oL3TunnelDelete(openapiClientHandle_t *client_handle, uint32_t tunnelHandle)
Delete a tenant tunnel specified by the tunnel handle.
Failed to configure initiator.
open_error_t openapiL2oL3TunnelCounterGet(openapiClientHandle_t *client_handle, uint32_t tunnelHandle, open_l2ol3TunnelStats_t *tunnelStats)
Gets packet/byte counters of the tenant tunnel specified tunnel handle.
OPEN_L2OL3_ACCESS_MATCH_t
Tenant Access Port Classification Types.
open_error_t openapiL2oL3AccessPortGet(openapiClientHandle_t *client_handle, uint32_t accessPortHandle, open_l2ol3AccessPortInfo_t *accessPortInfo)
Gets access port information from the specified access port handle.
open_error_t openapiL2oL3TenantGet(openapiClientHandle_t *client_handle, uint32_t tenant, open_l2ol3TenantConfig_t *tenantConfig)
Get the configuration for a specified tenant.
OPEN_L2OL3_REASON_t
Tunnel Status Reason Codes.
open_error_t openapiL2oL3TenantL2FwdEntryAdd(openapiClientHandle_t *client_handle, uint32_t tenantId, open_buffdesc *macAddress, uint32_t destIntfHandle)
Configures a forwarding entry for the specified tenant system.
Tenant Forwarding Entry Information.
open_error_t openapiL2oL3TunnelCreate(openapiClientHandle_t *client_handle, OPEN_L2OL3_CONFIG_t configType, uint32_t tenant, uint32_t remoteIPAddr, uint32_t *tunnelHandle)
Create a tunnel to a specified remote TEP for a specified tenant.
Overlay Global Resource Limits.
OPEN_LINK_STATE_t
OPEN uses these enumerators to indicate the link status.
OPEN_L2OL3_CONFIG_t
Overlay Configuration Methods.