|
@@ -35,14 +35,10 @@
|
|
#include "parameters.h"
|
|
#include "parameters.h"
|
|
#include "CLI_Commands.h"
|
|
#include "CLI_Commands.h"
|
|
#include "CLI_Parameters.h"
|
|
#include "CLI_Parameters.h"
|
|
-#include "telnet_server.h"
|
|
|
|
|
|
+#include "cli.h"
|
|
#include "netconf.h"
|
|
#include "netconf.h"
|
|
#include "control_symbol.h"
|
|
#include "control_symbol.h"
|
|
|
|
|
|
-extern state_telnet_server_t telnetState;
|
|
|
|
-extern uint8_t id_change_pwd;
|
|
|
|
-
|
|
|
|
-
|
|
|
|
const int8_t *const pcInvalidCommand = ( int8_t * )
|
|
const int8_t *const pcInvalidCommand = ( int8_t * )
|
|
"Неправильно введены параметры команды. Введите \"help\" для просмотра списка поддерживаемых команд.\r\n\r\n";
|
|
"Неправильно введены параметры команды. Введите \"help\" для просмотра списка поддерживаемых команд.\r\n\r\n";
|
|
const int8_t *const pcPermissionDenied = ( int8_t * ) "Отказ в доступе!\r\n\r\n";
|
|
const int8_t *const pcPermissionDenied = ( int8_t * ) "Отказ в доступе!\r\n\r\n";
|
|
@@ -154,105 +150,103 @@ const char *user_args_list[] = {
|
|
*/
|
|
*/
|
|
extern SETTINGS_t sSettings;
|
|
extern SETTINGS_t sSettings;
|
|
|
|
|
|
-extern user_level_t telnet_code_auth;
|
|
|
|
-
|
|
|
|
/*
|
|
/*
|
|
* Implements the controller's information command.
|
|
* Implements the controller's information command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskInfoCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString );
|
|
|
|
|
|
+static portBASE_TYPE prvTaskInfoCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the reboot command.
|
|
* Implements the reboot command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskRebootCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskRebootCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString );
|
|
const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the systime command.
|
|
* Implements the systime command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskSystimeCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskSystimeCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString );
|
|
const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the ntp command.
|
|
* Implements the ntp command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskNTPCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString );
|
|
|
|
|
|
+static portBASE_TYPE prvTaskNTPCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the network command.
|
|
* Implements the network command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskNetworkCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskNetworkCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString );
|
|
const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the snmp command.
|
|
* Implements the snmp command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskSNMPCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString );
|
|
|
|
|
|
+static portBASE_TYPE prvTaskSNMPCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the AKB command.
|
|
* Implements the AKB command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskAKBCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString );
|
|
|
|
|
|
+static portBASE_TYPE prvTaskAKBCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the alarm command.
|
|
* Implements the alarm command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskAlarmCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskAlarmCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString );
|
|
const int8_t *pcCommandString );
|
|
|
|
|
|
#ifdef HARDWARE_BT6709
|
|
#ifdef HARDWARE_BT6709
|
|
/*
|
|
/*
|
|
* Implements the notification command.
|
|
* Implements the notification command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskNotificationCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskNotificationCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString );
|
|
const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the whitelist command.
|
|
* Implements the whitelist command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskWhiteListCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskWhiteListCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString );
|
|
const int8_t *pcCommandString );
|
|
#endif
|
|
#endif
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the change password command.
|
|
* Implements the change password command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskUserCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString );
|
|
|
|
|
|
+static portBASE_TYPE prvTaskUserCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the config command.
|
|
* Implements the config command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskConfigCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskConfigCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString );
|
|
const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the netconfig command.
|
|
* Implements the netconfig command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskNetConfigCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskNetConfigCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString );
|
|
const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the history command.
|
|
* Implements the history command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskHistoryCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskHistoryCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString );
|
|
const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the sensor info command.
|
|
* Implements the sensor info command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskSensorCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskSensorCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString );
|
|
const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the firmware download http command.
|
|
* Implements the firmware download http command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskUploadCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskUploadCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString );
|
|
const int8_t *pcCommandString );
|
|
|
|
|
|
/*
|
|
/*
|
|
* Implements the ups command.
|
|
* Implements the ups command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskUPSCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString );
|
|
|
|
|
|
+static portBASE_TYPE prvTaskUPSCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString );
|
|
|
|
|
|
|
|
|
|
/* Structure that defines the "info" command line command. This
|
|
/* Structure that defines the "info" command line command. This
|
|
@@ -506,7 +500,7 @@ void vRegisterCLICommands( void )
|
|
}
|
|
}
|
|
/*-----------------------------------------------------------*/
|
|
/*-----------------------------------------------------------*/
|
|
|
|
|
|
-static portBASE_TYPE prvTaskInfoCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
|
|
|
|
+static portBASE_TYPE prvTaskInfoCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
@@ -631,7 +625,7 @@ static portBASE_TYPE prvTaskInfoCommand( int8_t *pcWriteBuffer, size_t xWriteBuf
|
|
if (control_string_en_digit(str, strlen(str))) {
|
|
if (control_string_en_digit(str, strlen(str))) {
|
|
switch (i) {
|
|
switch (i) {
|
|
case INFO_DEV_NAME:
|
|
case INFO_DEV_NAME:
|
|
- if (telnet_code_auth == ADMIN) {
|
|
|
|
|
|
+ if (cli_state->user_id == ADMIN) {
|
|
str[19] = 0;
|
|
str[19] = 0;
|
|
SetNameDeviceStr(str);
|
|
SetNameDeviceStr(str);
|
|
} else {
|
|
} else {
|
|
@@ -639,7 +633,7 @@ static portBASE_TYPE prvTaskInfoCommand( int8_t *pcWriteBuffer, size_t xWriteBuf
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
case INFO_ADDRESS:
|
|
case INFO_ADDRESS:
|
|
- if (telnet_code_auth == ADMIN) {
|
|
|
|
|
|
+ if (cli_state->user_id == ADMIN) {
|
|
str[109] = 0;
|
|
str[109] = 0;
|
|
SetLocation(str);
|
|
SetLocation(str);
|
|
} else {
|
|
} else {
|
|
@@ -647,7 +641,7 @@ static portBASE_TYPE prvTaskInfoCommand( int8_t *pcWriteBuffer, size_t xWriteBuf
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
case INFO_OWNER:
|
|
case INFO_OWNER:
|
|
- if (telnet_code_auth == ADMIN) {
|
|
|
|
|
|
+ if (cli_state->user_id == ADMIN) {
|
|
str[49] = 0;
|
|
str[49] = 0;
|
|
SetOwner(str);
|
|
SetOwner(str);
|
|
} else {
|
|
} else {
|
|
@@ -655,7 +649,7 @@ static portBASE_TYPE prvTaskInfoCommand( int8_t *pcWriteBuffer, size_t xWriteBuf
|
|
}
|
|
}
|
|
break;
|
|
break;
|
|
case INFO_COMMENTS:
|
|
case INFO_COMMENTS:
|
|
- if (telnet_code_auth == ADMIN) {
|
|
|
|
|
|
+ if (cli_state->user_id == ADMIN) {
|
|
str[109] = 0;
|
|
str[109] = 0;
|
|
SetComment(str);
|
|
SetComment(str);
|
|
} else {
|
|
} else {
|
|
@@ -679,7 +673,7 @@ static portBASE_TYPE prvTaskInfoCommand( int8_t *pcWriteBuffer, size_t xWriteBuf
|
|
return xReturn;
|
|
return xReturn;
|
|
}
|
|
}
|
|
|
|
|
|
-static portBASE_TYPE prvTaskRebootCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskRebootCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString )
|
|
const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
|
|
|
|
@@ -690,7 +684,7 @@ static portBASE_TYPE prvTaskRebootCommand( int8_t *pcWriteBuffer, size_t xWriteB
|
|
( void ) pcCommandString;
|
|
( void ) pcCommandString;
|
|
( void ) xWriteBufferLen;
|
|
( void ) xWriteBufferLen;
|
|
|
|
|
|
- if (telnet_code_auth != ADMIN) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -706,7 +700,7 @@ static portBASE_TYPE prvTaskRebootCommand( int8_t *pcWriteBuffer, size_t xWriteB
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
-static portBASE_TYPE prvTaskSystimeCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskSystimeCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString )
|
|
const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
@@ -751,7 +745,7 @@ static portBASE_TYPE prvTaskSystimeCommand( int8_t *pcWriteBuffer, size_t xWrite
|
|
strings to return after this one and pdFALSE should be returned. */
|
|
strings to return after this one and pdFALSE should be returned. */
|
|
xReturn = pdFALSE;
|
|
xReturn = pdFALSE;
|
|
} else {
|
|
} else {
|
|
- if (telnet_code_auth != ADMIN) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -875,7 +869,7 @@ static portBASE_TYPE prvTaskSystimeCommand( int8_t *pcWriteBuffer, size_t xWrite
|
|
/*
|
|
/*
|
|
* Implements the ntp command.
|
|
* Implements the ntp command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskNTPCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
|
|
|
|
+static portBASE_TYPE prvTaskNTPCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
@@ -913,7 +907,7 @@ static portBASE_TYPE prvTaskNTPCommand( int8_t *pcWriteBuffer, size_t xWriteBuff
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- if (telnet_code_auth != ADMIN && i != ARG_NTP_INFO) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN && i != ARG_NTP_INFO) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -1063,7 +1057,7 @@ static portBASE_TYPE prvTaskNTPCommand( int8_t *pcWriteBuffer, size_t xWriteBuff
|
|
/*
|
|
/*
|
|
* Implements the network command.
|
|
* Implements the network command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskNetworkCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskNetworkCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString )
|
|
const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
@@ -1095,7 +1089,7 @@ static portBASE_TYPE prvTaskNetworkCommand( int8_t *pcWriteBuffer, size_t xWrite
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if (telnet_code_auth != ADMIN && i != ARG_NETWORK_INFO) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN && i != ARG_NETWORK_INFO) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -1193,7 +1187,7 @@ static portBASE_TYPE prvTaskNetworkCommand( int8_t *pcWriteBuffer, size_t xWrite
|
|
/*
|
|
/*
|
|
* Implements the snmp command.
|
|
* Implements the snmp command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskSNMPCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
|
|
|
|
+static portBASE_TYPE prvTaskSNMPCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
@@ -1226,7 +1220,7 @@ static portBASE_TYPE prvTaskSNMPCommand( int8_t *pcWriteBuffer, size_t xWriteBuf
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- if (telnet_code_auth != ADMIN && i != ARG_SNMP_INFO) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN && i != ARG_SNMP_INFO) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -1355,7 +1349,7 @@ static portBASE_TYPE prvTaskSNMPCommand( int8_t *pcWriteBuffer, size_t xWriteBuf
|
|
/*
|
|
/*
|
|
* Implements the akb command.
|
|
* Implements the akb command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskAKBCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
|
|
|
|
+static portBASE_TYPE prvTaskAKBCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
@@ -1389,7 +1383,7 @@ static portBASE_TYPE prvTaskAKBCommand( int8_t *pcWriteBuffer, size_t xWriteBuff
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if (telnet_code_auth != ADMIN && i != ARG_AKB_INFO) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN && i != ARG_AKB_INFO) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -1544,7 +1538,7 @@ static portBASE_TYPE prvTaskAKBCommand( int8_t *pcWriteBuffer, size_t xWriteBuff
|
|
/*
|
|
/*
|
|
* Implements the alarm command.
|
|
* Implements the alarm command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskAlarmCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
|
|
|
|
+static portBASE_TYPE prvTaskAlarmCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
@@ -1577,7 +1571,7 @@ static portBASE_TYPE prvTaskAlarmCommand( int8_t *pcWriteBuffer, size_t xWriteBu
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if (telnet_code_auth != ADMIN && i != ARG_ALARM_INFO) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN && i != ARG_ALARM_INFO) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -1796,7 +1790,7 @@ static portBASE_TYPE prvTaskAlarmCommand( int8_t *pcWriteBuffer, size_t xWriteBu
|
|
/*
|
|
/*
|
|
* Implements the notification command.
|
|
* Implements the notification command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskNotificationCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskNotificationCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString )
|
|
const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
@@ -1832,7 +1826,7 @@ static portBASE_TYPE prvTaskNotificationCommand( int8_t *pcWriteBuffer, size_t x
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- if (telnet_code_auth != ADMIN && i != ARG_NOTIFICATION_INFO) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN && i != ARG_NOTIFICATION_INFO) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -1908,7 +1902,7 @@ static portBASE_TYPE prvTaskNotificationCommand( int8_t *pcWriteBuffer, size_t x
|
|
/*
|
|
/*
|
|
* Implements the whitelist command.
|
|
* Implements the whitelist command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskWhiteListCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskWhiteListCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString )
|
|
const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
@@ -1945,7 +1939,7 @@ static portBASE_TYPE prvTaskWhiteListCommand( int8_t *pcWriteBuffer, size_t xWri
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- if (telnet_code_auth != ADMIN && i != ARG_WHITELIST_INFO) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN && i != ARG_WHITELIST_INFO) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -2054,7 +2048,7 @@ static portBASE_TYPE prvTaskWhiteListCommand( int8_t *pcWriteBuffer, size_t xWri
|
|
/*
|
|
/*
|
|
* Implements the change password command.
|
|
* Implements the change password command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskUserCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
|
|
|
|
+static portBASE_TYPE prvTaskUserCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
@@ -2072,7 +2066,7 @@ static portBASE_TYPE prvTaskUserCommand( int8_t *pcWriteBuffer, size_t xWriteBuf
|
|
|
|
|
|
memset(pcWriteBuffer, 0, configCOMMAND_INT_MAX_OUTPUT_SIZE);
|
|
memset(pcWriteBuffer, 0, configCOMMAND_INT_MAX_OUTPUT_SIZE);
|
|
|
|
|
|
- if (telnet_code_auth != ADMIN) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -2109,6 +2103,8 @@ static portBASE_TYPE prvTaskUserCommand( int8_t *pcWriteBuffer, size_t xWriteBuf
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcInvalidCommand, strlen( ( char * ) pcInvalidCommand ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcInvalidCommand, strlen( ( char * ) pcInvalidCommand ) );
|
|
} else {
|
|
} else {
|
|
strncat(temp_str, ( const char * ) pcParameterString, strlen(( const char * ) pcParameterString));
|
|
strncat(temp_str, ( const char * ) pcParameterString, strlen(( const char * ) pcParameterString));
|
|
|
|
+ // FIXME proper context
|
|
|
|
+#if 0
|
|
for (user_id = 0; user_id < MAX_WEB_USERS; user_id++) {
|
|
for (user_id = 0; user_id < MAX_WEB_USERS; user_id++) {
|
|
|
|
|
|
GetUserLogin(user_id, WebLogin, &valueLen);
|
|
GetUserLogin(user_id, WebLogin, &valueLen);
|
|
@@ -2119,13 +2115,14 @@ static portBASE_TYPE prvTaskUserCommand( int8_t *pcWriteBuffer, size_t xWriteBuf
|
|
/* Login and pass are valid */
|
|
/* Login and pass are valid */
|
|
id_change_pwd = user_id;
|
|
id_change_pwd = user_id;
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcChangePWDHeader, strlen( ( char * ) pcChangePWDHeader ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcChangePWDHeader, strlen( ( char * ) pcChangePWDHeader ) );
|
|
- telnetState = TELNET_CHANGE_PWD;
|
|
|
|
|
|
+ telnetState = CLI_CHANGE_PWD;
|
|
break;
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
- if (telnetState != TELNET_CHANGE_PWD) {
|
|
|
|
|
|
+ if (telnetState != CLI_CHANGE_PWD) {
|
|
|
|
+#endif
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcInvalidCommand, strlen( ( char * ) pcInvalidCommand ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcInvalidCommand, strlen( ( char * ) pcInvalidCommand ) );
|
|
- }
|
|
|
|
|
|
+ //}
|
|
}
|
|
}
|
|
} else {
|
|
} else {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcInvalidCommand, strlen( ( char * ) pcInvalidCommand ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcInvalidCommand, strlen( ( char * ) pcInvalidCommand ) );
|
|
@@ -2140,7 +2137,7 @@ static portBASE_TYPE prvTaskUserCommand( int8_t *pcWriteBuffer, size_t xWriteBuf
|
|
/*
|
|
/*
|
|
* Implements the config command.
|
|
* Implements the config command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskConfigCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskConfigCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString )
|
|
const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
@@ -2177,7 +2174,7 @@ static portBASE_TYPE prvTaskConfigCommand( int8_t *pcWriteBuffer, size_t xWriteB
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- if (telnet_code_auth != ADMIN && i != ARG_CONFIG_INFO) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN && i != ARG_CONFIG_INFO) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -2274,7 +2271,7 @@ static portBASE_TYPE prvTaskConfigCommand( int8_t *pcWriteBuffer, size_t xWriteB
|
|
/*
|
|
/*
|
|
* Implements the config command.
|
|
* Implements the config command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskNetConfigCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskNetConfigCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString )
|
|
const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
@@ -2303,7 +2300,7 @@ static portBASE_TYPE prvTaskNetConfigCommand( int8_t *pcWriteBuffer, size_t xWri
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
- if (telnet_code_auth != ADMIN) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -2347,7 +2344,7 @@ static portBASE_TYPE prvTaskNetConfigCommand( int8_t *pcWriteBuffer, size_t xWri
|
|
/*
|
|
/*
|
|
* Implements the history command.
|
|
* Implements the history command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskHistoryCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskHistoryCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString )
|
|
const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
@@ -2498,7 +2495,7 @@ static portBASE_TYPE prvTaskHistoryCommand( int8_t *pcWriteBuffer, size_t xWrite
|
|
/*
|
|
/*
|
|
* Implements the sensor info command.
|
|
* Implements the sensor info command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskSensorCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskSensorCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString )
|
|
const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
@@ -2586,7 +2583,7 @@ static portBASE_TYPE prvTaskSensorCommand( int8_t *pcWriteBuffer, size_t xWriteB
|
|
switch (i) {
|
|
switch (i) {
|
|
#ifdef HARDWARE_BT6707
|
|
#ifdef HARDWARE_BT6707
|
|
case ARG_SENSOR_SETUP:
|
|
case ARG_SENSOR_SETUP:
|
|
- if (telnet_code_auth != ADMIN) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -2689,7 +2686,7 @@ static portBASE_TYPE prvTaskSensorCommand( int8_t *pcWriteBuffer, size_t xWriteB
|
|
/*
|
|
/*
|
|
* Implements the firmware download http command.
|
|
* Implements the firmware download http command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskUploadCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
|
|
|
|
+static portBASE_TYPE prvTaskUploadCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen,
|
|
const int8_t *pcCommandString )
|
|
const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
static bool start_update = true;
|
|
static bool start_update = true;
|
|
@@ -2699,7 +2696,7 @@ static portBASE_TYPE prvTaskUploadCommand( int8_t *pcWriteBuffer, size_t xWriteB
|
|
( void ) pcCommandString;
|
|
( void ) pcCommandString;
|
|
( void ) xWriteBufferLen;
|
|
( void ) xWriteBufferLen;
|
|
|
|
|
|
- if (telnet_code_auth != ADMIN) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|
|
@@ -2718,7 +2715,7 @@ static portBASE_TYPE prvTaskUploadCommand( int8_t *pcWriteBuffer, size_t xWriteB
|
|
/*
|
|
/*
|
|
* Implements the ups command.
|
|
* Implements the ups command.
|
|
*/
|
|
*/
|
|
-static portBASE_TYPE prvTaskUPSCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
|
|
|
|
+static portBASE_TYPE prvTaskUPSCommand(cli_state_t *cli_state, int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString )
|
|
{
|
|
{
|
|
int8_t *pcParameterString;
|
|
int8_t *pcParameterString;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
signed portBASE_TYPE xParameterStringLength, xReturn;
|
|
@@ -2735,7 +2732,7 @@ static portBASE_TYPE prvTaskUPSCommand( int8_t *pcWriteBuffer, size_t xWriteBuff
|
|
|
|
|
|
memset(pcWriteBuffer, 0, configCOMMAND_INT_MAX_OUTPUT_SIZE);
|
|
memset(pcWriteBuffer, 0, configCOMMAND_INT_MAX_OUTPUT_SIZE);
|
|
|
|
|
|
- if (telnet_code_auth != ADMIN && i != ARG_CONFIG_INFO) {
|
|
|
|
|
|
+ if (cli_state->user_id != ADMIN && i != ARG_CONFIG_INFO) {
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
strncpy( ( char * ) pcWriteBuffer, ( const char * ) pcPermissionDenied, strlen( ( char * ) pcPermissionDenied ) );
|
|
return pdFALSE;
|
|
return pdFALSE;
|
|
}
|
|
}
|