fuchsia.wlan.fullmac

Added: HEAD

协议

WlanFullmacImpl

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

用于从平台到 fullmac 供应商驱动程序的通信的协议定义。

AssocResp

请求

名称类型
payload WlanFullmacImplAssocRespRequest

响应

<EMPTY>

AuthResp

请求

名称类型
payload WlanFullmacImplAuthRespRequest

响应

<EMPTY>

关联

请求

名称类型
payload WlanFullmacImplConnectRequest

响应

<EMPTY>

取消授权

请求

名称类型
payload WlanFullmacImplDeauthRequest

响应

<EMPTY>

解除关联

请求

名称类型
payload WlanFullmacImplDisassocRequest

响应

<EMPTY>

EapolTx

请求

名称类型
payload WlanFullmacImplEapolTxRequest

响应

<EMPTY>

GetApfPacketFilterEnabled

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_GetApfPacketFilterEnabled_Result

GetIfaceHistogramStats

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_GetIfaceHistogramStats_Result

GetIfaceStats

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_GetIfaceStats_Result

GetScheduledScanEnabled

返回当前处于活跃状态的所有预定扫描的交易 ID。

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_GetScheduledScanEnabled_Result

GetSignalReport

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_GetSignalReport_Result

Init

初始化 FullMAC 驱动程序。这是平台向 FullMAC 驱动程序发出的第一个请求。

在初始化时,MLME 会向 WlanFullmacImplIfc 协议提供客户端端点。驱动程序必须返回 SME 服务器端通道,该通道由平台在内部使用。通常,SME 服务器端通道由 fuchsia.wlan.phy/WlanPhy.CreateIface 提供给 FullMAC 驱动程序。

如果 Init 成功完成,平台将开始向 FullMAC 驱动程序发出其他 WlanFullmacImpl 请求,并且 FullMAC 驱动程序可以自由地向平台发出 WlanFullmacImplIfc 请求。平台可能会继续发出 WlanFullmacImpl 请求,直到 WlanFullmacImpl 服务器解除绑定。

常见错误包括:

  • ZX_ERR_ALREADY_BOUND:已在此 FullMAC 驱动程序上调用 Init。

请求

名称类型
payload WlanFullmacImplInitRequest

响应

名称类型
payload WlanFullmacImpl_Init_Result

InstallApfPacketFilter

安装 APF 程序,替换现有程序(如果存在)。此方法不会启用该计划。

请求

名称类型
payload WlanFullmacImplInstallApfPacketFilterRequest

响应

名称类型
payload WlanFullmacImpl_InstallApfPacketFilter_Result

OnLinkStateChanged

请求

名称类型
payload WlanFullmacImplOnLinkStateChangedRequest

响应

<EMPTY>

查询

返回描述 FullMAC 驱动程序状态的高级信息。 即使在调用 WlanFullmacImpl::Start 之前,也可以安全地调用此方法。

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_Query_Result

QueryApfPacketFilterSupport

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_QueryApfPacketFilterSupport_Result

QueryRssiMonitorSupport

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_QueryRssiMonitorSupport_Result

QuerySecuritySupport

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_QuerySecuritySupport_Result

QuerySpectrumManagementSupport

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_QuerySpectrumManagementSupport_Result

QueryTelemetrySupport

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_QueryTelemetrySupport_Result

ReadApfPacketFilterData

提取整个 APF 程序和工作内存缓冲区的一致快照,并将其返回给主机。返回的缓冲区包含代码和数据。其长度必须与最近返回的 QueryPacketFilterSupport().max_filter_length 一致。

在提取快照期间,APF 解释器不得执行,并且所有传入的数据包都必须传递到主机,就像未安装 APF 程序一样。

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_ReadApfPacketFilterData_Result

重新连接

请求

名称类型
payload WlanFullmacImplReconnectRequest

响应

<EMPTY>

Roam

发起漫游尝试,将关联移动到 ESS 中的其他 BSS。

请求

名称类型
payload WlanFullmacImplRoamRequest

响应

<EMPTY>

