pub fn transport_config(opt: &Opt) -> TransportConfigdiff --git a/pr/675/docs/bench/fn.transport_config.html b/pr/675/docs/bench/fn.transport_config.html index 3bbf46783..5d443f5a8 100644 --- a/pr/675/docs/bench/fn.transport_config.html +++ b/pr/675/docs/bench/fn.transport_config.html @@ -1 +1 @@ -
pub fn transport_config(opt: &Opt) -> TransportConfigLogic for controlling the rate at which data is sent
+Logic for controlling the rate at which data is sent
Bbr3 congestion controllerpacing_rate and send_quantumCubic congestion controllerNewReno congestion controllerpub struct Bbr3 { /* private fields */ }Experimental! Use at your own risk.
+pub struct Bbr3 { /* private fields */ }Experimental! Use at your own risk.
Aims for reduced buffer bloat and improved performance over high bandwidth-delay product networks. Based on https://www.ietf.org/archive/id/draft-ietf-ccwg-bbr-05.html equivalent to a combination of BBR and C states https://www.ietf.org/archive/id/draft-ietf-ccwg-bbr-05.html#section-2.4 https://www.ietf.org/archive/id/draft-ietf-ccwg-bbr-05.html#section-2.1
-equivalent to BBRHandleSpuriousLossDetection: https://www.ietf.org/archive/id/draft-ietf-ccwg-bbr-05.html#section-5.5.11.2
-equivalent to BBRHandleSpuriousLossDetection: https://www.ietf.org/archive/id/draft-ietf-ccwg-bbr-05.html#section-5.5.11.2
+now argument. This indicates one of those batches has completed.now argument. This indicates one of those batches has completed.qlog traces when they are enabled
+)qlog traces when they are enabled
This is also used to alter the pacing of the connection with
-pacing_rate and send_quantumpub struct Bbr3Config { /* private fields */ }Configuration for the Bbr3 congestion controller
pub struct Bbr3Config { /* private fields */ }Configuration for the Bbr3 congestion controller
Different pacing_gains can be set to modify the multiplier used to
increase the sending rates.
Different cwnd_gains can be set to modify the multiplier used to increase
@@ -6,13 +6,13 @@ the congestion windows.
All of these parameters are specific to different states of the algorithm: see BbrState
pacing_margin_percent is used to set a margin when calculating the pacing_rate in order
to not send at 100% capacity when calculating pacing.
Default limit on the amount of outstanding data in bytes.
+Default limit on the amount of outstanding data in bytes.
Recommended value: min(10 * max_datagram_size, max(2 * max_datagram_size, 14720))
source. Read moresource. Read moreController#[non_exhaustive]pub struct ControllerMetrics {
+ControllerMetrics in noq::congestion - Rust ControllerMetrics
Struct ControllerMetrics
#[non_exhaustive]pub struct ControllerMetrics {
pub congestion_window: u64,
pub ssthresh: Option<u64>,
pub pacing_rate: Option<u64>,
@@ -10,7 +10,7 @@ but also to alter the pacing of the connection with
§ssthresh: Option<u64>Slow start threshold (bytes)
§pacing_rate: Option<u64>Pacing rate (bytes/s)
§send_quantum: Option<u64>Send Quantum (bytes) used to control the size of packet bursts
-Trait Implementations§
Source§impl Default for ControllerMetrics
Source§fn default() -> ControllerMetrics
Returns the “default value” for a type. Read moreAuto Trait Implementations§
§impl Freeze for ControllerMetrics
§impl RefUnwindSafe for ControllerMetrics
§impl Send for ControllerMetrics
§impl Sync for ControllerMetrics
§impl Unpin for ControllerMetrics
§impl UnwindSafe for ControllerMetrics
Blanket Implementations§
Source§impl<T> Any for Twhere
+Trait Implementations§
§impl Default for ControllerMetrics
§fn default() -> ControllerMetrics
Returns the “default value” for a type. Read moreAuto Trait Implementations§
§impl Freeze for ControllerMetrics
§impl RefUnwindSafe for ControllerMetrics
§impl Send for ControllerMetrics
§impl Sync for ControllerMetrics
§impl Unpin for ControllerMetrics
§impl UnwindSafe for ControllerMetrics
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreSource§impl<T> From<T> for T
Source§fn from(t: T) -> T
Returns the argument unchanged.
diff --git a/pr/675/docs/noq/congestion/struct.Cubic.html b/pr/675/docs/noq/congestion/struct.Cubic.html
index 9a694ac9f..40265fa31 100644
--- a/pr/675/docs/noq/congestion/struct.Cubic.html
+++ b/pr/675/docs/noq/congestion/struct.Cubic.html
@@ -1,14 +1,14 @@
-Cubic in noq::congestion - Rust Cubic
pub struct Cubic { /* private fields */ }
Expand description
The RFC8312 congestion controller, as widely used for TCP
-Implementations§
Trait Implementations§
Source§impl Controller for Cubic
Source§fn on_ack(
+Cubic in noq::congestion - Rust Cubic
Struct Cubic
pub struct Cubic { /* private fields */ }
Expand description
The RFC8312 congestion controller, as widely used for TCP
+Implementations§
Trait Implementations§
§impl Controller for Cubic
§fn on_ack(
&mut self,
now: Instant,
sent: Instant,
bytes: u64,
_pn: u64,
app_limited: bool,
- rtt: &RttEstimator,
-)
Packet deliveries were confirmed Read moreSource§fn on_congestion_event(
+ rtt: &RttEstimator,
+)
Packet deliveries were confirmed Read more§fn on_congestion_event(
&mut self,
now: Instant,
sent: Instant,
@@ -16,19 +16,19 @@
is_ecn: bool,
_lost_bytes: u64,
_largest_lost_pn: u64,
-)
Packets were deemed lost or marked congested Read moreSource§fn on_spurious_congestion_event(&mut self)
Packets were incorrectly deemed lost Read moreSource§fn on_mtu_update(&mut self, new_mtu: u16)
The known MTU for the current network path has been updatedSource§fn metrics(&self) -> ControllerMetrics
Retrieve implementation-specific metrics used to populate qlog traces when they are enabled
+)Packets were deemed lost or marked congested Read more§fn on_spurious_congestion_event(&mut self)
Packets were incorrectly deemed lost Read more§fn on_mtu_update(&mut self, new_mtu: u16)
The known MTU for the current network path has been updated§fn metrics(&self) -> ControllerMetrics
Retrieve implementation-specific metrics used to populate qlog traces when they are enabled
This is also used to alter the pacing of the connection with
-pacing_rate and send_quantumSource§fn clone_box(&self) -> Box<dyn Controller>
Duplicate the controller’s stateSource§fn initial_window(&self) -> u64
Initial congestion windowSource§fn into_any(self: Box<Cubic>) -> Box<dyn Any>
Returns Self for use in down-casting to extract implementation detailsSource§fn on_sent(&mut self, now: Instant, bytes: u64, largest_pn: u64)
One or more packets were just sentSource§fn on_end_acks(
+pacing_rate and send_quantum
§fn clone_box(&self) -> Box<dyn Controller>
Duplicate the controller’s state§fn initial_window(&self) -> u64
Initial congestion window§fn into_any(self: Box<Cubic>) -> Box<dyn Any>
Returns Self for use in down-casting to extract implementation details§fn on_packet_sent(&mut self, now: Instant, bytes: u16, pn: u64)
One packet was just sent§fn on_end_acks(
&mut self,
now: Instant,
in_flight: u64,
app_limited: bool,
largest_packet_num_acked: Option<u64>,
-)
Packets are acked in batches, all with the same now argument. This indicates one of those batches has completed.Source§fn on_ack_frequency_update(
+)
Packets are acked in batches, all with the same now argument. This indicates one of those batches has completed.§fn on_packet_lost(&mut self, lost_bytes: u16, pn: u64, now: Instant)
One packet was just lost§fn on_ack_frequency_update(
&mut self,
ack_eliciting_threshold: u64,
requested_max_ack_delay: Duration,
-)
The peer’s ACK-frequency parameters have changed Read moreAuto Trait Implementations§
§impl Freeze for Cubic
§impl RefUnwindSafe for Cubic
§impl Send for Cubic
§impl Sync for Cubic
§impl Unpin for Cubic
§impl UnwindSafe for Cubic
Blanket Implementations§
Auto Trait Implementations§
§impl Freeze for Cubic
§impl RefUnwindSafe for Cubic
§impl Send for Cubic
§impl Sync for Cubic
§impl Unpin for Cubic
§impl UnwindSafe for Cubic
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreSource§impl<T> CloneToUninit for Twhere
diff --git a/pr/675/docs/noq/congestion/struct.CubicConfig.html b/pr/675/docs/noq/congestion/struct.CubicConfig.html
index 7d72fe6c3..b40507171 100644
--- a/pr/675/docs/noq/congestion/struct.CubicConfig.html
+++ b/pr/675/docs/noq/congestion/struct.CubicConfig.html
@@ -1,11 +1,11 @@
-CubicConfig in noq::congestion - Rust CubicConfig
pub struct CubicConfig { /* private fields */ }
Expand description
Configuration for the Cubic congestion controller
-Implementations§
Source§impl CubicConfig
Sourcepub fn initial_window(&mut self, value: u64) -> &mut CubicConfig
Default limit on the amount of outstanding data in bytes.
+CubicConfig in noq::congestion - Rust CubicConfig
Struct CubicConfig
pub struct CubicConfig { /* private fields */ }
Expand description
Configuration for the Cubic congestion controller
+Implementations§
§impl CubicConfig
pub fn initial_window(&mut self, value: u64) -> &mut CubicConfig
Default limit on the amount of outstanding data in bytes.
Recommended value: min(10 * max_datagram_size, max(2 * max_datagram_size, 14720))
-Trait Implementations§
Source§impl Clone for CubicConfig
Source§fn clone(&self) -> CubicConfig
Returns a duplicate of the value. Read more1.0.0 · Source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read moreSource§impl ControllerFactory for CubicConfig
Trait Implementations§
§impl Clone for CubicConfig
§fn clone(&self) -> CubicConfig
Returns a duplicate of the value. Read more1.0.0 · Source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more§impl ControllerFactory for CubicConfig
§fn build(
self: Arc<CubicConfig>,
now: Instant,
current_mtu: u16,
-) -> Box<dyn Controller>
Construct a fresh ControllerSource§impl Debug for CubicConfig
Source§impl Default for CubicConfig
Source§fn default() -> CubicConfig
Returns the “default value” for a type. Read moreAuto Trait Implementations§
§impl Freeze for CubicConfig
§impl RefUnwindSafe for CubicConfig
§impl Send for CubicConfig
§impl Sync for CubicConfig
§impl Unpin for CubicConfig
§impl UnwindSafe for CubicConfig
Blanket Implementations§
§impl Debug for CubicConfig
§impl Default for CubicConfig
§fn default() -> CubicConfig
Returns the “default value” for a type. Read moreAuto Trait Implementations§
§impl Freeze for CubicConfig
§impl RefUnwindSafe for CubicConfig
§impl Send for CubicConfig
§impl Sync for CubicConfig
§impl Unpin for CubicConfig
§impl UnwindSafe for CubicConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreSource§impl<T> CloneToUninit for Twhere
diff --git a/pr/675/docs/noq/congestion/struct.NewReno.html b/pr/675/docs/noq/congestion/struct.NewReno.html
index 0b0727bf0..e198bbd5e 100644
--- a/pr/675/docs/noq/congestion/struct.NewReno.html
+++ b/pr/675/docs/noq/congestion/struct.NewReno.html
@@ -1,18 +1,18 @@
-NewReno in noq::congestion - Rust NewReno
pub struct NewReno { /* private fields */ }
Expand description
A simple, standard congestion controller
-Implementations§
Source§impl NewReno
Sourcepub fn new(
+NewReno in noq::congestion - Rust NewReno
Struct NewReno
pub struct NewReno { /* private fields */ }
Expand description
A simple, standard congestion controller
+Implementations§
Trait Implementations§
Trait Implementations§
§impl Controller for NewReno
§fn on_ack(
&mut self,
_now: Instant,
sent: Instant,
bytes: u64,
_pn: u64,
app_limited: bool,
- _rtt: &RttEstimator,
-)
Packet deliveries were confirmed Read moreSource§fn on_congestion_event(
+ _rtt: &RttEstimator,
+)
Packet deliveries were confirmed Read more§fn on_congestion_event(
&mut self,
now: Instant,
sent: Instant,
@@ -20,19 +20,19 @@
_is_ecn: bool,
_lost_bytes: u64,
_largest_lost_pn: u64,
-)
Packets were deemed lost or marked congested Read moreSource§fn on_mtu_update(&mut self, new_mtu: u16)
The known MTU for the current network path has been updatedSource§fn metrics(&self) -> ControllerMetrics
Retrieve implementation-specific metrics used to populate qlog traces when they are enabled
+)Packets were deemed lost or marked congested Read more§fn on_mtu_update(&mut self, new_mtu: u16)
The known MTU for the current network path has been updated§fn metrics(&self) -> ControllerMetrics
Retrieve implementation-specific metrics used to populate qlog traces when they are enabled
This is also used to alter the pacing of the connection with
-pacing_rate and send_quantumSource§fn clone_box(&self) -> Box<dyn Controller>
Duplicate the controller’s stateSource§fn initial_window(&self) -> u64
Initial congestion windowSource§fn into_any(self: Box<NewReno>) -> Box<dyn Any>
Returns Self for use in down-casting to extract implementation detailsSource§fn on_sent(&mut self, now: Instant, bytes: u64, largest_pn: u64)
One or more packets were just sentSource§fn on_end_acks(
+pacing_rate and send_quantum
§fn clone_box(&self) -> Box<dyn Controller>
Duplicate the controller’s state§fn initial_window(&self) -> u64
Initial congestion window§fn into_any(self: Box<NewReno>) -> Box<dyn Any>
Returns Self for use in down-casting to extract implementation details§fn on_packet_sent(&mut self, now: Instant, bytes: u16, pn: u64)
One packet was just sent§fn on_end_acks(
&mut self,
now: Instant,
in_flight: u64,
app_limited: bool,
largest_packet_num_acked: Option<u64>,
-)
Packets are acked in batches, all with the same now argument. This indicates one of those batches has completed.Source§fn on_spurious_congestion_event(&mut self)
Packets were incorrectly deemed lost Read moreSource§fn on_ack_frequency_update(
+)
Packets are acked in batches, all with the same now argument. This indicates one of those batches has completed.§fn on_packet_lost(&mut self, lost_bytes: u16, pn: u64, now: Instant)
One packet was just lost§fn on_spurious_congestion_event(&mut self)
Packets were incorrectly deemed lost Read more§fn on_ack_frequency_update(
&mut self,
ack_eliciting_threshold: u64,
requested_max_ack_delay: Duration,
-)
The peer’s ACK-frequency parameters have changed Read moreAuto Trait Implementations§
§impl Freeze for NewReno
§impl RefUnwindSafe for NewReno
§impl Send for NewReno
§impl Sync for NewReno
§impl Unpin for NewReno
§impl UnwindSafe for NewReno
Blanket Implementations§
Auto Trait Implementations§
§impl Freeze for NewReno
§impl RefUnwindSafe for NewReno
§impl Send for NewReno
§impl Sync for NewReno
§impl Unpin for NewReno
§impl UnwindSafe for NewReno
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreSource§impl<T> CloneToUninit for Twhere
diff --git a/pr/675/docs/noq/congestion/struct.NewRenoConfig.html b/pr/675/docs/noq/congestion/struct.NewRenoConfig.html
index 8beaccb00..9a8affc2c 100644
--- a/pr/675/docs/noq/congestion/struct.NewRenoConfig.html
+++ b/pr/675/docs/noq/congestion/struct.NewRenoConfig.html
@@ -1,12 +1,12 @@
-NewRenoConfig in noq::congestion - Rust NewRenoConfig
pub struct NewRenoConfig { /* private fields */ }
Expand description
Configuration for the NewReno congestion controller
-Implementations§
Source§impl NewRenoConfig
Sourcepub fn initial_window(&mut self, value: u64) -> &mut NewRenoConfig
Default limit on the amount of outstanding data in bytes.
+NewRenoConfig in noq::congestion - Rust NewRenoConfig
Struct NewRenoConfig
pub struct NewRenoConfig { /* private fields */ }
Expand description
Configuration for the NewReno congestion controller
+Implementations§
§impl NewRenoConfig
pub fn initial_window(&mut self, value: u64) -> &mut NewRenoConfig
Default limit on the amount of outstanding data in bytes.
Recommended value: min(10 * max_datagram_size, max(2 * max_datagram_size, 14720))
-Sourcepub fn loss_reduction_factor(&mut self, value: f32) -> &mut NewRenoConfig
Reduction in congestion window when a new loss event is detected.
-Trait Implementations§
Source§impl Clone for NewRenoConfig
Source§fn clone(&self) -> NewRenoConfig
Returns a duplicate of the value. Read more1.0.0 · Source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read moreSource§impl ControllerFactory for NewRenoConfig
pub fn loss_reduction_factor(&mut self, value: f32) -> &mut NewRenoConfig
Reduction in congestion window when a new loss event is detected.
+Trait Implementations§
§impl Clone for NewRenoConfig
§fn clone(&self) -> NewRenoConfig
Returns a duplicate of the value. Read more1.0.0 · Source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more§impl ControllerFactory for NewRenoConfig
§fn build(
self: Arc<NewRenoConfig>,
now: Instant,
current_mtu: u16,
-) -> Box<dyn Controller>
Construct a fresh ControllerSource§impl Debug for NewRenoConfig
Source§impl Default for NewRenoConfig
Source§fn default() -> NewRenoConfig
Returns the “default value” for a type. Read moreAuto Trait Implementations§
§impl Freeze for NewRenoConfig
§impl RefUnwindSafe for NewRenoConfig
§impl Send for NewRenoConfig
§impl Sync for NewRenoConfig
§impl Unpin for NewRenoConfig
§impl UnwindSafe for NewRenoConfig
Blanket Implementations§
§impl Debug for NewRenoConfig
§impl Default for NewRenoConfig
§fn default() -> NewRenoConfig
Returns the “default value” for a type. Read moreAuto Trait Implementations§
§impl Freeze for NewRenoConfig
§impl RefUnwindSafe for NewRenoConfig
§impl Send for NewRenoConfig
§impl Sync for NewRenoConfig
§impl Unpin for NewRenoConfig
§impl UnwindSafe for NewRenoConfig
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreSource§impl<T> CloneToUninit for Twhere
diff --git a/pr/675/docs/noq/congestion/trait.Controller.html b/pr/675/docs/noq/congestion/trait.Controller.html
index 1bd305fa2..766903249 100644
--- a/pr/675/docs/noq/congestion/trait.Controller.html
+++ b/pr/675/docs/noq/congestion/trait.Controller.html
@@ -1,4 +1,4 @@
-Controller in noq::congestion - Rust Controller
pub trait Controller:
+Controller in noq::congestion - Rust Controller
Trait Controller
pub trait Controller:
Send
+ Sync
+ Debug {
@@ -28,7 +28,7 @@
bytes: u64,
pn: u64,
app_limited: bool,
- rtt: &RttEstimator,
+ rtt: &RttEstimator,
) { ... }
fn on_end_acks(
&mut self,
@@ -46,7 +46,7 @@
) { ... }
fn metrics(&self) -> ControllerMetrics { ... }
}
Expand description
Common interface for different congestion controllers
-Required Methods§
Required Methods§
fn on_congestion_event(
&mut self,
now: Instant,
sent: Instant,
@@ -61,36 +61,36 @@ lost.
lost_bytes indicates how many bytes were lost. This value will be 0 for ECN triggers.
largest_lost_pn indicates the packet number of the packet with the highest packet number
in the congestion event.
-
Sourcefn on_mtu_update(&mut self, new_mtu: u16)
The known MTU for the current network path has been updated
-Sourcefn clone_box(&self) -> Box<dyn Controller>
Duplicate the controller’s state
-Sourcefn initial_window(&self) -> u64
Initial congestion window
-Provided Methods§
Sourcefn on_sent(&mut self, now: Instant, bytes: u64, largest_pn: u64)
One or more packets were just sent
-Sourcefn on_packet_sent(&mut self, now: Instant, bytes: u16, pn: u64)
One packet was just sent
-fn on_mtu_update(&mut self, new_mtu: u16)
The known MTU for the current network path has been updated
+fn clone_box(&self) -> Box<dyn Controller>
Duplicate the controller’s state
+fn initial_window(&self) -> u64
Initial congestion window
+
Provided Methods§
fn on_sent(&mut self, now: Instant, bytes: u64, largest_pn: u64)
One or more packets were just sent
+fn on_packet_sent(&mut self, now: Instant, bytes: u16, pn: u64)
One packet was just sent
+fn on_ack(
&mut self,
now: Instant,
sent: Instant,
bytes: u64,
pn: u64,
app_limited: bool,
- rtt: &RttEstimator,
+ rtt: &RttEstimator,
)
Packet deliveries were confirmed
app_limited indicates whether the connection was blocked on outgoing
application data prior to receiving these acknowledgements.
-Sourcefn on_end_acks(
+
fn on_end_acks(
&mut self,
now: Instant,
in_flight: u64,
app_limited: bool,
largest_packet_num_acked: Option<u64>,
)
Packets are acked in batches, all with the same now argument. This indicates one of those batches has completed.
-Sourcefn on_packet_lost(&mut self, lost_bytes: u16, pn: u64, now: Instant)
One packet was just lost
-Sourcefn on_spurious_congestion_event(&mut self)
Packets were incorrectly deemed lost
+fn on_packet_lost(&mut self, lost_bytes: u16, pn: u64, now: Instant)
One packet was just lost
+fn on_spurious_congestion_event(&mut self)
Packets were incorrectly deemed lost
This function is called when all packets that were deemed lost (for instance because
of packet reordering) are acknowledged after the congestion event was raised.
-
fn on_ack_frequency_update(
&mut self,
ack_eliciting_threshold: u64,
requested_max_ack_delay: Duration,
@@ -101,7 +101,7 @@ before being required to send an immediate ACK (per the QUIC ACK frequency exten
an ACK when the threshold hasn’t been reached.
Controllers can use this to refine estimates that depend on peer ACK behavior (e.g.
BBR’s offload budget).
-
Sourcefn metrics(&self) -> ControllerMetrics
Retrieve implementation-specific metrics used to populate qlog traces when they are enabled
+
fn metrics(&self) -> ControllerMetrics
Retrieve implementation-specific metrics used to populate qlog traces when they are enabled
This is also used to alter the pacing of the connection with
pacing_rate and send_quantum
-Implementors§
\ No newline at end of file
+Implementors§
\ No newline at end of file
diff --git a/pr/675/docs/noq/congestion/trait.ControllerFactory.html b/pr/675/docs/noq/congestion/trait.ControllerFactory.html
index a6ea1e55d..a87032019 100644
--- a/pr/675/docs/noq/congestion/trait.ControllerFactory.html
+++ b/pr/675/docs/noq/congestion/trait.ControllerFactory.html
@@ -1,4 +1,4 @@
-ControllerFactory in noq::congestion - Rust ControllerFactory
pub trait ControllerFactory {
+ControllerFactory in noq::congestion - Rust ControllerFactory
Trait ControllerFactory
pub trait ControllerFactory {
// Required method
fn build(
self: Arc<Self>,
@@ -6,5 +6,5 @@
current_mtu: u16,
) -> Box<dyn Controller>;
}
Expand description
Constructs controllers on demand
-Required Methods§
Implementors§
Source§impl ControllerFactory for Bbr3Config
Source§impl ControllerFactory for CubicConfig
Source§impl ControllerFactory for NewRenoConfig
\ No newline at end of file
+
Required Methods§
Implementors§
§impl ControllerFactory for Bbr3Config
§impl ControllerFactory for CubicConfig
§impl ControllerFactory for NewRenoConfig
\ No newline at end of file
diff --git a/pr/675/docs/noq/crypto/index.html b/pr/675/docs/noq/crypto/index.html
index 450520176..15199c660 100644
--- a/pr/675/docs/noq/crypto/index.html
+++ b/pr/675/docs/noq/crypto/index.html
@@ -1,4 +1,4 @@
-noq::crypto - Rust Module crypto
Expand description
Traits and implementations for the QUIC cryptography protocol
+noq::crypto - Rust Module crypto
Module crypto
Expand description
Traits and implementations for the QUIC cryptography protocol
The protocol logic in noq is contained in types that abstract over the actual
cryptographic protocol used. This module contains the traits used for this
abstraction layer as well as a single implementation of these traits that uses
diff --git a/pr/675/docs/noq/crypto/rustls/index.html b/pr/675/docs/noq/crypto/rustls/index.html
index dc7792462..029efd2f3 100644
--- a/pr/675/docs/noq/crypto/rustls/index.html
+++ b/pr/675/docs/noq/crypto/rustls/index.html
@@ -1,2 +1,2 @@
-
noq::crypto::rustls - Rust Module rustls
Expand description
TLS interface based on rustls
+noq::crypto::rustls - Rust Module rustls
Module rustls
Expand description
TLS interface based on rustls
Structs§
- Handshake
Data - Authentication data for (rustls) TLS session
- NoInitial
CipherSuite - The initial cipher suite (AES-128-GCM-SHA256) is not available
- Quic
ClientConfig - A QUIC-compatible TLS client configuration
- Quic
ServerConfig - A QUIC-compatible TLS server configuration
- TlsSession
- A rustls TLS session
Enums§
- Error
- rustls reports protocol errors using this type.
\ No newline at end of file
diff --git a/pr/675/docs/noq/crypto/rustls/struct.HandshakeData.html b/pr/675/docs/noq/crypto/rustls/struct.HandshakeData.html
index 73f195bff..1f30262b1 100644
--- a/pr/675/docs/noq/crypto/rustls/struct.HandshakeData.html
+++ b/pr/675/docs/noq/crypto/rustls/struct.HandshakeData.html
@@ -1,4 +1,4 @@
-HandshakeData in noq::crypto::rustls - Rust HandshakeData
#[non_exhaustive]pub struct HandshakeData {
+HandshakeData in noq::crypto::rustls - Rust HandshakeData
Struct HandshakeData
#[non_exhaustive]pub struct HandshakeData {
pub protocol: Option<Vec<u8>>,
pub server_name: Option<String>,
pub negotiated_key_exchange_group: Option<NamedGroup>,
diff --git a/pr/675/docs/noq/crypto/rustls/struct.NoInitialCipherSuite.html b/pr/675/docs/noq/crypto/rustls/struct.NoInitialCipherSuite.html
index 0825d4a99..9fd71b888 100644
--- a/pr/675/docs/noq/crypto/rustls/struct.NoInitialCipherSuite.html
+++ b/pr/675/docs/noq/crypto/rustls/struct.NoInitialCipherSuite.html
@@ -1,8 +1,8 @@
-NoInitialCipherSuite in noq::crypto::rustls - Rust NoInitialCipherSuite
pub struct NoInitialCipherSuite { /* private fields */ }
Expand description
The initial cipher suite (AES-128-GCM-SHA256) is not available
+NoInitialCipherSuite in noq::crypto::rustls - Rust NoInitialCipherSuite
Struct NoInitialCipherSuite
pub struct NoInitialCipherSuite { /* private fields */ }
Expand description
The initial cipher suite (AES-128-GCM-SHA256) is not available
When the cipher suite is supplied with_initial(), it must be
[CipherSuite::TLS13_AES_128_GCM_SHA256]. When the cipher suite is derived from a config’s
CryptoProvider, that provider must reference a cipher suite with the same ID.
-Trait Implementations§
Source§impl Clone for NoInitialCipherSuite
Source§fn clone(&self) -> NoInitialCipherSuite
Returns a duplicate of the value. Read more1.0.0 · Source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read moreSource§impl Debug for NoInitialCipherSuite
Source§impl Display for NoInitialCipherSuite
Source§impl Error for NoInitialCipherSuite
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more1.0.0 · Source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()Auto Trait Implementations§
§impl Freeze for NoInitialCipherSuite
§impl RefUnwindSafe for NoInitialCipherSuite
§impl Send for NoInitialCipherSuite
§impl Sync for NoInitialCipherSuite
§impl Unpin for NoInitialCipherSuite
§impl UnwindSafe for NoInitialCipherSuite
Blanket Implementations§
Trait Implementations§
§impl Clone for NoInitialCipherSuite
§fn clone(&self) -> NoInitialCipherSuite
Returns a duplicate of the value. Read more1.0.0 · Source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more§impl Debug for NoInitialCipherSuite
§impl Display for NoInitialCipherSuite
§impl Error for NoInitialCipherSuite
1.30.0 · Source§fn source(&self) -> Option<&(dyn Error + 'static)>
Returns the lower-level source of this error, if any. Read more1.0.0 · Source§fn description(&self) -> &str
👎Deprecated since 1.42.0: use the Display impl or to_string()Auto Trait Implementations§
§impl Freeze for NoInitialCipherSuite
§impl RefUnwindSafe for NoInitialCipherSuite
§impl Send for NoInitialCipherSuite
§impl Sync for NoInitialCipherSuite
§impl Unpin for NoInitialCipherSuite
§impl UnwindSafe for NoInitialCipherSuite
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreSource§impl<T> CloneToUninit for Twhere
diff --git a/pr/675/docs/noq/crypto/rustls/struct.QuicClientConfig.html b/pr/675/docs/noq/crypto/rustls/struct.QuicClientConfig.html
index c3afbb998..4610fac88 100644
--- a/pr/675/docs/noq/crypto/rustls/struct.QuicClientConfig.html
+++ b/pr/675/docs/noq/crypto/rustls/struct.QuicClientConfig.html
@@ -1,4 +1,4 @@
-QuicClientConfig in noq::crypto::rustls - Rust QuicClientConfig
pub struct QuicClientConfig { /* private fields */ }
Expand description
A QUIC-compatible TLS client configuration
+QuicClientConfig in noq::crypto::rustls - Rust QuicClientConfig
Struct QuicClientConfig
pub struct QuicClientConfig { /* private fields */ }
Expand description
A QUIC-compatible TLS client configuration
noq implicitly constructs a QuicClientConfig with reasonable defaults within
ClientConfig::with_root_certificates() and ClientConfig::try_with_platform_verifier().
Alternatively, QuicClientConfig’s TryFrom implementation can be used to wrap around a
@@ -12,20 +12,20 @@ outgoing connections.
calling into_0rtt on outgoing connections returns Ok or Err. It typically allows
into_0rtt to proceed if it recognizes the server name, and defaults to an in-memory cache of
256 server names.
-Implementations§
Source§impl QuicClientConfig
Sourcepub fn with_initial(
+
Implementations§
§impl QuicClientConfig
pub fn with_initial(
inner: Arc<ClientConfig>,
initial: Suite,
) -> Result<QuicClientConfig, NoInitialCipherSuite>
Initialize a QUIC-compatible TLS client configuration with a separate initial cipher suite
This is useful if you want to avoid the initial cipher suite for traffic encryption.
-Sourcepub fn set_alpn_protocols(&mut self, alpn_protocols: Vec<Vec<u8>>)
Updates the set of ALPN protocols configured in the client config.
-Trait Implementations§
Source§impl ClientConfig for QuicClientConfig
Source§fn start_session(
+
pub fn set_alpn_protocols(&mut self, alpn_protocols: Vec<Vec<u8>>)
Updates the set of ALPN protocols configured in the client config.
+Trait Implementations§
§impl ClientConfig for QuicClientConfig
§fn start_session(
&self,
version: u32,
server_name: &str,
- params: &TransportParameters,
-) -> Result<Box<dyn Session>, ConnectError>
Start a client session with this configurationSource§impl Clone for QuicClientConfig
Source§fn clone(&self) -> QuicClientConfig
Returns a duplicate of the value. Read more1.0.0 · Source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read moreSource§impl TryFrom<Arc<ClientConfig>> for QuicClientConfig
§impl Clone for QuicClientConfig
§fn clone(&self) -> QuicClientConfig
Returns a duplicate of the value. Read more1.0.0 · Source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more§impl TryFrom<Arc<ClientConfig>> for QuicClientConfig
§type Error = NoInitialCipherSuite
The type returned in the event of a conversion error.§fn try_from(
inner: Arc<ClientConfig>,
-) -> Result<QuicClientConfig, <QuicClientConfig as TryFrom<Arc<ClientConfig>>>::Error>
Performs the conversion.Source§impl TryFrom<ClientConfig> for QuicClientConfig
Source§type Error = NoInitialCipherSuite
The type returned in the event of a conversion error.Source§fn try_from(
+) -> Result<QuicClientConfig, <QuicClientConfig as TryFrom<Arc<ClientConfig>>>::Error>
Performs the conversion.§impl TryFrom<ClientConfig> for QuicClientConfig
§type Error = NoInitialCipherSuite
The type returned in the event of a conversion error.§fn try_from(
inner: ClientConfig,
) -> Result<QuicClientConfig, <QuicClientConfig as TryFrom<ClientConfig>>::Error>
Performs the conversion.Auto Trait Implementations§
§impl Freeze for QuicClientConfig
§impl !RefUnwindSafe for QuicClientConfig
§impl Send for QuicClientConfig
§impl Sync for QuicClientConfig
§impl Unpin for QuicClientConfig
§impl !UnwindSafe for QuicClientConfig
Blanket Implementations§
Source§impl<T> Borrow<T> for Twhere
diff --git a/pr/675/docs/noq/crypto/rustls/struct.QuicServerConfig.html b/pr/675/docs/noq/crypto/rustls/struct.QuicServerConfig.html
index b7df4e0b1..abbde647e 100644
--- a/pr/675/docs/noq/crypto/rustls/struct.QuicServerConfig.html
+++ b/pr/675/docs/noq/crypto/rustls/struct.QuicServerConfig.html
@@ -1,4 +1,4 @@
-QuicServerConfig in noq::crypto::rustls - Rust QuicServerConfig
pub struct QuicServerConfig { /* private fields */ }
Expand description
A QUIC-compatible TLS server configuration
+QuicServerConfig in noq::crypto::rustls - Rust QuicServerConfig
Struct QuicServerConfig
pub struct QuicServerConfig { /* private fields */ }
Expand description
A QUIC-compatible TLS server configuration
noq implicitly constructs a QuicServerConfig with reasonable defaults within
ServerConfig::with_single_cert(). Alternatively, QuicServerConfig’s TryFrom
implementation or with_initial method can be used to wrap around a custom
@@ -8,28 +8,28 @@ implementation or with_initial method can be used to wrap around a
incoming 0-RTT data. QUIC prohibits max_early_data_size values other than 0 or u32::MAX.
The rustls::ServerConfig must have TLS 1.3 support enabled for conversion to succeed.
-Implementations§
Source§impl QuicServerConfig
Sourcepub fn with_initial(
+
Implementations§
§impl QuicServerConfig
pub fn with_initial(
inner: Arc<ServerConfig>,
initial: Suite,
) -> Result<QuicServerConfig, NoInitialCipherSuite>
Initialize a QUIC-compatible TLS client configuration with a separate initial cipher suite
This is useful if you want to avoid the initial cipher suite for traffic encryption.
-Sourcepub fn set_alpn_protocols(&mut self, alpn_protocols: Vec<Vec<u8>>)
Updates the set of ALPN protocols configured in the server config.
-Trait Implementations§
Source§impl Clone for QuicServerConfig
Source§fn clone(&self) -> QuicServerConfig
Returns a duplicate of the value. Read more1.0.0 · Source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read moreSource§impl ServerConfig for QuicServerConfig
Source§fn start_session(
+
pub fn set_alpn_protocols(&mut self, alpn_protocols: Vec<Vec<u8>>)
Updates the set of ALPN protocols configured in the server config.
+Trait Implementations§
§impl Clone for QuicServerConfig
§fn clone(&self) -> QuicServerConfig
Returns a duplicate of the value. Read more1.0.0 · Source§fn clone_from(&mut self, source: &Self)
Performs copy-assignment from source. Read more§impl ServerConfig for QuicServerConfig
§fn start_session(
&self,
version: u32,
- params: &TransportParameters,
-) -> Box<dyn Session>
Start a server session with this configuration Read moreSource§fn initial_keys(
+ params: &TransportParameters,
+) -> Box<dyn Session>
Start a server session with this configuration Read more§fn initial_keys(
&self,
version: u32,
dst_cid: ConnectionId,
-) -> Result<Keys, UnsupportedVersion>
Create the initial set of keys given the client’s initial destination ConnectionIdSource§impl TryFrom<Arc<ServerConfig>> for QuicServerConfig
§impl TryFrom<Arc<ServerConfig>> for QuicServerConfig
§type Error = NoInitialCipherSuite
The type returned in the event of a conversion error.§fn try_from(
inner: Arc<ServerConfig>,
-) -> Result<QuicServerConfig, <QuicServerConfig as TryFrom<Arc<ServerConfig>>>::Error>
Performs the conversion.Source§impl TryFrom<ServerConfig> for QuicServerConfig
Source§type Error = NoInitialCipherSuite
The type returned in the event of a conversion error.Source§fn try_from(
+) -> Result<QuicServerConfig, <QuicServerConfig as TryFrom<Arc<ServerConfig>>>::Error>
Performs the conversion.§impl TryFrom<ServerConfig> for QuicServerConfig
§type Error = NoInitialCipherSuite
The type returned in the event of a conversion error.§fn try_from(
inner: ServerConfig,
) -> Result<QuicServerConfig, <QuicServerConfig as TryFrom<ServerConfig>>::Error>
Performs the conversion.Auto Trait Implementations§
§impl Freeze for QuicServerConfig
§impl !RefUnwindSafe for QuicServerConfig
§impl Send for QuicServerConfig
§impl Sync for QuicServerConfig
§impl Unpin for QuicServerConfig
§impl !UnwindSafe for QuicServerConfig
Blanket Implementations§
Source§impl<T> Borrow<T> for Twhere
diff --git a/pr/675/docs/noq/crypto/rustls/struct.TlsSession.html b/pr/675/docs/noq/crypto/rustls/struct.TlsSession.html
index f00b9ca51..28c5745c5 100644
--- a/pr/675/docs/noq/crypto/rustls/struct.TlsSession.html
+++ b/pr/675/docs/noq/crypto/rustls/struct.TlsSession.html
@@ -1,11 +1,11 @@
-TlsSession in noq::crypto::rustls - Rust TlsSession
pub struct TlsSession { /* private fields */ }
Expand description
A rustls TLS session
-Trait Implementations§
Source§impl Session for TlsSession
Source§fn peer_identity(&self) -> Option<Box<dyn Any>>
For the rustls TlsSession, the Any type is Vec<rustls::pki_types::CertificateDer>
-Source§fn initial_keys(&self, dst_cid: ConnectionId, side: Side) -> Keys
Create the initial set of keys given the client’s initial destination ConnectionIdSource§fn handshake_data(&self) -> Option<Box<dyn Any>>
Get data negotiated during the handshake, if available Read moreSource§fn early_crypto(&self) -> Option<(Box<dyn HeaderKey>, Box<dyn PacketKey>)>
Get the 0-RTT keys if available (clients only) Read moreSource§fn early_data_accepted(&self) -> Option<bool>
If the 0-RTT-encrypted data has been accepted by the peerSource§fn is_handshaking(&self) -> bool
Returns true until the connection is fully established.Source§fn read_handshake(&mut self, buf: &[u8]) -> Result<bool, Error>
Read bytes of handshake data Read moreSource§fn transport_parameters(&self) -> Result<Option<TransportParameters>, Error>
The peer’s QUIC transport parameters Read moreSource§fn write_handshake(&mut self, buf: &mut Vec<u8>) -> Option<Keys>
Writes handshake bytes into the given buffer and optionally returns the negotiated keys Read moreSource§fn next_1rtt_keys(&mut self) -> Option<KeyPair<Box<dyn PacketKey>>>
Compute keys for the next key updateSource§fn is_valid_retry(
+TlsSession in noq::crypto::rustls - Rust TlsSession
Struct TlsSession
pub struct TlsSession { /* private fields */ }
Expand description
A rustls TLS session
+Trait Implementations§
§impl Session for TlsSession
§fn peer_identity(&self) -> Option<Box<dyn Any>>
For the rustls TlsSession, the Any type is Vec<rustls::pki_types::CertificateDer>
+§fn initial_keys(&self, dst_cid: ConnectionId, side: Side) -> Keys
Create the initial set of keys given the client’s initial destination ConnectionId§fn handshake_data(&self) -> Option<Box<dyn Any>>
Get data negotiated during the handshake, if available Read more§fn early_crypto(&self) -> Option<(Box<dyn HeaderKey>, Box<dyn PacketKey>)>
Get the 0-RTT keys if available (clients only) Read more§fn early_data_accepted(&self) -> Option<bool>
If the 0-RTT-encrypted data has been accepted by the peer§fn is_handshaking(&self) -> bool
Returns true until the connection is fully established.§fn read_handshake(&mut self, buf: &[u8]) -> Result<bool, Error>
Read bytes of handshake data Read more§fn transport_parameters(&self) -> Result<Option<TransportParameters>, Error>
The peer’s QUIC transport parameters Read more§fn write_handshake(&mut self, buf: &mut Vec<u8>) -> Option<Keys>
Writes handshake bytes into the given buffer and optionally returns the negotiated keys Read more§fn next_1rtt_keys(&mut self) -> Option<KeyPair<Box<dyn PacketKey>>>
Compute keys for the next key update§fn is_valid_retry(
&self,
orig_dst_cid: ConnectionId,
header: &[u8],
payload: &[u8],
-) -> bool
Verify the integrity of a retry packet Read moreSource§fn export_keying_material(
+) -> bool
Verify the integrity of a retry packet Read more§fn export_keying_material(
&self,
output: &mut [u8],
label: &[u8],
diff --git a/pr/675/docs/noq/crypto/struct.CryptoError.html b/pr/675/docs/noq/crypto/struct.CryptoError.html
index 13192995d..efdf73c10 100644
--- a/pr/675/docs/noq/crypto/struct.CryptoError.html
+++ b/pr/675/docs/noq/crypto/struct.CryptoError.html
@@ -1,5 +1,5 @@
-CryptoError in noq::crypto - Rust CryptoError
pub struct CryptoError;
Expand description
Generic crypto errors
-Trait Implementations§
Auto Trait Implementations§
§impl Freeze for CryptoError
§impl RefUnwindSafe for CryptoError
§impl Send for CryptoError
§impl Sync for CryptoError
§impl Unpin for CryptoError
§impl UnwindSafe for CryptoError
Blanket Implementations§
Source§impl<T> Any for Twhere
+CryptoError in noq::crypto - Rust CryptoError
Struct CryptoError
pub struct CryptoError;
Expand description
Generic crypto errors
+Trait Implementations§
Auto Trait Implementations§
§impl Freeze for CryptoError
§impl RefUnwindSafe for CryptoError
§impl Send for CryptoError
§impl Sync for CryptoError
§impl Unpin for CryptoError
§impl UnwindSafe for CryptoError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read moreSource§impl<T> From<T> for T
Source§fn from(t: T) -> T
Returns the argument unchanged.
diff --git a/pr/675/docs/noq/crypto/struct.ExportKeyingMaterialError.html b/pr/675/docs/noq/crypto/struct.ExportKeyingMaterialError.html
index b6159ab6c..0d4cc38c5 100644
--- a/pr/675/docs/noq/crypto/struct.ExportKeyingMaterialError.html
+++ b/pr/675/docs/noq/crypto/struct.ExportKeyingMaterialError.html
@@ -1,7 +1,7 @@
-ExportKeyingMaterialError in noq::crypto - Rust ExportKeyingMaterialError
pub struct ExportKeyingMaterialError;
Expand description
Error returned by Session::export_keying_material.
+ExportKeyingMaterialError in noq::crypto - Rust ExportKeyingMaterialError
Struct ExportKeyingMaterialError
pub struct ExportKeyingMaterialError;
Expand description
Error returned by Session::export_keying_material.
This error occurs if the requested output length is too large.
-Trait Implementations§
Source§impl Debug for ExportKeyingMaterialError
Source§impl Eq for ExportKeyingMaterialError
Source§impl StructuralPartialEq for ExportKeyingMaterialError
Auto Trait Implementations§
§impl Freeze for ExportKeyingMaterialError
§impl RefUnwindSafe for ExportKeyingMaterialError
§impl Send for ExportKeyingMaterialError
§impl Sync for ExportKeyingMaterialError
§impl Unpin for ExportKeyingMaterialError
§impl UnwindSafe for ExportKeyingMaterialError
Blanket Implementations§
Trait Implementations§
§impl Debug for ExportKeyingMaterialError
§impl PartialEq for ExportKeyingMaterialError
§impl Eq for ExportKeyingMaterialError
§impl StructuralPartialEq for ExportKeyingMaterialError
Auto Trait Implementations§
§impl Freeze for ExportKeyingMaterialError
§impl RefUnwindSafe for ExportKeyingMaterialError
§impl Send for ExportKeyingMaterialError
§impl Sync for ExportKeyingMaterialError
§impl Unpin for ExportKeyingMaterialError
§impl UnwindSafe for ExportKeyingMaterialError
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more§impl<Q, K> Equivalent<K> for Qwhere
diff --git a/pr/675/docs/noq/crypto/struct.KeyPair.html b/pr/675/docs/noq/crypto/struct.KeyPair.html
index 41d57b561..5ed5769c6 100644
--- a/pr/675/docs/noq/crypto/struct.KeyPair.html
+++ b/pr/675/docs/noq/crypto/struct.KeyPair.html
@@ -1,4 +1,4 @@
-KeyPair in noq::crypto - Rust KeyPair
pub struct KeyPair<T> {
+KeyPair in noq::crypto - Rust KeyPair
Struct KeyPair
pub struct KeyPair<T> {
pub local: T,
pub remote: T,
}
Expand description
A pair of keys for bidirectional communication
diff --git a/pr/675/docs/noq/crypto/struct.Keys.html b/pr/675/docs/noq/crypto/struct.Keys.html
index 81f967a26..3fd25a4cb 100644
--- a/pr/675/docs/noq/crypto/struct.Keys.html
+++ b/pr/675/docs/noq/crypto/struct.Keys.html
@@ -1,4 +1,4 @@
-Keys in noq::crypto - Rust Keys
pub struct Keys {
+Keys in noq::crypto - Rust Keys
Struct Keys
pub struct Keys {
pub header: KeyPair<Box<dyn HeaderKey>>,
pub packet: KeyPair<Box<dyn PacketKey>>,
}
Expand description
A complete set of keys for a certain packet space
diff --git a/pr/675/docs/noq/crypto/struct.UnsupportedVersion.html b/pr/675/docs/noq/crypto/struct.UnsupportedVersion.html
index 5a7e5e11a..30d9c25a5 100644
--- a/pr/675/docs/noq/crypto/struct.UnsupportedVersion.html
+++ b/pr/675/docs/noq/crypto/struct.UnsupportedVersion.html
@@ -1,5 +1,5 @@
-UnsupportedVersion in noq::crypto - Rust UnsupportedVersion
pub struct UnsupportedVersion;
Expand description
Error indicating that the specified QUIC version is not supported
-Trait Implementations§
Source§impl Debug for UnsupportedVersion
Source§impl From<UnsupportedVersion> for ConnectError
Source§fn from(_: UnsupportedVersion) -> ConnectError
Converts to this type from the input type.Auto Trait Implementations§
§impl Freeze for UnsupportedVersion
§impl RefUnwindSafe for UnsupportedVersion
§impl Send for UnsupportedVersion
§impl Sync for UnsupportedVersion
§impl Unpin for UnsupportedVersion
§impl UnwindSafe for UnsupportedVersion
Blanket Implementations§
Source§impl<T> Any for Twhere
+UnsupportedVersion in noq::crypto - Rust UnsupportedVersion
Struct UnsupportedVersion
pub struct UnsupportedVersion;
Expand description
Error indicating that the specified QUIC version is not supported
+Trait Implementations§
§impl Debug for UnsupportedVersion
§fn