Difference between revisions of "Unit WiFi"

From Ultibo.org
Jump to: navigation, search
Line 4,071: Line 4,071:
 
----
 
----
  
''To be documented''
+
 
 +
'''IEEE 802.11 header'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211Header = ^TIEEE80211Header;</code>
 +
 
 +
<code>TIEEE80211Header = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_hdr
 +
Not Packed
 +
|-
 +
| <code>FrameControl:Word;</code>
 +
| LE16
 +
|-
 +
| <code>DurationId:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Address1:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Address2:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Address3:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SequenceControl:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Address4:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 header 3 address'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211Header3Address = ^TIEEE80211Header3Address;</code>
 +
 
 +
<code>TIEEE80211Header3Address = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_hdr_3addr
 +
Not Packed
 +
|-
 +
| <code>FrameControl:Word;</code>
 +
| LE16
 +
|-
 +
| <code>DurationId:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Address1:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Address2:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Address3:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SequenceControl:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 QOS header'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211QOSHeader = ^TIEEE80211QOSHeader;</code>
 +
 
 +
<code>TIEEE80211QOSHeader = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_qos_hdr
 +
Not Packed
 +
|-
 +
| <code>FrameControl:Word;</code>
 +
| LE16
 +
|-
 +
| <code>DurationId:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Address1:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Address2:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Address3:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SequenceControl:Word;</code>
 +
| LE16
 +
|-
 +
| <code>QoSControl:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 S header'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211SHeader = ^TIEEE80211SHeader;</code>
 +
 
 +
<code>TIEEE80211SHeader = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211s_hdr
 +
Not Packed
 +
|-
 +
| <code>Flags:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TTL:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SequenceNumber:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>Address1:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Address2:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 quiet information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211QuietIE = ^TIEEE80211QuietIE;</code>
 +
 
 +
<code>TIEEE80211QuietIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_quiet_ie
 +
|-
 +
| <code>Count:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Period:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Duration:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Offset:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''IEEE 802.11 measurement request/report information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211MeasurementIE = ^TIEEE80211MeasurementIE;</code>
 +
 
 +
<code>TIEEE80211MeasurementIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_msrment_ie
 +
|-
 +
| <code>Token:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Mode:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TType:Byte;</code>
 +
| Type
 +
|-
 +
| <code>Request:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 channel switch announcement information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211ChannelSwitchIE = ^TIEEE80211ChannelSwitchIE;</code>
 +
 
 +
<code>TIEEE80211ChannelSwitchIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_channel_sw_ie
 +
|-
 +
| <code>Mode:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>NewChannel:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Count:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 extended channel switch announcement information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211ExtChannelSwitchIE = ^TIEEE80211ExtChannelSwitchIE;</code>
 +
 
 +
<code>TIEEE80211ExtChannelSwitchIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_ext_chansw_ie
 +
|-
 +
| <code>Mode:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>NewOperatingClass:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>NewChannel:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Count:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 +
'''IEEE 802.11 secondary channel offset information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211SecondaryChannelOffsetIE = ^TIEEE80211SecondaryChannelOffsetIE;</code>
 +
 
 +
<code>TIEEE80211SecondaryChannelOffsetIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_sec_chan_offs_ie
 +
|-
 +
| <code>SecondaryChannelOffset:Byte;</code>
 +
| Secondary channel offset, uses IEEE80211_HT_PARAM_CHA_SEC_* values here
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 mesh channel switch parameters information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211MeshChannelSwitchParamsIE = ^TIEEE80211MeshChannelSwitchParamsIE;</code>
 +
 
 +
<code>TIEEE80211MeshChannelSwitchParamsIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mesh_chansw_params_ie
 +
|-
 +
| <code>MeshTTL:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MeshFlags:Byte;</code>
 +
| See IEEE80211_CHAN_SWITCH_PARAM_*
 +
|-
 +
| <code>MeshReason:Word;</code>
 +
| LE16
 +
|-
 +
| <code>MeshPreValue:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 wide bandwidth channel switch information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211WidebandChannelSwitchIE = ^TIEEE80211WidebandChannelSwitchIE;</code>
 +
 
 +
<code>TIEEE80211WidebandChannelSwitchIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_wide_bw_chansw_ie
 +
|-
 +
| <code>NewChannelWidth:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>NewCenterFreqSeg0:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>NewCenterFreqSeg1:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 traffic indication map information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211TrafficIndicationMapIE = ^TIEEE80211TrafficIndicationMapIE;</code>
 +
 
 +
<code>TIEEE80211TrafficIndicationMapIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_tim_ie
 +
|-
 +
| <code>DTIMCount:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DTIMPeriod:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>BitmapControl:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>VirtualMap:array[0..0] of Byte;</code>
 +
| Variable size: 1 - 251 bytes
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 mesh configuration information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211MeshConfigurationIE = ^TIEEE80211MeshConfigurationIE;</code>
 +
 
 +
<code>TIEEE80211MeshConfigurationIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_meshconf_ie
 +
|-
 +
| <code>MeshConfPSEL:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>MeshConfPMetric:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MeshconfCongest:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MeshconfSynch:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MeshConfAuth:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MeshConfForm:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MeshConfCap:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 root announcement information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211RootAnnouncementIE = ^TIEEE80211RootAnnouncementIE;</code>
 +
 
 +
<code>TIEEE80211RootAnnouncementIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_rann_ie
 +
|-
 +
| <code>RannFlags:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RannHopcount:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RannTTL:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RannAddress:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RannSequence:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>RannInterval:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>RannMetric:LongWord;</code>
 +
| LE32
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 TPC report information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211TPCReportIE = ^TIEEE80211TPCReportIE;</code>
 +
 
 +
<code>TIEEE80211TPCReportIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_tpc_report_ie
 +
|-
 +
| <code>TXPower:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>LinkMargin:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management authority'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementAuth = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>AuthAlgorithm:Word;</code>
 +
| LE16
 +
|-
 +
| <code>AuthTransaction:Word;</code>
 +
| LE16
 +
|-
 +
| <code>StatusCode:Word;</code>
 +
| LE16
 +
|-
 +
|colspan="2"|''Possibly followed by Challenge text''
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''IEEE 802.11 management deauthority'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementDeauth = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ReasonCode:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''IEEE 802.11 management association request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementAssocRequest = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>CapabilitiesInfo:Word;</code>
 +
| LE16
 +
|-
 +
| <code>ListenInterval:Word;</code>
 +
| LE16
 +
|-
 +
|colspan="2"|''Followed by SSID and Supported rates''
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 +
'''IEEE 802.11 management association response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementAssocResponse = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>CapabilitiesInfo:Word;</code>
 +
| LE16
 +
|-
 +
| <code>StatusCode:Word;</code>
 +
| LE16
 +
|-
 +
| <code>AID:Word;</code>
 +
| LE16
 +
|-
 +
|colspan="2"|''Followed by Supported rates''
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management reassociation request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementReassocRequest = packed record </code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>CapabilitiesInfo:Word;</code>
 +
| LE16
 +
|-
 +
| <code>ListenInterval:Word;</code>
 +
| LE16
 +
|-
 +
| <code>CurrentAP:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|''Followed by SSID and Supported rates''
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management disassociation'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementDisassoc = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ReasonCode:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management beacon'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementBeacon = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>Timestamp:Int64;</code>
 +
| LE64
 +
|-
 +
| <code>BeaconInterval:Word;</code>
 +
| LE16
 +
|-
 +
| <code>CapabilitiesInfo:Word;</code>
 +
| LE16
 +
|-
 +
|colspan="2"|''Followed by some of SSID, Supported rates, FH Params, DS Params, CF Params, IBSS Params, TIM''
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management probe request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementProbeRequest = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
|colspan="2"|''Only variable items: SSID, Supported rates''
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management probe response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>TIEEE80211ManagementProbeResponse = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>Timestamp:Int64;</code>
 +
| LE64
 +
|-
 +
| <code>BeaconInterval:Word;</code>
 +
| LE16
 +
|-
 +
| <code>CapabilitiesInfo:Word;</code>
 +
| LE16
 +
|-
 +
|colspan="2"|''Followed by some of SSID, Supported rates, FH Params, DS Params, CF Params, IBSS Params''
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action WME action'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionWMEAction = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>DialogToken:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>StatusCode:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action channel switch'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionChannelSwitch = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Variable:array[0..0] of Byte; </code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action extended channel switch'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionExtChannelSwitch = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Data:TIEEE80211ExtChannelSwitchIE;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action measurement''' 
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionMeasurement = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>DialogToken:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ElementID:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Length:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Element:TIEEE80211MeasurementIE;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action add BA request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionAddBARequest = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DialogToken:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Capability:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Timeout:Word;</code>
 +
| LE16
 +
|-
 +
| <code>StartSequenceNumber:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action add BA response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionAddBAResponse = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DialogToken:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Status:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Capability:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Timeout:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action delete BA'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionDelBA = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Params:Word;</code>
 +
| LE16
 +
|-
 +
| <code>ReasonCode:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action self protection'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionSelfProt = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''IEEE 802.11 management action mesh action'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionMeshAction = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Variable:array[0..0] of Byte; </code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action SA query'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionSAQuery = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>TransID:array[0..WLAN_SA_QUERY_TR_ID_LEN - 1] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action HTSMPS'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionHTSMPS = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>Action:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>SMPSControl:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action HT notify channel width'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionHTNotifyChannelWidth = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>ChannelWidth:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action TDLS discover response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionTDLSDiscoverResponse = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DialogToken:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Capability:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Variable:array[0..0] of Byte; </code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action VHT opmode notify'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionVHTOpmodeNotify = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>OperatingMode:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action TPC report'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementActionTPCReport = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>DialogToken:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TPCElementID:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TPCElementLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TPC:TIEEE80211TPCReportIE;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management action'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211ManagementAction = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
|-
 +
