wifi: (fixes #2941): Correct Order bit of Frame control field in WifiMacHeader
This commit is contained in:
@@ -45,6 +45,7 @@ Bugs fixed
|
||||
- Bug 2925 - wifi: MinstrelHt provides strange results at low SNR with A-MPDU enabled
|
||||
- Bug 2926 - wifi: SSRC and SLRC mechanism not fully aligned to the standard
|
||||
- Bug 2931 - Queue Disc drops the CE marked packets
|
||||
- Bug 2941 - wifi: Order bit of Frame control field of WifiMacHeader not correctly set for some frames
|
||||
|
||||
Known issues
|
||||
------------
|
||||
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -213,7 +213,7 @@ OcbWifiMac::Enqueue (Ptr<const Packet> packet, Mac48Address to)
|
||||
|
||||
if (GetHtSupported () || GetVhtSupported ())
|
||||
{
|
||||
hdr.SetNoOrder ();
|
||||
hdr.SetNoOrder (); // explicitly set to 0 for the time being since HT/VHT/HE control field is not yet implemented (set it to 1 when implemented)
|
||||
}
|
||||
hdr.SetAddr1 (to);
|
||||
hdr.SetAddr2 (GetAddress ());
|
||||
|
||||
@@ -139,7 +139,7 @@ AdhocWifiMac::Enqueue (Ptr<const Packet> packet, Mac48Address to)
|
||||
|
||||
if (GetHtSupported () || GetVhtSupported () || GetHeSupported ())
|
||||
{
|
||||
hdr.SetNoOrder ();
|
||||
hdr.SetNoOrder (); // explicitly set to 0 for the time being since HT/VHT/HE control field is not yet implemented (set it to 1 when implemented)
|
||||
}
|
||||
hdr.SetAddr1 (to);
|
||||
hdr.SetAddr2 (m_low->GetAddress ());
|
||||
|
||||
@@ -347,7 +347,7 @@ ApWifiMac::ForwardDown (Ptr<const Packet> packet, Mac48Address from,
|
||||
|
||||
if (GetQosSupported () || GetHtSupported () || GetVhtSupported () || GetHeSupported ())
|
||||
{
|
||||
hdr.SetNoOrder ();
|
||||
hdr.SetNoOrder (); // explicitly set to 0 for the time being since HT/VHT/HE control field is not yet implemented (set it to 1 when implemented)
|
||||
}
|
||||
hdr.SetAddr1 (to);
|
||||
hdr.SetAddr2 (GetAddress ());
|
||||
@@ -715,7 +715,6 @@ ApWifiMac::SendProbeResp (Mac48Address to)
|
||||
hdr.SetAddr3 (GetAddress ());
|
||||
hdr.SetDsNotFrom ();
|
||||
hdr.SetDsNotTo ();
|
||||
hdr.SetNoOrder ();
|
||||
Ptr<Packet> packet = Create<Packet> ();
|
||||
MgtProbeResponseHeader probe;
|
||||
probe.SetSsid (GetSsid ());
|
||||
@@ -772,7 +771,6 @@ ApWifiMac::SendAssocResp (Mac48Address to, bool success, bool isReassoc)
|
||||
hdr.SetAddr3 (GetAddress ());
|
||||
hdr.SetDsNotFrom ();
|
||||
hdr.SetDsNotTo ();
|
||||
hdr.SetNoOrder ();
|
||||
Ptr<Packet> packet = Create<Packet> ();
|
||||
MgtAssocResponseHeader assoc;
|
||||
StatusCode code;
|
||||
@@ -851,7 +849,6 @@ ApWifiMac::SendOneBeacon (void)
|
||||
hdr.SetAddr3 (GetAddress ());
|
||||
hdr.SetDsNotFrom ();
|
||||
hdr.SetDsNotTo ();
|
||||
hdr.SetNoOrder ();
|
||||
Ptr<Packet> packet = Create<Packet> ();
|
||||
MgtBeaconHeader beacon;
|
||||
beacon.SetSsid (GetSsid ());
|
||||
|
||||
@@ -150,7 +150,6 @@ StaWifiMac::SendProbeRequest (void)
|
||||
hdr.SetAddr3 (Mac48Address::GetBroadcast ());
|
||||
hdr.SetDsNotFrom ();
|
||||
hdr.SetDsNotTo ();
|
||||
hdr.SetNoOrder ();
|
||||
Ptr<Packet> packet = Create<Packet> ();
|
||||
MgtProbeRequestHeader probe;
|
||||
probe.SetSsid (GetSsid ());
|
||||
@@ -188,7 +187,6 @@ StaWifiMac::SendAssociationRequest (bool isReassoc)
|
||||
hdr.SetAddr3 (GetBssid ());
|
||||
hdr.SetDsNotFrom ();
|
||||
hdr.SetDsNotTo ();
|
||||
hdr.SetNoOrder ();
|
||||
Ptr<Packet> packet = Create<Packet> ();
|
||||
if (!isReassoc)
|
||||
{
|
||||
@@ -467,7 +465,7 @@ StaWifiMac::Enqueue (Ptr<const Packet> packet, Mac48Address to)
|
||||
}
|
||||
if (GetQosSupported () || GetHtSupported () || GetVhtSupported () || GetHeSupported ())
|
||||
{
|
||||
hdr.SetNoOrder ();
|
||||
hdr.SetNoOrder (); // explicitly set to 0 for the time being since HT/VHT/HE control field is not yet implemented (set it to 1 when implemented)
|
||||
}
|
||||
|
||||
hdr.SetAddr1 (GetBssid ());
|
||||
|
||||
@@ -53,7 +53,7 @@ enum
|
||||
WifiMacHeader::WifiMacHeader ()
|
||||
: m_ctrlMoreData (0),
|
||||
m_ctrlWep (0),
|
||||
m_ctrlOrder (1),
|
||||
m_ctrlOrder (0),
|
||||
m_amsduPresent (0)
|
||||
{
|
||||
}
|
||||
|
||||
@@ -606,7 +606,7 @@ private:
|
||||
uint8_t m_ctrlRetry; ///< control retry
|
||||
uint8_t m_ctrlMoreData; ///< control more data
|
||||
uint8_t m_ctrlWep; ///< control WEP
|
||||
uint8_t m_ctrlOrder; ///< control order
|
||||
uint8_t m_ctrlOrder; ///< control order (set to 1 for QoS Data and Management frames to signify that HT/VHT/HE control field is present, knowing that the latter are not implemented yet)
|
||||
uint16_t m_duration; ///< duration
|
||||
Mac48Address m_addr1; ///< address 1
|
||||
Mac48Address m_addr2; ///< address 2
|
||||
|
||||
Reference in New Issue
Block a user