Bug 983

Summary: QAdhocWifiMac will not handle ADDBA Response Block Ack Action frames
Product: ns-3 Reporter: Dean Armstrong <deanarm>
Component: wifiAssignee: Nicola Baldo <nicola>
Status: RESOLVED FIXED    
Severity: normal CC: deanarm, mk.banchi, ns-bugs
Priority: P5 Keywords: bug
Version: ns-3-dev   
Hardware: All   
OS: All   

Description Dean Armstrong 2010-08-16 09:37:49 EDT
In comments associated with Bug 978 I mentioned that there was a Block Ack bug in QAdhocWifiMac. That issue deserves to be tracked in a bug of its own - i.e., this one.

In the Action frame handling of QAdhocWifiMac::Receive() at current head of
ns-3-dev, we have the following code:

else if (actionHdr.GetCategory () == WifiActionHeader::BLOCK_ACK &&
         actionHdr.GetAction().blockAck ==
WifiActionHeader::BLOCK_ACK_ADDBA_REQUEST)
{
  MgtAddBaResponseHeader respHdr;
  packet->RemoveHeader (respHdr);
  m_queues[QosUtilsMapTidToAc (respHdr.GetTid ())]->GotAddBaResponse (&respHdr,
hdr->GetAddr2 ());
}

This code needs s/REQUEST/RESPONSE/. Compare with the equivalent in
QStaWifiMac::Receive() and QApWifiMac::Receive().

I suspect (though haven't checked) that this means that Block Ack will currently not work with QAdhocWifiMac.

Note that Bug 978 proposes to reorganise the offending code in a manner that would render this bug irrelevant.
Comment 1 Mirko Banchi 2010-08-23 08:05:15 EDT
Fixed in changeset 6593:be8bb5af681b