pub enum ControllerRequest {
AddEntry {
interface: u64,
neighbor: IpAddress,
mac: MacAddress,
responder: ControllerAddEntryResponder,
},
RemoveEntry {
interface: u64,
neighbor: IpAddress,
responder: ControllerRemoveEntryResponder,
},
ClearEntries {
interface: u64,
ip_version: IpVersion,
responder: ControllerClearEntriesResponder,
},
}
Expand description
Modify the neighbor table.
Variants§
AddEntry
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
interface
identifier for the interface used for communicating with the neighbor. - request
neighbor
IP address of the neighbor. - request
mac
MAC address of the neighbor.
- error
ZX_ERR_INVALID_ARGS
ifneighbor
is not a valid neighbor address ormac
is not a unicast MAC address. - error
ZX_ERR_NOT_FOUND
ifinterface
does not exist. - error
ZX_ERR_NOT_SUPPORTED
ifinterface
does not keep a neighbor table (e.g. point-to-point links).
RemoveEntry
Delete a dynamic or static entry.
- request
interface
identifier for the interface associated with the entry to be deleted. - request
neighbor
IP address of the entry to be deleted.
- error
ZX_ERR_INVALID_ARGS
ifneighbor
is not a valid neighbor address. - error
ZX_ERR_NOT_FOUND
if no entries matchinterface
andneighbor
. - error
ZX_ERR_NOT_SUPPORTED
ifinterface
does not keep a neighbor table (e.g. point-to-point links).
ClearEntries
Delete all dynamic and static entries belonging to an interface.
- request
interface
identifier for the interface associated with the entries to be deleted. - request
ip_version
the IP version to clear entries from.
- error
ZX_ERR_NOT_FOUND
ifinterface
does not exist. - error
ZX_ERR_NOT_SUPPORTED
ifinterface
does not keep a neighbor table (e.g. point-to-point links).
Implementations§
Source§impl ControllerRequest
impl ControllerRequest
pub fn into_add_entry( self, ) -> Option<(u64, IpAddress, MacAddress, ControllerAddEntryResponder)>
pub fn into_remove_entry( self, ) -> Option<(u64, IpAddress, ControllerRemoveEntryResponder)>
pub fn into_clear_entries( self, ) -> Option<(u64, IpVersion, ControllerClearEntriesResponder)>
Sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL
Trait Implementations§
Auto Trait Implementations§
impl Freeze for ControllerRequest
impl !RefUnwindSafe for ControllerRequest
impl Send for ControllerRequest
impl Sync for ControllerRequest
impl Unpin for ControllerRequest
impl !UnwindSafe for ControllerRequest
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