| <code>case Integer of</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>0:(WMEAction:TIEEE80211ManagementAuth);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(ChannelSwitch:TIEEE80211ManagementActionChannelSwitch);</code>
 +
| &nbsp;
 +
|-
 +
| <code>2:(ExtChannelSwitch:TIEEE80211ManagementActionExtChannelSwitch);</code>
 +
| &nbsp;
 +
|-
 +
| <code>3:(Measurement:TIEEE80211ManagementActionMeasurement);</code>
 +
| &nbsp;
 +
|-
 +
| <code>4:(AddBARequest:TIEEE80211ManagementActionAddBARequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>5:(AddBAResponse:TIEEE80211ManagementActionAddBAResponse);</code>
 +
| &nbsp;
 +
|-
 +
| <code>6:(DelBA:TIEEE80211ManagementActionDelBA);</code>
 +
| &nbsp;
 +
|-
 +
| <code>7:(SelfProt:TIEEE80211ManagementActionSelfProt);</code>
 +
| &nbsp;
 +
|-
 +
| <code>8:(MeshAction:TIEEE80211ManagementActionMeshAction);</code>
 +
| &nbsp;
 +
|-
 +
| <code>9:(SAQuery:TIEEE80211ManagementActionSAQuery);</code>
 +
| &nbsp;
 +
|-
 +
| <code>10:(HTSMPS:TIEEE80211ManagementActionHTSMPS);</code>
 +
| &nbsp;
 +
|-
 +
| <code>11:(HTNotifyChannelWidth:TIEEE80211ManagementActionHTNotifyChannelWidth);</code>
 +
| &nbsp;
 +
|-
 +
| <code>12:(TDLSDiscoverResponse:TIEEE80211ManagementActionTDLSDiscoverResponse);</code>
 +
| &nbsp;
 +
|-
 +
| <code>13:(VHTOpmodeNotify:TIEEE80211ManagementActionVHTOpmodeNotify);</code>
 +
| &nbsp;
 +
|-
 +
| <code>14:(TPCReport:TIEEE80211ManagementActionTPCReport);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 +
'''IEEE 802.11 management'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211Management = ^TIEEE80211Management;</code>
 +
 
 +
<code>TIEEE80211Management = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mgmt
 +
Not Packed
 +
|-
 +
| <code>FrameControl:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Duration:Word;</code>
 +
| LE16
 +
|-
 +
| <code>DestinationAddress:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SourceAddress:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>BSSID:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SequenceControl:Word;</code>
 +
| LE16
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(Auth:TIEEE80211ManagementAuth);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Deauth:TIEEE80211ManagementDeauth);</code>
 +
| &nbsp;
 +
|-
 +
| <code>2:(AssocRequest:TIEEE80211ManagementAssocRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>3:(AssocResponse:TIEEE80211ManagementAssocResponse);</code>
 +
| &nbsp;
 +
|-
 +
| <code>4:(ReassocResponse:TIEEE80211ManagementAssocResponse);</code>
 +
| &nbsp;
 +
|-
 +
| <code>5:(ReassocRequest:TIEEE80211ManagementReassocRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>6:(Disassoc:TIEEE80211ManagementDisassoc);</code>
 +
| &nbsp;
 +
|-
 +
| <code>7:(Beacon:TIEEE80211ManagementBeacon);</code>
 +
| &nbsp;
 +
|-
 +
| <code>8:(ProbeRequest:TIEEE80211ManagementProbeRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>9:(ProbeResponse:TIEEE80211ManagementProbeResponse);</code>
 +
| &nbsp;
 +
|-
 +
| <code>10:(Action:TIEEE80211ManagementAction);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management MIC information element (IEEE 802.11w)''' 
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211ManagementMICIE = ^TIEEE80211ManagementMICIE;</code>
 +
 
 +
<code>TIEEE80211ManagementMICIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mmie
 +
|-
 +
| <code>ElementID:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Length:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>KeyID:Word;</code>
 +
| LE16
 +
|-
 +
| <code>SequenceNumber:array[0..5] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MIC:array[0..7] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 management MIC information element (IEEE 802.11w) for GMAC and CMAC-256'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211ManagementMIC16IE = ^TIEEE80211ManagementMIC16IE;</code>
 +
 
 +
<code>TIEEE80211ManagementMIC16IE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mmie_16
 +
|-
 +
| <code>ElementID:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Length:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>KeyID:Word;</code>
 +
| LE16
 +
|-
 +
| <code>SequenceNumber:array[0..5] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MIC:array[0..15] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 vendor information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211VendorIE = ^TIEEE80211VendorIE;</code>
 +
 
 +
<code>TIEEE80211VendorIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h  ieee80211_vendor_ie
 +
|-
 +
| <code>ElementID:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Length:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>OUI:array[0..2] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>OUIType:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 WMM AC parameters'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211WMMACParam = ^TIEEE80211WMMACParam;</code>
 +
 
 +
<code>TIEEE80211WMMACParam = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_wmm_ac_param
 +
|-
 +
| <code>ACI_AIFSN:Byte;</code>
 +
| AIFSN, ACM, ACI
 +
|-
 +
| <code>CW:Byte;</code>
 +
| ECWmin, ECWmax (CW = 2^ECW - 1)
 +
|-
 +
| <code>TXOpLimit:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 WMM parameters information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211WMMParamIE = ^TIEEE80211WMMParamIE;</code>
 +
 
 +
<code>TIEEE80211WMMParamIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_wmm_param_ie
 +
|-
 +
| <code>ElementID:Byte;</code>
 +
| Element ID: 221 (= $dd);
 +
|-
 +
| <code>Length:Byte;</code>
 +
| Length: 24
 +
|-
 +
|colspan="2"|''Required fields for WMM version 1''
 +
|-
 +
| <code>OUI:array[0..2] of Byte;</code>
 +
| 00:50:f2
 +
|-
 +
| <code>OUIType:Byte;</code>
 +
| 2
 +
|-
 +
| <code>OUISubType:Byte;</code>
 +
| 1
 +
|-
 +
| <code>Version:Byte;</code>
 +
| 1 for WMM version 1.0
 +
|-
 +
| <code>QoSInfo:Byte;</code>
 +
| AP/STA specific QoS info
 +
|-
 +
| <code>Reserved:Byte;</code>
 +
| 0
 +
|-
 +
|colspan="2"|''AC_BE, AC_BK, AC_VI, AC_VO''
 +
|-
 +
| <code>AC:array[0..3] of TIEEE80211WMMACParam;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 RTS'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211RTS = ^TIEEE80211RTS;</code>
 +
 
 +
<code>TIEEE80211RTS = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Not Packed
 +
|-
 +
| <code>FrameControl:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Duration:Word;</code>
 +
| LE16
 +
|-
 +
| <code>ReceiverAddress:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TransmitterAddress:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''IEEE 802.11 CTS'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211CTS = ^TIEEE80211CTS;</code>
 +
 
 +
<code>TIEEE80211CTS = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Not Packed
 +
|-
 +
| <code>FrameControl:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Duration:Word;</code>
 +
| LE16
 +
|-
 +
| <code>ReceiverAddress:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''IEEE 802.11 PS poll''' 
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211PSPoll = ^TIEEE80211PSPoll;</code>
 +
 
 +
<code>TIEEE80211PSPoll = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Not Packed
 +
|-
 +
| <code>FrameControl:Word;</code>
 +
| LE16
 +
|-
 +
| <code>AID:Word;</code>
 +
| LE16
 +
|-
 +
| <code>BSSID:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TransmitterAddress:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 channel switch timing'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211ChannelSwitchTiming = ^TIEEE80211ChannelSwitchTiming;</code>
 +
 
 +
<code>TIEEE80211ChannelSwitchTiming = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_ch_switch_timing
 +
|-
 +
| <code>SwitchTime:Word;</code>
 +
| LE16
 +
|-
 +
| <code>SwitchTimeout:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 TDLS link-id information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211TDLSLinkIdentifierIE = ^TIEEE80211TDLSLinkIdentifierIE;</code>
 +
 
 +
<code>TIEEE80211TDLSLinkIdentifierIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h  ieee80211_tdls_lnkie
 +
|-
 +
| <code>ElementID:Byte;</code>
 +
| Link Identifier IE
 +
|-
 +
| <code>Length:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>BSSID:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>InitiatingStation:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RespondingStation:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 TDLS data setup request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211TDLSDataSetupRequest = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>DialogToken:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Capability:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 TDLS data setup response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211TDLSDataSetupResponse = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>StatusCode:Word;</code>
 +
| LE16
 +
|-
 +
| <code>DialogToken:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Capability:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 TDLS data setup confirmation'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211TDLSDataSetupConfirm = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>StatusCode:Word;</code>
 +
| LE16
 +
|-
 +
| <code>DialogToken:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 TDLS data teardown'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211TDLSDataTeardown = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>ReasonCode:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 TDLS data discover request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211TDLSDataDiscoverRequest = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>DialogToken:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 TDLS data channel switch request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211TDLSDataChannelSwitchRequest = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>TargetChannel:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>OperatingClass:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 TDLS data channel switch response'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211TDLSDataChannelSwitchResponse = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>StatusCode:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Variable:array[0..0] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 TDLS data'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211TDLSData = ^TIEEE80211TDLSData;</code>
 +
 
 +
<code>TIEEE80211TDLSData = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_tdls_data
 +
|-
 +
| <code>DestinationAddress:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SourceAddress:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>EtherType:Word;</code>
 +
| BE16 (As per Ethernet Header)
 +
|-
 +
| <code>PayloadType:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Category:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ActionCode:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>case Integer of</code>
 +
| &nbsp;
 +
|-
 +
| <code>0:(SetupRequest:TIEEE80211TDLSDataSetupRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(SetupResponse:TIEEE80211TDLSDataSetupResponse);</code>
 +
| &nbsp;
 +
|-
 +
| <code>2:(SetupConfirm:TIEEE80211TDLSDataSetupConfirm);</code>
 +
| &nbsp;
 +
|-
 +
| <code>3:(Teardown:TIEEE80211TDLSDataTeardown);</code>
 +
| &nbsp;
 +
|-
 +
| <code>4:(DiscoverRequest:TIEEE80211TDLSDataDiscoverRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>5:(ChannelSwitchRequest:TIEEE80211TDLSDataChannelSwitchRequest);</code>
 +
| &nbsp;
 +
|-
 +
| <code>6:(ChannelSwitchResponse:TIEEE80211TDLSDataChannelSwitchResponse);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 P2P notice of absence description'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211P2PNOADescription = ^TIEEE80211P2PNOADescription;</code>
 +
 
 +
<code>TIEEE80211P2PNOADescription = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_p2p_noa_desc
 +
|-
 +
| <code>Count:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Duration:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>Interval:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>StartTime:LongWord;</code>
 +
| LE32
 +
|-
 +
|}
 +
</div></div> 
 +
 +
'''IEEE 802.11 P2P notice of absence attribute'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211P2PNOAAttribute = ^TIEEE80211P2PNOAAttribute;</code>
 +
 
 +
<code>TIEEE80211P2PNOAAttribute = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_p2p_noa_attr
 +
|-
 +
| <code>Index:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>OPPPS_CTWindow:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Description:array[0..IEEE80211_P2P_NOA_DESC_MAX - 1] of TIEEE80211P2PNOADescription;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 +
'''IEEE 802.11 HT block acknowledgement request'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211Bar = ^TIEEE80211Bar;</code>
 +
 
 +
<code>TIEEE80211Bar = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: This structure refers to "HT BlockAckReq" as described in 802.11n draft section 7.2.1.7.1
 +
From Linux ieee80211.h ieee80211_bar
 +
|-
 +
| <code>FrameControl:Word;</code>
 +
| LE16
 +
|-
 +
| <code>Duration:Word;</code>
 +
| LE16
 +
|-
 +
| <code>ReceiverAddress:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TransmitterAddress:THardwareAddress;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Control:Word;</code>
 +
| LE16
 +
|-
 +
| <code>StartSequenceNumber:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 HT MCS information'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211MCSInfo = ^TIEEE80211MCSInfo;</code>
 +
 
 +
<code>TIEEE80211MCSInfo = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_mcs_info
 +
|-
 +
| <code>RXMask:array[0..IEEE80211_HT_MCS_MASK_LEN - 1] of Byte;</code>
 +
| RX mask
 +
|-
 +
| <code>RXHighest:Word;</code>
 +
| Highest supported RX rate (LE16). If set represents the highest supported RX data rate in units of 1 Mbps. If this field is 0 this value should not be used to consider the highest RX data rate supported.
 +
|-
 +
| <code>TXParams:Byte;</code>
 +
| TX parameters
 +
|-
 +
| <code>Reserved:array[0..2] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 HT capabilities'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211HTCapabilities = ^TIEEE80211HTCapabilities;</code>
 +
 
 +
<code>TIEEE80211HTCapabilities = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: This structure is the "HT capabilities element" as described in 802.11n D5.0 7.3.2.57
 +
From Linux ieee80211.h ieee80211_ht_cap
 +
|-
 +
| <code>CapabilityInfo:Word;</code>
 +
| LE16
 +
|-
 +
| <code>AMPDUParamsInfo:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MCS:TIEEE80211MCSInfo;</code>
 +
| 16 bytes MCS information
 +
|-
 +
| <code>ExtendedHTCapInfo:Word;</code>
 +
| LE16
 +
|-
 +
| <code>TXBFCapInfo:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>AntennaSelectionInfo:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 HT operation'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211HTOperation = ^TIEEE80211HTOperation;</code>
 +
 
 +
<code>TIEEE80211HTOperation = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_ht_operation
 +
|-
 +
| <code>PrimaryChannel:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>HTParam:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>OperationMode:Word;</code>
 +
| LE16
 +
|-
 +
| <code>STBCParam:Word;</code>
 +
| LE16
 +
|-
 +
| <code>BasicSet:array[0..15] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''IEEE 802.11 VHT MCS information'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211VHTMCSInfo = ^TIEEE80211VHTMCSInfo;</code>
 +
 
 +
<code>TIEEE80211VHTMCSInfo = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_vht_mcs_info
 +
|-
 +
| <code>RXMCSMap:Word;</code>
 +
| LE16 RX MCS map 2 bits for each stream, total 8 streams
 +
|-
 +
| <code>RXHighest:Word;</code>
 +
| LE16 Indicates highest long GI VHT PPDU data rate STA can receive. Rate expressed in units of 1 Mbps. If this field is 0 this value should not be used to consider the highest RX data rate supported. The top 3 bits of this field are reserved.
 +
|-
 +
| <code>TXMCSMap:Word;</code>
 +
| LE16 TX MCS map 2 bits for each stream, total 8 streams
 +
|-
 +
| <code>TXHighest:Word;</code>
 +
| LE16 Indicates highest long GI VHT PPDU data rate STA can transmit. Rate expressed in units of 1 Mbps. If this field is 0 this value should not be used to consider the highest TX data rate supported. The top 3 bits of this field are reserved.
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 VHT capabilities'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211VHTCapabilities = ^TIEEE80211VHTCapabilities;</code>
 +
 
 +
<code>TIEEE80211VHTCapabilities = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: This structure is the "VHT capabilities element" as described in 802.11ac D3.0 8.4.2.160
 +
From Linux ieee80211.h ieee80211_vht_cap
 +
|-
 +
| <code>VHTCapabilityInfo:LongWord;</code>
 +
| LE32 VHT capability info
 +
|-
 +
| <code>SupportedMCS:TIEEE80211VHTMCSInfo;</code>
 +
| VHT MCS supported rates
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 VHT operation'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211VHTOperation = ^TIEEE80211VHTOperation;</code>
 +
 
 +
<code>TIEEE80211VHTOperation = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: This structure is the "VHT operation element" as described in 802.11ac D3.0 8.4.2.161
 +
From Linux ieee80211.h ieee80211_vht_operation
 +
|-
 +
| <code>ChannelWidth:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>CenterFreqSeg1Idx:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>CenterFreqSeg2Idx:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>BasicMCSSet:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 country triplet information element channels'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211CountryTripletIEChannels = packed record </code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>FirstChannel:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>NumChannels:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MaxPower:ShortInt;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 country triplet information element extended'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
 
 +
<code>TIEEE80211CountryTripletIEExt = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>RegExtensionID:Byte;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>RegClass:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>CoverageClass:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 country triplet information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211CountryTripletIE = ^TIEEE80211CountryTripletIE;</code>
 +
 
 +
<code>TIEEE80211CountryTripletIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: Channels numbers in the IE must be monotonically increasing if dot11RegulatoryClassesRequired is not true. If dot11RegulatoryClassesRequired is true consecutive subband triplets following a regulatory triplet shall have monotonically increasing first_channel number fields. Channel numbers shall not overlap. Note that MaxPower is signed.
 +
From Linux ieee80211.h ieee80211_country_ie_triplet
 +
|-
 +
| <code>case Integer of</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>0:(Channels:TIEEE80211CountryTripletIEChannels);</code>
 +
| &nbsp;
 +
|-
 +
| <code>1:(Ext:TIEEE80211CountryTripletIEExt);</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 +
'''IEEE 802.11 timeout interval information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211TimeoutIntervalIE = ^TIEEE80211TimeoutIntervalIE;</code>
 +
 
 +
<code>TIEEE80211TimeoutIntervalIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_timeout_interval_ie
 +
|-
 +
| <code>IntervalType:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Value:LongWord;</code>
 +
| LE32
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 Tspec information element'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211TSpecIE = ^TIEEE80211TSpecIE;</code>
 +
 
 +
<code>TIEEE80211TSpecIE = packed record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211.h ieee80211_tspec_ie
 +
|-
 +
| <code>ElementID:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Length:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>OUI:array[0..2] of Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>OUIType:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>OUISubType:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Version:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TSInfo:Word;</code>
 +
| LE16
 +
|-
 +
| <code>TSInfoReserved:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>NominalMSDU:Word;</code>
 +
| LE16
 +
|-
 +
| <code>MaxMSDU:Word;</code>
 +
| LE16
 +
|-
 +
| <code>MinServiceInt:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>MaxServiceInt:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>InactivityInt:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>SuspensionInt:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>ServiceStartTime:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>MinDataRate:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>MeanDataRate:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>PeakDataRate:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>MaxBurstRize:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>DelayBound:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>MinPhyRate:LongWord;</code>
 +
| LE32
 +
|-
 +
| <code>SBA:Word;</code>
 +
| LE16
 +
|-
 +
| <code>MediumTime:Word;</code>
 +
| LE16
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 channel'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211Channel = ^TIEEE80211Channel;</code>
 +
 
 +
<code>TIEEE80211Channel = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: These structures are NOT defined by IEEE 802.11 but are internal to the implementation
 +
From Linux cfg80211.h ieee80211_channel
 +
|-
 +
| <code>Band:LongWord;</code>
 +
| IEEE80211_BAND_2GHZ etc
 +
|-
 +
| <code>CenterFrequency:Word;</code>
 +
| &nbsp;
 +
|-
 +
| <code>HardwareChannel:Word;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Flags:LongWord;</code>
 +
| IEEE80211_CHAN_DISABLED etc
 +
|-
 +
| <code>MaxAntennaGain:LongInt;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MaxPower:LongInt;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MaxRegPower:LongInt;</code>
 +
| &nbsp;
 +
|-
 +
| <code>BeaconFound:LongBool;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 channels'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211Channels = ^TIEEE80211Channels;</code>
 +
 
 +
<code>TIEEE80211Channels = array[0..0] of TIEEE80211Channel;</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| &nbsp;
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''IEEE 802.11 rate'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211Rate = ^TIEEE80211Rate;</code>
 +
 
 +
<code>TIEEE80211Rate = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux cfg80211.h ieee80211_rate
 +
|-
 +
| <code>Flags:LongWord;</code>
 +
| Rate-specific flags
 +
|-
 +
| <code>BitRate:Word;</code>
 +
| Bitrate in units of 100 Kbps
 +
|-
 +
| <code>HardwareRate:Word;</code>
 +
| Driver/hardware value for this rate
 +
|-
 +
| <code>HardwareRateShort:Word;</code>
 +
| Driver/hardware value for this rate when short preamble is used
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 rates'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211Rates = ^TIEEE80211Rates;</code>
 +
 
 +
<code>TIEEE80211Rates = array[0..0] of TIEEE80211Rate;</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| &nbsp;
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 +
'''IEEE 802.11 channel definition'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211ChannelDefinition = ^TIEEE80211ChannelDefinition;</code>
 +
 
 +
<code>TIEEE80211ChannelDefinition = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Channel:PIEEE80211Channel;</code>
 +
| Control channel
 +
|-
 +
| <code>Width:LongWord;</code>
 +
| Channel width (See WIFI_CHAN_WIDTH_*)
 +
|-
 +
| <code>CenterFrequency1:LongWord;</code>
 +
| Center frequency of first segment
 +
|-
 +
| <code>CenterFrequency2:LongWord;</code>
 +
| Center frequency of second segment (only with 80+80 MHz)
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 station HT capabilities'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211StationHTCap = ^TIEEE80211StationHTCap;</code>
 +
 
 +
<code>TIEEE80211StationHTCap = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux cfg80211.h ieee80211_sta_ht_cap
 +
|-
 +
| <code>Capabilities:LongWord;</code>
 +
| HT capabilities map as described in 802.11n spec (eg IEEE80211_HT_CAP_*)
 +
|-
 +
| <code>HTSupported:LongBool;</code>
 +
| True if HT supported by the STA
 +
|-
 +
| <code>AMPDUFactor:LongWord;</code>
 +
| Maximum A-MPDU length factor
 +
|-
 +
| <code>AMPDUDensity:LongWord;</code>
 +
| Minimum A-MPDU spacing
 +
|-
 +
| <code>MCS:TIEEE80211MCSInfo;</code>
 +
| Supported MCS rates
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 station VHT capabilities'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211StationVHTCap = ^TIEEE80211StationVHTCap;</code>
 +
 
 +
<code>TIEEE80211StationVHTCap = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux cfg80211.h ieee80211_sta_vht_cap
 +
|-
 +
| <code>Capabilities:LongWord;</code>
 +
| VHT capabilities map as described in 802.11ac spec (eg IEEE80211_VHT_CAP_*)
 +
|-
 +
| <code>VHTSupported:LongBool;</code>
 +
| True if VHT supported by the STA
 +
|-
 +
| <code>VHTMCS:TIEEE80211VHTMCSInfo;</code>
 +
| Supported VHT MCS rates
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''IEEE 802.11 supported band'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211SupportedBand = ^TIEEE80211SupportedBand;</code>
 +
 
 +
<code>TIEEE80211SupportedBand = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux cfg80211.h ieee80211_supported_band
 +
|-
 +
| <code>Channels:PIEEE80211Channels;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Rates:PIEEE80211Rates;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ChannelCount:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RateCount:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>HTCapabilities:TIEEE80211StationHTCap;</code>
 +
| &nbsp;
 +
|-
 +
| <code>VHTCapabilities:TIEEE80211StationVHTCap;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 BSS configuration'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211BSSConfiguration = ^TIEEE80211BSSConfiguration;</code>
 +
 
 +
<code>TIEEE80211BSSConfiguration = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux mac80211.h ieee80211_bss_conf
 +
|-
 +
| <code>BSSID:PByte;</code>
 +
| The BSSID for this BSS
 +
|-
 +
|colspan="2"|''Association related''
 +
|-
 +
| <code>Associated:LongBool;</code>
 +
| Association status
 +
|-
 +
| <code>IBSSJoined:LongBool;</code>
 +
| Indicates whether this station is part of an IBSS or not
 +
|-
 +
| <code>IBSSCreator:LongBool;</code>
 +
| Indicates if a new IBSS network is being created
 +
|-
 +
| <code>AssociationID:Word;</code>
 +
| Association Id number, valid only when Associated is true
 +
|-
 +
|colspan="2"|''ERP related''
 +
|-
 +
| <code>UseCTSProtection:LongBool;</code>
 +
| Use CTS protection
 +
|-
 +
| <code>UseShortPreamble:LongBool;</code>
 +
| Use 802.11b short preamble (if the hardware cannot handle this it must set the IEEE80211_HW_2GHZ_SHORT_PREAMBLE_INCAPABLE flag)
 +
|-
 +
| <code>UseShortSlot:LongBool;</code>
 +
| Use short slot time (only relevant for ERP) (if the hardware cannot handle this it must set the IEEE80211_HW_2GHZ_SHORT_SLOT_INCAPABLE flag)
 +
|-
 +
| <code>EnableBeacon:LongBool;</code>
 +
| Whether beaconing should be enabled or not
 +
|-
 +
| <code>DTIMPeriod:Byte;</code>
 +
| No of beacons before the next DTIM, for beaconing, valid in station mode only if after the driver was notified with the BSS_CHANGED_BEACON_INFO flag, will be non-zero then.
 +
|-
 +
| <code>BeaconInterval:Word;</code>
 +
| Beacon interval
 +
|-
 +
| <code>AssociationCapability:Word;</code>
 +
| Capabilities taken from association response
 +
|-
 +
| <code>SyncTSF:Int64;</code>
 +
| Last beacon's/probe response's TSF timestamp (could be old as it may have been received during scanning long ago)
 +
|-
 +
| <code>SyncDeviceTS:LongWord;</code>
 +
| The device timestamp corresponding to the SyncTSF
 +
|-
 +
| <code>SyncDTIMCount:Byte;</code>
 +
| Only valid when IEEE80211_HW_TIMING_BEACON_ONLY is requested
 +
|-
 +
| <code>BasicRates:LongWord;</code>
 +
| Bitmap of basic rates, each bit stands for an index into the rate table configured by the driver in the current band
 +
|-
 +
| <code>BeaconRate:PIEEE80211Rate;</code>
 +
| Associated AP's beacon TX rate
 +
|-
 +
| <code>MulticastRate:array[0..IEEE80211_NUM_BANDS - 1] of Integer;</code>
 +
| Per-band multicast rate index + 1 (0: disabled)
 +
|-
 +
| <code>HTOperationMode:Word;</code>
 +
| HT operation mode like in TIEEE80211HTOperation
 +
|-
 +
| <code>CQMRSSIThreshold:LongInt;</code>
 +
| Connection quality monitor RSSI threshold, a zero value implies disabled.
 +
|-
 +
| <code>CQMRSSIHysteresis:LongWord;</code>
 +
| Connection quality monitor RSSI hysteresis
 +
|-
 +
| <code>ChannelDefinition:TIEEE80211ChannelDefinition;</code>
 +
| Channel definition for this BSS (the hardware might be configured a higher bandwidth than this BSS uses)
 +
|-
 +
| <code>QoS:LongBool;</code>
 +
| This is a QoS-enabled BSS
 +
|-
 +
| <code>Idle:LongBool;</code>
 +
| This interface is idle. There's also a global idle flag in the hardware config which may be more appropriate depending on what your driver/device needs to do.
 +
|-
 +
| <code>Powersave:LongBool;</code>
 +
| Power-save mode (STA only). This flag is NOT affected by offchannel/dynamic_ps operations.
 +
|-
 +
| <code>SSID:array[0..IEEE80211_MAX_SSID_LEN - 1] of Byte;</code>
 +
| The SSID of the current interface. Valid in AP and IBSS mode.
 +
|-
 +
| <code>SSIDLength:LongWord;</code>
 +
| Length of SSID given in SSID
 +
|-
 +
| <code>HiddenSSID:LongBool;</code>
 +
| The SSID of the current interface is hidden. Only valid in AP-mode.
 +
|-
 +
| <code>TXPower:LongInt;</code>
 +
| TX power in dBm
 +
|-
 +
| <code>TXPowerType:LongWord;</code>
 +
| TX power adjustment used to control per packet Transmit Power Control (TPC) in driver for the current interface (WIFI_TX_POWER_*)
 +
|-
 +
| <code>P2PNOAAttribute:TIEEE80211P2PNOAAttribute;</code>
 +
| P2P NoA attribute for P2P powersave
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''IEEE 802.11 RX status'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211RXStatus = ^TIEEE80211RXStatus;</code>
 +
 
 +
<code>TIEEE80211RXStatus = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux mac80211.h ieee80211_rx_status
 +
|-
 +
| <code>MACTime:Int64;</code>
 +
| Value in microseconds of the 64-bit Time Synchronization Function (TSF) timer when the first data symbol (MPDU) arrived at the hardware
 +
|-
 +
| <code>DeviceTimestamp:LongWord;</code>
 +
| Arbitrary timestamp for the device
 +
|-
 +
| <code>AMPDUReference:LongWord;</code>
 +
| A-MPDU reference number, must be a different value for each A-MPDU but the same for each subframe within one A-MPDU.
 +
|-
 +
| <code>Flags:LongWord;</code>
 +
| WIFI_RX_FLAG_*
 +
|-
 +
| <code>Frequency:Word;</code>
 +
| Frequency the radio was tuned to when receiving this frame, in MHz.
 +
|-
 +
| <code>VHTFlags:Byte;</code>
 +
| WIFI_RX_VHT_FLAG_*
 +
|-
 +
| <code>RateIndex:Byte;</code>
 +
| Index of data rate into band's supported rates or MCS index if HT or VHT is used (WIFI_RX_FLAG_HT/WIFI_RX_FLAG_VHT)
 +
|-
 +
| <code>VHTNSS:Byte;</code>
 +
| Number of streams (VHT only)
 +
|-
 +
| <code>RXFlags:Byte;</code>
 +
| Internal RX flags (IEEE80211_RX_*)
 +
|-
 +
| <code>Band:Byte;</code>
 +
| The active band when this frame was received
 +
|-
 +
| <code>Antenna:Byte;</code>
 +
| Antenna used
 +
|-
 +
| <code>Signal:Byte;</code>
 +
| Signal strength when receiving this frame, either in dBm, in dB or unspecified depending on the hardware capabilities flags IEEE80211_HW_SIGNAL_*
 +
|-
 +
| <code>Chains:Byte;</code>
 +
| Bitmask of receive chains for which separate signal strength values were filled
 +
|-
 +
| <code>ChainSignal:array[0..IEEE80211_MAX_CHAINS - 1] of Byte;</code>
 +
| Per-chain signal strength, in dBm (unlike Signal, doesn't support dB or unspecified units).
 +
|-
 +
| <code>AMPDUDelimiterCRC:Byte;</code>
 +
| A-MPDU delimiter CRC
 +
|-
 +
|}
 +
</div></div> 
 +
 +
'''IEEE 802.11 TX information'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211TXInfo = ^TIEEE80211TXInfo;</code>
 +
 
 +
<code>TIEEE80211TXInfo = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux mac80211.h ieee80211_tx_info
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
|}
 +
