fidl_fuchsia_net_routes_ext::rules

Trait FidlRuleAdminIpExt

Source
pub trait FidlRuleAdminIpExt: Ip {
    type RuleTableMarker: DiscoverableProtocolMarker<RequestStream = Self::RuleTableRequestStream>;
    type RuleSetMarker: ProtocolMarker<RequestStream = Self::RuleSetRequestStream>;
    type RuleTableRequestStream: RequestStream<Ok: Send, ControlHandle: Send>;
    type RuleSetRequestStream: RequestStream<Ok: Send, ControlHandle: Send>;
    type RuleSetAddRuleResponder: Responder<Payload = Result<(), RuleSetError>, ControlHandle = Self::RuleSetControlHandle>;
    type RuleSetRemoveRuleResponder: Responder<Payload = Result<(), RuleSetError>, ControlHandle = Self::RuleSetControlHandle>;
    type RuleSetAuthenticateForRouteTableResponder: Responder<Payload = Result<(), AuthenticateForRouteTableError>, ControlHandle = Self::RuleSetControlHandle>;
    type RuleTableControlHandle: ControlHandle + Send + Clone;
    type RuleSetControlHandle: ControlHandle + Send + Clone;

    // Required methods
    fn into_rule_set_request(
        request: Request<Self::RuleSetMarker>,
    ) -> RuleSetRequest<Self>;
    fn into_rule_table_request(
        request: Request<Self::RuleTableMarker>,
    ) -> RuleTableRequest<Self>;
}
Expand description

Admin extension for the rules part of fuchsia.net.routes.admin FIDL API.

Required Associated Types§

Source

type RuleTableMarker: DiscoverableProtocolMarker<RequestStream = Self::RuleTableRequestStream>

The “rule table” protocol to use for this IP version.

Source

type RuleSetMarker: ProtocolMarker<RequestStream = Self::RuleSetRequestStream>

The “rule set” protocol to use for this IP Version.

Source

type RuleTableRequestStream: RequestStream<Ok: Send, ControlHandle: Send>

The request stream for the rule table protocol.

Source

type RuleSetRequestStream: RequestStream<Ok: Send, ControlHandle: Send>

The request stream for the rule set protocol.

Source

type RuleSetAddRuleResponder: Responder<Payload = Result<(), RuleSetError>, ControlHandle = Self::RuleSetControlHandle>

The responder for AddRule requests.

Source

type RuleSetRemoveRuleResponder: Responder<Payload = Result<(), RuleSetError>, ControlHandle = Self::RuleSetControlHandle>

The responder for RemoveRule requests.

Source

type RuleSetAuthenticateForRouteTableResponder: Responder<Payload = Result<(), AuthenticateForRouteTableError>, ControlHandle = Self::RuleSetControlHandle>

The responder for AuthenticateForRouteTable requests.

Source

type RuleTableControlHandle: ControlHandle + Send + Clone

The control handle for RuleTable protocols.

Source

type RuleSetControlHandle: ControlHandle + Send + Clone

The control handle for RuleSet protocols.

Required Methods§

Source

fn into_rule_set_request( request: Request<Self::RuleSetMarker>, ) -> RuleSetRequest<Self>

Turns a FIDL rule set request into the extension type.

Source

fn into_rule_table_request( request: Request<Self::RuleTableMarker>, ) -> RuleTableRequest<Self>

Turns a FIDL rule table request into the extension type.

Dyn Compatibility§

This trait is not dyn compatible.

In older versions of Rust, dyn compatibility was called "object safety", so this trait is not object safe.

Implementations on Foreign Types§

Source§

impl FidlRuleAdminIpExt for Ipv4

Source§

impl FidlRuleAdminIpExt for Ipv6

Implementors§