Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Ieee80211MgmtAPSimplified Class Reference

#include <Ieee80211MgmtAPSimplified.h>

Inheritance diagram for Ieee80211MgmtAPSimplified:

Ieee80211MgmtAPBase Ieee80211MgmtBase PassiveQueueBase INotifiable IPassiveQueue List of all members.

Detailed Description

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.

Author:
Andras Varga


Protected Member Functions

virtual int numInitStages () const
virtual void initialize (int)
virtual void handleTimer (cMessage *msg)
virtual void handleUpperMessage (cMessage *msg)
virtual void handleCommand (int msgkind, cPolymorphic *ctrl)
virtual void receiveChangeNotification (int category, 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)


Member Function Documentation

void Ieee80211MgmtAPSimplified::handleAssociationRequestFrame Ieee80211AssociationRequestFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00094 {
00095     dropManagementFrame(frame);
00096 }

void Ieee80211MgmtAPSimplified::handleAssociationResponseFrame Ieee80211AssociationResponseFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00099 {
00100     dropManagementFrame(frame);
00101 }

void Ieee80211MgmtAPSimplified::handleAuthenticationFrame Ieee80211AuthenticationFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00084 {
00085     dropManagementFrame(frame);
00086 }

void Ieee80211MgmtAPSimplified::handleBeaconFrame Ieee80211BeaconFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00119 {
00120     dropManagementFrame(frame);
00121 }

void Ieee80211MgmtAPSimplified::handleCommand int  msgkind,
cPolymorphic *  ctrl
[protected, virtual]
 

Implements abstract Ieee80211MgmtBase method -- throws an error (no commands supported)

Implements Ieee80211MgmtBase.

00048 {
00049     error("handleCommand(): no commands supported");
00050 }

void Ieee80211MgmtAPSimplified::handleDataFrame Ieee80211DataFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00059 {
00060     // check toDS bit
00061     if (!frame->getToDS())
00062     {
00063         // looks like this is not for us - discard
00064         delete frame;
00065         return;
00066     }
00067 
00068     if (hasRelayUnit)
00069     {
00070         // LAN bridging: if we have a relayUnit, send up the frame to it.
00071         // We don't need to call distributeReceivedDataFrame() here, because
00072         // if the frame needs to be distributed onto the wireless LAN too,
00073         // then relayUnit will send a copy back to us.
00074         send(convertToEtherFrame(frame), "uppergateOut");
00075     }
00076     else
00077     {
00078         // send it out to the destination STA
00079         distributeReceivedDataFrame(frame);
00080     }
00081 }

void Ieee80211MgmtAPSimplified::handleDeauthenticationFrame Ieee80211DeauthenticationFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00089 {
00090     dropManagementFrame(frame);
00091 }

void Ieee80211MgmtAPSimplified::handleDisassociationFrame Ieee80211DisassociationFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00114 {
00115     dropManagementFrame(frame);
00116 }

void Ieee80211MgmtAPSimplified::handleProbeRequestFrame Ieee80211ProbeRequestFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00124 {
00125     dropManagementFrame(frame);
00126 }

void Ieee80211MgmtAPSimplified::handleProbeResponseFrame Ieee80211ProbeResponseFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00129 {
00130     dropManagementFrame(frame);
00131 }

void Ieee80211MgmtAPSimplified::handleReassociationRequestFrame Ieee80211ReassociationRequestFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00104 {
00105     dropManagementFrame(frame);
00106 }

void Ieee80211MgmtAPSimplified::handleReassociationResponseFrame Ieee80211ReassociationResponseFrame frame  )  [protected, virtual]
 

Implements Ieee80211MgmtBase.

00109 {
00110     dropManagementFrame(frame);
00111 }

void Ieee80211MgmtAPSimplified::handleTimer cMessage *  msg  )  [protected, virtual]
 

Implements abstract Ieee80211MgmtBase method

Implements Ieee80211MgmtBase.

00035 {
00036     ASSERT(false);
00037 }

void Ieee80211MgmtAPSimplified::handleUpperMessage cMessage *  msg  )  [protected, virtual]
 

Implements abstract Ieee80211MgmtBase method

Implements Ieee80211MgmtBase.

00040 {
00041     // convert Ethernet frames arriving from MACRelayUnit (i.e. from
00042     // the AP's other Ethernet or wireless interfaces)
00043     Ieee80211DataFrame *frame = convertFromEtherFrame(check_and_cast<EtherFrame *>(msg));
00044     sendOrEnqueue(frame);
00045 }

void Ieee80211MgmtAPSimplified::initialize int   )  [protected, virtual]
 

Reimplemented from Ieee80211MgmtAPBase.

00030 {
00031     Ieee80211MgmtAPBase::initialize(stage);
00032 }

virtual int Ieee80211MgmtAPSimplified::numInitStages  )  const [inline, protected, virtual]
 

Reimplemented from Ieee80211MgmtAPBase.

00038 {return 2;}

void Ieee80211MgmtAPSimplified::receiveChangeNotification int  category,
cPolymorphic *  details
[protected, virtual]
 

Called by the NotificationBoard whenever a change occurs we're interested in

Implements INotifiable.

00053 {
00054     Enter_Method_Silent();
00055     printNotificationBanner(category, details);
00056 }


The documentation for this class was generated from the following files:
Generated on Thu Oct 19 18:22:23 2006 for INET Framework for OMNeT++/OMNEST by  doxygen 1.4.0