SaeFrameTx

传输 SAE 身份验证帧。

请求

名称类型
frame SaeFrame

响应

<EMPTY>

SaeHandshakeResp

将 SAE 握手的结果通知驱动程序。

请求

名称类型
payload WlanFullmacImplSaeHandshakeRespRequest

响应

<EMPTY>

SetApfPacketFilterEnabled

请求

名称类型
payload WlanFullmacImplSetApfPacketFilterEnabledRequest

响应

名称类型
payload WlanFullmacImpl_SetApfPacketFilterEnabled_Result

SetKeys

为连接设置安全密钥。这通常在成功交换密钥后调用。

请注意,平台会假定驱动程序会在断开连接或密钥轮替时自动删除密钥。

请求

名称类型
payload WlanFullmacImplSetKeysRequest

响应

名称类型
resp WlanFullmacSetKeysResp

SetMacAddress

设置接口的 MAC 地址,该地址可通过 Query() 方法检索。如需重置为默认/出厂 MAC 地址,请使用 Query() 方法检索 factory_addr,并将该值传递给此方法。

请求

名称类型
mac_addr fuchsia.wlan.ieee80211/MacAddr

响应

名称类型
payload WlanFullmacImpl_SetMacAddress_Result

StartBss

请求

名称类型
payload WlanFullmacImplStartBssRequest

响应

<EMPTY>

StartRssiMonitor

为连接 RSSI 配置监控阈值。

当检测到 RSSI 低于 min_rssi_dbm 或高于 max_rssi_dbm 时,WlanFullmacImplIfc::OnRssiThresholdBreached 会报告此情况。

多次调用 StartRssiMonitor 会将监控阈值替换为最新提供的值。

当调用 StopRssiMonitor 或连接断开时,RSSI 监控会自动停止。

请求

名称类型
payload WlanFullmacImplStartRssiMonitorRequest

响应

名称类型
payload WlanFullmacImpl_StartRssiMonitor_Result

StartScan

请求

名称类型
payload WlanFullmacImplStartScanRequest

响应

<EMPTY>

StartScheduledScan

开始定期扫描。

请求

名称类型
payload WlanFullmacImplStartScheduledScanRequest

响应

名称类型
payload WlanFullmacImpl_StartScheduledScan_Result

StopBss

请求

名称类型
payload WlanFullmacImplStopBssRequest

响应

<EMPTY>

StopRssiMonitor

请求

<EMPTY>

响应

名称类型
payload WlanFullmacImpl_StopRssiMonitor_Result

StopScheduledScan

停止定期扫描。

成功返回值表示扫描已停止。 驱动程序不会发送 OnScheduledScanStoppedByFirmware 事件来响应此调用。 OnScheduledScanStoppedByFirmware 预留给固件发起的停止或错误。

请求

名称类型
payload WlanFullmacImplStopScheduledScanRequest

响应

名称类型
payload WlanFullmacImpl_StopScheduledScan_Result

WmmStatusReq

请求

<EMPTY>

响应

<EMPTY>

WlanFullmacImplIfc

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

用于从 fullmac 供应商驱动程序到平台进行通信的协议定义。

AssocInd

请求

名称类型
payload WlanFullmacImplIfcAssocIndRequest

响应

<EMPTY>

AuthInd

请求

名称类型
payload WlanFullmacImplIfcAuthIndRequest

响应

<EMPTY>

ConnectConf

请求

名称类型
payload WlanFullmacImplIfcConnectConfRequest

响应

<EMPTY>

DeauthConf

请求

名称类型
payload WlanFullmacImplIfcDeauthConfRequest

响应

<EMPTY>

DeauthInd

报告驱动程序已取消身份验证。

请求

名称类型
payload WlanFullmacImplIfcDeauthIndRequest

响应

<EMPTY>

DisassocConf

报告之前发出的解除关联请求的结果。IEEE 802.11-2020 6.3.9.2。

请求

名称类型
payload WlanFullmacImplIfcDisassocConfRequest

响应

<EMPTY>

DisassocInd

