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

(-)src/internet/model/tcp-socket-base.cc (-1 / +16 lines)
 Lines 910-915    Link Here 
910
      return; // Discard invalid packet
910
      return; // Discard invalid packet
911
    }
911
    }
912
912
913
  // if m_timestampEnabled == false. We can not determine re-orderiong
914
  // in this case m_preciousTS will be always less than m_timestampToEcho
915
  // which will be = 0;
916
  int64_t previousTS = -1;
917
  if (m_timestampEnabled)
918
  {
919
      previousTS = m_timestampToEcho;
920
  }
921
913
  ReadOptions (tcpHeader);
922
  ReadOptions (tcpHeader);
914
923
915
  if (tcpHeader.GetFlags () & TcpHeader::ACK)
924
  if (tcpHeader.GetFlags () & TcpHeader::ACK)
 Lines 923-929    Link Here 
923
      NS_LOG_LOGIC (this << " Leaving zerowindow persist state");
932
      NS_LOG_LOGIC (this << " Leaving zerowindow persist state");
924
      m_persistEvent.Cancel ();
933
      m_persistEvent.Cancel ();
925
    }
934
    }
926
  m_rWnd = tcpHeader.GetWindowSize ();
935
936
    // if current packet has TS less, than previous, don't change window size.
937
  if (previousTS < m_timestampToEcho)
938
  {
939
     m_rWnd = tcpHeader.GetWindowSize();
940
  }
941
 // m_rWnd = tcpHeader.GetWindowSize ();
927
  m_rWnd <<= m_rcvScaleFactor;
942
  m_rWnd <<= m_rcvScaleFactor;
928
943
929
  // Discard fully out of range data packets
944
  // Discard fully out of range data packets

Return to bug 2058