src/devices/wifi/mac-high-nqap.cc
changeset 2159 20f882e85b4a
parent 2156 754a843db672
child 2164 6e347fdbfa4a
--- a/src/devices/wifi/mac-high-nqap.cc	Thu Nov 22 10:44:48 2007 +0100
+++ b/src/devices/wifi/mac-high-nqap.cc	Thu Nov 22 14:27:22 2007 +0100
@@ -91,7 +91,7 @@
   SendOneBeacon ();
 }
 void 
-MacHighNqap::ForwardDown (Packet packet, Mac48Address from, Mac48Address to)
+MacHighNqap::ForwardDown (Ptr<const Packet> packet, Mac48Address from, Mac48Address to)
 {
   WifiMacHeader hdr;
   hdr.SetTypeData ();
@@ -103,7 +103,7 @@
   m_dca->Queue (packet, hdr);  
 }
 void 
-MacHighNqap::Queue (Packet packet, Mac48Address to)
+MacHighNqap::Queue (Ptr<const Packet> packet, Mac48Address to)
 {
   ForwardDown (packet, m_device->GetSelfAddress (), to);
 }
@@ -137,12 +137,12 @@
   hdr.SetAddr3 (m_device->GetSelfAddress ());
   hdr.SetDsNotFrom ();
   hdr.SetDsNotTo ();
-  Packet packet;
+  Ptr<Packet> packet = Create<Packet> ();
   MgtProbeResponseHeader probe;
   probe.SetSsid (m_device->GetSsid ());
   probe.SetSupportedRates (GetSupportedRates ());
   probe.SetBeaconIntervalUs (m_beaconInterval.GetMicroSeconds ());
-  packet.AddHeader (probe);
+  packet->AddHeader (probe);
 
   m_dca->Queue (packet, hdr);
 }
@@ -157,7 +157,7 @@
   hdr.SetAddr3 (m_device->GetSelfAddress ());
   hdr.SetDsNotFrom ();
   hdr.SetDsNotTo ();
-  Packet packet;
+  Ptr<Packet> packet = Create<Packet> ();
   MgtAssocResponseHeader assoc;
   StatusCode code;
   if (success)
@@ -170,7 +170,7 @@
     }
   assoc.SetSupportedRates (GetSupportedRates ());
   assoc.SetStatusCode (code);
-  packet.AddHeader (assoc);
+  packet->AddHeader (assoc);
   
   m_dca->Queue (packet, hdr);
 }
@@ -185,12 +185,12 @@
   hdr.SetAddr3 (m_device->GetSelfAddress ());
   hdr.SetDsNotFrom ();
   hdr.SetDsNotTo ();
-  Packet packet;
+  Ptr<Packet> packet = Create<Packet> ();
   MgtBeaconHeader beacon;
   beacon.SetSsid (m_device->GetSsid ());
   beacon.SetSupportedRates (GetSupportedRates ());
   beacon.SetBeaconIntervalUs (m_beaconInterval.GetMicroSeconds ());
-  packet.AddHeader (beacon);
+  packet->AddHeader (beacon);
 
   m_beaconDca->Queue (packet, hdr);
   Simulator::Schedule (m_beaconInterval, &MacHighNqap::SendOneBeacon, this);
@@ -218,7 +218,7 @@
     }
 }
 void 
-MacHighNqap::Receive (Packet packet, WifiMacHeader const *hdr)
+MacHighNqap::Receive (Ptr<Packet> packet, WifiMacHeader const *hdr)
 {
   MacStation *station = m_stations->Lookup (hdr->GetAddr2 ());
 
@@ -267,7 +267,7 @@
               // first, verify that the the station's supported
               // rate set is compatible with our Basic Rate set
               MgtAssocRequestHeader assocReq;
-              packet.RemoveHeader (assocReq);
+              packet->RemoveHeader (assocReq);
               SupportedRates rates = assocReq.GetSupportedRates ();
               bool problem = false;
               for (uint32_t i = 0; i < m_stations->GetNBasicModes (); i++)