A stack which works with or without an Mbed os library. Provides IPv4 or IPv6 with a full 1500 byte buffer.

Dependents:   oldheating gps motorhome heating

Revision:
147:a6093b52e654
Parent:
146:0fc66d610fd6
Child:
156:be12b8fd5b21
--- a/tcp/tcprecv.c	Wed May 15 15:33:15 2019 +0000
+++ b/tcp/tcprecv.c	Fri May 17 15:01:32 2019 +0000
@@ -44,6 +44,7 @@
     pTcb->sentFin             = false;
     pTcb->appStarted          = false;
     for (char* p = pTcb->appData; p < pTcb->appData + TCB_APP_STATE_BYTES; p++) *p = 0;
+    for (char* p = pTcb->tlsData; p < pTcb->tlsData + TCB_TLS_STATE_BYTES; p++) *p = 0;
     pTcb->remIsn              = TcpHdrSeqNum;
     pTcb->locIsn              = TcbGetIsn();
     pTcb->bytesRcvdFromRem    = 0;
@@ -57,9 +58,9 @@
     char* pData = (char*)pPacket + TcpHdrSizeGet();
     switch (pTcb->locPort)
     {
-        case  80: HttpShimRequest(dataLength, pData, position, pTcb->appData, false); break;
-        case 443: HttpShimRequest(dataLength, pData, position, pTcb->appData, true ); break;
-        default:                                                                      break;
+        case  80: HttpShimRequest(dataLength, pData, position, pTcb->appData, pTcb->tlsData, false); break;
+        case 443: HttpShimRequest(dataLength, pData, position, pTcb->appData, pTcb->tlsData, true ); break;
+        default:                                                                                     break;
     }
 }
 static int sendResetFromPacket(int* pSizeTx, void* pPacketTx, int ipType, int remArIndex, int locIpScope, int seqLengthRcvd)
@@ -92,6 +93,7 @@
     pTcb->sentFin             = false;
     pTcb->appStarted          = false;
     for (char* p = pTcb->appData; p < pTcb->appData + TCB_APP_STATE_BYTES; p++) *p = 0;
+    for (char* p = pTcb->tlsData; p < pTcb->tlsData + TCB_TLS_STATE_BYTES; p++) *p = 0;
     pTcb->remIsn              = TcpHdrSeqNum + seqLengthRcvd; //Ack number
     pTcb->locIsn              = TcpHdrACK ? TcpHdrAckNum : 0; //Seq number
     pTcb->bytesRcvdFromRem    = 0;