diff -r 1f0ce8e8a810 src/internet-stack/tcp-socket-impl.cc --- a/src/internet-stack/tcp-socket-impl.cc Sat Oct 23 12:50:24 2010 +0100 +++ b/src/internet-stack/tcp-socket-impl.cc Sat Oct 23 21:33:14 2010 -0700 @@ -347,7 +347,7 @@ " deferring close, state " << m_state); return 0; } - m_finSequence = m_nextTxSequence + SequenceNumber32 (1); + //m_finSequence = m_nextTxSequence + SequenceNumber32 (1); Actions_t action = ProcessEvent (APP_CLOSE); ProcessAction (action); return 0; @@ -947,7 +947,7 @@ if(tcpHeader.GetFlags() & TcpHeader::FIN) { ++m_nextRxSequence; //bump this to account for the FIN - m_nextTxSequence = m_finSequence; + //m_nextTxSequence = m_finSequence; } SendEmptyPacket (TcpHeader::ACK); break; @@ -1172,7 +1172,7 @@ m_nextTxSequence + SequenceNumber32 (sz)); if (m_closeOnEmpty && (remainingData == 0)) { - m_finSequence = m_nextTxSequence + SequenceNumber32 (1 + sz); + //m_finSequence = m_nextTxSequence + SequenceNumber32 (1 + sz); flags = TcpHeader::FIN; m_state = FIN_WAIT_1; }