pub enum WlanFullmacImpl_Request {
Show 31 variants
Init {
payload: WlanFullmacImplInitRequest,
responder: WlanFullmacImpl_InitResponder,
},
Query {
responder: WlanFullmacImpl_QueryResponder,
},
QuerySecuritySupport {
responder: WlanFullmacImpl_QuerySecuritySupportResponder,
},
QuerySpectrumManagementSupport {
responder: WlanFullmacImpl_QuerySpectrumManagementSupportResponder,
},
QueryTelemetrySupport {
responder: WlanFullmacImpl_QueryTelemetrySupportResponder,
},
QueryApfPacketFilterSupport {
responder: WlanFullmacImpl_QueryApfPacketFilterSupportResponder,
},
StartScan {
payload: WlanFullmacImplStartScanRequest,
responder: WlanFullmacImpl_StartScanResponder,
},
Connect {
payload: WlanFullmacImplConnectRequest,
responder: WlanFullmacImpl_ConnectResponder,
},
Reconnect {
payload: WlanFullmacImplReconnectRequest,
responder: WlanFullmacImpl_ReconnectResponder,
},
Roam {
payload: WlanFullmacImplRoamRequest,
responder: WlanFullmacImpl_RoamResponder,
},
AuthResp {
payload: WlanFullmacImplAuthRespRequest,
responder: WlanFullmacImpl_AuthRespResponder,
},
Deauth {
payload: WlanFullmacImplDeauthRequest,
responder: WlanFullmacImpl_DeauthResponder,
},
AssocResp {
payload: WlanFullmacImplAssocRespRequest,
responder: WlanFullmacImpl_AssocRespResponder,
},
Disassoc {
payload: WlanFullmacImplDisassocRequest,
responder: WlanFullmacImpl_DisassocResponder,
},
StartBss {
payload: WlanFullmacImplStartBssRequest,
responder: WlanFullmacImpl_StartBssResponder,
},
StopBss {
payload: WlanFullmacImplStopBssRequest,
responder: WlanFullmacImpl_StopBssResponder,
},
SetKeys {
payload: WlanFullmacImplSetKeysRequest,
responder: WlanFullmacImpl_SetKeysResponder,
},
EapolTx {
payload: WlanFullmacImplEapolTxRequest,
responder: WlanFullmacImpl_EapolTxResponder,
},
GetIfaceStats {
responder: WlanFullmacImpl_GetIfaceStatsResponder,
},
GetIfaceHistogramStats {
responder: WlanFullmacImpl_GetIfaceHistogramStatsResponder,
},
GetSignalReport {
responder: WlanFullmacImpl_GetSignalReportResponder,
},
SaeHandshakeResp {
payload: WlanFullmacImplSaeHandshakeRespRequest,
responder: WlanFullmacImpl_SaeHandshakeRespResponder,
},
SaeFrameTx {
frame: SaeFrame,
responder: WlanFullmacImpl_SaeFrameTxResponder,
},
WmmStatusReq {
responder: WlanFullmacImpl_WmmStatusReqResponder,
},
OnLinkStateChanged {
payload: WlanFullmacImplOnLinkStateChangedRequest,
responder: WlanFullmacImpl_OnLinkStateChangedResponder,
},
SetMacAddress {
mac_addr: [u8; 6],
responder: WlanFullmacImpl_SetMacAddressResponder,
},
InstallApfPacketFilter {
payload: WlanFullmacImplInstallApfPacketFilterRequest,
responder: WlanFullmacImpl_InstallApfPacketFilterResponder,
},
ReadApfPacketFilterData {
responder: WlanFullmacImpl_ReadApfPacketFilterDataResponder,
},
SetApfPacketFilterEnabled {
payload: WlanFullmacImplSetApfPacketFilterEnabledRequest,
responder: WlanFullmacImpl_SetApfPacketFilterEnabledResponder,
},
GetApfPacketFilterEnabled {
responder: WlanFullmacImpl_GetApfPacketFilterEnabledResponder,
},
#[non_exhaustive] _UnknownMethod {
ordinal: u64,
control_handle: WlanFullmacImpl_ControlHandle,
method_type: MethodType,
},
}Expand description
Protocol definition for communication from the platform to the fullmac vendor driver.
Variants§
Init
Initialize the FullMAC driver. This is the first request that the platform will make to the FullMAC driver.
On initialization, MLME provides the client end to the WlanFullmacImplIfc protocol. The driver must return the SME server end channel, which is used internally by the platform. Typically, the SME server end channel is given to the FullMAC driver by fuchsia.wlan.phyimpl/WlanPhyImpl.CreateIface.
If Init completes successfully, the platform will begin making other WlanFullmacImpl
requests to the FullMAC driver, and the FullMAC driver is free to make WlanFullmacImplIfc
requests to the platform. The platform may continue making WlanFullmacImpl requests until
the WlanFullmacImpl server unbinds.
Common errors include:
ZX_ERR_ALREADY_BOUND:Initwas already called on this FullMAC driver.
Query
Returns high-level information describing the state of the FullMAC driver. This is safe to call even before the call to WlanFullmacImpl::Start.
Fields
responder: WlanFullmacImpl_QueryResponderQuerySecuritySupport
Fields
QuerySpectrumManagementSupport
Fields
QueryTelemetrySupport
Fields
QueryApfPacketFilterSupport
Fields
StartScan
Connect
Reconnect
Roam
Initiate a roam attempt, which moves association to a different BSS within the ESS.
AuthResp
Deauth
AssocResp
Disassoc
StartBss
StopBss
SetKeys
Sets security keys for a connection. This is typically called after a successful key exchange.
Note that the platform assumes that the driver will automatically delete keys on a disconnect or key rotation.
EapolTx
GetIfaceStats
Fields
responder: WlanFullmacImpl_GetIfaceStatsResponderGetIfaceHistogramStats
Fields
GetSignalReport
Fields
responder: WlanFullmacImpl_GetSignalReportResponderSaeHandshakeResp
Informs the driver of the result of an SAE handshake.
Fields
responder: WlanFullmacImpl_SaeHandshakeRespResponderSaeFrameTx
Transmit an SAE authentication frame.
WmmStatusReq
Fields
responder: WlanFullmacImpl_WmmStatusReqResponderOnLinkStateChanged
Fields
responder: WlanFullmacImpl_OnLinkStateChangedResponderSetMacAddress
Sets the MAC address for the interface, which may be retrieved via the Query() method. To
reset to the default/factory MAC address, use the Query() method to retrieve the factory_addr,
and pass that value to this method.
InstallApfPacketFilter
Installs an APF program, replacing an existing program if present. This method does not enable the program.
Fields
ReadApfPacketFilterData
Fetches a consistent snapshot of the entire APF program and working memory buffer and returns it to the host. The returned buffer contains both code and data. Its length must match the most recently returned QueryPacketFilterSupport().max_filter_length.
While the snapshot is being fetched, the APF interpreter must not execute and all incoming packets must be passed to the host as if there was no APF program installed.
Fields
SetApfPacketFilterEnabled
Fields
GetApfPacketFilterEnabled
Fields
#[non_exhaustive]_UnknownMethod
An interaction was received which does not match any known method.
Fields
This variant is marked as non-exhaustive
control_handle: WlanFullmacImpl_ControlHandlemethod_type: MethodTypeImplementations§
Source§impl WlanFullmacImpl_Request
impl WlanFullmacImpl_Request
pub fn into_init( self, ) -> Option<(WlanFullmacImplInitRequest, WlanFullmacImpl_InitResponder)>
pub fn into_query(self) -> Option<WlanFullmacImpl_QueryResponder>
pub fn into_query_security_support( self, ) -> Option<WlanFullmacImpl_QuerySecuritySupportResponder>
pub fn into_query_spectrum_management_support( self, ) -> Option<WlanFullmacImpl_QuerySpectrumManagementSupportResponder>
pub fn into_query_telemetry_support( self, ) -> Option<WlanFullmacImpl_QueryTelemetrySupportResponder>
pub fn into_query_apf_packet_filter_support( self, ) -> Option<WlanFullmacImpl_QueryApfPacketFilterSupportResponder>
pub fn into_start_scan( self, ) -> Option<(WlanFullmacImplStartScanRequest, WlanFullmacImpl_StartScanResponder)>
pub fn into_connect( self, ) -> Option<(WlanFullmacImplConnectRequest, WlanFullmacImpl_ConnectResponder)>
pub fn into_reconnect( self, ) -> Option<(WlanFullmacImplReconnectRequest, WlanFullmacImpl_ReconnectResponder)>
pub fn into_roam( self, ) -> Option<(WlanFullmacImplRoamRequest, WlanFullmacImpl_RoamResponder)>
pub fn into_auth_resp( self, ) -> Option<(WlanFullmacImplAuthRespRequest, WlanFullmacImpl_AuthRespResponder)>
pub fn into_deauth( self, ) -> Option<(WlanFullmacImplDeauthRequest, WlanFullmacImpl_DeauthResponder)>
pub fn into_assoc_resp( self, ) -> Option<(WlanFullmacImplAssocRespRequest, WlanFullmacImpl_AssocRespResponder)>
pub fn into_disassoc( self, ) -> Option<(WlanFullmacImplDisassocRequest, WlanFullmacImpl_DisassocResponder)>
pub fn into_start_bss( self, ) -> Option<(WlanFullmacImplStartBssRequest, WlanFullmacImpl_StartBssResponder)>
pub fn into_stop_bss( self, ) -> Option<(WlanFullmacImplStopBssRequest, WlanFullmacImpl_StopBssResponder)>
pub fn into_set_keys( self, ) -> Option<(WlanFullmacImplSetKeysRequest, WlanFullmacImpl_SetKeysResponder)>
pub fn into_eapol_tx( self, ) -> Option<(WlanFullmacImplEapolTxRequest, WlanFullmacImpl_EapolTxResponder)>
pub fn into_get_iface_stats( self, ) -> Option<WlanFullmacImpl_GetIfaceStatsResponder>
pub fn into_get_iface_histogram_stats( self, ) -> Option<WlanFullmacImpl_GetIfaceHistogramStatsResponder>
pub fn into_get_signal_report( self, ) -> Option<WlanFullmacImpl_GetSignalReportResponder>
pub fn into_sae_handshake_resp( self, ) -> Option<(WlanFullmacImplSaeHandshakeRespRequest, WlanFullmacImpl_SaeHandshakeRespResponder)>
pub fn into_sae_frame_tx( self, ) -> Option<(SaeFrame, WlanFullmacImpl_SaeFrameTxResponder)>
pub fn into_wmm_status_req( self, ) -> Option<WlanFullmacImpl_WmmStatusReqResponder>
pub fn into_on_link_state_changed( self, ) -> Option<(WlanFullmacImplOnLinkStateChangedRequest, WlanFullmacImpl_OnLinkStateChangedResponder)>
pub fn into_set_mac_address( self, ) -> Option<([u8; 6], WlanFullmacImpl_SetMacAddressResponder)>
pub fn into_install_apf_packet_filter( self, ) -> Option<(WlanFullmacImplInstallApfPacketFilterRequest, WlanFullmacImpl_InstallApfPacketFilterResponder)>
pub fn into_read_apf_packet_filter_data( self, ) -> Option<WlanFullmacImpl_ReadApfPacketFilterDataResponder>
pub fn into_set_apf_packet_filter_enabled( self, ) -> Option<(WlanFullmacImplSetApfPacketFilterEnabledRequest, WlanFullmacImpl_SetApfPacketFilterEnabledResponder)>
pub fn into_get_apf_packet_filter_enabled( self, ) -> Option<WlanFullmacImpl_GetApfPacketFilterEnabledResponder>
Sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL