Device

Struct Device 

Source
pub struct Device { /* private fields */ }

Implementations§

Source§

impl Device

Source

pub fn new( wlan_softmac_bridge_proxy: WlanSoftmacBridgeProxy, ethernet_rx: EthernetRx, wlan_tx: WlanTx, ) -> Device

Trait Implementations§

Source§

impl DeviceOps for Device

Source§

async fn set_mac_address(&mut self, _mac_addr: MacAddr) -> Result<(), Status>

Setting the MAC address is currently unavailable in the softmac.fidl, due to stable versioning limitations. It may be added in the future to support MAC address changes on softmac devices.

Source§

async fn wlan_softmac_query_response( &mut self, ) -> Result<WlanSoftmacQueryResponse, Status>

Source§

async fn discovery_support(&mut self) -> Result<DiscoverySupport, Status>

Source§

async fn mac_sublayer_support(&mut self) -> Result<MacSublayerSupport, Status>

Source§

async fn security_support(&mut self) -> Result<SecuritySupport, Status>

Source§

async fn spectrum_management_support( &mut self, ) -> Result<SpectrumManagementSupport, Status>

Source§

async fn start( &mut self, ifc_bridge: ClientEnd<WlanSoftmacIfcBridgeMarker>, ethernet_tx: EthernetTx, wlan_rx: WlanRx, ) -> Result<Channel, Status>

Source§

fn deliver_eth_frame(&mut self, packet: &[u8]) -> Result<(), Status>

Source§

fn send_wlan_frame( &mut self, buffer: ArenaStaticBox<[u8]>, tx_flags: WlanTxInfoFlags, async_id: Option<TraceId>, ) -> Result<(), Status>

Sends the slice corresponding to |buffer| as a frame over the air. If the caller does not pass an |async_id| to this function, then this function will generate its own |async_id| and end the trace if an error occurs.
Source§

async fn set_ethernet_status( &mut self, status: LinkStatus, ) -> Result<(), Status>

Source§

async fn set_channel(&mut self, channel: WlanChannel) -> Result<(), Status>

Source§

async fn start_passive_scan( &mut self, request: &WlanSoftmacBaseStartPassiveScanRequest, ) -> Result<WlanSoftmacBaseStartPassiveScanResponse, Status>

Source§

async fn start_active_scan( &mut self, request: &WlanSoftmacStartActiveScanRequest, ) -> Result<WlanSoftmacBaseStartActiveScanResponse, Status>

Source§

async fn cancel_scan( &mut self, request: &WlanSoftmacBaseCancelScanRequest, ) -> Result<(), Status>

Source§

async fn join_bss(&mut self, request: &JoinBssRequest) -> Result<(), Status>

Source§

async fn enable_beaconing( &mut self, request: WlanSoftmacBaseEnableBeaconingRequest, ) -> Result<(), Status>

Source§

async fn disable_beaconing(&mut self) -> Result<(), Status>

Source§

async fn install_key( &mut self, key_configuration: &WlanKeyConfiguration, ) -> Result<(), Status>

Source§

async fn notify_association_complete( &mut self, assoc_cfg: WlanAssociationConfig, ) -> Result<(), Status>

Source§

async fn clear_association( &mut self, request: &WlanSoftmacBaseClearAssociationRequest, ) -> Result<(), Status>

Source§

async fn update_wmm_parameters( &mut self, request: &WlanSoftmacBaseUpdateWmmParametersRequest, ) -> Result<(), Status>

Source§

fn take_mlme_event_stream(&mut self) -> Option<UnboundedReceiver<MlmeEvent>>

Source§

fn send_mlme_event(&mut self, event: MlmeEvent) -> Result<(), Error>

Source§

fn set_minstrel( &mut self, minstrel: Arc<Mutex<MinstrelRateSelector<MinstrelTimer>>>, )

Source§

fn minstrel( &mut self, ) -> Option<Arc<Mutex<MinstrelRateSelector<MinstrelTimer>>>>

Source§

fn set_ethernet_up(&mut self) -> impl Future<Output = Result<(), Status>>

Source§

fn set_ethernet_down(&mut self) -> impl Future<Output = Result<(), Status>>

Source§

fn tx_vector_idx( &mut self, frame_control: &FrameControl, peer_addr: &MacAddr, flags: WlanTxInfoFlags, ) -> TxVecIdx

Auto Trait Implementations§

§

impl Freeze for Device

§

impl !RefUnwindSafe for Device

§

impl !Send for Device

§

impl !Sync for Device

§

impl Unpin for Device

§

impl !UnwindSafe for Device

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T, D> Encode<Ambiguous1, D> for T
where D: ResourceDialect,

Source§

unsafe fn encode( self, _encoder: &mut Encoder<'_, D>, _offset: usize, _depth: Depth, ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
Source§

impl<T, D> Encode<Ambiguous2, D> for T
where D: ResourceDialect,

Source§

unsafe fn encode( self, _encoder: &mut Encoder<'_, D>, _offset: usize, _depth: Depth, ) -> Result<(), Error>

Encodes the object into the encoder’s buffers. Any handles stored in the object are swapped for Handle::INVALID. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> IntoEither for T

Source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
Source§

impl<T> OptionalField for T
where T: ?Sized,

Source§

const PRESENT: Presence<Self> = _

Source§

const ABSENT: Presence<Self> = _

§

impl<T> Pointable for T

§

const ALIGN: usize

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V