Open Ethernet Networking (OpEN) API Guide and Reference Manual  3.4.4.5
openapi_vlan.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_vlan.h
28 *
29 * @purpose VLAN Configuration and Status
30 *
31 * @component OPEN
32 *
33 * @create 08/29/2012
34 *
35 * @end
36 *
37 **********************************************************************/
38 #ifndef OPENAPI_VLAN_H_INCLUDED
39 #define OPENAPI_VLAN_H_INCLUDED
40 
41 #include <stdio.h>
42 #include <stddef.h>
43 #include <sys/un.h>
44 
45 #include "openapi_common.h"
46 
47 typedef enum
48 {
49  OPEN_DOT1Q_SWPORT_MODE_NONE = 0,
58 
60 #define OPEN_VLAN_LIST_MAX_ENTRIES 4096
61 
62 typedef struct
63 {
64  uint32_t numEntries;
67 
68 /*****************************************************************/
87  uint32_t vlanNum,
88  uint32_t *nextVlanNum);
89 
90 /*****************************************************************/
104  uint32_t vlanNum);
105 
106 /*****************************************************************/
118 int openapiVlanIsStatic(openapiClientHandle_t *client_handle,
119  uint32_t vlanNum);
120 
121 /*****************************************************************/
138  uint32_t vlanNum);
139 
140 /*****************************************************************/
157  uint32_t vlanNum);
158 
159 /*****************************************************************/
176  uint32_t ifNum,
178 
179 /*****************************************************************/
196  uint32_t ifNum,
198 
199 /*****************************************************************/
216  uint32_t ifNum,
217  uint32_t *vlanNum);
218 
219 /*****************************************************************/
238  uint32_t ifNum,
239  uint32_t vlanNum,
240  OPEN_CONTROL_t *tagging);
241 
242 /*****************************************************************/
261  uint32_t vlanNum,
262  uint32_t ifNum,
263  uint32_t *participating);
264 
265 /*****************************************************************/
283  uint32_t vlanNum,
284  uint32_t *nextVlanNum,
285  uint32_t *delete_pending);
286 
287 /*****************************************************************/
311  uint32_t vlanNum,
312  uint32_t ifNum,
313  OPEN_VLAN_PARTICIPATION_MODE_t participationMode);
314 
315 /*****************************************************************/
337  uint32_t vlanNum,
338  uint32_t ifNum,
339  OPEN_VLAN_PARTICIPATION_MODE_t *participationMode);
340 
341 /*****************************************************************/
362  uint32_t ifNum,
363  uint32_t vlanNum);
364 
365 /*****************************************************************/
387  uint32_t ifNum,
388  uint32_t vlanNum,
389  OPEN_CONTROL_t tagging);
390 
391 /*****************************************************************/
406  uint32_t ifNum,
407  uint32_t *numTrafficClasses);
408 
409 /*****************************************************************/
429  uint32_t ifNum,
430  uint32_t priority);
431 
432 /*****************************************************************/
448  uint32_t ifNum,
449  uint32_t *priority);
450 
451 /*****************************************************************/
466  uint32_t *strLen);
467 
468 /*****************************************************************/
490  uint32_t vlanNum,
491  open_buffdesc *vlanName);
492 
493 /*****************************************************************/
511  uint32_t vlanNum,
512  open_buffdesc *vlanName);
513 
514 /*****************************************************************/
532  uint32_t intf, OPEN_DOT1Q_SWPORT_MODE_t mode);
533 
534 /*****************************************************************/
552  uint32_t intf, OPEN_DOT1Q_SWPORT_MODE_t *mode);
553 
554 /*****************************************************************/
572  uint32_t intf, uint32_t vlanId);
573 
574 /*****************************************************************/
592  uint32_t intf, uint32_t *vlanId);
593 
594 /*****************************************************************/
613  uint32_t intf, uint32_t vlanId);
614 
615 /*****************************************************************/
633  uint32_t intf, uint32_t *vlanId);
634 
635 /*****************************************************************/
652  uint32_t intf,
653  OPEN_VLAN_LIST_t *vidList);
654 
655 /*****************************************************************/
671  uint32_t intf,
672  OPEN_VLAN_LIST_t *vidList);
673 
674 /*****************************************************************/
690  uint32_t intf,
691  OPEN_VLAN_LIST_t *vidList);
692 
693 /*****************************************************************/
709  uint32_t intf,
710  OPEN_VLAN_LIST_t *vidList);
711 
712 /*****************************************************************/
728  uint32_t intf,
729  OPEN_VLAN_LIST_t *vidList);
730 
731 /*****************************************************************/
747  uint32_t intf,
748  OPEN_VLAN_LIST_t *vidList);
749 
750 /*****************************************************************/
772  uint32_t intf,
774 
775 /*****************************************************************/
796  uint32_t intf,
797  uint32_t *primaryVid,
798  uint32_t *secondaryVid);
799 
800 /*****************************************************************/
821  uint32_t intf,
822  uint32_t *primaryVid,
823  OPEN_VLAN_LIST_t *secondaryVidList);
824 
825 /*****************************************************************/
843  uint32_t intf,
844  OPEN_VLAN_LIST_t *operationalVidList);
845 
846 /*****************************************************************/
870  uint32_t intf,
871  uint32_t primaryVid,
872  uint32_t *nextPrimaryVid,
873  OPEN_VLAN_LIST_t *secondaryVidList);
874 
875 /*****************************************************************/
899  uint32_t intf,
900  uint32_t primaryVid,
901  uint32_t *nextPrimaryVid,
902  uint32_t *secondaryVid);
903 
904 /*****************************************************************/
927  uint32_t intf,
928  uint32_t *nativeVid);
929 
930 /*****************************************************************/
949  uint32_t intf,
950  OPEN_VLAN_LIST_t *normalVidList);
951 
952 #endif /* OPENAPI_VLAN_H_INCLUDED */
953