X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=FreeRTOS-Plus%2FDemo%2FCommon%2FFreeRTOS_Plus_UDP_Demos%2FCLICommands%2FCLI-commands.c;h=fafef1713657a175c7b20ce4fe6ca619cd963bd0;hb=c80eb320d67bdeb11a219173ecec1fd38b269589;hp=23c9292a6a267dde6ee435fb95d3ba8a08e57862;hpb=af53b5103e5e15d7a70c3a3fd5c84814d0832206;p=freertos diff --git a/FreeRTOS-Plus/Demo/Common/FreeRTOS_Plus_UDP_Demos/CLICommands/CLI-commands.c b/FreeRTOS-Plus/Demo/Common/FreeRTOS_Plus_UDP_Demos/CLICommands/CLI-commands.c index 23c9292a6..fafef1713 100644 --- a/FreeRTOS-Plus/Demo/Common/FreeRTOS_Plus_UDP_Demos/CLICommands/CLI-commands.c +++ b/FreeRTOS-Plus/Demo/Common/FreeRTOS_Plus_UDP_Demos/CLICommands/CLI-commands.c @@ -1,37 +1,23 @@ /* - FreeRTOS V7.6.0 - Copyright (C) 2013 Real Time Engineers Ltd. + FreeRTOS V8.2.0rc1 - Copyright (C) 2014 Real Time Engineers Ltd. All rights reserved VISIT http://www.FreeRTOS.org TO ENSURE YOU ARE USING THE LATEST VERSION. - *************************************************************************** - * * - * FreeRTOS provides completely free yet professionally developed, * - * robust, strictly quality controlled, supported, and cross * - * platform software that has become a de facto standard. * - * * - * Help yourself get started quickly and support the FreeRTOS * - * project by purchasing a FreeRTOS tutorial book, reference * - * manual, or both from: http://www.FreeRTOS.org/Documentation * - * * - * Thank you! * - * * - *************************************************************************** - This file is part of the FreeRTOS distribution. FreeRTOS is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License (version 2) as published by the Free Software Foundation >>!AND MODIFIED BY!<< the FreeRTOS exception. - >>! NOTE: The modification to the GPL is included to allow you to distribute - >>! a combined work that includes FreeRTOS without being obliged to provide - >>! the source code for proprietary components outside of the FreeRTOS - >>! kernel. + >>! NOTE: The modification to the GPL is included to allow you to !<< + >>! distribute a combined work that includes FreeRTOS without being !<< + >>! obliged to provide the source code for proprietary components !<< + >>! outside of the FreeRTOS kernel. !<< FreeRTOS is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS - FOR A PARTICULAR PURPOSE. Full license text is available from the following + FOR A PARTICULAR PURPOSE. Full license text is available on the following link: http://www.freertos.org/a00114.html 1 tab == 4 spaces! @@ -39,12 +25,53 @@ *************************************************************************** * * * Having a problem? Start by reading the FAQ "My application does * - * not run, what could be wrong?" * + * not run, what could be wrong?". Have you defined configASSERT()? * * * * http://www.FreeRTOS.org/FAQHelp.html * * * *************************************************************************** + *************************************************************************** + * * + * FreeRTOS provides completely free yet professionally developed, * + * robust, strictly quality controlled, supported, and cross * + * platform software that is more than just the market leader, it * + * is the industry's de facto standard. * + * * + * Help yourself get started quickly while simultaneously helping * + * to support the FreeRTOS project by purchasing a FreeRTOS * + * tutorial book, reference manual, or both: * + * http://www.FreeRTOS.org/Documentation * + * * + *************************************************************************** + + *************************************************************************** + * * + * Investing in training allows your team to be as productive as * + * possible as early as possible, lowering your overall development * + * cost, and enabling you to bring a more robust product to market * + * earlier than would otherwise be possible. Richard Barry is both * + * the architect and key author of FreeRTOS, and so also the world's * + * leading authority on what is the world's most popular real time * + * kernel for deeply embedded MCU designs. Obtaining your training * + * from Richard ensures your team will gain directly from his in-depth * + * product knowledge and years of usage experience. Contact Real Time * + * Engineers Ltd to enquire about the FreeRTOS Masterclass, presented * + * by Richard Barry: http://www.FreeRTOS.org/contact + * * + *************************************************************************** + + *************************************************************************** + * * + * You are receiving this top quality software for free. Please play * + * fair and reciprocate by reporting any suspected issues and * + * participating in the community forum: * + * http://www.FreeRTOS.org/support * + * * + * Thank you! * + * * + *************************************************************************** + http://www.FreeRTOS.org - Documentation, books, training, latest versions, license and Real Time Engineers Ltd. contact details. @@ -52,9 +79,12 @@ including FreeRTOS+Trace - an indispensable productivity tool, a DOS compatible FAT file system, and our tiny thread aware UDP/IP stack. + http://www.FreeRTOS.org/labs - Where new FreeRTOS products go to incubate. + Come and try FreeRTOS+TCP, our new open source TCP/IP stack for FreeRTOS. + http://www.OpenRTOS.com - Real Time Engineers ltd license FreeRTOS to High - Integrity Systems to sell under the OpenRTOS brand. Low cost OpenRTOS - licenses offer ticketed support, indemnification and middleware. + Integrity Systems ltd. to sell under the OpenRTOS brand. Low cost OpenRTOS + licenses offer ticketed support, indemnification and commercial middleware. http://www.SafeRTOS.com - High Integrity Systems also provide a safety engineered and independently SIL3 certified version for use in safety and @@ -96,50 +126,50 @@ commands. */ /* * Implements the run-time-stats command. */ -static portBASE_TYPE prvTaskStatsCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ); +static BaseType_t prvTaskStatsCommand( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ); /* * Implements the task-stats command. */ -static portBASE_TYPE prvRunTimeStatsCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ); +static BaseType_t prvRunTimeStatsCommand( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ); /* * Implements the echo-three-parameters command. */ -static portBASE_TYPE prvThreeParameterEchoCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ); +static BaseType_t prvThreeParameterEchoCommand( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ); /* * Implements the echo-parameters command. */ -static portBASE_TYPE prvParameterEchoCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ); +static BaseType_t prvParameterEchoCommand( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ); /* * Defines a command that prints out IP address information. */ -static portBASE_TYPE prvDisplayIPConfig( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ); +static BaseType_t prvDisplayIPConfig( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ); /* * Defines a command that prints out the gathered demo debug stats. */ -static portBASE_TYPE prvDisplayIPDebugStats( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ); +static BaseType_t prvDisplayIPDebugStats( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ); /* * Defines a command that sends an ICMP ping request to an IP address. */ -static portBASE_TYPE prvPingCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ); +static BaseType_t prvPingCommand( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ); /* * Implements the "trace start" and "trace stop" commands; */ #if configINCLUDE_TRACE_RELATED_CLI_COMMANDS == 1 - static portBASE_TYPE prvStartStopTraceCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ); + static BaseType_t prvStartStopTraceCommand( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ); #endif /* Structure that defines the "ip-config" command line command. */ static const CLI_Command_Definition_t xIPConfig = { - ( const int8_t * const ) "ip-config", - ( const int8_t * const ) "ip-config:\r\n Displays IP address configuration\r\n\r\n", + "ip-config", + "ip-config:\r\n Displays IP address configuration\r\n\r\n", prvDisplayIPConfig, 0 }; @@ -148,8 +178,8 @@ static const CLI_Command_Definition_t xIPConfig = /* Structure that defines the "ip-debug-stats" command line command. */ static const CLI_Command_Definition_t xIPDebugStats = { - ( const int8_t * const ) "ip-debug-stats", /* The command string to type. */ - ( const int8_t * const ) "ip-debug-stats:\r\n Shows some IP stack stats useful for debug - an example only.\r\n\r\n", + "ip-debug-stats", /* The command string to type. */ + "ip-debug-stats:\r\n Shows some IP stack stats useful for debug - an example only.\r\n\r\n", prvDisplayIPDebugStats, /* The function to run. */ 0 /* No parameters are expected. */ }; @@ -159,8 +189,8 @@ static const CLI_Command_Definition_t xIPConfig = generates a table that shows how much run time each task has */ static const CLI_Command_Definition_t xRunTimeStats = { - ( const int8_t * const ) "run-time-stats", /* The command string to type. */ - ( const int8_t * const ) "run-time-stats:\r\n Displays a table showing how much processing time each FreeRTOS task has used\r\n\r\n", + "run-time-stats", /* The command string to type. */ + "run-time-stats:\r\n Displays a table showing how much processing time each FreeRTOS task has used\r\n\r\n", prvRunTimeStatsCommand, /* The function to run. */ 0 /* No parameters are expected. */ }; @@ -169,8 +199,8 @@ static const CLI_Command_Definition_t xRunTimeStats = a table that gives information on each task in the system. */ static const CLI_Command_Definition_t xTaskStats = { - ( const int8_t * const ) "task-stats", /* The command string to type. */ - ( const int8_t * const ) "task-stats:\r\n Displays a table showing the state of each FreeRTOS task\r\n\r\n", + "task-stats", /* The command string to type. */ + "task-stats:\r\n Displays a table showing the state of each FreeRTOS task\r\n\r\n", prvTaskStatsCommand, /* The function to run. */ 0 /* No parameters are expected. */ }; @@ -180,8 +210,8 @@ takes exactly three parameters that the command simply echos back one at a time. */ static const CLI_Command_Definition_t xThreeParameterEcho = { - ( const int8_t * const ) "echo-3-parameters", - ( const int8_t * const ) "echo-3-parameters :\r\n Expects three parameters, echos each in turn\r\n\r\n", + "echo-3-parameters", + "echo-3-parameters :\r\n Expects three parameters, echos each in turn\r\n\r\n", prvThreeParameterEchoCommand, /* The function to run. */ 3 /* Three parameters are expected, which can take any value. */ }; @@ -191,8 +221,8 @@ takes a variable number of parameters that the command simply echos back one at a time. */ static const CLI_Command_Definition_t xParameterEcho = { - ( const int8_t * const ) "echo-parameters", - ( const int8_t * const ) "echo-parameters <...>:\r\n Take variable number of parameters, echos each in turn\r\n\r\n", + "echo-parameters", + "echo-parameters <...>:\r\n Take variable number of parameters, echos each in turn\r\n\r\n", prvParameterEchoCommand, /* The function to run. */ -1 /* The user can enter any number of commands. */ }; @@ -204,8 +234,8 @@ static const CLI_Command_Definition_t xParameterEcho = parameters. */ static const CLI_Command_Definition_t xPing = { - ( const int8_t * const ) "ping", - ( const int8_t * const ) "ping :\r\n for example, ping 192.168.0.3 8, or ping www.example.com\r\n\r\n", + "ping", + "ping :\r\n for example, ping 192.168.0.3 8, or ping www.example.com\r\n\r\n", prvPingCommand, /* The function to run. */ -1 /* Ping can take either one or two parameter, so the number of parameters has to be determined by the ping command implementation. */ }; @@ -217,8 +247,8 @@ static const CLI_Command_Definition_t xParameterEcho = parameter, which can be either "start" or "stop". */ static const CLI_Command_Definition_t xStartStopTrace = { - ( const int8_t * const ) "trace", - ( const int8_t * const ) "trace [start | stop]:\r\n Starts or stops a trace recording for viewing in FreeRTOS+Trace\r\n\r\n", + "trace", + "trace [start | stop]:\r\n Starts or stops a trace recording for viewing in FreeRTOS+Trace\r\n\r\n", prvStartStopTraceCommand, /* The function to run. */ 1 /* One parameter is expected. Valid values are "start" and "stop". */ }; @@ -248,9 +278,10 @@ void vRegisterCLICommands( void ) } /*-----------------------------------------------------------*/ -static portBASE_TYPE prvTaskStatsCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ) +static BaseType_t prvTaskStatsCommand( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ) { -const int8_t *const pcHeader = ( int8_t * ) "Task State Priority Stack #\r\n************************************************\r\n"; +const char *const pcHeader = " State\tPriority\tStack\t#\r\n************************************************\r\n"; +BaseType_t xSpacePadding; /* Remove compile time warnings about unused parameters, and check the write buffer is not NULL. NOTE - for simplicity, this example assumes the @@ -260,8 +291,24 @@ const int8_t *const pcHeader = ( int8_t * ) "Task State Priority Stac configASSERT( pcWriteBuffer ); /* Generate a table of task stats. */ - strcpy( ( char * ) pcWriteBuffer, ( char * ) pcHeader ); - vTaskList( ( char * ) pcWriteBuffer + strlen( ( char * ) pcHeader ) ); + strcpy( pcWriteBuffer, "Task" ); + pcWriteBuffer += strlen( pcWriteBuffer ); + + /* Pad the string "task" with however many bytes necessary to make it the + length of a task name. Minus three for the null terminator and half the + number of characters in "Task" so the column lines up with the centre of + the heading. */ + for( xSpacePadding = strlen( "Task" ); xSpacePadding < ( configMAX_TASK_NAME_LEN - 3 ); xSpacePadding++ ) + { + /* Add a space to align columns after the task's name. */ + *pcWriteBuffer = ' '; + pcWriteBuffer++; + + /* Ensure always terminated. */ + *pcWriteBuffer = 0x00; + } + strcpy( pcWriteBuffer, pcHeader ); + vTaskList( pcWriteBuffer + strlen( pcHeader ) ); /* There is no more data to return after this single string, so return pdFALSE. */ @@ -269,9 +316,10 @@ const int8_t *const pcHeader = ( int8_t * ) "Task State Priority Stac } /*-----------------------------------------------------------*/ -static portBASE_TYPE prvRunTimeStatsCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ) +static BaseType_t prvRunTimeStatsCommand( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ) { -const int8_t * const pcHeader = ( int8_t * ) "Task Abs Time % Time\r\n****************************************\r\n"; +const char * const pcHeader = " Abs Time % Time\r\n****************************************\r\n"; +BaseType_t xSpacePadding; /* Remove compile time warnings about unused parameters, and check the write buffer is not NULL. NOTE - for simplicity, this example assumes the @@ -281,8 +329,25 @@ const int8_t * const pcHeader = ( int8_t * ) "Task Abs Time % Ti configASSERT( pcWriteBuffer ); /* Generate a table of task stats. */ - strcpy( ( char * ) pcWriteBuffer, ( char * ) pcHeader ); - vTaskGetRunTimeStats( ( char * ) pcWriteBuffer + strlen( ( char * ) pcHeader ) ); + strcpy( pcWriteBuffer, "Task" ); + pcWriteBuffer += strlen( pcWriteBuffer ); + + /* Pad the string "task" with however many bytes necessary to make it the + length of a task name. Minus three for the null terminator and half the + number of characters in "Task" so the column lines up with the centre of + the heading. */ + for( xSpacePadding = strlen( "Task" ); xSpacePadding < ( configMAX_TASK_NAME_LEN - 3 ); xSpacePadding++ ) + { + /* Add a space to align columns after the task's name. */ + *pcWriteBuffer = ' '; + pcWriteBuffer++; + + /* Ensure always terminated. */ + *pcWriteBuffer = 0x00; + } + + strcpy( pcWriteBuffer, pcHeader ); + vTaskGetRunTimeStats( pcWriteBuffer + strlen( pcHeader ) ); /* There is no more data to return after this single string, so return pdFALSE. */ @@ -290,11 +355,11 @@ const int8_t * const pcHeader = ( int8_t * ) "Task Abs Time % Ti } /*-----------------------------------------------------------*/ -static portBASE_TYPE prvThreeParameterEchoCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ) +static BaseType_t prvThreeParameterEchoCommand( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ) { -int8_t *pcParameter; -portBASE_TYPE xParameterStringLength, xReturn; -static portBASE_TYPE lParameterNumber = 0; +const char *pcParameter; +BaseType_t xParameterStringLength, xReturn; +static BaseType_t lParameterNumber = 0; /* Remove compile time warnings about unused parameters, and check the write buffer is not NULL. NOTE - for simplicity, this example assumes the @@ -307,7 +372,7 @@ static portBASE_TYPE lParameterNumber = 0; { /* The first time the function is called after the command has been entered just a header string is returned. */ - sprintf( ( char * ) pcWriteBuffer, "The three parameters were:\r\n" ); + sprintf( pcWriteBuffer, "The three parameters were:\r\n" ); /* Next time the function is called the first parameter will be echoed back. */ @@ -320,21 +385,21 @@ static portBASE_TYPE lParameterNumber = 0; else { /* Obtain the parameter string. */ - pcParameter = ( int8_t * ) FreeRTOS_CLIGetParameter - ( - pcCommandString, /* The command string itself. */ - lParameterNumber, /* Return the next parameter. */ - &xParameterStringLength /* Store the parameter string length. */ - ); + pcParameter = FreeRTOS_CLIGetParameter + ( + pcCommandString, /* The command string itself. */ + lParameterNumber, /* Return the next parameter. */ + &xParameterStringLength /* Store the parameter string length. */ + ); /* Sanity check something was returned. */ configASSERT( pcParameter ); /* Return the parameter string. */ memset( pcWriteBuffer, 0x00, xWriteBufferLen ); - sprintf( ( char * ) pcWriteBuffer, "%d: ", ( int ) lParameterNumber ); - strncat( ( char * ) pcWriteBuffer, ( const char * ) pcParameter, xParameterStringLength ); - strncat( ( char * ) pcWriteBuffer, "\r\n", strlen( "\r\n" ) ); + sprintf( pcWriteBuffer, "%d: ", ( int ) lParameterNumber ); + strncat( pcWriteBuffer, pcParameter, xParameterStringLength ); + strncat( pcWriteBuffer, "\r\n", strlen( "\r\n" ) ); /* If this is the last of the three parameters then there are no more strings to return after this one. */ @@ -357,11 +422,11 @@ static portBASE_TYPE lParameterNumber = 0; } /*-----------------------------------------------------------*/ -static portBASE_TYPE prvParameterEchoCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ) +static BaseType_t prvParameterEchoCommand( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ) { -int8_t *pcParameter; -portBASE_TYPE xParameterStringLength, xReturn; -static portBASE_TYPE lParameterNumber = 0; +const char *pcParameter; +BaseType_t xParameterStringLength, xReturn; +static BaseType_t lParameterNumber = 0; /* Remove compile time warnings about unused parameters, and check the write buffer is not NULL. NOTE - for simplicity, this example assumes the @@ -374,7 +439,7 @@ static portBASE_TYPE lParameterNumber = 0; { /* The first time the function is called after the command has been entered just a header string is returned. */ - sprintf( ( char * ) pcWriteBuffer, "The parameters were:\r\n" ); + sprintf( pcWriteBuffer, "The parameters were:\r\n" ); /* Next time the function is called the first parameter will be echoed back. */ @@ -387,20 +452,20 @@ static portBASE_TYPE lParameterNumber = 0; else { /* Obtain the parameter string. */ - pcParameter = ( int8_t * ) FreeRTOS_CLIGetParameter - ( - pcCommandString, /* The command string itself. */ - lParameterNumber, /* Return the next parameter. */ - &xParameterStringLength /* Store the parameter string length. */ - ); + pcParameter = FreeRTOS_CLIGetParameter + ( + pcCommandString, /* The command string itself. */ + lParameterNumber, /* Return the next parameter. */ + &xParameterStringLength /* Store the parameter string length. */ + ); if( pcParameter != NULL ) { /* Return the parameter string. */ memset( pcWriteBuffer, 0x00, xWriteBufferLen ); - sprintf( ( char * ) pcWriteBuffer, "%d: ", ( int ) lParameterNumber ); - strncat( ( char * ) pcWriteBuffer, ( const char * ) pcParameter, xParameterStringLength ); - strncat( ( char * ) pcWriteBuffer, "\r\n", strlen( "\r\n" ) ); + sprintf( pcWriteBuffer, "%d: ", ( int ) lParameterNumber ); + strncat( pcWriteBuffer, pcParameter, xParameterStringLength ); + strncat( pcWriteBuffer, "\r\n", strlen( "\r\n" ) ); /* There might be more parameters to return after this one. */ xReturn = pdTRUE; @@ -426,13 +491,13 @@ static portBASE_TYPE lParameterNumber = 0; #if ipconfigSUPPORT_OUTGOING_PINGS == 1 - static portBASE_TYPE prvPingCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ) + static BaseType_t prvPingCommand( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ) { - int8_t * pcParameter; - portBASE_TYPE lParameterStringLength, xReturn; + char * pcParameter; + BaseType_t lParameterStringLength, xReturn; uint32_t ulIPAddress, ulBytesToPing; const uint32_t ulDefaultBytesToPing = 8UL; - int8_t cBuffer[ 16 ]; + char cBuffer[ 16 ]; /* Remove compile time warnings about unused parameters, and check the write buffer is not NULL. NOTE - for simplicity, this example assumes the @@ -445,12 +510,12 @@ static portBASE_TYPE lParameterNumber = 0; pcWriteBuffer[ 0 ] = 0x00; /* Obtain the number of bytes to ping. */ - pcParameter = ( int8_t * ) FreeRTOS_CLIGetParameter - ( - pcCommandString, /* The command string itself. */ - 2, /* Return the second parameter. */ - &lParameterStringLength /* Store the parameter string length. */ - ); + pcParameter = ( char * ) FreeRTOS_CLIGetParameter + ( + pcCommandString, /* The command string itself. */ + 2, /* Return the second parameter. */ + &lParameterStringLength /* Store the parameter string length. */ + ); if( pcParameter == NULL ) { @@ -459,16 +524,16 @@ static portBASE_TYPE lParameterNumber = 0; } else { - ulBytesToPing = atol( ( const char * ) pcParameter ); + ulBytesToPing = atol( pcParameter ); } /* Obtain the IP address string. */ - pcParameter = ( int8_t * ) FreeRTOS_CLIGetParameter - ( - pcCommandString, /* The command string itself. */ - 1, /* Return the first parameter. */ - &lParameterStringLength /* Store the parameter string length. */ - ); + pcParameter = ( char * ) FreeRTOS_CLIGetParameter + ( + pcCommandString, /* The command string itself. */ + 1, /* Return the first parameter. */ + &lParameterStringLength /* Store the parameter string length. */ + ); /* Sanity check something was returned. */ configASSERT( pcParameter ); @@ -477,7 +542,7 @@ static portBASE_TYPE lParameterNumber = 0; digit, assume the host name has been passed in. */ if( ( *pcParameter >= '0' ) && ( *pcParameter <= '9' ) ) { - ulIPAddress = FreeRTOS_inet_addr( ( const uint8_t * ) pcParameter ); + ulIPAddress = FreeRTOS_inet_addr( pcParameter ); } else { @@ -485,11 +550,11 @@ static portBASE_TYPE lParameterNumber = 0; pcParameter[ lParameterStringLength ] = 0x00; /* Attempt to resolve host. */ - ulIPAddress = FreeRTOS_gethostbyname( ( uint8_t * ) pcParameter ); + ulIPAddress = FreeRTOS_gethostbyname( pcParameter ); } /* Convert IP address, which may have come from a DNS lookup, to string. */ - FreeRTOS_inet_ntoa( ulIPAddress, ( char * ) cBuffer ); + FreeRTOS_inet_ntoa( ulIPAddress, cBuffer ); if( ulIPAddress != 0 ) { @@ -502,11 +567,11 @@ static portBASE_TYPE lParameterNumber = 0; if( xReturn == pdFALSE ) { - sprintf( ( char * ) pcWriteBuffer, "%s", "Could not send ping request\r\n" ); + sprintf( pcWriteBuffer, "%s", "Could not send ping request\r\n" ); } else { - sprintf( ( char * ) pcWriteBuffer, "Ping sent to %s with identifier %d\r\n", cBuffer, xReturn ); + sprintf( pcWriteBuffer, "Ping sent to %s with identifier %d\r\n", cBuffer, xReturn ); } return pdFALSE; @@ -517,11 +582,11 @@ static portBASE_TYPE lParameterNumber = 0; #if configINCLUDE_DEMO_DEBUG_STATS != 0 - static portBASE_TYPE prvDisplayIPDebugStats( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ) + static BaseType_t prvDisplayIPDebugStats( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ) { - static portBASE_TYPE xIndex = -1; + static BaseType_t xIndex = -1; extern xExampleDebugStatEntry_t xIPTraceValues[]; - portBASE_TYPE xReturn; + BaseType_t xReturn; /* Remove compile time warnings about unused parameters, and check the write buffer is not NULL. NOTE - for simplicity, this example assumes the @@ -534,7 +599,7 @@ static portBASE_TYPE lParameterNumber = 0; if( xIndex < xExampleDebugStatEntries() ) { - sprintf( ( char * ) pcWriteBuffer, "%s %d\r\n", ( char * ) xIPTraceValues[ xIndex ].pucDescription, ( int ) xIPTraceValues[ xIndex ].ulData ); + sprintf( pcWriteBuffer, "%s %d\r\n", xIPTraceValues[ xIndex ].pucDescription, ( int ) xIPTraceValues[ xIndex ].ulData ); xReturn = pdPASS; } else @@ -553,10 +618,10 @@ static portBASE_TYPE lParameterNumber = 0; #endif /* configINCLUDE_DEMO_DEBUG_STATS */ -static portBASE_TYPE prvDisplayIPConfig( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ) +static BaseType_t prvDisplayIPConfig( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ) { -static portBASE_TYPE xIndex = 0; -portBASE_TYPE xReturn; +static BaseType_t xIndex = 0; +BaseType_t xReturn; uint32_t ulAddress; /* Remove compile time warnings about unused parameters, and check the @@ -570,35 +635,35 @@ uint32_t ulAddress; { case 0 : FreeRTOS_GetAddressConfiguration( &ulAddress, NULL, NULL, NULL ); - sprintf( ( char * ) pcWriteBuffer, "\r\nIP address " ); + sprintf( pcWriteBuffer, "\r\nIP address " ); xReturn = pdTRUE; xIndex++; break; case 1 : FreeRTOS_GetAddressConfiguration( NULL, &ulAddress, NULL, NULL ); - sprintf( ( char * ) pcWriteBuffer, "\r\nNet mask " ); + sprintf( pcWriteBuffer, "\r\nNet mask " ); xReturn = pdTRUE; xIndex++; break; case 2 : FreeRTOS_GetAddressConfiguration( NULL, NULL, &ulAddress, NULL ); - sprintf( ( char * ) pcWriteBuffer, "\r\nGateway address " ); + sprintf( pcWriteBuffer, "\r\nGateway address " ); xReturn = pdTRUE; xIndex++; break; case 3 : FreeRTOS_GetAddressConfiguration( NULL, NULL, NULL, &ulAddress ); - sprintf( ( char * ) pcWriteBuffer, "\r\nDNS server address " ); + sprintf( pcWriteBuffer, "\r\nDNS server address " ); xReturn = pdTRUE; xIndex++; break; default : ulAddress = 0; - sprintf( ( char * ) pcWriteBuffer, "\r\n\r\n" ); + sprintf( pcWriteBuffer, "\r\n\r\n" ); xReturn = pdFALSE; xIndex = 0; break; @@ -606,7 +671,7 @@ uint32_t ulAddress; if( ulAddress != 0 ) { - FreeRTOS_inet_ntoa( ulAddress, ( ( char * ) &( pcWriteBuffer[ strlen( ( char * ) pcWriteBuffer ) ] ) ) ); + FreeRTOS_inet_ntoa( ulAddress, &( pcWriteBuffer[ strlen( pcWriteBuffer ) ] ) ); } return xReturn; @@ -615,10 +680,10 @@ uint32_t ulAddress; #if configINCLUDE_TRACE_RELATED_CLI_COMMANDS == 1 - static portBASE_TYPE prvStartStopTraceCommand( int8_t *pcWriteBuffer, size_t xWriteBufferLen, const int8_t *pcCommandString ) + static BaseType_t prvStartStopTraceCommand( char *pcWriteBuffer, size_t xWriteBufferLen, const char *pcCommandString ) { - int8_t *pcParameter; - portBASE_TYPE lParameterStringLength; + const char *pcParameter; + BaseType_t lParameterStringLength; /* Remove compile time warnings about unused parameters, and check the write buffer is not NULL. NOTE - for simplicity, this example assumes the @@ -628,35 +693,35 @@ uint32_t ulAddress; configASSERT( pcWriteBuffer ); /* Obtain the parameter string. */ - pcParameter = ( int8_t * ) FreeRTOS_CLIGetParameter - ( - pcCommandString, /* The command string itself. */ - 1, /* Return the first parameter. */ - &lParameterStringLength /* Store the parameter string length. */ - ); + pcParameter = FreeRTOS_CLIGetParameter + ( + pcCommandString, /* The command string itself. */ + 1, /* Return the first parameter. */ + &lParameterStringLength /* Store the parameter string length. */ + ); /* Sanity check something was returned. */ configASSERT( pcParameter ); /* There are only two valid parameter values. */ - if( strncmp( ( const char * ) pcParameter, "start", strlen( "start" ) ) == 0 ) + if( strncmp( pcParameter, "start", strlen( "start" ) ) == 0 ) { /* Start or restart the trace. */ vTraceStop(); vTraceClear(); vTraceStart(); - sprintf( ( char * ) pcWriteBuffer, "Trace recording (re)started.\r\n" ); + sprintf( pcWriteBuffer, "Trace recording (re)started.\r\n" ); } - else if( strncmp( ( const char * ) pcParameter, "stop", strlen( "stop" ) ) == 0 ) + else if( strncmp( pcParameter, "stop", strlen( "stop" ) ) == 0 ) { /* End the trace, if one is running. */ vTraceStop(); - sprintf( ( char * ) pcWriteBuffer, "Stopping trace recording.\r\n" ); + sprintf( pcWriteBuffer, "Stopping trace recording.\r\n" ); } else { - sprintf( ( char * ) pcWriteBuffer, "Valid parameters are 'start' and 'stop'.\r\n" ); + sprintf( pcWriteBuffer, "Valid parameters are 'start' and 'stop'.\r\n" ); } /* There is no more data to return after this single string, so return