</div></div>
 +
 
 +
'''IEEE 802.11 information elements'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PIEEE80211InformationElements = ^TIEEE80211InformationElements;</code>
 +
 
 +
<code>TIEEE80211InformationElements = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|Note: From Linux ieee80211_i.h ieee802_11_elems
 +
|-
 +
| <code>Address:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Size:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|''Information Elements''
 +
|-
 +
| <code>LinkIdentifier:PIEEE80211TDLSLinkIdentifierIE;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ChannelSwitchTiming:PIEEE80211ChannelSwitchTiming;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ExtendedCapabilities:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SSID:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SupportedRates:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DSParameters:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TrafficIndicationMap:PIEEE80211TrafficIndicationMapIE;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ChallengeText:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RSN:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ERPInfo:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ExtendedSupportedRates:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>WMMInfo:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>WMMParam:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>HTCapabilities:PIEEE80211HTCapabilities;</code>
 +
| &nbsp;
 +
|-
 +
| <code>HTOperation:PIEEE80211HTOperation;</code>
 +
| &nbsp;
 +
|-
 +
| <code>VHTCapabilities:PIEEE80211VHTCapabilities;</code>
 +
| &nbsp;
 +
|-
 +
| <code>VHTOperation:PIEEE80211VHTOperation;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MeshConfiguration:PIEEE80211MeshConfigurationIE;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MeshID:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PeerManagement:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MeshAwakeWindow:Word;</code>
 +
| LE16
 +
|-
 +
| <code>PREQ:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PREP:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PERR:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RootAnnouncement:PIEEE80211RootAnnouncementIE;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ChannelSwitch:PIEEE80211ChannelSwitchIE;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ExtChannelSwitch:PIEEE80211ExtChannelSwitchIE;</code>
 +
| &nbsp;
 +
|-
 +
| <code>WidebandChannelSwitch:PIEEE80211WidebandChannelSwitchIE;</code>
 +
| &nbsp;
 +
|-
 +
| <code>Country:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PowerConstraint:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>CiscoDTPC:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TimeoutInterval:PIEEE80211TimeoutIntervalIE;</code>
 +
| &nbsp;
 +
|-
 +
| <code>OpmodeNotification:Pointer;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SecondaryChannelOffset:PIEEE80211SecondaryChannelOffsetIE;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MeshChannelSwitchParams:PIEEE80211MeshChannelSwitchParamsIE;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|''Lengths of Elements''
 +
|-
 +
| <code>ExtendedCapabilitiesLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SSIDLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>SupportedRatesLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>TrafficIndicationMapLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ChallengeTextLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>RSNLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>ExtendedSupportedRatesLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>WMMInfoLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>WMMParamLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>MeshIDLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PeerManagementLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PREQLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PREPLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>PERRLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
| <code>CountryLength:Byte;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''WiFi device event'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PWiFiDeviceEvent = ^TWiFiDeviceEvent;</code>
 +
 
 +
<code>TWiFiDeviceEvent = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Timer:TTimerHandle;</code>
 +
| style="width: 50%;"|&nbsp;
 +
|-
 +
| <code>Device:PNetworkDevice;</code>
 +
| &nbsp;
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''WiFi hardware'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PWiFiHardware = ^TWiFiHardware;</code>
 +
 
 +
<code>TWiFiHardware = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Flags:LongWord;</code>
 +
| Hardware flags (See IEEE80211_HW_*)
 +
|-
 +
| <code>ExtraTXHeadroom:LongWord;</code>
 +
| Headroom to reserve in each transmit buffer for use by the driver (e.g. for transmit headers)
 +
|-
 +
| <code>ExtraBeaconTailroom:LongWord;</code>
 +
| Tailroom to reserve in each beacon tx buffer. Can be used by drivers to add extra IE.
 +
|-
 +
| <code>MaxListenInterval:LongWord;</code>
 +
| Max listen interval in units of beacon interval that HW supports
 +
|-
 +
| <code>MaxSignal:LongInt;</code>
 +
| Maximum value for signal (RSSI) in RX information
 +
|-
 +
| <code>MaxRates:LongWord;</code>
 +
| Maximum number of alternate rate retry stages the hw can handle
 +
|-
 +
| <code>MaxReportRates:LongWord;</code>
 +
| Maximum number of alternate rate retry stages the hw can report back
 +
|-
 +
| <code>MaxRateTries:LongWord;</code>
 +
| Maximum number of tries for each stage
 +
|-
 +
| <code>MaxRXAggregationSubframes:LongWord;</code>
 +
| Maximum buffer size (number of sub-frames) to be used for A-MPDU block ack receiver aggregation
 +
|-
 +
| <code>MaxTXAggregationSubframes:LongWord;</code>
 +
| Maximum number of subframes in an aggregate an HT driver will transmit, used by the peer as a hint to size its reorder buffer.
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''WiFi configuration'''
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PWiFiConfiguration = ^TWiFiConfiguration;</code>
 +
 
 +
