class SoftmacBridge
Defined at line 29 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.h
Public Methods
zx::result<std::unique_ptr<SoftmacBridge>> New (fidl::SharedClient<fuchsia_driver_framework::Node> node_client, fdf::StartCompleter start_completer, fit::callback<void (zx_status_t)> shutdown_completer, fdf::SharedClient<fuchsia_wlan_softmac::WlanSoftmac> && softmac_client, std::shared_ptr<std::mutex> ethernet_proxy_lock, ddk::EthernetIfcProtocolClient * ethernet_proxy, std::optional<uint32_t> * cached_ethernet_status)
Start the bridged wlansoftmac driver and forward calls from that driver through this one.
This function starts the bridged driver by posting a task to the current dispatcher.
The provided `sta_shutdown_handler` will be called on the return value of
`wlansoftmac_c::start_and_run_bridged_wlansoftmac` called in the posted task.
Note that `wlansoftmac_c::start_and_run_bridged_wlansoftmac` may exit with an error during
startup of the bridged driver. Thus, `sta_shutdown_handler` cannot depend on any operations
performed by the bridged driver. In general, the `sta_shutdown_handler` should cause this
driver to stop if `wlansoftmac_c::start_and_run_bridged_wlansoftmac` returns an error because
this driver is in a defunct state without a bridged driver.
Defined at line 59 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void handle_unknown_method (fidl::UnknownMethodMetadata<fuchsia_wlan_softmac::WlanSoftmacBridge> metadata, fidl::UnknownMethodCompleter::Sync & completer)
Defined at line 67 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.h
void StopBridgedDriver (fit::callback<void ()> completer)
Defined at line 162 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void ~SoftmacBridge ()
Defined at line 46 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void Query (QueryCompleter::Sync & completer)
Defined at line 167 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void QueryDiscoverySupport (QueryDiscoverySupportCompleter::Sync & completer)
Defined at line 173 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void QueryMacSublayerSupport (QueryMacSublayerSupportCompleter::Sync & completer)
Defined at line 179 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void QuerySecuritySupport (QuerySecuritySupportCompleter::Sync & completer)
Defined at line 186 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void QuerySpectrumManagementSupport (QuerySpectrumManagementSupportCompleter::Sync & completer)
Defined at line 192 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void Start (StartRequest & request, StartCompleter::Sync & completer)
Defined at line 200 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void SetEthernetStatus (SetEthernetStatusRequest & request, SetEthernetStatusCompleter::Sync & completer)
Defined at line 250 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void SetChannel (SetChannelRequest & request, SetChannelCompleter::Sync & completer)
Defined at line 262 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void JoinBss (JoinBssRequest & request, JoinBssCompleter::Sync & completer)
Defined at line 268 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void EnableBeaconing (EnableBeaconingRequest & request, EnableBeaconingCompleter::Sync & completer)
Defined at line 274 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void DisableBeaconing (DisableBeaconingCompleter::Sync & completer)
Defined at line 281 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void InstallKey (InstallKeyRequest & request, InstallKeyCompleter::Sync & completer)
Defined at line 287 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void NotifyAssociationComplete (NotifyAssociationCompleteRequest & request, NotifyAssociationCompleteCompleter::Sync & completer)
Defined at line 293 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void ClearAssociation (ClearAssociationRequest & request, ClearAssociationCompleter::Sync & completer)
Defined at line 301 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void StartPassiveScan (StartPassiveScanRequest & request, StartPassiveScanCompleter::Sync & completer)
Defined at line 308 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void StartActiveScan (StartActiveScanRequest & request, StartActiveScanCompleter::Sync & completer)
Defined at line 315 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void CancelScan (CancelScanRequest & request, CancelScanCompleter::Sync & completer)
Defined at line 322 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
void UpdateWmmParameters (UpdateWmmParametersRequest & request, UpdateWmmParametersCompleter::Sync & completer)
Defined at line 328 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
zx::result<> EthernetTx (std::unique_ptr<eth::BorrowedOperation<>> op, trace_async_id_t async_id)
Defined at line 335 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
zx_status_t WlanTx (void * ctx, const uint8_t * payload, size_t payload_size)
Queues a packet for transmission.
The returned status only indicates whether `SoftmacBridge` successfully queued the
packet and not that the packet was successfully sent.
Defined at line 344 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc
zx_status_t EthernetRx (void * ctx, const uint8_t * payload, size_t payload_size)
Defined at line 424 of file ../../src/connectivity/wlan/drivers/wlansoftmac/softmac_bridge.cc