报告与指定对等方发生了解除关联 (IEEE 802.11-2020 6.3.9.3)。

请求

名称类型
payload WlanFullmacImplIfcDisassocIndRequest

响应

<EMPTY>

EapolConf

报告 EAPoL 帧传输的结果 (IEEE 802.11-2020 6.3.22.2)。 平台通过 WlanFullmacImpl::EapolTx 传输 EAPoL 帧。

请求

名称类型
payload WlanFullmacImplIfcEapolConfRequest

响应

<EMPTY>

EapolInd

报告已收到 EAPoL 帧。

请求

名称类型
payload WlanFullmacImplIfcEapolIndRequest

响应

<EMPTY>

OnChannelSwitch

请求

名称类型
ind WlanFullmacChannelSwitchInfo

响应

<EMPTY>

OnPmkAvailable

在驱动程序处理的 SAE 握手之后,通知平台 PMK 可用。

请求

名称类型
payload WlanFullmacImplIfcOnPmkAvailableRequest

响应

<EMPTY>

OnRssiThresholdBreached

报告受监控的 RSSI 超过了配置的阈值。

请求

名称类型
payload WlanFullmacImplIfcOnRssiThresholdBreachedRequest

OnScanEnd

请求

名称类型
payload WlanFullmacImplIfcOnScanEndRequest

响应

<EMPTY>

OnScanResult

请求

名称类型
payload WlanFullmacImplIfcOnScanResultRequest

响应

<EMPTY>

OnScheduledScanMatchesAvailable

向 MLME 指示已完成预定扫描计划中的单次扫描,并且结果可用。

请求

名称类型
payload WlanFullmacImplIfcOnScheduledScanMatchesAvailableRequest

OnScheduledScanStoppedByFirmware

向 MLME 指示固件已停止定期扫描。

请求

名称类型
payload WlanFullmacImplIfcOnScheduledScanStoppedByFirmwareRequest

OnWmmStatusResp

请求

名称类型
status zx/Result
wmm_params fuchsia.wlan.driver/WlanWmmParameters

响应

<EMPTY>

RoamConf

报告由 MLME 发起的漫游尝试的结果。

请求

名称类型
payload WlanFullmacImplIfcRoamConfRequest

响应

<EMPTY>

RoamResultInd

报告由 fullmac 发起的漫游尝试的结果。

请求

名称类型
payload WlanFullmacImplIfcRoamResultIndRequest

响应

<EMPTY>

RoamStartInd

报告 fullmac 发起的漫游尝试正在进行中。 Fullmac 必须针对所有漫游尝试发送此启动指示。

请求

名称类型
payload WlanFullmacImplIfcRoamStartIndRequest

响应

<EMPTY>

SaeFrameRx

接收 SAE 身份验证帧。

请求

名称类型
frame SaeFrame

响应

<EMPTY>

SaeHandshakeInd

请求

名称类型
payload WlanFullmacImplIfcSaeHandshakeIndRequest

响应

<EMPTY>

SignalReport

请求

名称类型
ind WlanFullmacSignalReportIndication

响应

<EMPTY>

StartConf

报告 WlanFullmacImpl::StartBss 请求的结果。

请求

名称类型
payload WlanFullmacImplIfcStartConfRequest

响应

<EMPTY>

StopConf

报告 WlanFullmacImpl::StopBss 请求的结果。

请求

名称类型
payload WlanFullmacImplIfcStopConfRequest

响应

<EMPTY>

STRUCTS

WlanFullmacChannelSwitchInfo

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

字段类型说明默认
new_primary_channel fuchsia.wlan.ieee80211/ChannelNumber 无默认应用
bandwidth fuchsia.wlan.ieee80211/ChannelBandwidth 无默认应用
vht_secondary_80_channel fuchsia.wlan.ieee80211/ChannelNumber 无默认应用

WlanFullmacImpl_GetIfaceHistogramStats_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

字段类型说明默认
stats fuchsia.wlan.stats/IfaceHistogramStats 无默认应用

WlanFullmacImpl_GetIfaceStats_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

字段类型说明默认
stats fuchsia.wlan.stats/IfaceStats 无默认应用

WlanFullmacImpl_InstallApfPacketFilter_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

<EMPTY>

WlanFullmacImpl_SetApfPacketFilterEnabled_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

<EMPTY>

WlanFullmacImpl_SetMacAddress_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

<EMPTY>

WlanFullmacImpl_StartRssiMonitor_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

<EMPTY>

WlanFullmacImpl_StartScheduledScan_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

<EMPTY>

WlanFullmacImpl_StopRssiMonitor_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

<EMPTY>

WlanFullmacImpl_StopScheduledScan_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

<EMPTY>

WlanFullmacRssiStats

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

字段类型说明默认
hist vector<uint64> 无默认应用

WlanFullmacSetKeysResp

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

字段类型说明默认
statuslist vector<zx/Result>:4 无默认应用

枚举

EapolTxResult flexible

类型:uint8

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

名称值说明
0
1

StartResult flexible

类型:uint8

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

名称值说明
0
1
2
3

StopResult flexible

类型:uint8

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

名称值说明
0
1
2

WlanAssocResult 灵活

类型:uint8

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

名称值说明
0
1
2
3
4
5
6
7
8

WlanAuthResult flexible

类型:uint8

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

名称值说明
0
1
2
3
4
5

WlanAuthType flexible

类型:uint8

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

名称值说明
1
2
3
4

WlanScanResult flexible

类型:uint8

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

名称值说明
0
1
2
3
4
5

WlanScanType flexible

类型:uint8

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

名称值说明
1
2

TABLES

BandCapability

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

描述单个 WlanBand 的参数和功能。

序数字段类型说明
band fuchsia.wlan.ieee80211/WlanBand

此表的值适用于此字段中指示的频段。

必填。

basic_rates vector<uint8>:12

支持的基本速率,以 500 kbit/s 为单位(如 IEEE Std 802.11-2016, 9.4.2.3 中所定义),例如,0x02 表示 1 Mbps。 此类型返回的值表示设备支持传输和接收的所有非 HT 速率。

必填。

ht_caps fuchsia.wlan.ieee80211/HtCapabilities

HT PHY 模式功能。

可选。如果此字段不存在,则表示设备在此频段中不支持 HT PHY 模式。

vht_caps fuchsia.wlan.ieee80211/VhtCapabilities

VHT PHY 模式功能。

可选。如果此字段不存在,则表示设备在此频段中不支持 VHT PHY 模式。

primary_channels vector<fuchsia.wlan.ieee80211/ChannelNumber>:256

在 iface 创建期间,根据设备驱动程序已知的监管信息,硬件认为有效的主信道列表。在此上下文中,主信道是指 AP 可以在当前监管网域中传输信标帧的信道。

此列表应用于确定使用 iface 扫描部分信道的后续请求的有效性,或确定在启动 AP 时要使用哪个主信道。

必填。

SaeFrame

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

包含 SAE 身份验证帧的信息。在传输和接收方向之间共享,请参阅 WlanFullmacImplIfc::SaeFrameRx 和 WlanFullmacImpl::SaeFrameTx。

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr

对等设备的 MAC 地址。必填。

status_code fuchsia.wlan.ieee80211/StatusCode

此 SAE 帧的状态代码。必填。

seq_num uint16

序列号。必填。

sae_fields vector<uint8>

包含帧正文中与 SAE 相关的字段。 如需了解详情,请参阅 IEEE Std 802.11-2016 表 9-35 和表 9-36。 必填。

WlanFullmacImplAssocRespRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr
result_code WlanAssocResult
association_id uint16

WlanFullmacImplAuthRespRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr
result_code WlanAuthResult

WlanFullmacImplConnectRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
selected_bss fuchsia.wlan.ieee80211/BssDescription
connect_failure_timeout uint32

信标间隔中指定的超时。

auth_type WlanAuthType

特定于身份验证交换的其他参数。

sae_password vector<uint8>

