#include <stdlib.h>
#include <unistd.h>
#include "rpcclt_openapi.h"
#include "proc_util.h"
static void printAppMenu(char *name)
{
printf("Usage: %s <test#> <arg1> <arg2> ... \n", name);
printf("Test 1: Sets admin mode of telnet Session: %s 1 <mode>\n", name);
printf("Test 2: Gets admin mode of telnet session: %s 2\n", name);
printf("Test 3: Sets the port-number for Telnet Access: %s 3 <port><flag>\n", name);
printf("Test 4: Gets telnet access port number: %s 4\n", name);
printf("Test 5: Sets maximum number of telnet sessions: %s 5 <maxSession>\n", name);
printf("Test 6: Gets maximum number of telnet sessions: %s 6\n", name);
printf("Test 7: Sets telnet session timeout (in minutes): %s 7 <timeout>\n", name);
printf("Test 8: Gets telnet session timeout information: %s 8\n", name);
printf("Test 9: Sets new telnet sessions acceptance state: %s 9 <state>\n", name);
printf("Test 10: Gets new telnet session acceptance state: %s 10\n", name);
printf("Test 11: Gets current active number of telnet sessions: %s 11\n", name);
printf("Test 12: Run API sanity checks: %s 12 \n", name);
return;
}
{
uint32_t timeout;
uint32_t session;
uint32_t port;
printf("Testing mgmttelnet OpEN APIs sanity:\n");
printf("Testing openapiAgentTelnetAdminModeGet():\n");
printf("NULL client handle:(result = %d)\n", result);
printf("NULL argument 2:(result = %d)\n", result);
printf("Testing openapiSwDevCtrlTelnetMgmtPortNumGet():\n");
printf("NULL client handle:(result = %d)\n", result);
printf("NULL argument 2:(result = %d)\n", result);
printf("Testing openapiAgentTelnetNumSessionsGet():\n");
printf("NULL client handle:(result = %d)\n", result);
printf("NULL argument 2:(result = %d)\n", result);
printf("Testing openapiAgentTelnetTimeoutGet():\n");
printf("NULL client handle:(result = %d)\n", result);
printf("NULL argument 2:(result = %d)\n", result);
printf("Testing openapiAgentTelnetNewSessionsGet():\n");
printf("NULL client handle:(result = %d)\n", result);
printf("NULL argument 2:(result = %d)\n", result);
printf("Testing openapiAgentTelnetCurrentNumSessionsGet():\n");
printf("NULL client handle:(result = %d)\n", result);
printf("NULL argument 2:(result = %d)\n", result);
return;
}
{
{
printf("Bad return code trying to sets admin mode of telnet Session."
" (result = %d)\n", result);
}
else
{
printf("Telnet access mode is successfully %s\n",
}
return;
}
{
{
printf("Bad return code trying to gets admin mode of telnet session."
" (result = %d)\n", result);
}
else
{
printf("Admin mode of telnet session access is in %s state\n",
}
return;
}
{
{
printf("Bad return code trying to sets the port-number for Telnet Access."
" (result = %d)\n", result);
}
else
{
printf("port-number for telnet access is succesfully set\n");
}
return;
}
{
{
printf("Bad return code trying to gets telnet access port number. (result = %d)\n", result);
}
else
{
printf("Telnet access port number is %d\n", *pPort);
}
return;
}
uint32_t maxSession)
{
{
printf("Bad return code trying to sets maximum number of telnet sessions."
" (result = %d)\n", result);
}
else
{
printf("maximum number of telnet sessions is succesfully set to %d\n",
maxSession);
}
return;
}
uint32_t *pSession)
{
{
printf("Bad return code trying to gets maximum number of telnet sessions."
" (result = %d)\n", result);
}
else
{
printf("maximum number of telnet sessions configured is %d\n", *pSession);
}
return;
}
{
{
printf("Bad return code trying to sets telnet session timeout (in minutes)."
" (result = %d)\n", result);
}
else
{
printf("Telnet session timeout is succesfully set to %d\n", timeout);
}
return;
}
uint32_t *pTimeout)
{
{
printf("Bad return code trying to gets telnet session timeout information."
" (result = %d)\n", result);
}
else
{
printf("Telnet session timeout is %d\n", *pTimeout);
}
return;
}
{
{
printf("Bad return code trying to sets new telnet sessions acceptance state."
" (result = %d)\n", result);
}
else
{
printf("New telnet sessions acceptance state is successfully %s\n",
}
return;
}
{
{
printf("Bad return code trying to gets new telnet session acceptance state."
" (result = %d)\n", result);
}
else
{
printf("New telnet sessions acceptance is in %s state,\n",
}
return;
}
uint32_t *pSession)
{
{
printf("Bad return code trying to gets current active number of telnet sessions."
" (result = %d)\n", result);
}
else
{
printf("maximum number of current active telnet sessions are %d\n", *pSession);
}
return;
}
int main(int argc, char **argv)
{
uint32_t testNum;
char switch_os_revision_string[100];
int show_help = 1;
uint32_t session;
uint32_t port;
uint32_t timeout;
uint32_t recvMode;
uint32_t recvState;
uint32_t recvFlag;
if (argc < 2)
{
printAppMenu(argv[0]);
return -1;
}
testNum = atoi(argv[1]);
l7proc_crashlog_register();
{
printf("\nFailed to initialize RPC to OpEN. Exiting (result = %d)\n", result);
return -1;
}
{
sleep(1);
}
L7PROC_LOGF(L7PROC_LOG_SEVERITY_INFO, 0, "Starting mgmttelnet 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 == 3)
{
recvMode = atoi(argv[2]);
if ((0 == recvMode) || (1 == recvMode))
{
agentTelnetAdminModeSet(&clientHandle, mode);
}
show_help = 0;
}
break;
case 2:
if (argc == 2)
{
agentTelnetAdminModeGet(&clientHandle, &mode);
show_help = 0;
}
break;
case 3:
if (argc == 4)
{
port = atoi(argv[2]);
recvFlag = atoi(argv[3]);
if ((0 == recvFlag) || (1 == recvFlag))
{
swDevCtrlTelnetMgmtPortNumSet(&clientHandle, port, flag);
}
show_help = 0;
}
break;
case 4:
if (argc == 2)
{
swDevCtrlTelnetMgmtPortNumGet(&clientHandle, &port);
show_help = 0;
}
break;
case 5:
if (argc == 3)
{
session = atoi(argv[2]);
agentTelnetNumSessionsSet(&clientHandle, session);
show_help = 0;
}
break;
case 6:
if (argc == 2)
{
agentTelnetNumSessionsGet(&clientHandle, &session);
show_help = 0;
}
break;
case 7:
if (argc == 3)
{
timeout = atoi(argv[2]);
agentTelnetTimeoutSet(&clientHandle, timeout);
show_help = 0;
}
break;
case 8:
if (argc == 2)
{
agentTelnetTimeoutGet(&clientHandle, &timeout);
show_help = 0;
}
break;
case 9:
if (argc == 3)
{
recvState = atoi(argv[2]);
if ((0 == recvState) || (1 == recvState))
{
agentTelnetNewSessionsSet(&clientHandle, state);
}
show_help = 0;
}
break;
case 10:
if (argc == 2)
{
agentTelnetNewSessionsGet(&clientHandle, &state);
show_help = 0;
}
break;
case 11:
if (argc == 2)
{
agentTelnetCurrentNumSessionsGet(&clientHandle, &session);
show_help = 0;
}
break;
case 12:
if (argc == 2)
{
runSanity(&clientHandle);
show_help = 0;
}
break;
default:
break;
}
if (show_help == 1)
{
printAppMenu(argv[0]);
}
L7PROC_LOGF(L7PROC_LOG_SEVERITY_INFO, 0, "Stopping mgmttelnet API example application");
return 0;
}