/*\r
- FreeRTOS V7.0.2 - Copyright (C) 2011 Real Time Engineers Ltd.\r
- \r
-\r
- ***************************************************************************\r
- * *\r
- * FreeRTOS tutorial books are available in pdf and paperback. *\r
- * Complete, revised, and edited pdf reference manuals are also *\r
- * available. *\r
- * *\r
- * Purchasing FreeRTOS documentation will not only help you, by *\r
- * ensuring you get running as quickly as possible and with an *\r
- * in-depth knowledge of how to use FreeRTOS, it will also help *\r
- * the FreeRTOS project to continue with its mission of providing *\r
- * professional grade, cross platform, de facto standard solutions *\r
- * for microcontrollers - completely free of charge! *\r
- * *\r
- * >>> See http://www.FreeRTOS.org/Documentation for details. <<< *\r
- * *\r
- * Thank you for using FreeRTOS, and thank you for your support! *\r
- * *\r
- ***************************************************************************\r
-\r
-\r
- This file is part of the FreeRTOS distribution.\r
-\r
- FreeRTOS is free software; you can redistribute it and/or modify it under\r
- the terms of the GNU General Public License (version 2) as published by the\r
- Free Software Foundation AND MODIFIED BY the FreeRTOS exception.\r
- >>>NOTE<<< The modification to the GPL is included to allow you to\r
- distribute a combined work that includes FreeRTOS without being obliged to\r
- provide the source code for proprietary components outside of the FreeRTOS\r
- kernel. FreeRTOS is distributed in the hope that it will be useful, but\r
- WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY\r
- or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for\r
- more details. You should have received a copy of the GNU General Public\r
- License and the FreeRTOS license exception along with FreeRTOS; if not it\r
- can be viewed here: http://www.freertos.org/a00114.html and also obtained\r
- by writing to Richard Barry, contact details for whom are available on the\r
- FreeRTOS WEB site.\r
-\r
- 1 tab == 4 spaces!\r
-\r
- http://www.FreeRTOS.org - Documentation, latest information, license and\r
- contact details.\r
-\r
- http://www.SafeRTOS.com - A version that is certified for use in safety\r
- critical systems.\r
-\r
- http://www.OpenRTOS.com - Commercial support, development, porting,\r
- licensing and training services.\r
-*/\r
+ * FreeRTOS Kernel V10.1.0\r
+ * Copyright (C) 2018 Amazon.com, Inc. or its affiliates. All Rights Reserved.\r
+ *\r
+ * Permission is hereby granted, free of charge, to any person obtaining a copy of\r
+ * this software and associated documentation files (the "Software"), to deal in\r
+ * the Software without restriction, including without limitation the rights to\r
+ * use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of\r
+ * the Software, and to permit persons to whom the Software is furnished to do so,\r
+ * subject to the following conditions:\r
+ *\r
+ * The above copyright notice and this permission notice shall be included in all\r
+ * copies or substantial portions of the Software.\r
+ *\r
+ * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\r
+ * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS\r
+ * FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR\r
+ * COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER\r
+ * IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN\r
+ * CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.\r
+ *\r
+ * http://www.FreeRTOS.org\r
+ * http://aws.amazon.com/freertos\r
+ *\r
+ * 1 tab == 4 spaces!\r
+ */\r
\r
#include "FreeRTOS.h"\r
#include "task.h"\r
/* include the port-dependent configuration */\r
#include "lwipcfg_msvc.h"\r
\r
-/* Dimensions the cTxBuffer array - which is itself used to hold replies from \r
-command line commands. cTxBuffer is a shared buffer, so protected by the \r
+/* Dimensions the cTxBuffer array - which is itself used to hold replies from\r
+command line commands. cTxBuffer is a shared buffer, so protected by the\r
xTxBufferMutex mutex. */\r
#define lwipappsTX_BUFFER_SIZE 1024\r
\r
/* The maximum time to block waiting to obtain the xTxBufferMutex to become\r
available. */\r
-#define lwipappsMAX_TIME_TO_WAIT_FOR_TX_BUFFER_MS ( 100 / portTICK_RATE_MS )\r
+#define lwipappsMAX_TIME_TO_WAIT_FOR_TX_BUFFER_MS ( 100 / portTICK_PERIOD_MS )\r
\r
-/* Definitions of the various SSI callback functions within the pccSSITags \r
+/* Definitions of the various SSI callback functions within the pccSSITags\r
array. If pccSSITags is updated, then these definitions must also be updated. */\r
#define ssiTASK_STATS_INDEX 0\r
#define ssiRUN_TIME_STATS_INDEX 1\r
/*-----------------------------------------------------------*/\r
\r
/* The SSI strings that are embedded in the served html files. If this array\r
-is changed, then the index position defined by the #defines such as \r
+is changed, then the index position defined by the #defines such as\r
ssiTASK_STATS_INDEX above must also be updated. */\r
-static const char *pccSSITags[] = \r
+static const char *pccSSITags[] =\r
{\r
"rtos_stats",\r
"run_stats"\r
};\r
\r
/* Semaphore used to guard the Tx buffer. */\r
-static xSemaphoreHandle xTxBufferMutex = NULL;\r
+static SemaphoreHandle_t xTxBufferMutex = NULL;\r
\r
-/* The Tx buffer itself. This is used to hold the text generated by the \r
-execution of command line commands, and (hopefully) the execution of \r
+/* The Tx buffer itself. This is used to hold the text generated by the\r
+execution of command line commands, and (hopefully) the execution of\r
server side include callbacks. It is a shared buffer so protected by the\r
-xTxBufferMutex mutex. pcLwipAppsBlockingGetTxBuffer() and \r
-vLwipAppsReleaseTxBuffer() are provided to obtain and release the \r
+xTxBufferMutex mutex. pcLwipAppsBlockingGetTxBuffer() and\r
+vLwipAppsReleaseTxBuffer() are provided to obtain and release the\r
xTxBufferMutex respectively. pcLwipAppsBlockingGetTxBuffer() must be used with\r
caution as it has the potential to block. */\r
static signed char cTxBuffer[ lwipappsTX_BUFFER_SIZE ];\r
/* Install the server side include handler. */\r
http_set_ssi_handler( uslwIPAppsSSIHandler, pccSSITags, sizeof( pccSSITags ) / sizeof( char * ) );\r
\r
- /* Create the mutex used to ensure mutual exclusive access to the Tx \r
+ /* Create the mutex used to ensure mutual exclusive access to the Tx\r
buffer. */\r
xTxBufferMutex = xSemaphoreCreateMutex();\r
configASSERT( xTxBufferMutex );\r
\r
/* Create the FreeRTOS defined basic command server. This demonstrates use\r
of the lwIP sockets API. */\r
- xTaskCreate( vBasicSocketsCommandInterpreterTask, ( signed char * ) "CmdInt", configMINIMAL_STACK_SIZE * 10, NULL, configMAX_PRIORITIES - 2, NULL );\r
+ xTaskCreate( vBasicSocketsCommandInterpreterTask, "CmdInt", configMINIMAL_STACK_SIZE * 10, NULL, configMAX_PRIORITIES - 2, NULL );\r
}\r
/*-----------------------------------------------------------*/\r
\r
\r
/* The SSI handler function that generates text depending on the index of\r
the SSI tag encountered. */\r
- \r
+\r
switch( iIndex )\r
{\r
case ssiTASK_STATS_INDEX :\r
- vTaskList( ( signed char * ) pcBuffer );\r
+ vTaskList( pcBuffer );\r
break;\r
\r
case ssiRUN_TIME_STATS_INDEX :\r
- vTaskGetRunTimeStats( ( signed char * ) pcBuffer );\r
+ vTaskGetRunTimeStats( pcBuffer );\r
break;\r
}\r
\r