diff --git a/src/lte/model/epc-ue-nas.cc b/src/lte/model/epc-ue-nas.cc index 972e3ea75..53807d072 100644 --- a/src/lte/model/epc-ue-nas.cc +++ b/src/lte/model/epc-ue-nas.cc @@ -178,8 +178,8 @@ void EpcUeNas::Disconnect () { NS_LOG_FUNCTION (this); - m_asSapProvider->Disconnect (); SwitchToState (OFF); + m_asSapProvider->Disconnect (); } @@ -262,7 +262,16 @@ void EpcUeNas::DoNotifyConnectionReleased () { NS_LOG_FUNCTION (this); - SwitchToState (OFF); + // remove tfts + while (m_bidCounter > 0) + { + m_tftClassifier.Delete (m_bidCounter); + m_bidCounter--; + } + //restore the bearer list to be activated for the next RRC connection + m_bearersToBeActivatedList = m_bearersToBeActivatedListForReconnection; + + Disconnect (); } void