<code>TWiFiConfiguration = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>Flags:LongWord;</code>
 +
| Configuration flags (See IEEE80211_CONF_*)
 +
|-
 +
| <code>PowerLevel:LongInt;</code>
 +
| Requested transmit power (in dBm), backward compatibility value only that is set to the minimum of all interfaces.
 +
|-
 +
| <code>ListenInterval:LongWord;</code>
 +
| Listen interval in units of beacon interval
 +
|-
 +
| <code>LongFrameMaxTXCount:LongWord;</code>
 +
| Maximum number of transmissions for a "long" frame (a frame not RTS protected), called "dot11LongRetryLimit" in 802.11, but actually means the number of transmissions not the number of retries.
 +
|-
 +
| <code>ShortFrameMaxTXCount:LongWord;</code>
 +
| Maximum number of transmissions for a "short" frame, called "dot11ShortRetryLimit" in 802.11, but actually means the number of transmissions not the number of retries.
 +
|-
 +
| <code>RadarEnabled:LongBool;</code>
 +
| Whether radar detection is enabled
 +
|-
 +
| <code>SMPSMode:LongWord;</code>
 +
| Spatial multiplexing powersave mode. Note that IEEE80211_SMPS_STATIC is used when the device is not configured for an HT channel.
 +
|-
 +
