wifi: (fixes #2292) Uninitialized variables since commit 7c60a9f8f271

This commit is contained in:
Sébastien Deronne
2016-02-16 23:06:50 +01:00
parent 7ff01476a3
commit 75160cd286
3 changed files with 8 additions and 4 deletions

View File

@@ -101,6 +101,7 @@ Bugs fixed
- Bug 2286 - Support for SLL header (de)serialization.
- Bug 2287 - FlowMonitor is confused by IP over IP.
- Bug 2288 - Ipv4 broadcast and multicast packets are replicated on all the interfaces.
- Bug 2292 - Uninitialized variables since commit 7c60a9f8f271
- Bug 2293 - Red Queue Estimator spins when trying to compute queue average size under long idle times.
Known issues

View File

@@ -1429,6 +1429,7 @@ EdcaTxopN::SendAddBaRequest (Mac48Address dest, uint8_t tid, uint16_t startSeq,
uint16_t sequence = m_txMiddle->GetNextSequenceNumberfor (&m_currentHdr);
m_currentHdr.SetSequenceNumber (sequence);
m_stationManager->UpdateFragmentationThreshold ();
m_currentHdr.SetFragmentNumber (0);
m_currentHdr.SetNoMoreFragments ();
m_currentHdr.SetNoRetry ();

View File

@@ -1616,6 +1616,10 @@ MacLow::ForwardDown (Ptr<const Packet> packet, const WifiMacHeader* hdr,
bool vhtSingleMpdu = false;
bool last = false;
enum mpduType mpdutype = NORMAL_MPDU;
uint8_t tid = GetTid (packet, *hdr);
AcIndex ac = QosUtilsMapTidToAc (tid);
std::map<AcIndex, MacLowAggregationCapableTransmissionListener*>::const_iterator listenerIt = m_edcaListeners.find (ac);
if (queueSize == 1)
{
@@ -1643,9 +1647,6 @@ MacLow::ForwardDown (Ptr<const Packet> packet, const WifiMacHeader* hdr,
mpdutype = LAST_MPDU_IN_AGGREGATE;
}
uint8_t tid = GetTid (packet, *hdr);
AcIndex ac = QosUtilsMapTidToAc (tid);
std::map<AcIndex, MacLowAggregationCapableTransmissionListener*>::const_iterator listenerIt = m_edcaListeners.find (ac);
listenerIt->second->GetMpduAggregator ()->AddHeaderAndPad (newPacket, last, vhtSingleMpdu);
if (hdr->IsBlockAckReq ())
@@ -2877,6 +2878,7 @@ MacLow::AggregateToAmpdu (Ptr<const Packet> packet, const WifiMacHeader hdr)
WifiMacHeader peekedHdr;
newPacket = packet->Copy ();
Ptr<Packet> currentAggregatedPacket;
CtrlBAckRequestHeader blockAckReq;
//missing hdr.IsAck() since we have no means of knowing the Tid of the Ack yet
if (hdr.IsQosData () || hdr.IsBlockAck ()|| hdr.IsBlockAckReq ())
{
@@ -2932,7 +2934,6 @@ MacLow::AggregateToAmpdu (Ptr<const Packet> packet, const WifiMacHeader hdr)
{
blockAckSize = packet->GetSize () + hdr.GetSize () + WIFI_MAC_FCS_LENGTH;
qosPolicy = 3; //if the last subrame is block ack req then set ack policy of all frames to blockack
CtrlBAckRequestHeader blockAckReq;
packet->PeekHeader (blockAckReq);
startingSequenceNumber = blockAckReq.GetStartingSequence ();
}
@@ -3092,6 +3093,7 @@ MacLow::AggregateToAmpdu (Ptr<const Packet> packet, const WifiMacHeader hdr)
WifiMacTrailer fcs;
newPacket->AddTrailer (fcs);
listenerIt->second->GetMpduAggregator ()->Aggregate (newPacket, currentAggregatedPacket);
currentAggregatedPacket->AddHeader (blockAckReq);
}
if (qosPolicy == 0)
{