forked from mfulz_github/qmk_firmware
Fixed port state table corruption in the TCP layer of the RNDIS Ethernet device demos.
Fix additional warnings under GCC 4.6.
This commit is contained in:
parent
68e777e16b
commit
c9e817ff47
|
@ -182,7 +182,7 @@ bool TCP_SetPortState(const uint16_t Port,
|
||||||
/* Note, Port number should be specified in BIG endian to simplify network code */
|
/* Note, Port number should be specified in BIG endian to simplify network code */
|
||||||
|
|
||||||
/* Check to see if the port entry is already in the port state table */
|
/* Check to see if the port entry is already in the port state table */
|
||||||
for (uint8_t PTableEntry = 0; PTableEntry < MAX_TCP_CONNECTIONS; PTableEntry++)
|
for (uint8_t PTableEntry = 0; PTableEntry < MAX_OPEN_TCP_PORTS; PTableEntry++)
|
||||||
{
|
{
|
||||||
/* Find existing entry for the port in the table, update it if found */
|
/* Find existing entry for the port in the table, update it if found */
|
||||||
if (PortStateTable[PTableEntry].Port == Port)
|
if (PortStateTable[PTableEntry].Port == Port)
|
||||||
|
@ -196,7 +196,7 @@ bool TCP_SetPortState(const uint16_t Port,
|
||||||
/* Check if trying to open the port -- if so we need to find an unused (closed) entry and replace it */
|
/* Check if trying to open the port -- if so we need to find an unused (closed) entry and replace it */
|
||||||
if (State == TCP_Port_Open)
|
if (State == TCP_Port_Open)
|
||||||
{
|
{
|
||||||
for (uint8_t PTableEntry = 0; PTableEntry < MAX_TCP_CONNECTIONS; PTableEntry++)
|
for (uint8_t PTableEntry = 0; PTableEntry < MAX_OPEN_TCP_PORTS; PTableEntry++)
|
||||||
{
|
{
|
||||||
/* Find a closed port entry in the table, change it to the given port and state */
|
/* Find a closed port entry in the table, change it to the given port and state */
|
||||||
if (PortStateTable[PTableEntry].State == TCP_Port_Closed)
|
if (PortStateTable[PTableEntry].State == TCP_Port_Closed)
|
||||||
|
@ -228,7 +228,7 @@ uint8_t TCP_GetPortState(const uint16_t Port)
|
||||||
{
|
{
|
||||||
/* Note, Port number should be specified in BIG endian to simplify network code */
|
/* Note, Port number should be specified in BIG endian to simplify network code */
|
||||||
|
|
||||||
for (uint8_t PTableEntry = 0; PTableEntry < MAX_TCP_CONNECTIONS; PTableEntry++)
|
for (uint8_t PTableEntry = 0; PTableEntry < MAX_OPEN_TCP_PORTS; PTableEntry++)
|
||||||
{
|
{
|
||||||
/* Find existing entry for the port in the table, return the port status if found */
|
/* Find existing entry for the port in the table, return the port status if found */
|
||||||
if (PortStateTable[PTableEntry].Port == Port)
|
if (PortStateTable[PTableEntry].Port == Port)
|
||||||
|
|
|
@ -181,7 +181,7 @@ bool TCP_SetPortState(const uint16_t Port,
|
||||||
/* Note, Port number should be specified in BIG endian to simplify network code */
|
/* Note, Port number should be specified in BIG endian to simplify network code */
|
||||||
|
|
||||||
/* Check to see if the port entry is already in the port state table */
|
/* Check to see if the port entry is already in the port state table */
|
||||||
for (uint8_t PTableEntry = 0; PTableEntry < MAX_TCP_CONNECTIONS; PTableEntry++)
|
for (uint8_t PTableEntry = 0; PTableEntry < MAX_OPEN_TCP_PORTS; PTableEntry++)
|
||||||
{
|
{
|
||||||
/* Find existing entry for the port in the table, update it if found */
|
/* Find existing entry for the port in the table, update it if found */
|
||||||
if (PortStateTable[PTableEntry].Port == Port)
|
if (PortStateTable[PTableEntry].Port == Port)
|
||||||
|
@ -195,7 +195,7 @@ bool TCP_SetPortState(const uint16_t Port,
|
||||||
/* Check if trying to open the port -- if so we need to find an unused (closed) entry and replace it */
|
/* Check if trying to open the port -- if so we need to find an unused (closed) entry and replace it */
|
||||||
if (State == TCP_Port_Open)
|
if (State == TCP_Port_Open)
|
||||||
{
|
{
|
||||||
for (uint8_t PTableEntry = 0; PTableEntry < MAX_TCP_CONNECTIONS; PTableEntry++)
|
for (uint8_t PTableEntry = 0; PTableEntry < MAX_OPEN_TCP_PORTS; PTableEntry++)
|
||||||
{
|
{
|
||||||
/* Find a closed port entry in the table, change it to the given port and state */
|
/* Find a closed port entry in the table, change it to the given port and state */
|
||||||
if (PortStateTable[PTableEntry].State == TCP_Port_Closed)
|
if (PortStateTable[PTableEntry].State == TCP_Port_Closed)
|
||||||
|
@ -227,7 +227,7 @@ uint8_t TCP_GetPortState(const uint16_t Port)
|
||||||
{
|
{
|
||||||
/* Note, Port number should be specified in BIG endian to simplify network code */
|
/* Note, Port number should be specified in BIG endian to simplify network code */
|
||||||
|
|
||||||
for (uint8_t PTableEntry = 0; PTableEntry < MAX_TCP_CONNECTIONS; PTableEntry++)
|
for (uint8_t PTableEntry = 0; PTableEntry < MAX_OPEN_TCP_PORTS; PTableEntry++)
|
||||||
{
|
{
|
||||||
/* Find existing entry for the port in the table, return the port status if found */
|
/* Find existing entry for the port in the table, return the port status if found */
|
||||||
if (PortStateTable[PTableEntry].Port == Port)
|
if (PortStateTable[PTableEntry].Port == Port)
|
||||||
|
|
|
@ -348,7 +348,7 @@ void MassStorageHost_Task(void)
|
||||||
* \param[in] CommandString ASCII string located in PROGMEM space indicating what operation failed
|
* \param[in] CommandString ASCII string located in PROGMEM space indicating what operation failed
|
||||||
* \param[in] ErrorCode Error code of the function which failed to complete successfully
|
* \param[in] ErrorCode Error code of the function which failed to complete successfully
|
||||||
*/
|
*/
|
||||||
void ShowDiskReadError(char* CommandString,
|
void ShowDiskReadError(const char* CommandString,
|
||||||
const uint8_t ErrorCode)
|
const uint8_t ErrorCode)
|
||||||
{
|
{
|
||||||
if (ErrorCode == MASS_STORE_SCSI_COMMAND_FAILED)
|
if (ErrorCode == MASS_STORE_SCSI_COMMAND_FAILED)
|
||||||
|
|
|
@ -84,7 +84,7 @@
|
||||||
const uint8_t SubErrorCode);
|
const uint8_t SubErrorCode);
|
||||||
void EVENT_USB_Host_DeviceEnumerationComplete(void);
|
void EVENT_USB_Host_DeviceEnumerationComplete(void);
|
||||||
|
|
||||||
void ShowDiskReadError(char* CommandString,
|
void ShowDiskReadError(const char* CommandString,
|
||||||
const uint8_t ErrorCode);
|
const uint8_t ErrorCode);
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|
|
@ -353,7 +353,7 @@ void UnicodeToASCII(uint8_t* UnicodeString,
|
||||||
void ShowCommandError(uint8_t ErrorCode,
|
void ShowCommandError(uint8_t ErrorCode,
|
||||||
bool ResponseCodeError)
|
bool ResponseCodeError)
|
||||||
{
|
{
|
||||||
char* FailureType = ((ResponseCodeError) ? PSTR("Response Code != OK") : PSTR("Transaction Fail"));
|
const char* FailureType = ((ResponseCodeError) ? PSTR("Response Code != OK") : PSTR("Transaction Fail"));
|
||||||
|
|
||||||
printf_P(PSTR(ESC_FG_RED "Command Error (%S).\r\n"
|
printf_P(PSTR(ESC_FG_RED "Command Error (%S).\r\n"
|
||||||
" -- Error Code %d\r\n" ESC_FG_WHITE), FailureType, ErrorCode);
|
" -- Error Code %d\r\n" ESC_FG_WHITE), FailureType, ErrorCode);
|
||||||
|
|
|
@ -94,6 +94,7 @@
|
||||||
* - Fixed incorrect Dataflash buffer use in the DataflashManager_WriteBlocks_RAM() function of several demos/projects (thanks to Jeremy Willden)
|
* - Fixed incorrect Dataflash buffer use in the DataflashManager_WriteBlocks_RAM() function of several demos/projects (thanks to Jeremy Willden)
|
||||||
* - Fixed incorrect logging interval (always 500ms longer than requested) in the TempDataLogger project
|
* - Fixed incorrect logging interval (always 500ms longer than requested) in the TempDataLogger project
|
||||||
* - Fixed incorrect buffer size check in the USBtoSerial project (thanks to Yuri A Nikiforov)
|
* - Fixed incorrect buffer size check in the USBtoSerial project (thanks to Yuri A Nikiforov)
|
||||||
|
* - Fixed port state table corruption in the TCP layer of the RNDIS Ethernet device demos
|
||||||
*
|
*
|
||||||
* \section Sec_ChangeLog110528 Version 110528
|
* \section Sec_ChangeLog110528 Version 110528
|
||||||
* <b>New:</b>
|
* <b>New:</b>
|
||||||
|
|
Loading…
Reference in New Issue