pub struct RoutingRule {Show 17 fields
pub rule_tag: String,
pub domain: Vec<Domain>,
pub cidr: Vec<Cidr>,
pub geoip: Vec<GeoIp>,
pub port_range: Option<PortRange>,
pub port_list: Option<PortList>,
pub network_list: Option<NetworkList>,
pub networks: Vec<i32>,
pub source_cidr: Vec<Cidr>,
pub source_geoip: Vec<GeoIp>,
pub source_port_list: Option<PortList>,
pub user_email: Vec<String>,
pub inbound_tag: Vec<String>,
pub protocol: Vec<String>,
pub attributes: HashMap<String, String>,
pub domain_matcher: String,
pub target_tag: Option<TargetTag>,
}Fields§
§rule_tag: String§domain: Vec<Domain>List of domains for target domain matching.
cidr: Vec<Cidr>List of CIDRs for target IP address matching. Deprecated. Use geoip below.
geoip: Vec<GeoIp>List of GeoIPs for target IP address matching. If this entry exists, the cidr above will have no effect. GeoIP fields with the same country code are supposed to contain exactly same content. They will be merged during runtime. For customized GeoIPs, please leave country code empty.
port_range: Option<PortRange>A range of port [from, to]. If the destination port is in this range, this rule takes effect. Deprecated. Use port_list.
port_list: Option<PortList>List of ports.
network_list: Option<NetworkList>List of networks. Deprecated. Use networks.
networks: Vec<i32>List of networks for matching.
source_cidr: Vec<Cidr>List of CIDRs for source IP address matching.
source_geoip: Vec<GeoIp>List of GeoIPs for source IP address matching. If this entry exists, the source_cidr above will have no effect.
source_port_list: Option<PortList>List of ports for source port matching.
user_email: Vec<String>§inbound_tag: Vec<String>§protocol: Vec<String>§attributes: HashMap<String, String>§domain_matcher: String§target_tag: Option<TargetTag>Implementations§
Trait Implementations§
Source§impl Clone for RoutingRule
impl Clone for RoutingRule
Source§fn clone(&self) -> RoutingRule
fn clone(&self) -> RoutingRule
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreSource§impl Debug for RoutingRule
impl Debug for RoutingRule
Source§impl Default for RoutingRule
impl Default for RoutingRule
Source§impl Message for RoutingRule
impl Message for RoutingRule
Source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
Source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
Source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
Source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
Source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
Source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self. Read moreSource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self.Source§impl Name for RoutingRule
impl Name for RoutingRule
Source§const NAME: &'static str = "RoutingRule"
const NAME: &'static str = "RoutingRule"
Message.
This name is the same as it appears in the source .proto file, e.g. FooBar.Source§const PACKAGE: &'static str = "xray.app.router"
const PACKAGE: &'static str = "xray.app.router"
., e.g. google.protobuf.Source§fn full_name() -> String
fn full_name() -> String
Message.
It’s prefixed with the package name and names of any parent messages,
e.g. google.rpc.BadRequest.FieldViolation.
By default, this is the package name followed by the message name.
Fully-qualified names must be unique within a domain of Type URLs.Source§impl PartialEq for RoutingRule
impl PartialEq for RoutingRule
impl StructuralPartialEq for RoutingRule
Auto Trait Implementations§
impl Freeze for RoutingRule
impl RefUnwindSafe for RoutingRule
impl Send for RoutingRule
impl Sync for RoutingRule
impl Unpin for RoutingRule
impl UnwindSafe for RoutingRule
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
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
Source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a tonic::Request