src/wifi/model/mac-low.cc
changeset 7333 17b50c5b062c
parent 7252 c8200621e252
child 7385 10beb0e53130
--- a/src/wifi/model/mac-low.cc	Mon Jul 04 12:12:43 2011 +0200
+++ b/src/wifi/model/mac-low.cc	Mon May 16 22:12:39 2011 +0200
@@ -366,6 +366,7 @@
   NS_LOG_FUNCTION (this);
   m_lastNavDuration = Seconds (0);
   m_lastNavStart = Seconds (0);
+  m_promisc = false;
 }
 
 MacLow::~MacLow ()
@@ -522,6 +523,11 @@
 {
   m_bssid = bssid;
 }
+void
+MacLow::SetPromisc (void)
+{
+  m_promisc = true;
+}
 Mac48Address
 MacLow::GetAddress (void) const
 {
@@ -893,6 +899,14 @@
           // DROP
         }
     }
+  else if (m_promisc)
+    {
+      NS_ASSERT (hdr.GetAddr1 () != m_self);
+      if (hdr.IsData ())
+        {
+          goto rxPacket;
+        }
+    }
   else
     {
       //NS_LOG_DEBUG_VERBOSE ("rx not-for-me from %d", GetSource (packet));