| <code>ChannelDefinition:TIEEE80211ChannelDefinition;</code>
 +
| The channel definition to tune to
 +
|-
 +
|}
 +
</div></div> 
 +
 
 +
'''WiFi interface''' 
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PWiFiInterface = ^TWiFiInterface;</code>
 +
 
 +
<code>TWiFiInterface = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
| <code>InterfaceType:LongWord;</code>
 +
| Type of this virtual interface (WIFI_IFTYPE_*)
 +
|-
 +
| <code>Address:THardwareAddress;</code>
 +
| Address of this interface
 +
|-
 +
| <code>BSSConfiguration:TIEEE80211BSSConfiguration;</code>
 +
| BSS configuration for this interface, either our own or the BSS we're associated to.
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>DriverFlags:LongWord;</code>
 +
| Interface specific flags (IEEE80211_VIF_*)
 +
|-
 +
|}
 +
</div></div> 
 +
 +
'''WiFi device configure'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TWiFiDeviceConfigure = function(WiFi:PWiFiDevice; Flags:LongWord):LongWord;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''WiFi device configure filter'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TWiFiDeviceConfigureFilter = function(WiFi:PWiFiDevice; var Filter:LongWord):LongWord;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''WiFi device configuration interface'''
 +
 
 +
{| class="wikitable" style="font-size: 14px; text-align: left; width: 100%; height: 50px;"
 +
|-
 +
| <code>TWiFiDeviceConfigureInterface = function(WiFi:PWiFiDevice; Interrface:PWiFiInterface):LongWord;</code>
 +
| style="width: 40%;"|
 +
|-
 +
|}
 +
 
 +
'''WiFi device''' 
 +
 
 +
<div class="toccolours mw-collapsible mw-collapsed" style="border: 1; font-family: arial;">
 +
