|
INET Framework for OMNeT++/OMNEST
|
#include <Ieee80211MgmtAPSimplified.h>
Protected Member Functions | |
| virtual int | numInitStages () const |
| virtual void | initialize (int) |
| virtual void | handleTimer (cMessage *msg) |
| virtual void | handleUpperMessage (cPacket *msg) |
| virtual void | handleCommand (int msgkind, cPolymorphic *ctrl) |
| virtual void | receiveChangeNotification (int category, const cPolymorphic *details) |
Processing of different frame types | |
| virtual void | handleDataFrame (Ieee80211DataFrame *frame) |
| virtual void | handleAuthenticationFrame (Ieee80211AuthenticationFrame *frame) |
| virtual void | handleDeauthenticationFrame (Ieee80211DeauthenticationFrame *frame) |
| virtual void | handleAssociationRequestFrame (Ieee80211AssociationRequestFrame *frame) |
| virtual void | handleAssociationResponseFrame (Ieee80211AssociationResponseFrame *frame) |
| virtual void | handleReassociationRequestFrame (Ieee80211ReassociationRequestFrame *frame) |
| virtual void | handleReassociationResponseFrame (Ieee80211ReassociationResponseFrame *frame) |
| virtual void | handleDisassociationFrame (Ieee80211DisassociationFrame *frame) |
| virtual void | handleBeaconFrame (Ieee80211BeaconFrame *frame) |
| virtual void | handleProbeRequestFrame (Ieee80211ProbeRequestFrame *frame) |
| virtual void | handleProbeResponseFrame (Ieee80211ProbeResponseFrame *frame) |
Used in 802.11 infrastructure mode: handles management frames for an access point (AP). See corresponding NED file for a detailed description. This implementation ignores many details.
| void Ieee80211MgmtAPSimplified::handleAssociationRequestFrame | ( | Ieee80211AssociationRequestFrame * | frame | ) | [protected, virtual] |
Implements Ieee80211MgmtBase.
{
dropManagementFrame(frame);
}
| void Ieee80211MgmtAPSimplified::handleAssociationResponseFrame | ( | Ieee80211AssociationResponseFrame * | frame | ) | [protected, virtual] |
Implements Ieee80211MgmtBase.
{
dropManagementFrame(frame);
}
| void Ieee80211MgmtAPSimplified::handleAuthenticationFrame | ( | Ieee80211AuthenticationFrame * | frame | ) | [protected, virtual] |
Implements Ieee80211MgmtBase.
{
dropManagementFrame(frame);
}
| void Ieee80211MgmtAPSimplified::handleBeaconFrame | ( | Ieee80211BeaconFrame * | frame | ) | [protected, virtual] |
Implements Ieee80211MgmtBase.
{
dropManagementFrame(frame);
}
| void Ieee80211MgmtAPSimplified::handleCommand | ( | int | msgkind, |
| cPolymorphic * | ctrl | ||
| ) | [protected, virtual] |
Implements abstract Ieee80211MgmtBase method -- throws an error (no commands supported)
Implements Ieee80211MgmtBase.
{
error("handleCommand(): no commands supported");
}
| void Ieee80211MgmtAPSimplified::handleDataFrame | ( | Ieee80211DataFrame * | frame | ) | [protected, virtual] |
Implements Ieee80211MgmtBase.
{
// check toDS bit
if (!frame->getToDS())
{
// looks like this is not for us - discard
delete frame;
return;
}
if (hasRelayUnit)
{
// LAN bridging: if we have a relayUnit, send up the frame to it.
// We don't need to call distributeReceivedDataFrame() here, because
// if the frame needs to be distributed onto the wireless LAN too,
// then relayUnit will send a copy back to us.
send(convertToEtherFrame(frame), "uppergateOut");
}
else
{
// send it out to the destination STA
distributeReceivedDataFrame(frame);
}
}
| void Ieee80211MgmtAPSimplified::handleDeauthenticationFrame | ( | Ieee80211DeauthenticationFrame * | frame | ) | [protected, virtual] |
Implements Ieee80211MgmtBase.
{
dropManagementFrame(frame);
}
| void Ieee80211MgmtAPSimplified::handleDisassociationFrame | ( | Ieee80211DisassociationFrame * | frame | ) | [protected, virtual] |
Implements Ieee80211MgmtBase.
{
dropManagementFrame(frame);
}
| void Ieee80211MgmtAPSimplified::handleProbeRequestFrame | ( | Ieee80211ProbeRequestFrame * | frame | ) | [protected, virtual] |
Implements Ieee80211MgmtBase.
{
dropManagementFrame(frame);
}
| void Ieee80211MgmtAPSimplified::handleProbeResponseFrame | ( | Ieee80211ProbeResponseFrame * | frame | ) | [protected, virtual] |
Implements Ieee80211MgmtBase.
{
dropManagementFrame(frame);
}
| void Ieee80211MgmtAPSimplified::handleReassociationRequestFrame | ( | Ieee80211ReassociationRequestFrame * | frame | ) | [protected, virtual] |
Implements Ieee80211MgmtBase.
{
dropManagementFrame(frame);
}
| void Ieee80211MgmtAPSimplified::handleReassociationResponseFrame | ( | Ieee80211ReassociationResponseFrame * | frame | ) | [protected, virtual] |
Implements Ieee80211MgmtBase.
{
dropManagementFrame(frame);
}
| void Ieee80211MgmtAPSimplified::handleTimer | ( | cMessage * | msg | ) | [protected, virtual] |
| void Ieee80211MgmtAPSimplified::handleUpperMessage | ( | cPacket * | msg | ) | [protected, virtual] |
Implements abstract Ieee80211MgmtBase method
Implements Ieee80211MgmtBase.
{
// convert Ethernet frames arriving from MACRelayUnit (i.e. from
// the AP's other Ethernet or wireless interfaces)
Ieee80211DataFrame *frame = convertFromEtherFrame(check_and_cast<EtherFrame *>(msg));
sendOrEnqueue(frame);
}
| void Ieee80211MgmtAPSimplified::initialize | ( | int | stage | ) | [protected, virtual] |
Reimplemented from Ieee80211MgmtAPBase.
{
Ieee80211MgmtAPBase::initialize(stage);
}
| virtual int Ieee80211MgmtAPSimplified::numInitStages | ( | ) | const [inline, protected, virtual] |
Reimplemented from Ieee80211MgmtAPBase.
{return 2;}
| void Ieee80211MgmtAPSimplified::receiveChangeNotification | ( | int | category, |
| const cPolymorphic * | details | ||
| ) | [protected, virtual] |
Called by the NotificationBoard whenever a change occurs we're interested in
Implements INotifiable.
{
Enter_Method_Silent();
printNotificationBanner(category, details);
}