Open Ethernet Networking (OpEN) API Guide and Reference Manual  3.6.0.3
openapi_sdm.h
Go to the documentation of this file.
1 
9 /*********************************************************************
10 *
11 * Copyright 2016-2018 Broadcom.
12 *
13 * Licensed under the Apache License, Version 2.0 (the "License");
14 * you may not use this file except in compliance with the License.
15 * You may obtain a copy of the License at
16 *
17 * http://www.apache.org/licenses/LICENSE-2.0
18 *
19 * Unless required by applicable law or agreed to in writing, software
20 * distributed under the License is distributed on an "AS IS" BASIS,
21 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
22 * See the License for the specific language governing permissions and
23 * limitations under the License.
24 *
25 **********************************************************************
26 *
27 * @filename openapi_sdm.h
28 *
29 * @purpose View and configure SDM templates
30 *
31 * @component OPEN
32 *
33 * @create 12/12/2016
34 *
35 * @end
36 *
37 **********************************************************************/
38 #ifndef OPENAPI_SDM_H_INCLUDED
39 #define OPENAPI_SDM_H_INCLUDED
40 
41 #include <stdio.h>
42 #include <stddef.h>
43 #include <sys/un.h>
44 
45 #include "openapi_common.h"
46 
47 #define OPEN_MAX_SDM_TEMPLATES 5
49 #define OPEN_SDM_TEMPLATE_NAME_LEN 32
51 /* The values in the following enum are stored persistently and identify the
52  template in use when a switch boots. */
53 
54 typedef enum
55 {
67  OPEN_SDM_TEMPLATE_MAX = OPEN_SDM_TEMPLATE_ALPM_MPLS_DUAL_DATA_CENTER
69 
70 /*****************************************************************/
85 
86 /*****************************************************************/
99 
100 /*****************************************************************/
116 
117 /*****************************************************************/
136 
137 /*****************************************************************/
156 
157 /*****************************************************************/
173 open_error_t openapiSdmTemplateMaxArpEntriesGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t templateId, uint32_t *maxEntries);
174 
175 /*****************************************************************/
192 
193 /*****************************************************************/
209 open_error_t openapiSdmTemplateMaxNdpEntriesGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t templateId, uint32_t *maxEntries);
210 
211 /*****************************************************************/
228 
229 /*****************************************************************/
246 
247 /*****************************************************************/
264 
265 /*****************************************************************/
282 
283 /*****************************************************************/
297 
298 #endif /* OPENAPI_SDM_H_INCLUDED */
299 
open_error_t openapiSdmTemplateIdNextGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t *templateId)
Get the next supported SDM template.
open_error_t openapiSdmActiveTemplateGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t *templateId)
Get the template ID of the active SDM template.
ALPM MPLS dual datacenter SDM template.
Definition: openapi_sdm.h:66
Dual datacenter SDM template.
Definition: openapi_sdm.h:61
open_error_t openapiSdmTemplateMaxArpEntriesGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t templateId, uint32_t *maxEntries)
Get the maximum number of ARP entries supported in a specific SDM template.
Dual default SDM template.
Definition: openapi_sdm.h:57
open_error_t openapiSdmTemplateMaxIpv4RoutesGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t templateId, uint32_t *maxRoutes)
Get the maximum number of IPv4 routes supported in a specific SDM template.
MPLS dual datacenter SDM template.
Definition: openapi_sdm.h:62
open_error_t openapiSdmTemplateNameGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t templateId, open_buffdesc *templateName)
Given a template ID, get the corresponding template name.
No SDM template.
Definition: openapi_sdm.h:56
open_error_t
OPEN uses these enumerators to indicate the error codes.
open_error_t openapiSdmNextActiveTemplateSet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t templateId)
Set the template ID of the next active SDM template.
V4 datacenter SDM template.
Definition: openapi_sdm.h:59
V4 default SDM template.
Definition: openapi_sdm.h:58
OPEN_SDM_TEMPLATE_ID_t
Definition: openapi_sdm.h:54
open_error_t openapiSdmTemplateMaxEcmpNextHopsGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t templateId, uint32_t *maxHops)
Get the maximum number of ECMP next hops supported in a specific SDM template.
open_error_t openapiSdmTemplateMaxIpv6RoutesGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t templateId, uint32_t *maxRoutes)
Get the maximum number of IPv6 routes supported in a specific SDM template.
DCVPN dual datacenter SDM template.
Definition: openapi_sdm.h:63
OPEN_BOOL_t
OPEN uses these enumerators to indicate true or false for a given config or status parameter...
open_error_t openapiSdmTemplateMaxIpv6McastRoutesGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t templateId, uint32_t *maxRoutes)
Get the maximum number of IPv6 multicast routes supported in a specific SDM template.
Datacenter plus SDM template.
Definition: openapi_sdm.h:60
ALPM SDM template.
Definition: openapi_sdm.h:65
DCVPN V4 datacenter SDM template.
Definition: openapi_sdm.h:64
open_error_t openapiSdmTemplateSupported(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t templateId, OPEN_BOOL_t *supported)
Determine if a given SDM template is supported.
open_error_t openapiSdmTemplateMaxIpv4McastRoutesGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t templateId, uint32_t *maxRoutes)
Get the maximum number of IPv4 multicast routes supported in a specific SDM template.
open_error_t openapiSdmTemplateMaxNdpEntriesGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t templateId, uint32_t *maxEntries)
Get the maximum number of NDP entries supported in a specific SDM template.
open_error_t openapiSdmNextActiveTemplateGet(openapiClientHandle_t *client_handle, OPEN_SDM_TEMPLATE_ID_t *templateId)
Get the template ID of the next active SDM template.