Crate fidl_fuchsia_net_routes_ext

Source
Expand description

Extensions for the fuchsia.net.routes FIDL library.

The fuchsia.net.routes API has separate V4 and V6 watcher variants to enforce maximum type safety and access control at the API layer. For the most part, these APIs are a mirror image of one another. This library provides an a single implementation that is generic over net_types::ip::Ip version, as well as conversion utilities.

Modules§

admin
Extensions for fuchsia.net.routes.admin.
rules
Extensions for route rules FIDL.
testutil
Test Utilities for the fuchsia.net.routes FIDL library.

Structs§

EffectiveRouteProperties
The effective properties of a route. This type enforces that all required fields from fnet_routes::EffectiveRouteProperties are set.
InstalledRoute
An installed route, abstracting over fnet_routes::InstalledRouteV4 and fnet_routes::InstalledRouteV6.
ResolveOptions
Resolve options for resolving route.
Route
A route, abstracting over fnet_routes::RouteV4 and fnet_routes::RouteV6.
RouteProperties
The properties of a route, abstracting over fnet_routes::RoutePropertiesV4 and fnet_routes::RoutePropertiesV6.
RouteTarget
A target of a route, abstracting over fnet_routes::RouteTargetV4 and fnet_routes::RouteTargetV6.
SpecifiedRouteProperties
The specified properties of a route. This type enforces that all required fields from fnet_routes::SpecifiedRouteProperties are set.
TableId
A newtype representing the ID of a route table.
WatcherOptions
Options for getting a route watcher.

Enums§

CollectRoutesUntilIdleError
Errors returned by collect_routes_until_idle.
EffectiveRoutePropertiesRequiredFields
Event
An event reported to the watcher, abstracting over fnet_routes::EventV4 and fnet_routes::EventV6`.
FidlConversionError
Conversion errors from fnet_routes FIDL types to the generic equivalents defined in this module.
InstalledRouteRequiredFields
NetTypeConversionError
Conversion errors from generic route types defined in this module to their FIDL equivalents.
NeverMissingFields
RouteAction
The action of a route, abstracting over fnet_routes::RouteActionV4 and fnet_routes::RouteActionV6.
RoutePropertiesRequiredFields
SpecifiedRoutePropertiesRequiredFields
Required fields in SpecifiedRouteProperties.
WaitForRoutesError
Errors returned by wait_for_routes.
WatchError
Route watcher Watch errors.
WatcherCreationError
Route watcher creation errors.

Traits§

FidlRouteIpExt
IP Extension for the fuchsia.net.routes FIDL API.
Responder
Abstracts over AddRoute and RemoveRoute RouteSet method responders.
SliceResponder
A trait for responding with a slice of objects.

Functions§

collect_routes_until_idle
Collects all existing events from the stream, stopping once the idle event is observed.
event_stream_from_state
event_stream_from_state_with_options with default WatcherOptions.
event_stream_from_state_with_options
Connects to the watcher protocol with WatcherOptions and converts the Hanging-Get style API into an Event stream.
event_stream_from_watcher
Turns the provided watcher client into a Event stream by applying Hanging-Get watch.
get_watcher
Dispatches either GetWatcherV4 or GetWatcherV6 on the state proxy.
wait_for_routes
Wait for a condition on routing state to be satisfied.
wait_for_routes_map
Wait for a condition on routing state to be satisfied, yielding a result from the predicate.
watch
Calls Watch() on the provided WatcherV4 or WatcherV6 proxy.