#include <stdlib.h>
#include <unistd.h>
#include "rpcclt_openapi.h"
#include "proc_util.h"
#define STRNCAT(_dst, _src) \
strncat((_dst), (_src), sizeof((_dst))-strlen((_dst))-1)
void printLldpAppMenu()
{
printf("Usage: lldp_example <test#> <interface> <arg1> <arg2> ... \n");
printf("Test 1: Set LLDP Interface Transmit Mode: lldp_example 1 <interface> <tramsmit mode> \n");
printf("Test 2: Get LLDP Interface Transmit Mode: lldp_example 2 <interface> \n");
printf("Test 3: Set LLDP Interface Receive Mode: lldp_example 3 <interface> <receive mode> \n");
printf("Test 4: Get LLDP Interface Receive Mode: lldp_example 4 <interface> \n");
printf("Test 5: Set LLDP Interface TLV Transmit Mode: lldp_example 5 <interface> <TLV type> <transmit mode> \n");
printf("Test 6: Get LLDP Interface TLV Transmit Mode: lldp_example 6 <interface> \n");
printf("Test 7: Set LLDP Interface Notification Mode: lldp_example 7 <interface> <notification mode> \n");
printf("Test 8: Get LLDP Interface Notification Mode: lldp_example 8 <interface> \n");
printf("Test 9: Get LLDP Remote Device details: lldp_example 9 <interface> \n");
printf("Test 10: Get LLDP Local Device details: lldp_example 10 <interface> \n");
printf("Test 11: Get LLDP-MED interface administrative mode: lldp_example 11 <interface> \n");
printf("Test 12: Set LLDP-MED interface administrative mode: lldp_example 12 <interface> <mode> \n");
printf("Test 13: Get LLDP-MED interface config notification mode: lldp_example 13 <interface> \n");
printf("Test 14: Set LLDP-MED interface config notification mode: lldp_example 14 <interface> <mode> \n");
printf("Test 15: Get LLDP-MED interface TLVs enabled for transmision: lldp_example 15 <interface> \n");
printf("Test 16: Set LLDP-MED interface TLVs for transmision: lldp_example 16 <interface> \n");
printf("Test 17: Get LLDP-MED Remote Device data: lldp_example 17 <interface> \n");
printf("Test 18: Test LLDP OpEN APIs sanity: lldp_example 18 <interface> \n");
return;
}
{
{
printf("Bad return code trying to set LLDP Interface Transmit Mode. (result = %d)\n", result);
}
else
{
printf("LLDP Interface Transmit Mode set successfully \n");
}
return;
}
{
{
printf("Bad return code trying to get LLDP Interface Transmit Mode. (result = %d)\n", result);
}
else
{
printf("LLDP Interface Transmit Mode for interface %u: %u \n", ifNum, lldpTxMode);
}
return;
}
{
{
printf("Bad return code trying to set LLDP Interface Receive Mode. (result = %d)\n", result);
}
else
{
printf("LLDP Interface Receive Mode set successfully \n");
}
return;
}
{
{
printf("Bad return code trying to get LLDP Interface Receive Mode. (result = %d)\n", result);
}
else
{
printf("LLDP Interface Receive Mode for interface %u: %u \n", ifNum, lldpRxMode);
}
return;
}
{
{
printf("Bad return code trying to set LLDP Interface TLV Transmit Mode. (result = %d)\n", result);
}
else
{
printf("LLDP Interface TLV Transmit Mode set successfully \n");
}
return;
}
{
uint32_t index;
{
{
printf("Bad return code trying to get LLDP Interface TLV Transmit Mode. (result = %d)\n", result);
return;
}
else
{
printf("Interface: %u, TLV type: %u, Transmit Mode: %u \n", ifNum, index, lldpTLVTxMode);
}
}
return;
}
{
{
printf("Bad return code trying to set LLDP Interface Notification Mode. (result = %d)\n", result);
}
else
{
printf("LLDP Interface Notification Mode set successfully \n");
}
return;
}
{
{
printf("Bad return code trying to get LLDP Interface Notification Mode. (result = %d)\n", result);
}
else
{
printf("LLDP Interface Notification Mode for interface %u: %u \n", ifNum, lldpNotMode);
}
return;
}
{
char *str = NULL;
uint32_t remIndex = 0;
uint32_t timeStamp = 0;
uint32_t ttl = 0;
uint8_t addrLen;
uint32_t strLen = 0;
{
printf("Bad return code. (result = %d)\n", result);
return;
}
if ((str = (char*)malloc(strLen)) == NULL)
{
printf("Could not allocate memory.\n");
return;
}
printf("LLDP Remote Device details for interface %u\n", ifNum);
printf("============================================\n\n");
{
memset(str, 0, strLen);
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("Chassis Id Subtype: %u\n", chassisIdSubtype);
printf("Chassis Id: %s\n\n", str);
}
memset(str, 0, strLen);
portId.pstart = str;
portId.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("Port Id Subtype: %u\n", portIdSubtype);
printf("Port Id: %s\n\n", str);
}
memset(str, 0, strLen);
sysName.pstart = str;
sysName.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("System name: %s\n\n", str);
}
memset(str, 0, strLen);
sysDesc.pstart = str;
sysDesc.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("System Description: %s\n\n", str);
}
memset(str, 0, strLen);
portDesc.pstart = str;
portDesc.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("Port Description: %s\n\n", str);
}
memset(str, 0, strLen);
sysCapSupp.pstart = str;
sysCapSupp.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("System Capabilities Supported: %s\n\n", str);
}
memset(str, 0, strLen);
sysCapEnabled.pstart = str;
sysCapEnabled.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("System Capabilities Enabled: %s\n\n", str);
}
memset(str, 0, strLen);
mgmtAddress.pstart = str;
mgmtAddress.size = strLen;
addrLen = 0;
&addressFamily, &mgmtAddress, &addrLen) ==
OPEN_E_NONE)
{
printf("Management Address Type: %u\n", addressFamily);
printf("Management Address: %s\n\n", str);
}
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("LLDP Neighbor TTL: %u\n\n", ttl);
}
}
free(str);
return;
}
{
uint32_t currIfNum, nextIfNum;
if (ifNum == 0)
{
currIfNum = ifNum;
{
lldpIntfRemoteDeviceDetailsGet(clientHandle, nextIfNum);
currIfNum = nextIfNum;
}
}
else
{
lldpIntfRemoteDeviceDetailsGet(clientHandle, ifNum);
}
return;
}
{
char *str = NULL;
uint32_t strLen = 0;
{
printf("Bad return code. (result = %d)\n", result);
return;
}
if ((str = (char*)malloc(strLen)) == NULL)
{
printf("Could not allocate memory.\n");
return;
}
printf("LLDP Local Device details for interface %u\n", ifNum);
printf("===========================================\n\n");
memset(str, 0, strLen);
chassisId.pstart = str;
chassisId.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("Chassis Id Subtype: %u\n", chassisIdSubtype);
printf("Chassis Id: %s\n\n", str);
}
memset(str, 0, strLen);
portId.pstart = str;
portId.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("Port Id Subtype: %u\n", portIdSubtype);
printf("Port Id: %s\n\n", str);
}
memset(str, 0, strLen);
sysName.pstart = str;
sysName.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("System name: %s\n\n", str);
}
memset(str, 0, strLen);
sysDesc.pstart = str;
sysDesc.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("System Description: %s\n\n", str);
}
memset(str, 0, strLen);
portDesc.pstart = str;
portDesc.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("Port Description: %s\n\n", str);
}
memset(str, 0, strLen);
sysCapSupp.pstart = str;
sysCapSupp.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("System Capabilities Supported: %s\n\n", str);
}
memset(str, 0, strLen);
sysCapEnabled.pstart = str;
sysCapEnabled.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("System Capabilities Enabled: %s\n\n", str);
}
memset(str, 0, strLen);
mgmtAddress.pstart = str;
mgmtAddress.size = strLen;
{
printf("Bad return code. (result = %d)\n\n", result);
}
else
{
printf("Management Address Type: %u\n", addressFamily);
printf("Management Address: %s\n\n", str);
}
free(str);
return;
}
{
{
printf("Bad return code trying to get LLDP-MED interface mode. (result = %d)\n", result);
}
else
{
printf("LLDP-MED interface mode for interface %u: %u \n", ifNum, mode);
}
return;
}
{
{
printf("Bad return code trying to set LLDP-MED mode on interface. (result = %d)\n", result);
}
else
{
printf("LLDP-MED mode set to %d on interface. (result = %d)\n", mode, result);
}
return;
}
{
{
printf("Bad return code trying to get LLDP-MED interface configuration notification mode. (result = %d)\n", result);
}
else
{
printf("LLDP-MED interface configuration notification mode for interface %u: %u \n", ifNum, mode);
}
return;
}
{
{
printf("Bad return code trying to set LLDP-MED configuration notification mode on interface. (result = %d)\n", result);
}
else
{
printf("LLDP-MED configuration notification mode set to %d on interface. (result = %d)\n", mode, result);
}
return;
}
{
char str[256];
memset(&cap, 0, sizeof(cap));
{
printf("Bad return code trying to get LLDP-MED interface TLVs enabled for transmision. (result = %d)\n", result);
}
else
{
memset(&str, 0, sizeof(str));
if (cap.
bitmap[1] & OPEN_LLDP_MED_CAP_CAPABILITIES_BITMASK)
{
STRNCAT(str, "0-CAPABILITIES ");
}
if (cap.bitmap[1] & OPEN_LLDP_MED_CAP_NETWORKPOLICY_BITMASK)
{
STRNCAT(str, "1-NETWORKPOLICY ");
}
if (cap.bitmap[1] & OPEN_LLDP_MED_CAP_LOCATION_BITMASK)
{
STRNCAT(str, "2-LOCATION ");
}
if (cap.bitmap[1] & OPEN_LLDP_MED_CAP_EXT_PSE_BITMASK)
{
STRNCAT(str, "3-EXTENDEDPSE ");
}
if (cap.bitmap[1] & OPEN_LLDP_MED_CAP_EXT_PD_BITMASK)
{
STRNCAT(str, "4-EXTENDEDPD ");
}
if (cap.bitmap[1] & OPEN_LLDP_MED_CAP_INVENTORY_BITMASK)
{
STRNCAT(str, "5-INVENTORY");
}
str[sizeof(str) - 1] = '\0';
printf("LLDP-MED interface TLVs enabled for transmision for interface %u: %s. \n", ifNum, str);
}
return;
}
{
memset(¤t_cap, 0, sizeof(current_cap));
memset(&test_cap, 0, sizeof(test_cap));
{
printf("Bad return code trying to get current LLDP-MED TLVs for transmision on interface. (result = %d)\n", result);
}
else
{
{
printf("Bad return code trying to set LLDP-MED TLVs for transmision on interface. (result = %d)\n", result);
}
else
{
{
printf("Bad return code trying to set LLDP-MED TLVs for transmision on interface. (result = %d)\n", result);
}
else
{
printf("Setting LLDP-MED TLVs for transmision on interface successful.\n");
}
}
}
return;
}
{
uint32_t remIndex = 0;
uint32_t timeStamp = 0;
char *str = NULL;
uint32_t strLen = 0;
uint32_t deviceClass;
{
printf("Bad return code from openapiLldpMedRemoteModelNameSizeGet(). (result = %d)\n", result);
return;
}
if ((str = malloc(strLen)) == NULL)
{
printf("Could not allocate memory.\n");
return;
}
printf("LLDP-MED Remote Device details for interface %u\n", ifNum);
printf("=================================================\n\n");
{
&supportedCapabilities, &enabledCapabilities)) !=
OPEN_E_NONE)
{
printf("Bad return code from openapiLldpMedRemoteCapabilitiesGet(). (result = %d)\n\n", result);
}
else
{
printf("Supported capabilities bitmap: 0x%02x%02x\n", supportedCapabilities.bitmap[0], supportedCapabilities.bitmap[1]);
printf("Enabled capabilities bitmap: 0x%02x%02x\n", enabledCapabilities.bitmap[0], enabledCapabilities.bitmap[1]);
}
{
printf("Bad return code from openapiLldpMedRemoteDeviceClassGet(). (result = %d)\n\n", result);
}
else
{
printf("Device class: %u\n", deviceClass);
}
memset(str, 0, strLen);
modelName.pstart = str;
modelName.size = strLen;
{
printf("Bad return code from openapiLldpMedRemoteModelNameGet(). (result = %d)\n\n", result);
}
else
{
printf("Model name: %s\n\n", str);
}
}
free(str);
return;
}
{
uint32_t invalidControlMode = 10;
uint32_t lldpMgmtStrLen, strLen, ttl;
uint32_t invalidTLVType = 10;
uint32_t nextIfNum, remIndex, timeStamp;
char *str;
uint8_t addrLen;
printf("Testing LLDP OpEN APIs sanity:\n\n");
{
printf("Bad return code. (result = %d)\n", result);
return;
}
if ((str = (char*)malloc(lldpMgmtStrLen)) == NULL)
{
printf("Could not allocate memory.\n");
return;
}
memset(str, 0, lldpMgmtStrLen);
printf("Testing openapiLldpMgmtStrLenGet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL String Length:(result = %d)\n", result);
printf("openapiLldpMgmtStrLenGet() sanity successful\n\n");
printf("Testing openapiLldpIntfTransmitModeSet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("Invalid Control Mode:(result = %d)\n", result);
printf("openapiLldpIntfTransmitModeSet() sanity successful\n\n");
printf("Testing openapiLldpIntfTransmitModeGet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Control Mode:(result = %d)\n", result);
printf("openapiLldpIntfTransmitModeGet() sanity successful\n\n");
printf("Testing openapiLldpIntfReceiveModeSet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("Invalid Control Mode:(result = %d)\n", result);
printf("openapiLldpIntfReceiveModeSet() sanity successful\n\n");
printf("Testing openapiLldpIntfReceiveModeGet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Control Mode:(result = %d)\n", result);
printf("openapiLldpIntfReceiveModeGet() sanity successful\n\n");
printf("Testing openapiLldpIntfTLVTransmitModeSet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("Invalid TLV type:(result = %d)\n", result);
printf("Invalid Control Mode:(result = %d)\n", result);
printf("openapiLldpIntfTLVTransmitModeSet() sanity successful\n\n");
printf("Testing openapiLldpIntfTLVTransmitModeGet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Control Mode:(result = %d)\n", result);
printf("openapiLldpIntfTLVTransmitModeGet() sanity successful\n\n");
printf("Testing openapiLldpIntfNotificationModeSet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("Invalid Control Mode:(result = %d)\n", result);
printf("openapiLldpIntfNotificationModeSet() sanity successful\n\n");
printf("Testing openapiLldpIntfNotificationModeGet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Control Mode:(result = %d)\n", result);
printf("openapiLldpIntfNotificationModeGet() sanity successful\n\n");
printf("Testing openapiLldpIntfNextGet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Next Interface Number:(result = %d)\n", result);
printf("openapiLldpIntfNextGet() sanity successful\n\n");
printf("Testing openapiLldpIntfRemoteDeviceNextGet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Remote Index:(result = %d)\n", result);
printf("NULL Time Stamp:(result = %d)\n", result);
printf("openapiLldpIntfRemoteDeviceNextGet() sanity successful\n\n");
printf("Testing openapiLldpIntfRemoteDeviceChassisIdGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
&chassisIdSubtype, &buffDesc);
printf("NULL Client Handle:(result = %d)\n", result);
NULL, &buffDesc);
printf("NULL Chassis Id Subtype:(result = %d)\n", result);
&chassisIdSubtype, NULL);
printf("NULL Chassis Id:(result = %d)\n", result);
buffDesc.pstart = NULL;
&chassisIdSubtype, &buffDesc);
printf("NULL Chassis Id buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
&chassisIdSubtype, &buffDesc);
printf("NULL Chassis Id buffer length:(result = %d)\n", result);
printf("openapiLldpIntfRemoteDeviceChassisIdGet() sanity successful\n\n");
printf("Testing openapiLldpIntfRemoteDevicePortIdGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
&portIdSubtype, &buffDesc);
printf("NULL Client Handle:(result = %d)\n", result);
NULL, &buffDesc);
printf("NULL Port Id Subtype:(result = %d)\n", result);
&portIdSubtype, NULL);
printf("NULL Port Id:(result = %d)\n", result);
buffDesc.pstart = NULL;
&portIdSubtype, &buffDesc);
printf("NULL Port Id buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
&portIdSubtype, &buffDesc);
printf("NULL Port Id buffer length:(result = %d)\n", result);
printf("openapiLldpIntfRemoteDevicePortIdGet() sanity successful\n\n");
printf("Testing openapiLldpIntfRemoteDeviceSystemNameGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL System Name:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL System Name buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL System Name buffer length:(result = %d)\n", result);
printf("openapiLldpIntfRemoteDevicePortIdGet() sanity successful\n\n");
printf("Testing openapiLldpIntfRemoteDeviceSystemDescGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL System Description:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL System Description buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL System Description buffer length:(result = %d)\n", result);
printf("openapiLldpIntfRemoteDeviceSystemDescGet() sanity successful\n\n");
printf("Testing openapiLldpIntfRemoteDevicePortDescGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Port Description:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL Port Description buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL Port Description buffer length:(result = %d)\n", result);
printf("openapiLldpIntfRemoteDeviceSystemDescGet() sanity successful\n\n");
printf("Testing openapiLldpIntfRemoteDeviceSysCapSuppGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Supported Sys Capabilities:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL Supported Sys Capabilities buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL Supported Sys Capabilities buffer length:(result = %d)\n", result);
printf("openapiLldpIntfRemoteDeviceSysCapSuppGet() sanity successful\n\n");
printf("Testing openapiLldpIntfRemoteDeviceSysCapEnabledGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Enabled Sys Capabilities:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL Enabled Sys Capabilities buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL Enabled Sys Capabilities buffer length:(result = %d)\n", result);
printf("openapiLldpIntfRemoteDeviceSysCapEnabledGet() sanity successful\n\n");
printf("Testing openapiLldpIntfRemoteDeviceMgmtAddressNextGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
&addressFamily, &buffDesc, &addrLen);
printf("NULL Client Handle:(result = %d)\n", result);
NULL, &buffDesc, &addrLen);
printf("NULL Address Family:(result = %d)\n", result);
&addressFamily, &buffDesc, NULL);
printf("NULL Address Length:(result = %d)\n", result);
buffDesc.pstart = NULL;
&addressFamily, &buffDesc, &addrLen);
printf("NULL Address buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
&addressFamily, &buffDesc, &addrLen);
printf("NULL Address buffer length:(result = %d)\n", result);
printf("openapiLldpIntfRemoteDeviceMgmtAddressNextGet() sanity successful\n\n");
printf("Testing openapiLldpIntfRemoteDeviceTTLGet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL TTL:(result = %d)\n", result);
printf("openapiLldpIntfRemoteDeviceTTLGet() sanity successful\n\n");
printf("Testing openapiLldpIntfLocalDeviceChassisIdGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Chassis Id Subtype:(result = %d)\n", result);
printf("NULL Chassis Id:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL Chassis Id buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL Chassis Id buffer length:(result = %d)\n", result);
printf("openapiLldpIntfLocalDeviceChassisIdGet() sanity successful\n\n");
printf("Testing openapiLldpIntfLocalDevicePortIdGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Port Id Subtype:(result = %d)\n", result);
printf("NULL Port Id:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL Port Id buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL Port Id buffer length:(result = %d)\n", result);
printf("openapiLldpIntfLocalDevicePortIdGet() sanity successful\n\n");
printf("Testing openapiLldpIntfLocalDeviceSystemNameGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL System Name:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL System Name buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL System Name buffer length:(result = %d)\n", result);
printf("openapiLldpIntfLocalDeviceSystemNameGet() sanity successful\n\n");
printf("Testing openapiLldpIntfLocalDeviceSystemDescGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL System Description:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL System Description buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL System Description buffer length:(result = %d)\n", result);
printf("openapiLldpIntfLocalDeviceSystemDescGet() sanity successful\n\n");
printf("Testing openapiLldpIntfLocalDevicePortDescGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Port Description:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL Port Description buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL Port Description buffer length:(result = %d)\n", result);
printf("openapiLldpIntfLocalDevicePortDescGet() sanity successful\n\n");
printf("Testing openapiLldpIntfLocalDeviceSysCapSuppGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Supported Sys Capabilities:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL Supported Sys Capabilities buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL Supported Sys Capabilities buffer length:(result = %d)\n", result);
printf("openapiLldpIntfLocalDeviceSysCapSuppGet() sanity successful\n\n");
printf("Testing openapiLldpIntfLocalDeviceSysCapEnabledGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Enabled Sys Capabilities:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL Enabled Sys Capabilities buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL Enabled Sys Capabilities buffer length:(result = %d)\n", result);
printf("openapiLldpIntfLocalDeviceSysCapEnabledGet() sanity successful\n\n");
printf("Testing openapiLldpIntfLocalDeviceMgmtAddressGet():\n");
buffDesc.pstart = str;
buffDesc.size = lldpMgmtStrLen;
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Address Family:(result = %d)\n", result);
buffDesc.pstart = NULL;
printf("NULL Address buffer:(result = %d)\n", result);
buffDesc.pstart = str;
buffDesc.size = 0;
printf("NULL Address buffer length:(result = %d)\n", result);
printf("openapiLldpIntfLocalDeviceMgmtAddressGet() sanity successful\n\n");
printf("Testing openapiLldpMedIntfModeGet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Control Mode:(result = %d)\n", result);
printf("openapiLldpMedIntfModeGet() sanity successful\n\n");
printf("Testing openapiLldpMedIntfModeSet() on an LLDP-MED valid interface:\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("Invalid Control Mode:(result = %d)\n", result);
printf("openapiLldpMedIntfModeSet() sanity successful on an LLDP-MED valid interface\n\n");
printf("Testing openapiLldpMedIntfConfigNotificationModeGet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL Bool Mode:(result = %d)\n", result);
printf("openapiLldpMedIntfConfigNotificationModeGet() sanity successful\n\n");
printf("Testing openapiLldpMedIntfConfigNotificationModeSet() on an LLDP-MED valid interface:\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("Invalid Bool Mode:(result = %d)\n", result);
printf("openapiLldpMedIntfConfigNotificationModeSet() sanity successful on an LLDP-MED valid interface\n\n");
printf("Testing openapiLldpMedIntfTransmitTlvGet():\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL TLV:(result = %d)\n", result);
printf("openapiLldpMedIntfTransmitTlvGet() sanity successful\n\n");
printf("Testing openapiLldpMedIntfTransmitTlvSet() on an LLDP-MED valid interface:\n");
printf("NULL Client Handle:(result = %d)\n", result);
printf("NULL TLV:(result = %d)\n", result);
printf("openapiLldpMedIntfTransmitTlvSet() sanity successful on an LLDP-MED valid interface\n\n");
free(str);
return;
}
int main(int argc, char **argv)
{
uint32_t ifNum, testNum, arg1, arg2;
char switch_os_revision_string[100];
if (argc < 3)
{
printLldpAppMenu();
exit(1);
}
testNum = atoi(argv[1]);
ifNum = atoi(argv[2]);
l7proc_crashlog_register();
{
printf("\nFailed to initialize RPC to OpEN. Exiting (result = %d)\n", result);
exit(2);
}
{
sleep(1);
}
L7PROC_LOGF(L7PROC_LOG_SEVERITY_INFO, 0, "Starting LLDP API example application");
printf("\n");
switch_os_revision.pstart = switch_os_revision_string;
switch_os_revision.size = sizeof(switch_os_revision_string);
printf("Network OS version = %s\n", switch_os_revision_string);
else
printf("Network OS version retrieve error\n");
printf("\n");
switch (testNum)
{
case 1:
if (argc != 4)
{
printLldpAppMenu();
exit(1);
}
arg1 = atoi(argv[3]);
lldpIntfTransmitModeSet(&clientHandle, ifNum, arg1);
break;
case 2:
if (argc != 3)
{
printLldpAppMenu();
exit(1);
}
lldpIntfTransmitModeGet(&clientHandle, ifNum);
break;
case 3:
if (argc != 4)
{
printLldpAppMenu();
exit(1);
}
arg1 = atoi(argv[3]);
lldpIntfReceiveModeSet(&clientHandle, ifNum, arg1);
break;
case 4:
if (argc != 3)
{
printLldpAppMenu();
exit(1);
}
lldpIntfReceiveModeGet(&clientHandle, ifNum);
break;
case 5:
if (argc != 5)
{
printLldpAppMenu();
exit(1);
}
arg1 = atoi(argv[3]);
arg2 = atoi(argv[4]);
lldpIntfTLVTransmitModeSet(&clientHandle, ifNum, arg1, arg2);
break;
case 6:
if (argc != 3)
{
printLldpAppMenu();
exit(1);
}
lldpIntfTLVTransmitModeGet(&clientHandle, ifNum);
break;
case 7:
if (argc != 4)
{
printLldpAppMenu();
exit(1);
}
arg1 = atoi(argv[3]);
lldpIntfNotificationModeSet(&clientHandle, ifNum, arg1);
break;
case 8:
if (argc != 3)
{
printLldpAppMenu();
exit(1);
}
lldpIntfNotificationModeGet(&clientHandle, ifNum);
break;
case 9:
if (argc != 3)
{
printLldpAppMenu();
exit(1);
}
lldpIntfRemoteDevicesGet(&clientHandle, ifNum);
break;
case 10:
if (argc != 3)
{
printLldpAppMenu();
exit(1);
}
lldpIntfLocalDeviceGet(&clientHandle, ifNum);
break;
case 11:
if (argc != 3)
{
printLldpAppMenu();
exit(1);
}
lldpMedIntfModeGet(&clientHandle, ifNum);
break;
case 12:
if (argc != 4)
{
printLldpAppMenu();
exit(1);
}
arg1 = atoi(argv[3]);
lldpMedIntfModeSet(&clientHandle, ifNum, arg1);
break;
case 13:
if (argc != 3)
{
printLldpAppMenu();
exit(1);
}
lldpMedIntfConfigNotificationModeGet(&clientHandle, ifNum);
break;
case 14:
if (argc != 4)
{
printLldpAppMenu();
exit(1);
}
arg1 = atoi(argv[3]);
lldpMedIntfConfigNotificationModeSet(&clientHandle, ifNum, arg1);
break;
case 15:
if (argc != 3)
{
printLldpAppMenu();
exit(1);
}
lldpMedInterfaceTransmitTlvGet(&clientHandle, ifNum);
break;
case 16:
if (argc != 3)
{
printLldpAppMenu();
exit(1);
}
lldpMedInterfaceTransmitTlvSet(&clientHandle, ifNum);
break;
case 17:
if (argc != 3)
{
printLldpAppMenu();
exit(1);
}
lldpMedRemoteDeviceInfoGet(&clientHandle, ifNum);
break;
case 18:
if (argc != 3)
{
printLldpAppMenu();
exit(1);
}
lldpOpENAPIsTestSanity(&clientHandle, ifNum);
break;
default:
printLldpAppMenu();
break;
}
L7PROC_LOGF(L7PROC_LOG_SEVERITY_INFO, 0, "Stopping LLDP API example application");
return 0;
}