<code>PWiFiDevice = ^TWiFiDevice;</code>
 +
 
 +
<code>TWiFiDevice = record</code>
 +
<div class="mw-collapsible-content" style="text-align: left; padding-left: 5px;">
 +
{| class="wikitable" style="font-size: 14px; background: white;"
 +
|-
 +
|colspan="2"|''Network Properties''
 +
|-
 +
| <code>Network:TNetworkDevice;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|''WiFi Properties''
 +
|-
 +
| <code>WiFiFlags:LongWord;</code>
 +
| Flags for this WiFi device (eg WIFI_FLAG_*)
 +
|-
 +
| <code>WiFiState:LongWord;</code>
 +
| State of this WiFi device (eg WIFI_STATE_*)
 +
|-
 +
| <code>WiFiStatus:LongWord;</code>
 +
| Status of this WiFi device (eg WIFI_STATUS_*)
 +
|-
 +
| <code>WiFiFeatures:LongWord;</code>
 +
| Features of this WiFi device (eg WIFI_FEATURE_*)
 +
|-
 +
| <code>DeviceConfigure:TWiFiDeviceConfigure;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DeviceConfigureFilter:TWiFiDeviceConfigureFilter;</code>
 +
| &nbsp;
 +
|-
 +
| <code>DeviceConfigureInterface:TWiFiDeviceConfigureInterface;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>PermanentAddress:THardwareAddress;</code>
 +
| The permanent MAC address of this device
 +
|-
 +
| <code>AddressMask:THardwareAddress;</code>
 +
| If the device supports multiple MAC addresses by masking, set this to a mask with variable bits set to 1, e.g. if the last four bits are variable then set it to 00-00-00-00-00-0f
 +
|-
 +
| <code>Addresses:PHardwareAddresses;</code>
 +
| If the device has more than one address, set this to a list of addresses (6 bytes each). The first one will be used by default for PermanentAddress. In this case, the mask should be set to all zeroes.
 +
|-
 +
| <code>AddressCount:LongWord;</code>
 +
| The number of addresses in Addresses array
 +
|-
 +
| <code>InterfaceModes:LongWord;</code>
 +
| Bitmask of interfaces types valid for this wifi, must be set by driver (eg 1 shl WIFI_IFTYPE_*)
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>SignalType:LongWord;</code>
 +
| Signal type reported in bss
 +
|-
 +
| <code>RetryShort:LongWord;</code>
 +
| Retry limit for short frames (dot11ShortRetryLimit)
 +
|-
 +
| <code>RetryLong:LongWord;</code>
 +
| Retry limit for long frames (dot11LongRetryLimit)
 +
|-
 +
| <code>FragThreshold:LongWord;</code>
 +
| Fragmentation threshold (dot11FragmentationThreshold); -1 = fragmentation disabled, only odd values >= 256 used
 +
|-
 +
| <code>RTSThreshold:LongWord;</code>
 +
| RTS threshold (dot11RTSThreshold); -1 = RTS/CTS disabled
 +
|-
 +
| <code>CoverageClass:LongWord;</code>
 +
| Current coverage class
 +
|-
 +
| <code>MaxCSACounters:Byte;</code>
 +
| Number of supported csa_counters in beacons and probe responses
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>MaxScanSSIDs:Byte;</code>
 +
| Maximum number of SSIDs the device can scan for in any given scan
 +
|-
 +
| <code>MaxScanIELength:Word;</code>
 +
| Maximum length of user-controlled IEs device can add to probe request frames transmitted during a scan, must not include fixed IEs like supported rates.
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>MaxRemainOnChannelDuration:Word;</code>
 +
| Maximum time a remain-on-channel operation may request, if implemented.
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>CipherSuites:PLongWord;</code>
 +
| &nbsp;
 +
|-
 +
| <code>CipherSuiteCount:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>Bands:array[0..IEEE80211_NUM_BANDS - 1] of PIEEE80211SupportedBand;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>RXChains:LongWord;</code>
 +
| Number of RX chains the hardware has
 +
|-
 +
| <code>TXHeadroom:LongWord;</code>
 +
| Required headroom for hardware
 +
|-
 +
| <code>ScanIELength:LongWord;</code>
 +
| &nbsp;
 +
|-
 +
|colspan="2"|&nbsp;
 +
|-
 +
| <code>Hardware:TWiFiHardware;</code>
 +
| Hardware information and state
 +
|-
 +
| <code>Configuration:TWiFiConfiguration;</code>
 +
| Configuration of the device
 +
|-
 +
| <code>Interrface:TWiFiInterface;</code>
 +
| Interface of the device
 +
|-
 +
|colspan="2"|''Driver Properties''
 +
|-
 +
|colspan="2"|&nbsp;
 +
|}
 +
</div></div>
 +
<br />
  
 
=== Public variables ===
 
=== Public variables ===

Revision as of 04:18, 27 June 2017

Return to Unit Reference


Description


Ultibo WiFi (IEEE 802.11 / WPA) interface unit

To be documented

Constants



[Expand]
IEEE 802.11 specific constants IEEE80211_*


[Expand]
IEEE 802.11 management IEEE80211_STYPE_ASSOC_*


[Expand]
IEEE 802.11 control IEEE80211_STYPE_CTL_*


[Expand]
IEEE 802.11 data IEEE80211_STYPE_DATA*


[Expand]
IEEE 802.11 extension IEEE80211_STYPE_DMG_*


[Expand]
IEEE 802.11 control extension IEEE80211_CTL_EXT_*


[Expand]
IEEE 802.11 miscellaneous constants IEEE80211_MAX_*, IEEE80211_NUM_*


[Expand]
IEEE 802.11 QOS control lengths IEEE80211_QOS_CTL_LEN*


[Expand]
IEEE 802.11 QOS control masks IEEE80211_QOS_CTL_*_MASK*


[Expand]
IEEE 802.11 WMM IE U-APSD queue sent by AP IEEE80211_WMM_IE_AP_*


[Expand]
IEEE 802.11 WMM IE U-APSD queue sent by STA IEEE80211_WMM_IE_STA_*


[Expand]
IEEE 802.11 WMM IE U-APSD max SP length sent by STA IEEE80211_WMM_IE_STA_*_SP_*


[Expand]
IEEE 802.11 HT control lengths IEEE80211_HT_CTL_LEN*


[Expand]
IEEE 802.11 mesh flags IEEE80211_MESH_FLAGS_*


[Expand]
IEEE 802.11 mesh PREQ element flags IEEE80211_PREQ_PROACTIVE_*_FLAG*


[Expand]
IEEE 802.11 mesh PREQ element per target flags IEEE80211_PREQ_*_FLAG*


[Expand]
IEEE 802.11 mesh configuration IE capability field flags IEEE80211_MESHCONF_CAPAB_*


[Expand]
WLAN mesh channel switch parameters flags WLAN_EID_CHAN_SWITCH_PARAM_*


[Expand]
IEEE 802.11 root announcement flags IEEE80211_RANN_FLAG_*


[Expand]
IEEE 802.11 HT channel width values IEEE80211_HT_CHANWIDTH_*


[Expand]
IEEE 802.11 VHT operating mode field bits IEEE80211_OPMODE_*


[Expand]
WLAN SA query length WLAN_SA_QUERY_*_*_LEN*


[Expand]
IEEE 802.11 supported rate values IEEE80211_BSS_*


[Expand]
IEEE 802.11 peer-to-peer attribute related definitions IEEE80211_P2P_*


[Expand]
IEEE 802.11 BAR control masks IEEE80211_BAR_CTRL_*


[Expand]
IEEE 802.11 HT MCS lengths IEEE80211_HT_MCS_*_LEN*


[Expand]
IEEE 802.11 HT MCS capability settings IEEE80211_HT_MCS_*


[Expand]
IEEE 802.11 HT capabilities masks IEEE80211_HT_CAP_*


[Expand]
IEEE 802.11 HT extended capabilities masks IEEE80211_HT_EXT_CAP_*


[Expand]
IEEE 802.11 HT AMPDU capability settings IEEE80211_HT_AMPDU_PARM_*


[Expand]
IEEE 802.11 HT maximum lengths IEEE80211_HT_MAX_AMPDU_*


[Expand]
IEEE 802.11 VHT maximum lengths IEEE80211_VHT_MAX_AMPDU_*


[Expand]
IEEE 802.11 HT MPDU start spacing IEEE80211_HT_MPDU_DENSITY_*


[Expand]
IEEE 802.11 HT operation parameters IEEE80211_HT_PARAM_*


[Expand]
IEEE 802.11 HT operation modes IEEE80211_HT_OP_MODE_*


[Expand]
IEEE 802.11 HT STBC parameters IEEE80211_HT_STBC_PARAM_*


[Expand]
IEEE 802.11 block-ack parameters IEEE80211_*_PARAM_*


[Expand]
IEEE 802.11 A-PMDU buffer sizes IEEE80211_*_AMPDU_BUF*


[Expand]
WLAN HT spatial multiplexing power save modes WLAN_HT_CAP_SM_PS_*


[Expand]
WLAN HT SM power control fields WLAN_HT_SMPS_CONTROL_*


[Expand]
IEEE 802.11 VHT MCS support definitions IEEE80211_VHT_MCS_SUPPORT_*


[Expand]
IEEE 802.11 VHT channel width IEEE80211_VHT_CHANWIDTH_*


[Expand]
IEEE 802.11 VHT capabilities IEEE80211_VHT_CAP_*


[Expand]
WLAN authentication algorithms WLAN_AUTH_*


[Expand]
WLAN capabilities WLAN_CAPABILITY_*


[Expand]
IEEE 802.11 spectrum measurement IEEE80211_SPCT_MSR_*


[Expand]
WLAN ERP information element WLAN_ERP_*


[Expand]
WLAN ERP barker preamble values WLAN_ERP_PREAMBLE_*


