Struct ConnectIpSessionConfig
pub struct ConnectIpSessionConfig { /* private fields */ }masque only.Expand description
Configuration shared by a tunnel’s send and receive halves.
Implementations§
§impl ConnectIpSessionConfig
impl ConnectIpSessionConfig
pub fn new(policy: ConnectIpPolicy) -> ConnectIpSessionConfig
pub fn new(policy: ConnectIpPolicy) -> ConnectIpSessionConfig
A bounded session, with IPv6 disabled until its link MTU is verified.
pub fn policy(&self) -> &ConnectIpPolicy
pub fn policy(&self) -> &ConnectIpPolicy
Locally authorized packet permissions.
pub fn policy_mut(&mut self) -> &mut ConnectIpPolicy
pub fn policy_mut(&mut self) -> &mut ConnectIpPolicy
Edit local permissions before opening the session.
pub fn with_policy(self, policy: ConnectIpPolicy) -> ConnectIpSessionConfig
pub fn with_policy(self, policy: ConnectIpPolicy) -> ConnectIpSessionConfig
Replace locally authorized packet permissions.
pub fn set_policy(
&mut self,
policy: ConnectIpPolicy,
) -> &mut ConnectIpSessionConfig
pub fn set_policy( &mut self, policy: ConnectIpPolicy, ) -> &mut ConnectIpSessionConfig
Replace locally authorized packet permissions.
pub fn budget(&self) -> &TunnelBudget
pub fn budget(&self) -> &TunnelBudget
Per-tunnel rate and quota configuration.
pub fn with_budget(self, budget: TunnelBudget) -> ConnectIpSessionConfig
pub fn with_budget(self, budget: TunnelBudget) -> ConnectIpSessionConfig
Set the budget instantiated for each new session.
pub fn set_budget(
&mut self,
budget: TunnelBudget,
) -> &mut ConnectIpSessionConfig
pub fn set_budget( &mut self, budget: TunnelBudget, ) -> &mut ConnectIpSessionConfig
Set the budget instantiated for each new session.
pub fn state_limits(&self) -> ConnectIpStateLimits
pub fn state_limits(&self) -> ConnectIpStateLimits
The configured control-state bounds.
pub fn with_state_limits(
self,
state: ConnectIpStateLimits,
) -> ConnectIpSessionConfig
pub fn with_state_limits( self, state: ConnectIpStateLimits, ) -> ConnectIpSessionConfig
Set already-valid control-state bounds.
pub fn set_state_limits(
&mut self,
state: ConnectIpStateLimits,
) -> &mut ConnectIpSessionConfig
pub fn set_state_limits( &mut self, state: ConnectIpStateLimits, ) -> &mut ConnectIpSessionConfig
Set already-valid control-state bounds.
pub fn max_packet_size(&self) -> usize
pub fn max_packet_size(&self) -> usize
Largest packet accepted from either carrier.
pub fn try_with_max_packet_size(
self,
size: usize,
) -> Result<ConnectIpSessionConfig, ConnectIpError>
pub fn try_with_max_packet_size( self, size: usize, ) -> Result<ConnectIpSessionConfig, ConnectIpError>
Set the packet bound, retaining the guaranteed IPv6 MTU if configured.
pub fn try_set_max_packet_size(
&mut self,
size: usize,
) -> Result<&mut ConnectIpSessionConfig, ConnectIpError>
pub fn try_set_max_packet_size( &mut self, size: usize, ) -> Result<&mut ConnectIpSessionConfig, ConnectIpError>
Set the packet bound, retaining the guaranteed IPv6 MTU if configured.
pub fn ipv6_link_mtu(&self) -> Option<u16>
pub fn ipv6_link_mtu(&self) -> Option<u16>
IPv6 MTU guaranteed for the complete path, when known.
pub fn try_maybe_with_ipv6_link_mtu(
self,
mtu: Option<u16>,
) -> Result<ConnectIpSessionConfig, ConnectIpError>
pub fn try_maybe_with_ipv6_link_mtu( self, mtu: Option<u16>, ) -> Result<ConnectIpSessionConfig, ConnectIpError>
Configure a verified IPv6 MTU, or disable IPv6 until a successful probe.
pub fn try_maybe_set_ipv6_link_mtu(
&mut self,
mtu: Option<u16>,
) -> Result<&mut ConnectIpSessionConfig, ConnectIpError>
pub fn try_maybe_set_ipv6_link_mtu( &mut self, mtu: Option<u16>, ) -> Result<&mut ConnectIpSessionConfig, ConnectIpError>
Configure a verified IPv6 MTU, or disable IPv6 until a successful probe.
pub fn try_with_ipv6_link_mtu(
self,
mtu: u16,
) -> Result<ConnectIpSessionConfig, ConnectIpError>
pub fn try_with_ipv6_link_mtu( self, mtu: u16, ) -> Result<ConnectIpSessionConfig, ConnectIpError>
Configure a verified IPv6 MTU, or disable IPv6 until a successful probe.
pub fn try_set_ipv6_link_mtu(
&mut self,
mtu: u16,
) -> Result<&mut ConnectIpSessionConfig, ConnectIpError>
pub fn try_set_ipv6_link_mtu( &mut self, mtu: u16, ) -> Result<&mut ConnectIpSessionConfig, ConnectIpError>
Configure a verified IPv6 MTU, or disable IPv6 until a successful probe.
pub fn try_without_ipv6_link_mtu(
self,
) -> Result<ConnectIpSessionConfig, ConnectIpError>
pub fn try_without_ipv6_link_mtu( self, ) -> Result<ConnectIpSessionConfig, ConnectIpError>
Configure a verified IPv6 MTU, or disable IPv6 until a successful probe.
pub fn try_unset_ipv6_link_mtu(
&mut self,
) -> Result<&mut ConnectIpSessionConfig, ConnectIpError>
pub fn try_unset_ipv6_link_mtu( &mut self, ) -> Result<&mut ConnectIpSessionConfig, ConnectIpError>
Configure a verified IPv6 MTU, or disable IPv6 until a successful probe.
pub fn idle_timeout(&self) -> Duration
pub fn idle_timeout(&self) -> Duration
Maximum idle time without accepted packet or control activity.
pub fn try_with_idle_timeout(
self,
timeout: Duration,
) -> Result<ConnectIpSessionConfig, ConnectIpError>
pub fn try_with_idle_timeout( self, timeout: Duration, ) -> Result<ConnectIpSessionConfig, ConnectIpError>
Set a positive idle timeout.
pub fn try_set_idle_timeout(
&mut self,
timeout: Duration,
) -> Result<&mut ConnectIpSessionConfig, ConnectIpError>
pub fn try_set_idle_timeout( &mut self, timeout: Duration, ) -> Result<&mut ConnectIpSessionConfig, ConnectIpError>
Set a positive idle timeout.
pub fn write_timeout(&self) -> Duration
pub fn write_timeout(&self) -> Duration
Maximum time for a packet/control send or graceful close.
pub fn try_with_write_timeout(
self,
timeout: Duration,
) -> Result<ConnectIpSessionConfig, ConnectIpError>
pub fn try_with_write_timeout( self, timeout: Duration, ) -> Result<ConnectIpSessionConfig, ConnectIpError>
Set a positive write timeout.
pub fn try_set_write_timeout(
&mut self,
timeout: Duration,
) -> Result<&mut ConnectIpSessionConfig, ConnectIpError>
pub fn try_set_write_timeout( &mut self, timeout: Duration, ) -> Result<&mut ConnectIpSessionConfig, ConnectIpError>
Set a positive write timeout.
pub fn http_config(&self) -> SessionConfig
pub fn http_config(&self) -> SessionConfig
HTTP framing configuration; construction preserves all size invariants.
Trait Implementations§
§impl Clone for ConnectIpSessionConfig
impl Clone for ConnectIpSessionConfig
§fn clone(&self) -> ConnectIpSessionConfig
fn clone(&self) -> ConnectIpSessionConfig
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read moreAuto Trait Implementations§
impl !RefUnwindSafe for ConnectIpSessionConfig
impl !UnwindSafe for ConnectIpSessionConfig
impl Freeze for ConnectIpSessionConfig
impl Send for ConnectIpSessionConfig
impl Sync for ConnectIpSessionConfig
impl Unpin for ConnectIpSessionConfig
impl UnsafeUnpin for ConnectIpSessionConfig
Blanket Implementations§
§impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedExplicit<'a, E> for Twhere
T: 'a,
§impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
impl<'a, T, E> AsTaggedImplicit<'a, E> for Twhere
T: 'a,
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
§impl<T> FutureExt for T
impl<T> FutureExt for T
§fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
fn with_context(self, otel_cx: Context) -> WithContext<Self> ⓘ
§fn with_current_context(self) -> WithContext<Self> ⓘ
fn with_current_context(self) -> WithContext<Self> ⓘ
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
§fn in_current_span(self) -> Instrumented<Self> ⓘ
fn in_current_span(self) -> Instrumented<Self> ⓘ
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T in a rama_grpc::Request§impl<T> Pointable for T
impl<T> Pointable for T
§impl<T> PolicyExt for Twhere
T: ?Sized,
impl<T> PolicyExt for Twhere
T: ?Sized,
§fn and<P, B, E>(self, other: P) -> And<T, P>
fn and<P, B, E>(self, other: P) -> And<T, P>
Policy that returns Action::Follow only if self and other return
Action::Follow. Read more