View | Details | Raw Unified | Return to bug 1009
Collapse All | Expand All

(-)a/src/internet-stack/tcp-socket-impl.cc (-3 / +3 lines)
 Lines 347-353    Link Here 
347
                   " deferring close, state " << m_state);
347
                   " deferring close, state " << m_state);
348
      return 0;
348
      return 0;
349
    }
349
    }
350
  m_finSequence = m_nextTxSequence + SequenceNumber32 (1);
350
  //m_finSequence = m_nextTxSequence + SequenceNumber32 (1);
351
  Actions_t action  = ProcessEvent (APP_CLOSE);
351
  Actions_t action  = ProcessEvent (APP_CLOSE);
352
  ProcessAction (action);
352
  ProcessAction (action);
353
  return 0;
353
  return 0;
 Lines 947-953    Link Here 
947
      if(tcpHeader.GetFlags() & TcpHeader::FIN)
947
      if(tcpHeader.GetFlags() & TcpHeader::FIN)
948
      {
948
      {
949
        ++m_nextRxSequence; //bump this to account for the FIN
949
        ++m_nextRxSequence; //bump this to account for the FIN
950
        m_nextTxSequence = m_finSequence;
950
        //m_nextTxSequence = m_finSequence;
951
      }
951
      }
952
      SendEmptyPacket (TcpHeader::ACK);
952
      SendEmptyPacket (TcpHeader::ACK);
953
      break;
953
      break;
 Lines 1172-1178    Link Here 
1172
          m_nextTxSequence + SequenceNumber32 (sz));
1172
          m_nextTxSequence + SequenceNumber32 (sz));
1173
      if (m_closeOnEmpty && (remainingData == 0))
1173
      if (m_closeOnEmpty && (remainingData == 0))
1174
        {
1174
        {
1175
          m_finSequence = m_nextTxSequence + SequenceNumber32 (1 + sz);
1175
          //m_finSequence = m_nextTxSequence + SequenceNumber32 (1 + sz);
1176
          flags = TcpHeader::FIN;
1176
          flags = TcpHeader::FIN;
1177
          m_state = FIN_WAIT_1;
1177
          m_state = FIN_WAIT_1;
1178
        }
1178
        }

Return to bug 1009