pub struct ControllerSynchronousProxy { /* private fields */ }Implementations§
Source§impl ControllerSynchronousProxy
impl ControllerSynchronousProxy
pub fn new(channel: Channel) -> Self
pub fn into_channel(self) -> Channel
Sourcepub fn wait_for_event(
&self,
deadline: MonotonicInstant,
) -> Result<ControllerEvent, Error>
pub fn wait_for_event( &self, deadline: MonotonicInstant, ) -> Result<ControllerEvent, Error>
Waits until an event arrives and returns it. It is safe for other threads to make concurrent requests while waiting for an event.
Sourcepub fn add_entry(
&self,
interface: u64,
neighbor: &IpAddress,
mac: &MacAddress,
___deadline: MonotonicInstant,
) -> Result<ControllerAddEntryResult, Error>
pub fn add_entry( &self, interface: u64, neighbor: &IpAddress, mac: &MacAddress, ___deadline: MonotonicInstant, ) -> Result<ControllerAddEntryResult, Error>
Create a static entry. If a conflict is found, overwrite the existing entry. Conflicts occur when two entries have the same interface identifier and IP address.
- request
interfaceidentifier for the interface used for communicating with the neighbor. - request
neighborIP address of the neighbor. - request
macMAC address of the neighbor.
- error
ZX_ERR_INVALID_ARGSifneighboris not a valid neighbor address ormacis not a unicast MAC address. - error
ZX_ERR_NOT_FOUNDifinterfacedoes not exist. - error
ZX_ERR_NOT_SUPPORTEDifinterfacedoes not keep a neighbor table (e.g. point-to-point links).
Sourcepub fn remove_entry(
&self,
interface: u64,
neighbor: &IpAddress,
___deadline: MonotonicInstant,
) -> Result<ControllerRemoveEntryResult, Error>
pub fn remove_entry( &self, interface: u64, neighbor: &IpAddress, ___deadline: MonotonicInstant, ) -> Result<ControllerRemoveEntryResult, Error>
Delete a dynamic or static entry.
- request
interfaceidentifier for the interface associated with the entry to be deleted. - request
neighborIP address of the entry to be deleted.
- error
ZX_ERR_INVALID_ARGSifneighboris not a valid neighbor address. - error
ZX_ERR_NOT_FOUNDif no entries matchinterfaceandneighbor. - error
ZX_ERR_NOT_SUPPORTEDifinterfacedoes not keep a neighbor table (e.g. point-to-point links).
Sourcepub fn clear_entries(
&self,
interface: u64,
ip_version: IpVersion,
___deadline: MonotonicInstant,
) -> Result<ControllerClearEntriesResult, Error>
pub fn clear_entries( &self, interface: u64, ip_version: IpVersion, ___deadline: MonotonicInstant, ) -> Result<ControllerClearEntriesResult, Error>
Delete all dynamic and static entries belonging to an interface.
- request
interfaceidentifier for the interface associated with the entries to be deleted. - request
ip_versionthe IP version to clear entries from.
- error
ZX_ERR_NOT_FOUNDifinterfacedoes not exist. - error
ZX_ERR_NOT_SUPPORTEDifinterfacedoes not keep a neighbor table (e.g. point-to-point links).
Trait Implementations§
Source§impl Debug for ControllerSynchronousProxy
impl Debug for ControllerSynchronousProxy
Source§impl From<Channel> for ControllerSynchronousProxy
Available on Fuchsia only.
impl From<Channel> for ControllerSynchronousProxy
Available on Fuchsia only.
Source§impl From<ControllerSynchronousProxy> for Handle
Available on Fuchsia only.
impl From<ControllerSynchronousProxy> for Handle
Available on Fuchsia only.
Source§fn from(value: ControllerSynchronousProxy) -> Self
fn from(value: ControllerSynchronousProxy) -> Self
Converts to this type from the input type.
Source§impl FromClient for ControllerSynchronousProxy
Available on Fuchsia only.
impl FromClient for ControllerSynchronousProxy
Available on Fuchsia only.
Source§type Protocol = ControllerMarker
type Protocol = ControllerMarker
The protocol.
Source§fn from_client(value: ClientEnd<ControllerMarker>) -> Self
fn from_client(value: ClientEnd<ControllerMarker>) -> Self
Converts from a client.
Source§impl SynchronousProxy for ControllerSynchronousProxy
Available on Fuchsia only.
impl SynchronousProxy for ControllerSynchronousProxy
Available on Fuchsia only.
Source§type Proxy = ControllerProxy
type Proxy = ControllerProxy
The async proxy for the same protocol.
Source§type Protocol = ControllerMarker
type Protocol = ControllerMarker
The protocol which this
Proxy controls.Source§fn from_channel(inner: Channel) -> Self
fn from_channel(inner: Channel) -> Self
Create a proxy over the given channel.
Source§fn into_channel(self) -> Channel
fn into_channel(self) -> Channel
Convert the proxy back into a channel.
Source§fn as_channel(&self) -> &Channel
fn as_channel(&self) -> &Channel
Get a reference to the proxy’s underlying channel. Read more
Auto Trait Implementations§
impl Freeze for ControllerSynchronousProxy
impl RefUnwindSafe for ControllerSynchronousProxy
impl Send for ControllerSynchronousProxy
impl Sync for ControllerSynchronousProxy
impl Unpin for ControllerSynchronousProxy
impl UnwindSafe for ControllerSynchronousProxy
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more