Open Ethernet Networking (OpEN) API Guide and Reference Manual
3.9.0.2
Welcome
ADK Documentation
API Reference
Files
File List
Globals
api
include
openapi_lag.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_lag.h
28
*
29
* @purpose LAG Configuration and Status
30
*
31
* @component OPEN
32
*
33
* @create 10/10/2012
34
*
35
* @end
36
*
37
**********************************************************************/
38
#ifndef OPENAPI_LAG_H_INCLUDED
39
#define OPENAPI_LAG_H_INCLUDED
40
41
#include <stdio.h>
42
#include <stddef.h>
43
#include <sys/un.h>
44
45
#include "
openapi_common.h
"
46
48
typedef
enum
49
{
50
OPEN_LAG_HASHING_MODE_SA_VLAN
= 0,
51
OPEN_LAG_HASHING_MODE_DA_VLAN
= 1,
52
OPEN_LAG_HASHING_MODE_SDA_VLAN
= 2,
53
OPEN_LAG_HASHING_MODE_SIP_SPORT
= 3,
54
OPEN_LAG_HASHING_MODE_DIP_DPORT
= 4,
55
OPEN_LAG_HASHING_MODE_SDIP_DPORT
= 5,
56
OPEN_LAG_HASHING_MODE_ENHANCED
= 6
57
}
OPEN_LAG_HASH_MODE_t
;
58
60
typedef
enum
61
{
62
OPEN_DOT3AD_STATE_AGGREGATION
= 0,
63
OPEN_DOT3AD_STATE_LACP_TIMEOUT
= 1,
64
OPEN_DOT3AD_STATE_LACP_ACTIVITY
= 2
65
}
OPEN_DOT3AD_STATE_TYPE_t
;
66
67
#define OPEN_MAX_MEMBERS_PER_LAG 32
68
#define OPEN_LAG_MEMBER_BUFFER_SIZE (sizeof(uint32_t) * OPEN_MAX_MEMBERS_PER_LAG)
69
70
/*****************************************************************/
86
open_error_t
openapiLagPortAdd
(
openapiClientHandle_t
*client_handle,
87
uint32_t lagIfNum,
88
uint32_t phyIfNum);
89
90
/*****************************************************************/
104
open_error_t
openapiLagPortDelete
(
openapiClientHandle_t
*client_handle,
105
uint32_t lagIfNum,
106
uint32_t phyIfNum);
107
108
/*****************************************************************/
123
open_error_t
openapiLagStaticModeGet
(
openapiClientHandle_t
*client_handle,
124
uint32_t lagIfNum,
125
OPEN_CONTROL_t
*staticMode);
126
127
/*****************************************************************/
147
open_error_t
openapiLagStaticModeSet
(
openapiClientHandle_t
*client_handle,
148
uint32_t lagIfNum,
149
OPEN_CONTROL_t
staticMode);
150
151
/*****************************************************************/
163
open_error_t
openapiLagNameMaxLengthGet
(
openapiClientHandle_t
*client_handle,
164
uint32_t *maxLen);
165
166
/***********************************************************************/
183
open_error_t
openapiLagNameGet
(
openapiClientHandle_t
*client_handle,
184
uint32_t lagIfNum,
185
open_buffdesc
*name);
186
187
/***********************************************************************/
205
open_error_t
openapiLagNameSet
(
openapiClientHandle_t
*client_handle,
206
uint32_t lagIfNum,
207
open_buffdesc
*name);
208
209
/****************************************************************************/
223
open_error_t
openapiLagLoadBalanceModeGet
(
openapiClientHandle_t
*client_handle,
224
uint32_t lagIfNum,
225
OPEN_LAG_HASH_MODE_t
*lbMode);
226
227
/****************************************************************************/
243
open_error_t
openapiLagLoadBalanceModeSet
(
openapiClientHandle_t
*client_handle,
244
uint32_t lagIfNum,
245
OPEN_LAG_HASH_MODE_t
lbMode);
246
247
/*****************************************************************/
262
open_error_t
openapiLagThresholdMinMaxGet
(
openapiClientHandle_t
*client_handle,
263
uint32_t *minThreshold,
264
uint32_t *maxThreshold);
265
266
/****************************************************************************/
282
open_error_t
openapiLagMinUplinksGet
(
openapiClientHandle_t
*client_handle,
283
uint32_t lagIfNum,
284
uint32_t *minUpLinks);
285
286
/****************************************************************************/
305
open_error_t
openapiLagMinUplinksSet
(
openapiClientHandle_t
*client_handle,
306
uint32_t lagIfNum,
307
uint32_t minUpLinks);
308
309
/*****************************************************************/
323
open_error_t
openapiLagMaxMemberCountGet
(
openapiClientHandle_t
*client_handle,
324
uint32_t *memberMax);
325
326
/****************************************************************************/
347
open_error_t
openapiLagMembersGet
(
openapiClientHandle_t
*client_handle,
348
uint32_t lagIfNum,
349
uint32_t *count,
350
open_buffdesc
*bufd);
351
352
/****************************************************************************/
373
open_error_t
openapiLagMembersListGet
(
openapiClientHandle_t
*client_handle,
374
uint32_t lagIfNum,
375
uint32_t *count,
376
open_buffdesc
*bufd);
377
378
/****************************************************************************/
399
open_error_t
openapiLagActiveMembersGet
(
openapiClientHandle_t
*client_handle,
400
uint32_t lagIfNum,
401
uint32_t *count,
402
open_buffdesc
*bufd);
403
404
/****************************************************************************/
425
open_error_t
openapiLagActiveMembersListGet
(
openapiClientHandle_t
*client_handle,
426
uint32_t lagIfNum,
427
uint32_t *count,
428
open_buffdesc
*bufd);
429
430
/****************************************************************************/
444
open_error_t
openapiDot3adAggPortLacpModeGet
(
openapiClientHandle_t
*client_handle,
445
uint32_t ifNum,
446
OPEN_CONTROL_t
*lacpMode);
447
448
/****************************************************************************/
462
open_error_t
openapiDot3adAggPortLacpModeSet
(
openapiClientHandle_t
*client_handle,
463
uint32_t ifNum,
464
OPEN_CONTROL_t
lacpMode);
465
466
/****************************************************************************/
481
open_error_t
openapiDot3adAggPortActorAdminStateGet
(
openapiClientHandle_t
*client_handle,
482
uint32_t ifNum,
483
OPEN_DOT3AD_STATE_TYPE_t
type,
484
OPEN_CONTROL_t
*state);
485
486
/****************************************************************************/
501
open_error_t
openapiDot3adAggPortActorAdminStateSet
(
openapiClientHandle_t
*client_handle,
502
uint32_t ifNum,
503
OPEN_DOT3AD_STATE_TYPE_t
type,
504
OPEN_CONTROL_t
mode);
505
506
/*****************************************************************/
521
open_error_t
openapiLagAdminModeGet
(
openapiClientHandle_t
*client_handle,
522
uint32_t lagIfNum,
523
OPEN_CONTROL_t
*adminMode);
524
525
/*****************************************************************/
540
open_error_t
openapiLagAdminModeSet
(
openapiClientHandle_t
*client_handle,
541
uint32_t lagIfNum,
542
OPEN_CONTROL_t
adminMode);
543
#endif
544
© 2022 by Broadcom. All rights reserved.