除非启用了 SAE_DRIVER_AUTH 且 auth_type 为 SAE,否则系统会忽略 sae_password。

wep_key fuchsia.wlan.driver/WlanKeyConfig

身份验证交换中使用的 WEP 密钥。 此字段仅针对 WEP 安全类型填充,否则为空。

security_ie vector<uint8>:257

特定于关联交换的其他参数。

wep_key_desc fuchsia.wlan.ieee80211/SetKeyDescriptor

身份验证交换中使用的 WEP 密钥。 此字段仅针对 WEP 安全类型填充,否则为空。

owe_public_key WlanFullmacOwePublicKey

关联期间用于 Diffie Hellman 交换的 OWE 公钥。 此字段仅针对 OWE 安全类型填充,否则为空。

WlanFullmacImplDeauthRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr
reason_code fuchsia.wlan.ieee80211/ReasonCode

WlanFullmacImplDisassocRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr
reason_code fuchsia.wlan.ieee80211/ReasonCode

WlanFullmacImplEapolTxRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
src_addr fuchsia.wlan.ieee80211/MacAddr
dst_addr fuchsia.wlan.ieee80211/MacAddr
data vector<uint8>

WlanFullmacImplIfcAssocIndRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr
listen_interval uint16
ssid fuchsia.wlan.ieee80211/Ssid
rsne vector<uint8>:257
vendor_ie vector<uint8>:514

WlanFullmacImplIfcAuthIndRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr
auth_type WlanAuthType

WlanFullmacImplIfcConnectConfRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr
result_code fuchsia.wlan.ieee80211/StatusCode
association_id uint16
association_ies vector<uint8>

WlanFullmacImplIfcDeauthConfRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr

WlanFullmacImplIfcDeauthIndRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr

对等设备的 MAC 地址。必填。

reason_code fuchsia.wlan.ieee80211/ReasonCode

取消身份验证的原因代码。必填。

locally_initiated bool

如果取消身份验证是从设备发起的,则 locally_initiated 为 true;如果是远程发起的(例如,由于取消身份验证帧),则为 false

WlanFullmacImplIfcDisassocConfRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
status zx/Result

ZX_OK 表示解除关联请求已得到处理,并且对等方已解除关联。其他错误表示由于以下或其他原因而无法处理请求:

  • ZX_ERR_BAD_STATE:在当前状态下无法关联(例如,已断开连接)
  • ZX_ERR_INVALID_ARGS:与指定的对等方之间不存在关联
  • ZX_ERR_SHOULD_WAIT:由于固件或驱动程序忙,无法处理解除关联请求

WlanFullmacImplIfcDisassocIndRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr

已解除关联的对等方的地址。必填。

reason_code fuchsia.wlan.ieee80211/ReasonCode

解除关联的原因。必填。

locally_initiated bool

解除关联是否由设备发起。必需。如果取消关联是由设备发起的(例如,固件或供应商驱动程序启动了取消关联),则 locally_initiated 为 true;如果取消关联是由外部发起的(例如,由于从 AP 收到取消关联帧),则为 false。

WlanFullmacImplIfcEapolConfRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
result_code EapolTxResult

传输结果。必填。

dst_addr fuchsia.wlan.ieee80211/MacAddr

此值对应于我们要确认的 EapolTxRequest 中的 dst_addr。 IEEE 802.11-2020 不包含此字段,但如果多个 EAPoL 握手正在进行,我们需要此字段来消除歧义。 必填。

WlanFullmacImplIfcEapolIndRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
src_addr fuchsia.wlan.ieee80211/MacAddr

发件人的地址。必填。

dst_addr fuchsia.wlan.ieee80211/MacAddr

预期目的地的地址。必填。

data vector<uint8>

EAPoL 帧数据的字节。必填。

WlanFullmacImplIfcOnPmkAvailableRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
pmk vector<uint8>

成对主密钥字节。必填。

pmkid vector<uint8>

PMK ID。必填。

WlanFullmacImplIfcOnRssiThresholdBreachedRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
cur_rssi_dbm int8

WlanFullmacImplIfcOnScanEndRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
txn_id uint64
code WlanScanResult

WlanFullmacImplIfcOnScanResultRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
txn_id uint64
timestamp_nanos zx/Time
bss fuchsia.wlan.ieee80211/BssDescription

WlanFullmacImplIfcOnScheduledScanMatchesAvailableRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
txn_id uint64

WlanFullmacImplIfcOnScheduledScanStoppedByFirmwareRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
txn_id uint64

WlanFullmacImplIfcRoamConfRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
selected_bssid fuchsia.wlan.ieee80211/MacAddr

目标 BSS 的 BSSID。必填。

status_code fuchsia.wlan.ieee80211/StatusCode

漫游尝试的结果。必填。

original_association_maintained bool

在漫游尝试期间,是否保持了原始 BSS 关联。必需。 成功的漫游始终会导致与原始 BSS 取消关联,因此,如果 status_code 为 true,则此字段必须设置为 false;漫游失败通常会导致与原始 BSS 取消关联,但在某些情况下可能不会(例如,在某些快速 BSS 转换场景中)。

target_bss_authenticated bool

客户端是否已通过目标 BSS 的身份验证。如果 status_code 为成功,则此字段必须设置为 true;如果漫游尝试失败,则此字段可能为 true 或 false。这样,上层就可以决定如何在漫游尝试失败后清理连接状态。

association_id uint16

此关联与 AP 的关联 ID。如果 status_code 为成功,则必须提供此值。

association_ies vector<uint8>

与 AP 的此关联的 IE。如果 status_code 为成功,则必须提供此值。

WlanFullmacImplIfcRoamResultIndRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
selected_bssid fuchsia.wlan.ieee80211/MacAddr

目标 BSS 的 BSSID。必填。

status_code fuchsia.wlan.ieee80211/StatusCode

漫游尝试的结果。必填。

original_association_maintained bool

在漫游尝试期间,是否保持了原始 BSS 关联。必需。 成功的漫游始终会导致与原始 BSS 取消关联,因此,如果 status_code 为 true,则此字段必须设置为 false;漫游失败通常会导致与原始 BSS 取消关联,但在某些情况下可能不会(例如,在某些快速 BSS 转换场景中)。

target_bss_authenticated bool

客户端是否已通过目标 BSS 的身份验证。如果 status_code 为成功,则此字段必须设置为 true;如果漫游尝试失败,则此字段可能为 true 或 false。这样,上层就可以决定如何在漫游尝试失败后清理连接状态。

association_id uint16

此关联与 AP 的关联 ID。如果 status_code 为成功,则必须提供此值。

association_ies vector<uint8>

与 AP 的此关联的 IE。如果 status_code 为成功,则必须提供此值。

WlanFullmacImplIfcRoamStartIndRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
selected_bssid fuchsia.wlan.ieee80211/MacAddr

目标 BSS 的 BSSID。必填。

selected_bss fuchsia.wlan.ieee80211/BssDescription

目标 BSS 的完整 BSS 说明。必需。 如果 BssDescription 中的数据不正确或不完整,漫游将无法成功,因为更高层将无法完成所需的操作(例如 SAE)。

original_association_maintained bool

在尝试漫游开始时,是否保持了原始 BSS 关联。 必需。802.11 规定 STA 只能与单个 BSS 相关联,因此漫游尝试通常会在漫游尝试开始时导致解除关联。不过,802.11 还提供了一种机制(即快速 BSS 转换),允许设备在与目标 BSS 建立身份验证的同时,保持与原始 BSS 的关联,以避免在与目标 BSS 的身份验证失败时失去原始关联。

WlanFullmacImplIfcSaeHandshakeIndRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr

WlanFullmacImplIfcStartConfRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
result_code StartResult

StartBss 请求的结果。必填。

WlanFullmacImplIfcStopConfRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
result_code StopResult

StopBss 请求的结果。必填。

WlanFullmacImplInitRequest 资源

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
ifc client_end:WlanFullmacImplIfc

WlanFullmacImplifc 客户端结束。 必填。

WlanFullmacImplInstallApfPacketFilterRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
program vector<uint8>

WlanFullmacImplOnLinkStateChangedRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
online bool

WlanFullmacImplReconnectRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr

WlanFullmacImplRoamRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
selected_bss fuchsia.wlan.ieee80211/BssDescription

目标 BSS 的完整 BSS 说明。必需。 如果 BssDescription 中的数据不正确或不完整,漫游将无法成功,因为更高层将无法完成所需的操作(例如 SAE)。

WlanFullmacImplSaeHandshakeRespRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
peer_sta_address fuchsia.wlan.ieee80211/MacAddr

对等设备的 MAC 地址。必填。

status_code fuchsia.wlan.ieee80211/StatusCode

SAE 握手的状态。必填。

WlanFullmacImplSetApfPacketFilterEnabledRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
enabled bool

WlanFullmacImplSetKeysRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
keylist vector<fuchsia.wlan.driver/WlanKeyConfig>:4
key_descriptors vector<fuchsia.wlan.ieee80211/SetKeyDescriptor>:4

WlanFullmacImplStartBssRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
ssid fuchsia.wlan.ieee80211/Ssid
bss_type fuchsia.wlan.ieee80211/BssType
beacon_period uint32
dtim_period uint32
primary fuchsia.wlan.ieee80211/ChannelNumber
rsne vector<uint8>:257
vendor_ie vector<uint8>:514

WlanFullmacImplStartRssiMonitorRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
min_rssi_dbm int8
max_rssi_dbm int8

WlanFullmacImplStartScanRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
txn_id uint64

唯一交易 ID(将在相应的扫描结果中指明)。

scan_type WlanScanType
channels vector<fuchsia.wlan.ieee80211/ChannelNumber>:256

要扫描的频道列表。如果频道列表为空,扫描请求会立即返回 OnScanEnd,并显示代码 INVALID_ARGS。

系统会忽略无效的频道号,且不会发出提示。信道编号的有效性取决于当前的监管区域,而 FullMAC 驱动程序不一定能确定区域设置。当固件动态更改区域设置时,尤其如此。

ssids vector<fuchsia.wlan.ieee80211/Ssid>

要扫描的 SSID 列表。空的 SSID 列表与仅包含通配符 SSID 的列表相同。

指定的 SSID 数量没有限制。由于每个扫描请求允许的 SSID 数量存在硬件限制,并且 IEEE 802.11-2016 中存在技术限制,即单个探测请求帧中的 SSID 数量限制为 ieee80211.SSID_LIST_MAX 个 SSID,因此大量 SSID 可能会导致扫描时间延长。

min_channel_time uint32

扫描期间在某个频道上花费的最短时间(以毫秒为单位)。

max_channel_time uint32

扫描期间在某个频道上花费的最长时间(以毫秒为单位)。

WlanFullmacImplStartScheduledScanRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
txn_id uint64
req fuchsia.wlan.common/ScheduledScanRequest

WlanFullmacImplStopBssRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
ssid fuchsia.wlan.ieee80211/Ssid

WlanFullmacImplStopScheduledScanRequest

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
txn_id uint64

WlanFullmacImpl_GetApfPacketFilterEnabled_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
enabled bool

WlanFullmacImpl_GetScheduledScanEnabled_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
active_txn_ids vector<uint64>

WlanFullmacImpl_Init_Response 资源

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
sme_channel handle<channel>

SME 服务器端渠道。 必填。

WlanFullmacImpl_QueryApfPacketFilterSupport_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
resp fuchsia.wlan.common/ApfPacketFilterSupport

WlanFullmacImpl_QueryRssiMonitorSupport_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
resp fuchsia.wlan.common/RssiMonitorSupport

WlanFullmacImpl_QuerySecuritySupport_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
resp fuchsia.wlan.common/SecuritySupport

WlanFullmacImpl_QuerySpectrumManagementSupport_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
resp fuchsia.wlan.common/SpectrumManagementSupport

