pub enum RouteTableV4Request {
GetTableId {
responder: RouteTableV4GetTableIdResponder,
},
Detach {
control_handle: RouteTableV4ControlHandle,
},
Remove {
responder: RouteTableV4RemoveResponder,
},
GetAuthorizationForRouteTable {
responder: RouteTableV4GetAuthorizationForRouteTableResponder,
},
NewRouteSet {
route_set: ServerEnd<RouteSetV4Marker>,
control_handle: RouteTableV4ControlHandle,
},
}Expand description
Vends isolated administrative access to the system’s IPv4 routing table.
A main route table is accessible through the discoverable [RouteTableV4]
protocol. Other tables can be installed using the NewRouteTable method
on [RouteTableProviderV4]. The [RouteTableV4] also encodes the lifetime
of the underlying route table, dropping the client end of the protocol
causes the underlying route table to be removed unless it is detached. The
main table is detached by default.
Variants§
GetTableId
Gets the table ID for this table.
Fields
responder: RouteTableV4GetTableIdResponderDetach
Detaches the lifetime of the route table from the lifetime of the client end of the channel.
After this method is called, the route table will not be removed if the client end is closed. It’s a no-op if called on the main table.
Fields
control_handle: RouteTableV4ControlHandleRemove
Removes the route table explicitly.
This method cannot be called on the main table or an interface-local table, an error will be returned if called. The server will close the channel after this method successfully returns.
Fields
responder: RouteTableV4RemoveResponderGetAuthorizationForRouteTable
Gets an authentication credential for this table.
The credential contains a [zx::handle::EVENT], whose duplicate is
held by the server. This credential can be passed into
fuchsia.net.routes.admin API calls to prove ownership of this route
table. The EVENT is stable throughout the lifetime of the route table.
Clients may duplicate this EVENT to make multiple API calls, or
transfer the EVENT to other clients.
- response
credentialthe authorization credential for this table.
Fields
NewRouteSet
Creates an empty route set.
- request
route_setgrants access to the [RouteSetV4] protocol.
Implementations§
Source§impl RouteTableV4Request
impl RouteTableV4Request
pub fn into_get_table_id(self) -> Option<RouteTableV4GetTableIdResponder>
pub fn into_detach(self) -> Option<RouteTableV4ControlHandle>
pub fn into_remove(self) -> Option<RouteTableV4RemoveResponder>
pub fn into_new_route_set( self, ) -> Option<(ServerEnd<RouteSetV4Marker>, RouteTableV4ControlHandle)>
Sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL