template <>

class NaturalClientImpl

Defined at line 1765 of file fidling/gen/sdk/fidl/fuchsia.wlan.fullmac/fuchsia.wlan.fullmac/cpp/fidl/fuchsia.wlan.fullmac/cpp/natural_messaging.h

Public Methods

::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Init> Init (::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Init> request)

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`: `Init` was already called on this FullMAC driver.

::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Query> Query ()

Returns high-level information describing the state of the FullMAC driver.

This is safe to call even before the call to WlanFullmacImpl::Start.

::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::QuerySecuritySupport> QuerySecuritySupport ()
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::QuerySpectrumManagementSupport> QuerySpectrumManagementSupport ()
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::QueryTelemetrySupport> QueryTelemetrySupport ()
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::StartScan> StartScan (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::StartScan> & request)
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Connect> Connect (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Connect> & request)
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Reconnect> Reconnect (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Reconnect> & request)
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Roam> Roam (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Roam> & request)

Initiate a roam attempt, which moves association to a different BSS within the ESS.

::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::AuthResp> AuthResp (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::AuthResp> & request)
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Deauth> Deauth (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Deauth> & request)
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::AssocResp> AssocResp (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::AssocResp> & request)
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Disassoc> Disassoc (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::Disassoc> & request)
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::StartBss> StartBss (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::StartBss> & request)
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::StopBss> StopBss (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::StopBss> & request)
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::SetKeys> SetKeys (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::SetKeys> & request)

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.

::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::EapolTx> EapolTx (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::EapolTx> & request)
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::GetIfaceStats> GetIfaceStats ()
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::GetIfaceHistogramStats> GetIfaceHistogramStats ()
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::GetSignalReport> GetSignalReport ()
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::SaeHandshakeResp> SaeHandshakeResp (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::SaeHandshakeResp> & request)

Informs the driver of the result of an SAE handshake.

::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::SaeFrameTx> SaeFrameTx (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::SaeFrameTx> & request)

Transmit an SAE authentication frame.

::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::WmmStatusReq> WmmStatusReq ()
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::OnLinkStateChanged> OnLinkStateChanged (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::OnLinkStateChanged> & request)
::fidl::internal::NaturalThenable< ::fuchsia_wlan_fullmac::WlanFullmacImpl::SetMacAddress> SetMacAddress (const ::fidl::Request< ::fuchsia_wlan_fullmac::WlanFullmacImpl::SetMacAddress> & request)

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.