class RouteSetV6
Defined at line 7103 of file fidling/gen/sdk/fidl/fuchsia.net.routes.admin/fuchsia.net.routes.admin/hlcpp/fuchsia/net/routes/admin/cpp/fidl.h
Provides mutable access over a set of system's IPv6 routes.
The system maintains a single global routing table. A route set offers an
isolated window into a subset of the global routing table: clients are free
to manage the routes within their own route set, but not the route set of
others. Thus the global routing table represents the union of all existing
route sets. A route must be removed from all route sets to which it belongs
before it will be removed from the global table.
This protocol encodes the lifetime of the route set. Closing the client end
removes the route set, and will also remove any routes that were
solely-owned by this route set.
Note that the system reserves the right to remove routes out from underneath
this route set. This will always manifest as a `removed` event on the
[`fuchsia.net.routes/WatcherV6`] protocol.
If the route table backing this route set is removed, then this protocol
will be closed with a `ZX_ERR_UNAVAILABLE` epitaph.
Public Methods
void ~RouteSetV6 ()
void AuthenticateForInterface (::fuchsia::net::resources::ProofOfInterfaceAuthorization credential, AuthenticateForInterfaceCallback callback)
Authenticate this route set to manage routes on the provided interface.
Authentication is valid for the lifetime of the route set.
+ request `interface` the authentication credential for an interface.
void AddRoute (::fuchsia::net::routes::RouteV6 route, AddRouteCallback callback)
Adds a route to this route set.
+ request `route` the route to add.
- response `did_add` true iff the route was added to this `RouteSet`
as a result of this call.
void RemoveRoute (::fuchsia::net::routes::RouteV6 route, RemoveRouteCallback callback)
Removes a route from this route set.
Note that if this route also exists other route sets, it will not be
removed from the global routing table.
+ request `route` the route to remove.
- response `did_remove` true iff the route was removed from this
`RouteSet` as a result of this call.