forked from mfulz_github/qmk_firmware
Fix TELNET server locking up if an invalid command was issued.
This commit is contained in:
parent
b9cf4815e5
commit
7d3ed40070
|
@ -198,7 +198,7 @@ static void HTTPServerApp_SendResponseHeader(void)
|
||||||
uip_tcp_appstate_t* const AppState = &uip_conn->appstate;
|
uip_tcp_appstate_t* const AppState = &uip_conn->appstate;
|
||||||
char* const AppData = (char*)uip_appdata;
|
char* const AppData = (char*)uip_appdata;
|
||||||
|
|
||||||
char* HeaderToSend;
|
char* HeaderToSend;
|
||||||
|
|
||||||
/* Determine which HTTP header should be sent to the client */
|
/* Determine which HTTP header should be sent to the client */
|
||||||
if (AppState->HTTPServer.FileOpen)
|
if (AppState->HTTPServer.FileOpen)
|
||||||
|
|
|
@ -106,7 +106,11 @@ void TELNETServerApp_Callback(void)
|
||||||
{
|
{
|
||||||
case 'c':
|
case 'c':
|
||||||
TELNETServerApp_DisplayTCPConnections();
|
TELNETServerApp_DisplayTCPConnections();
|
||||||
break;
|
break;
|
||||||
|
default:
|
||||||
|
strcpy(AppData, "Invalid Command.\r\n");
|
||||||
|
uip_send(AppData, strlen(AppData));
|
||||||
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
AppState->TELNETServer.NextState = TELNET_STATE_SendMenu;
|
AppState->TELNETServer.NextState = TELNET_STATE_SendMenu;
|
||||||
|
|
|
@ -52,7 +52,7 @@ void uIPManagement_Init(void)
|
||||||
{
|
{
|
||||||
/* uIP Timing Initialization */
|
/* uIP Timing Initialization */
|
||||||
clock_init();
|
clock_init();
|
||||||
timer_set(&ConnectionTimer, CLOCK_SECOND / 8);
|
timer_set(&ConnectionTimer, CLOCK_SECOND / 10);
|
||||||
timer_set(&ARPTimer, CLOCK_SECOND * 10);
|
timer_set(&ARPTimer, CLOCK_SECOND * 10);
|
||||||
|
|
||||||
/* uIP Stack Initialization */
|
/* uIP Stack Initialization */
|
||||||
|
@ -175,22 +175,6 @@ static void uIPManagement_ProcessIncommingPacket(void)
|
||||||
/** Manages the currently open network connections, including TCP and (if enabled) UDP. */
|
/** Manages the currently open network connections, including TCP and (if enabled) UDP. */
|
||||||
static void uIPManagement_ManageConnections(void)
|
static void uIPManagement_ManageConnections(void)
|
||||||
{
|
{
|
||||||
#if 0
|
|
||||||
/* Poll TCP connections for more data to send back to the host */
|
|
||||||
for (uint8_t i = 0; i < UIP_CONNS; i++)
|
|
||||||
{
|
|
||||||
uip_poll_conn(&uip_conns[i]);
|
|
||||||
|
|
||||||
/* If a response was generated, send it */
|
|
||||||
if (uip_len > 0)
|
|
||||||
{
|
|
||||||
/* Add destination MAC to outgoing packet */
|
|
||||||
uip_arp_out();
|
|
||||||
|
|
||||||
RNDIS_Host_SendPacket(&Ethernet_RNDIS_Interface, uip_buf, uip_len);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
/* Manage open connections for timeouts */
|
/* Manage open connections for timeouts */
|
||||||
if (timer_expired(&ConnectionTimer))
|
if (timer_expired(&ConnectionTimer))
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in New Issue