wifi: additional check to avoid potention problems with VHT single MPDUs in 802.11ac

This commit is contained in:
Sébastien Deronne
2016-02-24 17:34:18 +01:00
parent eff983b686
commit a02ee29905

View File

@@ -2820,7 +2820,7 @@ MacLow::DeaggregateAmpduAndReceive (Ptr<Packet> aggregatedPacket, double rxSnr,
NotifyNav ((*n).first, firsthdr, preamble);
bool vhtSingleMpdu = (*n).second.GetEof ();
if (vhtSingleMpdu == true)
if (vhtSingleMpdu)
{
//If the MPDU is sent as a VHT single MPDU (EOF=1 in A-MPDU subframe header), then the responder sends an ACK.
NS_LOG_DEBUG ("Receive VHT single MPDU");
@@ -2829,7 +2829,10 @@ MacLow::DeaggregateAmpduAndReceive (Ptr<Packet> aggregatedPacket, double rxSnr,
if (firsthdr.GetAddr1 () == m_self)
{
m_receivedAtLeastOneMpdu = true;
if (!vhtSingleMpdu)
{
m_receivedAtLeastOneMpdu = true;
}
if (firsthdr.IsAck () || firsthdr.IsBlockAck () || firsthdr.IsBlockAckReq ())
{
ReceiveOk ((*n).first, rxSnr, txVector, preamble, ampduSubframe);