Skip to content

Commit

Permalink
[nes]: ETHERNET changes ...
Browse files Browse the repository at this point in the history
  • Loading branch information
nes-repo committed Mar 23, 2015
1 parent 1232c13 commit e8cf1e8
Show file tree
Hide file tree
Showing 4 changed files with 82 additions and 0 deletions.
20 changes: 20 additions & 0 deletions ethernet/ethernetUtils.c
Original file line number Diff line number Diff line change
Expand Up @@ -1101,6 +1101,26 @@ ieee8021QBridgeLearningConstraintsType_update (
return bRetCode;
}

bool
ieee8021QBridgeLearningConstraintsStatus_update (
ieee8021QBridgeLearningConstraintsEntry_t *poEntry, uint8_t u8RowStatus)
{
register bool bRetCode = false;

if (u8RowStatus == xRowStatus_active_c && !ieee8021QBridgeLearningConstraintsType_handler (poEntry, poEntry->i32Type, true))
{
goto ieee8021QBridgeLearningConstraintsStatus_update_cleanup;
}

/* TODO */

bRetCode = true;

ieee8021QBridgeLearningConstraintsStatus_update_cleanup:

return bRetCode;
}

bool
ieee8021QBridgeIngressVidXRowStatus_update (
ieee8021BridgeBaseEntry_t *poComponent,
Expand Down
3 changes: 3 additions & 0 deletions ethernet/ethernetUtils.h
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,9 @@ bool
bool
ieee8021QBridgeLearningConstraintsType_update (
ieee8021QBridgeLearningConstraintsEntry_t *poEntry, int32_t i32Type);
bool
ieee8021QBridgeLearningConstraintsStatus_update (
ieee8021QBridgeLearningConstraintsEntry_t *poEntry, uint8_t u8RowStatus);
bool
ieee8021QBridgeIngressVidXRowStatus_update (
ieee8021BridgeBaseEntry_t *poComponent,
Expand Down
57 changes: 57 additions & 0 deletions ethernet/ieee8021QBridgeMib.c
Original file line number Diff line number Diff line change
Expand Up @@ -6840,6 +6840,63 @@ ieee8021QBridgeLearningConstraintsType_handler (
return bRetCode;
}

bool
ieee8021QBridgeLearningConstraintsStatus_handler (
ieee8021QBridgeLearningConstraintsEntry_t *poEntry, uint8_t u8RowStatus)
{
register bool bRetCode = false;

if (poEntry->u8Status == u8RowStatus)
{
goto ieee8021QBridgeLearningConstraintsStatus_handler_success;
}

switch (u8RowStatus)
{
case xRowStatus_createAndGo_c:
u8RowStatus = xRowStatus_active_c;

case xRowStatus_active_c:
if (!ieee8021QBridgeLearningConstraintsStatus_update (poEntry, u8RowStatus))
{
goto ieee8021QBridgeLearningConstraintsStatus_handler_cleanup;
}

poEntry->u8Status = u8RowStatus;
break;

case xRowStatus_notInService_c:
if (!ieee8021QBridgeLearningConstraintsStatus_update (poEntry, u8RowStatus))
{
goto ieee8021QBridgeLearningConstraintsStatus_handler_cleanup;
}

poEntry->u8Status = u8RowStatus;
break;

case xRowStatus_createAndWait_c:
poEntry->u8Status = xRowStatus_notInService_c;
break;

case xRowStatus_destroy_c:
if (!ieee8021QBridgeLearningConstraintsStatus_update (poEntry, u8RowStatus))
{
goto ieee8021QBridgeLearningConstraintsStatus_handler_cleanup;
}

poEntry->u8Status = xRowStatus_notInService_c;
break;
}

ieee8021QBridgeLearningConstraintsStatus_handler_success:

bRetCode = true;

ieee8021QBridgeLearningConstraintsStatus_handler_cleanup:

return bRetCode;
}

/* example iterator hook routines - using 'getNext' to do most of the work */
netsnmp_variable_list *
ieee8021QBridgeLearningConstraintsTable_getFirst (
Expand Down
2 changes: 2 additions & 0 deletions ethernet/ieee8021QBridgeMib.h
Original file line number Diff line number Diff line change
Expand Up @@ -1021,6 +1021,8 @@ bool ieee8021QBridgeLearningConstraintsTable_createHier (ieee8021QBridgeLearning
bool ieee8021QBridgeLearningConstraintsTable_removeHier (ieee8021QBridgeLearningConstraintsEntry_t *poEntry);
bool ieee8021QBridgeLearningConstraintsType_handler (
ieee8021QBridgeLearningConstraintsEntry_t *poEntry, int32_t i32Type, bool bForce);
bool ieee8021QBridgeLearningConstraintsStatus_handler (
ieee8021QBridgeLearningConstraintsEntry_t *poEntry, uint8_t u8RowStatus);
#ifdef SNMP_SRC
Netsnmp_First_Data_Point ieee8021QBridgeLearningConstraintsTable_getFirst;
Netsnmp_Next_Data_Point ieee8021QBridgeLearningConstraintsTable_getNext;
Expand Down

0 comments on commit e8cf1e8

Please sign in to comment.