wifi: Update function to notify reception of a GCR BlockAck request frame

This commit is contained in:
Sébastien Deronne
2025-01-16 21:25:51 +01:00
parent 92eb7d0882
commit 04e9e45cf7
2 changed files with 9 additions and 4 deletions

View File

@@ -717,10 +717,12 @@ BlockAckManager::NotifyDiscardedMpdu(Ptr<const WifiMpdu> mpdu)
void
BlockAckManager::NotifyGotBlockAckRequest(const Mac48Address& originator,
uint8_t tid,
uint16_t startingSeq)
uint16_t startingSeq,
std::optional<Mac48Address> gcrGroupAddr)
{
NS_LOG_FUNCTION(this << originator << tid << startingSeq);
if (auto it = GetRecipientBaAgreement(originator, tid); it != m_recipientAgreements.end())
NS_LOG_FUNCTION(this << originator << tid << startingSeq << gcrGroupAddr.has_value());
if (auto it = GetRecipientBaAgreement(originator, tid, gcrGroupAddr);
it != m_recipientAgreements.end())
{
it->second.NotifyReceivedBar(startingSeq);
}

View File

@@ -218,12 +218,15 @@ class BlockAckManager : public Object
* @param originator MAC address of the sender of the Block Ack Request
* @param tid Traffic ID
* @param startingSeq the starting sequence number in the Block Ack Request
* @param gcrGroupAddr the GCR Group Address (only if it is a GCR Block Ack Request frame)
*
* Perform required actions upon receiving a Block Ack Request frame.
*/
void NotifyGotBlockAckRequest(const Mac48Address& originator,
uint8_t tid,
uint16_t startingSeq);
uint16_t startingSeq,
std::optional<Mac48Address> gcrGroupAddr = std::nullopt);
/**
* @param mpdu the received MPDU
*