|
INET Framework for OMNeT++/OMNEST
|
Abstract base class for 802.11 infrastructure mode management components.
More...
#include <Ieee80211MgmtBase.h>
|
| virtual int | numInitStages () const override |
| |
| virtual void | initialize (int) override |
| |
| virtual void | handleMessageWhenUp (cMessage *msg) override |
| | Dispatches incoming messages to handleTimer(), handleUpperMessage() or processFrame(). More...
|
| |
| virtual void | handleTimer (cMessage *frame)=0 |
| | Should be redefined to deal with self-messages. More...
|
| |
| virtual void | handleCommand (int msgkind, cObject *ctrl)=0 |
| | Should be redefined to handle commands from the "agent" (if present) More...
|
| |
| virtual void | sendDown (Packet *frame) |
| | Utility method for implementing handleUpperMessage(): send message to MAC. More...
|
| |
| virtual void | dropManagementFrame (Packet *frame) |
| | Utility method to dispose of an unhandled frame. More...
|
| |
| virtual void | processFrame (Packet *packet, const Ptr< const Ieee80211DataOrMgmtHeader > &header) |
| | Dispatch to frame processing methods according to frame type. More...
|
| |
|
| virtual void | handleAuthenticationFrame (Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0 |
| |
| virtual void | handleDeauthenticationFrame (Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0 |
| |
| virtual void | handleAssociationRequestFrame (Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0 |
| |
| virtual void | handleAssociationResponseFrame (Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0 |
| |
| virtual void | handleReassociationRequestFrame (Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0 |
| |
| virtual void | handleReassociationResponseFrame (Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0 |
| |
| virtual void | handleDisassociationFrame (Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0 |
| |
| virtual void | handleBeaconFrame (Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0 |
| |
| virtual void | handleProbeRequestFrame (Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0 |
| |
| virtual void | handleProbeResponseFrame (Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0 |
| |
| virtual bool | isInitializeStage (int stage) const override |
| | lifecycle support More...
|
| |
| virtual bool | isModuleStartStage (int stage) const override |
| |
| virtual bool | isModuleStopStage (int stage) const override |
| |
| virtual void | handleStartOperation (LifecycleOperation *operation) override |
| |
| virtual void | handleStopOperation (LifecycleOperation *operation) override |
| |
| virtual void | handleCrashOperation (LifecycleOperation *operation) override |
| |
| virtual void | start () |
| |
| virtual void | stop () |
| |
| virtual int | numInitStages () const override |
| |
| virtual void | refreshDisplay () const override |
| |
| virtual void | handleMessage (cMessage *msg) override |
| |
| virtual void | handleMessageWhenDown (cMessage *msg) |
| |
| virtual bool | handleOperationStage (LifecycleOperation *operation, IDoneCallback *doneCallback) override |
| | Perform one stage of a lifecycle operation. More...
|
| |
| virtual State | getInitialOperationalState () const |
| | Returns initial operational state: OPERATING or NOT_OPERATING. More...
|
| |
| virtual void | handleActiveOperationTimeout (cMessage *message) |
| |
| virtual bool | isUp () const |
| | utility functions More...
|
| |
| virtual bool | isDown () const |
| |
| virtual void | setOperationalState (State newState) |
| |
| virtual void | scheduleOperationTimeout (simtime_t timeout) |
| |
| virtual void | setupActiveOperation (LifecycleOperation *operation, IDoneCallback *doneCallback, State) |
| |
| virtual void | delayActiveOperationFinish (simtime_t timeout) |
| |
| virtual void | startActiveOperationExtraTime (simtime_t delay=SIMTIME_ZERO) |
| |
| virtual void | startActiveOperationExtraTimeOrFinish (simtime_t extraTime) |
| |
| virtual void | finishActiveOperation () |
| |
Abstract base class for 802.11 infrastructure mode management components.
◆ dropManagementFrame()
| void inet::ieee80211::Ieee80211MgmtBase::dropManagementFrame |
( |
Packet * |
frame | ) |
|
|
protectedvirtual |
Utility method to dispose of an unhandled frame.
77 EV <<
"ignoring management frame: " << (cMessage *)frame <<
"\n";
Referenced by inet::ieee80211::Ieee80211MgmtAdhoc::handleAssociationRequestFrame(), inet::ieee80211::Ieee80211MgmtApSimplified::handleAssociationRequestFrame(), inet::ieee80211::Ieee80211MgmtStaSimplified::handleAssociationRequestFrame(), inet::ieee80211::Ieee80211MgmtAdhoc::handleAssociationResponseFrame(), inet::ieee80211::Ieee80211MgmtApSimplified::handleAssociationResponseFrame(), inet::ieee80211::Ieee80211MgmtStaSimplified::handleAssociationResponseFrame(), inet::ieee80211::Ieee80211MgmtApSimplified::handleAuthenticationFrame(), inet::ieee80211::Ieee80211MgmtAdhoc::handleAuthenticationFrame(), inet::ieee80211::Ieee80211MgmtStaSimplified::handleAuthenticationFrame(), inet::ieee80211::Ieee80211MgmtAdhoc::handleBeaconFrame(), inet::ieee80211::Ieee80211MgmtApSimplified::handleBeaconFrame(), inet::ieee80211::Ieee80211MgmtStaSimplified::handleBeaconFrame(), inet::ieee80211::Ieee80211MgmtAdhoc::handleDeauthenticationFrame(), inet::ieee80211::Ieee80211MgmtApSimplified::handleDeauthenticationFrame(), inet::ieee80211::Ieee80211MgmtStaSimplified::handleDeauthenticationFrame(), inet::ieee80211::Ieee80211MgmtApSimplified::handleDisassociationFrame(), inet::ieee80211::Ieee80211MgmtAdhoc::handleDisassociationFrame(), inet::ieee80211::Ieee80211MgmtStaSimplified::handleDisassociationFrame(), inet::ieee80211::Ieee80211MgmtAdhoc::handleProbeRequestFrame(), inet::ieee80211::Ieee80211MgmtApSimplified::handleProbeRequestFrame(), inet::ieee80211::Ieee80211MgmtStaSimplified::handleProbeRequestFrame(), inet::ieee80211::Ieee80211MgmtAdhoc::handleProbeResponseFrame(), inet::ieee80211::Ieee80211MgmtApSimplified::handleProbeResponseFrame(), inet::ieee80211::Ieee80211MgmtStaSimplified::handleProbeResponseFrame(), inet::ieee80211::Ieee80211MgmtApSimplified::handleReassociationRequestFrame(), inet::ieee80211::Ieee80211MgmtAdhoc::handleReassociationRequestFrame(), inet::ieee80211::Ieee80211MgmtStaSimplified::handleReassociationRequestFrame(), inet::ieee80211::Ieee80211MgmtApSimplified::handleReassociationResponseFrame(), inet::ieee80211::Ieee80211MgmtAdhoc::handleReassociationResponseFrame(), and inet::ieee80211::Ieee80211MgmtStaSimplified::handleReassociationResponseFrame().
◆ handleAssociationRequestFrame()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleAssociationRequestFrame |
( |
Packet * |
packet, |
|
|
const Ptr< const Ieee80211MgmtHeader > & |
header |
|
) |
| |
|
protectedpure virtual |
◆ handleAssociationResponseFrame()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleAssociationResponseFrame |
( |
Packet * |
packet, |
|
|
const Ptr< const Ieee80211MgmtHeader > & |
header |
|
) |
| |
|
protectedpure virtual |
◆ handleAuthenticationFrame()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleAuthenticationFrame |
( |
Packet * |
packet, |
|
|
const Ptr< const Ieee80211MgmtHeader > & |
header |
|
) |
| |
|
protectedpure virtual |
◆ handleBeaconFrame()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleBeaconFrame |
( |
Packet * |
packet, |
|
|
const Ptr< const Ieee80211MgmtHeader > & |
header |
|
) |
| |
|
protectedpure virtual |
◆ handleCommand()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleCommand |
( |
int |
msgkind, |
|
|
cObject * |
ctrl |
|
) |
| |
|
protectedpure virtual |
◆ handleCrashOperation()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleCrashOperation |
( |
LifecycleOperation * |
operation | ) |
|
|
inlineoverrideprotectedvirtual |
◆ handleDeauthenticationFrame()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleDeauthenticationFrame |
( |
Packet * |
packet, |
|
|
const Ptr< const Ieee80211MgmtHeader > & |
header |
|
) |
| |
|
protectedpure virtual |
◆ handleDisassociationFrame()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleDisassociationFrame |
( |
Packet * |
packet, |
|
|
const Ptr< const Ieee80211MgmtHeader > & |
header |
|
) |
| |
|
protectedpure virtual |
◆ handleMessageWhenUp()
| void inet::ieee80211::Ieee80211MgmtBase::handleMessageWhenUp |
( |
cMessage * |
msg | ) |
|
|
overrideprotectedvirtual |
Dispatches incoming messages to handleTimer(), handleUpperMessage() or processFrame().
Implements inet::OperationalMixin< cSimpleModule >.
43 if (msg->isSelfMessage()) {
45 EV <<
"Timer expired: " << msg <<
"\n";
48 else if (msg->arrivedOn(
"macIn")) {
50 EV <<
"Frame arrived from MAC: " << msg <<
"\n";
51 auto packet = check_and_cast<Packet *>(msg);
52 const Ptr<const Ieee80211DataOrMgmtHeader>& header = packet->peekAt<Ieee80211DataOrMgmtHeader>(packet->getFrontOffset() -
B(24));
55 else if (msg->arrivedOn(
"agentIn")) {
57 EV <<
"Command arrived from agent: " << msg <<
"\n";
58 int msgkind = msg->getKind();
59 cObject *
ctrl = msg->removeControlInfo();
65 throw cRuntimeError(
"Unknown message");
◆ handleProbeRequestFrame()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleProbeRequestFrame |
( |
Packet * |
packet, |
|
|
const Ptr< const Ieee80211MgmtHeader > & |
header |
|
) |
| |
|
protectedpure virtual |
◆ handleProbeResponseFrame()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleProbeResponseFrame |
( |
Packet * |
packet, |
|
|
const Ptr< const Ieee80211MgmtHeader > & |
header |
|
) |
| |
|
protectedpure virtual |
◆ handleReassociationRequestFrame()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleReassociationRequestFrame |
( |
Packet * |
packet, |
|
|
const Ptr< const Ieee80211MgmtHeader > & |
header |
|
) |
| |
|
protectedpure virtual |
◆ handleReassociationResponseFrame()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleReassociationResponseFrame |
( |
Packet * |
packet, |
|
|
const Ptr< const Ieee80211MgmtHeader > & |
header |
|
) |
| |
|
protectedpure virtual |
◆ handleStartOperation()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleStartOperation |
( |
LifecycleOperation * |
operation | ) |
|
|
inlineoverrideprotectedvirtual |
◆ handleStopOperation()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleStopOperation |
( |
LifecycleOperation * |
operation | ) |
|
|
inlineoverrideprotectedvirtual |
◆ handleTimer()
| virtual void inet::ieee80211::Ieee80211MgmtBase::handleTimer |
( |
cMessage * |
frame | ) |
|
|
protectedpure virtual |
◆ initialize()
| void inet::ieee80211::Ieee80211MgmtBase::initialize |
( |
int |
stage | ) |
|
|
overrideprotectedvirtual |
◆ isInitializeStage()
| virtual bool inet::ieee80211::Ieee80211MgmtBase::isInitializeStage |
( |
int |
stage | ) |
const |
|
inlineoverrideprotectedvirtual |
◆ isModuleStartStage()
| virtual bool inet::ieee80211::Ieee80211MgmtBase::isModuleStartStage |
( |
int |
stage | ) |
const |
|
inlineoverrideprotectedvirtual |
◆ isModuleStopStage()
| virtual bool inet::ieee80211::Ieee80211MgmtBase::isModuleStopStage |
( |
int |
stage | ) |
const |
|
inlineoverrideprotectedvirtual |
◆ numInitStages()
| virtual int inet::ieee80211::Ieee80211MgmtBase::numInitStages |
( |
| ) |
const |
|
inlineoverrideprotectedvirtual |
◆ processFrame()
Dispatch to frame processing methods according to frame type.
84 switch (header->getType()) {
136 throw cRuntimeError(
"Unexpected frame type (%s)%s", packet->getClassName(), packet->getName());
◆ sendDown()
| void inet::ieee80211::Ieee80211MgmtBase::sendDown |
( |
Packet * |
frame | ) |
|
|
protectedvirtual |
Utility method for implementing handleUpperMessage(): send message to MAC.
72 send(frame,
"macOut");
◆ start()
| void inet::ieee80211::Ieee80211MgmtBase::start |
( |
| ) |
|
|
protectedvirtual |
◆ stop()
| void inet::ieee80211::Ieee80211MgmtBase::stop |
( |
| ) |
|
|
protectedvirtual |
◆ interfaceTable
◆ mib
◆ myIface
◆ numMgmtFramesDropped
| long inet::ieee80211::Ieee80211MgmtBase::numMgmtFramesDropped |
|
protected |
◆ numMgmtFramesReceived
| long inet::ieee80211::Ieee80211MgmtBase::numMgmtFramesReceived |
|
protected |
The documentation for this class was generated from the following files:
virtual void processFrame(Packet *packet, const Ptr< const Ieee80211DataOrMgmtHeader > &header)
Dispatch to frame processing methods according to frame type.
Definition: Ieee80211MgmtBase.cc:82
virtual void handleCommand(int msgkind, cObject *ctrl)=0
Should be redefined to handle commands from the "agent" (if present)
virtual void handleProbeRequestFrame(Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0
virtual bool isUp() const
utility functions
Definition: OperationalMixin.h:66
@ ST_PROBEREQUEST
Definition: Ieee80211Frame_m.h:153
static const Protocol ieee80211Mgmt
Definition: Protocol.h:80
virtual void handleReassociationRequestFrame(Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0
ModuleRefByPar< Ieee80211Mib > mib
Definition: Ieee80211MgmtBase.h:33
virtual void initialize(int stage) override
Definition: OperationalMixinImpl.h:26
virtual void handleReassociationResponseFrame(Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0
virtual void handleAssociationRequestFrame(Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0
NetworkInterface * getContainingNicModule(const cModule *from)
Find the nic module (inside the networkNode) containing the given module.
Definition: NetworkInterface.cc:691
virtual void handleDeauthenticationFrame(Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0
NetworkInterface * myIface
Definition: Ieee80211MgmtBase.h:35
removed DscpReq Ipv4ControlInfo Ipv6ControlInfo up L3AddressInd DispatchProtocolReq L4PortInd Ipv4ControlInfo Ipv6ControlInfo down PacketProtocolTag
Definition: IUdp-gates.txt:25
removed ctrl
Definition: IUdp-gates.txt:7
INET_API InitStage INITSTAGE_NETWORK_INTERFACE_CONFIGURATION
Initialization of network interfaces includes:
virtual void handleAssociationResponseFrame(Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0
@ ST_REASSOCIATIONRESPONSE
Definition: Ieee80211Frame_m.h:152
@ ST_ASSOCIATIONREQUEST
Definition: Ieee80211Frame_m.h:149
intscale< b, 1, 8 > B
Definition: Units.h:1168
@ ST_AUTHENTICATION
Definition: Ieee80211Frame_m.h:158
@ STAGE_PHYSICAL_LAYER
Definition: ModuleOperations.h:27
virtual void handleTimer(cMessage *frame)=0
Should be redefined to deal with self-messages.
@ STAGE_PHYSICAL_LAYER
Definition: ModuleOperations.h:55
long numMgmtFramesReceived
Definition: Ieee80211MgmtBase.h:38
@ ST_DEAUTHENTICATION
Definition: Ieee80211Frame_m.h:159
virtual void handleDisassociationFrame(Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0
INET_API InitStage INITSTAGE_LOCAL
Initialization of local state that don't use or affect other modules includes:
@ ST_BEACON
Definition: Ieee80211Frame_m.h:155
@ ST_PROBERESPONSE
Definition: Ieee80211Frame_m.h:154
#define NUM_INIT_STAGES
Definition: InitStageRegistry.h:73
@ ST_DISASSOCIATION
Definition: Ieee80211Frame_m.h:157
@ ST_REASSOCIATIONREQUEST
Definition: Ieee80211Frame_m.h:151
@ ST_ASSOCIATIONRESPONSE
Definition: Ieee80211Frame_m.h:150
virtual void stop()
Definition: Ieee80211MgmtBase.cc:144
long numMgmtFramesDropped
Definition: Ieee80211MgmtBase.h:39
virtual void handleBeaconFrame(Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0
virtual void start()
Definition: Ieee80211MgmtBase.cc:140
virtual void handleProbeResponseFrame(Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0
virtual void handleAuthenticationFrame(Packet *packet, const Ptr< const Ieee80211MgmtHeader > &header)=0
ModuleRefByPar< IInterfaceTable > interfaceTable
Definition: Ieee80211MgmtBase.h:34