diff -r e1728a633e69 src/devices/wifi/nqap-wifi-mac.cc --- a/src/devices/wifi/nqap-wifi-mac.cc Sun Apr 11 16:32:13 2010 -0700 +++ b/src/devices/wifi/nqap-wifi-mac.cc Mon Apr 12 14:09:43 2010 +0200 @@ -312,13 +312,19 @@ NqapWifiMac::Enqueue (Ptr packet, Mac48Address to, Mac48Address from) { NS_LOG_FUNCTION (this << packet << to << from); - ForwardDown (packet, from, to); + if (to.IsBroadcast () || m_stationManager->IsAssociated (to)) + { + ForwardDown (packet, from, to); + } } void NqapWifiMac::Enqueue (Ptr packet, Mac48Address to) { NS_LOG_FUNCTION (this << packet << to); - ForwardDown (packet, m_low->GetAddress (), to); + if (to.IsBroadcast () || m_stationManager->IsAssociated (to)) + { + ForwardDown (packet, m_low->GetAddress (), to); + } } bool NqapWifiMac::SupportsSendFrom (void) const diff -r e1728a633e69 src/devices/wifi/qap-wifi-mac.cc --- a/src/devices/wifi/qap-wifi-mac.cc Sun Apr 11 16:32:13 2010 -0700 +++ b/src/devices/wifi/qap-wifi-mac.cc Mon Apr 12 14:09:43 2010 +0200 @@ -439,14 +439,20 @@ QapWifiMac::Enqueue (Ptr packet, Mac48Address to, Mac48Address from) { NS_LOG_FUNCTION (this << packet << from << to); - ForwardDown (packet, from, to); + if (to.IsBroadcast () || m_stationManager->IsAssociated (to)) + { + ForwardDown (packet, from, to); + } } void QapWifiMac::Enqueue (Ptr packet, Mac48Address to) { NS_LOG_FUNCTION (this << packet << to); - ForwardDown (packet, m_low->GetAddress (), to); + if (to.IsBroadcast () || m_stationManager->IsAssociated (to)) + { + ForwardDown (packet, m_low->GetAddress (), to); + } } bool