--- a/src/wifi/model/sta-wifi-mac.cc +++ a/src/wifi/model/sta-wifi-mac.cc @@ -183,6 +183,10 @@ // association or not. m_dca->Queue (packet, hdr); + if (m_assocRequestEvent.IsRunning ()) + { + m_assocRequestEvent.Cancel (); + } m_probeRequestEvent = Simulator::Schedule (m_probeRequestTimeout, &StaWifiMac::ProbeRequestTimeout, this); } @@ -216,6 +220,10 @@ // association or not. m_dca->Queue (packet, hdr); + if (m_assocRequestEvent.IsRunning ()) + { + m_assocRequestEvent.Cancel (); + } m_assocRequestEvent = Simulator::Schedule (m_assocRequestTimeout, &StaWifiMac::AssocRequestTimeout, this); } @@ -283,6 +291,10 @@ NS_LOG_FUNCTION (this); if (m_beaconWatchdogEnd > Simulator::Now ()) { + if (m_beaconWatchdog.IsRunning ()) + { + m_beaconWatchdog.Cancel (); + } m_beaconWatchdog = Simulator::Schedule (m_beaconWatchdogEnd - Simulator::Now (), &StaWifiMac::MissedBeacons, this); return;