WlanFullmacImpl_QueryTelemetrySupport_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
resp fuchsia.wlan.stats/TelemetrySupport

WlanFullmacImpl_Query_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
sta_addr fuchsia.wlan.ieee80211/MacAddr

当前充电站地址。必填。

role fuchsia.wlan.common/WlanMacRole

MAC 角色。必填。

band_caps vector<BandCapability>:16

支持的频段。必填。

factory_addr fuchsia.wlan.ieee80211/MacAddr

出厂 MAC 地址。必填。

WlanFullmacImpl_ReadApfPacketFilterData_Response

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
memory vector<uint8>

WlanFullmacOwePublicKey

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
group uint16
key vector<uint8>

WlanFullmacSignalReportIndication

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数字段类型说明
rssi_dbm int8
snr_db int8
tx_rate_500kbps uint32

传输速率,单位为 500 kbit/s,这是 IEEE Std 802.11-2024 9.4.2.3 中支持的速率所用的单位。

rx_rate_500kbps uint32

接收速率,单位为 500 kbit/s。

UNIONS

WlanFullmacImpl_GetApfPacketFilterEnabled_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_GetApfPacketFilterEnabled_Response
err zx/Status
framework_err internal

WlanFullmacImpl_GetIfaceHistogramStats_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_GetIfaceHistogramStats_Response
err zx/Status

WlanFullmacImpl_GetIfaceStats_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_GetIfaceStats_Response
err zx/Status

WlanFullmacImpl_GetScheduledScanEnabled_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_GetScheduledScanEnabled_Response
err zx/Status
framework_err internal

WlanFullmacImpl_GetSignalReport_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response fuchsia.wlan.stats/SignalReport
err zx/Status

WlanFullmacImpl_Init_Result strict resource

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_Init_Response
err zx/Status

WlanFullmacImpl_InstallApfPacketFilter_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_InstallApfPacketFilter_Response
err zx/Status
framework_err internal

WlanFullmacImpl_QueryApfPacketFilterSupport_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_QueryApfPacketFilterSupport_Response
err zx/Status
framework_err internal

WlanFullmacImpl_QueryRssiMonitorSupport_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_QueryRssiMonitorSupport_Response
err zx/Status
framework_err internal

WlanFullmacImpl_QuerySecuritySupport_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_QuerySecuritySupport_Response
err zx/Status

WlanFullmacImpl_QuerySpectrumManagementSupport_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_QuerySpectrumManagementSupport_Response
err zx/Status

WlanFullmacImpl_QueryTelemetrySupport_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_QueryTelemetrySupport_Response
err zx/Status

WlanFullmacImpl_Query_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_Query_Response
err zx/Status

WlanFullmacImpl_ReadApfPacketFilterData_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_ReadApfPacketFilterData_Response
err zx/Status
framework_err internal

WlanFullmacImpl_SetApfPacketFilterEnabled_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_SetApfPacketFilterEnabled_Response
err zx/Status
framework_err internal

WlanFullmacImpl_SetMacAddress_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_SetMacAddress_Response
err zx/Status

WlanFullmacImpl_StartRssiMonitor_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_StartRssiMonitor_Response
err zx/Status
framework_err internal

WlanFullmacImpl_StartScheduledScan_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_StartScheduledScan_Response
err zx/Status
framework_err internal

WlanFullmacImpl_StopRssiMonitor_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_StopRssiMonitor_Response
err zx/Status
framework_err internal

WlanFullmacImpl_StopScheduledScan_Result strict

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

序数变体类型说明
response WlanFullmacImpl_StopScheduledScan_Response
err zx/Status
framework_err internal

常量

名称值类型说明
WLAN_MAX_KEYLIST_SIZE 4 uint32
WLAN_VIE_MAX_LEN 514 uint32

要添加到关联请求中的供应商 IE 的长度上限。此方法目前用于 WPA。

服务

服务

在 fuchsia.wlan.fullmac/fullmac.fidl 中定义

名称类型传输
wlan_fullmac_impl fuchsia.wlan.fullmac/WlanFullmacImpl 渠道