diff -r 3652a10b304a -r 7e41d162e158 networkprotocols/tcpipv4v6prt/src/tcp.cpp --- a/networkprotocols/tcpipv4v6prt/src/tcp.cpp Thu Jul 15 20:25:02 2010 +0300 +++ b/networkprotocols/tcpipv4v6prt/src/tcp.cpp Thu Aug 19 11:25:30 2010 +0300 @@ -92,6 +92,11 @@ iRecvBuf = GetIniValue(TCPIP_INI_TCP, TCPIP_INI_TCP_RECV_BUF, KTcpDefaultRcvWnd, KTcpMinimumWindow, KTcpMaximumWindow, ETrue); +#ifdef SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW + iRecvBufFromIniFile = GetIniValue(TCPIP_INI_TCP, TCPIP_INI_TCP_RECV_BUF, + KTcpDefaultRcvWnd, KTcpMinimumWindow, KTcpMaximumWindow, ETrue); +#endif //SYMBIAN_ADAPTIVE_TCP_RECEIVE_WINDOW + iSendBuf = GetIniValue(TCPIP_INI_TCP, TCPIP_INI_TCP_SEND_BUF, KTcpDefaultSndWnd, KTcpMinimumWindow, KTcpMaximumWindow, ETrue); @@ -258,6 +263,13 @@ #ifdef _LOG LogPacket('<', seg, info, info->iOffset); pkt.Set(seg, info->iOffset, pkt.iHdr->HeaderLength()); // LogPacket() may have realigned the header. + + if (!pkt.iHdr) + { + LOG(Log::Printf(_L("\ttcp Process() header alignment failed. Packet discarded"))); + seg.Free(); + return; + } #endif // Verify TCP checksum