[Expand]
IEEE 802.11 band Id IEEE80211_BANDID_*


[Expand]
WLAN status codes WLAN_STATUS_*


[Expand]
WLAN reason codes WLAN_REASON_*


[Expand]
WLAN information element Ids WLAN_EID_*


[Expand]
WLAN action category codes WLAN_CATEGORY_*


[Expand]
WLAN spectrum action codes WLAN_ACTION_SPCT_*


[Expand]
WLAN HT action codes WLAN_HT_ACTION_*


[Expand]
WLAN VHT action codes WLAN_VHT_ACTION_*


[Expand]
WLAN self protected action codes WLAN_SP_*


[Expand]
WLAN mesh action codes WLAN_MESH_ACTION_*


[Expand]
WLAN security key lengths WLAN_KEY_LEN_*


[Expand]
IEEE 802.11 security key lengths IEEE80211_*_LEN


[Expand]
WLAN public action codes WLAN_PUB_ACTION_*


[Expand]
WLAN TDLS action codes WLAN_TDLS_*


[Expand]
WLAN extended channel switching capabilities 1st byte WLAN_EXT_CAPA1_EXT_CHANNEL_SWITCHING*


[Expand]
WLAN extended TDLS capabilities 4th byte WLAN_EXT_CAPA4_TDLS_*


[Expand]
WLAN extended interworking capabilities 4th byte WLAN_EXT_CAPA4_INTERWORKING_*


[Expand]
WLAN extended TDLS capabilities 5th byte WLAN_EXT_CAPA5_TDLS_*


[Expand]
WLAN extended TDLS capabilities 8th byte WLAN_EXT_CAPA8_TDLS_*


[Expand]
WLAN TDLS specific payload type WLAN_TDLS_*_RFTYPE*


[Expand]
WLAN coex IE information field bits WLAN_*_COEX_INFORMATION_*


[Expand]
IEEE 802.11 mesh synchronization method identifier IEEE80211_SYNC_METHOD_*


[Expand]
IEEE 802.11 mesh path selection protocol identifier IEEE80211_PATH_PROTOCOL_*


[Expand]
IEEE 802.11 mesh path selection metric identifier IEEE80211_PATH_METRIC_*


[Expand]
IEEE 802.11 root mesh STA mode identifier IEEE80211_ROOTMODE_*


[Expand]
IEEE 802.11 country information element IEEE80211_COUNTRY_*


[Expand]
WLAN timeout interval WLAN_TIMEOUT_*


[Expand]
WLAN block-ack action code WLAN_ACTION_*


[Expand]
WLAN block-ack parties WLAN_BACK_*


[Expand]
WLAN SA query action WLAN_ACTION_SA_QUERY_*


[Expand]
WLAN cipher suite selectors WLAN_CIPHER_SUITE_*


[Expand]
WLAN AKM suite selectors WLAN_AKM_SUITE_*


[Expand]
WLAN key lengths WLAN_*_KEY_LEN*


[Expand]
WLAN OUI types WLAN_OUI_WFA*


[Expand]
IEEE 802.11 Tspec element IEEE80211_WMM_IE_TSPEC_TID_*


[Expand]
IEEE 802.11 Tspec status IEEE80211_TSPEC_STATUS_*


[Expand]
IEEE 802.11 frequency bands IEEE80211_BAND_*


[Expand]
IEEE 802.11 channel flags IEEE80211_CHAN_*


[Expand]
IEEE 802.11 DFS times IEEE80211_DFS_MIN_*_TIME_MS*


[Expand]
IEEE 802.11 rate flags IEEE80211_RATE_*


[Expand]
IEEE 802.11 BSS type values IEEE80211_BSS_TYPE_*


[Expand]
IEEE 802.11 privacy values IEEE80211_PRIVACY_*


[Expand]
IEEE 802.11 filter flags IEEE80211_FIF_*


[Expand]
IEEE 802.11 hardware flags IEEE80211_HW_*


[Expand]
IEEE 802.11 configuration flags IEEE80211_CONF_*


[Expand]
IEEE 802.11 configuration changed flags IEEE80211_CONF_CHANGE_*


[Expand]
IEEE 802.11 TX status headroom IEEE80211_TX_STATUS_HEADROOM_*


[Expand]
IEEE 802.11 max CSA counters IEEE80211_MAX_CSA_COUNTERS_*


[Expand]
WiFi specific constants WIFI_*


[Expand]
WiFi device states WIFI_STATE_*


[Expand]
WiFi device status WIFI_STATUS_*


[Expand]
WiFi device flags WIFI_FLAG_*


[Expand]
WiFi device features WIFI_FEATURE_*


[Expand]
WiFi device LED values WIFI_LED_*


[Expand]
WiFi interface types WIFI_IFTYPE_*


[Expand]
WiFi channel types WIFI_CHAN_*


[Expand]
WiFi channel widths WIFI_CHAN_WIDTH_*


[Expand]
WiFi signal types WIFI_SIGNAL_TYPE_*


[Expand]
WiFi TX power adjustment WIFI_TX_POWER_*


[Expand]
WiFi RX flags WIFI_RX_FLAG_*


[Expand]
WiFi RX VHT flags WIFI_RX_VHT_FLAG_*


Type definitions



IEEE 802.11 header

[Expand]

PIEEE80211Header = ^TIEEE80211Header;

TIEEE80211Header = record

IEEE 802.11 header 3 address

[Expand]

PIEEE80211Header3Address = ^TIEEE80211Header3Address;

TIEEE80211Header3Address = record

IEEE 802.11 QOS header

[Expand]

PIEEE80211QOSHeader = ^TIEEE80211QOSHeader;

TIEEE80211QOSHeader = record

IEEE 802.11 S header

[Expand]

PIEEE80211SHeader = ^TIEEE80211SHeader;

TIEEE80211SHeader = record

IEEE 802.11 quiet information element

[Expand]

PIEEE80211QuietIE = ^TIEEE80211QuietIE;

TIEEE80211QuietIE = packed record

IEEE 802.11 measurement request/report information element

[Expand]

PIEEE80211MeasurementIE = ^TIEEE80211MeasurementIE;

TIEEE80211MeasurementIE = packed record

IEEE 802.11 channel switch announcement information element

[Expand]

PIEEE80211ChannelSwitchIE = ^TIEEE80211ChannelSwitchIE;

TIEEE80211ChannelSwitchIE = packed record

IEEE 802.11 extended channel switch announcement information element

[Expand]

PIEEE80211ExtChannelSwitchIE = ^TIEEE80211ExtChannelSwitchIE;

TIEEE80211ExtChannelSwitchIE = packed record

IEEE 802.11 secondary channel offset information element

[Expand]

PIEEE80211SecondaryChannelOffsetIE = ^TIEEE80211SecondaryChannelOffsetIE;

TIEEE80211SecondaryChannelOffsetIE = packed record

IEEE 802.11 mesh channel switch parameters information element

[Expand]

PIEEE80211MeshChannelSwitchParamsIE = ^TIEEE80211MeshChannelSwitchParamsIE;

TIEEE80211MeshChannelSwitchParamsIE = packed record

IEEE 802.11 wide bandwidth channel switch information element

[Expand]

PIEEE80211WidebandChannelSwitchIE = ^TIEEE80211WidebandChannelSwitchIE;

TIEEE80211WidebandChannelSwitchIE = packed record

IEEE 802.11 traffic indication map information element

[Expand]

PIEEE80211TrafficIndicationMapIE = ^TIEEE80211TrafficIndicationMapIE;

TIEEE80211TrafficIndicationMapIE = packed record

IEEE 802.11 mesh configuration information element

[Expand]

PIEEE80211MeshConfigurationIE = ^TIEEE80211MeshConfigurationIE;

TIEEE80211MeshConfigurationIE = packed record

IEEE 802.11 root announcement information element

[Expand]

PIEEE80211RootAnnouncementIE = ^TIEEE80211RootAnnouncementIE;

TIEEE80211RootAnnouncementIE = packed record

IEEE 802.11 TPC report information element

[Expand]

PIEEE80211TPCReportIE = ^TIEEE80211TPCReportIE;

TIEEE80211TPCReportIE = packed record

IEEE 802.11 management authority

[Expand]

TIEEE80211ManagementAuth = packed record

IEEE 802.11 management deauthority

[Expand]

TIEEE80211ManagementDeauth = packed record

IEEE 802.11 management association request

[Expand]

TIEEE80211ManagementAssocRequest = packed record

IEEE 802.11 management association response

[Expand]

TIEEE80211ManagementAssocResponse = packed record

IEEE 802.11 management reassociation request

[Expand]

TIEEE80211ManagementReassocRequest = packed record

IEEE 802.11 management disassociation

[Expand]

TIEEE80211ManagementDisassoc = packed record

IEEE 802.11 management beacon

[Expand]

TIEEE80211ManagementBeacon = packed record

IEEE 802.11 management probe request

[Expand]

TIEEE80211ManagementProbeRequest = packed record

IEEE 802.11 management probe response

[Expand]

TIEEE80211ManagementProbeResponse = packed record

IEEE 802.11 management action WME action

[Expand]

TIEEE80211ManagementActionWMEAction = packed record

IEEE 802.11 management action channel switch

[Expand]

TIEEE80211ManagementActionChannelSwitch = packed record

IEEE 802.11 management action extended channel switch

[Expand]

TIEEE80211ManagementActionExtChannelSwitch = packed record

IEEE 802.11 management action measurement

[Expand]

TIEEE80211ManagementActionMeasurement = packed record

IEEE 802.11 management action add BA request

[Expand]

TIEEE80211ManagementActionAddBARequest = packed record

IEEE 802.11 management action add BA response

[Expand]

TIEEE80211ManagementActionAddBAResponse = packed record

IEEE 802.11 management action delete BA

[Expand]

TIEEE80211ManagementActionDelBA = packed record

IEEE 802.11 management action self protection

[Expand]

TIEEE80211ManagementActionSelfProt = packed record

IEEE 802.11 management action mesh action

[Expand]

TIEEE80211ManagementActionMeshAction = packed record

IEEE 802.11 management action SA query

[Expand]

TIEEE80211ManagementActionSAQuery = packed record

IEEE 802.11 management action HTSMPS

[Expand]

TIEEE80211ManagementActionHTSMPS = packed record

IEEE 802.11 management action HT notify channel width

[Expand]

TIEEE80211ManagementActionHTNotifyChannelWidth = packed record

IEEE 802.11 management action TDLS discover response

[Expand]

TIEEE80211ManagementActionTDLSDiscoverResponse = packed record

IEEE 802.11 management action VHT opmode notify

[Expand]

TIEEE80211ManagementActionVHTOpmodeNotify = packed record

IEEE 802.11 management action TPC report

[Expand]

TIEEE80211ManagementActionTPCReport = packed record

IEEE 802.11 management action

[Expand]

TIEEE80211ManagementAction = packed record

IEEE 802.11 management

[Expand]

PIEEE80211Management = ^TIEEE80211Management;

TIEEE80211Management = record

IEEE 802.11 management MIC information element (IEEE 802.11w)

[Expand]

PIEEE80211ManagementMICIE = ^TIEEE80211ManagementMICIE;

TIEEE80211ManagementMICIE = packed record

IEEE 802.11 management MIC information element (IEEE 802.11w) for GMAC and CMAC-256

[Expand]

PIEEE80211ManagementMIC16IE = ^TIEEE80211ManagementMIC16IE;

TIEEE80211ManagementMIC16IE = packed record

IEEE 802.11 vendor information element

[Expand]

PIEEE80211VendorIE = ^TIEEE80211VendorIE;

TIEEE80211VendorIE = packed record

IEEE 802.11 WMM AC parameters

[Expand]

PIEEE80211WMMACParam = ^TIEEE80211WMMACParam;

TIEEE80211WMMACParam = packed record

IEEE 802.11 WMM parameters information element

[Expand]

PIEEE80211WMMParamIE = ^TIEEE80211WMMParamIE;

TIEEE80211WMMParamIE = packed record

IEEE 802.11 RTS

[Expand]

PIEEE80211RTS = ^TIEEE80211RTS;

TIEEE80211RTS = record

IEEE 802.11 CTS

[Expand]

PIEEE80211CTS = ^TIEEE80211CTS;

TIEEE80211CTS = record

IEEE 802.11 PS poll

[Expand]

PIEEE80211PSPoll = ^TIEEE80211PSPoll;

TIEEE80211PSPoll = record

IEEE 802.11 channel switch timing

[Expand]

PIEEE80211ChannelSwitchTiming = ^TIEEE80211ChannelSwitchTiming;

TIEEE80211ChannelSwitchTiming = packed record

IEEE 802.11 TDLS link-id information element

[Expand]

PIEEE80211TDLSLinkIdentifierIE = ^TIEEE80211TDLSLinkIdentifierIE;

TIEEE80211TDLSLinkIdentifierIE = packed record

IEEE 802.11 TDLS data setup request

[Expand]

TIEEE80211TDLSDataSetupRequest = packed record

IEEE 802.11 TDLS data setup response

[Expand]

TIEEE80211TDLSDataSetupResponse = packed record

IEEE 802.11 TDLS data setup confirmation

[Expand]

TIEEE80211TDLSDataSetupConfirm = packed record

IEEE 802.11 TDLS data teardown

[Expand]

TIEEE80211TDLSDataTeardown = packed record

IEEE 802.11 TDLS data discover request

[Expand]

TIEEE80211TDLSDataDiscoverRequest = packed record

IEEE 802.11 TDLS data channel switch request

[Expand]

TIEEE80211TDLSDataChannelSwitchRequest = packed record

IEEE 802.11 TDLS data channel switch response

[Expand]

TIEEE80211TDLSDataChannelSwitchResponse = packed record

IEEE 802.11 TDLS data

[Expand]

PIEEE80211TDLSData = ^TIEEE80211TDLSData;

TIEEE80211TDLSData = packed record

IEEE 802.11 P2P notice of absence description

[Expand]

PIEEE80211P2PNOADescription = ^TIEEE80211P2PNOADescription;

TIEEE80211P2PNOADescription = packed record

IEEE 802.11 P2P notice of absence attribute

[Expand]

PIEEE80211P2PNOAAttribute = ^TIEEE80211P2PNOAAttribute;

TIEEE80211P2PNOAAttribute = packed record

IEEE 802.11 HT block acknowledgement request

[Expand]

PIEEE80211Bar = ^TIEEE80211Bar;

TIEEE80211Bar = packed record

IEEE 802.11 HT MCS information

[Expand]

PIEEE80211MCSInfo = ^TIEEE80211MCSInfo;

TIEEE80211MCSInfo = packed record

IEEE 802.11 HT capabilities

[Expand]

PIEEE80211HTCapabilities = ^TIEEE80211HTCapabilities;

TIEEE80211HTCapabilities = packed record

IEEE 802.11 HT operation

[Expand]

PIEEE80211HTOperation = ^TIEEE80211HTOperation;

TIEEE80211HTOperation = packed record

IEEE 802.11 VHT MCS information

[Expand]

PIEEE80211VHTMCSInfo = ^TIEEE80211VHTMCSInfo;

TIEEE80211VHTMCSInfo = packed record

IEEE 802.11 VHT capabilities

[Expand]

PIEEE80211VHTCapabilities = ^TIEEE80211VHTCapabilities;

TIEEE80211VHTCapabilities = packed record

IEEE 802.11 VHT operation

[Expand]

PIEEE80211VHTOperation = ^TIEEE80211VHTOperation;

TIEEE80211VHTOperation = packed record

IEEE 802.11 country triplet information element channels

[Expand]

TIEEE80211CountryTripletIEChannels = packed record

IEEE 802.11 country triplet information element extended

[Expand]

TIEEE80211CountryTripletIEExt = packed record

IEEE 802.11 country triplet information element

[Expand]

PIEEE80211CountryTripletIE = ^TIEEE80211CountryTripletIE;

TIEEE80211CountryTripletIE = packed record

IEEE 802.11 timeout interval information element

[Expand]

PIEEE80211TimeoutIntervalIE = ^TIEEE80211TimeoutIntervalIE;

TIEEE80211TimeoutIntervalIE = packed record

IEEE 802.11 Tspec information element

[Expand]

PIEEE80211TSpecIE = ^TIEEE80211TSpecIE;

TIEEE80211TSpecIE = packed record

IEEE 802.11 channel

[Expand]

PIEEE80211Channel = ^TIEEE80211Channel;

TIEEE80211Channel = record

IEEE 802.11 channels

[Expand]

PIEEE80211Channels = ^TIEEE80211Channels;

TIEEE80211Channels = array[0..0] of TIEEE80211Channel;

IEEE 802.11 rate

[Expand]

PIEEE80211Rate = ^TIEEE80211Rate;

TIEEE80211Rate = record

IEEE 802.11 rates

[Expand]

PIEEE80211Rates = ^TIEEE80211Rates;

TIEEE80211Rates = array[0..0] of TIEEE80211Rate;

IEEE 802.11 channel definition

[Expand]

PIEEE80211ChannelDefinition = ^TIEEE80211ChannelDefinition;

TIEEE80211ChannelDefinition = record

IEEE 802.11 station HT capabilities

[Expand]

PIEEE80211StationHTCap = ^TIEEE80211StationHTCap;

TIEEE80211StationHTCap = record

IEEE 802.11 station VHT capabilities

[Expand]

PIEEE80211StationVHTCap = ^TIEEE80211StationVHTCap;

TIEEE80211StationVHTCap = record

IEEE 802.11 supported band

[Expand]

PIEEE80211SupportedBand = ^TIEEE80211SupportedBand;

TIEEE80211SupportedBand = record

IEEE 802.11 BSS configuration

[Expand]

PIEEE80211BSSConfiguration = ^TIEEE80211BSSConfiguration;

TIEEE80211BSSConfiguration = record

IEEE 802.11 RX status

[Expand]

PIEEE80211RXStatus = ^TIEEE80211RXStatus;

TIEEE80211RXStatus = record

IEEE 802.11 TX information

[Expand]

PIEEE80211TXInfo = ^TIEEE80211TXInfo;

TIEEE80211TXInfo = record

IEEE 802.11 information elements

[Expand]

PIEEE80211InformationElements = ^TIEEE80211InformationElements;

TIEEE80211InformationElements = record

WiFi device event

[Expand]

PWiFiDeviceEvent = ^TWiFiDeviceEvent;

TWiFiDeviceEvent = record

WiFi hardware

[Expand]

PWiFiHardware = ^TWiFiHardware;

TWiFiHardware = record

WiFi configuration

[Expand]

PWiFiConfiguration = ^TWiFiConfiguration;

TWiFiConfiguration = record

WiFi interface

[Expand]

PWiFiInterface = ^TWiFiInterface;

TWiFiInterface = record

WiFi device configure

TWiFiDeviceConfigure = function(WiFi:PWiFiDevice; Flags:LongWord):LongWord;

WiFi device configure filter

TWiFiDeviceConfigureFilter = function(WiFi:PWiFiDevice; var Filter:LongWord):LongWord;

WiFi device configuration interface

TWiFiDeviceConfigureInterface = function(WiFi:PWiFiDevice; Interrface:PWiFiInterface):LongWord;

WiFi device

[Expand]

PWiFiDevice = ^TWiFiDevice;

TWiFiDevice = record


Public variables


To be documented

Function declarations


To be documented


Return to Unit Reference