SYMBOL INDEX (5348 symbols across 207 files) FILE: apps/src/args.rs type Args (line 30) | pub trait Args { method with_docopt (line 31) | fn with_docopt(docopt: &docopt::Docopt) -> Self; method with_docopt (line 88) | fn with_docopt(docopt: &docopt::Docopt) -> Self { method with_docopt (line 325) | fn with_docopt(docopt: &docopt::Docopt) -> Self { method with_docopt (line 495) | fn with_docopt(docopt: &docopt::Docopt) -> Self { type CommonArgs (line 35) | pub struct CommonArgs { method default (line 230) | fn default() -> Self { constant CLIENT_USAGE (line 259) | pub const CLIENT_USAGE: &str = "Usage: type ClientArgs (line 306) | pub struct ClientArgs { method default (line 420) | fn default() -> Self { constant SERVER_USAGE (line 441) | pub const SERVER_USAGE: &str = "Usage: type ServerArgs (line 482) | pub struct ServerArgs { FILE: apps/src/bin/quiche-client.rs function main (line 33) | fn main() { FILE: apps/src/bin/quiche-server.rs constant MAX_BUF_SIZE (line 52) | const MAX_BUF_SIZE: usize = 65507; constant MAX_DATAGRAM_SIZE (line 54) | const MAX_DATAGRAM_SIZE: usize = 1350; function main (line 56) | fn main() { function mint_token (line 655) | fn mint_token(hdr: &quiche::Header, src: &net::SocketAddr) -> Vec { function validate_token (line 678) | fn validate_token<'a>( function handle_path_events (line 703) | fn handle_path_events(client: &mut Client) { function set_txtime_sockopt (line 777) | fn set_txtime_sockopt(sock: &mio::net::UdpSocket) -> io::Result<()> { function set_txtime_sockopt (line 793) | fn set_txtime_sockopt(_: &mio::net::UdpSocket) -> io::Result<()> { FILE: apps/src/client.rs constant MAX_DATAGRAM_SIZE (line 38) | const MAX_DATAGRAM_SIZE: usize = 1350; type ClientError (line 41) | pub enum ClientError { function connect (line 47) | pub fn connect( FILE: apps/src/common.rs function stdout_sink (line 54) | pub fn stdout_sink(out: String) { constant H3_MESSAGE_ERROR (line 58) | const H3_MESSAGE_ERROR: u64 = 0x10E; constant HTTP_09 (line 64) | pub const HTTP_09: [&[u8]; 2] = [b"hq-interop", b"http/0.9"]; constant HTTP_3 (line 65) | pub const HTTP_3: [&[u8]; 1] = [b"h3"]; type PartialRequest (line 68) | pub struct PartialRequest { type PartialResponse (line 72) | pub struct PartialResponse { type ClientId (line 81) | pub type ClientId = u64; type Client (line 83) | pub struct Client { type ClientIdMap (line 103) | pub type ClientIdMap = HashMap, ClientId>; type ClientMap (line 104) | pub type ClientMap = HashMap; function make_resource_writer (line 112) | fn make_resource_writer( function autoindex (line 137) | fn autoindex(path: path::PathBuf, index: &str) -> path::PathBuf { function make_qlog_writer (line 149) | pub fn make_qlog_writer( function dump_json (line 164) | fn dump_json(reqs: &[Http3Request], output_sink: &mut dyn FnMut(String)) { function hdrs_to_strings (line 241) | pub fn hdrs_to_strings(hdrs: &[quiche::h3::Header]) -> Vec<(String, Stri... function generate_cid_and_reset_token (line 253) | pub fn generate_cid_and_reset_token( function priority_field_value_from_query_string (line 266) | pub fn priority_field_value_from_query_string(url: &url::Url) -> Option<... function priority_from_query_string (line 289) | pub fn priority_from_query_string(url: &url::Url) -> Option { function send_h3_dgram (line 313) | fn send_h3_dgram( type HttpConn (line 332) | pub trait HttpConn { method send_requests (line 333) | fn send_requests( method handle_responses (line 337) | fn handle_responses( method report_incomplete (line 342) | fn report_incomplete(&self, start: &std::time::Instant) -> bool; method handle_requests (line 344) | fn handle_requests( method handle_writable (line 351) | fn handle_writable( method send_requests (line 442) | fn send_requests( method handle_responses (line 480) | fn handle_responses( method report_incomplete (line 552) | fn report_incomplete(&self, start: &std::time::Instant) -> bool { method handle_requests (line 567) | fn handle_requests( method handle_writable (line 676) | fn handle_writable( method send_requests (line 1134) | fn send_requests( method handle_responses (line 1235) | fn handle_responses( method report_incomplete (line 1387) | fn report_incomplete(&self, start: &std::time::Instant) -> bool { method handle_requests (line 1406) | fn handle_requests( method handle_writable (line 1611) | fn handle_writable( function writable_response_streams (line 357) | pub fn writable_response_streams( type Http09Request (line 364) | pub struct Http09Request { type Http3Request (line 373) | struct Http3Request { type Http3ResponseBuilderResult (line 385) | type Http3ResponseBuilderResult = std::result::Result< type Http09Conn (line 390) | pub struct Http09Conn { method with_urls (line 411) | pub fn with_urls( method default (line 399) | fn default() -> Self { type Http3DgramSender (line 717) | pub struct Http3DgramSender { method new (line 725) | pub fn new(dgram_count: u64, dgram_content: String, flow_id: u64) -> S... function make_h3_config (line 735) | fn make_h3_config( type Http3Conn (line 758) | pub struct Http3Conn { method with_urls (line 773) | pub fn with_urls( method with_conn (line 867) | pub fn with_conn( method build_h3_response (line 900) | fn build_h3_response( FILE: apps/src/sendto.rs function detect_gso (line 33) | pub fn detect_gso(socket: &mio::net::UdpSocket, segment_size: usize) -> ... function detect_gso (line 43) | pub fn detect_gso(_socket: &mio::net::UdpSocket, _segment_size: usize) -... function send_to_gso_pacing (line 49) | fn send_to_gso_pacing( function send_to_gso_pacing (line 86) | fn send_to_gso_pacing( function send_to (line 97) | pub fn send_to( function std_time_to_u64 (line 134) | fn std_time_to_u64(time: &std::time::Instant) -> u64 { FILE: buffer-pool/src/buffer.rs type ConsumeBuffer (line 41) | pub struct ConsumeBuffer { method from_vec (line 82) | pub fn from_vec(inner: Vec) -> Self { method into_vec (line 87) | pub fn into_vec(mut self) -> Vec { method pop_front (line 98) | pub fn pop_front(&mut self, count: usize) { method expand (line 103) | pub fn expand(&mut self, count: usize) { method truncate (line 111) | pub fn truncate(&mut self, count: usize) { method add_prefix (line 115) | pub fn add_prefix(&mut self, prefix: &[u8]) -> bool { method update_metrics_after_resize (line 126) | fn update_metrics_after_resize(&mut self, old_capacity: usize) { method extend (line 139) | fn extend>(&mut self, iter: T) { type Target (line 47) | type Target = [u8]; method deref (line 49) | fn deref(&self) -> &Self::Target { method deref_mut (line 55) | fn deref_mut(&mut self) -> &mut Self::Target { method reuse (line 61) | fn reuse(&mut self, val: usize) -> bool { method capacity (line 70) | fn capacity(&self) -> usize { method drop (line 76) | fn drop(&mut self) { function test_metrics (line 151) | fn test_metrics() { FILE: buffer-pool/src/lib.rs function pool_idle_count (line 47) | pub fn pool_idle_count(name: &'static str) -> Gauge; function pool_idle_bytes (line 49) | pub fn pool_idle_bytes(name: &'static str) -> Gauge; function pool_active_count (line 51) | pub fn pool_active_count(name: &'static str) -> Gauge; function consume_buffer_total_bytes (line 56) | pub fn consume_buffer_total_bytes() -> Gauge; type Pool (line 61) | pub struct Pool { type QueueShard (line 69) | struct QueueShard { function new (line 84) | const fn new(trim: usize, max: usize, name: &'static str) -> Self { type Pooled (line 97) | pub struct Pooled { function new (line 103) | fn new(inner: T, shard: &'static QueueShard) -> Self { function into_inner (line 108) | pub fn into_inner(mut self) -> T { method drop (line 114) | fn drop(&mut self) { function get (line 168) | pub fn get(&'static self) -> Pooled { function get_empty (line 188) | pub fn get_empty(&'static self) -> Pooled { function get_with (line 196) | pub fn get_with(&'static self, f: impl Fn(&mut T)) -> Pooled { function from_owned (line 202) | pub fn from_owned(&'static self, inner: T) -> Pooled { function with_slice (line 211) | pub fn with_slice(&'static self, v: &'a [u8]) -> Pooled { type Target (line 219) | type Target = T; method deref (line 221) | fn deref(&self) -> &Self::Target { method deref_mut (line 227) | fn deref_mut(&mut self) -> &mut Self::Target { type Reuse (line 235) | pub trait Reuse { method reuse (line 236) | fn reuse(&mut self, trim: usize) -> bool; method capacity (line 240) | fn capacity(&self) -> usize; method reuse (line 244) | fn reuse(&mut self, trim: usize) -> bool { method capacity (line 250) | fn capacity(&self) -> usize { method reuse (line 256) | fn reuse(&mut self, val: usize) -> bool { method capacity (line 262) | fn capacity(&self) -> usize { function test_sharding (line 272) | fn test_sharding() { function test_creation (line 440) | fn test_creation() { FILE: buffer-pool/src/raw_pool_buf_io.rs type PooledBuf (line 34) | pub type PooledBuf = Pooled; type RawPoolBufIo (line 37) | pub trait RawPoolBufIo: Send { method poll_send_reserve (line 38) | fn poll_send_reserve(&mut self, cx: &mut Context) -> Poll io::Result<()>; method poll_recv_buf (line 42) | fn poll_recv_buf(&mut self, cx: &mut Context) -> Poll Option>; method into_fd (line 84) | fn into_fd(self) -> Option; method as_buf_io (line 86) | fn as_buf_io(&mut self) -> Option<&mut dyn RawPoolBufDatagramIo> { method as_raw_io (line 535) | fn as_raw_io(&self) -> Option> { method into_fd (line 540) | fn into_fd(self) -> Option { method as_raw_io (line 598) | fn as_raw_io(&self) -> Option> { method into_fd (line 603) | fn into_fd(self) -> Option { method as_raw_io (line 638) | fn as_raw_io(&self) -> Option> { method into_fd (line 642) | fn into_fd(self) -> Option { type DatagramSocketSend (line 92) | pub trait DatagramSocketSend: Sync { method poll_send (line 111) | fn poll_send(&self, cx: &mut Context, buf: &[u8]) -> Poll Option<&UdpSocket> { method peer_addr (line 191) | fn peer_addr(&self) -> Option { method poll_send (line 413) | fn poll_send(&self, cx: &mut Context, buf: &[u8]) -> Poll Option<&UdpSocket> { method peer_addr (line 437) | fn peer_addr(&self) -> Option { method poll_send (line 547) | fn poll_send(&self, cx: &mut Context, buf: &[u8]) -> Poll Option<&UdpSocket> { method peer_addr (line 570) | fn peer_addr(&self) -> Option { method poll_send (line 650) | fn poll_send(&self, cx: &mut Context, buf: &[u8]) -> Poll Poll Option<&UdpSocket> { method peer_addr (line 792) | fn peer_addr(&self) -> Option { type DatagramSocketSendExt (line 203) | pub trait DatagramSocketSendExt: DatagramSocketSend { method send (line 206) | fn send(&self, buf: &[u8]) -> impl Future> { method send_to (line 212) | fn send_to( method send_many (line 221) | fn send_many( method try_send (line 227) | fn try_send(&self, buf: &[u8]) -> io::Result { method try_send_many (line 235) | fn try_send_many(&self, bufs: &[ReadBuf<'_>]) -> io::Result { type DatagramSocketRecv (line 246) | pub trait DatagramSocketRecv: Send { method poll_recv (line 265) | fn poll_recv( method poll_recv_from (line 287) | fn poll_recv_from( method poll_recv_many (line 314) | fn poll_recv_many( method as_udp_socket (line 336) | fn as_udp_socket(&self) -> Option<&UdpSocket> { method poll_recv (line 444) | fn poll_recv( method poll_recv_from (line 451) | fn poll_recv_from( method poll_recv_many (line 458) | fn poll_recv_many( method as_udp_socket (line 465) | fn as_udp_socket(&self) -> Option<&UdpSocket> { method poll_recv (line 577) | fn poll_recv( method poll_recv_many (line 585) | fn poll_recv_many( method as_udp_socket (line 591) | fn as_udp_socket(&self) -> Option<&UdpSocket> { method poll_recv (line 610) | fn poll_recv( method poll_recv_from (line 617) | fn poll_recv_from( method poll_recv_many (line 625) | fn poll_recv_many( method as_udp_socket (line 631) | fn as_udp_socket(&self) -> Option<&UdpSocket> { method poll_recv (line 676) | fn poll_recv( method poll_recv_many (line 684) | fn poll_recv_many( method poll_recv (line 694) | fn poll_recv( method poll_recv_many (line 702) | fn poll_recv_many( type DatagramSocketRecvExt (line 348) | pub trait DatagramSocketRecvExt: DatagramSocketRecv { method recv (line 351) | fn recv( method recv_from (line 365) | fn recv_from( method recv_many (line 381) | fn recv_many( type AsDatagramSocketSend (line 395) | pub trait AsDatagramSocketSend { method as_datagram_socket_send (line 398) | fn as_datagram_socket_send(&self) -> &Self::AsSend; type AsSend (line 474) | type AsSend = T; method as_datagram_socket_send (line 476) | fn as_datagram_socket_send(&self) -> &Self::AsSend { type AsSend (line 485) | type AsSend = T; method as_datagram_socket_send (line 487) | fn as_datagram_socket_send(&self) -> &Self::AsSend { type AsSend (line 496) | type AsSend = T; method as_datagram_socket_send (line 498) | fn as_datagram_socket_send(&self) -> &Self::AsSend { type AsDatagramSocketRecv (line 404) | pub trait AsDatagramSocketRecv { method as_datagram_socket_recv (line 407) | fn as_datagram_socket_recv(&mut self) -> &mut Self::AsRecv; method as_shared_datagram_socket_recv (line 408) | fn as_shared_datagram_socket_recv(&self) -> &Self::AsRecv; type AsRecv (line 507) | type AsRecv = T; method as_datagram_socket_recv (line 509) | fn as_datagram_socket_recv(&mut self) -> &mut Self::AsRecv { method as_shared_datagram_socket_recv (line 513) | fn as_shared_datagram_socket_recv(&self) -> &Self::AsRecv { type AsRecv (line 522) | type AsRecv = T; method as_datagram_socket_recv (line 524) | fn as_datagram_socket_recv(&mut self) -> &mut Self::AsRecv { method as_shared_datagram_socket_recv (line 528) | fn as_shared_datagram_socket_recv(&self) -> &Self::AsRecv { function into_owned_fd (line 712) | fn into_owned_fd(into_fd: F) -> OwnedFd { type MaybeConnectedSocket (line 736) | pub struct MaybeConnectedSocket { function new (line 742) | pub fn new(inner: T) -> Self { function inner (line 751) | pub fn inner(&self) -> &T { function into_inner (line 756) | pub fn into_inner(self) -> T { FILE: datagram-socket/src/lib.rs function is_nonblocking (line 47) | pub fn is_nonblocking(fd: &impl AsRawFd) -> std::io::Result { function is_nonblocking (line 62) | pub fn is_nonblocking(_fd: &impl AsRawFd) -> std::io::Result { FILE: datagram-socket/src/mmsg.rs constant MAX_MMSG (line 37) | const MAX_MMSG: usize = 16; function recvmmsg (line 39) | pub fn recvmmsg(fd: BorrowedFd, bufs: &mut [ReadBuf<'_>]) -> io::Result<... function sendmmsg (line 105) | pub fn sendmmsg(fd: BorrowedFd, bufs: &[ReadBuf<'_>]) -> io::Result io::Result<()> { function sendmmsg (line 240) | async fn sendmmsg() -> io::Result<()> { FILE: datagram-socket/src/shutdown.rs type ShutdownConnection (line 39) | pub trait ShutdownConnection { method poll_shutdown (line 71) | fn poll_shutdown(&mut self, cx: &mut Context) -> Poll>; method poll_shutdown (line 76) | fn poll_shutdown(&mut self, _cx: &mut Context) -> Poll> { method poll_shutdown (line 84) | fn poll_shutdown(&mut self, _cx: &mut Context) -> Poll> { method poll_shutdown (line 91) | fn poll_shutdown(&mut self, _cx: &mut Context) -> Poll> { type ShutdownConnectionExt (line 103) | pub trait ShutdownConnectionExt: ShutdownConnection { method shutdown_connection (line 105) | fn shutdown_connection(&mut self) -> impl Future SocketStats; method as_quic_stats (line 42) | fn as_quic_stats(&self) -> Option<&Arc> { type SocketStats (line 48) | pub struct SocketStats { type StartupExit (line 74) | pub struct StartupExit { type StartupExitReason (line 82) | pub enum StartupExitReason { type BoxError (line 96) | type BoxError = Box; type QuicAuditStats (line 99) | pub struct QuicAuditStats { method new (line 132) | pub fn new(quic_connection_id: Vec) -> Self { method recvd_conn_close_transport_error_code (line 150) | pub fn recvd_conn_close_transport_error_code(&self) -> i64 { method sent_conn_close_transport_error_code (line 156) | pub fn sent_conn_close_transport_error_code(&self) -> i64 { method recvd_conn_close_application_error_code (line 162) | pub fn recvd_conn_close_application_error_code(&self) -> i64 { method sent_conn_close_application_error_code (line 168) | pub fn sent_conn_close_application_error_code(&self) -> i64 { method set_recvd_conn_close_transport_error_code (line 174) | pub fn set_recvd_conn_close_transport_error_code( method set_sent_conn_close_transport_error_code (line 182) | pub fn set_sent_conn_close_transport_error_code( method set_recvd_conn_close_application_error_code (line 190) | pub fn set_recvd_conn_close_application_error_code( method set_sent_conn_close_application_error_code (line 198) | pub fn set_sent_conn_close_application_error_code( method transport_handshake_duration_us (line 206) | pub fn transport_handshake_duration_us(&self) -> i64 { method set_transport_handshake_start (line 211) | pub fn set_transport_handshake_start(&self, start_time: SystemTime) { method set_transport_handshake_duration (line 216) | pub fn set_transport_handshake_duration(&self, duration: Duration) { method transport_handshake_start (line 223) | pub fn transport_handshake_start(&self) -> Arc u64 { method set_max_loss_pct (line 250) | pub fn set_max_loss_pct(&self, max_loss_pct: u8) { method max_loss_pct (line 255) | pub fn max_loss_pct(&self) -> u8 { method set_initial_so_mark_data (line 261) | pub fn set_initial_so_mark_data(&self, value: Option<[u8; 4]>) { method initial_so_mark_data (line 269) | pub fn initial_so_mark_data(&self) -> Option<&[u8; 4]> { type StreamClosureKind (line 275) | pub enum StreamClosureKind { FILE: fuzz/src/lib.rs type PktsData (line 6) | pub struct PktsData<'a> { type PktIterator (line 10) | pub struct PktIterator<'a> { type Item (line 16) | type Item = &'a [u8]; method next (line 18) | fn next(&mut self) -> Option { function iter (line 38) | pub fn iter(&self) -> PktIterator<'_> { function reset_rand_for_fuzzing (line 46) | pub fn reset_rand_for_fuzzing() { function get_cert_path (line 61) | pub fn get_cert_path() -> (String, String) { function server_process (line 90) | pub fn server_process( FILE: h3i/examples/content_length_mismatch.rs constant STREAM_ID (line 14) | const STREAM_ID: u64 = 0; function main (line 19) | fn main() { function encode_header_block (line 88) | fn encode_header_block( FILE: h3i/examples/stream_limit.rs function main (line 12) | fn main() { FILE: h3i/src/actions/h3.rs type ExpectedStreamSendResult (line 49) | pub enum ExpectedStreamSendResult { type Action (line 66) | pub enum Action { method from (line 162) | fn from(value: WaitType) -> Self { type WaitType (line 134) | pub enum WaitType { type StreamEvent (line 173) | pub struct StreamEvent { type RequiredStreamsQuota (line 182) | pub struct RequiredStreamsQuota { type StreamEventType (line 193) | pub enum StreamEventType { type WaitingFor (line 204) | pub(crate) struct WaitingFor { method is_empty (line 210) | pub(crate) fn is_empty(&self) -> bool { method add_wait (line 215) | pub(crate) fn add_wait(&mut self, stream_event: &StreamEvent) { method set_required_stream_quota (line 222) | pub(crate) fn set_required_stream_quota( method check_can_open_num_streams (line 230) | pub(crate) fn check_can_open_num_streams( method remove_wait (line 252) | pub(crate) fn remove_wait(&mut self, stream_event: StreamEvent) { method clear_waits_on_stream (line 264) | pub(crate) fn clear_waits_on_stream(&mut self, stream_id: u64) { function send_headers_frame (line 276) | pub fn send_headers_frame( function send_headers_frame_with_expected_result (line 293) | pub fn send_headers_frame_with_expected_result( function send_headers_frame_literal (line 313) | pub fn send_headers_frame_literal( function send_headers_frame_literal_with_expected_result (line 332) | pub fn send_headers_frame_literal_with_expected_result( FILE: h3i/src/client/async_client.rs function connect (line 78) | pub async fn connect( function create_config (line 118) | fn create_config(args: &H3iConfig) -> QuicSettings { type BuildingConnectionSummary (line 159) | pub struct BuildingConnectionSummary { method new (line 166) | fn new( type Output (line 185) | type Output = ConnectionSummary; method poll (line 187) | fn poll( type H3iDriver (line 226) | pub struct H3iDriver { method new (line 238) | fn new( method should_fire (line 265) | fn should_fire(&self) -> bool { method register_waits (line 270) | fn register_waits(&mut self) { method stream_parsers_mut (line 305) | fn stream_parsers_mut(&mut self) -> &mut StreamParserMap { method handle_response_frame (line 309) | fn handle_response_frame( method on_conn_established (line 319) | fn on_conn_established( method should_act (line 326) | fn should_act(&self) -> bool { method process_reads (line 332) | fn process_reads(&mut self, qconn: &mut QuicheConnection) -> QuicResult<... method process_writes (line 350) | fn process_writes(&mut self, qconn: &mut QuicheConnection) -> QuicResult... method wait_for_data (line 403) | async fn wait_for_data( method buffer (line 432) | fn buffer(&mut self) -> &mut [u8] { method on_conn_close (line 436) | fn on_conn_close( type ConnectionRecord (line 455) | pub enum ConnectionRecord { FILE: h3i/src/client/connection_summary.rs constant MAX_SERIALIZED_BUFFER_LEN (line 46) | pub const MAX_SERIALIZED_BUFFER_LEN: usize = 16384; type ConnectionSummary (line 58) | pub struct ConnectionSummary { method serialize (line 69) | fn serialize(&self, s: S) -> Result type StreamMap (line 97) | pub struct StreamMap { method from (line 106) | fn from(value: T) -> Self { method all_frames (line 135) | pub fn all_frames(&self) -> Vec { method stream (line 162) | pub fn stream(&self, stream_id: u64) -> Vec { method received_frame (line 187) | pub fn received_frame(&self, frame: &H3iFrame) -> bool { method received_frame_on_stream (line 208) | pub fn received_frame_on_stream( method is_empty (line 237) | pub fn is_empty(&self) -> bool { method headers_on_stream (line 262) | pub fn headers_on_stream(&self, stream_id: u64) -> Vec { method all_close_trigger_frames_seen (line 271) | pub fn all_close_trigger_frames_seen(&self) -> bool { method missing_close_trigger_frames (line 281) | pub fn missing_close_trigger_frames(&self) -> Option) ->... method insert (line 295) | pub(crate) fn insert(&mut self, stream_id: u64, frame: H3iFrame) { method close_due_to_trigger_frames (line 309) | pub(crate) fn close_due_to_trigger_frames( type CloseTriggerFrames (line 333) | pub struct CloseTriggerFrames { method new (line 343) | pub fn new(frames: Vec) -> Self { method new_with_connection_close (line 354) | pub fn new_with_connection_close( method receive_frame (line 363) | fn receive_frame(&mut self, stream_id: u64, frame: &H3iFrame) { method saw_all_trigger_frames (line 372) | fn saw_all_trigger_frames(&self) -> bool { method missing_triggers (line 376) | fn missing_triggers(&self) -> Vec { method from (line 382) | fn from(value: Vec) -> Self { type ConnectionCloseDetails (line 389) | pub struct ConnectionCloseDetails { method fmt (line 399) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { method new (line 410) | pub fn new(qconn: &quiche::Connection) -> Se... method peer_error (line 421) | pub fn peer_error(&self) -> Option<&ConnectionError> { method local_error (line 426) | pub fn local_error(&self) -> Option<&ConnectionError> { method no_err (line 432) | pub fn no_err(&self) -> bool { method serialize (line 438) | fn serialize(&self, s: S) -> Result type SerializablePathStats (line 464) | pub struct SerializablePathStats<'a>(&'a quiche::PathStats); method serialize (line 467) | fn serialize(&self, s: S) -> Result type SerializableStats (line 500) | pub struct SerializableStats<'a>(&'a quiche::Stats); method serialize (line 503) | fn serialize(&self, s: S) -> Result type SerializableConnectionError (line 546) | pub struct SerializableConnectionError<'a>(&'a quiche::ConnectionError); method serialize (line 549) | fn serialize(&self, s: S) -> Result function h3i_frame (line 571) | fn h3i_frame() -> H3iFrame { function close_trigger_frame (line 576) | fn close_trigger_frame() { function trigger_frame_missing (line 589) | fn trigger_frame_missing() { function stream_map_data (line 604) | fn stream_map_data() -> Vec { function test_stream_map_trigger_frames_with_none (line 617) | fn test_stream_map_trigger_frames_with_none() { function test_stream_map_trigger_frames (line 623) | fn test_stream_map_trigger_frames() { FILE: h3i/src/client/mod.rs constant MAX_DATAGRAM_SIZE (line 69) | const MAX_DATAGRAM_SIZE: usize = 1350; constant QUIC_VERSION (line 70) | const QUIC_VERSION: u32 = 1; function handle_qlog (line 72) | fn handle_qlog( type ClientError (line 89) | pub enum ClientError { type Client (line 98) | pub(crate) trait Client { method stream_parsers_mut (line 100) | fn stream_parsers_mut(&mut self) -> &mut StreamParserMap; method handle_response_frame (line 104) | fn handle_response_frame(&mut self, stream_id: u64, frame: H3iFrame); type StreamParserMap (line 107) | pub(crate) type StreamParserMap = HashMap; function validate_stream_send_result (line 109) | fn validate_stream_send_result( function execute_action (line 151) | pub(crate) fn execute_action( function parse_streams (line 369) | pub(crate) fn parse_streams( function handle_fin (line 475) | fn handle_fin( function handle_response_frame (line 489) | fn handle_response_frame( type ParsedArgs (line 548) | pub(crate) struct ParsedArgs<'a> { function parse_args (line 554) | pub(crate) fn parse_args(args: &Config) -> ParsedArgs<'_> { function resolve_socket_addrs (line 571) | fn resolve_socket_addrs(args: &Config) -> (SocketAddr, SocketAddr) { FILE: h3i/src/client/sync_client.rs type SyncClient (line 59) | struct SyncClient { method new (line 65) | fn new(close_trigger_frames: Option) -> Self { method stream_parsers_mut (line 74) | fn stream_parsers_mut(&mut self) -> &mut StreamParserMap { method handle_response_frame (line 78) | fn handle_response_frame(&mut self, stream_id: u64, frame: H3iFrame) { function create_config (line 83) | fn create_config(args: &Config, should_log_keys: bool) -> quiche::Config { function connect (line 137) | pub fn connect( function connect_with_early_data (line 147) | pub fn connect_with_early_data( function check_duration_and_do_actions (line 503) | fn check_duration_and_do_actions( function generate_cid_and_reset_token (line 549) | pub fn generate_cid_and_reset_token() -> (quiche::ConnectionId<'static>,... function handle_actions (line 563) | fn handle_actions<'a, I>( FILE: h3i/src/config.rs type Config (line 32) | pub struct Config { method new (line 78) | pub fn new() -> Self { method with_host_port (line 82) | pub fn with_host_port(mut self, host_port: String) -> Self { method omit_sni (line 87) | pub fn omit_sni(mut self) -> Self { method with_connect_to (line 92) | pub fn with_connect_to(mut self, connect_to: String) -> Self { method with_source_port (line 97) | pub fn with_source_port(mut self, port: u32) -> Self { method verify_peer (line 102) | pub fn verify_peer(mut self, verify_peer: bool) -> Self { method with_idle_timeout (line 107) | pub fn with_idle_timeout(mut self, idle_timeout: u64) -> Self { method with_max_data (line 112) | pub fn with_max_data(mut self, max_data: u64) -> Self { method with_max_stream_data_bidi_local (line 117) | pub fn with_max_stream_data_bidi_local( method with_max_stream_data_bidi_remote (line 124) | pub fn with_max_stream_data_bidi_remote( method with_max_stream_data_uni (line 131) | pub fn with_max_stream_data_uni(mut self, max_stream_data_uni: u64) ->... method with_max_streams_bidi (line 136) | pub fn with_max_streams_bidi(mut self, max_streams_bidi: u64) -> Self { method with_max_streams_uni (line 141) | pub fn with_max_streams_uni(mut self, max_streams_uni: u64) -> Self { method with_max_window (line 146) | pub fn with_max_window(mut self, max_window: u64) -> Self { method with_max_stream_window (line 151) | pub fn with_max_stream_window(mut self, max_stream_window: u64) -> Self { method enable_dgram (line 156) | pub fn enable_dgram(mut self, enable_dgram: bool) -> Self { method with_dgram_recv_queue_len (line 161) | pub fn with_dgram_recv_queue_len( method with_dgram_send_queue_len (line 168) | pub fn with_dgram_send_queue_len( method build (line 175) | pub fn build(self) -> Result { method default (line 208) | fn default() -> Self { FILE: h3i/src/frame.rs type BoxError (line 48) | pub type BoxError = Box; type H3iFrame (line 53) | pub enum H3iFrame { method to_enriched_headers (line 66) | pub fn to_enriched_headers(&self) -> Option { method from (line 102) | fn from(value: QFrame) -> Self { method from (line 108) | fn from(value: Vec
) -> Self { method serialize (line 76) | fn serialize(&self, s: S) -> Result type HeaderMap (line 113) | pub type HeaderMap = MultiMap, Vec>; type EnrichedHeaders (line 117) | pub struct EnrichedHeaders { method headers (line 155) | pub fn headers(&self) -> &[Header] { method header_map (line 193) | pub fn header_map(&self) -> &HeaderMap { method status_code (line 210) | pub fn status_code(&self) -> Option<&Vec> { method from (line 230) | fn from(headers: Vec
) -> Self { type Error (line 247) | type Error = BoxError; method try_from (line 249) | fn try_from(value: QFrame) -> Result { type SerializableHeader (line 125) | pub struct SerializableHeader<'a>(&'a Header); method serialize (line 128) | fn serialize(&self, s: S) -> Result method serialize (line 216) | fn serialize(&self, s: S) -> Result method fmt (line 264) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { type ResetStream (line 274) | pub struct ResetStream { function frame_name (line 281) | fn frame_name(frame: &QFrame) -> &'static str { type SerializableQFrame (line 297) | pub struct SerializableQFrame<'a>(&'a QFrame); method serialize (line 300) | fn serialize(&self, s: S) -> Result type CustomEquivalenceHandler (line 450) | type CustomEquivalenceHandler = type Comparator (line 454) | enum Comparator { method serialize (line 469) | fn serialize(&self, serializer: S) -> Result type CloseTriggerFrame (line 489) | pub struct CloseTriggerFrame { method new (line 513) | pub fn new(stream_id: u64, frame: impl Into) -> Self { method new_with_comparator (line 526) | pub fn new_with_comparator(stream_id: u64, comparator_fn: F) -> Self method stream_id (line 536) | pub(crate) fn stream_id(&self) -> u64 { method is_equivalent (line 540) | pub(crate) fn is_equivalent(&self, other: &H3iFrame) -> bool { method fmt (line 573) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { method eq (line 588) | fn eq(&self, other: &Self) -> bool { function test_header_equivalence (line 603) | fn test_header_equivalence() { function test_header_non_equivalence (line 619) | fn test_header_non_equivalence() { function test_rst_stream_equivalence (line 635) | fn test_rst_stream_equivalence() { function test_frame_equivalence (line 651) | fn test_frame_equivalence() { function test_comparator (line 668) | fn test_comparator() { FILE: h3i/src/frame_parser.rs constant MAX_STREAM_STATE_SIZE (line 37) | const MAX_STREAM_STATE_SIZE: usize = 2_000_000; type FrameState (line 40) | enum FrameState { type InterruptCause (line 49) | pub enum InterruptCause { type FrameParseResult (line 56) | pub enum FrameParseResult { type FrameParser (line 78) | pub(crate) struct FrameParser { method new (line 91) | pub(crate) fn new(stream_id: u64) -> Self { method try_parse_frame (line 118) | pub(crate) fn try_parse_frame( method frame_incomplete (line 204) | fn frame_incomplete(&self) -> bool { method try_fill_buffer (line 208) | fn try_fill_buffer( method try_consume_varint (line 225) | fn try_consume_varint(&mut self) -> Result { method state_buffer_complete (line 239) | fn state_buffer_complete(&self) -> bool { method state_transition (line 243) | fn state_transition( method set_frame_type (line 261) | fn set_frame_type(&mut self, ty: u64) -> Result<()> { method set_frame_len (line 268) | fn set_frame_len(&mut self, len: u64) -> Result<()> { method build_h3i_frame (line 275) | fn build_h3i_frame(&mut self) -> Result { method fmt (line 296) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { method default (line 307) | fn default() -> Self { function session (line 326) | fn session() -> Result { function simple_case (line 334) | fn simple_case() { function type_precedes_split (line 353) | fn type_precedes_split() { function type_multiple_bytes (line 376) | fn type_multiple_bytes() { function type_multiple_buffers (line 399) | fn type_multiple_buffers() { function type_multiple_buffers_precedes_split (line 427) | fn type_multiple_buffers_precedes_split() { function len_precedes_split (line 455) | fn len_precedes_split() { function len_multiple_bytes (line 479) | fn len_multiple_bytes() { function len_multiple_buffers (line 504) | fn len_multiple_buffers() { function len_multiple_buffers_precedes_split (line 531) | fn len_multiple_buffers_precedes_split() { function no_val (line 558) | fn no_val() { function val_multiple_buffers (line 590) | fn val_multiple_buffers() { function val_doesnt_extend_to_buffer_end (line 614) | fn val_doesnt_extend_to_buffer_end() { function multiple_frames_in_buffer (line 638) | fn multiple_frames_in_buffer() { function multiple_frames_multiple_buffers (line 669) | fn multiple_frames_multiple_buffers() { function multiple_frames_nonzero_stream (line 717) | fn multiple_frames_nonzero_stream() { function interrupted (line 756) | fn interrupted() { function stream_reset (line 771) | fn stream_reset() { FILE: h3i/src/lib.rs constant HTTP3_CONTROL_STREAM_TYPE_ID (line 176) | pub const HTTP3_CONTROL_STREAM_TYPE_ID: u64 = 0x0; constant HTTP3_PUSH_STREAM_TYPE_ID (line 181) | pub const HTTP3_PUSH_STREAM_TYPE_ID: u64 = 0x1; constant QPACK_ENCODER_STREAM_TYPE_ID (line 186) | pub const QPACK_ENCODER_STREAM_TYPE_ID: u64 = 0x2; constant QPACK_DECODER_STREAM_TYPE_ID (line 191) | pub const QPACK_DECODER_STREAM_TYPE_ID: u64 = 0x3; type StreamIdAllocator (line 194) | struct StreamIdAllocator { method take_next_id (line 199) | pub fn take_next_id(&mut self) -> u64 { method peek_next_id (line 206) | pub fn peek_next_id(&mut self) -> u64 { function encode_header_block_literal (line 215) | fn encode_header_block_literal( function encode_header_block (line 247) | fn encode_header_block( function fake_packet_header (line 266) | fn fake_packet_header() -> PacketHeader { function fake_packet_sent (line 273) | fn fake_packet_sent(frames: Option>) -> EventDa... FILE: h3i/src/main.rs function main (line 48) | fn main() -> Result<(), ClientError> { type Config (line 91) | struct Config { function config_from_clap (line 98) | fn config_from_clap() -> std::result::Result { function async_client (line 346) | fn async_client( function sync_client (line 369) | fn sync_client( function read_qlog (line 376) | fn read_qlog(filename: &str, host_override: Option<&str>) -> Vec { function prompt_frames (line 400) | fn prompt_frames(config: &Config) -> Vec { function make_qlog_writer (line 433) | pub fn make_qlog_writer() -> std::io::BufWriter { function make_streamer (line 452) | pub fn make_streamer( FILE: h3i/src/prompts/h3/errors.rs constant NO_ERROR (line 39) | pub const NO_ERROR: &str = "NO_ERROR"; constant INTERNAL_ERROR (line 40) | pub const INTERNAL_ERROR: &str = "INTERNAL_ERROR"; constant CONNECTION_REFUSED (line 41) | pub const CONNECTION_REFUSED: &str = "CONNECTION_REFUSED"; constant FLOW_CONTROL_ERROR (line 42) | pub const FLOW_CONTROL_ERROR: &str = "FLOW_CONTROL_ERROR"; constant STREAM_LIMIT_ERROR (line 43) | pub const STREAM_LIMIT_ERROR: &str = "STREAM_LIMIT_ERROR"; constant STREAM_STATE_ERROR (line 44) | pub const STREAM_STATE_ERROR: &str = "STREAM_STATE_ERROR"; constant FINAL_SIZE_ERROR (line 45) | pub const FINAL_SIZE_ERROR: &str = "FINAL_SIZE_ERROR"; constant FRAME_ENCODING_ERROR (line 46) | pub const FRAME_ENCODING_ERROR: &str = "FRAME_ENCODING_ERROR"; constant TRANSPORT_PARAMETER_ERROR (line 47) | pub const TRANSPORT_PARAMETER_ERROR: &str = "TRANSPORT_PARAMETER_ERROR"; constant CONNECTION_ID_LIMIT_ERROR (line 48) | pub const CONNECTION_ID_LIMIT_ERROR: &str = "CONNECTION_ID_LIMIT_ERROR"; constant PROTOCOL_VIOLATION (line 49) | pub const PROTOCOL_VIOLATION: &str = "PROTOCOL_VIOLATION"; constant INVALID_TOKEN (line 50) | pub const INVALID_TOKEN: &str = "INVALID_TOKEN"; constant APPLICATION_ERROR (line 51) | pub const APPLICATION_ERROR: &str = "APPLICATION_ERROR"; constant CRYPTO_BUFFER_EXCEEDED (line 52) | pub const CRYPTO_BUFFER_EXCEEDED: &str = "CRYPTO_BUFFER_EXCEEDED"; constant KEY_UPDATE_ERROR (line 53) | pub const KEY_UPDATE_ERROR: &str = "KEY_UPDATE_ERROR"; constant AEAD_LIMIT_REACHED (line 54) | pub const AEAD_LIMIT_REACHED: &str = "AEAD_LIMIT_REACHED"; constant NO_VIABLE_PATH (line 55) | pub const NO_VIABLE_PATH: &str = "NO_VIABLE_PATH"; constant VERSION_NEGOTIATION_ERROR (line 56) | pub const VERSION_NEGOTIATION_ERROR: &str = "VERSION_NEGOTIATION_ERROR"; constant H3_DATAGRAM_ERROR (line 58) | pub const H3_DATAGRAM_ERROR: &str = "H3_DATAGRAM_ERROR"; constant H3_NO_ERROR (line 59) | pub const H3_NO_ERROR: &str = "H3_NO_ERROR"; constant H3_GENERAL_PROTOCOL_ERROR (line 60) | pub const H3_GENERAL_PROTOCOL_ERROR: &str = "H3_GENERAL_PROTOCOL_ERROR"; constant H3_INTERNAL_ERROR (line 61) | pub const H3_INTERNAL_ERROR: &str = "H3_INTERNAL_ERROR"; constant H3_STREAM_CREATION_ERROR (line 62) | pub const H3_STREAM_CREATION_ERROR: &str = "H3_STREAM_CREATION_ERROR"; constant H3_CLOSED_CRITICAL_STREAM (line 63) | pub const H3_CLOSED_CRITICAL_STREAM: &str = "H3_CLOSED_CRITICAL_STREAM"; constant H3_FRAME_UNEXPECTED (line 64) | pub const H3_FRAME_UNEXPECTED: &str = "H3_FRAME_UNEXPECTED"; constant H3_FRAME_ERROR (line 65) | pub const H3_FRAME_ERROR: &str = "H3_FRAME_ERROR"; constant H3_EXCESSIVE_LOAD (line 66) | pub const H3_EXCESSIVE_LOAD: &str = "H3_EXCESSIVE_LOAD"; constant H3_ID_ERROR (line 67) | pub const H3_ID_ERROR: &str = "H3_ID_ERROR"; constant H3_SETTINGS_ERROR (line 68) | pub const H3_SETTINGS_ERROR: &str = "H3_SETTINGS_ERROR"; constant H3_MISSING_SETTINGS (line 69) | pub const H3_MISSING_SETTINGS: &str = "H3_MISSING_SETTINGS"; constant H3_REQUEST_REJECTED (line 70) | pub const H3_REQUEST_REJECTED: &str = "H3_REQUEST_REJECTED"; constant H3_REQUEST_CANCELLED (line 71) | pub const H3_REQUEST_CANCELLED: &str = "H3_REQUEST_CANCELLED"; constant H3_REQUEST_INCOMPLETE (line 72) | pub const H3_REQUEST_INCOMPLETE: &str = "H3_REQUEST_INCOMPLETE"; constant H3_MESSAGE_ERROR (line 73) | pub const H3_MESSAGE_ERROR: &str = "H3_MESSAGE_ERROR"; constant H3_CONNECT_ERROR (line 74) | pub const H3_CONNECT_ERROR: &str = "H3_CONNECT_ERROR"; constant H3_VERSION_FALLBACK (line 75) | pub const H3_VERSION_FALLBACK: &str = "H3_VERSION_FALLBACK"; constant QPACK_DECOMPRESSION_FAILED (line 76) | pub const QPACK_DECOMPRESSION_FAILED: &str = "QPACK_DECOMPRESSION_FAILED"; constant QPACK_ENCODER_STREAM_ERROR (line 77) | pub const QPACK_ENCODER_STREAM_ERROR: &str = "QPACK_ENCODER_STREAM_ERROR"; constant QPACK_DECODER_STREAM_ERROR (line 78) | pub const QPACK_DECODER_STREAM_ERROR: &str = "QPACK_DECODER_STREAM_ERROR"; constant TRANSPORT (line 80) | pub const TRANSPORT: &str = "transport"; constant APPLICATION (line 81) | pub const APPLICATION: &str = "application"; function prompt_transport_or_app_error (line 84) | pub fn prompt_transport_or_app_error() -> InquireResult<(ErrorSpace, u64... function prompt_transport_or_app (line 158) | fn prompt_transport_or_app() -> InquireResult { function validate_transport_error_code (line 166) | fn validate_transport_error_code( function transport_error_code_suggestor (line 196) | fn transport_error_code_suggestor( function validate_h3_error_code (line 223) | fn validate_h3_error_code(id: &str) -> SuggestionResult { function h3_error_code_suggestor (line 254) | fn h3_error_code_suggestor(val: &str) -> SuggestionResult> { FILE: h3i/src/prompts/h3/headers.rs function prompt_headers (line 50) | pub fn prompt_headers( function prompt_push_promise (line 99) | pub fn prompt_push_promise() -> InquireResult { function pseudo_headers (line 125) | fn pseudo_headers(host_port: &str) -> InquireResult InquireResult> { function method_suggester (line 176) | fn method_suggester(val: &str) -> SuggestionResult> { function validate_stream_id (line 182) | fn validate_stream_id(id: &str) -> SuggestionResult { FILE: h3i/src/prompts/h3/mod.rs type Error (line 54) | pub enum Error { method from (line 60) | fn from(_err: octets::BufferTooShortError) -> Self { type Result (line 68) | pub type Result = std::result::Result; type SuggestionResult (line 73) | type SuggestionResult = std::result::Result; type PromptedFrame (line 76) | pub type PromptedFrame = (u64, quiche::h3::frame::Frame); constant HEADERS (line 81) | const HEADERS: &str = "headers"; constant HEADERS_NO_PSEUDO (line 82) | const HEADERS_NO_PSEUDO: &str = "headers_no_pseudo"; constant HEADERS_LITERAL (line 83) | const HEADERS_LITERAL: &str = "headers_literal"; constant HEADERS_NO_PSEUDO_LITERAL (line 84) | const HEADERS_NO_PSEUDO_LITERAL: &str = "headers_no_pseudo_literal"; constant DATA (line 85) | const DATA: &str = "data"; constant SETTINGS (line 86) | const SETTINGS: &str = "settings"; constant PUSH_PROMISE (line 87) | const PUSH_PROMISE: &str = "push_promise"; constant CANCEL_PUSH (line 88) | const CANCEL_PUSH: &str = "cancel_push"; constant GOAWAY (line 89) | const GOAWAY: &str = "goaway"; constant MAX_PUSH_ID (line 90) | const MAX_PUSH_ID: &str = "max_push_id"; constant PRIORITY_UPDATE (line 91) | const PRIORITY_UPDATE: &str = "priority_update"; constant GREASE (line 92) | const GREASE: &str = "grease"; constant EXTENSION (line 93) | const EXTENSION: &str = "extension_frame"; constant OPEN_UNI_STREAM (line 94) | const OPEN_UNI_STREAM: &str = "open_uni_stream"; constant RESET_STREAM (line 95) | const RESET_STREAM: &str = "reset_stream"; constant STOP_SENDING (line 96) | const STOP_SENDING: &str = "stop_sending"; constant CONNECTION_CLOSE (line 97) | const CONNECTION_CLOSE: &str = "connection_close"; constant STREAM_BYTES (line 98) | const STREAM_BYTES: &str = "stream_bytes"; constant DATAGRAM_QUARTER_STREAM_ID (line 99) | const DATAGRAM_QUARTER_STREAM_ID: &str = "datagram_quarter_stream_id"; constant DATAGRAM_RAW_PAYLOAD (line 100) | const DATAGRAM_RAW_PAYLOAD: &str = "datagram_raw_payload"; constant COMMIT (line 102) | const COMMIT: &str = "commit"; constant FLUSH_PACKETS (line 103) | const FLUSH_PACKETS: &str = "flush_packets"; constant WAIT (line 104) | const WAIT: &str = "wait"; constant QUIT (line 105) | const QUIT: &str = "quit"; constant YES (line 107) | const YES: &str = "Yes"; constant NO (line 108) | const NO: &str = "No"; constant ESC_TO_RET (line 110) | const ESC_TO_RET: &str = "ESC to return to actions"; constant STREAM_ID_PROMPT (line 111) | const STREAM_ID_PROMPT: &str = "stream ID:"; constant EMPTY_PICKS (line 112) | const EMPTY_PICKS: &str = "empty picks next available ID"; constant AUTO_PICK (line 113) | const AUTO_PICK: &str = "autopick StreamID"; constant PUSH_ID_PROMPT (line 114) | const PUSH_ID_PROMPT: &str = "push ID:"; type PromptOutcome (line 116) | enum PromptOutcome { type Prompter (line 124) | pub struct Prompter { method with_config (line 132) | pub fn with_config(config: &Config) -> Self { method handle_action (line 142) | fn handle_action(&mut self, action: &str) -> PromptOutcome { method prompt (line 206) | pub fn prompt(&mut self) -> Vec { function handle_action_loop_error (line 233) | fn handle_action_loop_error(err: InquireError) -> bool { function prompt_action (line 245) | fn prompt_action() -> InquireResult { function action_suggester (line 256) | fn action_suggester(val: &str) -> SuggestionResult> { function squish_suggester (line 288) | fn squish_suggester( function validate_varint (line 300) | fn validate_varint(id: &str) -> SuggestionResult { function prompt_stream_id (line 317) | fn prompt_stream_id() -> InquireResult { function prompt_control_stream_id (line 321) | fn prompt_control_stream_id() -> InquireResult { function prompt_varint (line 332) | fn prompt_varint(str: &str) -> InquireResult { function control_stream_suggestor (line 343) | fn control_stream_suggestor(val: &str) -> SuggestionResult> { function prompt_data (line 349) | fn prompt_data() -> InquireResult { function prompt_max_push_id (line 368) | fn prompt_max_push_id() -> InquireResult { function prompt_cancel_push (line 384) | fn prompt_cancel_push() -> InquireResult { function prompt_goaway (line 400) | fn prompt_goaway() -> InquireResult { function prompt_grease (line 416) | fn prompt_grease() -> InquireResult { function prompt_extension (line 438) | fn prompt_extension() -> InquireResult { function prompt_connection_close (line 461) | pub fn prompt_connection_close() -> InquireResult { function prompt_stream_bytes (line 477) | pub fn prompt_stream_bytes() -> InquireResult { function prompt_send_datagram (line 490) | pub fn prompt_send_datagram(with_quarter_stream: bool) -> InquireResult<... function validate_wait_period (line 512) | fn validate_wait_period(period: &str) -> SuggestionResult { function prompt_yes_no (line 532) | fn prompt_yes_no(msg: &str) -> InquireResult { FILE: h3i/src/prompts/h3/priority.rs constant REQUEST (line 37) | const REQUEST: &str = "request"; constant PUSH (line 38) | const PUSH: &str = "push"; function prompt_priority (line 40) | pub fn prompt_priority() -> InquireResult { function prompt_request_or_push (line 72) | fn prompt_request_or_push() -> InquireResult { FILE: h3i/src/prompts/h3/settings.rs constant QPACK_MAX_TABLE_CAPACITY (line 39) | const QPACK_MAX_TABLE_CAPACITY: &str = "QPACK_MAX_TABLE_CAPACITY"; constant MAX_FIELD_SECTION_SIZE (line 40) | const MAX_FIELD_SECTION_SIZE: &str = "MAX_FIELD_SECTION_SIZE"; constant QPACK_BLOCKED_STREAMS (line 41) | const QPACK_BLOCKED_STREAMS: &str = "QPACK_BLOCKED_STREAMS"; constant ENABLE_CONNECT_PROTOCOL (line 42) | const ENABLE_CONNECT_PROTOCOL: &str = "ENABLE_CONNECT_PROTOCOL"; constant H3_DATAGRAM (line 43) | const H3_DATAGRAM: &str = "H3_DATAGRAM"; type RawSettings (line 45) | type RawSettings = Vec<(u64, u64)>; function prompt_settings (line 47) | pub fn prompt_settings() -> InquireResult { function settings_read_loop (line 72) | fn settings_read_loop() -> RawSettings { function validate_setting_type (line 118) | fn validate_setting_type(id: &str) -> SuggestionResult { function settings_type_suggestor (line 133) | fn settings_type_suggestor(val: &str) -> SuggestionResult> { FILE: h3i/src/prompts/h3/stream.rs constant CONTROL_STREAM (line 44) | const CONTROL_STREAM: &str = "Control Stream"; constant PUSH_STREAM (line 45) | const PUSH_STREAM: &str = "Push Stream"; constant QPACK_ENCODER (line 46) | const QPACK_ENCODER: &str = "QPACK Encoder Stream"; constant QPACK_DECODER (line 47) | const QPACK_DECODER: &str = "QPACK Decoder Stream"; function validate_stream_id (line 49) | fn validate_stream_id(id: &str) -> SuggestionResult { function autopick_stream_id (line 57) | pub fn autopick_stream_id( function prompt_open_uni_stream (line 77) | pub fn prompt_open_uni_stream( function validate_stream_type (line 104) | fn validate_stream_type(id: &str) -> SuggestionResult { function stream_type_suggestor (line 115) | fn stream_type_suggestor(val: &str) -> SuggestionResult> { function prompt_fin_stream (line 121) | pub fn prompt_fin_stream() -> InquireResult { function prompt_reset_stream (line 125) | pub fn prompt_reset_stream() -> InquireResult { function prompt_stop_sending (line 134) | pub fn prompt_stop_sending() -> InquireResult { function prompt_close_stream (line 143) | fn prompt_close_stream() -> InquireResult<(u64, u64)> { FILE: h3i/src/prompts/h3/wait.rs constant DURATION (line 43) | const DURATION: &str = "duration"; constant HEADERS (line 44) | const HEADERS: &str = "headers"; constant DATA (line 45) | const DATA: &str = "data"; constant FINISHED (line 46) | const FINISHED: &str = "stream finished"; function prompt_wait (line 48) | pub fn prompt_wait() -> InquireResult { function wait_type_suggestor (line 68) | fn wait_type_suggestor(val: &str) -> SuggestionResult> { function wait_type_validator (line 74) | fn wait_type_validator(wait_type: &str) -> SuggestionResult { function prompt_stream_wait (line 83) | fn prompt_stream_wait(stream_wait_type: &str) -> InquireResult { function prompt_wait_period (line 105) | pub fn prompt_wait_period() -> InquireResult { FILE: h3i/src/recordreplay/qlog.rs type QlogEvent (line 62) | pub enum QlogEvent { type QlogEvents (line 71) | pub type QlogEvents = Vec; method from (line 83) | fn from(action: &Action) -> Self { type H3Actions (line 74) | pub struct H3Actions(pub Vec); method from (line 370) | fn from(event: JsonEvent) -> Self { method from (line 391) | fn from(ps: &PacketSent) -> Self { type H3FrameCreatedEx (line 77) | pub struct H3FrameCreatedEx { function actions_from_qlog (line 333) | pub fn actions_from_qlog(event: Event, host_override: Option<&str>) -> H... function map_header (line 474) | fn map_header( method from (line 492) | fn from(value: H3FrameCreatedEx) -> Self { function from_qlog_stream_type_set (line 615) | fn from_qlog_stream_type_set( function parse_ex_data (line 642) | fn parse_ex_data(ex_data: &ExData) -> bool { constant NOW (line 661) | const NOW: f64 = 123.0; constant H3I_WAIT (line 662) | const H3I_WAIT: &str = "h3i:wait"; function ser_duration_wait (line 665) | fn ser_duration_wait() { function deser_duration_wait (line 683) | fn deser_duration_wait() { function ser_stream_wait (line 701) | fn ser_stream_wait() { function deser_stream_wait (line 719) | fn deser_stream_wait() { function deser_http_headers_to_action (line 737) | fn deser_http_headers_to_action() { function deser_http_headers_host_overrid_to_action (line 764) | fn deser_http_headers_host_overrid_to_action() { function deser_http_headers_literal_to_action (line 791) | fn deser_http_headers_literal_to_action() { FILE: netlog/src/constants.rs type ClientInfo (line 32) | pub struct ClientInfo { type Constants (line 44) | pub struct Constants { method populate_id_keyed (line 106) | pub fn populate_id_keyed(&mut self) { type ConstantsLine (line 101) | pub struct ConstantsLine { FILE: netlog/src/h2.rs type Event (line 36) | pub enum Event { type Http2SessionParams (line 66) | pub struct Http2SessionParams { type Http2SessionEvent (line 72) | pub struct Http2SessionEvent { type Http2SessionInitializedParams (line 77) | pub struct Http2SessionInitializedParams { type Http2SessionInitializedEvent (line 83) | pub struct Http2SessionInitializedEvent { constant H2_SEND_SETTINGS_PATTERN (line 88) | pub const H2_SEND_SETTINGS_PATTERN: &str = r"^\[id:(\d+) \(\w+\) value:(... type Http2SessionSendSettingsParams (line 90) | pub struct Http2SessionSendSettingsParams { type Http2SessionSendSettingsEvent (line 95) | pub struct Http2SessionSendSettingsEvent { constant H2_RECV_SETTING_PATTERN (line 100) | pub const H2_RECV_SETTING_PATTERN: &str = r"^(\d+) \(\w+\)"; type Http2SessionRecvSettingParams (line 102) | pub struct Http2SessionRecvSettingParams { type Http2SessionRecvSettingEvent (line 108) | pub struct Http2SessionRecvSettingEvent { type Http2SessionSendHeadersParams (line 113) | pub struct Http2SessionSendHeadersParams { type Http2SessionSendHeadersEvent (line 128) | pub struct Http2SessionSendHeadersEvent { type Http2SessionSendDataParams (line 133) | pub struct Http2SessionSendDataParams { type Http2SessionSendDataEvent (line 140) | pub struct Http2SessionSendDataEvent { type Http2SessionRecvHeadersParams (line 145) | pub struct Http2SessionRecvHeadersParams { type Http2SessionRecvHeadersEvent (line 152) | pub struct Http2SessionRecvHeadersEvent { type Http2SessionRecvDataParams (line 157) | pub struct Http2SessionRecvDataParams { type Http2SessionRecvDataEvent (line 164) | pub struct Http2SessionRecvDataEvent { type Http2SessionUpdateRecvWindowParams (line 169) | pub struct Http2SessionUpdateRecvWindowParams { type Http2SessionUpdateRecvWindowEvent (line 175) | pub struct Http2SessionUpdateRecvWindowEvent { type Http2SessionUpdateSendWindowParams (line 180) | pub struct Http2SessionUpdateSendWindowParams { type Http2SessionUpdateSendWindowEvent (line 186) | pub struct Http2SessionUpdateSendWindowEvent { type Http2SessionUpdateStreamsSendWindowSizeParams (line 191) | pub struct Http2SessionUpdateStreamsSendWindowSizeParams { type Http2SessionUpdateStreamsSendWindowSizeEvent (line 196) | pub struct Http2SessionUpdateStreamsSendWindowSizeEvent { type Http2SessionSendWindowUpdateParams (line 201) | pub struct Http2SessionSendWindowUpdateParams { type Http2SessionSendWindowUpdateEvent (line 207) | pub struct Http2SessionSendWindowUpdateEvent { type Http2SessionRecvWindowUpdateParams (line 212) | pub struct Http2SessionRecvWindowUpdateParams { type Http2SessionRecvWindowUpdateEvent (line 218) | pub struct Http2SessionRecvWindowUpdateEvent { type Http2StreamUpdateSendWindowParams (line 223) | pub struct Http2StreamUpdateSendWindowParams { type Http2StreamUpdateSendWindowEvent (line 229) | pub struct Http2StreamUpdateSendWindowEvent { type Http2StreamUpdateRecvWindowParams (line 234) | pub struct Http2StreamUpdateRecvWindowParams { type Http2StreamUpdateRecvWindowEvent (line 241) | pub struct Http2StreamUpdateRecvWindowEvent { type Http2StreamStalledByStreamSendWindowParams (line 246) | pub struct Http2StreamStalledByStreamSendWindowParams { type Http2StreamStalledByStreamSendWindowEvent (line 251) | pub struct Http2StreamStalledByStreamSendWindowEvent { type Http2SessionPingParams (line 256) | pub struct Http2SessionPingParams { type Http2SessionPingEvent (line 264) | pub struct Http2SessionPingEvent { type Http2SessionSendRstStreamParams (line 269) | pub struct Http2SessionSendRstStreamParams { type Http2SessionSendRstStreamEvent (line 276) | pub struct Http2SessionSendRstStreamEvent { type Http2SessionRecvRstStreamParams (line 281) | pub struct Http2SessionRecvRstStreamParams { type Http2SessionRecvRstStreamEvent (line 287) | pub struct Http2SessionRecvRstStreamEvent { type Http2SessionRecvGoawayParams (line 292) | pub struct Http2SessionRecvGoawayParams { type Http2SessionRecvGoawayEvent (line 299) | pub struct Http2SessionRecvGoawayEvent { type Http2SessionCloseParams (line 304) | pub struct Http2SessionCloseParams { type Http2SessionCloseEvent (line 310) | pub struct Http2SessionCloseEvent { type Htt2SessionStalledMaxStreamsParams (line 315) | pub struct Htt2SessionStalledMaxStreamsParams { type Htt2SessionStalledMaxStreamsEvent (line 322) | pub struct Htt2SessionStalledMaxStreamsEvent { constant H2_HEADER_TABLE_SIZE (line 326) | const H2_HEADER_TABLE_SIZE: u16 = 0x01; constant H2_ENABLE_PUSH (line 327) | const H2_ENABLE_PUSH: u16 = 0x02; constant H2_MAX_CONCURRENT_STREAMS (line 328) | const H2_MAX_CONCURRENT_STREAMS: u16 = 0x03; constant H2_INITIAL_WINDOW_SIZE (line 329) | const H2_INITIAL_WINDOW_SIZE: u16 = 0x04; constant H2_MAX_FRAME_SIZE (line 330) | const H2_MAX_FRAME_SIZE: u16 = 0x05; constant H2_MAX_HEADER_LIST_SIZE (line 331) | const H2_MAX_HEADER_LIST_SIZE: u16 = 0x06; constant H2_ENABLE_CONNECT_PROTOCOL (line 332) | const H2_ENABLE_CONNECT_PROTOCOL: u16 = 0x08; constant H2_NO_RFC7540_PRIORITIES (line 333) | const H2_NO_RFC7540_PRIORITIES: u16 = 0x09; constant H2_TLS_RENEG_PERMITTED (line 334) | const H2_TLS_RENEG_PERMITTED: u16 = 0x10; constant H2_ENABLE_METADATA (line 335) | const H2_ENABLE_METADATA: u16 = 0x4d44; constant H2_DEFAULT_WINDOW_SIZE (line 337) | pub const H2_DEFAULT_WINDOW_SIZE: u32 = 65535; type Http2Settings (line 340) | pub struct Http2Settings { method set_from_wire (line 354) | pub fn set_from_wire(&mut self, id: u16, value: u32) { type Error (line 376) | type Error = String; method try_from (line 378) | fn try_from(settings: &[String]) -> Result { function parse_event (line 419) | pub fn parse_event( FILE: netlog/src/h3.rs type Event (line 33) | pub enum Event { type PrioritizedElementType (line 43) | pub enum PrioritizedElementType { type Http3PriorityUpdateSentParams (line 50) | pub struct Http3PriorityUpdateSentParams { type Http3PriorityUpdateSentEvent (line 58) | pub struct Http3PriorityUpdateSentEvent { type Http3HeadersSentParams (line 63) | pub struct Http3HeadersSentParams { type Http3HeadersSentEvent (line 69) | pub struct Http3HeadersSentEvent { type Http3DataSentParams (line 74) | pub struct Http3DataSentParams { type Http3DataSentEvent (line 80) | pub struct Http3DataSentEvent { type Http3HeadersReceivedParams (line 85) | pub struct Http3HeadersReceivedParams { type Http3HeadersReceivedEvent (line 91) | pub struct Http3HeadersReceivedEvent { type Http3HeadersDecodedParams (line 96) | pub struct Http3HeadersDecodedParams { type Http3HeadersDecodedEvent (line 102) | pub struct Http3HeadersDecodedEvent { type Http3DataFrameReceivedParams (line 107) | pub struct Http3DataFrameReceivedParams { type Http3DataFrameReceivedEvent (line 113) | pub struct Http3DataFrameReceivedEvent { function parse_event (line 118) | pub fn parse_event( FILE: netlog/src/http.rs type Event (line 35) | pub enum Event { type HttpTransactionSendRequestHeadersParams (line 49) | pub struct HttpTransactionSendRequestHeadersParams { type HttpTransactionSendRequestHeadersEvent (line 54) | pub struct HttpTransactionSendRequestHeadersEvent { type HttpTransactionHttp2SendRequestHeadersParams (line 59) | pub struct HttpTransactionHttp2SendRequestHeadersParams { type HttpTransactionHttp2SendRequestHeadersEvent (line 64) | pub struct HttpTransactionHttp2SendRequestHeadersEvent { type HttpTransactionQuicSendRequestHeadersParams (line 69) | pub struct HttpTransactionQuicSendRequestHeadersParams { type HttpTransactionQuicSendRequestHeadersEvent (line 78) | pub struct HttpTransactionQuicSendRequestHeadersEvent { type HttpTransactionReadResponseHeadersParams (line 83) | pub struct HttpTransactionReadResponseHeadersParams { type HttpTransactionReadResponseHeadersEvent (line 88) | pub struct HttpTransactionReadResponseHeadersEvent { type HttpStreamJobBoundToRequestParams (line 93) | pub struct HttpStreamJobBoundToRequestParams { type HttpStreamRequestBoundToJobEvent (line 98) | pub struct HttpStreamRequestBoundToJobEvent { type HttpStreamRequestBoundToJobParams (line 103) | pub struct HttpStreamRequestBoundToJobParams { type HttpStreamJobBoundToRequestEvent (line 108) | pub struct HttpStreamJobBoundToRequestEvent { type HttpStreamRequestBoundToQuicSessionEvent (line 113) | pub struct HttpStreamRequestBoundToQuicSessionEvent { type HttpStreamRequestBoundToQuicSessionParams (line 118) | pub struct HttpStreamRequestBoundToQuicSessionParams { function headers_to_map (line 122) | pub fn headers_to_map(hdrs: &[String]) -> BTreeMap { function parse_event (line 147) | pub fn parse_event( FILE: netlog/src/lib.rs type EventSource (line 128) | pub struct EventSource { type EventHeader (line 139) | pub struct EventHeader { method populate_strings (line 156) | pub fn populate_strings(&mut self, constants: &constants::Constants) { type SourceDependency (line 164) | pub struct SourceDependency { type Event (line 172) | pub enum Event { function read_netlog_constants (line 180) | pub fn read_netlog_constants( function read_netlog_record (line 209) | pub fn read_netlog_record(reader: &mut R) -> Option> { function parse_event (line 239) | pub fn parse_event(event_hdr: &EventHeader, event: &[u8]) -> Option Self { method from (line 186) | fn from(value: QuicSessionTransportParametersReceivedParams) -> Self { method from (line 192) | fn from(value: QuicSessionTransportParametersSentParams) -> Self { type QuicSessionUnauthenticatedPacketHeaderReceivedParams (line 198) | pub struct QuicSessionUnauthenticatedPacketHeaderReceivedParams { type QuicSessionUnauthenticatedPacketHeaderReceived (line 206) | pub struct QuicSessionUnauthenticatedPacketHeaderReceived { type QuicSessionPacketSentParams (line 211) | pub struct QuicSessionPacketSentParams { type QuicSessionPacketSent (line 219) | pub struct QuicSessionPacketSent { type QuicSessionAckFrameSentParams (line 224) | pub struct QuicSessionAckFrameSentParams { type QuicSessionAckFrameSent (line 233) | pub struct QuicSessionAckFrameSent { type QuicSessionAckFrameReceivedParams (line 238) | pub struct QuicSessionAckFrameReceivedParams { type QuicSessionAckFrameReceived (line 247) | pub struct QuicSessionAckFrameReceived { type QuicSessionStreamFrameReceivedParams (line 252) | pub struct QuicSessionStreamFrameReceivedParams { type QuicSessionStreamFrameReceivedEvent (line 260) | pub struct QuicSessionStreamFrameReceivedEvent { type QuicSessionStopSendingFrameSentParams (line 265) | pub struct QuicSessionStopSendingFrameSentParams { type QuicSessionStopSendingFrameSentEvent (line 271) | pub struct QuicSessionStopSendingFrameSentEvent { type QuicSessionRstStreamFrameSentParams (line 276) | pub struct QuicSessionRstStreamFrameSentParams { type QuicSessionRstStreamFrameSentEvent (line 283) | pub struct QuicSessionRstStreamFrameSentEvent { type QuicSessionRstStreamFrameReceivedParams (line 288) | pub struct QuicSessionRstStreamFrameReceivedParams { type QuicSessionRstStreamFrameReceivedEvent (line 295) | pub struct QuicSessionRstStreamFrameReceivedEvent { type QuicSessionBlockedFrameReceivedParams (line 300) | pub struct QuicSessionBlockedFrameReceivedParams { type QuicSessionBlockedFrameReceivedEvent (line 305) | pub struct QuicSessionBlockedFrameReceivedEvent { type QuicSessionWindowUpdateFrameSentParams (line 310) | pub struct QuicSessionWindowUpdateFrameSentParams { type QuicSessionWindowUpdateFrameSentEvent (line 316) | pub struct QuicSessionWindowUpdateFrameSentEvent { type QuicSessionClosedParams (line 321) | pub struct QuicSessionClosedParams { type QuicSessionClosedEvent (line 328) | pub struct QuicSessionClosedEvent { function parse_event (line 333) | pub fn parse_event( FILE: octets/src/lib.rs constant MAX_VAR_INT (line 32) | pub const MAX_VAR_INT: u64 = 4_611_686_018_427_387_903; type Result (line 38) | pub type Result = std::result::Result; type BufferTooShortError (line 44) | pub struct BufferTooShortError; method fmt (line 47) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { method source (line 53) | fn source(&self) -> Option<&(dyn std::error::Error + 'static)> { type Octets (line 135) | pub struct Octets<'a> { function with_slice (line 145) | pub fn with_slice(buf: &'a [u8]) -> Self { function get_u8 (line 151) | pub fn get_u8(&mut self) -> Result { function peek_u8 (line 157) | pub fn peek_u8(&mut self) -> Result { function get_u16 (line 163) | pub fn get_u16(&mut self) -> Result { function get_u24 (line 169) | pub fn get_u24(&mut self) -> Result { function get_u32 (line 175) | pub fn get_u32(&mut self) -> Result { function get_u64 (line 181) | pub fn get_u64(&mut self) -> Result { function get_varint (line 187) | pub fn get_varint(&mut self) -> Result { function get_bytes (line 213) | pub fn get_bytes(&mut self, len: usize) -> Result> { function get_bytes_with_u8_length (line 230) | pub fn get_bytes_with_u8_length(&mut self) -> Result> { function get_bytes_with_u16_length (line 238) | pub fn get_bytes_with_u16_length(&mut self) -> Result> { function get_bytes_with_varint_length (line 246) | pub fn get_bytes_with_varint_length(&mut self) -> Result> { function get_huffman_decoded (line 255) | pub fn get_huffman_decoded(&mut self) -> Result> { function peek_bytes (line 296) | pub fn peek_bytes(&self, len: usize) -> Result> { function rewind (line 310) | pub fn rewind(&mut self, len: usize) -> Result<()> { function slice (line 321) | pub fn slice(&self, len: usize) -> Result<&'a [u8]> { function slice_last (line 330) | pub fn slice_last(&self, len: usize) -> Result<&'a [u8]> { function skip (line 340) | pub fn skip(&mut self, skip: usize) -> Result<()> { function cap (line 351) | pub fn cap(&self) -> usize { function len (line 356) | pub fn len(&self) -> usize { function is_empty (line 361) | pub fn is_empty(&self) -> bool { function off (line 366) | pub fn off(&self) -> usize { function buf (line 371) | pub fn buf(&self) -> &'a [u8] { function to_vec (line 376) | pub fn to_vec(&self) -> Vec { function as_ref (line 382) | fn as_ref(&self) -> &[u8] { type OctetsMut (line 391) | pub struct OctetsMut<'a> { function with_slice (line 401) | pub fn with_slice(buf: &'a mut [u8]) -> Self { function get_u8 (line 407) | pub fn get_u8(&mut self) -> Result { function peek_u8 (line 413) | pub fn peek_u8(&mut self) -> Result { function put_u8 (line 419) | pub fn put_u8(&mut self, v: u8) -> Result<&mut [u8]> { function get_u16 (line 425) | pub fn get_u16(&mut self) -> Result { function put_u16 (line 431) | pub fn put_u16(&mut self, v: u16) -> Result<&mut [u8]> { function get_u24 (line 437) | pub fn get_u24(&mut self) -> Result { function put_u24 (line 443) | pub fn put_u24(&mut self, v: u32) -> Result<&mut [u8]> { function get_u32 (line 449) | pub fn get_u32(&mut self) -> Result { function put_u32 (line 455) | pub fn put_u32(&mut self, v: u32) -> Result<&mut [u8]> { function get_u64 (line 461) | pub fn get_u64(&mut self) -> Result { function put_u64 (line 467) | pub fn put_u64(&mut self, v: u64) -> Result<&mut [u8]> { function get_varint (line 473) | pub fn get_varint(&mut self) -> Result { function put_varint (line 499) | pub fn put_varint(&mut self, v: u64) -> Result<&mut [u8]> { function put_varint_with_len (line 505) | pub fn put_varint_with_len( function get_bytes (line 541) | pub fn get_bytes(&mut self, len: usize) -> Result> { function get_bytes_mut (line 558) | pub fn get_bytes_mut(&mut self, len: usize) -> Result> { function get_bytes_with_u8_length (line 575) | pub fn get_bytes_with_u8_length(&mut self) -> Result> { function get_bytes_with_u16_length (line 583) | pub fn get_bytes_with_u16_length(&mut self) -> Result> { function get_bytes_with_varint_length (line 591) | pub fn get_bytes_with_varint_length(&mut self) -> Result> { function peek_bytes (line 598) | pub fn peek_bytes(&mut self, len: usize) -> Result> { function peek_bytes_mut (line 613) | pub fn peek_bytes_mut(&mut self, len: usize) -> Result> { function put_bytes (line 627) | pub fn put_bytes(&mut self, v: &[u8]) -> Result<()> { function put_huffman_encoded (line 649) | pub fn put_huffman_encoded( function rewind (line 708) | pub fn rewind(&mut self, len: usize) -> Result<()> { function split_at (line 719) | pub fn split_at( function slice (line 736) | pub fn slice(&'a mut self, len: usize) -> Result<&'a mut [u8]> { function slice_last (line 745) | pub fn slice_last(&'a mut self, len: usize) -> Result<&'a mut [u8]> { function skip (line 755) | pub fn skip(&mut self, skip: usize) -> Result<()> { function cap (line 766) | pub fn cap(&self) -> usize { function len (line 771) | pub fn len(&self) -> usize { function is_empty (line 776) | pub fn is_empty(&self) -> bool { function off (line 781) | pub fn off(&self) -> usize { function buf (line 786) | pub fn buf(&self) -> &[u8] { function to_vec (line 791) | pub fn to_vec(&self) -> Vec { function as_ref (line 797) | fn as_ref(&self) -> &[u8] { function as_mut (line 803) | fn as_mut(&mut self) -> &mut [u8] { function varint_len (line 810) | pub const fn varint_len(v: u64) -> usize { function varint_parse_len (line 825) | pub const fn varint_parse_len(first: u8) -> usize { function huffman_encoding_len (line 839) | pub fn huffman_encoding_len(src: &[u8]) -> Resul... function peek_invalid_fails_to_compile (line 876) | pub fn peek_invalid_fails_to_compile(b: &mut Octets) -> Result { function put_invalid_fails_to_compile (line 880) | pub fn put_invalid_fails_to_compile<'a>( function get_u (line 892) | fn get_u() { function get_u_mut (line 929) | fn get_u_mut() { function peek_u (line 966) | fn peek_u() { function peek_u_mut (line 987) | fn peek_u_mut() { function get_bytes (line 1008) | fn get_bytes() { function get_bytes_mut (line 1034) | fn get_bytes_mut() { function peek_bytes (line 1060) | fn peek_bytes() { function peek_bytes_mut (line 1078) | fn peek_bytes_mut() { function get_varint (line 1096) | fn get_varint() { function get_varint_mut (line 1129) | fn get_varint_mut() { function invalid_huffman (line 1163) | fn invalid_huffman() { function put_varint (line 1183) | fn put_varint() { function varint_too_large (line 1237) | fn varint_too_large() { function put_u (line 1244) | fn put_u() { function put_bytes (line 1282) | fn put_bytes() { function rewind (line 1303) | fn rewind() { function rewind_mut (line 1328) | fn rewind_mut() { function split (line 1353) | fn split() { function split_at (line 1379) | fn split_at() { function slice (line 1422) | fn slice() { function slice_mut (line 1452) | fn slice_mut() { function slice_last (line 1482) | fn slice_last() { function slice_last_mut (line 1523) | fn slice_last_mut() { FILE: qlog-dancer/qlog-dancer-ui.js constant OVERVIEW_CANVAS (line 32) | const OVERVIEW_CANVAS = "overview_canvas"; constant CC_CANVAS (line 33) | const CC_CANVAS = "cc_canvas"; constant RTT_CANVAS (line 34) | const RTT_CANVAS = "rtt_canvas"; constant FLOW_CONTROL_CANVAS (line 35) | const FLOW_CONTROL_CANVAS = "flow_control_canvas"; constant PKT_RX_CANVAS (line 36) | const PKT_RX_CANVAS = "pkt-rx-canvas"; constant PKT_TX_CANVAS (line 37) | const PKT_TX_CANVAS = "pkt-tx-canvas"; constant PKT_TX_COUNTS_CANVAS (line 38) | const PKT_TX_COUNTS_CANVAS = "pkt-tx-counts-canvas"; constant PKT_TX_DELTA_CANVAS (line 39) | const PKT_TX_DELTA_CANVAS = "pkt-tx-delta-canvas"; constant PKT_TX_PACING_CANVAS (line 40) | const PKT_TX_PACING_CANVAS = "pkt-tx-pacing-canvas"; constant STREAM_MULTIPLEX_CANVAS (line 41) | const STREAM_MULTIPLEX_CANVAS = "stream-multiplex-canvas"; constant STREAM_ABS_DL_CANVAS (line 42) | const STREAM_ABS_DL_CANVAS = "abs_dl_canvas"; constant STREAM_REL_DL_CANVAS (line 43) | const STREAM_REL_DL_CANVAS = "rel_dl_canvas" constant STREAM_ABS_UL_CANVAS (line 44) | const STREAM_ABS_UL_CANVAS = "abs_ul_canvas" constant STREAM_REL_UL_CANVAS (line 45) | const STREAM_REL_UL_CANVAS = "rel_ul_canvas" constant PENDING_CANVAS (line 46) | const PENDING_CANVAS = "pending_canvas" function setupDarkmode (line 66) | function setupDarkmode() { function setupCanvas (line 80) | function setupCanvas(div_id, canvas_id) { function loadLog (line 105) | async function loadLog(event) { function toggleElem (line 152) | function toggleElem(e) { function toggleLegend (line 162) | function toggleLegend(event) { function redrawByCanvasId (line 175) | function redrawByCanvasId(canvas_id) { function drawOverview (line 213) | function drawOverview(resize) { function drawFlowControl (line 232) | function drawFlowControl(resize) { function drawPacketReceived (line 244) | function drawPacketReceived(resize) { function drawPacketSent (line 256) | function drawPacketSent(resize) { function drawStreamMultiplex (line 278) | function drawStreamMultiplex(resize) { function drawSparks (line 297) | function drawSparks(resize) { function drawPending (line 315) | function drawPending(resize) { function toggleOverview (line 333) | function toggleOverview() { function toggleFlowControl (line 344) | function toggleFlowControl() { function togglePacketReceived (line 355) | function togglePacketReceived() { function togglePacketSent (line 366) | function togglePacketSent() { function toggleStreamMultiplex (line 377) | function toggleStreamMultiplex() { function togglePending (line 388) | function togglePending() { function toggleSparks (line 399) | function toggleSparks() { function toggleEventList (line 417) | function toggleEventList() { function render_events_table (line 428) | function render_events_table() { function populate_event_table (line 454) | function populate_event_table() { function setupTable (line 462) | function setupTable() { function findCanvasIdInDiv (line 470) | function findCanvasIdInDiv(event) { function resetZoom (line 491) | function resetZoom(event) { function setupCanvasResizer (line 530) | function setupCanvasResizer(canvas_id) { function canvasToPlotCoords (line 583) | function canvasToPlotCoords(canvasX, canvasY, chartBounds, plotRanges) { function setupCanvasInteraction (line 601) | function setupCanvasInteraction(canvasId) { function updateTooltip (line 709) | function updateTooltip(event, plotCoords, tooltip) { function hideTooltip (line 744) | function hideTooltip(tooltip) { FILE: qlog-dancer/src/config.rs type AppConfig (line 42) | pub struct AppConfig { method colors (line 80) | pub fn colors(dark_mode: bool) -> PlotColors { method from_clap (line 88) | pub fn from_clap() -> std::result::Result { FILE: qlog-dancer/src/datastore.rs type ParseResult (line 69) | pub type ParseResult = Result; type PacketInfoStub (line 71) | pub struct PacketInfoStub { type StreamAccess (line 81) | pub struct StreamAccess { type PrintStatsConfig (line 87) | pub struct PrintStatsConfig { type RequestAtServerDeltas (line 97) | pub struct RequestAtServerDeltas { type RequestAtClientDeltas (line 105) | pub struct RequestAtClientDeltas { type RequestActor (line 116) | pub enum RequestActor { method from (line 123) | fn from(value: VantagePoint) -> Self { type VantagePoint (line 132) | pub enum VantagePoint { type StreamDatapoint (line 139) | pub struct StreamDatapoint { type ApplicationProto (line 145) | pub enum ApplicationProto { method fmt (line 152) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { method fmt (line 158) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { type QuicSessionClose (line 169) | pub struct QuicSessionClose { type H2SessionClose (line 185) | pub struct H2SessionClose { type QuicStreamStopSending (line 199) | pub struct QuicStreamStopSending { method fmt (line 205) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { type QuicStreamReset (line 216) | pub struct QuicStreamReset { method fmt (line 223) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { type H2StreamReset (line 235) | pub struct H2StreamReset { method fmt (line 241) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { type Datastore (line 247) | pub struct Datastore { method consume_netlog_event (line 382) | pub fn consume_netlog_event( method consume_netlog_quic (line 410) | fn consume_netlog_quic( method consume_netlog_h3 (line 687) | fn consume_netlog_h3( method consume_netlog_h2 (line 802) | fn consume_netlog_h2( method consume_qlog_event (line 1090) | pub fn consume_qlog_event( method with_qlog_events (line 1136) | pub fn with_qlog_events( method finalize (line 1161) | pub fn finalize(&mut self) { method hydrate_http_requests (line 1172) | pub fn hydrate_http_requests(&mut self) { method consume_qlog_transport_parameters_set (line 1179) | fn consume_qlog_transport_parameters_set( method consume_qlog_packet_received (line 1225) | fn consume_qlog_packet_received( method consume_qlog_packet_sent (line 1356) | fn consume_qlog_packet_sent( method consume_qlog_stream_data_moved (line 1456) | fn consume_qlog_stream_data_moved( method consume_qlog_metrics_updated (line 1485) | fn consume_qlog_metrics_updated( method consume_qlog_congestion_state_updated (line 1535) | fn consume_qlog_congestion_state_updated( method get_or_insert_http_req (line 1549) | fn get_or_insert_http_req(&mut self, stream_id: u64) -> &mut HttpReque... method consume_qlog_h3_frame_created_client (line 1559) | fn consume_qlog_h3_frame_created_client( method consume_qlog_h3_frame_created_server (line 1598) | fn consume_qlog_h3_frame_created_server( method consume_qlog_h3_frame_parsed_client (line 1628) | fn consume_qlog_h3_frame_parsed_client( method consume_qlog_h3_frame_parsed_server (line 1665) | fn consume_qlog_h3_frame_parsed_server( method with_sqlog_reader_events (line 1706) | pub fn with_sqlog_reader_events( function is_bidi (line 377) | fn is_bidi(stream_id: u64) -> bool { type NetlogSession (line 1743) | pub struct NetlogSession { method fmt (line 1754) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { type RequestDiscovery (line 1763) | pub struct RequestDiscovery { type StreamBind (line 1768) | pub struct StreamBind { type RequestDiscoveryMap (line 1774) | pub type RequestDiscoveryMap = BTreeMap; type StreamBindingMap (line 1775) | pub type StreamBindingMap = BTreeMap; type ReqOverH3 (line 1778) | pub struct ReqOverH3 { type RequestOverH3Map (line 1785) | pub type RequestOverH3Map = BTreeMap>; function with_netlog_reader (line 1787) | pub fn with_netlog_reader( FILE: qlog-dancer/src/lib.rs type QlogPointu64 (line 46) | pub type QlogPointu64 = (f64, u64); type QlogPointRtt (line 47) | pub type QlogPointRtt = (f64, f32); type PacketType (line 50) | pub enum PacketType { method from_qlog_packet_type (line 61) | pub fn from_qlog_packet_type(ty: &qlog::events::quic::PacketType) -> S... method from_netlog_packet_header (line 75) | pub fn from_netlog_packet_header( method from_netlog_encryption_level (line 95) | pub fn from_netlog_encryption_level(encryption_level: &str) -> Self { type SerializationFormat (line 111) | pub enum SerializationFormat { method from_file_extension (line 119) | pub fn from_file_extension(extension: &str) -> Self { type VantagePointTypeShim (line 129) | pub struct VantagePointTypeShim { method fmt (line 142) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { method default (line 134) | fn default() -> Self { type LogFileDetails (line 147) | pub struct LogFileDetails { type RawLogEvents (line 154) | pub enum RawLogEvents { type LogFileData (line 160) | pub struct LogFileData { type LogFileParseResult (line 165) | pub struct LogFileParseResult { function parse_log_file (line 170) | pub fn parse_log_file( function read_qlog_from_file (line 283) | pub fn read_qlog_from_file>( function qlog_seq_reader (line 294) | pub fn qlog_seq_reader( function netlog_with_reader (line 321) | pub fn netlog_with_reader( function stringify_last (line 357) | pub fn stringify_last(src: &[T]) -> String function push_interp (line 370) | fn push_interp(collection: &mut Vec<(X, Y)>, value: ... function create_file_recursive (line 381) | fn create_file_recursive(filename: &str) -> std::io::Result { function category_and_type_from_name (line 390) | pub fn category_and_type_from_name(name: &str) -> (String, String) { function category_and_type_from_event (line 404) | pub fn category_and_type_from_event(ev: &T) -> (String, St... FILE: qlog-dancer/src/main.rs function main (line 57) | fn main() { function run (line 63) | fn run() -> i32 { FILE: qlog-dancer/src/plots/colors.rs constant FOREST_GREEN (line 31) | pub const FOREST_GREEN: RGBColor = RGBColor(15, 122, 27); constant PURPLE (line 32) | pub const PURPLE: RGBColor = RGBColor(54, 2, 89); constant TAUPE (line 33) | pub const TAUPE: RGBColor = RGBColor(133, 104, 3); constant MID_GREY (line 34) | pub const MID_GREY: RGBColor = RGBColor(172, 172, 172); constant ORANGE (line 35) | pub const ORANGE: RGBColor = RGBColor(201, 93, 4); constant MUSTARD (line 36) | pub const MUSTARD: RGBColor = RGBColor(158, 150, 2); constant SOFT_PINK (line 37) | pub const SOFT_PINK: RGBColor = RGBColor(158, 82, 94); constant BROWN (line 38) | pub const BROWN: RGBColor = RGBColor(74, 38, 2); constant BLUEY_BLACK (line 39) | pub const BLUEY_BLACK: RGBColor = RGBColor(23, 32, 42); constant BLUEY_GREY (line 40) | pub const BLUEY_GREY: RGBColor = RGBColor(128, 139, 150); constant TEAL (line 41) | pub const TEAL: RGBColor = RGBColor(0, 128, 128); type ColorCycle (line 47) | pub struct ColorCycle { method next_color (line 54) | pub fn next_color(&mut self) -> RGBColor { method reset (line 65) | pub fn reset(&mut self) { method default (line 71) | fn default() -> Self { type PlotColors (line 184) | pub struct PlotColors { method default (line 193) | fn default() -> Self { constant LIGHT_MODE (line 198) | pub const LIGHT_MODE: PlotColors = PlotColors { constant DARK_MODE (line 206) | pub const DARK_MODE: PlotColors = PlotColors { FILE: qlog-dancer/src/plots/congestion_control.rs function draw_congestion_plot (line 41) | pub fn draw_congestion_plot<'a, DB: DrawingBackend + 'a>( function plot_cc_plot (line 95) | pub fn plot_cc_plot<'a>( function draw_cc_updates (line 120) | fn draw_cc_updates( function draw_bytes_in_flight (line 174) | fn draw_bytes_in_flight( function draw_cwnd (line 184) | fn draw_cwnd( function draw_ssthresh (line 194) | fn draw_ssthresh( function cc_state_to_color (line 205) | fn cc_state_to_color(cc_state: &str) -> RGBColor { FILE: qlog-dancer/src/plots/conn_flow_control.rs constant Y_WIGGLE (line 40) | const Y_WIGGLE: f64 = 1.2; type XYMinMax (line 42) | struct XYMinMax { method init (line 49) | fn init(params: &PlotParameters, ss: &SeriesStore, ds: &Datastore) -> ... method y_range (line 64) | fn y_range(&self) -> std::ops::Range { method y_max (line 68) | fn y_max(ss: &SeriesStore, proto: &ApplicationProto) -> u64 { function blocked_lines (line 83) | fn blocked_lines( function received_data (line 101) | fn received_data( function window_updates (line 119) | fn window_updates( function draw_series (line 160) | fn draw_series<'a, DB: DrawingBackend + 'a>( function plot_conn_flow_control_canvas (line 191) | pub fn plot_conn_flow_control_canvas<'a>( function plot_conn_flow_control (line 225) | pub fn plot_conn_flow_control( FILE: qlog-dancer/src/plots/conn_overview.rs type XYMinMax (line 46) | struct XYMinMax { method init (line 53) | fn init(params: &PlotParameters, ss: &SeriesStore, y_max: u64) -> Self { method y_range (line 64) | fn y_range(&self) -> std::ops::Range { type OverviewChartOutputType (line 70) | pub enum OverviewChartOutputType { method from (line 85) | fn from(val: OverviewChartOutputType) -> Self { function draw_sent_max_data (line 109) | fn draw_sent_max_data( function draw_cumulative_sent_max_data (line 124) | fn draw_cumulative_sent_max_data( function draw_sent_max_stream_data (line 139) | fn draw_sent_max_stream_data( function draw_buffer_reads (line 155) | fn draw_buffer_reads( function draw_cumulative_buffer_reads (line 171) | fn draw_cumulative_buffer_reads( function draw_buffer_writes (line 186) | fn draw_buffer_writes( function draw_cumulative_buffer_writes (line 202) | fn draw_cumulative_buffer_writes( function draw_buffer_dropped (line 215) | fn draw_buffer_dropped( function draw_cumulative_buffer_dropped (line 231) | fn draw_cumulative_buffer_dropped( function draw_sent_stream_data (line 244) | fn draw_sent_stream_data( function draw_received_max_data (line 260) | fn draw_received_max_data( function draw_cumulative_received_stream_max_data (line 275) | fn draw_cumulative_received_stream_max_data( function draw_main_plot (line 291) | fn draw_main_plot<'a, DB: DrawingBackend + 'a>( function draw_stream_send_plot (line 344) | fn draw_stream_send_plot<'a, DB: DrawingBackend + 'a>( function draw_stream_recv_plot (line 394) | fn draw_stream_recv_plot<'a, DB: DrawingBackend + 'a>( function plot_connection_overview (line 443) | pub fn plot_connection_overview( function plot_main_plot (line 518) | pub fn plot_main_plot<'a>( FILE: qlog-dancer/src/plots/minmax.rs type XMinMax (line 28) | pub struct XMinMax { method new (line 34) | pub fn new(min: f64, max: f64, start: Option, end: Option) -... method range (line 48) | pub fn range(&self) -> std::ops::Range { type XYMinMax (line 53) | pub struct XYMinMax { function init (line 59) | pub fn init( FILE: qlog-dancer/src/plots/mod.rs type ChartOutputType (line 38) | pub enum ChartOutputType { type ChartConfig (line 51) | struct ChartConfig { method chart_name (line 65) | pub fn chart_name(&self) -> String { method chart_filepath (line 136) | pub fn chart_filepath(&self) -> String { method init_chart_dir (line 147) | fn init_chart_dir(&self) { method canvas_id (line 163) | fn canvas_id(&self) -> Option { function make_chart_bitmap_area (line 172) | pub fn make_chart_bitmap_area( function make_chart_canvas_area (line 182) | pub fn make_chart_canvas_area( function make_chart_config (line 192) | fn make_chart_config( function chart_title_style (line 211) | pub fn chart_title_style(color: &RGBColor) -> TextStyle<'_> { function chart_subtitle_style (line 215) | pub fn chart_subtitle_style(color: &RGBColor) -> TextStyle<'_> { function chart_label_style (line 219) | pub fn chart_label_style(color: &RGBColor) -> TextStyle<'_> { function draw_mesh (line 223) | fn draw_mesh( type ClampParams (line 254) | pub struct ClampParams { type ChartSize (line 261) | pub struct ChartSize { type ChartMargin (line 267) | pub struct ChartMargin { type AreaMargin (line 275) | pub struct AreaMargin { type PlotParameters (line 280) | pub struct PlotParameters { function draw_line (line 292) | fn draw_line( FILE: qlog-dancer/src/plots/packet_received.rs function plot_packet_received (line 35) | pub fn plot_packet_received( FILE: qlog-dancer/src/plots/packet_sent.rs type XYMinMax (line 40) | struct XYMinMax { method init (line 47) | fn init(params: &PlotParameters, ss: &SeriesStore, y_max: u64) -> Self { method y_range (line 58) | fn y_range(&self) -> std::ops::Range { constant Y_WIGGLE (line 63) | const Y_WIGGLE: f64 = 1.1; function draw_packet_sent_received_plot (line 65) | pub fn draw_packet_sent_received_plot<'a, DB: DrawingBackend + 'a>( function draw_packet_sent_lost_delivered_count_plot (line 162) | pub fn draw_packet_sent_lost_delivered_count_plot<'a, DB: DrawingBackend... function draw_delta_plot (line 235) | fn draw_delta_plot<'a, DB: DrawingBackend + 'a>( function draw_pacing_rate_plot (line 297) | fn draw_pacing_rate_plot<'a, DB: DrawingBackend + 'a>( function plot_packet_sent (line 372) | pub fn plot_packet_sent( function plot_packet_sent_plot_canvas (line 409) | pub fn plot_packet_sent_plot_canvas<'a>( function plot_packet_sent_lost_delivered_count_plot (line 420) | pub fn plot_packet_sent_lost_delivered_count_plot<'a>( function plot_packet_sent_delta_plot_canvas (line 431) | pub fn plot_packet_sent_delta_plot_canvas<'a>( function plot_packet_sent_pacing_rate_plot_canvas (line 442) | pub fn plot_packet_sent_pacing_rate_plot_canvas<'a>( FILE: qlog-dancer/src/plots/pending.rs type PendingPlotParams (line 42) | pub struct PendingPlotParams { type PendingStack (line 49) | struct PendingStack { function plot_pending (line 55) | pub fn plot_pending( FILE: qlog-dancer/src/plots/rtt.rs function draw_rtt_series (line 39) | fn draw_rtt_series( function draw_min_rtt (line 52) | fn draw_min_rtt( function draw_latest_rtt (line 59) | fn draw_latest_rtt( function draw_smoothed_rtt (line 66) | fn draw_smoothed_rtt( function draw_rtt_plot (line 73) | pub fn draw_rtt_plot<'a, DB: DrawingBackend + 'a>( function plot_rtt_plot (line 119) | pub fn plot_rtt_plot<'a>( FILE: qlog-dancer/src/plots/stream_multiplex.rs type MultiplexPlotsParams (line 40) | pub struct MultiplexPlotsParams { method default (line 54) | fn default() -> Self { function plot_stream_multiplexing (line 70) | pub fn plot_stream_multiplexing( FILE: qlog-dancer/src/plots/stream_sparks.rs type TransmissionType (line 53) | pub enum TransmissionType { type SparkPlotsParams (line 59) | pub struct SparkPlotsParams { method default (line 76) | fn default() -> Self { type SparkCaption (line 96) | enum SparkCaption { method request_at_client_from_stub (line 132) | fn request_at_client_from_stub( method request_at_server_from_stub (line 223) | fn request_at_server_from_stub( method from_data_store (line 306) | fn from_data_store(ds: &Datastore, stream_id: u64) -> Option { method draw (line 333) | fn draw( function plot_legend (line 515) | fn plot_legend( function plot_sparks (line 609) | pub fn plot_sparks( function draw_mesh (line 1131) | fn draw_mesh( function draw_captions (line 1149) | fn draw_captions( function draw_stream_frames_line (line 1196) | fn draw_stream_frames_line( function draw_buffered_data_line (line 1216) | fn draw_buffered_data_line( function draw_stream_max_line (line 1245) | fn draw_stream_max_line( function draw_request_timing_lines (line 1273) | fn draw_request_timing_lines( FILE: qlog-dancer/src/reports/events.rs type PrintableEvent (line 74) | struct PrintableEvent { function frames_to_string (line 82) | pub fn frames_to_string(frames: &[QuicFrame]) -> String { function http_frame_to_string (line 188) | fn http_frame_to_string(frame: &Http3Frame) -> String { function sqlog_event_list (line 238) | pub fn sqlog_event_list( FILE: qlog-dancer/src/reports/html.rs constant HTML_INCLUDES (line 43) | const HTML_INCLUDES: &str = r#" constant TABLE_INIT_SCRIPT (line 52) | const TABLE_INIT_SCRIPT: &str = r#" constant REQUEST_TABLE_INIT_SCRIPT (line 77) | const REQUEST_TABLE_INIT_SCRIPT: &str = r#" constant SESSIONS_STYLES (line 105) | const SESSIONS_STYLES: &str = r#" function inject_table_id_class (line 127) | fn inject_table_id_class( function overview (line 145) | pub fn overview(log_file: &LogFileParseResult, config: &AppConfig) { function closures (line 204) | pub fn closures(log_file: &LogFileParseResult, config: &AppConfig) { function requests (line 288) | pub fn requests(log_file: &LogFileParseResult, config: &AppConfig) { function event_list_html_from_sqlog (line 397) | pub fn event_list_html_from_sqlog(events: &[qlog::reader::Event]) -> Str... function event_list (line 409) | pub fn event_list(log_file: &LogFileParseResult, config: &AppConfig) { function table_cell_value (line 453) | fn table_cell_value(cell: &HtmlElement) -> Option { type H2ClosureTableDecorator (line 471) | struct H2ClosureTableDecorator { method visit_element_mut (line 476) | fn visit_element_mut(&mut self, e: &mut HtmlElement) -> bool { type QUICClosureTableDecorator (line 523) | struct QUICClosureTableDecorator { method visit_element_mut (line 528) | fn visit_element_mut(&mut self, e: &mut HtmlElement) -> bool { type RequestTableDecorator (line 575) | struct RequestTableDecorator { method visit_element_mut (line 580) | fn visit_element_mut(&mut self, e: &mut HtmlElement) -> bool { FILE: qlog-dancer/src/reports/mod.rs function report (line 35) | pub fn report(log_file: &LogFileParseResult, config: &AppConfig) { FILE: qlog-dancer/src/reports/text.rs function request_timing_table (line 45) | pub fn request_timing_table( function print_stats (line 94) | pub fn print_stats(data_store: &Datastore, config: &PrintStatsConfig) { function print_sent_packet_stats (line 125) | fn print_sent_packet_stats(data_store: &Datastore) { function print_rx_max_data_frames (line 146) | fn print_rx_max_data_frames(data_store: &Datastore) { function print_tx_max_data_frames (line 163) | fn print_tx_max_data_frames(data_store: &Datastore) { function print_rx_max_stream_data_frames (line 173) | fn print_rx_max_stream_data_frames(data_store: &Datastore) { function print_tx_max_stream_data_frames (line 194) | fn print_tx_max_stream_data_frames(data_store: &Datastore) { function print_tx_reset_stream_frames (line 215) | fn print_tx_reset_stream_frames(data_store: &Datastore) { function print_rx_reset_stream_frames (line 232) | fn print_rx_reset_stream_frames(data_store: &Datastore) { function print_local_stream_buffer_reads (line 249) | fn print_local_stream_buffer_reads(data_store: &Datastore) { function print_local_stream_buffer_writes (line 269) | fn print_local_stream_buffer_writes(data_store: &Datastore) { function print_local_stream_buffer_dropped (line 293) | fn print_local_stream_buffer_dropped(data_store: &Datastore) { function print_tx_stream_frames (line 317) | fn print_tx_stream_frames(data_store: &Datastore) { function print_flow_control (line 349) | pub fn print_flow_control(data: &[LogFileData]) { function print_packet_loss (line 387) | pub fn print_packet_loss(data: &[LogFileData]) { FILE: qlog-dancer/src/request_stub.rs constant CLIENT_CONTENT_LENGTH (line 39) | pub const CLIENT_CONTENT_LENGTH: &str = "Request Content-Length"; constant CLIENT_TRANSFERRED (line 40) | pub const CLIENT_TRANSFERRED: &str = "Request Transferred"; constant UPLOAD_TIME (line 41) | pub const UPLOAD_TIME: &str = "Upload duration (ms)"; constant UPLOAD_RATE (line 42) | pub const UPLOAD_RATE: &str = "Upload rate (Mbps)"; constant SERVER_RX_HDR_TX_HDR (line 43) | pub const SERVER_RX_HDR_TX_HDR: &str = "Server Rx Hdr, Tx Hdr"; constant SERVER_TX_HDR_TX_FIRST_HDR (line 44) | pub const SERVER_TX_HDR_TX_FIRST_HDR: &str = "Server Tx Hdr, Tx First Hdr"; constant SERVER_TX_HDR_TX_LAST_HDR (line 45) | pub const SERVER_TX_HDR_TX_LAST_HDR: &str = "Server Tx Hdr, Tx Last Hdr"; constant SERVER_TX_FIRST_DATA_TX_LAST_DATA (line 46) | pub const SERVER_TX_FIRST_DATA_TX_LAST_DATA: &str = constant CLIENT_PRI (line 49) | pub const CLIENT_PRI: &str = "Client Priority Header"; constant SERVER_PRI (line 50) | pub const SERVER_PRI: &str = "Server Priority Header"; constant MAX_PATH_LENGTH (line 52) | const MAX_PATH_LENGTH: usize = 80; type NaOption (line 55) | pub struct NaOption { function new (line 60) | pub fn new(value: Option) -> Self { method fmt (line 66) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { type HttpRequestStub (line 75) | pub struct HttpRequestStub { method client_deltas (line 151) | fn client_deltas(&self) -> ClientDeltaStrings { method server_deltas (line 167) | fn server_deltas(&self) -> (String, String, String, String) { constant LENGTH (line 190) | const LENGTH: usize = 28; method fields (line 192) | fn fields(&self) -> Vec> { method headers (line 290) | fn headers() -> Vec> { method set_request_info_from_netlog (line 334) | pub fn set_request_info_from_netlog(&mut self, hdrs: &[String]) { method set_response_info_from_netlog (line 346) | pub fn set_response_info_from_netlog(&mut self, hdrs: &[String]) { method set_request_info_from_qlog (line 356) | pub fn set_request_info_from_qlog(&mut self, hdrs: &[HttpHeader]) { method set_response_info_from_qlog (line 365) | pub fn set_response_info_from_qlog(&mut self, hdrs: &[HttpHeader]) { method maybe_megabits_per_second (line 373) | fn maybe_megabits_per_second( method calculate_upload_download_rate (line 398) | pub fn calculate_upload_download_rate(&mut self) { method maybe_time_delta (line 436) | fn maybe_time_delta(start: Option, end: Option) -> NaOption<... method calculate_deltas (line 444) | pub fn calculate_deltas(&mut self) { type ClientDeltaStrings (line 124) | struct ClientDeltaStrings { method default (line 135) | fn default() -> Self { function find_header_value (line 327) | pub fn find_header_value(hdrs: &[HttpHeader], name: &str) -> Option Self { method update_sent_x_axis_max (line 134) | fn update_sent_x_axis_max(&mut self, x: f64) { method update_received_x_axis_max (line 138) | fn update_received_x_axis_max(&mut self, x: f64) { method update_congestion_y_axis_max (line 142) | fn update_congestion_y_axis_max(&mut self, y: u64) { method update_stream_send_y_axis_max (line 146) | fn update_stream_send_y_axis_max(&mut self, y: u64) { method update_stream_recv_y_axis_max (line 150) | fn update_stream_recv_y_axis_max(&mut self, y: u64) { method update_rtt_y_axis_max (line 154) | fn update_rtt_y_axis_max(&mut self, y: f32) { method cwnd (line 158) | fn cwnd(&mut self, data_store: &Datastore) { method bif (line 167) | fn bif(&mut self, data_store: &Datastore) { method min_rtt (line 176) | fn min_rtt(&mut self, data_store: &Datastore) { method latest_rtt (line 185) | fn latest_rtt(&mut self, data_store: &Datastore) { method pacing_rate (line 194) | fn pacing_rate(&mut self, data_store: &Datastore) { method delivery_rate (line 203) | fn delivery_rate(&mut self, data_store: &Datastore) { method send_rate (line 212) | fn send_rate(&mut self, data_store: &Datastore) { method ack_rate (line 221) | fn ack_rate(&mut self, data_store: &Datastore) { method ssthresh (line 230) | fn ssthresh(&mut self, data_store: &Datastore) { method smoothed_rtt (line 239) | fn smoothed_rtt(&mut self, data_store: &Datastore) { method sent_max_data (line 248) | fn sent_max_data(&mut self, data_store: &Datastore) { method sum_sent_stream_max_data (line 257) | fn sum_sent_stream_max_data(&mut self, data_store: &Datastore) { method packet_sent (line 266) | fn packet_sent(&mut self, data_store: &Datastore) { method packet_recv (line 334) | fn packet_recv(&mut self, data_store: &Datastore) { method missing_packets (line 349) | fn missing_packets(&mut self, data_store: &Datastore) { method sent_stream_max_data (line 368) | fn sent_stream_max_data(&mut self, data_store: &Datastore) { method received_stream_max_data (line 385) | fn received_stream_max_data(&mut self, data_store: &Datastore) { method stream_buffer_reads (line 402) | fn stream_buffer_reads(&mut self, data_store: &Datastore) { method sum_stream_buffer_reads (line 420) | fn sum_stream_buffer_reads(&mut self, data_store: &Datastore) { method stream_buffer_writes (line 426) | fn stream_buffer_writes(&mut self, data_store: &Datastore) { method sum_stream_buffer_writes (line 445) | fn sum_stream_buffer_writes(&mut self, data_store: &Datastore) { method stream_buffer_dropped (line 457) | fn stream_buffer_dropped(&mut self, data_store: &Datastore) { method sum_stream_buffer_dropped (line 476) | fn sum_stream_buffer_dropped(&mut self, data_store: &Datastore) { method sent_stream_frames (line 488) | fn sent_stream_frames(&mut self, data_store: &Datastore) { method received_stream_frames (line 514) | fn received_stream_frames(&mut self, data_store: &Datastore) { method received_data_frames (line 532) | fn received_data_frames(&mut self, data_store: &Datastore) { method sent_data_frames (line 564) | fn sent_data_frames(&mut self, data_store: &Datastore) { method initial_h2_fc_value (line 599) | fn initial_h2_fc_value(stream_id: u32, data_store: &Datastore) -> u32 { method h2_fc_balanced (line 613) | fn h2_fc_balanced(&mut self, data_store: &Datastore) { method h2_fc_absolute (line 645) | fn h2_fc_absolute(&mut self, data_store: &Datastore) { method netlog_quic_client_side_window_updates (line 678) | fn netlog_quic_client_side_window_updates(&mut self, data_store: &Data... method netlog_h2_stream_received_connection_cumulative (line 692) | fn netlog_h2_stream_received_connection_cumulative( method netlog_quic_stream_received_connection_cumulative (line 703) | fn netlog_quic_stream_received_connection_cumulative( method received_max_data (line 715) | fn received_max_data(&mut self, data_store: &Datastore) { method sum_received_stream_max_data (line 721) | fn sum_received_stream_max_data(&mut self, data_store: &Datastore) { method populate_series_values (line 727) | fn populate_series_values(&mut self, data_store: &Datastore) { FILE: qlog-dancer/src/trackers/stream_buffer_tracker.rs type StreamBufferTracker (line 35) | pub struct StreamBufferTracker { method new (line 50) | pub fn new() -> Self { method update (line 56) | pub fn update( method get_stream_max (line 81) | pub fn get_stream_max(&self, stream_id: u64) -> Option { method current_sum (line 85) | pub fn current_sum(&self) -> u64 { function test_tracker_empty (line 95) | fn test_tracker_empty() { function test_tracker_single_stream_in_order (line 104) | fn test_tracker_single_stream_in_order() { function test_tracker_out_of_order_events (line 135) | fn test_tracker_out_of_order_events() { function test_tracker_multiple_streams (line 181) | fn test_tracker_multiple_streams() { function test_tracker_duplicate_values (line 231) | fn test_tracker_duplicate_values() { function test_tracker_running_sum_correctness (line 262) | fn test_tracker_running_sum_correctness() { function test_tracker_preserves_stream_access (line 305) | fn test_tracker_preserves_stream_access() { FILE: qlog-dancer/src/trackers/stream_max_tracker.rs type StreamMaxTracker (line 33) | pub struct StreamMaxTracker { method new (line 48) | pub fn new() -> Self { method update (line 53) | pub fn update( method get_stream_max (line 78) | pub fn get_stream_max(&self, stream_id: u64) -> Option { method current_sum (line 82) | pub fn current_sum(&self) -> u64 { function test_tracker_empty (line 92) | fn test_tracker_empty() { function test_tracker_single_stream_in_order (line 101) | fn test_tracker_single_stream_in_order() { function test_tracker_out_of_order_events (line 118) | fn test_tracker_out_of_order_events() { function test_tracker_multiple_streams (line 140) | fn test_tracker_multiple_streams() { function test_tracker_duplicate_values (line 162) | fn test_tracker_duplicate_values() { function test_tracker_running_sum_correctness (line 179) | fn test_tracker_running_sum_correctness() { function test_tracker_complex_interleaving (line 194) | fn test_tracker_complex_interleaving() { function test_tracker_init_value (line 219) | fn test_tracker_init_value() { FILE: qlog-dancer/src/web.rs constant AREA_MARGIN (line 70) | const AREA_MARGIN: AreaMargin = AreaMargin { x: 50, y: 100 }; constant CHART_MARGIN (line 71) | const CHART_MARGIN: ChartMargin = ChartMargin { constant CHART_MARGIN_TIGHT (line 77) | const CHART_MARGIN_TIGHT: ChartMargin = ChartMargin { type Pointu64 (line 85) | pub struct Pointu64 { type ChartBounds (line 91) | pub struct ChartBounds { type PlotRanges (line 99) | pub struct PlotRanges { type ChartInfo (line 107) | pub struct ChartInfo { function with_f32_u64 (line 113) | pub fn with_f32_u64( function with_f32_f32 (line 142) | pub fn with_f32_f32( function with_u64_f32 (line 171) | pub fn with_u64_f32( function into (line 206) | fn into(self) -> JsValue { function new_qlog_dancer (line 216) | pub fn new_qlog_dancer(display_name: &str) -> QlogDancerWeb { type QlogDancerWeb (line 244) | pub struct QlogDancerWeb { method process_chunk (line 266) | pub fn process_chunk(&mut self, chunk: &[u8]) { method read_stream (line 303) | pub async fn read_stream(&mut self, readable: web_sys::ReadableStream) { method try_read_event (line 316) | pub fn try_read_event(&mut self, buf: &[u8]) -> Result<(), String> { method total_packets_sent (line 341) | pub fn total_packets_sent(&self) -> usize { method populate_datastore (line 351) | pub fn populate_datastore(&mut self) { method populate_seriesstore (line 374) | pub fn populate_seriesstore(&mut self) { method get_chart_info (line 379) | pub fn get_chart_info(&self, canvas_id: &str) -> JsValue { method draw_connection_overview (line 405) | pub fn draw_connection_overview( method draw_cc_plot (line 440) | pub fn draw_cc_plot( method draw_rtt_plot (line 474) | pub fn draw_rtt_plot( method draw_flow_control (line 506) | pub fn draw_flow_control(&mut self, canvas_id: &str, display_legend: b... method draw_sparks (line 545) | pub fn draw_sparks( method draw_packet_received (line 588) | pub fn draw_packet_received( method draw_pending (line 627) | pub fn draw_pending(&mut self, canvas_id: &str) { method draw_packet_sent_plot (line 659) | pub fn draw_packet_sent_plot( method draw_packet_sent_lost_delivered_count_plot (line 697) | pub fn draw_packet_sent_lost_delivered_count_plot( method draw_packet_sent_delta_plot (line 732) | pub fn draw_packet_sent_delta_plot( method draw_packet_sent_pacing_plot (line 769) | pub fn draw_packet_sent_pacing_plot( method draw_stream_multiplexing (line 807) | pub fn draw_stream_multiplexing(&mut self, canvas_id: &str) { method populate_event_table (line 834) | pub fn populate_event_table(&self, event_div_id: &str) { method packet_sent (line 847) | pub fn packet_sent(&self) -> Vec { FILE: qlog-dancer/src/wirefilter.rs function stream_ids (line 38) | fn stream_ids(event: &Event) -> TypedArray<'_, i64> { function filter_sqlog_events (line 90) | pub fn filter_sqlog_events(mut events: Vec, filter: &str) -> Vec<... function stream_frame (line 178) | fn stream_frame(stream_id: u64) -> QuicFrame { function events (line 193) | fn events() -> Vec { function test_stream_id_filter_no_match (line 291) | fn test_stream_id_filter_no_match() { function test_stream_id_filter_stream0 (line 301) | fn test_stream_id_filter_stream0() { function test_stream_id_filter_stream1 (line 334) | fn test_stream_id_filter_stream1() { function test_stream_id_filter_stream0_and_stream3 (line 397) | fn test_stream_id_filter_stream0_and_stream3() { FILE: qlog/src/events/http3.rs type Initiator (line 34) | pub enum Initiator { type StreamType (line 41) | pub enum StreamType { type PushDecision (line 54) | pub enum PushDecision { type PriorityTargetStreamType (line 61) | pub enum PriorityTargetStreamType { type Http3EventType (line 68) | pub enum Http3EventType { type HttpHeader (line 82) | pub struct HttpHeader { type Setting (line 91) | pub struct Setting { type Http3FrameTypeName (line 99) | pub enum Http3FrameTypeName { type Http3Frame (line 120) | pub enum Http3Frame { method default (line 167) | fn default() -> Self { type ParametersSet (line 177) | pub struct ParametersSet { type ParametersRestored (line 193) | pub struct ParametersRestored { type StreamTypeSet (line 204) | pub struct StreamTypeSet { type PriorityUpdatedTrigger (line 214) | pub enum PriorityUpdatedTrigger { type PriorityUpdatedReason (line 222) | pub enum PriorityUpdatedReason { type PriorityUpdated (line 231) | pub struct PriorityUpdated { type FrameCreated (line 242) | pub struct FrameCreated { type FrameParsed (line 252) | pub struct FrameParsed { type DatagramCreated (line 262) | pub struct DatagramCreated { type DatagramParsed (line 270) | pub struct DatagramParsed { type PushResolved (line 278) | pub struct PushResolved { FILE: qlog/src/events/mod.rs type ExData (line 37) | pub type ExData = BTreeMap; constant LOGLEVEL_URI (line 39) | pub const LOGLEVEL_URI: &str = "urn:ietf:params:qlog:events:loglevel-13"; constant QUIC_URI (line 41) | pub const QUIC_URI: &str = "urn:ietf:params:qlog:events:quic-12"; constant HTTP3_URI (line 42) | pub const HTTP3_URI: &str = "urn:ietf:params:qlog:events:http3-12"; type EventType (line 46) | pub enum EventType { method from (line 303) | fn from(event_data: &EventData) -> Self { type TimeFormat (line 59) | pub enum TimeFormat { type Event (line 67) | pub struct Event { method with_time (line 103) | pub fn with_time(time: f64, data: EventData) -> Self { method with_time_ex (line 108) | pub fn with_time_ex(time: f64, data: EventData, ex_data: ExData) -> Se... method eq (line 134) | fn eq(&self, other: &Event) -> bool { type JsonEvent (line 145) | pub struct JsonEvent { type EventImportance (line 166) | pub enum EventImportance { method is_contained_in (line 175) | pub fn is_contained_in(&self, other: &EventImportance) -> bool { method from (line 192) | fn from(ty: EventType) -> Self { type Eventable (line 296) | pub trait Eventable { method importance (line 123) | fn importance(&self) -> EventImportance { method set_time (line 127) | fn set_time(&mut self, time: f64) { method importance (line 156) | fn importance(&self) -> EventImportance { method set_time (line 160) | fn set_time(&mut self, time: f64) { method importance (line 297) | fn importance(&self) -> EventImportance; method set_time (line 299) | fn set_time(&mut self, time: f64); type DataRecipient (line 423) | pub enum DataRecipient { type RawInfo (line 433) | pub struct RawInfo { type EventData (line 444) | pub enum EventData { method contains_quic_frames (line 619) | pub fn contains_quic_frames(&self) -> Option { type LogLevelEventType (line 642) | pub enum LogLevelEventType { type ConnectionClosedEventError (line 652) | pub enum ConnectionClosedEventError { type ConnectionClosedFrameError (line 659) | pub enum ConnectionClosedFrameError { type ApplicationError (line 667) | pub enum ApplicationError { type CryptoError (line 691) | pub enum CryptoError { type TupleEndpointInfo (line 697) | pub struct TupleEndpointInfo { FILE: qlog/src/events/quic.rs type PacketType (line 47) | pub enum PacketType { type PacketHeader (line 66) | pub struct PacketHeader { method new (line 90) | pub fn new( method with_type (line 134) | pub fn with_type( type PacketNumberSpace (line 157) | pub enum PacketNumberSpace { type StreamType (line 165) | pub enum StreamType { type StreamTrigger (line 172) | pub enum StreamTrigger { type StreamState (line 179) | pub enum StreamState { type ErrorSpace (line 201) | pub enum ErrorSpace { type TransportError (line 208) | pub enum TransportError { type QuicEventType (line 231) | pub enum QuicEventType { type TransportInitiator (line 276) | pub enum TransportInitiator { type ConnectionState (line 283) | pub enum ConnectionState { type ConnectionClosedTrigger (line 297) | pub enum ConnectionClosedTrigger { type ServerListening (line 309) | pub struct ServerListening { type ConnectionStarted (line 320) | pub struct ConnectionStarted { type ConnectionClosed (line 327) | pub struct ConnectionClosed { type ConnectionIdUpdated (line 342) | pub struct ConnectionIdUpdated { type SpinBitUpdated (line 351) | pub struct SpinBitUpdated { type ConnectionStateUpdated (line 357) | pub struct ConnectionStateUpdated { type TupleAssigned (line 364) | pub struct TupleAssigned { type MtuUpdated (line 372) | pub struct MtuUpdated { type PacketSentTrigger (line 380) | pub enum PacketSentTrigger { type PacketReceivedTrigger (line 390) | pub enum PacketReceivedTrigger { type PacketDroppedTrigger (line 396) | pub enum PacketDroppedTrigger { type PacketBufferedTrigger (line 408) | pub enum PacketBufferedTrigger { type AckedRanges (line 415) | pub enum AckedRanges { type QuicFrameTypeName (line 422) | pub enum QuicFrameTypeName { type QuicFrame (line 457) | pub enum QuicFrame { type PreferredAddress (line 595) | pub struct PreferredAddress { type AlpnIdentifier (line 608) | pub struct AlpnIdentifier { type QuicVersionInformation (line 615) | pub struct QuicVersionInformation { type AlpnInformation (line 623) | pub struct AlpnInformation { type ParametersSet (line 631) | pub struct ParametersSet { type UnknownTransportParameter (line 666) | pub struct UnknownTransportParameter { type ParametersRestored (line 673) | pub struct ParametersRestored { type Ecn (line 692) | pub enum Ecn { type UdpDatagramsReceived (line 705) | pub struct UdpDatagramsReceived { type UdpDatagramsSent (line 714) | pub struct UdpDatagramsSent { type UdpDatagramDropped (line 723) | pub struct UdpDatagramDropped { type PacketReceived (line 729) | pub struct PacketReceived { type PacketSent (line 748) | pub struct PacketSent { type PacketDropped (line 770) | pub struct PacketDropped { type PacketBuffered (line 783) | pub struct PacketBuffered { type PacketsAcked (line 794) | pub struct PacketsAcked { type StreamStateUpdated (line 801) | pub struct StreamStateUpdated { type FramesProcessed (line 813) | pub struct FramesProcessed { type DataMovedAdditionalInfo (line 821) | pub enum DataMovedAdditionalInfo { type StreamDataMoved (line 828) | pub struct StreamDataMoved { type DatagramDataMoved (line 839) | pub struct DatagramDataMoved { type BlockedState (line 847) | pub enum BlockedState { type BlockedReason (line 856) | pub enum BlockedReason { type ConnectionDataBlockedUpdated (line 869) | pub struct ConnectionDataBlockedUpdated { type StreamDataBlockedUpdated (line 877) | pub struct StreamDataBlockedUpdated { type DatagramDataBlockedUpdated (line 886) | pub struct DatagramDataBlockedUpdated { type MigrationState (line 894) | pub enum MigrationState { type MigrationStateUpdated (line 907) | pub struct MigrationStateUpdated { type CongestionStateUpdatedTrigger (line 919) | pub enum CongestionStateUpdatedTrigger { type TimerType (line 928) | pub enum TimerType { type PacketLostTrigger (line 941) | pub enum PacketLostTrigger { type TimerEventType (line 951) | pub enum TimerEventType { type RecoveryParametersSet (line 961) | pub struct RecoveryParametersSet { type RecoveryMetricsUpdated (line 976) | pub struct RecoveryMetricsUpdated { type CongestionStateUpdated (line 1003) | pub struct CongestionStateUpdated { type TimerUpdated (line 1012) | pub struct TimerUpdated { type PacketLost (line 1022) | pub struct PacketLost { type MarkedForRetransmit (line 1033) | pub struct MarkedForRetransmit { type EcnState (line 1039) | pub enum EcnState { type EcnStateUpdated (line 1049) | pub struct EcnStateUpdated { type KeyType (line 1056) | pub enum KeyType { type KeyUpdateOrRetiredTrigger (line 1077) | pub enum KeyUpdateOrRetiredTrigger { type KeyUpdated (line 1085) | pub struct KeyUpdated { type KeyDiscarded (line 1098) | pub struct KeyDiscarded { FILE: qlog/src/lib.rs type Error (line 401) | pub enum Error { method fmt (line 417) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { method source (line 423) | fn source(&self) -> Option<&(dyn std::error::Error + 'static)> { method from (line 429) | fn from(err: std::io::Error) -> Self { constant QLOGFILE_URI (line 434) | pub const QLOGFILE_URI: &str = "urn:ietf:params:qlog:file:contained"; constant QLOGFILESEQ_URI (line 435) | pub const QLOGFILESEQ_URI: &str = "urn:ietf:params:qlog:file:sequential"; type Bytes (line 437) | pub type Bytes = String; type StatelessResetToken (line 438) | pub type StatelessResetToken = Bytes; type Result (line 446) | pub type Result = std::result::Result; type Qlog (line 450) | pub struct Qlog { type QlogSeq (line 460) | pub struct QlogSeq { type ImportanceLogLevel (line 470) | pub enum ImportanceLogLevel { type Trace (line 480) | pub struct Trace { method new (line 493) | pub fn new( method push_event (line 509) | pub fn push_event(&mut self, event: Event) { type TraceSeq (line 516) | pub struct TraceSeq { method new (line 527) | pub fn new( type VantagePoint (line 544) | pub struct VantagePoint { type VantagePointType (line 555) | pub enum VantagePointType { type ReferenceTime (line 565) | pub struct ReferenceTime { type CommonFields (line 573) | pub struct CommonFields { type TokenType (line 584) | pub enum TokenType { type Token (line 591) | pub struct Token { type HexSlice (line 600) | pub struct HexSlice<'a>(&'a [u8]); function new (line 603) | pub fn new(data: &'a T) -> HexSlice<'a> function maybe_string (line 610) | pub fn maybe_string(data: Option<&'a T>) -> Option function fmt (line 619) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { FILE: qlog/src/reader.rs type Event (line 32) | pub enum Event { type QlogSeqReader (line 44) | pub struct QlogSeqReader<'a> { function new (line 50) | pub fn new( function read_record (line 69) | fn read_record( type Item (line 85) | type Item = Event; method next (line 88) | fn next(&mut self) -> Option { FILE: qlog/src/streamer.rs constant TIME_PRECISION_MULTIPLIER (line 35) | const TIME_PRECISION_MULTIPLIER: f64 = 1e6; function elapsed_millis (line 39) | fn elapsed_millis(start: std::time::Instant, now: std::time::Instant) ->... type StreamerState (line 62) | pub enum StreamerState { type QlogStreamer (line 68) | pub struct QlogStreamer { method new (line 87) | pub fn new( method start_log (line 122) | pub fn start_log(&mut self) -> Result<()> { method finish_log (line 140) | pub fn finish_log(&mut self) -> Result<()> { method add_event_now (line 156) | pub fn add_event_now( method add_event_now_pretty (line 166) | pub fn add_event_now_pretty( method add_event_with_instant (line 176) | pub fn add_event_with_instant( method add_event_with_instant_pretty (line 184) | pub fn add_event_with_instant_pretty( method event_with_instant (line 190) | fn event_with_instant( method add_event_data_now (line 212) | pub fn add_event_data_now(&mut self, event_data: EventData) -> Result<... method add_event_data_now_pretty (line 218) | pub fn add_event_data_now_pretty( method add_event_data_ex_now (line 226) | pub fn add_event_data_ex_now( method add_event_data_ex_now_pretty (line 236) | pub fn add_event_data_ex_now_pretty( method add_event_data_with_instant (line 246) | pub fn add_event_data_with_instant( method add_event_data_with_instant_pretty (line 254) | pub fn add_event_data_with_instant_pretty( method add_event_data_ex_with_instant (line 266) | pub fn add_event_data_ex_with_instant( method add_event_data_ex_with_instant_pretty (line 275) | pub fn add_event_data_ex_with_instant_pretty( method event_data_ex_with_instant (line 282) | fn event_data_ex_with_instant( method add_event (line 309) | pub fn add_event( method add_event_pretty (line 317) | pub fn add_event_pretty( method write_event (line 324) | fn write_event( method writer (line 350) | pub fn writer(&self) -> &Box { method start_time (line 354) | pub fn start_time(&self) -> std::time::Instant { method drop (line 360) | fn drop(&mut self) { function serialization_states (line 379) | fn serialization_states() { function stream_json_event (line 500) | fn stream_json_event() { function stream_data_ex (line 542) | fn stream_data_ex() { FILE: qlog/src/testing/event_tests.rs function packet_sent_event_no_frames (line 38) | fn packet_sent_event_no_frames() { function packet_sent_event_some_frames (line 79) | fn packet_sent_event_some_frames() { constant MIN_RTT (line 162) | const MIN_RTT: f32 = 10.0; constant SMOOTHED_RTT (line 163) | const SMOOTHED_RTT: f32 = 15.0; constant CONGESTION_WINDOW (line 164) | const CONGESTION_WINDOW: u64 = 12000; constant PACING_RATE (line 165) | const PACING_RATE: u64 = 500000; constant DELIVERY_RATE (line 166) | const DELIVERY_RATE: u64 = 1000000; constant COLLISION_VALUE (line 167) | const COLLISION_VALUE: f32 = 999.0; function packet_header (line 170) | fn packet_header() { function metrics_updated_with_ex_data (line 187) | fn metrics_updated_with_ex_data() { function metrics_updated_ex_data_collision (line 213) | fn metrics_updated_ex_data_collision() { function metrics_updated_round_trip (line 237) | fn metrics_updated_round_trip() { function metrics_updated_no_ex_data (line 271) | fn metrics_updated_no_ex_data() { FILE: qlog/src/testing/mod.rs function make_pkt_hdr (line 36) | pub fn make_pkt_hdr(packet_type: PacketType) -> PacketHeader { function make_trace (line 54) | pub fn make_trace() -> Trace { function make_trace_seq (line 68) | pub fn make_trace_seq() -> TraceSeq { FILE: qlog/src/testing/trace_tests.rs function trace_no_events (line 38) | fn trace_no_events() { function trace_seq_no_events (line 59) | fn trace_seq_no_events() { function trace_single_transport_event (line 79) | fn trace_single_transport_event() { FILE: quiche/examples/client.c type conn_io (line 49) | struct conn_io { function debug_log (line 60) | static void debug_log(const char *line, void *argp) { function flush_egress (line 64) | static void flush_egress(struct ev_loop *loop, struct conn_io *conn_io) { function recv_cb (line 100) | static void recv_cb(EV_P_ ev_io *w, int revents) { function timeout_cb (line 206) | static void timeout_cb(EV_P_ ev_timer *w, int revents) { function main (line 229) | int main(int argc, char *argv[]) { FILE: quiche/examples/client.rs constant MAX_DATAGRAM_SIZE (line 32) | const MAX_DATAGRAM_SIZE: usize = 1350; constant HTTP_REQ_STREAM_ID (line 34) | const HTTP_REQ_STREAM_ID: u64 = 4; function main (line 36) | fn main() { function hex_dump (line 277) | fn hex_dump(buf: &[u8]) -> String { FILE: quiche/examples/http3-client.c type conn_io (line 49) | struct conn_io { function debug_log (line 64) | static void debug_log(const char *line, void *argp) { function flush_egress (line 68) | static void flush_egress(struct ev_loop *loop, struct conn_io *conn_io) { function for_each_setting (line 104) | static int for_each_setting(uint64_t identifier, uint64_t value, function for_each_header (line 112) | static int for_each_header(uint8_t *name, size_t name_len, function recv_cb (line 121) | static void recv_cb(EV_P_ ev_io *w, int revents) { function timeout_cb (line 329) | static void timeout_cb(EV_P_ ev_timer *w, int revents) { function main (line 352) | int main(int argc, char *argv[]) { FILE: quiche/examples/http3-client.rs constant MAX_DATAGRAM_SIZE (line 34) | const MAX_DATAGRAM_SIZE: usize = 1350; function main (line 36) | fn main() { function hex_dump (line 334) | fn hex_dump(buf: &[u8]) -> String { function hdrs_to_strings (line 340) | pub fn hdrs_to_strings(hdrs: &[quiche::h3::Header]) -> Vec<(String, Stri... FILE: quiche/examples/http3-server.c type connections (line 55) | struct connections { type conn_io (line 64) | struct conn_io { type connections (line 84) | struct connections function debug_log (line 88) | static void debug_log(const char *line, void *argp) { function flush_egress (line 92) | static void flush_egress(struct ev_loop *loop, struct conn_io *conn_io) { function mint_token (line 127) | static void mint_token(const uint8_t *dcid, size_t dcid_len, function validate_token (line 137) | static bool validate_token(const uint8_t *token, size_t token_len, type conn_io (line 181) | struct conn_io type sockaddr (line 183) | struct sockaddr type sockaddr_storage (line 185) | struct sockaddr_storage type conn_io (line 188) | struct conn_io type sockaddr (line 204) | struct sockaddr function for_each_header (line 229) | static int for_each_header(uint8_t *name, size_t name_len, function recv_cb (line 238) | static void recv_cb(EV_P_ ev_io *w, int revents) { function timeout_cb (line 496) | static void timeout_cb(EV_P_ ev_timer *w, int revents) { function main (line 524) | int main(int argc, char *argv[]) { FILE: quiche/examples/http3-server.rs constant MAX_DATAGRAM_SIZE (line 38) | const MAX_DATAGRAM_SIZE: usize = 1350; type PartialResponse (line 40) | struct PartialResponse { type Client (line 48) | struct Client { type ClientMap (line 56) | type ClientMap = HashMap, Client>; function main (line 58) | fn main() { function mint_token (line 456) | fn mint_token(hdr: &quiche::Header, src: &net::SocketAddr) -> Vec { function validate_token (line 479) | fn validate_token<'a>( function handle_request (line 505) | fn handle_request( function build_response (line 568) | fn build_response( function handle_writable (line 620) | fn handle_writable(client: &mut Client, stream_id: u64) { function hdrs_to_strings (line 671) | pub fn hdrs_to_strings(hdrs: &[quiche::h3::Header]) -> Vec<(String, Stri... FILE: quiche/examples/qpack-decode.rs function main (line 38) | fn main() { FILE: quiche/examples/qpack-encode.rs function main (line 37) | fn main() { FILE: quiche/examples/server.c type connections (line 55) | struct connections { type conn_io (line 64) | struct conn_io { type connections (line 81) | struct connections function debug_log (line 85) | static void debug_log(const char *line, void *argp) { function flush_egress (line 89) | static void flush_egress(struct ev_loop *loop, struct conn_io *conn_io) { function mint_token (line 125) | static void mint_token(const uint8_t *dcid, size_t dcid_len, function validate_token (line 135) | static bool validate_token(const uint8_t *token, size_t token_len, type conn_io (line 179) | struct conn_io type sockaddr (line 181) | struct sockaddr type sockaddr_storage (line 183) | struct sockaddr_storage type conn_io (line 186) | struct conn_io type sockaddr (line 202) | struct sockaddr function recv_cb (line 227) | static void recv_cb(EV_P_ ev_io *w, int revents) { function timeout_cb (line 423) | static void timeout_cb(EV_P_ ev_timer *w, int revents) { function main (line 451) | int main(int argc, char *argv[]) { FILE: quiche/examples/server.rs constant MAX_DATAGRAM_SIZE (line 36) | const MAX_DATAGRAM_SIZE: usize = 1350; type PartialResponse (line 38) | struct PartialResponse { type Client (line 44) | struct Client { type ClientMap (line 50) | type ClientMap = HashMap, Client>; function main (line 52) | fn main() { function mint_token (line 398) | fn mint_token(hdr: &quiche::Header, src: &net::SocketAddr) -> Vec { function validate_token (line 421) | fn validate_token<'a>( function handle_stream (line 447) | fn handle_stream(client: &mut Client, stream_id: u64, buf: &[u8], root: ... function handle_writable (line 499) | fn handle_writable(client: &mut Client, stream_id: u64) { FILE: quiche/include/quiche.h type quiche_error (line 67) | enum quiche_error { type quiche_config (line 150) | typedef struct quiche_config quiche_config; type quiche_cc_algorithm (line 237) | enum quiche_cc_algorithm { type quiche_cc_algorithm (line 244) | enum quiche_cc_algorithm type quiche_conn (line 294) | typedef struct quiche_conn quiche_conn; type sockaddr (line 299) | struct sockaddr type sockaddr (line 300) | struct sockaddr type sockaddr (line 306) | struct sockaddr type sockaddr (line 307) | struct sockaddr type sockaddr (line 327) | struct sockaddr type sockaddr (line 328) | struct sockaddr type sockaddr (line 335) | struct sockaddr type sockaddr (line 336) | struct sockaddr type quiche_recv_info (line 360) | typedef struct { type quiche_send_info (line 374) | typedef struct { type sockaddr (line 397) | struct sockaddr type sockaddr (line 398) | struct sockaddr type sockaddr (line 403) | struct sockaddr type sockaddr (line 404) | struct sockaddr type quiche_shutdown (line 422) | enum quiche_shutdown { type quiche_shutdown (line 433) | enum quiche_shutdown type quiche_stream_iter (line 457) | typedef struct quiche_stream_iter quiche_stream_iter; type quiche_connection_id_iter (line 487) | typedef struct quiche_connection_id_iter quiche_connection_id_iter; type quiche_stats (line 568) | typedef struct { type quiche_transport_params (line 659) | typedef struct { type quiche_path_stats (line 704) | typedef struct { type sockaddr (line 837) | struct sockaddr type sockaddr (line 838) | struct sockaddr type sockaddr (line 866) | struct sockaddr type sockaddr (line 867) | struct sockaddr type sockaddr (line 870) | struct sockaddr type sockaddr (line 875) | struct sockaddr type sockaddr (line 876) | struct sockaddr type quiche_path_event_type (line 879) | enum quiche_path_event_type { type quiche_path_event (line 888) | typedef struct quiche_path_event quiche_path_event; type quiche_path_event_type (line 894) | enum quiche_path_event_type type sockaddr_storage (line 898) | struct sockaddr_storage type sockaddr_storage (line 898) | struct sockaddr_storage type sockaddr_storage (line 902) | struct sockaddr_storage type sockaddr_storage (line 902) | struct sockaddr_storage type sockaddr_storage (line 906) | struct sockaddr_storage type sockaddr_storage (line 906) | struct sockaddr_storage type sockaddr_storage (line 910) | struct sockaddr_storage type sockaddr_storage (line 910) | struct sockaddr_storage type sockaddr_storage (line 914) | struct sockaddr_storage type sockaddr_storage (line 915) | struct sockaddr_storage type sockaddr_storage (line 916) | struct sockaddr_storage type sockaddr_storage (line 917) | struct sockaddr_storage type sockaddr_storage (line 921) | struct sockaddr_storage type sockaddr_storage (line 922) | struct sockaddr_storage type quiche_socket_addr_iter (line 931) | typedef struct quiche_socket_addr_iter quiche_socket_addr_iter; type sockaddr (line 935) | struct sockaddr type sockaddr_storage (line 939) | struct sockaddr_storage type sockaddr (line 946) | struct sockaddr type sockaddr (line 946) | struct sockaddr type quiche_h3_error (line 967) | enum quiche_h3_error { type quiche_h3_config (line 1106) | typedef struct quiche_h3_config quiche_h3_config; type quiche_h3_conn (line 1127) | typedef struct quiche_h3_conn quiche_h3_conn; type quiche_h3_event_type (line 1133) | enum quiche_h3_event_type { type quiche_h3_event (line 1142) | typedef struct quiche_h3_event quiche_h3_event; type quiche_h3_event_type (line 1149) | enum quiche_h3_event_type type quiche_h3_header (line 1182) | typedef struct { type quiche_h3_priority (line 1191) | typedef struct { type quiche_h3_stats (line 1259) | typedef struct { FILE: quiche/src/buffers.rs type BufFactory (line 35) | pub trait BufFactory: Clone + Default + Debug { method buf_from_slice (line 42) | fn buf_from_slice(buf: &[u8]) -> Self::Buf; type Buf (line 69) | type Buf = DefaultBuf; method buf_from_slice (line 71) | fn buf_from_slice(buf: &[u8]) -> Self::Buf { type BufSplit (line 48) | pub trait BufSplit { method split_at (line 52) | fn split_at(&mut self, at: usize) -> Self; method try_add_prefix (line 55) | fn try_add_prefix(&mut self, _prefix: &[u8]) -> bool { type DefaultBufFactory (line 62) | pub struct DefaultBufFactory; type DefaultBuf (line 66) | pub struct DefaultBuf(Arc>); method as_ref (line 77) | fn as_ref(&self) -> &[u8] { FILE: quiche/src/build.rs constant CMAKE_PARAMS_ANDROID_NDK (line 4) | const CMAKE_PARAMS_ANDROID_NDK: &[(&str, &[(&str, &str)])] = &[ constant CMAKE_PARAMS_IOS (line 12) | const CMAKE_PARAMS_IOS: &[(&str, &[(&str, &str)])] = &[ constant CMAKE_PARAMS_ARM_LINUX (line 24) | const CMAKE_PARAMS_ARM_LINUX: &[(&str, &[(&str, &str)])] = &[ function get_boringssl_platform_output_path (line 34) | fn get_boringssl_platform_output_path() -> String { function get_boringssl_cmake_config (line 70) | fn get_boringssl_cmake_config() -> cmake::Config { function write_pkg_config (line 173) | fn write_pkg_config() { function target_dir_path (line 205) | fn target_dir_path() -> std::path::PathBuf { function main (line 218) | fn main() { FILE: quiche/src/cid.rs constant RETIRED_CONN_ID_LIMIT_MULTIPLIER (line 43) | const RETIRED_CONN_ID_LIMIT_MULTIPLIER: u64 = 3; type BoundedConnectionIdSeqSet (line 46) | struct BoundedConnectionIdSeqSet { method new (line 56) | fn new(capacity: usize) -> Self { method insert (line 63) | fn insert(&mut self, e: u64) -> Result { method remove (line 71) | fn remove(&mut self, e: &u64) -> bool { method is_empty (line 75) | fn is_empty(&self) -> bool { type ConnectionIdEntry (line 82) | pub struct ConnectionIdEntry { type BoundedNonEmptyConnectionIdVecDeque (line 97) | struct BoundedNonEmptyConnectionIdVecDeque { method new (line 108) | fn new(capacity: usize, initial_entry: ConnectionIdEntry) -> Self { method resize (line 117) | fn resize(&mut self, new_capacity: usize) { method get_oldest (line 124) | fn get_oldest(&self) -> &ConnectionIdEntry { method get (line 129) | fn get(&self, seq: u64) -> Option<&ConnectionIdEntry> { method get_mut (line 135) | fn get_mut(&mut self, seq: u64) -> Option<&mut ConnectionIdEntry> { method iter (line 141) | fn iter(&self) -> impl Iterator { method len (line 146) | fn len(&self) -> usize { method insert (line 160) | fn insert(&mut self, e: ConnectionIdEntry) -> Result<()> { method clear_and_insert (line 175) | fn clear_and_insert(&mut self, e: ConnectionIdEntry) { method remove (line 189) | fn remove(&mut self, seq: u64) -> Result> { type ConnectionIdentifiers (line 203) | pub struct ConnectionIdentifiers { method new (line 246) | pub fn new( method set_source_conn_id_limit (line 304) | pub fn set_source_conn_id_limit(&mut self, v: u64) { method get_dcid (line 320) | pub fn get_dcid(&self, seq_num: u64) -> Result<&ConnectionIdEntry> { method get_scid (line 327) | pub fn get_scid(&self, seq_num: u64) -> Result<&ConnectionIdEntry> { method new_scid (line 359) | pub fn new_scid( method set_initial_dcid (line 408) | pub fn set_initial_dcid( method new_dcid (line 431) | pub fn new_dcid( method retire_scid (line 550) | pub fn retire_scid( method retire_dcid (line 590) | pub fn retire_dcid(&mut self, seq: u64) -> Result> { method scids_iter (line 603) | pub fn scids_iter(&self) -> impl Iterator> { method link_scid_to_path_id (line 609) | pub fn link_scid_to_path_id( method link_dcid_to_path_id (line 619) | pub fn link_dcid_to_path_id( method lowest_usable_scid_seq (line 630) | pub fn lowest_usable_scid_seq(&self) -> Result { method lowest_available_dcid_seq (line 647) | pub fn lowest_available_dcid_seq(&self) -> Option { method find_scid_seq (line 663) | pub fn find_scid_seq( method available_scids (line 681) | pub fn available_scids(&self) -> usize { method available_dcids (line 691) | pub fn available_dcids(&self) -> usize { method oldest_scid (line 700) | pub fn oldest_scid(&self) -> &ConnectionIdEntry { method oldest_dcid (line 711) | pub fn oldest_dcid(&self) -> &ConnectionIdEntry { method mark_advertise_new_scid_seq (line 719) | pub fn mark_advertise_new_scid_seq( method mark_retire_dcid_seq (line 737) | pub fn mark_retire_dcid_seq( method next_advertise_new_scid_seq (line 755) | pub fn next_advertise_new_scid_seq(&self) -> Option { method retire_dcid_seqs (line 766) | pub fn retire_dcid_seqs(&self) -> HashSet { method has_new_scids (line 772) | pub fn has_new_scids(&self) -> bool { method has_retire_dcids (line 779) | pub fn has_retire_dcids(&self) -> bool { method zero_length_scid (line 785) | pub fn zero_length_scid(&self) -> bool { method zero_length_dcid (line 791) | pub fn zero_length_dcid(&self) -> bool { method get_new_connection_id_frame_for (line 797) | pub fn get_new_connection_id_frame_for( method active_source_cids (line 812) | pub fn active_source_cids(&self) -> usize { method retired_source_cids (line 819) | pub fn retired_source_cids(&self) -> usize { method pop_retired_scid (line 823) | pub fn pop_retired_scid(&mut self) -> Option> { function ids_new_scids (line 834) | fn ids_new_scids() { function new_dcid_event (line 893) | fn new_dcid_event() { function new_dcid_reordered (line 966) | fn new_dcid_reordered() { function new_dcid_partial_retire_prior_to (line 1003) | fn new_dcid_partial_retire_prior_to() { function retire_scids (line 1045) | fn retire_scids() { FILE: quiche/src/crypto/boringssl.rs type EVP_AEAD_CTX (line 15) | struct EVP_AEAD_CTX { type AES_KEY (line 24) | pub(crate) struct AES_KEY { method get_evp_aead (line 30) | fn get_evp_aead(self) -> *const EVP_AEAD { type PacketKey (line 41) | pub(crate) struct PacketKey { method new (line 50) | pub fn new( method from_secret (line 60) | pub fn from_secret(aead: Algorithm, secret: &[u8], enc: u32) -> Result... method open_with_u64_counter (line 83) | pub fn open_with_u64_counter( method seal_with_u64_counter (line 119) | pub fn seal_with_u64_counter( type HeaderProtectionKey (line 168) | pub(crate) enum HeaderProtectionKey { method new (line 175) | pub fn new(alg: Algorithm, hp_key: Vec) -> Result { method new_mask (line 200) | pub fn new_mask(&self, sample: &[u8]) -> Result { function make_aead_ctx (line 251) | fn make_aead_ctx(alg: Algorithm, key: &[u8]) -> Result { function hkdf_extract (line 276) | pub(crate) fn hkdf_extract( function hkdf_expand (line 300) | pub(crate) fn hkdf_expand( function EVP_aead_aes_128_gcm_tls13 (line 323) | fn EVP_aead_aes_128_gcm_tls13() -> *const EVP_AEAD; function EVP_aead_aes_256_gcm_tls13 (line 325) | fn EVP_aead_aes_256_gcm_tls13() -> *const EVP_AEAD; function EVP_aead_chacha20_poly1305 (line 327) | fn EVP_aead_chacha20_poly1305() -> *const EVP_AEAD; function HKDF_extract (line 330) | fn HKDF_extract( function HKDF_expand (line 335) | fn HKDF_expand( function EVP_AEAD_CTX_init (line 341) | fn EVP_AEAD_CTX_init( function EVP_AEAD_CTX_open (line 346) | fn EVP_AEAD_CTX_open( function EVP_AEAD_CTX_seal_scatter (line 352) | fn EVP_AEAD_CTX_seal_scatter( function AES_set_encrypt_key (line 360) | fn AES_set_encrypt_key( function AES_ecb_encrypt (line 364) | fn AES_ecb_encrypt( function CRYPTO_chacha_20 (line 369) | fn CRYPTO_chacha_20( FILE: quiche/src/crypto/mod.rs constant MAX_NONCE_LEN (line 36) | pub const MAX_NONCE_LEN: usize = 12; constant HP_MASK_LEN (line 39) | pub const HP_MASK_LEN: usize = 5; type Level (line 43) | pub enum Level { method from_epoch (line 51) | pub fn from_epoch(e: packet::Epoch) -> Level { type Algorithm (line 63) | pub enum Algorithm { method get_evp_digest (line 77) | fn get_evp_digest(self) -> *const EVP_MD { method key_len (line 85) | pub const fn key_len(self) -> usize { method tag_len (line 93) | pub const fn tag_len(self) -> usize { method nonce_len (line 105) | pub const fn nonce_len(self) -> usize { type EVP_AEAD (line 116) | pub struct EVP_AEAD { type EVP_MD (line 122) | struct EVP_MD { type HeaderProtectionMask (line 126) | type HeaderProtectionMask = [u8; HP_MASK_LEN]; type Open (line 128) | pub struct Open { constant DECRYPT (line 142) | pub const DECRYPT: u32 = 0; method new (line 144) | pub fn new( method from_secret (line 159) | pub fn from_secret(aead: Algorithm, secret: &[u8]) -> Result { method new_mask (line 171) | pub fn new_mask(&self, sample: &[u8]) -> Result<[u8; 5]> { method alg (line 179) | pub fn alg(&self) -> Algorithm { method derive_next_packet_key (line 183) | pub fn derive_next_packet_key(&self) -> Result { method open_with_u64_counter (line 200) | pub fn open_with_u64_counter( type Seal (line 219) | pub struct Seal { constant ENCRYPT (line 233) | pub const ENCRYPT: u32 = 1; method new (line 235) | pub fn new( method from_secret (line 250) | pub fn from_secret(aead: Algorithm, secret: &[u8]) -> Result { method new_mask (line 262) | pub fn new_mask(&self, sample: &[u8]) -> Result<[u8; 5]> { method alg (line 270) | pub fn alg(&self) -> Algorithm { method derive_next_packet_key (line 274) | pub fn derive_next_packet_key(&self) -> Result { method seal_with_u64_counter (line 291) | pub fn seal_with_u64_counter( method from_secret (line 318) | pub fn from_secret(aead: Algorithm, secret: &[u8]) -> Result { function derive_initial_key_material (line 329) | pub fn derive_initial_key_material( function derive_initial_secret (line 400) | fn derive_initial_secret( function derive_client_initial_secret (line 417) | fn derive_client_initial_secret( function derive_server_initial_secret (line 424) | fn derive_server_initial_secret( function derive_next_secret (line 431) | fn derive_next_secret(aead: Algorithm, secret: &[u8]) -> Result> { function derive_hdr_key (line 441) | pub fn derive_hdr_key( function derive_pkt_key (line 455) | pub fn derive_pkt_key(aead: Algorithm, prk: &[u8], out: &mut [u8]) -> Re... function derive_pkt_iv (line 467) | pub fn derive_pkt_iv(aead: Algorithm, prk: &[u8], out: &mut [u8]) -> Res... function hkdf_expand_label (line 479) | fn hkdf_expand_label( function make_nonce (line 495) | fn make_nonce(iv: &[u8], counter: u64) -> [u8; MAX_NONCE_LEN] { function verify_slices_are_equal (line 508) | pub fn verify_slices_are_equal(a: &[u8], b: &[u8]) -> Result<()> { function EVP_sha256 (line 523) | fn EVP_sha256() -> *const EVP_MD; function EVP_sha384 (line 525) | fn EVP_sha384() -> *const EVP_MD; function CRYPTO_memcmp (line 528) | fn CRYPTO_memcmp(a: *const u8, b: *const u8, len: usize) -> c_int; function derive_initial_secrets_v1 (line 536) | fn derive_initial_secrets_v1() { function derive_chacha20_secrets (line 624) | fn derive_chacha20_secrets() { FILE: quiche/src/crypto/openssl_quictls.rs type EVP_CIPHER_CTX (line 8) | struct EVP_CIPHER_CTX { type EVP_PKEY_CTX (line 14) | struct EVP_PKEY_CTX { type OSSL_PARAM (line 20) | struct OSSL_PARAM { method get_evp (line 25) | pub fn get_evp(self) -> *const EVP_AEAD { method get_evp_aead (line 33) | pub fn get_evp_aead(self) -> *const EVP_AEAD { type PacketKey (line 42) | pub(crate) struct PacketKey { method new (line 56) | pub fn new( method from_secret (line 67) | pub fn from_secret(aead: Algorithm, secret: &[u8], enc: u32) -> Result... method open_with_u64_counter (line 80) | pub fn open_with_u64_counter( method seal_with_u64_counter (line 189) | pub fn seal_with_u64_counter( method drop (line 297) | fn drop(&mut self) { type HeaderProtectionKey (line 305) | pub(crate) struct HeaderProtectionKey { method new (line 312) | pub fn new(alg: Algorithm, hp_key: Vec) -> Result { method new_mask (line 319) | pub fn new_mask(&self, sample: &[u8]) -> Result { method clone (line 373) | fn clone(&self) -> Self { method drop (line 384) | fn drop(&mut self) { function make_evp_cipher_ctx_basic (line 392) | fn make_evp_cipher_ctx_basic( function hkdf_extract (line 427) | pub(crate) fn hkdf_extract( function hkdf_expand (line 459) | pub(crate) fn hkdf_expand( function EVP_aes_128_ctr (line 493) | fn EVP_aes_128_ctr() -> *const EVP_AEAD; function EVP_aes_128_gcm (line 494) | fn EVP_aes_128_gcm() -> *const EVP_AEAD; function EVP_aes_256_ctr (line 496) | fn EVP_aes_256_ctr() -> *const EVP_AEAD; function EVP_aes_256_gcm (line 497) | fn EVP_aes_256_gcm() -> *const EVP_AEAD; function EVP_chacha20 (line 499) | fn EVP_chacha20() -> *const EVP_AEAD; function EVP_chacha20_poly1305 (line 500) | fn EVP_chacha20_poly1305() -> *const EVP_AEAD; function EVP_CIPHER_CTX_new (line 503) | fn EVP_CIPHER_CTX_new() -> *mut EVP_CIPHER_CTX; function EVP_CIPHER_CTX_dup (line 505) | fn EVP_CIPHER_CTX_dup(ctx: *const EVP_CIPHER_CTX) -> *mut EVP_CIPHER_CTX; function EVP_CIPHER_CTX_free (line 507) | fn EVP_CIPHER_CTX_free(ctx: *mut EVP_CIPHER_CTX); function EVP_CipherInit_ex2 (line 509) | fn EVP_CipherInit_ex2( function EVP_CIPHER_CTX_ctrl (line 514) | fn EVP_CIPHER_CTX_ctrl( function EVP_CipherUpdate (line 518) | fn EVP_CipherUpdate( function EVP_CipherFinal_ex (line 523) | fn EVP_CipherFinal_ex( function EVP_PKEY_CTX_new_id (line 528) | fn EVP_PKEY_CTX_new_id(id: c_int, e: *mut c_void) -> *mut EVP_PKEY_CTX; function EVP_PKEY_CTX_set_hkdf_mode (line 530) | fn EVP_PKEY_CTX_set_hkdf_mode(ctx: *mut EVP_PKEY_CTX, mode: c_int) -> c_... function EVP_PKEY_CTX_set_hkdf_md (line 531) | fn EVP_PKEY_CTX_set_hkdf_md( function EVP_PKEY_CTX_set1_hkdf_salt (line 534) | fn EVP_PKEY_CTX_set1_hkdf_salt( function EVP_PKEY_CTX_set1_hkdf_key (line 537) | fn EVP_PKEY_CTX_set1_hkdf_key( function EVP_PKEY_CTX_add1_hkdf_info (line 540) | fn EVP_PKEY_CTX_add1_hkdf_info( function EVP_PKEY_derive_init (line 544) | fn EVP_PKEY_derive_init(ctx: *mut EVP_PKEY_CTX) -> c_int; function EVP_PKEY_derive (line 546) | fn EVP_PKEY_derive( function EVP_PKEY_CTX_free (line 550) | fn EVP_PKEY_CTX_free(ctx: *mut EVP_PKEY_CTX); FILE: quiche/src/dgram.rs type DatagramQueue (line 34) | pub struct DatagramQueue { method new (line 41) | pub fn new(queue_max_len: usize) -> Self { method push (line 49) | pub fn push(&mut self, data: Vec) -> Result<()> { method peek_front_len (line 62) | pub fn peek_front_len(&self) -> Option { method peek_front_bytes (line 66) | pub fn peek_front_bytes(&self, buf: &mut [u8], len: usize) -> Result Option> { method has_pending (line 91) | pub fn has_pending(&self) -> bool { method purge (line 95) | pub fn purge bool>(&mut self, f: F) { method is_full (line 102) | pub fn is_full(&self) -> bool { method is_empty (line 106) | pub fn is_empty(&self) -> bool { method len (line 110) | pub fn len(&self) -> usize { method byte_size (line 114) | pub fn byte_size(&self) -> usize { FILE: quiche/src/error.rs type Result (line 33) | pub type Result = std::result::Result; type Error (line 37) | pub enum Error { method to_wire (line 185) | pub(crate) fn to_wire(self) -> u64 { method to_c (line 205) | pub(crate) fn to_c(self) -> libc::ssize_t { method fmt (line 235) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { method source (line 241) | fn source(&self) -> Option<&(dyn std::error::Error + 'static)> { method from (line 247) | fn from(_err: octets::BufferTooShortError) -> Self { type WireErrorCode (line 124) | pub enum WireErrorCode { type ConnectionError (line 254) | pub struct ConnectionError { FILE: quiche/src/ffi.rs function quiche_version (line 103) | pub extern "C" fn quiche_version() -> *const u8 { type Logger (line 108) | struct Logger { method enabled (line 114) | fn enabled(&self, _metadata: &log::Metadata) -> bool { method log (line 118) | fn log(&self, record: &log::Record) { method flush (line 123) | fn flush(&self) {} function quiche_enable_debug_logging (line 127) | pub extern "C" fn quiche_enable_debug_logging( function quiche_config_new (line 143) | pub extern "C" fn quiche_config_new(version: u32) -> *mut Config { function quiche_config_load_cert_chain_from_pem_file (line 152) | pub extern "C" fn quiche_config_load_cert_chain_from_pem_file( function quiche_config_load_priv_key_from_pem_file (line 165) | pub extern "C" fn quiche_config_load_priv_key_from_pem_file( function quiche_config_load_verify_locations_from_file (line 178) | pub extern "C" fn quiche_config_load_verify_locations_from_file( function quiche_config_load_verify_locations_from_directory (line 191) | pub extern "C" fn quiche_config_load_verify_locations_from_directory( function quiche_config_verify_peer (line 204) | pub extern "C" fn quiche_config_verify_peer(config: &mut Config, v: bool) { function quiche_config_grease (line 209) | pub extern "C" fn quiche_config_grease(config: &mut Config, v: bool) { function quiche_config_discover_pmtu (line 214) | pub extern "C" fn quiche_config_discover_pmtu(config: &mut Config, v: bo... function quiche_config_set_pmtud_max_probes (line 219) | pub extern "C" fn quiche_config_set_pmtud_max_probes( function quiche_config_log_keys (line 226) | pub extern "C" fn quiche_config_log_keys(config: &mut Config) { function quiche_config_enable_early_data (line 231) | pub extern "C" fn quiche_config_enable_early_data(config: &mut Config) { function quiche_config_set_application_protos (line 238) | pub extern "C" fn quiche_config_set_application_protos( function quiche_config_set_max_amplification_factor (line 251) | pub extern "C" fn quiche_config_set_max_amplification_factor( function quiche_config_set_max_idle_timeout (line 258) | pub extern "C" fn quiche_config_set_max_idle_timeout( function quiche_config_set_max_recv_udp_payload_size (line 265) | pub extern "C" fn quiche_config_set_max_recv_udp_payload_size( function quiche_config_set_initial_max_data (line 272) | pub extern "C" fn quiche_config_set_initial_max_data( function quiche_config_set_initial_max_stream_data_bidi_local (line 279) | pub extern "C" fn quiche_config_set_initial_max_stream_data_bidi_local( function quiche_config_set_initial_max_stream_data_bidi_remote (line 286) | pub extern "C" fn quiche_config_set_initial_max_stream_data_bidi_remote( function quiche_config_set_initial_max_stream_data_uni (line 293) | pub extern "C" fn quiche_config_set_initial_max_stream_data_uni( function quiche_config_set_initial_max_streams_bidi (line 300) | pub extern "C" fn quiche_config_set_initial_max_streams_bidi( function quiche_config_set_initial_max_streams_uni (line 307) | pub extern "C" fn quiche_config_set_initial_max_streams_uni( function quiche_config_set_ack_delay_exponent (line 314) | pub extern "C" fn quiche_config_set_ack_delay_exponent( function quiche_config_set_max_ack_delay (line 321) | pub extern "C" fn quiche_config_set_max_ack_delay(config: &mut Config, v... function quiche_config_set_disable_active_migration (line 326) | pub extern "C" fn quiche_config_set_disable_active_migration( function quiche_config_set_cc_algorithm_name (line 333) | pub extern "C" fn quiche_config_set_cc_algorithm_name( function quiche_config_set_cc_algorithm (line 345) | pub extern "C" fn quiche_config_set_cc_algorithm( function quiche_config_set_initial_congestion_window_packets (line 352) | pub extern "C" fn quiche_config_set_initial_congestion_window_packets( function quiche_config_enable_hystart (line 359) | pub extern "C" fn quiche_config_enable_hystart(config: &mut Config, v: b... function quiche_config_enable_pacing (line 364) | pub extern "C" fn quiche_config_enable_pacing(config: &mut Config, v: bo... function quiche_config_set_enable_cubic_idle_restart_fix (line 369) | pub extern "C" fn quiche_config_set_enable_cubic_idle_restart_fix( function quiche_config_set_max_pacing_rate (line 376) | pub extern "C" fn quiche_config_set_max_pacing_rate(config: &mut Config,... function quiche_config_enable_dgram (line 381) | pub extern "C" fn quiche_config_enable_dgram( function quiche_config_set_max_send_udp_payload_size (line 389) | pub extern "C" fn quiche_config_set_max_send_udp_payload_size( function quiche_config_set_max_connection_window (line 396) | pub extern "C" fn quiche_config_set_max_connection_window( function quiche_config_set_max_stream_window (line 403) | pub extern "C" fn quiche_config_set_max_stream_window( function quiche_config_set_active_connection_id_limit (line 410) | pub extern "C" fn quiche_config_set_active_connection_id_limit( function quiche_config_set_stateless_reset_token (line 417) | pub extern "C" fn quiche_config_set_stateless_reset_token( function quiche_config_set_disable_dcid_reuse (line 430) | pub extern "C" fn quiche_config_set_disable_dcid_reuse( function quiche_config_set_ticket_key (line 437) | pub extern "C" fn quiche_config_set_ticket_key( function quiche_config_free (line 450) | pub extern "C" fn quiche_config_free(config: *mut Config) { function quiche_header_info (line 455) | pub extern "C" fn quiche_header_info( function quiche_accept (line 520) | pub extern "C" fn quiche_accept( function quiche_connect (line 547) | pub extern "C" fn quiche_connect( function quiche_negotiate_version (line 572) | pub extern "C" fn quiche_negotiate_version( function quiche_version_is_supported (line 592) | pub extern "C" fn quiche_version_is_supported(version: u32) -> bool { function quiche_retry (line 597) | pub extern "C" fn quiche_retry( function quiche_conn_new_with_tls_and_client_dcid (line 623) | pub extern "C" fn quiche_conn_new_with_tls_and_client_dcid( function quiche_conn_new_with_tls_and_client_dcid (line 665) | pub extern "C" fn quiche_conn_new_with_tls_and_client_dcid( function quiche_conn_new_with_tls (line 676) | pub extern "C" fn quiche_conn_new_with_tls( function quiche_conn_set_keylog_path (line 712) | pub extern "C" fn quiche_conn_set_keylog_path( function quiche_conn_set_keylog_fd (line 735) | pub extern "C" fn quiche_conn_set_keylog_fd(conn: &mut Connection, fd: c... function quiche_conn_set_qlog_path (line 744) | pub extern "C" fn quiche_conn_set_qlog_path( function quiche_conn_set_qlog_fd (line 775) | pub extern "C" fn quiche_conn_set_qlog_fd( function quiche_conn_set_session (line 793) | pub extern "C" fn quiche_conn_set_session( function quiche_conn_set_max_idle_timeout (line 806) | pub extern "C" fn quiche_conn_set_max_idle_timeout( type RecvInfo (line 817) | pub struct RecvInfo<'a> { function from (line 825) | fn from(info: &RecvInfo) -> crate::RecvInfo { function quiche_conn_recv (line 834) | pub extern "C" fn quiche_conn_recv( type SendInfo (line 851) | pub struct SendInfo { function quiche_conn_send (line 861) | pub extern "C" fn quiche_conn_send( function quiche_conn_send_on_path (line 885) | pub extern "C" fn quiche_conn_send_on_path( function quiche_conn_stream_recv (line 913) | pub extern "C" fn quiche_conn_stream_recv( function quiche_conn_stream_send (line 942) | pub extern "C" fn quiche_conn_stream_send( function quiche_conn_stream_priority (line 972) | pub extern "C" fn quiche_conn_stream_priority( function quiche_conn_stream_shutdown (line 983) | pub extern "C" fn quiche_conn_stream_shutdown( function quiche_conn_stream_capacity (line 994) | pub extern "C" fn quiche_conn_stream_capacity( function quiche_conn_stream_readable (line 1005) | pub extern "C" fn quiche_conn_stream_readable( function quiche_conn_stream_readable_next (line 1012) | pub extern "C" fn quiche_conn_stream_readable_next(conn: &mut Connection... function quiche_conn_stream_writable (line 1017) | pub extern "C" fn quiche_conn_stream_writable( function quiche_conn_stream_writable_next (line 1030) | pub extern "C" fn quiche_conn_stream_writable_next(conn: &mut Connection... function quiche_conn_stream_finished (line 1035) | pub extern "C" fn quiche_conn_stream_finished( function quiche_conn_readable (line 1042) | pub extern "C" fn quiche_conn_readable(conn: &Connection) -> *mut Stream... function quiche_conn_writable (line 1047) | pub extern "C" fn quiche_conn_writable(conn: &Connection) -> *mut Stream... function quiche_conn_max_send_udp_payload_size (line 1052) | pub extern "C" fn quiche_conn_max_send_udp_payload_size( function quiche_conn_is_readable (line 1059) | pub extern "C" fn quiche_conn_is_readable(conn: &Connection) -> bool { function quiche_conn_close (line 1064) | pub extern "C" fn quiche_conn_close( function quiche_conn_timeout_as_nanos (line 1083) | pub extern "C" fn quiche_conn_timeout_as_nanos(conn: &Connection) -> u64 { function quiche_conn_timeout_as_millis (line 1092) | pub extern "C" fn quiche_conn_timeout_as_millis(conn: &Connection) -> u64 { function quiche_conn_on_timeout (line 1101) | pub extern "C" fn quiche_conn_on_timeout(conn: &mut Connection) { function quiche_conn_trace_id (line 1106) | pub extern "C" fn quiche_conn_trace_id( type ConnectionIdIter (line 1117) | pub struct ConnectionIdIter<'a> { type Item (line 1123) | type Item = ConnectionId<'a>; method next (line 1126) | fn next(&mut self) -> Option { function quiche_conn_source_ids (line 1134) | pub extern "C" fn quiche_conn_source_ids( function quiche_connection_id_iter_next (line 1145) | pub extern "C" fn quiche_connection_id_iter_next( function quiche_connection_id_iter_free (line 1159) | pub extern "C" fn quiche_connection_id_iter_free(iter: *mut ConnectionId... function quiche_conn_source_id (line 1164) | pub extern "C" fn quiche_conn_source_id( function quiche_conn_destination_id (line 1174) | pub extern "C" fn quiche_conn_destination_id( function quiche_conn_application_proto (line 1185) | pub extern "C" fn quiche_conn_application_proto( function quiche_conn_peer_cert (line 1195) | pub extern "C" fn quiche_conn_peer_cert( function quiche_conn_session (line 1209) | pub extern "C" fn quiche_conn_session( function quiche_conn_server_name (line 1223) | pub extern "C" fn quiche_conn_server_name( function quiche_conn_is_established (line 1237) | pub extern "C" fn quiche_conn_is_established(conn: &Connection) -> bool { function quiche_conn_is_resumed (line 1242) | pub extern "C" fn quiche_conn_is_resumed(conn: &Connection) -> bool { function quiche_conn_is_in_early_data (line 1247) | pub extern "C" fn quiche_conn_is_in_early_data(conn: &Connection) -> bool { function quiche_conn_is_draining (line 1252) | pub extern "C" fn quiche_conn_is_draining(conn: &Connection) -> bool { function quiche_conn_is_closed (line 1257) | pub extern "C" fn quiche_conn_is_closed(conn: &Connection) -> bool { function quiche_conn_is_timed_out (line 1262) | pub extern "C" fn quiche_conn_is_timed_out(conn: &Connection) -> bool { function quiche_conn_peer_error (line 1267) | pub extern "C" fn quiche_conn_peer_error( function quiche_conn_local_error (line 1286) | pub extern "C" fn quiche_conn_local_error( function quiche_stream_iter_next (line 1305) | pub extern "C" fn quiche_stream_iter_next( function quiche_stream_iter_free (line 1317) | pub extern "C" fn quiche_stream_iter_free(iter: *mut StreamIter) { type Stats (line 1322) | pub struct Stats { type TransportParams (line 1351) | pub struct TransportParams { function quiche_conn_stats (line 1368) | pub extern "C" fn quiche_conn_stats(conn: &Connection, out: &mut Stats) { function quiche_conn_peer_transport_params (line 1402) | pub extern "C" fn quiche_conn_peer_transport_params( type PathStats (line 1434) | pub struct PathStats { function quiche_conn_path_stats (line 1464) | pub extern "C" fn quiche_conn_path_stats( function quiche_conn_is_server (line 1501) | pub extern "C" fn quiche_conn_is_server(conn: &Connection) -> bool { function quiche_conn_dgram_max_writable_len (line 1506) | pub extern "C" fn quiche_conn_dgram_max_writable_len( function quiche_conn_dgram_recv_front_len (line 1517) | pub extern "C" fn quiche_conn_dgram_recv_front_len(conn: &Connection) ->... function quiche_conn_dgram_recv_queue_len (line 1526) | pub extern "C" fn quiche_conn_dgram_recv_queue_len(conn: &Connection) ->... function quiche_conn_dgram_recv_queue_byte_size (line 1531) | pub extern "C" fn quiche_conn_dgram_recv_queue_byte_size( function quiche_conn_dgram_send_queue_len (line 1538) | pub extern "C" fn quiche_conn_dgram_send_queue_len(conn: &Connection) ->... function quiche_conn_dgram_send_queue_byte_size (line 1543) | pub extern "C" fn quiche_conn_dgram_send_queue_byte_size( function quiche_conn_dgram_send (line 1550) | pub extern "C" fn quiche_conn_dgram_send( function quiche_conn_dgram_recv (line 1567) | pub extern "C" fn quiche_conn_dgram_recv( function quiche_conn_dgram_purge_outgoing (line 1586) | pub extern "C" fn quiche_conn_dgram_purge_outgoing( function quiche_conn_is_dgram_send_queue_full (line 1598) | pub extern "C" fn quiche_conn_is_dgram_send_queue_full( function quiche_conn_is_dgram_recv_queue_full (line 1605) | pub extern "C" fn quiche_conn_is_dgram_recv_queue_full( function quiche_conn_send_ack_eliciting (line 1612) | pub extern "C" fn quiche_conn_send_ack_eliciting( function quiche_conn_send_ack_eliciting_on_path (line 1622) | pub extern "C" fn quiche_conn_send_ack_eliciting_on_path( function quiche_conn_free (line 1635) | pub extern "C" fn quiche_conn_free(conn: *mut Connection) { function quiche_conn_peer_streams_left_bidi (line 1640) | pub extern "C" fn quiche_conn_peer_streams_left_bidi(conn: &Connection) ... function quiche_conn_peer_streams_left_uni (line 1645) | pub extern "C" fn quiche_conn_peer_streams_left_uni(conn: &Connection) -... function quiche_conn_send_quantum (line 1650) | pub extern "C" fn quiche_conn_send_quantum(conn: &Connection) -> size_t { function quiche_conn_active_scids (line 1655) | pub extern "C" fn quiche_conn_active_scids(conn: &Connection) -> size_t { function quiche_conn_scids_left (line 1660) | pub extern "C" fn quiche_conn_scids_left(conn: &Connection) -> size_t { function quiche_conn_new_scid (line 1665) | pub extern "C" fn quiche_conn_new_scid( function quiche_conn_retire_dcid (line 1689) | pub extern "C" fn quiche_conn_retire_dcid( function quiche_conn_available_dcids (line 1699) | pub extern "C" fn quiche_conn_available_dcids(conn: &Connection) -> size... function quiche_conn_retired_scids (line 1704) | pub extern "C" fn quiche_conn_retired_scids(conn: &Connection) -> size_t { function quiche_conn_retired_scid_next (line 1709) | pub extern "C" fn quiche_conn_retired_scid_next( function quiche_conn_send_quantum_on_path (line 1725) | pub extern "C" fn quiche_conn_send_quantum_on_path( function quiche_conn_paths_iter (line 1736) | pub extern "C" fn quiche_conn_paths_iter( function quiche_socket_addr_iter_next (line 1745) | pub extern "C" fn quiche_socket_addr_iter_next( function quiche_socket_addr_iter_free (line 1758) | pub extern "C" fn quiche_socket_addr_iter_free(iter: *mut SocketAddrIter) { function quiche_conn_is_path_validated (line 1763) | pub extern "C" fn quiche_conn_is_path_validated( function quiche_conn_probe_path (line 1776) | pub extern "C" fn quiche_conn_probe_path( function quiche_conn_migrate_source (line 1792) | pub extern "C" fn quiche_conn_migrate_source( function quiche_conn_migrate (line 1806) | pub extern "C" fn quiche_conn_migrate( function quiche_conn_path_event_next (line 1822) | pub extern "C" fn quiche_conn_path_event_next( function quiche_path_event_type (line 1832) | pub extern "C" fn quiche_path_event_type(ev: &PathEvent) -> u32 { function quiche_path_event_new (line 1849) | pub extern "C" fn quiche_path_event_new( function quiche_path_event_validated (line 1865) | pub extern "C" fn quiche_path_event_validated( function quiche_path_event_failed_validation (line 1881) | pub extern "C" fn quiche_path_event_failed_validation( function quiche_path_event_closed (line 1897) | pub extern "C" fn quiche_path_event_closed( function quiche_path_event_reused_source_connection_id (line 1913) | pub extern "C" fn quiche_path_event_reused_source_connection_id( function quiche_path_event_peer_migrated (line 1935) | pub extern "C" fn quiche_path_event_peer_migrated( function quiche_path_event_free (line 1951) | pub extern "C" fn quiche_path_event_free(ev: *mut PathEvent) { function quiche_put_varint (line 1956) | pub extern "C" fn quiche_put_varint( function quiche_get_varint (line 1973) | pub extern "C" fn quiche_get_varint( function optional_std_addr_from_c (line 1991) | fn optional_std_addr_from_c( function std_addr_from_c (line 2004) | fn std_addr_from_c(addr: &sockaddr, addr_len: socklen_t) -> SocketAddr { function std_addr_to_c (line 2063) | fn std_addr_to_c(addr: &SocketAddr, out: &mut sockaddr_storage) -> sockl... function std_time_to_c (line 2153) | fn std_time_to_c(time: &Instant, out: &mut timespec) { function std_time_to_c (line 2164) | fn std_time_to_c(_time: &Instant, out: &mut timespec) { function addr_v4 (line 2179) | fn addr_v4() { function addr_v6 (line 2220) | fn addr_v6() { function inet_ntop (line 2270) | fn inet_ntop( FILE: quiche/src/flowcontrol.rs constant WINDOW_INCREASE_FACTOR (line 32) | const WINDOW_INCREASE_FACTOR: u64 = 2; constant WINDOW_TRIGGER_FACTOR (line 36) | const WINDOW_TRIGGER_FACTOR: u32 = 2; type FlowControl (line 39) | pub struct FlowControl { method new (line 58) | pub fn new(max_data: u64, window: u64, max_window: u64) -> Self { method window (line 71) | pub fn window(&self) -> u64 { method max_data (line 76) | pub fn max_data(&self) -> u64 { method consumed (line 82) | pub fn consumed(&self) -> u64 { method add_consumed (line 87) | pub fn add_consumed(&mut self, consumed: u64) { method should_update_max_data (line 95) | pub fn should_update_max_data(&self) -> bool { method max_data_next (line 102) | pub fn max_data_next(&self) -> u64 { method update_max_data (line 107) | pub fn update_max_data(&mut self, now: Instant) { method autotune_window (line 115) | pub fn autotune_window(&mut self, now: Instant, rtt: Duration) { method ensure_window_lower_bound (line 128) | pub fn ensure_window_lower_bound(&mut self, min_window: u64) { function max_data (line 141) | fn max_data() { function should_update_max_data (line 148) | fn should_update_max_data() { function max_data_next (line 159) | fn max_data_next() { function update_max_data (line 170) | fn update_max_data() { function autotune_window (line 186) | fn autotune_window() { function ensure_window_lower_bound (line 215) | fn ensure_window_lower_bound() { FILE: quiche/src/frame.rs constant MAX_CRYPTO_OVERHEAD (line 45) | pub const MAX_CRYPTO_OVERHEAD: usize = 8; constant MAX_DGRAM_OVERHEAD (line 46) | pub const MAX_DGRAM_OVERHEAD: usize = 2; constant MAX_STREAM_OVERHEAD (line 47) | pub const MAX_STREAM_OVERHEAD: usize = 12; constant MAX_STREAM_SIZE (line 48) | pub const MAX_STREAM_SIZE: u64 = 1 << 62; type EcnCounts (line 51) | pub struct EcnCounts { type Frame (line 58) | pub enum Frame { method from_bytes (line 190) | pub fn from_bytes( method to_bytes (line 372) | pub fn to_bytes(&self, b: &mut octets::OctetsMut) -> Result { method wire_len (line 601) | pub fn wire_len(&self) -> usize { method ack_eliciting (line 814) | pub fn ack_eliciting(&self) -> bool { method probing (line 825) | pub fn probing(&self) -> bool { method to_qlog (line 836) | pub fn to_qlog(&self) -> QuicFrame { method fmt (line 1089) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { function parse_ack_frame (line 1257) | fn parse_ack_frame(ty: u64, b: &mut octets::Octets) -> Result { function encode_crypto_header (line 1313) | pub fn encode_crypto_header( function encode_stream_header (line 1326) | pub fn encode_stream_header( function encode_dgram_header (line 1353) | pub fn encode_dgram_header(length: u64, b: &mut octets::OctetsMut) -> Re... function parse_stream_frame (line 1367) | fn parse_stream_frame(ty: u64, b: &mut octets::Octets) -> Result { function parse_datagram_frame (line 1396) | fn parse_datagram_frame(ty: u64, b: &mut octets::Octets) -> Result { function padding (line 1417) | fn padding() { function ping (line 1443) | fn ping() { function ack (line 1470) | fn ack() { function ack_ecn (line 1506) | fn ack_ecn() { function reset_stream (line 1548) | fn reset_stream() { function stop_sending (line 1578) | fn stop_sending() { function crypto (line 1607) | fn crypto() { function new_token (line 1637) | fn new_token() { function stream (line 1665) | fn stream() { function stream_too_big (line 1696) | fn stream_too_big() { function max_data (line 1721) | fn max_data() { function max_stream_data (line 1747) | fn max_stream_data() { function max_streams_bidi (line 1776) | fn max_streams_bidi() { function max_streams_uni (line 1802) | fn max_streams_uni() { function data_blocked (line 1828) | fn data_blocked() { function stream_data_blocked (line 1854) | fn stream_data_blocked() { function streams_blocked_bidi (line 1883) | fn streams_blocked_bidi() { function streams_blocked_uni (line 1909) | fn streams_blocked_uni() { function new_connection_id (line 1935) | fn new_connection_id() { function retire_connection_id (line 1966) | fn retire_connection_id() { function path_challenge (line 1992) | fn path_challenge() { function path_response (line 2020) | fn path_response() { function connection_close (line 2048) | fn connection_close() { function application_close (line 2078) | fn application_close() { function handshake_done (line 2107) | fn handshake_done() { function datagram (line 2133) | fn datagram() { FILE: quiche/src/h3/ffi.rs function quiche_h3_config_new (line 44) | pub extern "C" fn quiche_h3_config_new() -> *mut h3::Config { function quiche_h3_config_set_max_field_section_size (line 53) | pub extern "C" fn quiche_h3_config_set_max_field_section_size( function quiche_h3_config_set_qpack_max_table_capacity (line 60) | pub extern "C" fn quiche_h3_config_set_qpack_max_table_capacity( function quiche_h3_config_set_qpack_blocked_streams (line 67) | pub extern "C" fn quiche_h3_config_set_qpack_blocked_streams( function quiche_h3_config_enable_extended_connect (line 74) | pub extern "C" fn quiche_h3_config_enable_extended_connect( function quiche_h3_config_free (line 81) | pub extern "C" fn quiche_h3_config_free(config: *mut h3::Config) { function quiche_h3_conn_new_with_transport (line 86) | pub extern "C" fn quiche_h3_conn_new_with_transport( function quiche_h3_for_each_setting (line 97) | pub extern "C" fn quiche_h3_for_each_setting( function quiche_h3_conn_poll (line 120) | pub extern "C" fn quiche_h3_conn_poll( function quiche_h3_event_type (line 138) | pub extern "C" fn quiche_h3_event_type(ev: &h3::Event) -> u32 { function quiche_h3_event_for_each_header (line 155) | pub extern "C" fn quiche_h3_event_for_each_header( function quiche_h3_event_headers_has_more_frames (line 191) | pub extern "C" fn quiche_h3_event_headers_has_more_frames( function quiche_h3_extended_connect_enabled_by_peer (line 202) | pub extern "C" fn quiche_h3_extended_connect_enabled_by_peer( function quiche_h3_event_free (line 209) | pub extern "C" fn quiche_h3_event_free(ev: *mut h3::Event) { type Header (line 214) | pub struct Header { function quiche_h3_send_request (line 223) | pub extern "C" fn quiche_h3_send_request( function quiche_h3_send_response (line 237) | pub extern "C" fn quiche_h3_send_response( function quiche_h3_send_response_with_priority (line 251) | pub extern "C" fn quiche_h3_send_response_with_priority( function quiche_h3_send_additional_headers (line 271) | pub extern "C" fn quiche_h3_send_additional_headers( function quiche_h3_send_body (line 292) | pub extern "C" fn quiche_h3_send_body( function quiche_h3_recv_body (line 310) | pub extern "C" fn quiche_h3_recv_body( function quiche_h3_send_goaway (line 328) | pub extern "C" fn quiche_h3_send_goaway( function quiche_h3_parse_extensible_priority (line 340) | pub extern "C" fn quiche_h3_parse_extensible_priority( function quiche_h3_send_priority_update_for_request (line 357) | pub extern "C" fn quiche_h3_send_priority_update_for_request( function quiche_h3_take_last_priority_update (line 369) | pub extern "C" fn quiche_h3_take_last_priority_update( function quiche_h3_dgram_enabled_by_peer (line 394) | pub extern "C" fn quiche_h3_dgram_enabled_by_peer( function quiche_h3_conn_free (line 401) | pub extern "C" fn quiche_h3_conn_free(conn: *mut h3::Connection) { function headers_from_ptr (line 405) | fn headers_from_ptr<'a>( type Stats (line 425) | pub struct Stats { function quiche_h3_conn_stats (line 431) | pub extern "C" fn quiche_h3_conn_stats(conn: &h3::Connection, out: &mut ... FILE: quiche/src/h3/frame.rs constant DATA_FRAME_TYPE_ID (line 32) | pub const DATA_FRAME_TYPE_ID: u64 = 0x0; constant HEADERS_FRAME_TYPE_ID (line 33) | pub const HEADERS_FRAME_TYPE_ID: u64 = 0x1; constant CANCEL_PUSH_FRAME_TYPE_ID (line 34) | pub const CANCEL_PUSH_FRAME_TYPE_ID: u64 = 0x3; constant SETTINGS_FRAME_TYPE_ID (line 35) | pub const SETTINGS_FRAME_TYPE_ID: u64 = 0x4; constant PUSH_PROMISE_FRAME_TYPE_ID (line 36) | pub const PUSH_PROMISE_FRAME_TYPE_ID: u64 = 0x5; constant GOAWAY_FRAME_TYPE_ID (line 37) | pub const GOAWAY_FRAME_TYPE_ID: u64 = 0x7; constant MAX_PUSH_FRAME_TYPE_ID (line 38) | pub const MAX_PUSH_FRAME_TYPE_ID: u64 = 0xD; constant PRIORITY_UPDATE_FRAME_REQUEST_TYPE_ID (line 39) | pub const PRIORITY_UPDATE_FRAME_REQUEST_TYPE_ID: u64 = 0xF0700; constant PRIORITY_UPDATE_FRAME_PUSH_TYPE_ID (line 40) | pub const PRIORITY_UPDATE_FRAME_PUSH_TYPE_ID: u64 = 0xF0701; constant SETTINGS_QPACK_MAX_TABLE_CAPACITY (line 42) | pub const SETTINGS_QPACK_MAX_TABLE_CAPACITY: u64 = 0x1; constant SETTINGS_MAX_FIELD_SECTION_SIZE (line 43) | pub const SETTINGS_MAX_FIELD_SECTION_SIZE: u64 = 0x6; constant SETTINGS_QPACK_BLOCKED_STREAMS (line 44) | pub const SETTINGS_QPACK_BLOCKED_STREAMS: u64 = 0x7; constant SETTINGS_ENABLE_CONNECT_PROTOCOL (line 45) | pub const SETTINGS_ENABLE_CONNECT_PROTOCOL: u64 = 0x8; constant SETTINGS_H3_DATAGRAM_00 (line 46) | pub const SETTINGS_H3_DATAGRAM_00: u64 = 0x276; constant SETTINGS_H3_DATAGRAM (line 47) | pub const SETTINGS_H3_DATAGRAM: u64 = 0x33; constant MAX_SETTINGS_PAYLOAD_SIZE (line 50) | const MAX_SETTINGS_PAYLOAD_SIZE: usize = 256; type Frame (line 53) | pub enum Frame { method from_bytes (line 107) | pub fn from_bytes( method to_bytes (line 153) | pub fn to_bytes(&self, b: &mut octets::OctetsMut) -> Result { method to_qlog (line 338) | pub fn to_qlog(&self) -> Http3Frame { method fmt (line 479) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { function parse_settings_frame (line 557) | fn parse_settings_frame( function parse_push_promise (line 635) | fn parse_push_promise( function parse_priority_update (line 648) | fn parse_priority_update( function data (line 678) | fn data() { function headers (line 706) | fn headers() { function cancel_push (line 734) | fn cancel_push() { function settings_all_no_grease (line 761) | fn settings_all_no_grease() { function settings_all_grease (line 806) | fn settings_all_grease() { function settings_h3_only (line 865) | fn settings_h3_only() { function settings_h3_connect_protocol_enabled (line 903) | fn settings_h3_connect_protocol_enabled() { function settings_h3_connect_protocol_enabled_bad (line 941) | fn settings_h3_connect_protocol_enabled_bad() { function settings_h3_dgram_only (line 978) | fn settings_h3_dgram_only() { function settings_h3_dgram_bad (line 1017) | fn settings_h3_dgram_bad() { function settings_qpack_only (line 1052) | fn settings_qpack_only() { function settings_h2_prohibited (line 1093) | fn settings_h2_prohibited() { function settings_too_big (line 1161) | fn settings_too_big() { function push_promise (line 1186) | fn push_promise() { function goaway (line 1217) | fn goaway() { function max_push_id (line 1244) | fn max_push_id() { function priority_update_request (line 1271) | fn priority_update_request() { function priority_update_push (line 1303) | fn priority_update_push() { function unknown_type (line 1335) | fn unknown_type() { FILE: quiche/src/h3/mod.rs constant APPLICATION_PROTOCOL (line 326) | pub const APPLICATION_PROTOCOL: &[&[u8]] = &[b"h3"]; constant PRIORITY_URGENCY_OFFSET (line 329) | const PRIORITY_URGENCY_OFFSET: u8 = 124; constant PRIORITY_URGENCY_LOWER_BOUND (line 334) | const PRIORITY_URGENCY_LOWER_BOUND: u8 = 0; constant PRIORITY_URGENCY_UPPER_BOUND (line 335) | const PRIORITY_URGENCY_UPPER_BOUND: u8 = 7; constant PRIORITY_URGENCY_DEFAULT (line 336) | const PRIORITY_URGENCY_DEFAULT: u8 = 3; constant PRIORITY_INCREMENTAL_DEFAULT (line 337) | const PRIORITY_INCREMENTAL_DEFAULT: bool = false; constant QLOG_FRAME_CREATED (line 340) | const QLOG_FRAME_CREATED: EventType = constant QLOG_FRAME_PARSED (line 343) | const QLOG_FRAME_PARSED: EventType = constant QLOG_STREAM_TYPE_SET (line 346) | const QLOG_STREAM_TYPE_SET: EventType = type Result (line 355) | pub type Result = std::result::Result; type Error (line 359) | pub enum Error { method to_wire (line 483) | fn to_wire(self) -> u64 { method to_c (line 510) | fn to_c(self) -> libc::ssize_t { method fmt (line 539) | fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { method source (line 545) | fn source(&self) -> Option<&(dyn std::error::Error + 'static)> { method from (line 551) | fn from(err: super::Error) -> Self { method from (line 561) | fn from(_err: octets::BufferTooShortError) -> Self { type WireErrorCode (line 433) | pub enum WireErrorCode { type Config (line 567) | pub struct Config { method new (line 579) | pub const fn new() -> Result { method set_max_field_section_size (line 598) | pub fn set_max_field_section_size(&mut self, v: u64) { method set_qpack_max_table_capacity (line 605) | pub fn set_qpack_max_table_capacity(&mut self, v: u64) { method set_qpack_blocked_streams (line 612) | pub fn set_qpack_blocked_streams(&mut self, v: u64) { method enable_extended_connect (line 619) | pub fn enable_extended_connect(&mut self, enabled: bool) { method set_additional_settings (line 646) | pub fn set_additional_settings( type NameValue (line 672) | pub trait NameValue { method name (line 674) | fn name(&self) -> &[u8]; method value (line 677) | fn value(&self) -> &[u8]; method name (line 685) | fn name(&self) -> &[u8] { method value (line 689) | fn value(&self) -> &[u8] { method name (line 725) | fn name(&self) -> &[u8] { method value (line 729) | fn value(&self) -> &[u8] { method name (line 746) | fn name(&self) -> &[u8] { method value (line 750) | fn value(&self) -> &[u8] { type Header (line 696) | pub struct Header(Vec, Vec); method fmt (line 706) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { method new (line 719) | pub fn new(name: &[u8], value: &[u8]) -> Self { function try_print_as_readable (line 698) | fn try_print_as_readable(hdr: &[u8], f: &mut fmt::Formatter) -> fmt::Res... type HeaderRef (line 736) | pub struct HeaderRef<'a>(&'a [u8], &'a [u8]); function new (line 740) | pub const fn new(name: &'a [u8], value: &'a [u8]) -> Self { type Event (line 757) | pub enum Event { type Priority (line 816) | pub struct Priority { method new (line 832) | pub const fn new(urgency: u8, incremental: bool) -> Self { type Error (line 843) | type Error = Error; method try_from (line 860) | fn try_from(value: &[u8]) -> std::result::Result { method default (line 822) | fn default() -> Self { type ConnectionSettings (line 906) | struct ConnectionSettings { type QpackStreams (line 917) | struct QpackStreams { type Stats (line 930) | pub struct Stats { function close_conn_critical_stream (line 937) | fn close_conn_critical_stream( function close_conn_if_critical_stream_finished (line 949) | fn close_conn_if_critical_stream_finished( type Connection (line 960) | pub struct Connection { method new (line 991) | fn new( method with_transport (line 1062) | pub fn with_transport( method send_request (line 1113) | pub fn send_request( method send_response (line 1190) | pub fn send_response( method send_response_with_priority (line 1246) | pub fn send_response_with_priority( method send_additional_headers (line 1302) | pub fn send_additional_headers( method send_additional_headers_with_priority (line 1373) | pub fn send_additional_headers_with_priority( method send_headers (line 1414) | fn send_headers( method send_body (line 1512) | pub fn send_body( method send_body_zc (line 1553) | pub fn send_body_zc( method do_send_body (line 1599) | fn do_send_body( method dgram_enabled_by_peer (line 1733) | pub fn dgram_enabled_by_peer( method extended_connect_enabled_by_peer (line 1747) | pub fn extended_connect_enabled_by_peer(&self) -> bool { method recv_body (line 1762) | pub fn recv_body( method send_priority_update_for_request (line 1837) | pub fn send_priority_update_for_request( method take_last_priority_update (line 1939) | pub fn take_last_priority_update( method poll (line 1986) | pub fn poll( method send_goaway (line 2089) | pub fn send_goaway( method peer_settings_raw (line 2149) | pub fn peer_settings_raw(&self) -> Option<&[(u64, u64)]> { method open_uni_stream (line 2153) | fn open_uni_stream( method open_qpack_encoder_stream (line 2190) | fn open_qpack_encoder_stream( method open_qpack_decoder_stream (line 2212) | fn open_qpack_decoder_stream( method send_grease_frames (line 2235) | fn send_grease_frames( method open_grease_stream (line 2328) | fn open_grease_stream( method send_settings (line 2364) | fn send_settings( method process_control_stream (line 2450) | fn process_control_stream( method process_readable_stream (line 2472) | fn process_readable_stream( method process_finished_stream (line 2797) | fn process_finished_stream(&mut self, stream_id: u64) { method process_frame (line 2819) | fn process_frame( method stats (line 3141) | pub fn stats(&self) -> Stats { function grease_value (line 3154) | pub fn grease_value() -> u64 { type Session (line 3181) | pub struct Session method new (line 3191) | pub fn new() -> Result { method with_configs (line 3195) | pub fn with_configs( function new_with_buf (line 3203) | pub fn new_with_buf() -> Result> { function with_configs_and_buf (line 3235) | pub fn with_configs_and_buf( function handshake (line 3249) | pub fn handshake(&mut self) -> Result<()> { function advance (line 3300) | pub fn advance(&mut self) -> crate::Result<()> { function poll_client (line 3305) | pub fn poll_client(&mut self) -> Result<(u64, Event)> { function poll_server (line 3310) | pub fn poll_server(&mut self) -> Result<(u64, Event)> { function send_request (line 3317) | pub fn send_request(&mut self, fin: bool) -> Result<(u64, Vec
)> { function send_response (line 3337) | pub fn send_response( function send_body_client (line 3360) | pub fn send_body_client( function recv_body_client (line 3376) | pub fn recv_body_client( function send_body_server (line 3385) | pub fn send_body_server( function recv_body_server (line 3401) | pub fn recv_body_server( function send_frame_client (line 3408) | pub fn send_frame_client( function send_dgram_client (line 3428) | pub fn send_dgram_client(&mut self, flow_id: u64) -> Result> { function recv_dgram_client (line 3448) | pub fn recv_dgram_client( function send_dgram_server (line 3461) | pub fn send_dgram_server(&mut self, flow_id: u64) -> Result> { function recv_dgram_server (line 3481) | pub fn recv_dgram_server( function send_frame_server (line 3492) | pub fn send_frame_server( function send_arbitrary_stream_data_client (line 3510) | pub fn send_arbitrary_stream_data_client( function send_arbitrary_stream_data_server (line 3521) | pub fn send_arbitrary_stream_data_server( function grease_value_in_varint_limit (line 3541) | fn grease_value_in_varint_limit() { function h3_handshake_0rtt (line 3547) | fn h3_handshake_0rtt() { function request_no_body_response_no_body (line 3623) | fn request_no_body_response_no_body() { function request_no_body_response_one_chunk (line 3653) | fn request_no_body_response_one_chunk() { function request_no_body_response_many_chunks (line 3691) | fn request_no_body_response_many_chunks() { function request_one_chunk_response_no_body (line 3736) | fn request_one_chunk_response_no_body() { function request_many_chunks_response_no_body (line 3771) | fn request_many_chunks_response_no_body() { function many_requests_many_chunks_response_one_chunk (line 3816) | fn many_requests_many_chunks_response_one_chunk() { function request_no_body_response_one_chunk_empty_fin (line 3914) | fn request_no_body_response_one_chunk_empty_fin() { function request_no_body_response_no_body_with_grease (line 3954) | fn request_no_body_response_no_body_with_grease() { function body_response_before_headers (line 3998) | fn body_response_before_headers() { function send_body_invalid_client_stream (line 4025) | fn send_body_invalid_client_stream() { function send_body_invalid_server_stream (line 4077) | fn send_body_invalid_server_stream() { function trailers (line 4128) | fn trailers() { function informational_response (line 4173) | fn informational_response() { function no_multiple_response (line 4234) | fn no_multiple_response() { function no_send_additional_before_initial_response (line 4283) | fn no_send_additional_before_initial_response() { function additional_headers_before_data_client (line 4322) | fn additional_headers_before_data_client() { function data_after_trailers_client (line 4360) | fn data_after_trailers_client() { function max_push_id_from_client_good (line 4412) | fn max_push_id_from_client_good() { function max_push_id_from_client_bad_stream (line 4428) | fn max_push_id_from_client_bad_stream() { function max_push_id_from_client_limit_reduction (line 4453) | fn max_push_id_from_client_limit_reduction() { function max_push_id_from_server (line 4476) | fn max_push_id_from_server() { function push_promise_from_client (line 4492) | fn push_promise_from_client() { function cancel_push_from_client (line 4521) | fn cancel_push_from_client() { function cancel_push_from_client_bad_stream (line 4537) | fn cancel_push_from_client_bad_stream() { function cancel_push_from_server (line 4561) | fn cancel_push_from_server() { function goaway_from_client_good (line 4577) | fn goaway_from_client_good() { function goaway_from_server_good (line 4591) | fn goaway_from_server_good() { function client_request_after_goaway (line 4604) | fn client_request_after_goaway() { function goaway_from_server_invalid_id (line 4619) | fn goaway_from_server_invalid_id() { function goaway_from_server_increase_id (line 4636) | fn goaway_from_server_increase_id() { function parse_priority_field_value (line 4661) | fn parse_priority_field_value() { function priority_update_request (line 4747) | fn priority_update_request() { function priority_update_single_stream_rearm (line 4765) | fn priority_update_single_stream_rearm() { function priority_update_request_multiple_stream_arm_multiple_flights (line 4813) | fn priority_update_request_multiple_stream_arm_multiple_flights() { function priority_update_request_multiple_stream_arm_single_flight (line 4859) | fn priority_update_request_multiple_stream_arm_single_flight() { function priority_update_request_collected_completed (line 4909) | fn priority_update_request_collected_completed() { function priority_update_request_collected_stopped (line 4963) | fn priority_update_request_collected_stopped() { function priority_update_push (line 5021) | fn priority_update_push() { function priority_update_request_bad_stream (line 5041) | fn priority_update_request_bad_stream() { function priority_update_push_bad_stream (line 5061) | fn priority_update_push_bad_stream() { function priority_update_request_from_server (line 5080) | fn priority_update_request_from_server() { function priority_update_push_from_server (line 5099) | fn priority_update_push_from_server() { function uni_stream_local_counting (line 5118) | fn uni_stream_local_counting() { function open_multiple_control_streams (line 5130) | fn open_multiple_control_streams() { function close_control_stream_after_type (line 5155) | fn close_control_stream_after_type() { function close_control_stream_after_frame (line 5176) | fn close_control_stream_after_frame() { function reset_control_stream_after_type (line 5196) | fn reset_control_stream_after_type() { function reset_control_stream_after_frame (line 5221) | fn reset_control_stream_after_frame() { function close_qpack_stream_after_type (line 5254) | fn close_qpack_stream_after_type() { function close_qpack_stream_after_data (line 5278) | fn close_qpack_stream_after_data() { function reset_qpack_stream_after_type (line 5299) | fn reset_qpack_stream_after_type() { function reset_qpack_stream_after_data (line 5323) | fn reset_qpack_stream_after_data() { function qpack_data (line 5353) | fn qpack_data() { function max_state_buf_size (line 5389) | fn max_state_buf_size() { function stream_backpressure (line 5454) | fn stream_backpressure() { function request_max_header_size_limit (line 5521) | fn request_max_header_size_limit() { function transport_error (line 5572) | fn transport_error() { function data_before_headers (line 5608) | fn data_before_headers() { function poll_after_error (line 5633) | fn poll_after_error() { function headers_blocked (line 5658) | fn headers_blocked() { function headers_blocked_on_conn (line 5721) | fn headers_blocked_on_conn() { function send_body_truncation_stream_blocked (line 5790) | fn send_body_truncation_stream_blocked() { function send_body_stream_blocked_by_small_cwnd (line 5926) | fn send_body_stream_blocked_by_small_cwnd() { function send_body_stream_blocked_zero_length (line 5998) | fn send_body_stream_blocked_zero_length() { function zero_length_data (line 6076) | fn zero_length_data() { function zero_length_data_blocked (line 6131) | fn zero_length_data_blocked() { function empty_settings (line 6186) | fn empty_settings() { function dgram_setting (line 6216) | fn dgram_setting() { function dgram_setting_no_tp (line 6261) | fn dgram_setting_no_tp() { function settings_h2_prohibited (line 6313) | fn settings_h2_prohibited() { function set_prohibited_additional_settings (line 6384) | fn set_prohibited_additional_settings() { function set_additional_settings (line 6423) | fn set_additional_settings() { function single_dgram (line 6471) | fn single_dgram() { function multiple_dgram (line 6491) | fn multiple_dgram() { function multiple_dgram_overflow (line 6522) | fn multiple_dgram_overflow() { function poll_datagram_cycling_no_read (line 6547) | fn poll_datagram_cycling_no_read() { function poll_datagram_single_read (line 6589) | fn poll_datagram_single_read() { function poll_datagram_multi_read (line 6674) | fn poll_datagram_multi_read() { function finished_is_for_requests (line 6820) | fn finished_is_for_requests() { function finished_once (line 6836) | fn finished_once() { function data_event_rearm (line 6862) | fn data_event_rearm() { function dgram_event_rearm (line 7049) | fn dgram_event_rearm() { function reset_stream (line 7140) | fn reset_stream() { function client_shutdown_write_server_fin (line 7198) | fn client_shutdown_write_server_fin() { function client_shutdown_read (line 7296) | fn client_shutdown_read() { function reset_finished_at_server (line 7360) | fn reset_finished_at_server() { function reset_finished_at_server_with_data_pending (line 7400) | fn reset_finished_at_server_with_data_pending() { function reset_finished_at_server_with_data_pending_2 (line 7439) | fn reset_finished_at_server_with_data_pending_2() { function reset_finished_at_client (line 7482) | fn reset_finished_at_client() { FILE: quiche/src/h3/qpack/decoder.rs type Representation (line 38) | enum Representation { method from_byte (line 47) | pub fn from_byte(b: u8) -> Representation { type Decoder (line 70) | pub struct Decoder {} method new (line 74) | pub fn new() -> Decoder { method control (line 79) | pub fn control(&mut self, _buf: &mut [u8]) -> Result<()> { method decode (line 85) | pub fn decode(&mut self, buf: &[u8], max_size: u64) -> Result Result<(&'static [u8], &'static [u8])> { function decode_int (line 212) | fn decode_int(b: &mut octets::Octets, prefix: usize) -> Result { function decode_str (line 243) | fn decode_str(b: &mut octets::Octets) -> Result> { function decode_int1 (line 266) | fn decode_int1() { function decode_int2 (line 274) | fn decode_int2() { function decode_int3 (line 282) | fn decode_int3() { FILE: quiche/src/h3/qpack/encoder.rs type Encoder (line 37) | pub struct Encoder {} method new (line 41) | pub fn new() -> Encoder { method encode (line 46) | pub fn encode( function lookup_static (line 87) | fn lookup_static(h: &T) -> Option<(u64, bool)> { function encode_int (line 120) | pub fn encode_int( function encode_str (line 150) | pub fn encode_str( function encode_int1 (line 179) | fn encode_int1() { function encode_int2 (line 190) | fn encode_int2() { function encode_int3 (line 201) | fn encode_int3() { function encode_static_header (line 212) | fn encode_static_header() { function encode_static_header_name_only (line 221) | fn encode_static_header_name_only() { FILE: quiche/src/h3/qpack/mod.rs constant INDEXED (line 32) | pub const INDEXED: u8 = 0b1000_0000; constant INDEXED_WITH_POST_BASE (line 33) | pub const INDEXED_WITH_POST_BASE: u8 = 0b0001_0000; constant LITERAL (line 34) | pub const LITERAL: u8 = 0b0010_0000; constant LITERAL_WITH_NAME_REF (line 35) | pub const LITERAL_WITH_NAME_REF: u8 = 0b0100_0000; type Result (line 43) | pub type Result = std::result::Result; type Error (line 47) | pub enum Error { method fmt (line 65) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { method source (line 71) | fn source(&self) -> Option<&(dyn std::error::Error + 'static)> { method from (line 77) | fn from(_err: octets::BufferTooShortError) -> Self { function encode_decode (line 89) | fn encode_decode() { function lower_case (line 112) | fn lower_case() { function lower_ascii_range (line 159) | fn lower_ascii_range() { function extended_ascii_range (line 176) | fn extended_ascii_range() { FILE: quiche/src/h3/qpack/static_table.rs type HeaderName (line 31) | type HeaderName = &'static [u8]; type HeaderValue (line 32) | type HeaderValue = &'static [u8]; type HeaderValueEncPairs (line 33) | type HeaderValueEncPairs = &'static [(HeaderValue, u64)]; constant STATIC_ENCODE_TABLE (line 34) | pub const STATIC_ENCODE_TABLE: &[&[(HeaderName, HeaderValueEncPairs)]] = &[ constant STATIC_DECODE_TABLE (line 214) | pub const STATIC_DECODE_TABLE: [(&[u8], &[u8]); 99] = [ FILE: quiche/src/h3/stream.rs constant HTTP3_CONTROL_STREAM_TYPE_ID (line 34) | pub const HTTP3_CONTROL_STREAM_TYPE_ID: u64 = 0x0; constant HTTP3_PUSH_STREAM_TYPE_ID (line 35) | pub const HTTP3_PUSH_STREAM_TYPE_ID: u64 = 0x1; constant QPACK_ENCODER_STREAM_TYPE_ID (line 36) | pub const QPACK_ENCODER_STREAM_TYPE_ID: u64 = 0x2; constant QPACK_DECODER_STREAM_TYPE_ID (line 37) | pub const QPACK_DECODER_STREAM_TYPE_ID: u64 = 0x3; constant MAX_STATE_BUF_SIZE (line 39) | const MAX_STATE_BUF_SIZE: usize = (1 << 24) - 1; type Type (line 42) | pub enum Type { method to_qlog (line 53) | pub fn to_qlog(self) -> qlog::events::http3::StreamType { method deserialize (line 96) | pub fn deserialize(v: u64) -> Result { type State (line 66) | pub enum State { type Stream (line 123) | pub struct Stream { method new (line 180) | pub fn new(id: u64, is_local: bool) -> Stream { method ty (line 223) | pub fn ty(&self) -> Option { method state (line 227) | pub fn state(&self) -> State { method set_ty (line 232) | pub fn set_ty(&mut self, ty: Type) -> Result<()> { method set_push_id (line 257) | pub fn set_push_id(&mut self, _id: u64) -> Result<()> { method set_frame_type (line 268) | pub fn set_frame_type(&mut self, ty: u64) -> Result<()> { method frame_type (line 398) | pub fn frame_type(&self) -> Option { method set_frame_payload_len (line 403) | pub fn set_frame_payload_len(&mut self, len: u64) -> Result<()> { method try_fill_buffer (line 442) | pub fn try_fill_buffer( method initialize_local (line 512) | pub fn initialize_local(&mut self) { method local_initialized (line 517) | pub fn local_initialized(&self) -> bool { method increment_headers_received (line 521) | pub fn increment_headers_received(&mut self) { method headers_received_count (line 526) | pub fn headers_received_count(&self) -> usize { method mark_trailers_sent (line 530) | pub fn mark_trailers_sent(&mut self) { method trailers_sent (line 534) | pub fn trailers_sent(&self) -> bool { method try_fill_buffer_for_tests (line 543) | fn try_fill_buffer_for_tests( method try_consume_varint (line 565) | pub fn try_consume_varint(&mut self) -> Result { method try_consume_frame (line 585) | pub fn try_consume_frame(&mut self) -> Result<(frame::Frame, u64)> { method try_consume_data (line 605) | pub fn try_consume_data( method finished (line 640) | pub fn finished(&mut self) { method try_consume_data_for_tests (line 649) | fn try_consume_data_for_tests( method try_trigger_data_event (line 669) | pub fn try_trigger_data_event(&mut self) -> bool { method reset_data_event (line 680) | fn reset_data_event(&mut self) { method set_last_priority_update (line 685) | pub fn set_last_priority_update(&mut self, priority_update: Option Option> { method has_last_priority_update (line 695) | pub fn has_last_priority_update(&self) -> bool { method state_buffer_complete (line 700) | fn state_buffer_complete(&self) -> bool { method state_transition (line 706) | fn state_transition( function open_uni (line 736) | fn open_uni(b: &mut octets::OctetsMut, ty: u64) -> Result { function parse_uni (line 745) | fn parse_uni( function parse_skip_frame (line 757) | fn parse_skip_frame( function control_good (line 786) | fn control_good() { function control_empty_settings (line 842) | fn control_empty_settings() { function control_bad_multiple_settings (line 892) | fn control_bad_multiple_settings() { function control_bad_late_settings (line 955) | fn control_bad_late_settings() { function control_bad_frame (line 997) | fn control_bad_frame() { function request_no_data (line 1055) | fn request_no_data() { function request_good (line 1065) | fn request_good() { function push_good (line 1137) | fn push_good() { function grease (line 1221) | fn grease() { function data_before_headers (line 1241) | fn data_before_headers() { function additional_headers (line 1265) | fn additional_headers() { function zero_length_goaway (line 1393) | fn zero_length_goaway() { function zero_length_push_promise (line 1441) | fn zero_length_push_promise() { function zero_length_cancel_push (line 1474) | fn zero_length_cancel_push() { function zero_length_max_push_id (line 1522) | fn zero_length_max_push_id() { FILE: quiche/src/lib.rs constant PROTOCOL_VERSION (line 431) | pub const PROTOCOL_VERSION: u32 = PROTOCOL_VERSION_V1; constant PROTOCOL_VERSION_V1 (line 434) | const PROTOCOL_VERSION_V1: u32 = 0x0000_0001; constant MAX_CONN_ID_LEN (line 437) | pub const MAX_CONN_ID_LEN: usize = packet::MAX_CID_LEN as usize; constant MIN_CLIENT_INITIAL_LEN (line 440) | pub const MIN_CLIENT_INITIAL_LEN: usize = 1200; constant DEFAULT_INITIAL_RTT (line 443) | const DEFAULT_INITIAL_RTT: Duration = Duration::from_millis(333); constant PAYLOAD_MIN_LEN (line 445) | const PAYLOAD_MIN_LEN: usize = 4; constant MIN_PROBING_SIZE (line 448) | const MIN_PROBING_SIZE: usize = 25; constant MAX_AMPLIFICATION_FACTOR (line 450) | const MAX_AMPLIFICATION_FACTOR: usize = 3; constant MAX_ACK_RANGES (line 455) | const MAX_ACK_RANGES: usize = 68; constant MAX_STREAM_ID (line 458) | const MAX_STREAM_ID: u64 = 1 << 60; constant MAX_SEND_UDP_PAYLOAD_SIZE (line 461) | const MAX_SEND_UDP_PAYLOAD_SIZE: usize = 1200; constant DEFAULT_MAX_DGRAM_QUEUE_LEN (line 464) | const DEFAULT_MAX_DGRAM_QUEUE_LEN: usize = 0; constant DEFAULT_MAX_PATH_CHALLENGE_RX_QUEUE_LEN (line 467) | const DEFAULT_MAX_PATH_CHALLENGE_RX_QUEUE_LEN: usize = 3; constant MAX_DGRAM_FRAME_SIZE (line 471) | const MAX_DGRAM_FRAME_SIZE: u64 = 65536; constant PAYLOAD_LENGTH_LEN (line 474) | const PAYLOAD_LENGTH_LEN: usize = 2; constant MAX_UNDECRYPTABLE_PACKETS (line 477) | const MAX_UNDECRYPTABLE_PACKETS: usize = 10; constant RESERVED_VERSION_MASK (line 479) | const RESERVED_VERSION_MASK: u32 = 0xfafafafa; constant DEFAULT_CONNECTION_WINDOW (line 482) | const DEFAULT_CONNECTION_WINDOW: u64 = 48 * 1024; constant MAX_CONNECTION_WINDOW (line 485) | const MAX_CONNECTION_WINDOW: u64 = 24 * 1024 * 1024; constant CONNECTION_WINDOW_FACTOR (line 489) | const CONNECTION_WINDOW_FACTOR: f64 = 1.5; constant MAX_PROBING_TIMEOUTS (line 493) | const MAX_PROBING_TIMEOUTS: usize = 3; constant DEFAULT_INITIAL_CONGESTION_WINDOW_PACKETS (line 496) | const DEFAULT_INITIAL_CONGESTION_WINDOW_PACKETS: usize = 10; constant MAX_CRYPTO_STREAM_OFFSET (line 499) | const MAX_CRYPTO_STREAM_OFFSET: u64 = 1 << 16; constant TX_CAP_FACTOR (line 502) | const TX_CAP_FACTOR: f64 = 1.0; type RecvInfo (line 506) | pub struct RecvInfo { type SendInfo (line 516) | pub struct SendInfo { type Shutdown (line 538) | pub enum Shutdown { type QlogLevel (line 550) | pub enum QlogLevel { type Config (line 562) | pub struct Config { method new (line 624) | pub fn new(version: u32) -> Result { method with_boring_ssl_ctx_builder (line 637) | pub fn with_boring_ssl_ctx_builder( method with_tls_ctx (line 643) | fn with_tls_ctx(version: u32, tls_ctx: tls::Context) -> Result { method load_cert_chain_from_pem_file (line 701) | pub fn load_cert_chain_from_pem_file(&mut self, file: &str) -> Result<... method load_priv_key_from_pem_file (line 716) | pub fn load_priv_key_from_pem_file(&mut self, file: &str) -> Result<()> { method load_verify_locations_from_file (line 732) | pub fn load_verify_locations_from_file(&mut self, file: &str) -> Resul... method load_verify_locations_from_directory (line 748) | pub fn load_verify_locations_from_directory( method verify_peer (line 769) | pub fn verify_peer(&mut self, verify: bool) { method discover_pmtu (line 776) | pub fn discover_pmtu(&mut self, discover: bool) { method set_pmtud_max_probes (line 785) | pub fn set_pmtud_max_probes(&mut self, max_probes: u8) { method grease (line 792) | pub fn grease(&mut self, grease: bool) { method log_keys (line 804) | pub fn log_keys(&mut self) { method set_ticket_key (line 818) | pub fn set_ticket_key(&mut self, key: &[u8]) -> Result<()> { method enable_early_data (line 823) | pub fn enable_early_data(&mut self) { method set_application_protos (line 844) | pub fn set_application_protos( method set_application_protos_wire_format (line 869) | pub fn set_application_protos_wire_format( method set_max_amplification_factor (line 886) | pub fn set_max_amplification_factor(&mut self, v: usize) { method set_send_capacity_factor (line 893) | pub fn set_send_capacity_factor(&mut self, v: f64) { method set_initial_rtt (line 900) | pub fn set_initial_rtt(&mut self, v: Duration) { method set_max_idle_timeout (line 907) | pub fn set_max_idle_timeout(&mut self, v: u64) { method set_max_recv_udp_payload_size (line 915) | pub fn set_max_recv_udp_payload_size(&mut self, v: usize) { method set_max_send_udp_payload_size (line 923) | pub fn set_max_send_udp_payload_size(&mut self, v: usize) { method set_initial_max_data (line 939) | pub fn set_initial_max_data(&mut self, v: u64) { method set_initial_max_stream_data_bidi_local (line 957) | pub fn set_initial_max_stream_data_bidi_local(&mut self, v: u64) { method set_initial_max_stream_data_bidi_remote (line 976) | pub fn set_initial_max_stream_data_bidi_remote(&mut self, v: u64) { method set_initial_max_stream_data_uni (line 994) | pub fn set_initial_max_stream_data_uni(&mut self, v: u64) { method set_initial_max_streams_bidi (line 1016) | pub fn set_initial_max_streams_bidi(&mut self, v: u64) { method set_initial_max_streams_uni (line 1036) | pub fn set_initial_max_streams_uni(&mut self, v: u64) { method set_ack_delay_exponent (line 1044) | pub fn set_ack_delay_exponent(&mut self, v: u64) { method set_max_ack_delay (line 1052) | pub fn set_max_ack_delay(&mut self, v: u64) { method set_active_connection_id_limit (line 1060) | pub fn set_active_connection_id_limit(&mut self, v: u64) { method set_disable_active_migration (line 1070) | pub fn set_disable_active_migration(&mut self, v: bool) { method set_cc_algorithm (line 1077) | pub fn set_cc_algorithm(&mut self, algo: CongestionControlAlgorithm) { method set_custom_bbr_params (line 1091) | pub fn set_custom_bbr_params(&mut self, custom_bbr_settings: BbrParams) { method set_cc_algorithm_name (line 1107) | pub fn set_cc_algorithm_name(&mut self, name: &str) -> Result<()> { method set_initial_congestion_window_packets (line 1116) | pub fn set_initial_congestion_window_packets(&mut self, packets: usize) { method set_enable_relaxed_loss_threshold (line 1123) | pub fn set_enable_relaxed_loss_threshold(&mut self, enable: bool) { method set_enable_cubic_idle_restart_fix (line 1134) | pub fn set_enable_cubic_idle_restart_fix(&mut self, enable: bool) { method set_enable_send_streams_blocked (line 1145) | pub fn set_enable_send_streams_blocked(&mut self, enable: bool) { method enable_hystart (line 1152) | pub fn enable_hystart(&mut self, v: bool) { method enable_pacing (line 1159) | pub fn enable_pacing(&mut self, v: bool) { method set_max_pacing_rate (line 1166) | pub fn set_max_pacing_rate(&mut self, v: u64) { method enable_dgram (line 1176) | pub fn enable_dgram( method set_path_challenge_recv_max_queue_len (line 1194) | pub fn set_path_challenge_recv_max_queue_len(&mut self, queue_len: usi... method set_max_connection_window (line 1201) | pub fn set_max_connection_window(&mut self, v: u64) { method set_max_stream_window (line 1208) | pub fn set_max_stream_window(&mut self, v: u64) { method set_stateless_reset_token (line 1218) | pub fn set_stateless_reset_token(&mut self, v: Option) { method set_disable_dcid_reuse (line 1232) | pub fn set_disable_dcid_reuse(&mut self, v: bool) { method enable_track_unknown_transport_parameters (line 1244) | pub fn enable_track_unknown_transport_parameters(&mut self, size: usiz... function is_reserved_version (line 611) | fn is_reserved_version(version: u32) -> bool { type TxBufferTrackingState (line 1251) | pub enum TxBufferTrackingState { type StreamsBlockedState (line 1264) | struct StreamsBlockedState { method has_pending_stream_blocked_frame (line 1277) | fn has_pending_stream_blocked_frame(&self) -> bool { method update_at (line 1282) | fn update_at(&mut self, limit: u64) { method force_retransmit_sent_limit_eq (line 1288) | fn force_retransmit_sent_limit_eq(&mut self, limit: u64) { type Connection (line 1298) | pub struct Connection function accept (line 1605) | pub fn accept( function accept_with_buf_factory (line 1618) | pub fn accept_with_buf_factory( type RetryConnectionIds (line 1633) | pub struct RetryConnectionIds<'a> { function accept_with_retry (line 1659) | pub fn accept_with_retry( function connect (line 1685) | pub fn connect( function connect_with_dcid (line 1711) | pub fn connect_with_dcid( function connect_with_buffer_factory (line 1731) | pub fn connect_with_buffer_factory( function connect_with_dcid_and_buffer_factory (line 1754) | pub fn connect_with_dcid_and_buffer_factory( function negotiate_version (line 1792) | pub fn negotiate_version( function retry (line 1858) | pub fn retry( function version_is_supported (line 1867) | pub fn version_is_supported(version: u32) -> bool { constant QLOG_PARAMS_SET (line 1909) | const QLOG_PARAMS_SET: EventType = constant QLOG_PACKET_RX (line 1913) | const QLOG_PACKET_RX: EventType = constant QLOG_PACKET_TX (line 1917) | const QLOG_PACKET_TX: EventType = constant QLOG_DATA_MV (line 1921) | const QLOG_DATA_MV: EventType = constant QLOG_METRICS (line 1925) | const QLOG_METRICS: EventType = constant QLOG_CONNECTION_CLOSED (line 1929) | const QLOG_CONNECTION_CLOSED: EventType = type QlogInfo (line 1933) | struct QlogInfo { method default (line 1941) | fn default() -> Self { function new (line 1951) | fn new( function with_tls (line 1970) | fn with_tls( function set_keylog (line 2273) | pub fn set_keylog(&mut self, writer: Box Option<&mut qlog::streamer::QlogStrea... function set_session (line 2380) | pub fn set_session(&mut self, session: &[u8]) -> Result<()> { function set_max_idle_timeout (line 2409) | pub fn set_max_idle_timeout(&mut self, v: u64) -> Result<()> { function set_cc_algorithm_in_handshake (line 2427) | pub fn set_cc_algorithm_in_handshake( function set_custom_bbr_settings_in_handshake (line 2454) | pub fn set_custom_bbr_settings_in_handshake( function set_cc_algorithm_name_in_handshake (line 2475) | pub fn set_cc_algorithm_name_in_handshake( function set_initial_congestion_window_packets_in_handshake (line 2493) | pub fn set_initial_congestion_window_packets_in_handshake( function set_enable_relaxed_loss_threshold_in_handshake (line 2514) | pub fn set_enable_relaxed_loss_threshold_in_handshake( function set_enable_cubic_idle_restart_fix_in_handshake (line 2535) | pub fn set_enable_cubic_idle_restart_fix_in_handshake( function set_hystart_in_handshake (line 2556) | pub fn set_hystart_in_handshake( function set_pacing_in_handshake (line 2577) | pub fn set_pacing_in_handshake( function set_max_pacing_rate_in_handshake (line 2598) | pub fn set_max_pacing_rate_in_handshake( function set_max_send_udp_payload_size_in_handshake (line 2619) | pub fn set_max_send_udp_payload_size_in_handshake( function set_send_capacity_factor_in_handshake (line 2640) | pub fn set_send_capacity_factor_in_handshake( function set_discover_pmtu_in_handshake (line 2661) | pub fn set_discover_pmtu_in_handshake( function set_max_idle_timeout_in_handshake (line 2682) | pub fn set_max_idle_timeout_in_handshake( function set_initial_max_streams_bidi_in_handshake (line 2707) | pub fn set_initial_max_streams_bidi_in_handshake( function set_transport_parameters_in_hanshake (line 2722) | fn set_transport_parameters_in_hanshake( function recv (line 2788) | pub fn recv(&mut self, buf: &mut [u8], info: RecvInfo) -> Result { function process_undecrypted_0rtt_packets (line 2870) | fn process_undecrypted_0rtt_packets(&mut self) -> Result<()> { function is_stateless_reset (line 2890) | fn is_stateless_reset(&self, buf: &[u8]) -> bool { function recv_single (line 2928) | fn recv_single( function send (line 3833) | pub fn send(&mut self, out: &mut [u8]) -> Result<(usize, SendInfo)> { function send_on_path (line 3920) | pub fn send_on_path( function send_single (line 4065) | fn send_single( function on_packet_sent (line 5407) | fn on_packet_sent( function get_next_release_time (line 5437) | pub fn get_next_release_time(&self) -> Option { function gcongestion_enabled (line 5449) | pub fn gcongestion_enabled(&self) -> Option { function max_release_into_future (line 5457) | pub fn max_release_into_future(&self) -> Duration { function pacing_enabled (line 5468) | pub fn pacing_enabled(&self) -> bool { function send_quantum (line 5481) | pub fn send_quantum(&self) -> usize { function send_quantum_on_path (line 5499) | pub fn send_quantum_on_path( function stream_recv (line 5539) | pub fn stream_recv( function stream_discard (line 5572) | pub fn stream_discard( function do_stream_recv (line 5596) | fn do_stream_recv( function stream_send (line 5739) | pub fn stream_send( function stream_send_zc (line 5763) | pub fn stream_send_zc( function stream_do_send (line 5784) | fn stream_do_send( function stream_priority (line 5989) | pub fn stream_priority( function stream_shutdown (line 6050) | pub fn stream_shutdown( function stream_capacity (line 6153) | pub fn stream_capacity(&mut self, stream_id: u64) -> Result { function stream_readable_next (line 6192) | pub fn stream_readable_next(&mut self) -> Option { function stream_readable (line 6201) | pub fn stream_readable(&self, stream_id: u64) -> bool { function stream_writable_next (line 6226) | pub fn stream_writable_next(&mut self) -> Option { function stream_writable (line 6285) | pub fn stream_writable( function stream_finished (line 6336) | pub fn stream_finished(&self, stream_id: u64) -> bool { function peer_streams_left_bidi (line 6352) | pub fn peer_streams_left_bidi(&self) -> u64 { function peer_streams_left_uni (line 6362) | pub fn peer_streams_left_uni(&self) -> u64 { function readable (line 6393) | pub fn readable(&self) -> StreamIter { function writable (line 6436) | pub fn writable(&self) -> StreamIter { function max_send_udp_payload_size (line 6459) | pub fn max_send_udp_payload_size(&self) -> usize { function send_ack_eliciting (line 6490) | pub fn send_ack_eliciting(&mut self) -> Result<()> { function send_ack_eliciting_on_path (line 6505) | pub fn send_ack_eliciting_on_path( function dgram_recv (line 6548) | pub fn dgram_recv(&mut self, buf: &mut [u8]) -> Result { function dgram_recv_vec (line 6570) | pub fn dgram_recv_vec(&mut self) -> Result> { function dgram_recv_peek (line 6592) | pub fn dgram_recv_peek(&self, buf: &mut [u8], len: usize) -> Result Option { function dgram_recv_queue_len (line 6604) | pub fn dgram_recv_queue_len(&self) -> usize { function dgram_recv_queue_byte_size (line 6610) | pub fn dgram_recv_queue_byte_size(&self) -> usize { function dgram_send_queue_len (line 6616) | pub fn dgram_send_queue_len(&self) -> usize { function dgram_send_queue_byte_size (line 6622) | pub fn dgram_send_queue_byte_size(&self) -> usize { function is_dgram_send_queue_full (line 6628) | pub fn is_dgram_send_queue_full(&self) -> bool { function is_dgram_recv_queue_full (line 6634) | pub fn is_dgram_recv_queue_full(&self) -> bool { function dgram_send (line 6670) | pub fn dgram_send(&mut self, buf: &[u8]) -> Result<()> { function dgram_send_vec (line 6700) | pub fn dgram_send_vec(&mut self, buf: Vec) -> Result<()> { function dgram_purge_outgoing (line 6741) | pub fn dgram_purge_outgoing bool>(&mut self, f: FN) { function dgram_max_writable_len (line 6768) | pub fn dgram_max_writable_len(&self) -> Option { function dgram_enabled (line 6794) | fn dgram_enabled(&self) -> bool { function timeout_instant (line 6807) | pub fn timeout_instant(&self) -> Option { function timeout (line 6845) | pub fn timeout(&self) -> Option { function on_timeout (line 6860) | pub fn on_timeout(&mut self) { function probe_path (line 6977) | pub fn probe_path( function migrate_source (line 7000) | pub fn migrate_source(&mut self, local_addr: SocketAddr) -> Result { function migrate (line 7019) | pub fn migrate( function new_scid (line 7113) | pub fn new_scid( function active_scids (line 7127) | pub fn active_scids(&self) -> usize { function scids_left (line 7143) | pub fn scids_left(&self) -> usize { function retire_dcid (line 7171) | pub fn retire_dcid(&mut self, dcid_seq: u64) -> Result<()> { function path_event_next (line 7221) | pub fn path_event_next(&mut self) -> Option { function retired_scids (line 7226) | pub fn retired_scids(&self) -> usize { function retired_scid_next (line 7236) | pub fn retired_scid_next(&mut self) -> Option> { function available_dcids (line 7245) | pub fn available_dcids(&self) -> usize { function paths_iter (line 7296) | pub fn paths_iter(&self, from: SocketAddr) -> SocketAddrIter { function close (line 7338) | pub fn close(&mut self, app: bool, err: u64, reason: &[u8]) -> Result<()> { function trace_id (line 7378) | pub fn trace_id(&self) -> &str { function application_proto (line 7386) | pub fn application_proto(&self) -> &[u8] { function server_name (line 7392) | pub fn server_name(&self) -> Option<&str> { function peer_cert (line 7398) | pub fn peer_cert(&self) -> Option<&[u8]> { function peer_cert_chain (line 7409) | pub fn peer_cert_chain(&self) -> Option> { function session (line 7420) | pub fn session(&self) -> Option<&[u8]> { function source_id (line 7432) | pub fn source_id(&self) -> ConnectionId<'_> { function source_ids (line 7450) | pub fn source_ids(&self) -> impl Iterator> { function destination_id (line 7459) | pub fn destination_id(&self) -> ConnectionId<'_> { function pmtu (line 7477) | pub fn pmtu(&self) -> Option { function revalidate_pmtu (line 7489) | pub fn revalidate_pmtu(&mut self) { function is_established (line 7499) | pub fn is_established(&self) -> bool { function is_resumed (line 7505) | pub fn is_resumed(&self) -> bool { function is_in_early_data (line 7512) | pub fn is_in_early_data(&self) -> bool { function early_data_reason (line 7523) | pub fn early_data_reason(&self) -> u32 { function is_readable (line 7529) | pub fn is_readable(&self) -> bool { function is_path_validated (line 7540) | pub fn is_path_validated( function is_draining (line 7567) | pub fn is_draining(&self) -> bool { function is_closed (line 7575) | pub fn is_closed(&self) -> bool { function is_timed_out (line 7581) | pub fn is_timed_out(&self) -> bool { function peer_error (line 7592) | pub fn peer_error(&self) -> Option<&ConnectionError> { function local_error (line 7607) | pub fn local_error(&self) -> Option<&ConnectionError> { function stats (line 7613) | pub fn stats(&self) -> Stats { function bytes_in_flight_duration (line 7652) | fn bytes_in_flight_duration(&self) -> Duration { function peer_transport_params (line 7660) | pub fn peer_transport_params(&self) -> Option<&TransportParams> { function path_stats (line 7670) | pub fn path_stats(&self) -> impl Iterator + '_ { function is_server (line 7675) | pub fn is_server(&self) -> bool { function encode_transport_params (line 7679) | fn encode_transport_params(&mut self) -> Result<()> { function parse_peer_transport_params (line 7686) | fn parse_peer_transport_params( function process_peer_transport_params (line 7739) | fn process_peer_transport_params( function do_handshake (line 7792) | fn do_handshake(&mut self, now: Instant) -> Result<()> { function write_pkt_type (line 7934) | fn write_pkt_type(&self, send_pid: usize) -> Result { function get_or_create_stream (line 8044) | fn get_or_create_stream( function process_frame (line 8057) | fn process_frame( function drop_epoch_state (line 8622) | fn drop_epoch_state(&mut self, epoch: packet::Epoch, now: Instant) { function max_rx_data (line 8640) | fn max_rx_data(&self) -> u64 { function should_send_handshake_done (line 8645) | fn should_send_handshake_done(&self) -> bool { function idle_timeout (line 8652) | fn idle_timeout(&self) -> Option { function handshake_status (line 8687) | fn handshake_status(&self) -> recovery::HandshakeStatus { function update_tx_cap (line 8699) | fn update_tx_cap(&mut self) { function delivery_rate_check_if_app_limited (line 8710) | fn delivery_rate_check_if_app_limited(&self) -> bool { function check_tx_buffered_invariant (line 8739) | fn check_tx_buffered_invariant(&mut self) { function set_initial_dcid (line 8759) | fn set_initial_dcid( function get_or_create_recv_path_id (line 8771) | fn get_or_create_recv_path_id( function get_send_path_id (line 8881) | fn get_send_path_id( function set_active_path (line 8917) | fn set_active_path(&mut self, path_id: usize, now: Instant) -> Result<()> { function on_peer_migrated (line 8935) | fn on_peer_migrated( function create_path_on_client (line 8958) | fn create_path_on_client( function mark_closed (line 9002) | fn mark_closed(&mut self) { function as_mut (line 9100) | fn as_mut(&mut self) -> &mut boring::ssl::SslRef { function drop_pkt_on_err (line 9123) | fn drop_pkt_on_err( type AddrTupleFmt (line 9140) | struct AddrTupleFmt(SocketAddr, SocketAddr); method fmt (line 9143) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { type Stats (line 9160) | pub struct Stats { method fmt (line 9249) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { FILE: quiche/src/minmax.rs type MinmaxSample (line 61) | struct MinmaxSample { type Minmax (line 66) | pub struct Minmax { type Target (line 71) | type Target = T; method deref (line 73) | fn deref(&self) -> &Self::Target { function new (line 79) | pub fn new(val: T) -> Self { function reset (line 89) | pub fn reset(&mut self, time: Instant, meas: T) -> T { function running_min (line 100) | pub fn running_min(&mut self, win: Duration, time: Instant, meas: T) -> T { function running_max (line 122) | pub fn running_max(&mut self, win: Duration, time: Instant, meas: T) -> T { function subwin_update (line 143) | fn subwin_update(&mut self, win: Duration, time: Instant, meas: T) -> T { function reset_filter_rtt (line 186) | fn reset_filter_rtt() { function reset_filter_bandwidth (line 205) | fn reset_filter_bandwidth() { function get_windowed_min_rtt (line 224) | fn get_windowed_min_rtt() { function get_windowed_min_bandwidth (line 248) | fn get_windowed_min_bandwidth() { function get_windowed_max_rtt (line 272) | fn get_windowed_max_rtt() { function get_windowed_max_bandwidth (line 296) | fn get_windowed_max_bandwidth() { function get_windowed_min_estimates_rtt (line 320) | fn get_windowed_min_estimates_rtt() { function get_windowed_min_estimates_bandwidth (line 352) | fn get_windowed_min_estimates_bandwidth() { function get_windowed_max_estimates_rtt (line 384) | fn get_windowed_max_estimates_rtt() { function get_windowed_max_estimates_bandwidth (line 416) | fn get_windowed_max_estimates_bandwidth() { FILE: quiche/src/packet.rs constant FORM_BIT (line 45) | const FORM_BIT: u8 = 0x80; constant FIXED_BIT (line 46) | const FIXED_BIT: u8 = 0x40; constant KEY_PHASE_BIT (line 47) | const KEY_PHASE_BIT: u8 = 0x04; constant TYPE_MASK (line 49) | const TYPE_MASK: u8 = 0x30; constant PKT_NUM_MASK (line 50) | const PKT_NUM_MASK: u8 = 0x03; constant MAX_CID_LEN (line 52) | pub const MAX_CID_LEN: u8 = 20; constant MAX_PKT_NUM_LEN (line 54) | pub const MAX_PKT_NUM_LEN: usize = 4; constant SAMPLE_LEN (line 56) | const SAMPLE_LEN: usize = 16; constant MIN_SKIP_COUNTER_VALUE (line 60) | const MIN_SKIP_COUNTER_VALUE: u64 = constant RETRY_AEAD_ALG (line 63) | const RETRY_AEAD_ALG: crypto::Algorithm = crypto::Algorithm::AES128_GCM; type Epoch (line 66) | pub enum Epoch { method epochs (line 78) | pub fn epochs(range: RangeInclusive) -> &'static [Epoch] { method count (line 82) | pub const fn count() -> usize { method fmt (line 88) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { function from (line 94) | fn from(e: Epoch) -> Self { type Output (line 103) | type Output = T; function index (line 105) | fn index(&self, index: Epoch) -> &Self::Output { function index_mut (line 114) | fn index_mut(&mut self, index: Epoch) -> &mut Self::Output { type Type (line 121) | pub enum Type { method from_epoch (line 142) | pub(crate) fn from_epoch(e: Epoch) -> Type { method to_epoch (line 152) | pub(crate) fn to_epoch(self) -> Result { method to_qlog (line 167) | pub(crate) fn to_qlog(self) -> qlog::events::quic::PacketType { type ConnectionId (line 186) | pub struct ConnectionId<'a>(ConnectionIdInner<'a>); type ConnectionIdInner (line 188) | enum ConnectionIdInner<'a> { function from_vec (line 196) | pub const fn from_vec(cid: Vec) -> Self { function from_ref (line 202) | pub const fn from_ref(cid: &'a [u8]) -> Self { function into_owned (line 208) | pub fn into_owned(self) -> ConnectionId<'static> { method default (line 215) | fn default() -> Self { function from (line 222) | fn from(v: Vec) -> Self { function from (line 229) | fn from(id: ConnectionId<'_>) -> Self { method eq (line 239) | fn eq(&self, other: &Self) -> bool { function as_ref (line 248) | fn as_ref(&self) -> &[u8] { function hash (line 258) | fn hash(&self, state: &mut H) { type Target (line 264) | type Target = [u8]; function deref (line 267) | fn deref(&self) -> &[u8] { method clone (line 277) | fn clone(&self) -> Self { function fmt (line 284) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { type Header (line 295) | pub struct Header<'a> { function from_slice (line 348) | pub fn from_slice<'b>( function from_bytes (line 355) | pub(crate) fn from_bytes<'b>( function to_bytes (line 453) | pub(crate) fn to_bytes(&self, out: &mut octets::OctetsMut) -> Result<()> { function is_long (line 531) | fn is_long(b: u8) -> bool { function fmt (line 537) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { function pkt_num_len (line 569) | pub fn pkt_num_len(pn: u64, largest_acked: u64) -> usize { function decrypt_hdr (line 577) | pub fn decrypt_hdr( function decode_pkt_num (line 634) | pub fn decode_pkt_num(largest_pn: u64, truncated_pn: u64, pn_len: usize)... function decrypt_pkt (line 654) | pub fn decrypt_pkt<'a>( function encrypt_hdr (line 674) | pub fn encrypt_hdr( function encrypt_pkt (line 700) | pub fn encrypt_pkt( function encode_pkt_num (line 719) | pub fn encode_pkt_num( function negotiate_version (line 737) | pub fn negotiate_version( function retry (line 756) | pub fn retry( function verify_retry_integrity (line 787) | pub fn verify_retry_integrity( function compute_retry_integrity_tag (line 797) | fn compute_retry_integrity_tag( type KeyUpdate (line 848) | pub struct KeyUpdate { type PktNumSpace (line 864) | pub struct PktNumSpace { method new (line 888) | pub fn new() -> PktNumSpace { method clear (line 900) | pub fn clear(&mut self) { method ready (line 904) | pub fn ready(&self) -> bool { method on_packet_sent (line 908) | pub fn on_packet_sent(&mut self, sent_pkt: &recovery::Sent) { type CryptoContext (line 915) | pub struct CryptoContext { method new (line 924) | pub fn new() -> CryptoContext { method clear (line 942) | pub fn clear(&mut self) { method data_available (line 955) | pub fn data_available(&self) -> bool { method crypto_overhead (line 959) | pub fn crypto_overhead(&self) -> Option { method has_keys (line 963) | pub fn has_keys(&self) -> bool { type PktNumManager (line 1013) | pub struct PktNumManager { method new (line 1029) | pub fn new() -> Self { method on_packet_sent (line 1036) | pub fn on_packet_sent( method should_arm_skip_counter (line 1048) | fn should_arm_skip_counter(&self, handshake_completed: bool) -> bool { method should_skip_pn (line 1060) | pub fn should_skip_pn(&self, handshake_completed: bool) -> bool { method skip_pn (line 1076) | pub fn skip_pn(&self) -> Option { method set_skip_pn (line 1080) | pub fn set_skip_pn(&mut self, skip_pn: Option) { method arm_skip_counter (line 1094) | fn arm_skip_counter(&mut self, cwnd: usize, max_datagram_size: usize) { type PktNumWindow (line 1125) | pub struct PktNumWindow { method insert (line 1131) | pub fn insert(&mut self, seq: u64) { method contains (line 1149) | pub fn contains(&mut self, seq: u64) -> bool { method upper (line 1164) | fn upper(&self) -> u64 { function retry (line 1176) | fn retry() { function initial (line 1203) | fn initial() { function initial_v1_dcid_too_long (line 1227) | fn initial_v1_dcid_too_long() { function initial_v1_scid_too_long (line 1254) | fn initial_v1_scid_too_long() { function initial_non_v1_scid_long (line 1282) | fn initial_non_v1_scid_long() { function handshake (line 1310) | fn handshake() { function application (line 1334) | fn application() { function pkt_num_encode_decode (line 1358) | fn pkt_num_encode_decode() { function pkt_num_window (line 1400) | fn pkt_num_window() { function assert_decrypt_initial_pkt (line 1505) | fn assert_decrypt_initial_pkt( function decrypt_client_initial_v1 (line 1538) | fn decrypt_client_initial_v1() { function decrypt_server_initial_v1 (line 1684) | fn decrypt_server_initial_v1() { function decrypt_chacha20 (line 1719) | fn decrypt_chacha20() { function assert_encrypt_initial_pkt (line 1755) | fn assert_encrypt_initial_pkt( function encrypt_client_initial_v1 (line 1799) | fn encrypt_client_initial_v1() { function encrypt_server_initial_v1 (line 2041) | fn encrypt_server_initial_v1() { function encrypt_chacha20 (line 2081) | fn encrypt_chacha20() { function decrypt_pkt_underflow (line 2136) | fn decrypt_pkt_underflow() { function decrypt_pkt_too_small (line 2169) | fn decrypt_pkt_too_small() { function track_largest_packet_sent (line 2203) | fn track_largest_packet_sent() { function skip_pn (line 2219) | fn skip_pn() { function arm_skip_counter_only_after_verifying_prev_skip_pn (line 2264) | fn arm_skip_counter_only_after_verifying_prev_skip_pn() { function arm_skip_counter_only_after_handshake_complete (line 2297) | fn arm_skip_counter_only_after_handshake_complete() { function only_skip_after_handshake_complete (line 2322) | fn only_skip_after_handshake_complete() { FILE: quiche/src/path.rs type PathState (line 53) | pub enum PathState { method to_c (line 72) | pub fn to_c(self) -> libc::ssize_t { type PathEvent (line 85) | pub enum PathEvent { type Path (line 124) | pub struct Path { method new (line 228) | pub fn new( method local_addr (line 295) | pub fn local_addr(&self) -> SocketAddr { method peer_addr (line 301) | pub fn peer_addr(&self) -> SocketAddr { method working (line 307) | fn working(&self) -> bool { method active (line 313) | pub fn active(&self) -> bool { method usable (line 319) | pub fn usable(&self) -> bool { method unused (line 327) | fn unused(&self) -> bool { method probing_required (line 334) | pub fn probing_required(&self) -> bool { method promote_to (line 340) | fn promote_to(&mut self, state: PathState) { method validated (line 348) | pub fn validated(&self) -> bool { method validation_failed (line 354) | fn validation_failed(&self) -> bool { method under_validation (line 360) | pub fn under_validation(&self) -> bool { method request_validation (line 366) | pub fn request_validation(&mut self) { method validation_requested (line 372) | pub fn validation_requested(&self) -> bool { method should_send_pmtu_probe (line 376) | pub fn should_send_pmtu_probe( method on_challenge_sent (line 392) | pub fn on_challenge_sent(&mut self) { method add_challenge_sent (line 398) | pub fn add_challenge_sent( method on_challenge_received (line 406) | pub fn on_challenge_received(&mut self, data: [u8; 8]) { method has_pending_challenge (line 416) | pub fn has_pending_challenge(&self, data: [u8; 8]) -> bool { method on_response_received (line 421) | pub fn on_response_received(&mut self, data: [u8; 8]) -> bool { method on_failed_validation (line 455) | fn on_failed_validation(&mut self) { method pop_received_challenge (line 461) | pub fn pop_received_challenge(&mut self) -> Option<[u8; 8]> { method on_loss_detection_timeout (line 465) | pub fn on_loss_detection_timeout( method can_reinit_recovery (line 526) | pub fn can_reinit_recovery(&self) -> bool { method reinit_recovery (line 537) | pub fn reinit_recovery( method stats (line 543) | pub fn stats(&self) -> PathStats { method bytes_in_flight_duration (line 581) | pub fn bytes_in_flight_duration(&self) -> Duration { type SocketAddrIter (line 588) | pub struct SocketAddrIter { type Item (line 594) | type Item = SocketAddr; method next (line 597) | fn next(&mut self) -> Option { method len (line 606) | fn len(&self) -> usize { type PathMap (line 612) | pub struct PathMap { method new (line 634) | pub fn new( method get (line 664) | pub fn get(&self, path_id: usize) -> Result<&Path> { method get_mut (line 674) | pub fn get_mut(&mut self, path_id: usize) -> Result<&mut Path> { method get_active_with_pid (line 681) | pub fn get_active_with_pid(&self) -> Option<(usize, &Path)> { method get_active (line 690) | pub fn get_active(&self) -> Result<&Path> { method get_active_path_id (line 701) | pub fn get_active_path_id(&self) -> Result { method get_active_mut (line 712) | pub fn get_active_mut(&mut self) -> Result<&mut Path> { method iter (line 722) | pub fn iter(&self) -> slab::Iter<'_, Path> { method iter_mut (line 728) | pub fn iter_mut(&mut self) -> slab::IterMut<'_, Path> { method len (line 734) | pub fn len(&self) -> usize { method path_id_from_addrs (line 740) | pub fn path_id_from_addrs( method make_room_for_new_path (line 751) | fn make_room_for_new_path(&mut self) -> Result<()> { method insert_path (line 781) | pub fn insert_path(&mut self, path: Path, is_server: bool) -> Result Option { method notify_failed_validations (line 809) | pub fn notify_failed_validations(&mut self) { method find_candidate_path (line 826) | pub fn find_candidate_path(&self) -> Option { method on_response_received (line 835) | pub fn on_response_received(&mut self, data: [u8; 8]) -> Result<()> { method set_active_path (line 874) | pub fn set_active_path(&mut self, path_id: usize) -> Result<()> { method set_discover_pmtu_on_existing_paths (line 904) | pub fn set_discover_pmtu_on_existing_paths( type PathStats (line 928) | pub struct PathStats { method fmt (line 1020) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { function path_validation_limited_mtu (line 1062) | fn path_validation_limited_mtu() { function multiple_probes (line 1150) | fn multiple_probes() { function too_many_probes (line 1233) | fn too_many_probes() { FILE: quiche/src/pmtud.rs constant MAX_PROBES_DEFAULT (line 22) | pub(crate) const MAX_PROBES_DEFAULT: u8 = 3; constant MIN_PLPMTU (line 27) | const MIN_PLPMTU: usize = crate::MIN_CLIENT_INITIAL_LEN; type Pmtud (line 30) | pub struct Pmtud { method new (line 63) | pub fn new(maximum_supported_mtu: usize, max_probes: u8) -> Self { method should_probe (line 86) | pub fn should_probe(&self) -> bool { method set_probe_size (line 93) | fn set_probe_size(&mut self, probe_size: usize) { method get_probe_size (line 98) | pub fn get_probe_size(&self) -> usize { method get_current_mtu (line 104) | pub fn get_current_mtu(&self) -> usize { method get_pmtu (line 109) | pub fn get_pmtu(&self) -> Option { method update_probe_size (line 117) | fn update_probe_size(&mut self) { method set_in_flight (line 164) | pub fn set_in_flight(&mut self, in_flight: bool) { method successful_probe (line 169) | pub fn successful_probe(&mut self, probe_size: usize) -> Option { method failed_probe (line 185) | pub fn failed_probe(&mut self, probe_size: usize) { method restart_pmtud (line 219) | fn restart_pmtud(&mut self) { method revalidate_pmtu (line 230) | pub fn revalidate_pmtu(&mut self) { method set_pmtu (line 239) | fn set_pmtu(&mut self, successful_probe_size: usize) { method fmt (line 247) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { function pmtud_initial_state (line 265) | fn pmtud_initial_state() { function pmtud_max_probes_zero_uses_default (line 273) | fn pmtud_max_probes_zero_uses_default() { function pmtud_max_probes_set_to_provided_value (line 279) | fn pmtud_max_probes_set_to_provided_value() { function pmtud_binary_search_algorithm (line 286) | fn pmtud_binary_search_algorithm() { function pmtud_successful_probe (line 332) | fn pmtud_successful_probe() { function test_pmtud_reset (line 347) | fn test_pmtud_reset() { function test_pmtud_errant_probe (line 362) | fn test_pmtud_errant_probe() { function test_pmtu_equal_to_min_supported_mtu (line 385) | fn test_pmtu_equal_to_min_supported_mtu() { function test_pmtu_greater_than_min_supported_mtu (line 395) | fn test_pmtu_greater_than_min_supported_mtu() { function test_pmtu_less_than_min_supported_mtu (line 405) | fn test_pmtu_less_than_min_supported_mtu() { function test_pmtu_revalidation (line 416) | fn test_pmtu_revalidation() { function pmtud_revalidation_tolerates_random_packet_loss (line 430) | fn pmtud_revalidation_tolerates_random_packet_loss() { function pmtud_revalidation_failure_binary_searches_not_restarts (line 455) | fn pmtud_revalidation_failure_binary_searches_not_restarts() { function pmtud_tolerates_initial_packet_loss (line 474) | fn pmtud_tolerates_initial_packet_loss() { function pmtud_confirms_failure_after_max_probes (line 491) | fn pmtud_confirms_failure_after_max_probes() { function pmtud_binary_search_no_slowdown (line 503) | fn pmtud_binary_search_no_slowdown() { function pmtud_convergence_with_intermittent_loss (line 530) | fn pmtud_convergence_with_intermittent_loss() { function pmtud_failure_at_min_plpmtu (line 562) | fn pmtud_failure_at_min_plpmtu() { function pmtud_in_flight_cleared_on_all_outcomes (line 573) | fn pmtud_in_flight_cleared_on_all_outcomes() { function pmtud_update_probe_size_initial_state (line 589) | fn pmtud_update_probe_size_initial_state() { function fail_probe_max_times (line 605) | fn fail_probe_max_times(pmtud: &mut Pmtud, size: usize) { function pmtud_test_runner (line 616) | fn pmtud_test_runner(pmtud: &mut Pmtud, test_pmtu: usize) { FILE: quiche/src/rand.rs function rand_bytes (line 27) | pub fn rand_bytes(buf: &mut [u8]) { function rand_u8 (line 33) | pub fn rand_u8() -> u8 { function rand_u64 (line 41) | pub fn rand_u64() -> u64 { function rand_u64_uniform (line 49) | pub fn rand_u64_uniform(max: u64) -> u64 { function RAND_bytes (line 63) | fn RAND_bytes(buf: *mut u8, len: libc::size_t) -> libc::c_int; FILE: quiche/src/range_buf.rs type RangeBuf (line 49) | pub struct RangeBuf function from (line 83) | pub fn from(buf: &[u8], off: u64, fin: bool) -> RangeBuf { function from_raw (line 87) | pub fn from_raw(data: F::Buf, off: u64, fin: bool) -> RangeBuf { function fin (line 100) | pub fn fin(&self) -> bool { function off (line 105) | pub fn off(&self) -> u64 { function max_off (line 110) | pub fn max_off(&self) -> u64 { function len (line 115) | pub fn len(&self) -> usize { function is_empty (line 120) | pub fn is_empty(&self) -> bool { function consume (line 125) | pub fn consume(&mut self, count: usize) { function split_off (line 130) | pub fn split_off(&mut self, at: usize) -> RangeBuf type Target (line 160) | type Target = [u8]; method deref (line 162) | fn deref(&self) -> &[u8] { method cmp (line 168) | fn cmp(&self, other: &RangeBuf) -> cmp::Ordering { method partial_cmp (line 175) | fn partial_cmp(&self, other: &RangeBuf) -> Option { method eq (line 183) | fn eq(&self, other: &RangeBuf) -> bool { FILE: quiche/src/ranges.rs constant MAX_INLINE_CAPACITY (line 37) | const MAX_INLINE_CAPACITY: usize = 4; constant MIN_TO_INLINE (line 38) | const MIN_TO_INLINE: usize = 2; type RangeSet (line 42) | pub enum RangeSet { method new (line 68) | pub fn new(capacity: usize) -> Self { method len (line 76) | pub fn len(&self) -> usize { method fixup (line 86) | fn fixup(&mut self) { method insert (line 114) | pub fn insert(&mut self, item: Range) { method iter (line 124) | pub fn iter( method flatten (line 140) | pub fn flatten(&self) -> impl DoubleEndedIterator + '_ { method first (line 152) | pub fn first(&self) -> Option { method last (line 161) | pub fn last(&self) -> Option { method remove_until (line 171) | pub fn remove_until(&mut self, largest: u64) { method push_item (line 180) | pub fn push_item(&mut self, item: u64) { method eq (line 361) | fn eq(&self, other: &Range) -> bool { method fmt (line 375) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { type InlineRangeSet (line 50) | pub struct InlineRangeSet { method insert (line 186) | fn insert(&mut self, item: Range) { method remove_until (line 254) | fn remove_until(&mut self, largest: u64) { type BTreeRangeSet (line 58) | pub struct BTreeRangeSet { method insert (line 273) | fn insert(&mut self, item: Range) { method remove_until (line 315) | fn remove_until(&mut self, largest: u64) { method prev_to (line 332) | fn prev_to(&self, item: u64) -> Option> { method next_to (line 339) | fn next_to(&self, item: u64) -> Option> { method default (line 348) | fn default() -> Self { function range_overlaps (line 388) | fn range_overlaps(r: &Range, other: &Range) -> bool { function insert_non_overlapping (line 398) | fn insert_non_overlapping() { function insert_contained (line 414) | fn insert_contained() { function insert_overlapping (line 443) | fn insert_overlapping() { function insert_overlapping_multi (line 480) | fn insert_overlapping_multi() { function prev_to (line 517) | fn prev_to() { function next_to (line 534) | fn next_to() { function push_item (line 551) | fn push_item() { function flatten_rev (line 602) | fn flatten_rev() { function flatten_one (line 623) | fn flatten_one() { function remove_largest (line 637) | fn remove_largest() { function eq_range (line 679) | fn eq_range() { function first_last (line 703) | fn first_last() { function capacity (line 730) | fn capacity() { FILE: quiche/src/recovery/bandwidth.rs constant NUM_MILLIS_PER_SECOND (line 29) | const NUM_MILLIS_PER_SECOND: u64 = 1000; constant NUM_MICROS_PER_MILLI (line 30) | const NUM_MICROS_PER_MILLI: u64 = 1000; constant NUM_MICROS_PER_SECOND (line 31) | const NUM_MICROS_PER_SECOND: u64 = NUM_MICROS_PER_MILLI * NUM_MILLIS_PER... constant NUM_NANOS_PER_SECOND (line 32) | const NUM_NANOS_PER_SECOND: u64 = 1000 * NUM_MICROS_PER_SECOND; type Bandwidth (line 35) | pub struct Bandwidth { type Output (line 40) | type Output = Bandwidth; method mul (line 42) | fn mul(self, rhs: f64) -> Self::Output { type Output (line 50) | type Output = Bandwidth; method mul (line 52) | fn mul(self, rhs: f32) -> Self::Output { type Output (line 58) | type Output = Option; method sub (line 60) | fn sub(self, rhs: Bandwidth) -> Self::Output { type Output (line 70) | type Output = Bandwidth; method add (line 72) | fn add(self, rhs: Bandwidth) -> Self::Output { type Output (line 80) | type Output = u64; method mul (line 82) | fn mul(self, rhs: Duration) -> Self::Output { method from_bytes_and_time_delta (line 88) | pub const fn from_bytes_and_time_delta( method from_bytes_per_second (line 111) | pub const fn from_bytes_per_second(bytes_per_second: u64) -> Self { method to_bits_per_second (line 118) | pub const fn to_bits_per_second(self) -> u64 { method to_bytes_per_second (line 122) | pub const fn to_bytes_per_second(self) -> u64 { method from_kbits_per_second (line 126) | pub const fn from_kbits_per_second(k_bits_per_second: u64) -> Self { method from_mbits_per_second (line 133) | pub const fn from_mbits_per_second(m_bits_per_second: u64) -> Self { method infinite (line 137) | pub const fn infinite() -> Self { method zero (line 143) | pub const fn zero() -> Self { method transfer_time (line 147) | pub fn transfer_time(&self, bytes: usize) -> Duration { method to_bytes_per_period (line 157) | pub fn to_bytes_per_period(self, time_period: Duration) -> u64 { method fmt (line 165) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { function constructors (line 181) | fn constructors() { function arithmetic_ops (line 205) | fn arithmetic_ops() { function from_bytes_and_time_delta (line 238) | fn from_bytes_and_time_delta() { function transfer_time (line 260) | fn transfer_time() { function to_bytes_per_period (line 267) | fn to_bytes_per_period() { function debug (line 295) | fn debug() { FILE: quiche/src/recovery/bytes_in_flight.rs type BytesInFlight (line 38) | pub struct BytesInFlight { method add (line 57) | pub(crate) fn add(&mut self, delta: usize, now: Instant) { method saturating_subtract (line 73) | pub(crate) fn saturating_subtract(&mut self, delta: usize, now: Instan... method get (line 79) | pub(crate) fn get(&self) -> usize { method is_zero (line 84) | pub(crate) fn is_zero(&self) -> bool { method get_duration (line 89) | pub(crate) fn get_duration(&self) -> Duration { method update_in_flight_duration (line 93) | fn update_in_flight_duration(&mut self, now: Instant) { function bytes_in_flight_basic (line 111) | fn bytes_in_flight_basic() { function bytes_in_flight_saturating_sub (line 159) | fn bytes_in_flight_saturating_sub() { FILE: quiche/src/recovery/congestion/cubic.rs constant BETA_CUBIC (line 63) | const BETA_CUBIC: f64 = 0.7; constant C (line 65) | const C: f64 = 0.4; constant ROLLBACK_THRESHOLD_PERCENT (line 69) | const ROLLBACK_THRESHOLD_PERCENT: usize = 20; constant MIN_ROLLBACK_THRESHOLD (line 72) | const MIN_ROLLBACK_THRESHOLD: usize = 2; constant ALPHA_AIMD (line 75) | const ALPHA_AIMD: f64 = 3.0 * (1.0 - BETA_CUBIC) / (1.0 + BETA_CUBIC); type State (line 82) | pub struct State { method cubic_k (line 132) | fn cubic_k(&self, cwnd: usize, max_datagram_size: usize) -> f64 { method w_cubic (line 140) | fn w_cubic(&self, t: Duration, max_datagram_size: usize) -> f64 { method w_est_inc (line 148) | fn w_est_inc( type PriorState (line 111) | struct PriorState { function on_init (line 155) | fn on_init(_r: &mut Congestion) {} function on_packet_sent (line 157) | fn on_packet_sent( function on_packets_acked (line 200) | fn on_packets_acked( function on_packet_acked (line 211) | fn on_packet_acked( function congestion_event (line 355) | fn congestion_event( function checkpoint (line 402) | fn checkpoint(r: &mut Congestion) { function rollback (line 411) | fn rollback(r: &mut Congestion) -> bool { function state_str (line 431) | fn state_str(r: &Congestion, now: Instant) -> &'static str { function debug_fmt (line 435) | fn debug_fmt(r: &Congestion, f: &mut std::fmt::Formatter) -> std::fmt::R... function test_sender (line 454) | fn test_sender() -> TestSender { function hystart_test_sender (line 458) | fn hystart_test_sender() -> TestSender { function cubic_init (line 463) | fn cubic_init() { function cubic_slow_start (line 474) | fn cubic_slow_start() { function cubic_slow_start_multi_acks (line 492) | fn cubic_slow_start_multi_acks() { function cubic_congestion_event (line 510) | fn cubic_congestion_event() { function cubic_congestion_avoidance (line 529) | fn cubic_congestion_avoidance() { function cubic_hystart_css_to_ss (line 578) | fn cubic_hystart_css_to_ss() { function cubic_hystart_css_to_ca (line 661) | fn cubic_hystart_css_to_ca() { function cubic_spurious_congestion_event (line 735) | fn cubic_spurious_congestion_event() { function cubic_fast_convergence (line 805) | fn cubic_fast_convergence() { function cubic_perpetual_recovery_trap (line 867) | fn cubic_perpetual_recovery_trap() { function cubic_genuine_idle_epoch_shift (line 930) | fn cubic_genuine_idle_epoch_shift() { function cubic_zero_bytes_sent_no_epoch_shift (line 999) | fn cubic_zero_bytes_sent_no_epoch_shift() { FILE: quiche/src/recovery/congestion/delivery_rate.rs type Rate (line 41) | pub struct Rate { method on_packet_sent (line 84) | pub fn on_packet_sent( method update_rate_sample (line 104) | pub fn update_rate_sample(&mut self, pkt: &Acked, now: Instant) { method generate_rate_sample (line 129) | pub fn generate_rate_sample(&mut self, min_rtt: Duration) { method update_delivery_rate (line 177) | fn update_delivery_rate(&mut self, bandwidth: Bandwidth) { method update_app_limited (line 181) | pub fn update_app_limited(&mut self, v: bool) { method app_limited (line 186) | pub fn app_limited(&mut self) -> bool { method delivered (line 191) | pub fn delivered(&self) -> usize { method sample_delivery_rate (line 195) | pub fn sample_delivery_rate(&self) -> Bandwidth { method sample_is_app_limited (line 200) | pub fn sample_is_app_limited(&self) -> bool { method default (line 62) | fn default() -> Self { type RateSample (line 206) | struct RateSample { method new (line 228) | const fn new() -> Self { function sample_is_app_limited (line 263) | fn sample_is_app_limited() { function app_limited_delivery_rate (line 302) | fn app_limited_delivery_rate() { function rate_check (line 381) | fn rate_check() { function app_limited_cwnd_full (line 431) | fn app_limited_cwnd_full() { function helper_send_and_ack_packets (line 474) | fn helper_send_and_ack_packets( FILE: quiche/src/recovery/congestion/hystart.rs constant MIN_RTT_THRESH (line 40) | const MIN_RTT_THRESH: Duration = Duration::from_millis(4); constant MAX_RTT_THRESH (line 42) | const MAX_RTT_THRESH: Duration = Duration::from_millis(16); constant N_RTT_SAMPLE (line 44) | pub const N_RTT_SAMPLE: usize = 8; constant CSS_GROWTH_DIVISOR (line 46) | pub const CSS_GROWTH_DIVISOR: usize = 4; constant CSS_ROUNDS (line 48) | pub const CSS_ROUNDS: usize = 5; type Hystart (line 51) | pub struct Hystart { method fmt (line 70) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { method new (line 84) | pub fn new(enabled: bool) -> Self { method enabled (line 98) | pub fn enabled(&self) -> bool { method css_start_time (line 102) | pub fn css_start_time(&self) -> Option { method in_css (line 106) | pub fn in_css(&self) -> bool { method start_round (line 110) | pub fn start_round(&mut self, pkt_num: u64) { method on_packet_acked (line 123) | pub fn on_packet_acked( method css_cwnd_inc (line 191) | pub fn css_cwnd_inc(&self, pkt_size: usize) -> usize { method congestion_event (line 196) | pub fn congestion_event(&mut self) { function start_round (line 207) | fn start_round() { function css_cwnd_inc (line 218) | fn css_cwnd_inc() { function congestion_event (line 228) | fn congestion_event() { FILE: quiche/src/recovery/congestion/mod.rs type SsThresh (line 39) | pub struct SsThresh { method get (line 59) | fn get(&self) -> usize { method startup_exit (line 63) | fn startup_exit(&self) -> Option { method update (line 67) | fn update(&mut self, ssthresh: usize, in_css: bool) { method default (line 50) | fn default() -> Self { type Congestion (line 83) | pub struct Congestion { method from_config (line 124) | pub(crate) fn from_config(recovery_config: &RecoveryConfig) -> Self { method in_congestion_recovery (line 169) | pub(crate) fn in_congestion_recovery(&self, sent_time: Instant) -> bool { method delivery_rate (line 179) | pub(crate) fn delivery_rate(&self) -> Bandwidth { method send_quantum (line 183) | pub(crate) fn send_quantum(&self) -> usize { method congestion_window (line 187) | pub(crate) fn congestion_window(&self) -> usize { method update_app_limited (line 191) | fn update_app_limited(&mut self, v: bool) { method on_packet_sent (line 196) | pub(crate) fn on_packet_sent( method on_packets_acked (line 224) | pub(crate) fn on_packets_acked( type CongestionControlOps (line 247) | pub(crate) struct CongestionControlOps { function from (line 287) | fn from(algo: CongestionControlAlgorithm) -> Self { function ssthresh_init (line 305) | fn ssthresh_init() { function ssthresh_in_css (line 312) | fn ssthresh_in_css() { function ssthresh_in_slow_start (line 334) | fn ssthresh_in_slow_start() { FILE: quiche/src/recovery/congestion/prr.rs type PRR (line 36) | pub struct PRR { method on_packet_sent (line 51) | pub fn on_packet_sent(&mut self, sent_bytes: usize) { method congestion_event (line 57) | pub fn congestion_event(&mut self, bytes_in_flight: usize) { method on_packet_acked (line 67) | pub fn on_packet_acked( function congestion_event (line 103) | fn congestion_event() { function on_packet_sent (line 114) | fn on_packet_sent() { function on_packet_acked_prr (line 128) | fn on_packet_acked_prr() { function on_packet_acked_prr_overflow (line 155) | fn on_packet_acked_prr_overflow() { function on_packet_acked_prr_zero_in_flight (line 175) | fn on_packet_acked_prr_zero_in_flight() { function on_packet_acked_prr_ssrb (line 193) | fn on_packet_acked_prr_ssrb() { function on_packet_acked_prr_ssrb_overflow (line 220) | fn on_packet_acked_prr_ssrb_overflow() { FILE: quiche/src/recovery/congestion/recovery.rs type RecoveryEpoch (line 71) | struct RecoveryEpoch { method detect_and_remove_acked_packets (line 115) | fn detect_and_remove_acked_packets( method detect_lost_packets (line 218) | fn detect_lost_packets( method drain_acked_and_lost_packets (line 300) | fn drain_acked_and_lost_packets(&mut self, loss_thresh: Instant) { type AckedDetectionResult (line 98) | struct AckedDetectionResult { type LossDetectionResult (line 106) | struct LossDetectionResult { type LegacyRecovery (line 325) | pub struct LegacyRecovery { method new_with_config (line 364) | pub fn new_with_config(recovery_config: &RecoveryConfig) -> Self { method new (line 406) | pub fn new(config: &crate::Config) -> Self { method loss_time_and_space (line 410) | fn loss_time_and_space(&self) -> (Option, Epoch) { method pto_time_and_space (line 426) | fn pto_time_and_space( method set_loss_detection_timer (line 474) | fn set_loss_detection_timer( method detect_lost_packets (line 499) | fn detect_lost_packets( method fmt (line 1051) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { method should_elicit_ack (line 545) | fn should_elicit_ack(&self, epoch: Epoch) -> bool { method next_acked_frame (line 551) | fn next_acked_frame(&mut self, epoch: Epoch) -> Option { method next_lost_frame (line 555) | fn next_lost_frame(&mut self, epoch: Epoch) -> Option { method get_largest_acked_on_epoch (line 559) | fn get_largest_acked_on_epoch(&self, epoch: Epoch) -> Option { method has_lost_frames (line 563) | fn has_lost_frames(&self, epoch: Epoch) -> bool { method loss_probes (line 567) | fn loss_probes(&self, epoch: Epoch) -> usize { method inc_loss_probes (line 572) | fn inc_loss_probes(&mut self, epoch: Epoch) { method ping_sent (line 576) | fn ping_sent(&mut self, epoch: Epoch) { method on_packet_sent (line 581) | fn on_packet_sent( method get_packet_send_time (line 630) | fn get_packet_send_time(&self, now: Instant) -> Instant { method on_ack_received (line 635) | fn on_ack_received( method on_loss_detection_timeout (line 723) | fn on_loss_detection_timeout( method on_pkt_num_space_discarded (line 797) | fn on_pkt_num_space_discarded( method on_path_change (line 824) | fn on_path_change( method loss_detection_timer (line 831) | fn loss_detection_timer(&self) -> Option { method cwnd (line 835) | fn cwnd(&self) -> usize { method cwnd_available (line 839) | fn cwnd_available(&self) -> usize { method rtt (line 850) | fn rtt(&self) -> Duration { method min_rtt (line 854) | fn min_rtt(&self) -> Option { method max_rtt (line 858) | fn max_rtt(&self) -> Option { method rttvar (line 862) | fn rttvar(&self) -> Duration { method pto (line 866) | fn pto(&self) -> Duration { method delivery_rate (line 871) | fn delivery_rate(&self) -> Bandwidth { method max_bandwidth (line 875) | fn max_bandwidth(&self) -> Option { method startup_exit (line 881) | fn startup_exit(&self) -> Option { method max_datagram_size (line 885) | fn max_datagram_size(&self) -> usize { method pmtud_update_max_datagram_size (line 889) | fn pmtud_update_max_datagram_size(&mut self, new_max_datagram_size: usiz... method update_max_datagram_size (line 903) | fn update_max_datagram_size(&mut self, new_max_datagram_size: usize) { method sent_packets_len (line 910) | fn sent_packets_len(&self, epoch: Epoch) -> usize { method in_flight_count (line 915) | fn in_flight_count(&self, epoch: Epoch) -> usize { method bytes_in_flight (line 919) | fn bytes_in_flight(&self) -> usize { method bytes_in_flight_duration (line 923) | fn bytes_in_flight_duration(&self) -> Duration { method pacing_rate (line 928) | fn pacing_rate(&self) -> u64 { method pto_count (line 933) | fn pto_count(&self) -> u32 { method pkt_thresh (line 938) | fn pkt_thresh(&self) -> Option { method time_thresh (line 943) | fn time_thresh(&self) -> f64 { method lost_spurious_count (line 948) | fn lost_spurious_count(&self) -> usize { method detect_lost_packets_for_test (line 953) | fn detect_lost_packets_for_test( method on_app_limited (line 960) | fn on_app_limited(&mut self) { method largest_sent_pkt_num_on_path (line 966) | fn largest_sent_pkt_num_on_path(&self, epoch: Epoch) -> Option { method app_limited (line 971) | fn app_limited(&self) -> bool { method update_app_limited (line 975) | fn update_app_limited(&mut self, v: bool) { method delivery_rate_update_app_limited (line 980) | fn delivery_rate_update_app_limited(&mut self, v: bool) { method update_max_ack_delay (line 985) | fn update_max_ack_delay(&mut self, max_ack_delay: Duration) { method state_str (line 990) | fn state_str(&self, now: Instant) -> &'static str { method get_updated_qlog_event_data (line 995) | fn get_updated_qlog_event_data(&mut self) -> Option { method get_updated_qlog_cc_state (line 1014) | fn get_updated_qlog_cc_state( method send_quantum (line 1026) | fn send_quantum(&self) -> usize { method get_next_release_time (line 1030) | fn get_next_release_time(&self) -> ReleaseDecision { method gcongestion_enabled (line 1037) | fn gcongestion_enabled(&self) -> bool { method lost_count (line 1041) | fn lost_count(&self) -> usize { method bytes_lost (line 1045) | fn bytes_lost(&self) -> u64 { type Acked (line 1080) | pub struct Acked { FILE: quiche/src/recovery/congestion/reno.rs function on_init (line 55) | pub fn on_init(_r: &mut Congestion) {} function on_packet_sent (line 57) | pub fn on_packet_sent( function on_packets_acked (line 63) | fn on_packets_acked( function on_packet_acked (line 72) | fn on_packet_acked( function congestion_event (line 109) | fn congestion_event( function checkpoint (line 139) | fn checkpoint(_r: &mut Congestion) {} function rollback (line 141) | fn rollback(_r: &mut Congestion) -> bool { function state_str (line 146) | pub fn state_str(r: &Congestion, now: Instant) -> &'static str { function debug_fmt (line 158) | fn debug_fmt(_r: &Congestion, _f: &mut std::fmt::Formatter) -> std::fmt:... function test_sender (line 174) | fn test_sender() -> TestSender { function reno_init (line 179) | fn reno_init() { function reno_slow_start (line 190) | fn reno_slow_start() { function reno_slow_start_multi_acks (line 208) | fn reno_slow_start_multi_acks() { function reno_congestion_event (line 226) | fn reno_congestion_event() { function reno_congestion_avoidance (line 240) | fn reno_congestion_avoidance() { FILE: quiche/src/recovery/congestion/test_sender.rs type TestSender (line 41) | pub(crate) struct TestSender { method new (line 52) | pub(crate) fn new(algo: CongestionControlAlgorithm, hystart: bool) -> ... method send_packet (line 71) | pub(crate) fn send_packet(&mut self, bytes: usize) { method inject_ack (line 106) | pub(crate) fn inject_ack(&mut self, acked: Acked, now: Instant) { method ack_n_packets (line 117) | pub(crate) fn ack_n_packets(&mut self, n: usize, bytes: usize) { method lose_n_packets (line 148) | pub(crate) fn lose_n_packets( method update_rtt (line 179) | pub(crate) fn update_rtt(&mut self, rtt: Duration) { method advance_time (line 184) | pub(crate) fn advance_time(&mut self, period: Duration) { type Target (line 190) | type Target = Congestion; method deref (line 192) | fn deref(&self) -> &Self::Target { method deref_mut (line 198) | fn deref_mut(&mut self) -> &mut Self::Target { FILE: quiche/src/recovery/gcongestion/bbr/bandwidth_sampler.rs type ConnectionStateMap (line 42) | struct ConnectionStateMap { method default (line 47) | fn default() -> Self { function insert (line 55) | fn insert(&mut self, pkt_num: u64, val: T) { function take (line 63) | fn take(&mut self, pkt_num: u64) -> Option { function peek (line 85) | fn peek(&self, pkt_num: u64) -> Option<&T> { function remove_obsolete (line 93) | fn remove_obsolete(&mut self, least_acked: u64) { type BandwidthSampler (line 105) | pub struct BandwidthSampler { method new (line 489) | pub(crate) fn new( method is_app_limited (line 521) | pub(crate) fn is_app_limited(&self) -> bool { method on_packet_sent (line 525) | pub(crate) fn on_packet_sent( method on_packet_neutered (line 568) | pub(crate) fn on_packet_neutered(&mut self, packet_number: u64) { method on_congestion_event (line 574) | pub(crate) fn on_congestion_event( method on_packet_lost (line 679) | fn on_packet_lost( method on_ack_event_end (line 693) | fn on_ack_event_end( method on_packet_acknowledged (line 728) | fn on_packet_acknowledged( method choose_a0_point (line 821) | fn choose_a0_point( method total_bytes_acked (line 843) | pub(crate) fn total_bytes_acked(&self) -> usize { method total_bytes_lost (line 847) | pub(crate) fn total_bytes_lost(&self) -> usize { method reset_max_ack_height_tracker (line 852) | pub(crate) fn reset_max_ack_height_tracker( method max_ack_height (line 858) | pub(crate) fn max_ack_height(&self) -> Option { method on_app_limited (line 865) | pub(crate) fn on_app_limited(&mut self) { method remove_obsolete_packets (line 870) | pub(crate) fn remove_obsolete_packets(&mut self, least_acked: u64) { type SendTimeState (line 138) | pub struct SendTimeState { type ExtraAckedEvent (line 162) | struct ExtraAckedEvent { type BandwidthSample (line 174) | struct BandwidthSample { type AckPoint (line 194) | struct AckPoint { type RecentAckPoints (line 202) | struct RecentAckPoints { method update (line 456) | fn update(&mut self, ack_time: Instant, total_bytes_acked: usize) { method clear (line 469) | fn clear(&mut self) { method most_recent (line 473) | fn most_recent(&self) -> Option { method less_recent_point (line 477) | fn less_recent_point(&self, choose_a0_point_fix: bool) -> Option Self { method reset (line 303) | fn reset(&mut self, new_height: usize, new_time: usize) { method update (line 316) | fn update( type CongestionEventSample (line 256) | pub(crate) struct CongestionEventSample { constant REGULAR_PACKET_SIZE (line 888) | const REGULAR_PACKET_SIZE: usize = 1280; type TestSender (line 890) | struct TestSender { method new (line 901) | fn new(overestimate_avoidance: bool, choose_a0_point_fix: bool) -> Self { method get_packet_size (line 918) | fn get_packet_size(&self, pkt_num: u64) -> usize { method get_packet_time (line 926) | fn get_packet_time(&self, pkt_num: u64) -> Instant { method number_of_tracked_packets (line 934) | fn number_of_tracked_packets(&self) -> usize { method make_acked_packet (line 938) | fn make_acked_packet(&self, pkt_num: u64) -> Acked { method make_lost_packet (line 944) | fn make_lost_packet(&self, pkt_num: u64) -> Lost { method ack_packet (line 952) | fn ack_packet(&mut self, pkt_num: u64) -> BandwidthSample { method lose_packet (line 980) | fn lose_packet(&mut self, pkt_num: u64) -> SendTimeState { method on_congestion_event (line 999) | fn on_congestion_event( method send_packet (line 1036) | fn send_packet( method advance_time (line 1052) | fn advance_time(&mut self, delta: Duration) { method send_40_and_ack_first_20 (line 1058) | fn send_40_and_ack_first_20(&mut self, time_between_packets: Duration) { function send_and_wait (line 1076) | fn send_and_wait( function send_time_state (line 1111) | fn send_time_state( function send_paced (line 1210) | fn send_paced( function send_with_losses (line 1236) | fn send_with_losses( function not_congestion_controlled (line 1284) | fn not_congestion_controlled( function compressed_ack (line 1343) | fn compressed_ack( function reordered_ack (line 1376) | fn reordered_ack( function app_limited (line 1411) | fn app_limited( function first_round_trip (line 1494) | fn first_round_trip( function remove_obsolete_packets (line 1532) | fn remove_obsolete_packets( function neuter_packet (line 1555) | fn neuter_packet( function congestion_event_sample_default_values (line 1595) | fn congestion_event_sample_default_values() { function two_acked_packets_per_event (line 1606) | fn two_acked_packets_per_event( function lose_every_other_packet (line 1648) | fn lose_every_other_packet( function ack_height_respect_bandwidth_estimate_upper_bound (line 1695) | fn ack_height_respect_bandwidth_estimate_upper_bound( type TestTracker (line 1746) | struct TestTracker { method new (line 1757) | fn new(overestimate_avoidance: bool) -> Self { method aggregation_episode (line 1779) | fn aggregation_episode( method round_trip_count (line 1838) | fn round_trip_count(&self) -> usize { function test_inner (line 1843) | fn test_inner( function very_aggregated_large_acks (line 1876) | fn very_aggregated_large_acks( function very_aggregated_small_acks (line 1883) | fn very_aggregated_small_acks( function somewhat_aggregated_large_acks (line 1890) | fn somewhat_aggregated_large_acks( function somewhat_aggregated_small_acks (line 1897) | fn somewhat_aggregated_small_acks( function not_aggregated (line 1904) | fn not_aggregated(#[values(false, true)] overestimate_avoidance: bool) { function start_new_epoch_after_a_full_round (line 1916) | fn start_new_epoch_after_a_full_round( FILE: quiche/src/recovery/gcongestion/bbr/windowed_filter.rs type Sample (line 35) | struct Sample { type WindowedFilter (line 41) | pub struct WindowedFilter { function new (line 52) | pub fn new(window_length: D) -> Self { function reset (line 59) | pub fn reset(&mut self, new_sample: T, new_time: I) { function get_best (line 68) | pub fn get_best(&self) -> Option { function get_second_best (line 72) | pub fn get_second_best(&self) -> Option { function get_third_best (line 76) | pub fn get_third_best(&self) -> Option { function clear (line 80) | pub fn clear(&mut self) { function update (line 84) | pub fn update(&mut self, new_sample: T, new_time: I) { FILE: quiche/src/recovery/gcongestion/bbr2.rs constant MAX_MODE_CHANGES_PER_CONGESTION_EVENT (line 57) | const MAX_MODE_CHANGES_PER_CONGESTION_EVENT: usize = 4; type Params (line 60) | struct Params { method with_overrides (line 213) | fn with_overrides(mut self, custom_bbr_settings: &BbrParams) -> Self { constant DEFAULT_PARAMS (line 264) | const DEFAULT_PARAMS: Params = Params { type BwLoMode (line 353) | enum BwLoMode { method from (line 378) | fn from(value: BbrBwLoReductionStrategy) -> Self { type Limits (line 391) | struct Limits { function min (line 397) | fn min(&self) -> T { function apply_limits (line 401) | fn apply_limits(&self, val: T) -> T { function no_greater_than (line 407) | pub(crate) fn no_greater_than(val: T) -> Self { function initial_pacing_rate (line 415) | fn initial_pacing_rate( type BBRv2 (line 426) | pub(crate) struct BBRv2 { method new (line 500) | pub fn new( method time_sent_set_to_now (line 530) | pub fn time_sent_set_to_now(&self) -> bool { method on_exit_quiescence (line 534) | fn on_exit_quiescence(&mut self, now: Instant) { method get_target_congestion_window (line 544) | fn get_target_congestion_window(&self, gain: f32) -> usize { method update_pacing_rate (line 551) | fn update_pacing_rate(&mut self, bytes_acked: usize) { method update_congestion_window (line 603) | fn update_congestion_window(&mut self, bytes_acked: usize) { method on_enter_quiescence (line 623) | fn on_enter_quiescence(&mut self, time: Instant) { method target_bytes_inflight (line 627) | fn target_bytes_inflight(&self) -> usize { method send_rate (line 634) | pub(crate) fn send_rate(&self) -> Option { method ack_rate (line 639) | pub(crate) fn ack_rate(&self) -> Option { type BBRv2CongestionEvent (line 443) | struct BBRv2CongestionEvent { method new (line 479) | fn new( method state_str (line 646) | fn state_str(&self) -> &'static str { method get_congestion_window (line 650) | fn get_congestion_window(&self) -> usize { method get_congestion_window_in_packets (line 654) | fn get_congestion_window_in_packets(&self) -> usize { method can_send (line 658) | fn can_send(&self, bytes_in_flight: usize) -> bool { method on_packet_sent (line 662) | fn on_packet_sent( method on_congestion_event (line 680) | fn on_congestion_event( method on_packet_neutered (line 738) | fn on_packet_neutered(&mut self, packet_number: u64) { method on_retransmission_timeout (line 743) | fn on_retransmission_timeout(&mut self, _packets_retransmitted: bool) {} method on_connection_migration (line 745) | fn on_connection_migration(&mut self) {} method is_in_recovery (line 747) | fn is_in_recovery(&self) -> bool { method is_cwnd_limited (line 752) | fn is_cwnd_limited(&self, bytes_in_flight: usize) -> bool { method pacing_rate (line 756) | fn pacing_rate( method bandwidth_estimate (line 762) | fn bandwidth_estimate(&self, _rtt_stats: &RttStats) -> Bandwidth { method max_bandwidth (line 767) | fn max_bandwidth(&self) -> Bandwidth { method update_mss (line 771) | fn update_mss(&mut self, new_mss: usize) { method on_app_limited (line 787) | fn on_app_limited(&mut self, bytes_in_flight: usize) { method limit_cwnd (line 796) | fn limit_cwnd(&mut self, max_cwnd: usize) { function update_mss (line 808) | fn update_mss(#[values(false, true)] scale_pacing_rate_by_mss: bool) { FILE: quiche/src/recovery/gcongestion/bbr2/drain.rs type Drain (line 46) | pub(super) struct Drain { method into_probe_bw (line 107) | fn into_probe_bw( method drain_target (line 117) | fn drain_target(&self) -> usize { method state_str (line 53) | fn state_str(&self) -> &'static str { method is_probing_for_bandwidth (line 57) | fn is_probing_for_bandwidth(&self) -> bool { method on_congestion_event (line 61) | fn on_congestion_event( method get_cwnd_limits (line 85) | fn get_cwnd_limits(&self, _params: &Params) -> Limits { method on_exit_quiescence (line 92) | fn on_exit_quiescence( method enter (line 98) | fn enter( method leave (line 103) | fn leave(&mut self, _: Instant, _: Option<&BBRv2CongestionEvent>) {} FILE: quiche/src/recovery/gcongestion/bbr2/mode.rs type CyclePhase (line 49) | pub(super) enum CyclePhase { method pacing_gain (line 59) | pub(super) fn pacing_gain(&self, params: &Params) -> f32 { method cwnd_gain (line 67) | pub(super) fn cwnd_gain(&self, params: &Params) -> f32 { type Cycle (line 76) | pub(super) struct Cycle { method default (line 97) | fn default() -> Self { type ModeImpl (line 121) | pub(super) trait ModeImpl: Debug { method state_str (line 123) | fn state_str(&self) -> &'static str; method enter (line 125) | fn enter( method leave (line 130) | fn leave( method is_probing_for_bandwidth (line 134) | fn is_probing_for_bandwidth(&self) -> bool; method on_congestion_event (line 137) | fn on_congestion_event( method get_cwnd_limits (line 145) | fn get_cwnd_limits(&self, params: &Params) -> Limits; method on_exit_quiescence (line 147) | fn on_exit_quiescence( method state_str (line 251) | fn state_str(&self) -> &'static str { method enter (line 255) | fn enter( method leave (line 261) | fn leave(&mut self, _: Instant, _: Option<&BBRv2CongestionEvent>) { method is_probing_for_bandwidth (line 265) | fn is_probing_for_bandwidth(&self) -> bool { method on_congestion_event (line 269) | fn on_congestion_event( method get_cwnd_limits (line 277) | fn get_cwnd_limits(&self, _params: &Params) -> Limits { method on_exit_quiescence (line 281) | fn on_exit_quiescence( type Mode (line 154) | pub(super) enum Mode { method startup (line 169) | pub(super) fn startup(model: BBRv2NetworkModel) -> Self { method drain (line 173) | pub(super) fn drain(model: BBRv2NetworkModel) -> Self { method probe_bw (line 180) | pub(super) fn probe_bw(model: BBRv2NetworkModel, cycle: Cycle) -> Self { method probe_rtt (line 184) | pub(super) fn probe_rtt(model: BBRv2NetworkModel, cycle: Cycle) -> Self { method do_on_congestion_event (line 189) | pub(super) fn do_on_congestion_event( method do_on_exit_quiescence (line 215) | pub(super) fn do_on_exit_quiescence( method network_model (line 225) | pub fn network_model(&self) -> &BBRv2NetworkModel { method network_model_mut (line 235) | pub fn network_model_mut(&mut self) -> &mut BBRv2NetworkModel { method default (line 163) | fn default() -> Self { type Placeholder (line 247) | pub(super) struct Placeholder {} function cycle_params (line 295) | fn cycle_params() { FILE: quiche/src/recovery/gcongestion/bbr2/network_model.rs constant DEFAULT_MSS (line 44) | pub(super) const DEFAULT_MSS: usize = 1300; type RoundTripCounter (line 47) | struct RoundTripCounter { method on_packet_sent (line 56) | fn on_packet_sent(&mut self, packet_number: u64) { method on_packets_acked (line 61) | fn on_packets_acked(&mut self, last_acked_packet: u64) -> bool { method restart_round (line 72) | fn restart_round(&mut self) { type MinRttFilter (line 78) | struct MinRttFilter { method get (line 84) | fn get(&self) -> Duration { method get_timestamps (line 88) | fn get_timestamps(&self) -> Instant { method update (line 92) | fn update(&mut self, sample_rtt: Duration, now: Instant) { method force_update (line 99) | fn force_update(&mut self, sample_rtt: Duration, now: Instant) { type MaxBandwidthFilter (line 106) | struct MaxBandwidthFilter { method get (line 111) | fn get(&self) -> Bandwidth { method update (line 115) | fn update(&mut self, sample: Bandwidth) { method advance (line 119) | fn advance(&mut self) { type BBRv2NetworkModel (line 133) | pub(super) struct BBRv2NetworkModel { method new (line 197) | pub(super) fn new(params: &Params, initial_rtt: Duration) -> Self { method send_rate (line 245) | pub(super) fn send_rate(&self) -> Option { method ack_rate (line 250) | pub(super) fn ack_rate(&self) -> Option { method max_ack_height (line 254) | pub(super) fn max_ack_height(&self) -> usize { method bandwidth_estimate (line 258) | pub(super) fn bandwidth_estimate(&self) -> Bandwidth { method bdp (line 265) | pub(super) fn bdp(&self, bandwidth: Bandwidth, gain: f32) -> usize { method bdp1 (line 269) | pub(super) fn bdp1(&self, bandwidth: Bandwidth) -> usize { method bdp0 (line 273) | pub(super) fn bdp0(&self) -> usize { method min_rtt (line 277) | pub(super) fn min_rtt(&self) -> Duration { method min_rtt_timestamp (line 281) | pub(super) fn min_rtt_timestamp(&self) -> Instant { method max_bandwidth (line 285) | pub(super) fn max_bandwidth(&self) -> Bandwidth { method on_packet_sent (line 289) | pub(super) fn on_packet_sent( method on_congestion_event_start (line 312) | pub(super) fn on_congestion_event_start( method on_packet_neutered (line 427) | pub(super) fn on_packet_neutered(&mut self, packet_number: u64) { method adapt_lower_bounds (line 431) | fn adapt_lower_bounds( method on_congestion_event_finish (line 552) | pub(super) fn on_congestion_event_finish( method maybe_expire_min_rtt (line 564) | pub(super) fn maybe_expire_min_rtt( method is_inflight_too_high (line 585) | pub(super) fn is_inflight_too_high( method restart_round_early (line 616) | pub(super) fn restart_round_early(&mut self) { method on_new_round (line 622) | fn on_new_round(&mut self) { method has_bandwidth_growth (line 630) | pub(super) fn has_bandwidth_growth( method queueing_threshold_extra_bytes (line 664) | pub(super) fn queueing_threshold_extra_bytes(&self) -> usize { method check_persistent_queue (line 669) | pub(super) fn check_persistent_queue( method max_bytes_delivered_in_round (line 688) | pub(super) fn max_bytes_delivered_in_round(&self) -> usize { method total_bytes_acked (line 692) | pub(super) fn total_bytes_acked(&self) -> usize { method total_bytes_lost (line 696) | pub(super) fn total_bytes_lost(&self) -> usize { method round_trip_count (line 700) | fn round_trip_count(&self) -> usize { method full_bandwidth_reached (line 704) | pub(super) fn full_bandwidth_reached(&self) -> bool { method set_full_bandwidth_reached (line 708) | pub(super) fn set_full_bandwidth_reached(&mut self) { method pacing_gain (line 712) | pub(super) fn pacing_gain(&self) -> f32 { method set_pacing_gain (line 716) | pub(super) fn set_pacing_gain(&mut self, pacing_gain: f32) { method cwnd_gain (line 720) | pub(super) fn cwnd_gain(&self) -> f32 { method set_cwnd_gain (line 724) | pub(super) fn set_cwnd_gain(&mut self, cwnd_gain: f32) { method inflight_hi (line 728) | pub(super) fn inflight_hi(&self) -> usize { method inflight_hi_with_headroom (line 732) | pub(super) fn inflight_hi_with_headroom(&self, params: &Params) -> usi... method set_inflight_hi (line 738) | pub(super) fn set_inflight_hi(&mut self, new_inflight_hi: usize) { method inflight_hi_default (line 742) | pub(super) fn inflight_hi_default(&self) -> usize { method inflight_lo (line 746) | pub(super) fn inflight_lo(&self) -> usize { method clear_inflight_lo (line 750) | pub(super) fn clear_inflight_lo(&mut self) { method cap_inflight_lo (line 754) | pub(super) fn cap_inflight_lo(&mut self, cap: usize) { method clear_bandwidth_lo (line 760) | pub(super) fn clear_bandwidth_lo(&mut self) { method advance_max_bandwidth_filter (line 764) | pub(super) fn advance_max_bandwidth_filter(&mut self) { method postpone_min_rtt_timestamp (line 768) | pub(super) fn postpone_min_rtt_timestamp(&mut self, duration: Duration) { method on_app_limited (line 773) | pub(super) fn on_app_limited(&mut self) { method loss_events_in_round (line 777) | pub(super) fn loss_events_in_round(&self) -> usize { method rounds_with_queueing (line 781) | pub(super) fn rounds_with_queueing(&self) -> usize { FILE: quiche/src/recovery/gcongestion/bbr2/probe_bw.rs type ProbeBW (line 51) | pub(super) struct ProbeBW { method enter_probe_down (line 201) | fn enter_probe_down( method enter_probe_cruise (line 235) | fn enter_probe_cruise(&mut self, now: Instant) { method enter_probe_refill (line 249) | fn enter_probe_refill(&mut self, probe_up_rounds: usize, now: Instant) { method enter_probe_up (line 270) | fn enter_probe_up(&mut self, now: Instant, cwnd: usize) { method exit_probe_down (line 281) | fn exit_probe_down(&mut self) { method update_probe_down (line 288) | fn update_probe_down( method update_probe_cruise (line 347) | fn update_probe_cruise( method update_probe_refill (line 366) | fn update_probe_refill( method update_probe_up (line 384) | fn update_probe_up( method is_time_to_probe_bandwidth (line 448) | fn is_time_to_probe_bandwidth( method maybe_adapt_upper_bounds (line 471) | fn maybe_adapt_upper_bounds( method has_cycle_lasted (line 531) | fn has_cycle_lasted( method has_phase_lasted (line 537) | fn has_phase_lasted( method is_time_to_probe_for_reno_coexistence (line 543) | fn is_time_to_probe_for_reno_coexistence( method has_stayed_long_enough_in_probe_down (line 570) | fn has_stayed_long_enough_in_probe_down( method raise_inflight_high_slope (line 582) | fn raise_inflight_high_slope(&mut self, cwnd: usize) { method probe_inflight_high_upward (line 592) | fn probe_inflight_high_upward( method into_probe_rtt (line 636) | fn into_probe_rtt( type AdaptUpperBoundsResult (line 57) | enum AdaptUpperBoundsResult { method state_str (line 66) | fn state_str(&self) -> &'static str { method enter (line 76) | fn enter( method on_congestion_event (line 94) | fn on_congestion_event( method get_cwnd_limits (line 159) | fn get_cwnd_limits(&self, params: &Params) -> Limits { method is_probing_for_bandwidth (line 180) | fn is_probing_for_bandwidth(&self) -> bool { method on_exit_quiescence (line 185) | fn on_exit_quiescence( method leave (line 193) | fn leave( function probe_upward (line 656) | fn probe_upward(#[values(100, 10_000, 65_536, 300_000)] step: usize) { FILE: quiche/src/recovery/gcongestion/bbr2/probe_rtt.rs type ProbeRTT (line 46) | pub(super) struct ProbeRTT { method new (line 53) | pub(super) fn new(model: BBRv2NetworkModel, cycle: Cycle) -> Self { method into_probe_bw (line 61) | fn into_probe_bw( method inflight_target (line 71) | fn inflight_target(&self, params: &Params) -> usize { method state_str (line 81) | fn state_str(&self) -> &'static str { method is_probing_for_bandwidth (line 85) | fn is_probing_for_bandwidth(&self) -> bool { method on_congestion_event (line 89) | fn on_congestion_event( method get_cwnd_limits (line 116) | fn get_cwnd_limits(&self, params: &Params) -> Limits { method on_exit_quiescence (line 126) | fn on_exit_quiescence( method enter (line 137) | fn enter( method leave (line 146) | fn leave( function probe_rtt_params (line 161) | fn probe_rtt_params() { FILE: quiche/src/recovery/gcongestion/bbr2/startup.rs type Startup (line 47) | pub(super) struct Startup { method into_drain (line 160) | fn into_drain( method check_excessive_losses (line 170) | fn check_excessive_losses( method state_str (line 53) | fn state_str(&self) -> &'static str { method is_probing_for_bandwidth (line 57) | fn is_probing_for_bandwidth(&self) -> bool { method on_congestion_event (line 61) | fn on_congestion_event( method get_cwnd_limits (line 130) | fn get_cwnd_limits(&self, _params: &Params) -> Limits { method on_exit_quiescence (line 137) | fn on_exit_quiescence( method enter (line 143) | fn enter( method leave (line 150) | fn leave( FILE: quiche/src/recovery/gcongestion/mod.rs type Lost (line 43) | pub struct Lost { type Acked (line 49) | pub struct Acked { type CongestionControl (line 54) | pub(super) trait CongestionControl: Debug { method state_str (line 58) | fn state_str(&self) -> &'static str; method get_congestion_window (line 63) | fn get_congestion_window(&self) -> usize; method get_congestion_window_in_packets (line 68) | fn get_congestion_window_in_packets(&self) -> usize; method can_send (line 72) | fn can_send(&self, bytes_in_flight: usize) -> bool; method on_packet_sent (line 78) | fn on_packet_sent( method on_packet_neutered (line 84) | fn on_packet_neutered(&mut self, _packet_number: u64) {} method on_congestion_event (line 93) | fn on_congestion_event( method on_retransmission_timeout (line 102) | fn on_retransmission_timeout(&mut self, packets_retransmitted: bool); method on_connection_migration (line 106) | fn on_connection_migration(&mut self); method limit_cwnd (line 109) | fn limit_cwnd(&mut self, _max_cwnd: usize) {} method is_in_recovery (line 111) | fn is_in_recovery(&self) -> bool; method is_cwnd_limited (line 114) | fn is_cwnd_limited(&self, bytes_in_flight: usize) -> bool; method pacing_rate (line 116) | fn pacing_rate( method bandwidth_estimate (line 120) | fn bandwidth_estimate(&self, rtt_stats: &RttStats) -> Bandwidth; method max_bandwidth (line 122) | fn max_bandwidth(&self) -> Bandwidth; method update_mss (line 124) | fn update_mss(&mut self, new_mss: usize); method on_app_limited (line 126) | fn on_app_limited(&mut self, _bytes_in_flight: usize) {} method ssthresh (line 129) | fn ssthresh(&self) -> Option { type BbrParams (line 145) | pub struct BbrParams { type BbrBwLoReductionStrategy (line 244) | pub enum BbrBwLoReductionStrategy { type Err (line 260) | type Err = crate::Error; method from_str (line 265) | fn from_str(name: &str) -> Result { FILE: quiche/src/recovery/gcongestion/pacer.rs constant LUMPY_PACING_CWND_FRACTION (line 46) | const LUMPY_PACING_CWND_FRACTION: f64 = 0.25; constant LUMPY_PACING_SIZE (line 50) | const LUMPY_PACING_SIZE: usize = 2; constant LUMPY_PACING_MIN_BANDWIDTH_KBPS (line 54) | const LUMPY_PACING_MIN_BANDWIDTH_KBPS: Bandwidth = constant INITIAL_UNPACED_BURST (line 59) | const INITIAL_UNPACED_BURST: usize = 10; type Pacer (line 62) | pub struct Pacer { method new (line 86) | pub(crate) fn new( method get_next_release_time (line 101) | pub fn get_next_release_time(&self) -> ReleaseDecision { method state_str (line 117) | pub fn state_str(&self) -> &'static str { method get_congestion_window (line 121) | pub fn get_congestion_window(&self) -> usize { method on_packet_sent (line 125) | pub fn on_packet_sent( method on_congestion_event (line 198) | pub fn on_congestion_event( method on_packet_neutered (line 235) | pub fn on_packet_neutered(&mut self, packet_number: u64) { method on_retransmission_timeout (line 239) | pub fn on_retransmission_timeout(&mut self, packets_retransmitted: boo... method pacing_rate (line 243) | pub fn pacing_rate( method bandwidth_estimate (line 253) | pub fn bandwidth_estimate(&self, rtt_stats: &RttStats) -> Bandwidth { method max_bandwidth (line 257) | pub fn max_bandwidth(&self) -> Bandwidth { method send_rate (line 262) | pub fn send_rate(&self) -> Option { method ack_rate (line 267) | pub fn ack_rate(&self) -> Option { method on_app_limited (line 271) | pub fn on_app_limited(&mut self, bytes_in_flight: usize) { method update_mss (line 276) | pub fn update_mss(&mut self, new_mss: usize) { method ssthresh (line 281) | pub fn ssthresh(&self) -> Option { method is_app_limited (line 286) | pub fn is_app_limited(&self, bytes_in_flight: usize) -> bool { method is_cwnd_limited (line 291) | fn is_cwnd_limited(&self, bytes_in_flight: usize) -> bool { FILE: quiche/src/recovery/gcongestion/recovery.rs constant MAX_WINDOW_PACKETS (line 50) | const MAX_WINDOW_PACKETS: usize = 20_000; type SentPacket (line 53) | struct SentPacket { type SentStatus (line 59) | enum SentStatus { method ack (line 74) | fn ack(&mut self) -> Self { method lose (line 78) | fn lose(&mut self) -> Self { type RecoveryEpoch (line 88) | struct RecoveryEpoch { method discard (line 133) | fn discard(&mut self, cc: &mut Pacer) -> usize { method detect_and_remove_acked_packets (line 167) | fn detect_and_remove_acked_packets( method detect_and_remove_lost_packets (line 262) | fn detect_and_remove_lost_packets( method drain_acked_and_lost_packets (line 335) | fn drain_acked_and_lost_packets(&mut self) { method least_unacked (line 345) | fn least_unacked(&self) -> u64 { type AckedDetectionResult (line 115) | struct AckedDetectionResult { type LossDetectionResult (line 122) | struct LossDetectionResult { type LossThreshold (line 360) | struct LossThreshold { method new (line 376) | fn new(recovery_config: &RecoveryConfig) -> Self { method pkt_thresh (line 390) | fn pkt_thresh(&self) -> Option { method time_thresh (line 394) | fn time_thresh(&self) -> f64 { method on_spurious_loss (line 398) | fn on_spurious_loss(&mut self, new_pkt_thresh: u64) { type GRecovery (line 426) | pub struct GRecovery { method send_rate (line 473) | fn send_rate(&self) -> Bandwidth { method ack_rate (line 478) | fn ack_rate(&self) -> Bandwidth { method new (line 482) | pub fn new(recovery_config: &RecoveryConfig) -> Option { method detect_and_remove_lost_packets (line 536) | fn detect_and_remove_lost_packets( method loss_time_and_space (line 565) | fn loss_time_and_space(&self) -> (Option, packet::Epoch) { method pto_time_and_space (line 581) | fn pto_time_and_space( method set_loss_detection_timer (line 630) | fn set_loss_detection_timer( method fmt (line 1201) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { method lost_count (line 655) | fn lost_count(&self) -> usize { method bytes_lost (line 659) | fn bytes_lost(&self) -> u64 { method should_elicit_ack (line 663) | fn should_elicit_ack(&self, epoch: packet::Epoch) -> bool { method next_acked_frame (line 669) | fn next_acked_frame(&mut self, epoch: packet::Epoch) -> Option Option Option { method has_lost_frames (line 681) | fn has_lost_frames(&self, epoch: packet::Epoch) -> bool { method loss_probes (line 685) | fn loss_probes(&self, epoch: packet::Epoch) -> usize { method inc_loss_probes (line 690) | fn inc_loss_probes(&mut self, epoch: packet::Epoch) { method ping_sent (line 694) | fn ping_sent(&mut self, epoch: packet::Epoch) { method on_packet_sent (line 699) | fn on_packet_sent( method get_packet_send_time (line 767) | fn get_packet_send_time(&self, now: Instant) -> Instant { method on_ack_received (line 772) | fn on_ack_received( method on_loss_detection_timeout (line 859) | fn on_loss_detection_timeout( method on_pkt_num_space_discarded (line 960) | fn on_pkt_num_space_discarded( method on_path_change (line 970) | fn on_path_change( method loss_detection_timer (line 979) | fn loss_detection_timer(&self) -> Option { method cwnd (line 983) | fn cwnd(&self) -> usize { method cwnd_available (line 987) | fn cwnd_available(&self) -> usize { method rtt (line 996) | fn rtt(&self) -> Duration { method min_rtt (line 1000) | fn min_rtt(&self) -> Option { method max_rtt (line 1004) | fn max_rtt(&self) -> Option { method rttvar (line 1008) | fn rttvar(&self) -> Duration { method pto (line 1012) | fn pto(&self) -> Duration { method delivery_rate (line 1018) | fn delivery_rate(&self) -> Bandwidth { method max_bandwidth (line 1022) | fn max_bandwidth(&self) -> Option { method startup_exit (line 1027) | fn startup_exit(&self) -> Option { method max_datagram_size (line 1031) | fn max_datagram_size(&self) -> usize { method pmtud_update_max_datagram_size (line 1035) | fn pmtud_update_max_datagram_size(&mut self, new_max_datagram_size: usiz... method update_max_datagram_size (line 1040) | fn update_max_datagram_size(&mut self, new_max_datagram_size: usize) { method on_app_limited (line 1047) | fn on_app_limited(&mut self) { method sent_packets_len (line 1052) | fn sent_packets_len(&self, epoch: packet::Epoch) -> usize { method in_flight_count (line 1057) | fn in_flight_count(&self, epoch: packet::Epoch) -> usize { method bytes_in_flight (line 1061) | fn bytes_in_flight(&self) -> usize { method bytes_in_flight_duration (line 1065) | fn bytes_in_flight_duration(&self) -> Duration { method pacing_rate (line 1070) | fn pacing_rate(&self) -> u64 { method pto_count (line 1077) | fn pto_count(&self) -> u32 { method pkt_thresh (line 1082) | fn pkt_thresh(&self) -> Option { method time_thresh (line 1087) | fn time_thresh(&self) -> f64 { method lost_spurious_count (line 1092) | fn lost_spurious_count(&self) -> usize { method detect_lost_packets_for_test (line 1097) | fn detect_lost_packets_for_test( method largest_sent_pkt_num_on_path (line 1106) | fn largest_sent_pkt_num_on_path(&self, epoch: packet::Epoch) -> Option bool { method update_app_limited (line 1116) | fn update_app_limited(&mut self, _v: bool) { method delivery_rate_update_app_limited (line 1121) | fn delivery_rate_update_app_limited(&mut self, _v: bool) { method update_max_ack_delay (line 1125) | fn update_max_ack_delay(&mut self, max_ack_delay: Duration) { method get_next_release_time (line 1129) | fn get_next_release_time(&self) -> ReleaseDecision { method gcongestion_enabled (line 1133) | fn gcongestion_enabled(&self) -> bool { method state_str (line 1138) | fn state_str(&self, _now: Instant) -> &'static str { method get_updated_qlog_event_data (line 1143) | fn get_updated_qlog_event_data(&mut self) -> Option { method get_updated_qlog_cc_state (line 1170) | fn get_updated_qlog_cc_state( method send_quantum (line 1182) | fn send_quantum(&self) -> usize { function loss_threshold (line 1216) | fn loss_threshold() { function relaxed_loss_threshold (line 1272) | fn relaxed_loss_threshold() { FILE: quiche/src/recovery/mod.rs constant INITIAL_PACKET_THRESHOLD (line 51) | const INITIAL_PACKET_THRESHOLD: u64 = 3; constant MAX_PACKET_THRESHOLD (line 53) | const MAX_PACKET_THRESHOLD: u64 = 20; constant INITIAL_TIME_THRESHOLD (line 58) | const INITIAL_TIME_THRESHOLD: f64 = 9.0 / 8.0; constant PACKET_REORDER_TIME_THRESHOLD (line 71) | const PACKET_REORDER_TIME_THRESHOLD: f64 = 5.0 / 4.0; constant INITIAL_TIME_THRESHOLD_OVERHEAD (line 79) | const INITIAL_TIME_THRESHOLD_OVERHEAD: f64 = 1.0 / 8.0; constant TIME_THRESHOLD_OVERHEAD_MULTIPLIER (line 83) | const TIME_THRESHOLD_OVERHEAD_MULTIPLIER: f64 = 2.0; constant GRANULARITY (line 85) | const GRANULARITY: Duration = Duration::from_millis(1); constant MAX_PTO_PROBES_COUNT (line 87) | const MAX_PTO_PROBES_COUNT: usize = 2; constant MINIMUM_WINDOW_PACKETS (line 89) | const MINIMUM_WINDOW_PACKETS: usize = 2; constant LOSS_REDUCTION_FACTOR (line 91) | const LOSS_REDUCTION_FACTOR: f64 = 0.5; constant MAX_OUTSTANDING_NON_ACK_ELICITING (line 95) | pub(super) const MAX_OUTSTANDING_NON_ACK_ELICITING: usize = 24; type LossDetectionTimer (line 98) | struct LossDetectionTimer { method update (line 103) | fn update(&mut self, timeout: Instant) { method clear (line 107) | fn clear(&mut self) { method fmt (line 113) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { type RecoveryConfig (line 130) | pub struct RecoveryConfig { method from_config (line 145) | pub fn from_config(config: &Config) -> Self { type Recovery (line 166) | pub(crate) enum Recovery { method new_with_config (line 325) | pub fn new_with_config(recovery_config: &RecoveryConfig) -> Self { method maybe_qlog (line 335) | pub fn maybe_qlog( method new (line 356) | pub fn new(config: &Config) -> Self { type OnAckReceivedOutcome (line 172) | pub struct OnAckReceivedOutcome { type OnLossDetectionTimeoutOutcome (line 180) | pub struct OnLossDetectionTimeoutOutcome { type RecoveryOps (line 187) | pub trait RecoveryOps { method lost_count (line 188) | fn lost_count(&self) -> usize; method bytes_lost (line 189) | fn bytes_lost(&self) -> u64; method should_elicit_ack (line 193) | fn should_elicit_ack(&self, epoch: packet::Epoch) -> bool; method next_acked_frame (line 195) | fn next_acked_frame(&mut self, epoch: packet::Epoch) -> Option Option Option bool; method loss_probes (line 201) | fn loss_probes(&self, epoch: packet::Epoch) -> usize; method inc_loss_probes (line 203) | fn inc_loss_probes(&mut self, epoch: packet::Epoch); method ping_sent (line 205) | fn ping_sent(&mut self, epoch: packet::Epoch); method on_packet_sent (line 207) | fn on_packet_sent( method get_packet_send_time (line 211) | fn get_packet_send_time(&self, now: Instant) -> Instant; method on_ack_received (line 214) | fn on_ack_received( method on_loss_detection_timeout (line 220) | fn on_loss_detection_timeout( method on_pkt_num_space_discarded (line 224) | fn on_pkt_num_space_discarded( method on_path_change (line 228) | fn on_path_change( method loss_detection_timer (line 231) | fn loss_detection_timer(&self) -> Option; method cwnd (line 232) | fn cwnd(&self) -> usize; method cwnd_available (line 233) | fn cwnd_available(&self) -> usize; method rtt (line 234) | fn rtt(&self) -> Duration; method min_rtt (line 236) | fn min_rtt(&self) -> Option; method max_rtt (line 238) | fn max_rtt(&self) -> Option; method rttvar (line 240) | fn rttvar(&self) -> Duration; method pto (line 242) | fn pto(&self) -> Duration; method delivery_rate (line 245) | fn delivery_rate(&self) -> Bandwidth; method max_bandwidth (line 248) | fn max_bandwidth(&self) -> Option; method startup_exit (line 251) | fn startup_exit(&self) -> Option; method max_datagram_size (line 253) | fn max_datagram_size(&self) -> usize; method pmtud_update_max_datagram_size (line 255) | fn pmtud_update_max_datagram_size(&mut self, new_max_datagram_size: us... method update_max_datagram_size (line 257) | fn update_max_datagram_size(&mut self, new_max_datagram_size: usize); method on_app_limited (line 259) | fn on_app_limited(&mut self); method largest_sent_pkt_num_on_path (line 264) | fn largest_sent_pkt_num_on_path(&self, epoch: packet::Epoch) -> Option... method app_limited (line 267) | fn app_limited(&self) -> bool; method sent_packets_len (line 270) | fn sent_packets_len(&self, epoch: packet::Epoch) -> usize; method bytes_in_flight (line 272) | fn bytes_in_flight(&self) -> usize; method bytes_in_flight_duration (line 274) | fn bytes_in_flight_duration(&self) -> Duration; method in_flight_count (line 277) | fn in_flight_count(&self, epoch: packet::Epoch) -> usize; method pacing_rate (line 280) | fn pacing_rate(&self) -> u64; method pto_count (line 283) | fn pto_count(&self) -> u32; method pkt_thresh (line 288) | fn pkt_thresh(&self) -> Option; method time_thresh (line 291) | fn time_thresh(&self) -> f64; method lost_spurious_count (line 294) | fn lost_spurious_count(&self) -> usize; method detect_lost_packets_for_test (line 297) | fn detect_lost_packets_for_test( method update_app_limited (line 301) | fn update_app_limited(&mut self, v: bool); method delivery_rate_update_app_limited (line 303) | fn delivery_rate_update_app_limited(&mut self, v: bool); method update_max_ack_delay (line 305) | fn update_max_ack_delay(&mut self, max_ack_delay: Duration); method state_str (line 308) | fn state_str(&self, now: Instant) -> &'static str; method get_updated_qlog_event_data (line 311) | fn get_updated_qlog_event_data(&mut self) -> Option; method get_updated_qlog_cc_state (line 314) | fn get_updated_qlog_cc_state(&mut self, now: Instant) method send_quantum (line 317) | fn send_quantum(&self) -> usize; method get_next_release_time (line 319) | fn get_next_release_time(&self) -> ReleaseDecision; method gcongestion_enabled (line 321) | fn gcongestion_enabled(&self) -> bool; type CongestionControlAlgorithm (line 367) | pub enum CongestionControlAlgorithm { type Err (line 378) | type Err = crate::Error; method from_str (line 383) | fn from_str(name: &str) -> std::result::Result { type Sent (line 396) | pub struct Sent { method fmt (line 431) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { type HandshakeStatus (line 449) | pub struct HandshakeStatus { method default (line 459) | fn default() -> HandshakeStatus { type QlogMetrics (line 476) | struct QlogMetrics { method maybe_update (line 558) | fn maybe_update(&mut self, latest: Self) -> Option { type CustomCfQlogField (line 494) | trait CustomCfQlogField { method name (line 495) | fn name(&self) -> &'static str; method as_json_value (line 496) | fn as_json_value(&self) -> serde_json::Value; method name (line 522) | fn name(&self) -> &'static str { method as_json_value (line 526) | fn as_json_value(&self) -> serde_json::Value { type TotalAndDelta (line 502) | struct TotalAndDelta { type CustomQlogField (line 508) | struct CustomQlogField { function new (line 515) | fn new(name: &'static str, value: T) -> Self { type CfExData (line 532) | struct CfExData(qlog::events::ExData); method new (line 536) | fn new() -> Self { method insert (line 540) | fn insert(&mut self, name: &'static str, value: T) { method into_inner (line 546) | fn into_inner(self) -> qlog::events::ExData { type ReleaseTime (line 704) | pub enum ReleaseTime { method inc (line 718) | fn inc(&mut self, delay: Duration) { method set_max (line 726) | fn set_max(&mut self, other: Instant) { type ReleaseDecision (line 711) | pub struct ReleaseDecision { constant EQUAL_THRESHOLD (line 735) | pub(crate) const EQUAL_THRESHOLD: Duration = Duration::from_micros(50); method time (line 740) | pub fn time(&self, now: Instant) -> Option { method can_burst (line 749) | pub fn can_burst(&self) -> bool { method time_eq (line 755) | pub fn time_eq(&self, other: &Self, now: Instant) -> bool { type RecoveryStats (line 769) | pub struct RecoveryStats { method set_startup_exit (line 775) | pub fn set_startup_exit(&mut self, startup_exit: StartupExit) { type StartupExit (line 784) | pub struct StartupExit { method new (line 796) | fn new( type StartupExitReason (line 810) | pub enum StartupExitReason { function recovery_for_alg (line 835) | fn recovery_for_alg(algo: CongestionControlAlgorithm) -> Recovery { function lookup_cc_algo_ok (line 842) | fn lookup_cc_algo_ok() { function lookup_cc_algo_bad (line 866) | fn lookup_cc_algo_bad() { function loss_on_pto (line 874) | fn loss_on_pto( function loss_on_timer (line 1160) | fn loss_on_timer( function loss_on_reordering (line 1356) | fn loss_on_reordering( function time_thresholds_on_reordering (line 1476) | fn time_thresholds_on_reordering( function relaxed_thresholds_on_reordering (line 1650) | fn relaxed_thresholds_on_reordering( function pacing (line 1842) | fn pacing( function initial_pacing_rate_override (line 2208) | fn initial_pacing_rate_override( function validate_ack_range_on_ack_received (line 2297) | fn validate_ack_range_on_ack_received( function pmtud_loss_on_timer (line 2381) | fn pmtud_loss_on_timer( function congestion_delivery_rate (line 2551) | fn congestion_delivery_rate( function acks_with_no_retransmittable_data (line 2611) | fn acks_with_no_retransmittable_data( FILE: quiche/src/recovery/rtt.rs constant RTT_WINDOW (line 33) | pub(crate) const RTT_WINDOW: Duration = Duration::from_secs(300); type RttStats (line 35) | pub struct RttStats { method fmt (line 52) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { method new (line 63) | pub(crate) fn new(initial_rtt: Duration, max_ack_delay: Duration) -> S... method update_rtt (line 75) | pub(crate) fn update_rtt( method rtt (line 117) | pub(crate) fn rtt(&self) -> Duration { method latest_rtt (line 122) | pub(crate) fn latest_rtt(&self) -> Duration { method rttvar (line 126) | pub(crate) fn rttvar(&self) -> Duration { method min_rtt (line 130) | pub(crate) fn min_rtt(&self) -> Option { method max_rtt (line 138) | pub(crate) fn max_rtt(&self) -> Option { method loss_delay (line 146) | pub(crate) fn loss_delay(&self, time_thresh: f64) -> Duration { FILE: quiche/src/stream/mod.rs constant DEFAULT_URGENCY (line 47) | const DEFAULT_URGENCY: u8 = 127; constant DEFAULT_STREAM_WINDOW (line 50) | const DEFAULT_STREAM_WINDOW: u64 = 32 * 1024; constant MAX_STREAM_WINDOW (line 53) | pub const MAX_STREAM_WINDOW: u64 = 16 * 1024 * 1024; type StreamIdHasher (line 60) | pub struct StreamIdHasher { method finish (line 95) | fn finish(&self) -> u64 { method write_u64 (line 100) | fn write_u64(&mut self, id: u64) { method write (line 105) | fn write(&mut self, _: &[u8]) { type RecvBufResetReturn (line 66) | pub struct RecvBufResetReturn { method zero (line 77) | pub fn zero() -> Self { type RecvAction (line 86) | pub enum RecvAction<'a> { type BuildStreamIdHasher (line 112) | type BuildStreamIdHasher = std::hash::BuildHasherDefault; type StreamIdHashMap (line 114) | pub type StreamIdHashMap = HashMap; type StreamIdHashSet (line 115) | pub type StreamIdHashSet = HashSet; type StreamMap (line 119) | pub struct StreamMap { function new (line 204) | pub fn new( function get (line 223) | pub fn get(&self, id: u64) -> Option<&Stream> { function get_mut (line 228) | pub fn get_mut(&mut self, id: u64) -> Option<&mut Stream> { function get_or_create (line 244) | pub(crate) fn get_or_create( function insert_readable (line 369) | pub fn insert_readable(&mut self, priority_key: &Arc) { function remove_readable (line 376) | pub fn remove_readable(&mut self, priority_key: &Arc) { function insert_writable (line 395) | pub fn insert_writable(&mut self, priority_key: &Arc) { function remove_writable (line 405) | pub fn remove_writable(&mut self, priority_key: &Arc) { function insert_flushable (line 421) | pub fn insert_flushable(&mut self, priority_key: &Arc) { function remove_flushable (line 428) | pub fn remove_flushable(&mut self, priority_key: &Arc) { function peek_flushable (line 441) | pub fn peek_flushable(&self) -> Option> { function update_priority (line 446) | pub fn update_priority( function insert_almost_full (line 468) | pub fn insert_almost_full(&mut self, stream_id: u64) { function remove_almost_full (line 473) | pub fn remove_almost_full(&mut self, stream_id: u64) { function insert_blocked (line 481) | pub fn insert_blocked(&mut self, stream_id: u64, off: u64) { function remove_blocked (line 486) | pub fn remove_blocked(&mut self, stream_id: u64) { function insert_reset (line 494) | pub fn insert_reset( function remove_reset (line 501) | pub fn remove_reset(&mut self, stream_id: u64) { function insert_stopped (line 509) | pub fn insert_stopped(&mut self, stream_id: u64, error_code: u64) { function remove_stopped (line 514) | pub fn remove_stopped(&mut self, stream_id: u64) { function update_peer_max_streams_bidi (line 519) | pub fn update_peer_max_streams_bidi(&mut self, v: u64) { function update_peer_max_streams_uni (line 524) | pub fn update_peer_max_streams_uni(&mut self, v: u64) { function update_max_streams_bidi (line 529) | pub fn update_max_streams_bidi(&mut self) { function set_max_streams_bidi (line 534) | pub fn set_max_streams_bidi(&mut self, max: u64) { function max_streams_bidi (line 541) | pub fn max_streams_bidi(&self) -> u64 { function max_streams_bidi_next (line 546) | pub fn max_streams_bidi_next(&mut self) -> u64 { function update_max_streams_uni (line 551) | pub fn update_max_streams_uni(&mut self) { function max_streams_uni_next (line 556) | pub fn max_streams_uni_next(&mut self) -> u64 { function peer_max_streams_bidi (line 561) | pub fn peer_max_streams_bidi(&self) -> u64 { function peer_streams_left_bidi (line 567) | pub fn peer_streams_left_bidi(&self) -> u64 { function peer_max_streams_uni (line 572) | pub fn peer_max_streams_uni(&self) -> u64 { function peer_streams_left_uni (line 578) | pub fn peer_streams_left_uni(&self) -> u64 { function collect (line 586) | pub fn collect(&mut self, stream_id: u64, local: bool) { function readable (line 611) | pub fn readable(&self) -> StreamIter { function writable (line 619) | pub fn writable(&self) -> StreamIter { function almost_full (line 627) | pub fn almost_full(&self) -> StreamIter { function blocked (line 632) | pub fn blocked(&self) -> hash_map::Iter<'_, u64, u64> { function reset (line 637) | pub fn reset(&self) -> hash_map::Iter<'_, u64, (u64, u64)> { function stopped (line 642) | pub fn stopped(&self) -> hash_map::Iter<'_, u64, u64> { function is_collected (line 647) | pub fn is_collected(&self, stream_id: u64) -> bool { function has_flushable (line 652) | pub fn has_flushable(&self) -> bool { function has_readable (line 657) | pub fn has_readable(&self) -> bool { function has_almost_full (line 663) | pub fn has_almost_full(&self) -> bool { function has_blocked (line 668) | pub fn has_blocked(&self) -> bool { function has_reset (line 673) | pub fn has_reset(&self) -> bool { function has_stopped (line 678) | pub fn has_stopped(&self) -> bool { function should_update_max_streams_bidi (line 687) | pub fn should_update_max_streams_bidi(&self) -> bool { function should_update_max_streams_uni (line 700) | pub fn should_update_max_streams_uni(&self) -> bool { function len (line 710) | pub fn len(&self) -> usize { type Stream (line 716) | pub struct Stream { function new (line 742) | pub fn new( function is_readable (line 764) | pub fn is_readable(&self) -> bool { function is_writable (line 770) | pub fn is_writable(&self) -> bool { function is_flushable (line 779) | pub fn is_flushable(&self) -> bool { function is_complete (line 796) | pub fn is_complete(&self) -> bool { function is_local (line 814) | pub fn is_local(stream_id: u64, is_server: bool) -> bool { function is_bidi (line 819) | pub fn is_bidi(stream_id: u64) -> bool { type StreamPriorityKey (line 824) | pub struct StreamPriorityKey { method default (line 835) | fn default() -> Self { method eq (line 848) | fn eq(&self, other: &Self) -> bool { method partial_cmp (line 856) | fn partial_cmp(&self, other: &Self) -> Option { method cmp (line 862) | fn cmp(&self, other: &Self) -> cmp::Ordering { type Key (line 897) | type Key = StreamPriorityKey; method get_key (line 899) | fn get_key(&self, s: &StreamPriorityKey) -> Self::Key { type Key (line 907) | type Key = StreamPriorityKey; method get_key (line 909) | fn get_key(&self, s: &StreamPriorityKey) -> Self::Key { type Key (line 917) | type Key = StreamPriorityKey; method get_key (line 919) | fn get_key(&self, s: &StreamPriorityKey) -> Self::Key { type StreamIter (line 926) | pub struct StreamIter { method from (line 933) | fn from(streams: &StreamIdHashSet) -> Self { type Item (line 942) | type Item = u64; method next (line 945) | fn next(&mut self) -> Option { method len (line 954) | fn len(&self) -> usize { function recv_flow_control (line 966) | fn recv_flow_control() { function recv_past_fin (line 998) | fn recv_past_fin() { function recv_fin_dup (line 1011) | fn recv_fin_dup() { function recv_fin_change (line 1030) | fn recv_fin_change() { function recv_fin_lower_than_received (line 1043) | fn recv_fin_lower_than_received() { function recv_fin_flow_control (line 1056) | fn recv_fin_flow_control() { function recv_fin_reset_mismatch (line 1077) | fn recv_fin_reset_mismatch() { function recv_reset_with_gap (line 1089) | fn recv_reset_with_gap() { function recv_reset_dup (line 1112) | fn recv_reset_dup() { function recv_reset_change (line 1131) | fn recv_reset_change() { function recv_reset_lower_than_received (line 1150) | fn recv_reset_lower_than_received() { function send_flow_control (line 1162) | fn send_flow_control() { function send_past_fin (line 1208) | fn send_past_fin() { function send_fin_dup (line 1225) | fn send_fin_dup() { function send_undo_fin (line 1237) | fn send_undo_fin() { function send_fin_max_data_match (line 1251) | fn send_fin_max_data_match() { function send_fin_zero_length (line 1268) | fn send_fin_zero_length() { function send_ack (line 1285) | fn send_ack() { function send_ack_reordering (line 1316) | fn send_ack_reordering() { function recv_data_below_off (line 1356) | fn recv_data_below_off() { function stream_complete (line 1379) | fn stream_complete() { function send_fin_zero_length_output (line 1421) | fn send_fin_zero_length_output() { function stream_send_ready (line 1446) | fn stream_send_ready(stream: &Stream) -> bool { function send_emit (line 1452) | fn send_emit() { function send_emit_ack (line 1505) | fn send_emit_ack() { function send_emit_retransmit (line 1573) | fn send_emit_retransmit() { function rangebuf_split_off (line 1686) | fn rangebuf_split_off() { function stream_limit_auto_open (line 1803) | fn stream_limit_auto_open() { function stream_create_out_of_order (line 1824) | fn stream_create_out_of_order() { function stream_limit_edge (line 1841) | fn stream_limit_edge() { function cycle_stream_priority (line 1863) | fn cycle_stream_priority(stream_id: u64, streams: &mut StreamMap) { function writable_prioritized_default_priority (line 1869) | fn writable_prioritized_default_priority() { function writable_prioritized_insert_order (line 1905) | fn writable_prioritized_insert_order() { function writable_prioritized_mixed_urgency (line 1940) | fn writable_prioritized_mixed_urgency() { function writable_prioritized_mixed_urgencies_incrementals (line 2043) | fn writable_prioritized_mixed_urgencies_incrementals() { function priority_tree_dupes (line 2170) | fn priority_tree_dupes() { FILE: quiche/src/stream/recv_buf.rs type RecvBuf (line 52) | pub struct RecvBuf { method new (line 78) | pub fn new(max_data: u64, max_window: u64) -> RecvBuf { method write (line 94) | pub fn write(&mut self, buf: RangeBuf) -> Result<()> { method emit (line 213) | pub fn emit(&mut self, out: &mut [u8]) -> Result<(usize, bool)> { method emit_or_discard (line 231) | pub fn emit_or_discard( method reset (line 288) | pub fn reset( method update_max_data (line 331) | pub fn update_max_data(&mut self, now: Instant) { method max_data_next (line 336) | pub fn max_data_next(&mut self) -> u64 { method max_data (line 341) | pub fn max_data(&self) -> u64 { method window (line 346) | pub fn window(&self) -> u64 { method autotune_window (line 351) | pub fn autotune_window(&mut self, now: Instant, rtt: Duration) { method shutdown (line 358) | pub fn shutdown(&mut self) -> Result { method off_front (line 374) | pub fn off_front(&self) -> u64 { method almost_full (line 379) | pub fn almost_full(&self) -> bool { method max_off (line 384) | pub fn max_off(&self) -> u64 { method is_fin (line 392) | pub fn is_fin(&self) -> bool { method is_draining (line 401) | pub fn is_draining(&self) -> bool { method ready (line 406) | pub fn ready(&self) -> bool { function assert_emit_discard (line 438) | fn assert_emit_discard( function assert_emit_discard_done (line 464) | fn assert_emit_discard_done(recv: &mut RecvBuf, emit: bool) { function empty_read (line 475) | fn empty_read(#[values(true, false)] emit: bool) { function empty_stream_frame (line 483) | fn empty_stream_frame(#[values(true, false)] emit: bool) { function ordered_read (line 537) | fn ordered_read(#[values(true, false)] emit: bool) { function shutdown (line 577) | fn shutdown(#[values(true, false)] emit: bool) { function split_read (line 629) | fn split_read(#[values(true, false)] emit: bool) { function incomplete_read (line 658) | fn incomplete_read(#[values(true, false)] emit: bool) { function zero_len_read (line 695) | fn zero_len_read(#[values(true, false)] emit: bool) { function past_read (line 718) | fn past_read(#[values(true, false)] emit: bool) { function fully_overlapping_read (line 752) | fn fully_overlapping_read(#[values(true, false)] emit: bool) { function fully_overlapping_read2 (line 778) | fn fully_overlapping_read2(#[values(true, false)] emit: bool) { function fully_overlapping_read3 (line 804) | fn fully_overlapping_read3(#[values(true, false)] emit: bool) { function fully_overlapping_read_multi (line 830) | fn fully_overlapping_read_multi(#[values(true, false)] emit: bool) { function overlapping_start_read (line 869) | fn overlapping_start_read(#[values(true, false)] emit: bool) { function overlapping_end_read (line 902) | fn overlapping_end_read(#[values(true, false)] emit: bool) { function overlapping_end_twice_read (line 927) | fn overlapping_end_twice_read(#[values(true, false)] emit: bool) { function overlapping_end_twice_and_contained_read (line 964) | fn overlapping_end_twice_and_contained_read( function partially_multi_overlapping_reordered_read (line 1010) | fn partially_multi_overlapping_reordered_read( function partially_multi_overlapping_reordered_read2 (line 1051) | fn partially_multi_overlapping_reordered_read2( function mixed_read_actions (line 1110) | fn mixed_read_actions() { FILE: quiche/src/stream/send_buf.rs constant SEND_BUFFER_SIZE (line 41) | const SEND_BUFFER_SIZE: usize = 5; constant SEND_BUFFER_SIZE (line 44) | const SEND_BUFFER_SIZE: usize = 4096; type SendReserve (line 46) | struct SendReserve<'a, F: BufFactory> { function append_buf (line 53) | fn append_buf(&mut self, buf: F::Buf) -> Result<()> { method drop (line 77) | fn drop(&mut self) { type SendBuf (line 92) | pub struct SendBuf function new (line 133) | pub fn new(max_data: u64) -> SendBuf { function reserve_for_write (line 141) | fn reserve_for_write( function write (line 190) | pub fn write(&mut self, data: &[u8], fin: bool) -> Result { function append_buf (line 213) | pub fn append_buf( function emit (line 237) | pub fn emit(&mut self, out: &mut [u8]) -> Result<(usize, bool)> { function update_max_data (line 304) | pub fn update_max_data(&mut self, max_data: u64) { function update_blocked_at (line 309) | pub fn update_blocked_at(&mut self, blocked_at: Option) { function blocked_at (line 314) | pub fn blocked_at(&self) -> Option { function ack (line 319) | pub fn ack(&mut self, off: u64, len: usize) { function ack_and_drop (line 323) | pub fn ack_and_drop(&mut self, off: u64, len: usize) { function retransmit (line 366) | pub fn retransmit(&mut self, off: u64, len: usize) { function reset (line 418) | pub fn reset(&mut self) -> (u64, u64) { function stop (line 440) | pub fn stop(&mut self, error_code: u64) -> Result<(u64, u64)> { function shutdown (line 453) | pub fn shutdown(&mut self) -> Result<(u64, u64)> { function off_back (line 464) | pub fn off_back(&self) -> u64 { function off_front (line 469) | pub fn off_front(&self) -> u64 { function max_off (line 485) | pub fn max_off(&self) -> u64 { function is_fin (line 493) | pub fn is_fin(&self) -> bool { function is_complete (line 505) | pub fn is_complete(&self) -> bool { function is_stopped (line 516) | pub fn is_stopped(&self) -> bool { function is_shutdown (line 521) | pub fn is_shutdown(&self) -> bool { function is_empty (line 526) | pub fn is_empty(&self) -> bool { function ack_off (line 531) | pub fn ack_off(&self) -> u64 { function cap (line 542) | pub fn cap(&self) -> Result { function bufs_count (line 553) | pub fn bufs_count(&self) -> usize { function empty_write (line 563) | fn empty_write() { function multi_write (line 575) | fn multi_write() { function split_write (line 598) | fn split_write() { function resend (line 641) | fn resend() { function write_blocked_by_off (line 704) | fn write_blocked_by_off() { function zero_len_write (line 774) | fn zero_len_write() { function send_buf_len_on_retransmit (line 799) | fn send_buf_len_on_retransmit() { function send_buf_final_size_retransmit (line 826) | fn send_buf_final_size_retransmit() { FILE: quiche/src/test_utils.rs type Pipe (line 33) | pub struct Pipe method default_config (line 42) | pub fn default_config(cc_algorithm_name: &str) -> Result { method default_tls_ctx_builder (line 61) | pub fn default_tls_ctx_builder() -> boring::ssl::SslContextBuilder { method client_addr (line 78) | pub fn client_addr() -> SocketAddr { method server_addr (line 82) | pub fn server_addr() -> SocketAddr { method new (line 86) | pub fn new(cc_algorithm_name: &str) -> Result { method with_config (line 91) | pub fn with_config(config: &mut Config) -> Result { method with_config_and_scid_lengths (line 95) | pub fn with_config_and_scid_lengths( method with_client_config (line 105) | pub fn with_client_config(client_config: &mut Config) -> Result { method with_server_config (line 109) | pub fn with_server_config(server_config: &mut Config) -> Result { method with_client_and_server_config (line 113) | pub fn with_client_and_server_config( function new_with_buf (line 124) | pub fn new_with_buf(cc_algorithm_name: &str) -> Result> { function with_config_and_buf (line 129) | pub fn with_config_and_buf(config: &mut Config) -> Result> { function with_config_and_scid_lengths_and_buf (line 158) | pub fn with_config_and_scid_lengths_and_buf( function with_client_config_and_buf (line 189) | pub fn with_client_config_and_buf( function with_server_config_and_buf (line 231) | pub fn with_server_config_and_buf( function with_client_and_server_config_and_buf (line 271) | pub fn with_client_and_server_config_and_buf( function handshake (line 302) | pub fn handshake(&mut self) -> Result<()> { function advance (line 314) | pub fn advance(&mut self) -> Result<()> { function client_recv (line 339) | pub fn client_recv(&mut self, buf: &mut [u8]) -> Result { function server_recv (line 349) | pub fn server_recv(&mut self, buf: &mut [u8]) -> Result { function send_pkt_to_server (line 359) | pub fn send_pkt_to_server( function client_update_key (line 366) | pub fn client_update_key(&mut self) -> Result<()> { function recv_send (line 398) | pub fn recv_send( function process_flight (line 422) | pub fn process_flight( function emit_flight_with_max_buffer (line 437) | pub fn emit_flight_with_max_buffer( function emit_flight_on_path (line 467) | pub fn emit_flight_on_path( function emit_flight (line 473) | pub fn emit_flight( function encode_pkt (line 479) | pub fn encode_pkt( function decode_pkt (line 557) | pub fn decode_pkt( function create_cid_and_reset_token (line 592) | pub fn create_cid_and_reset_token( function helper_packet_sent (line 606) | pub fn helper_packet_sent(pkt_num: u64, now: Instant, size: usize) -> Se... function stream_recv_discard (line 628) | pub fn stream_recv_discard( function trigger_ack_based_loss (line 647) | pub fn trigger_ack_based_loss( FILE: quiche/src/tests.rs function transport_params (line 36) | fn transport_params() { function transport_params_forbid_duplicates (line 100) | fn transport_params_forbid_duplicates() { function transport_params_unknown_zero_space (line 136) | fn transport_params_unknown_zero_space() { function transport_params_unknown_max_space_respected (line 152) | fn transport_params_unknown_max_space_respected() { function transport_params_unknown_is_reserved (line 206) | fn transport_params_unknown_is_reserved() { function unknown_version (line 220) | fn unknown_version() { function config_version_reserved (line 232) | fn config_version_reserved() { function config_version_invalid (line 238) | fn config_version_invalid() { function version_negotiation (line 246) | fn version_negotiation() { function verify_custom_root (line 271) | fn verify_custom_root() { function verify_client_invalid (line 289) | fn verify_client_invalid() { function verify_client_anonymous (line 343) | fn verify_client_anonymous() { function missing_initial_source_connection_id (line 370) | fn missing_initial_source_connection_id( function invalid_initial_source_connection_id (line 394) | fn invalid_initial_source_connection_id( function change_idle_timeout (line 418) | fn change_idle_timeout( function handshake (line 455) | fn handshake(#[values("cubic", "bbr2_gcongestion")] cc_algorithm_name: &... function handshake_done (line 468) | fn handshake_done( function handshake_confirmation (line 483) | fn handshake_confirmation( function handshake_resumption (line 544) | fn handshake_resumption( function handshake_alpn_mismatch (line 617) | fn handshake_alpn_mismatch( function handshake_0rtt (line 645) | fn handshake_0rtt( function handshake_0rtt_reordered (line 710) | fn handshake_0rtt_reordered( function handshake_0rtt_truncated (line 785) | fn handshake_0rtt_truncated( function crypto_limit (line 846) | fn crypto_limit(#[values("cubic", "bbr2_gcongestion")] cc_algorithm_name... function limit_handshake_data (line 915) | fn limit_handshake_data( function custom_limit_handshake_data (line 943) | fn custom_limit_handshake_data( function streamio (line 974) | fn streamio(#[values("cubic", "bbr2_gcongestion")] cc_algorithm_name: &s... function streamio_mixed_actions (line 995) | fn streamio_mixed_actions( function zero_rtt (line 1023) | fn zero_rtt(#[values("cubic", "bbr2_gcongestion")] cc_algorithm_name: &s... function stream_send_on_32bit_arch (line 1084) | fn stream_send_on_32bit_arch( function empty_stream_frame (line 1119) | fn empty_stream_frame( function update_key_request (line 1173) | fn update_key_request( function update_key_request_twice_error (line 1233) | fn update_key_request_twice_error( function max_stream_data_receive_uni (line 1271) | fn max_stream_data_receive_uni( function empty_payload (line 1297) | fn empty_payload(#[values("cubic", "bbr2_gcongestion")] cc_algorithm_nam... function min_payload (line 1312) | fn min_payload(#[values("cubic", "bbr2_gcongestion")] cc_algorithm_name:... function flow_control_limit (line 1355) | fn flow_control_limit( function flow_control_limit_dup (line 1386) | fn flow_control_limit_dup( function flow_control_update (line 1416) | fn flow_control_update( function flow_control_drain (line 1474) | fn flow_control_drain( function flow_control_reset_stream (line 1577) | fn flow_control_reset_stream( function stream_flow_control_limit_bidi (line 1723) | fn stream_flow_control_limit_bidi( function stream_flow_control_limit_uni (line 1744) | fn stream_flow_control_limit_uni( function stream_flow_control_update (line 1765) | fn stream_flow_control_update( function stream_left_bidi (line 1813) | fn stream_left_bidi( function stream_left_uni (line 1841) | fn stream_left_uni( function stream_limit_bidi (line 1869) | fn stream_limit_bidi( function stream_limit_max_bidi (line 1916) | fn stream_limit_max_bidi( function stream_limit_uni (line 1941) | fn stream_limit_uni( function stream_limit_max_uni (line 1988) | fn stream_limit_max_uni( function stream_left_reset_bidi (line 2013) | fn stream_left_reset_bidi( function stream_reset_counts (line 2100) | fn stream_reset_counts( function stream_stop_counts (line 2170) | fn stream_stop_counts( function streams_blocked_max_bidi (line 2229) | fn streams_blocked_max_bidi( function streams_blocked_max_uni (line 2256) | fn streams_blocked_max_uni( function streams_blocked_bidi_stat (line 2283) | fn streams_blocked_bidi_stat( function streams_blocked_uni_stat (line 2316) | fn streams_blocked_uni_stat( function streams_blocked_bidi_sent (line 2354) | fn streams_blocked_bidi_sent( function streams_blocked_uni_sent (line 2464) | fn streams_blocked_uni_sent( function streams_blocked_bidi_retransmit (line 2570) | fn streams_blocked_bidi_retransmit( function streams_blocked_uni_retransmit (line 2653) | fn streams_blocked_uni_retransmit( function stream_data_overlap (line 2724) | fn stream_data_overlap( function stream_data_overlap_with_reordering (line 2762) | fn stream_data_overlap_with_reordering( function reset_stream_data_recvd (line 2802) | fn reset_stream_data_recvd( function reset_stream_data_not_recvd (line 2879) | fn reset_stream_data_not_recvd( function reset_stream_flow_control (line 2954) | fn reset_stream_flow_control( function reset_stream_flow_control_stream (line 2992) | fn reset_stream_flow_control_stream( function path_challenge (line 3020) | fn path_challenge( function early_1rtt_packet (line 3055) | fn early_1rtt_packet( function stop_sending (line 3129) | fn stop_sending( function stop_sending_fin (line 3248) | fn stop_sending_fin( function stop_sending_unsent_tx_cap (line 3321) | fn stop_sending_unsent_tx_cap( function stop_sending_ack_race (line 3401) | fn stop_sending_ack_race( function stop_sending_stream_ack_race (line 3524) | fn stop_sending_stream_ack_race( function stream_shutdown_read (line 3645) | fn stream_shutdown_read( function stream_shutdown_read_after_fin (line 3727) | fn stream_shutdown_read_after_fin( function stream_shutdown_read_update_max_data (line 3795) | fn stream_shutdown_read_update_max_data( function stream_shutdown_write_update_max_data (line 3903) | fn stream_shutdown_write_update_max_data( function stream_shutdown_uni (line 3965) | fn stream_shutdown_uni( function stream_shutdown_write (line 3991) | fn stream_shutdown_write( function stream_shutdown_write_unsent_tx_cap (line 4088) | fn stream_shutdown_write_unsent_tx_cap( function stream_round_robin (line 4164) | fn stream_round_robin( function stream_readable (line 4223) | fn stream_readable( function stream_writable (line 4295) | fn stream_writable( function stream_writable_blocked (line 4371) | fn stream_writable_blocked( function flow_control_limit_send (line 4429) | fn flow_control_limit_send( function invalid_initial_server (line 4467) | fn invalid_initial_server( function invalid_initial_client (line 4501) | fn invalid_initial_client( function invalid_initial_payload (line 4541) | fn invalid_initial_payload( function invalid_packet (line 4617) | fn invalid_packet( function recv_empty_buffer (line 4645) | fn recv_empty_buffer( function stop_sending_before_flushed_packets (line 4657) | fn stop_sending_before_flushed_packets( function reset_before_flushed_packets (line 4750) | fn reset_before_flushed_packets( function stream_limit_update_bidi (line 4829) | fn stream_limit_update_bidi( function stream_limit_update_uni (line 4908) | fn stream_limit_update_uni( function max_streams_sent_only_when_at_threshold (line 4975) | fn max_streams_sent_only_when_at_threshold( function high_utilization_maintains_streams_in_aged_connection (line 5078) | fn high_utilization_maintains_streams_in_aged_connection( function stream_zero_length_fin (line 5204) | fn stream_zero_length_fin( function stream_zero_length_fin_deferred_collection (line 5250) | fn stream_zero_length_fin_deferred_collection( function stream_zero_length_non_fin (line 5310) | fn stream_zero_length_non_fin( function collect_streams (line 5330) | fn collect_streams( function config_set_cc_algorithm_name (line 5384) | fn config_set_cc_algorithm_name() { function peer_cert (line 5397) | fn peer_cert(#[values("cubic", "bbr2_gcongestion")] cc_algorithm_name: &... function peer_cert_chain (line 5409) | fn peer_cert_chain( function retry (line 5435) | fn retry(#[values("cubic", "bbr2_gcongestion")] cc_algorithm_name: &str) { function retry_with_pto (line 5496) | fn retry_with_pto( function retry_missing_original_destination_connection_id (line 5564) | fn retry_missing_original_destination_connection_id( function retry_invalid_original_destination_connection_id (line 5626) | fn retry_invalid_original_destination_connection_id( function retry_separate_source_connection_id (line 5689) | fn retry_separate_source_connection_id( function retry_invalid_source_connection_id (line 5760) | fn retry_invalid_source_connection_id( function zero_length_new_token (line 5826) | fn zero_length_new_token( function client_sent_new_token (line 5850) | fn client_sent_new_token( function check_send (line 5874) | fn check_send(_: &mut impl Send) {} function config_must_be_send (line 5877) | fn config_must_be_send( function connection_must_be_send (line 5886) | fn connection_must_be_send( function check_sync (line 5893) | fn check_sync(_: &mut impl Sync) {} function config_must_be_sync (line 5896) | fn config_must_be_sync( function connection_must_be_sync (line 5905) | fn connection_must_be_sync( function data_blocked (line 5913) | fn data_blocked(#[values("cubic", "bbr2_gcongestion")] cc_algorithm_name... function stream_data_blocked (line 5952) | fn stream_data_blocked( function stream_data_blocked_unblocked_flow_control (line 6031) | fn stream_data_blocked_unblocked_flow_control( function app_limited_true (line 6104) | fn app_limited_true( function app_limited_false (line 6146) | fn app_limited_false( function tx_cap_factor (line 6190) | fn tx_cap_factor(#[values(true, false)] discard: bool) { function client_rst_stream_while_bytes_in_flight (line 6246) | fn client_rst_stream_while_bytes_in_flight( function client_rst_stream_while_bytes_in_flight_with_packet_loss (line 6346) | fn client_rst_stream_while_bytes_in_flight_with_packet_loss( function sends_ack_only_pkt_when_full_cwnd_and_ack_elicited (line 6447) | fn sends_ack_only_pkt_when_full_cwnd_and_ack_elicited( function sends_ack_only_pkt_when_full_cwnd_and_ack_elicited_despite_max_unacknowledging (line 6524) | fn sends_ack_only_pkt_when_full_cwnd_and_ack_elicited_despite_max_unackn... function validate_peer_sent_ack_range (line 6609) | fn validate_peer_sent_ack_range( function validate_peer_sent_ack_range_for_multi_path (line 6697) | fn validate_peer_sent_ack_range_for_multi_path( function optimistic_ack_mitigation_via_skip_pn (line 6813) | fn optimistic_ack_mitigation_via_skip_pn( function prevent_optimistic_ack (line 6870) | fn prevent_optimistic_ack( function app_limited_false_no_frame (line 6940) | fn app_limited_false_no_frame( function app_limited_false_no_header (line 6984) | fn app_limited_false_no_header( function app_limited_not_changed_on_no_new_frames (line 7028) | fn app_limited_not_changed_on_no_new_frames( function limit_ack_ranges (line 7078) | fn limit_ack_ranges( function stream_priority (line 7131) | fn stream_priority( function stream_reprioritize (line 7359) | fn stream_reprioritize( function stream_datagram_priority (line 7478) | fn stream_datagram_priority( function early_retransmit (line 7615) | fn early_retransmit( function max_data_frames_retransmit (line 7680) | fn max_data_frames_retransmit( function dont_coalesce_probes (line 7774) | fn dont_coalesce_probes( function coalesce_padding_short (line 7862) | fn coalesce_padding_short( function handshake_anti_deadlock (line 7898) | fn handshake_anti_deadlock( function handshake_packet_type_corruption (line 7953) | fn handshake_packet_type_corruption( function dgram_send_fails_invalidstate (line 7998) | fn dgram_send_fails_invalidstate( function dgram_send_app_limited (line 8011) | fn dgram_send_app_limited( function dgram_single_datagram (line 8100) | fn dgram_single_datagram( function dgram_multiple_datagrams (line 8140) | fn dgram_multiple_datagrams( function dgram_send_queue_overflow (line 8217) | fn dgram_send_queue_overflow( function dgram_recv_queue_overflow (line 8266) | fn dgram_recv_queue_overflow( function dgram_send_max_size (line 8316) | fn dgram_send_max_size( function is_readable (line 8370) | fn is_readable( function close (line 8457) | fn close(#[values("cubic", "bbr2_gcongestion")] cc_algorithm_name: &str) { function app_close_by_client (line 8486) | fn app_close_by_client( function app_close_by_server_during_handshake_private_key_failure (line 8516) | fn app_close_by_server_during_handshake_private_key_failure( function app_close_by_server_during_handshake_not_established (line 8575) | fn app_close_by_server_during_handshake_not_established( function app_close_by_server_during_handshake_established (line 8627) | fn app_close_by_server_during_handshake_established( function transport_close_by_client_during_handshake_established (line 8683) | fn transport_close_by_client_during_handshake_established( function peer_error (line 8727) | fn peer_error(#[values("cubic", "bbr2_gcongestion")] cc_algorithm_name: ... function app_peer_error (line 8745) | fn app_peer_error( function local_error (line 8765) | fn local_error(#[values("cubic", "bbr2_gcongestion")] cc_algorithm_name:... function update_max_datagram_size (line 8784) | fn update_max_datagram_size( function send_capacity (line 8891) | fn send_capacity( function user_provided_boring_ctx (line 8989) | fn user_provided_boring_ctx( function in_handshake_config (line 9040) | fn in_handshake_config( function max_streams_threshold_after_handshake_callback_update (line 9149) | fn max_streams_threshold_after_handshake_callback_update( function initial_cwnd (line 9283) | fn initial_cwnd( function last_tx_data_larger_than_tx_data (line 9344) | fn last_tx_data_larger_than_tx_data( function send_connection_ids (line 9409) | fn send_connection_ids( function connection_id_zero (line 9470) | fn connection_id_zero( function connection_id_invalid_max_len (line 9543) | fn connection_id_invalid_max_len( function connection_id_handling (line 9618) | fn connection_id_handling( function lost_connection_id_frames (line 9706) | fn lost_connection_id_frames( function sending_duplicate_scids (line 9766) | fn sending_duplicate_scids( function connection_id_retire_limit (line 9814) | fn connection_id_retire_limit( function connection_id_retire_exotic_sequence (line 9905) | fn connection_id_retire_exotic_sequence( function pipe_with_exchanged_cids (line 9995) | fn pipe_with_exchanged_cids( function path_validation (line 10055) | fn path_validation( function losing_probing_packets (line 10143) | fn losing_probing_packets( function failed_path_validation (line 10211) | fn failed_path_validation( function client_discard_unknown_address (line 10266) | fn client_discard_unknown_address( function path_validation_limited_mtu (line 10302) | fn path_validation_limited_mtu( function path_probing_dos (line 10358) | fn path_probing_dos( function retiring_active_path_dcid (line 10427) | fn retiring_active_path_dcid( function send_on_path_test (line 10453) | fn send_on_path_test( function connection_migration (line 10641) | fn connection_migration( function connection_migration_zero_length_cid (line 10857) | fn connection_migration_zero_length_cid( function connection_migration_reordered_non_probing (line 10937) | fn connection_migration_reordered_non_probing( function resilience_against_migration_attack (line 11007) | fn resilience_against_migration_attack( function consecutive_non_ack_eliciting (line 11148) | fn consecutive_non_ack_eliciting( function send_ack_eliciting_causes_ping (line 11193) | fn send_ack_eliciting_causes_ping( function send_ack_eliciting_no_ping (line 11215) | fn send_ack_eliciting_no_ping( function stop_sending_stream_send_after_reset_stream_ack (line 11250) | fn stop_sending_stream_send_after_reset_stream_ack( function challenge_no_cids (line 11443) | fn challenge_no_cids( function pmtud_probe_success (line 11545) | fn pmtud_probe_success( function pmtud_no_duplicate_probes (line 11589) | fn pmtud_no_duplicate_probes( function pmtud_probe_retry_after_loss (line 11656) | fn pmtud_probe_retry_after_loss( function enable_pmtud_mid_handshake (line 11771) | fn enable_pmtud_mid_handshake( function disable_pmtud_mid_handshake (line 11860) | fn disable_pmtud_mid_handshake( function configuration_values_are_limited_to_max_varint (line 11937) | fn configuration_values_are_limited_to_max_varint() { function connect_custom_client_dcid (line 12012) | fn connect_custom_client_dcid() { function reset_stream_retransmit_after_stream_collected (line 12132) | fn reset_stream_retransmit_after_stream_collected( function stop_sending_retransmit (line 12216) | fn stop_sending_retransmit( function stop_sending_no_retransmit_after_fin (line 12268) | fn stop_sending_no_retransmit_after_fin( function max_streams_bidi_frame_retransmit (line 12317) | fn max_streams_bidi_frame_retransmit( function max_streams_uni_frame_retransmit (line 12393) | fn max_streams_uni_frame_retransmit( function connect_custom_client_dcid_too_short (line 12461) | fn connect_custom_client_dcid_too_short() { FILE: quiche/src/tls/boringssl.rs type CRYPTO_BUFFER (line 7) | struct CRYPTO_BUFFER { type SSL_QUIC_METHOD (line 13) | pub(super) struct SSL_QUIC_METHOD { type SSL_PRIVATE_KEY_METHOD (line 53) | struct SSL_PRIVATE_KEY_METHOD { method set_early_data_enabled (line 96) | pub fn set_early_data_enabled(&mut self, _enabled: bool) { method set_quic_early_data_context (line 107) | pub fn set_quic_early_data_context(&mut self, context: &[u8]) -> Result<... method set_session (line 117) | pub fn set_session(&mut self, session: &[u8]) -> Result<()> { method reset_early_data_reject (line 139) | pub fn reset_early_data_reject(&mut self) { method curve (line 143) | pub fn curve(&self) -> Option { method sigalg (line 161) | pub fn sigalg(&self) -> Option { method peer_cert_chain (line 179) | pub fn peer_cert_chain(&self) -> Option> { method peer_cert (line 212) | pub fn peer_cert(&self) -> Option<&[u8]> { method set_failing_private_key_method (line 238) | pub fn set_failing_private_key_method(&mut self) { method is_in_early_data (line 274) | pub fn is_in_early_data(&self) -> bool { method early_data_reason (line 278) | pub fn early_data_reason(&self) -> u32 { function get_session_bytes (line 285) | pub(super) fn get_session_bytes(session: *mut SSL_SESSION) -> Result u16; function SSL_get_curve_name (line 322) | fn SSL_get_curve_name(curve: u16) -> *const c_char; function SSL_get_peer_signature_algorithm (line 324) | fn SSL_get_peer_signature_algorithm(ssl: *const SSL) -> u16; function SSL_get_signature_algorithm_name (line 325) | fn SSL_get_signature_algorithm_name( function SSL_get0_peer_certificates (line 329) | fn SSL_get0_peer_certificates(ssl: *const SSL) -> *const STACK_OF; function SSL_set_min_proto_version (line 331) | pub(super) fn SSL_set_min_proto_version(ssl: *mut SSL, version: u16) function SSL_set_max_proto_version (line 334) | pub(super) fn SSL_set_max_proto_version(ssl: *mut SSL, version: u16) function SSL_set_tlsext_host_name (line 337) | pub(super) fn SSL_set_tlsext_host_name( function SSL_set_quic_early_data_context (line 341) | fn SSL_set_quic_early_data_context( function SSL_set_private_key_method (line 346) | fn SSL_set_private_key_method( function SSL_reset_early_data_reject (line 350) | fn SSL_reset_early_data_reject(ssl: *mut SSL); function SSL_in_early_data (line 352) | fn SSL_in_early_data(ssl: *const SSL) -> c_int; function SSL_get_early_data_reason (line 354) | fn SSL_get_early_data_reason(ssl: *const SSL) -> ssl_early_data_reason_t; function SSL_SESSION_to_bytes (line 356) | fn SSL_SESSION_to_bytes( function SSL_SESSION_from_bytes (line 360) | fn SSL_SESSION_from_bytes( function sk_num (line 366) | fn sk_num(stack: *const STACK_OF) -> usize; function sk_value (line 368) | fn sk_value(stack: *const STACK_OF, idx: usize) -> *mut c_void; function CRYPTO_BUFFER_len (line 372) | fn CRYPTO_BUFFER_len(buffer: *const CRYPTO_BUFFER) -> usize; function CRYPTO_BUFFER_data (line 374) | fn CRYPTO_BUFFER_data(buffer: *const CRYPTO_BUFFER) -> *const u8; FILE: quiche/src/tls/mod.rs constant TLS1_3_VERSION (line 49) | const TLS1_3_VERSION: u16 = 0x0304; constant TLS_ALERT_ERROR (line 50) | const TLS_ALERT_ERROR: u64 = 0x100; constant INTERNAL_ERROR (line 51) | const INTERNAL_ERROR: u64 = 0x01; type SSL_METHOD (line 55) | struct SSL_METHOD { type SSL_CTX (line 61) | struct SSL_CTX { type SSL (line 67) | struct SSL { type SSL_CIPHER (line 73) | struct SSL_CIPHER { type SSL_SESSION (line 79) | struct SSL_SESSION { type X509_VERIFY_PARAM (line 85) | struct X509_VERIFY_PARAM { type X509_STORE (line 92) | struct X509_STORE { type X509_STORE_CTX (line 98) | struct X509_STORE_CTX { type X509 (line 105) | struct X509 { type STACK_OF (line 111) | struct STACK_OF { type ssl_private_key_result_t (line 119) | enum ssl_private_key_result_t { type Context (line 130) | pub struct Context(*mut SSL_CTX); method new (line 135) | pub fn new() -> Result { method from_boring (line 150) | pub fn from_boring( method new_handshake (line 161) | pub fn new_handshake(&mut self) -> Result { method load_verify_locations_from_file (line 168) | pub fn load_verify_locations_from_file(&mut self, file: &str) -> Resul... method load_verify_locations_from_directory (line 179) | pub fn load_verify_locations_from_directory( method use_certificate_chain_file (line 192) | pub fn use_certificate_chain_file(&mut self, file: &str) -> Result<()> { method use_privkey_file (line 199) | pub fn use_privkey_file(&mut self, file: &str) -> Result<()> { method load_ca_certs (line 207) | fn load_ca_certs(&mut self) -> Result<()> { method load_ca_certs (line 212) | fn load_ca_certs(&mut self) -> Result<()> { method set_session_callback (line 263) | fn set_session_callback(&mut self) { method set_verify (line 276) | pub fn set_verify(&mut self, verify: bool) { method enable_keylog (line 288) | pub fn enable_keylog(&mut self) { method set_alpn (line 294) | pub fn set_alpn(&mut self, v: &[&[u8]]) -> Result<()> { method set_ticket_key (line 321) | pub fn set_ticket_key(&mut self, key: &[u8]) -> Result<()> { method as_mut_ptr (line 331) | fn as_mut_ptr(&mut self) -> *mut SSL_CTX { method drop (line 345) | fn drop(&mut self) { type Handshake (line 350) | pub struct Handshake { method from_ptr (line 362) | pub unsafe fn from_ptr(ssl: *mut c_void) -> Handshake { method new (line 366) | fn new(ptr: *mut SSL) -> Handshake { method get_error (line 373) | pub fn get_error(&self, ret_code: c_int) -> c_int { method init (line 377) | pub fn init(&mut self, is_server: bool) -> Result<()> { method use_legacy_codepoint (line 394) | pub fn use_legacy_codepoint(&mut self, use_legacy: bool) { method set_state (line 403) | pub fn set_state(&mut self, is_server: bool) { method set_ex_data (line 413) | pub fn set_ex_data(&mut self, idx: c_int, data: *const T) -> Result... method set_quic_method (line 420) | pub fn set_quic_method(&mut self) -> Result<()> { method set_min_proto_version (line 426) | pub fn set_min_proto_version(&mut self, version: u16) -> Result<()> { method set_max_proto_version (line 432) | pub fn set_max_proto_version(&mut self, version: u16) -> Result<()> { method set_quiet_shutdown (line 438) | pub fn set_quiet_shutdown(&mut self, mode: bool) { method set_host_name (line 442) | pub fn set_host_name(&mut self, name: &str) -> Result<()> { method set_quic_transport_params (line 455) | pub fn set_quic_transport_params( method quic_transport_params (line 473) | pub fn quic_transport_params(&self) -> &[u8] { method alpn_protocol (line 488) | pub fn alpn_protocol(&self) -> &[u8] { method server_name (line 503) | pub fn server_name(&self) -> Option<&str> { method provide_data (line 520) | pub fn provide_data( method do_handshake (line 535) | pub fn do_handshake(&mut self, ex_data: &mut ExData) -> Result<()> { method process_post_handshake (line 544) | pub fn process_post_handshake(&mut self, ex_data: &mut ExData) -> Resu... method write_level (line 560) | pub fn write_level(&self) -> crypto::Level { method cipher (line 564) | pub fn cipher(&self) -> Option { method set_options (line 572) | pub fn set_options(&mut self, opts: u32) { method is_completed (line 578) | pub fn is_completed(&self) -> bool { method is_resumed (line 582) | pub fn is_resumed(&self) -> bool { method clear (line 586) | pub fn clear(&mut self) -> Result<()> { method as_ptr (line 591) | fn as_ptr(&self) -> *const SSL { method as_mut_ptr (line 595) | fn as_mut_ptr(&mut self) -> *mut SSL { method map_result_ssl (line 599) | fn map_result_ssl(&mut self, bssl_result: c_int) -> Result<()> { method set_transport_error (line 652) | fn set_transport_error(&mut self, ex_data: &mut ExData, bssl_result: c... method ssl_mut (line 669) | pub(crate) fn ssl_mut(&mut self) -> &mut boring::ssl::SslRef { method drop (line 685) | fn drop(&mut self) { type ExData (line 690) | pub struct ExData<'a> { function from_ssl_ptr (line 716) | fn from_ssl_ptr(ptr: *const SSL) -> Option<&'a mut Self> { function from_ssl_ref (line 721) | pub fn from_ssl_ref(ssl: &mut boring::ssl::SslRef) -> Option<&mut Self> { function get_ex_data_from_ptr (line 733) | fn get_ex_data_from_ptr<'a, T>(ptr: *const SSL, idx: c_int) -> Option<&'... function get_cipher_from_ptr (line 740) | fn get_cipher_from_ptr(cipher: *const SSL_CIPHER) -> Result c_int { function send_alert (line 887) | extern "C" fn send_alert( function keylog (line 913) | extern "C" fn keylog(ssl: *const SSL, line: *const c_char) { function select_alpn (line 932) | extern "C" fn select_alpn( function new_session (line 991) | extern "C" fn new_session(ssl: *mut SSL, session: *mut SSL_SESSION) -> c... function map_result (line 1042) | pub fn map_result(bssl_result: c_int) -> Result<()> { function map_result_zero_is_success (line 1049) | pub fn map_result_zero_is_success(bssl_result: c_int) -> Result<()> { function map_result_ptr (line 1056) | pub fn map_result_ptr<'a, T>(bssl_result: *const T) -> Result<&'a T> { function log_ssl_error (line 1063) | fn log_ssl_error() { function TLS_method (line 1086) | fn TLS_method() -> *const SSL_METHOD; function SSL_CTX_new (line 1089) | fn SSL_CTX_new(method: *const SSL_METHOD) -> *mut SSL_CTX; function SSL_CTX_free (line 1090) | fn SSL_CTX_free(ctx: *mut SSL_CTX); function SSL_CTX_use_certificate_chain_file (line 1092) | fn SSL_CTX_use_certificate_chain_file( function SSL_CTX_use_PrivateKey_file (line 1096) | fn SSL_CTX_use_PrivateKey_file( function SSL_CTX_load_verify_locations (line 1100) | fn SSL_CTX_load_verify_locations( function SSL_CTX_set_default_verify_paths (line 1105) | fn SSL_CTX_set_default_verify_paths(ctx: *mut SSL_CTX) -> c_int; function SSL_CTX_get_cert_store (line 1108) | fn SSL_CTX_get_cert_store(ctx: *mut SSL_CTX) -> *mut X509_STORE; function SSL_CTX_set_verify (line 1110) | fn SSL_CTX_set_verify( function SSL_CTX_set_keylog_callback (line 1120) | fn SSL_CTX_set_keylog_callback( function SSL_CTX_set_alpn_protos (line 1125) | fn SSL_CTX_set_alpn_protos( function SSL_CTX_set_alpn_select_cb (line 1129) | fn SSL_CTX_set_alpn_select_cb( function SSL_CTX_sess_set_new_cb (line 1144) | fn SSL_CTX_sess_set_new_cb( function SSL_new (line 1154) | fn SSL_new(ctx: *mut SSL_CTX) -> *mut SSL; function SSL_get_error (line 1156) | fn SSL_get_error(ssl: *const SSL, ret_code: c_int) -> c_int; function SSL_set_accept_state (line 1158) | fn SSL_set_accept_state(ssl: *mut SSL); function SSL_set_connect_state (line 1159) | fn SSL_set_connect_state(ssl: *mut SSL); function SSL_get0_param (line 1161) | fn SSL_get0_param(ssl: *mut SSL) -> *mut X509_VERIFY_PARAM; function SSL_set_ex_data (line 1163) | fn SSL_set_ex_data(ssl: *mut SSL, idx: c_int, ptr: *mut c_void) -> c_int; function SSL_get_ex_data (line 1164) | fn SSL_get_ex_data(ssl: *const SSL, idx: c_int) -> *mut c_void; function SSL_get_current_cipher (line 1166) | fn SSL_get_current_cipher(ssl: *const SSL) -> *const SSL_CIPHER; function SSL_set_session (line 1168) | fn SSL_set_session(ssl: *mut SSL, session: *mut SSL_SESSION) -> c_int; function SSL_get_SSL_CTX (line 1170) | fn SSL_get_SSL_CTX(ssl: *const SSL) -> *mut SSL_CTX; function SSL_set_quiet_shutdown (line 1172) | fn SSL_set_quiet_shutdown(ssl: *mut SSL, mode: c_int); function SSL_set_quic_transport_params (line 1174) | fn SSL_set_quic_transport_params( function SSL_set_quic_method (line 1178) | fn SSL_set_quic_method( function SSL_set_quic_use_legacy_codepoint (line 1182) | fn SSL_set_quic_use_legacy_codepoint(ssl: *mut SSL, use_legacy: c_int); function SSL_set_options (line 1185) | fn SSL_set_options(ssl: *mut SSL, opts: u32) -> u32; function SSL_get_peer_quic_transport_params (line 1187) | fn SSL_get_peer_quic_transport_params( function SSL_get0_alpn_selected (line 1191) | fn SSL_get0_alpn_selected( function SSL_get_servername (line 1195) | fn SSL_get_servername(ssl: *const SSL, ty: c_int) -> *const c_char; function SSL_provide_quic_data (line 1197) | fn SSL_provide_quic_data( function SSL_process_quic_post_handshake (line 1201) | fn SSL_process_quic_post_handshake(ssl: *mut SSL) -> c_int; function SSL_do_handshake (line 1203) | fn SSL_do_handshake(ssl: *mut SSL) -> c_int; function SSL_quic_write_level (line 1205) | fn SSL_quic_write_level(ssl: *const SSL) -> crypto::Level; function SSL_session_reused (line 1207) | fn SSL_session_reused(ssl: *const SSL) -> c_int; function SSL_in_init (line 1209) | fn SSL_in_init(ssl: *const SSL) -> c_int; function SSL_clear (line 1211) | fn SSL_clear(ssl: *mut SSL) -> c_int; function SSL_free (line 1213) | fn SSL_free(ssl: *mut SSL); function SSL_CIPHER_get_id (line 1216) | fn SSL_CIPHER_get_id(cipher: *const SSL_CIPHER) -> c_uint; function SSL_SESSION_free (line 1220) | fn SSL_SESSION_free(session: *mut SSL_SESSION); function X509_VERIFY_PARAM_set1_host (line 1223) | fn X509_VERIFY_PARAM_set1_host( function X509_STORE_add_cert (line 1229) | fn X509_STORE_add_cert(ctx: *mut X509_STORE, x: *mut X509) -> c_int; function X509_free (line 1233) | fn X509_free(x: *mut X509); function d2i_X509 (line 1235) | fn d2i_X509(px: *mut X509, input: *const *const u8, len: c_int) -> *mut ... function ERR_peek_error (line 1238) | fn ERR_peek_error() -> c_uint; function ERR_error_string_n (line 1240) | fn ERR_error_string_n(err: c_uint, buf: *mut c_char, len: usize); function OPENSSL_free (line 1244) | fn OPENSSL_free(ptr: *mut c_void); FILE: quiche/src/tls/openssl_quictls.rs type OPENSSL_STACK (line 8) | struct OPENSSL_STACK { type X509 (line 14) | struct X509 { type SSL_QUIC_METHOD (line 20) | pub(super) struct SSL_QUIC_METHOD { method set_early_data_enabled (line 55) | pub fn set_early_data_enabled(&mut self, _enabled: bool) { method set_quic_early_data_context (line 61) | pub fn set_quic_early_data_context(&mut self, _context: &[u8]) -> Result... method curve (line 66) | pub fn curve(&self) -> Option { method peer_cert_chain (line 85) | pub fn peer_cert_chain(&self) -> Option> { method peer_cert (line 116) | pub fn peer_cert(&self) -> Option<&[u8]> { method set_failing_private_key_method (line 138) | pub fn set_failing_private_key_method(&mut self) {} method is_in_early_data (line 140) | pub fn is_in_early_data(&self) -> bool { method early_data_reason (line 144) | pub fn early_data_reason(&self) -> u32 { method set_session (line 148) | pub fn set_session(&mut self, session: &[u8]) -> Result<()> { method reset_early_data_reject (line 173) | pub fn reset_early_data_reject(&mut self) { method sigalg (line 177) | pub fn sigalg(&self) -> Option { function set_encryption_secrets (line 184) | extern "C" fn set_encryption_secrets( function sk_X509_num (line 203) | unsafe fn sk_X509_num(stack: *const STACK_OF) -> usize { function sk_X509_value (line 208) | unsafe fn sk_X509_value(stack: *const STACK_OF, idx: usize) -> *mut c_vo... function SSL_CTX_set_session_cache_mode (line 213) | pub(super) unsafe fn SSL_CTX_set_session_cache_mode( function SSL_CTX_set_tlsext_ticket_keys (line 227) | pub(super) unsafe fn SSL_CTX_set_tlsext_ticket_keys( function SSL_set_min_proto_version (line 241) | pub(super) unsafe fn SSL_set_min_proto_version( function SSL_set_max_proto_version (line 255) | pub(super) unsafe fn SSL_set_max_proto_version( function SSL_set_tlsext_host_name (line 269) | pub(super) unsafe fn SSL_set_tlsext_host_name( function SSL_get_ex_new_index (line 286) | pub(super) unsafe fn SSL_get_ex_new_index( function SSL_get_negotiated_group (line 296) | unsafe fn SSL_get_negotiated_group(ssl: *const SSL) -> c_int { function get_session_bytes (line 306) | pub(super) fn get_session_bytes(session: *mut SSL_SESSION) -> Result *mut STACK_OF; function SSL_get0_peer_certificate (line 333) | fn SSL_get0_peer_certificate(ssl: *const SSL) -> *mut X509; function SSL_ctrl (line 335) | fn SSL_ctrl( function i2d_X509 (line 339) | fn i2d_X509(px: *const X509, out: *mut *mut c_uchar) -> c_int; function OPENSSL_sk_num (line 341) | fn OPENSSL_sk_num(stack: *const OPENSSL_STACK) -> usize; function OPENSSL_sk_value (line 343) | fn OPENSSL_sk_value(stack: *const OPENSSL_STACK, idx: usize) -> *mut c_v... function CRYPTO_get_ex_new_index (line 347) | fn CRYPTO_get_ex_new_index( function d2i_SSL_SESSION (line 353) | fn d2i_SSL_SESSION( function i2d_SSL_SESSION (line 357) | pub(super) fn i2d_SSL_SESSION( function SSL_group_to_name (line 361) | fn SSL_group_to_name(ssl: *const SSL, id: c_int) -> *const c_char; FILE: quiche/src/transport_params.rs type UnknownTransportParameter (line 50) | pub struct UnknownTransportParameter { function is_reserved (line 63) | pub fn is_reserved(&self) -> bool { function from (line 73) | fn from(value: UnknownTransportParameter>) -> Self { function from (line 89) | fn from(value: UnknownTransportParameter<&[u8]>) -> Self { type UnknownTransportParameters (line 99) | pub struct UnknownTransportParameters { method push (line 109) | pub fn push(&mut self, new: UnknownTransportParameter<&[u8]>) -> Resul... type UnknownTransportParameterIterator (line 122) | pub struct UnknownTransportParameterIterator<'a> { type IntoIter (line 128) | type IntoIter = UnknownTransportParameterIterator<'a>; type Item (line 129) | type Item = &'a UnknownTransportParameter>; method into_iter (line 131) | fn into_iter(self) -> Self::IntoIter { type Item (line 140) | type Item = &'a UnknownTransportParameter>; method next (line 142) | fn next(&mut self) -> Option { type TransportParams (line 151) | pub struct TransportParams { method decode (line 219) | pub(crate) fn decode( method encode_param (line 390) | pub(crate) fn encode_param( method encode (line 399) | pub(crate) fn encode<'a>( method to_qlog (line 565) | pub fn to_qlog( method default (line 194) | fn default() -> TransportParams { FILE: task-killswitch/src/lib.rs type RemoveOnDrop (line 41) | struct RemoveOnDrop { method drop (line 46) | fn drop(&mut self) { type TaskKillswitch (line 56) | struct TaskKillswitch { method new (line 73) | fn new(storage: &'static ActiveTasks) -> Self { method with_leaked_storage (line 89) | fn with_leaked_storage() -> Self { method was_activated (line 94) | fn was_activated(&self) -> bool { method spawn_task (line 101) | fn spawn_task( method activate (line 127) | fn activate(&self) { method killed (line 145) | fn killed(&self) -> impl Future + Send + 'static { type TaskEntry (line 153) | enum TaskEntry { type ActiveTasks (line 162) | struct ActiveTasks { method kill_all (line 167) | fn kill_all(&self) { method add_task_if (line 176) | fn add_task_if( method remove_task (line 200) | fn remove_task(&self, id: task::Id) { function spawn_with_killswitch (line 225) | pub fn spawn_with_killswitch( function activate (line 232) | pub async fn activate() { function activate_now (line 242) | pub fn activate_now() { function killed_signal (line 253) | pub fn killed_signal() -> impl Future + Send + 'static { type TaskAbortSignal (line 264) | struct TaskAbortSignal(Option>); method new (line 267) | fn new() -> (Self, oneshot::Receiver<()>) { method drop (line 275) | fn drop(&mut self) { function start_test_tasks (line 280) | fn start_test_tasks( function activate_killswitch_early (line 299) | async fn activate_killswitch_early() { function activate_killswitch_with_delay (line 314) | async fn activate_killswitch_with_delay() { FILE: tokio-quiche/examples/async_http3_server/args.rs type Args (line 32) | pub struct Args { function default_cert_path (line 67) | fn default_cert_path() -> String { function default_private_key_path (line 71) | fn default_private_key_path() -> String { function path_relative_to_manifest_dir (line 75) | fn path_relative_to_manifest_dir(path: &str) -> String { FILE: tokio-quiche/examples/async_http3_server/body.rs constant STREAM_BYTES (line 42) | const STREAM_BYTES: &str = "/stream-bytes/"; type ExampleBody (line 45) | pub struct ExampleBody { method new (line 58) | pub fn new(req: &Request<()>) -> Self { method send (line 83) | pub(crate) async fn send( type Data (line 120) | type Data = Bytes; type Error (line 121) | type Error = Box; method poll_frame (line 123) | fn poll_frame( method size_hint (line 140) | fn size_hint(&self) -> SizeHint { FILE: tokio-quiche/examples/async_http3_server/main.rs function main (line 50) | async fn main() { FILE: tokio-quiche/examples/async_http3_server/server.rs function service_fn (line 62) | pub async fn service_fn(req: Request<()>) -> Response { type Server (line 72) | pub struct Server function new (line 87) | pub fn new(service_fn: S) -> Self { function serve_connection (line 101) | pub async fn serve_connection( function handle_h3_event (line 116) | fn handle_h3_event(event: H3Event) -> QuicResult<()> { function handle_server_h3_event (line 141) | async fn handle_server_h3_event( function handle_incoming_headers (line 165) | async fn handle_incoming_headers( function handle_request (line 197) | async fn handle_request( function end_stream (line 216) | async fn end_stream(frame_sender: &mut OutboundFrameSender) { function convert_headers (line 227) | fn convert_headers( function convert_response (line 281) | fn convert_response(res: Response) -> (Vec
, B) { FILE: tokio-quiche/src/buf_factory.rs constant POOL_SHARDS (line 47) | const POOL_SHARDS: usize = 8; constant POOL_SIZE (line 48) | const POOL_SIZE: usize = 16 * 1024; constant DATAGRAM_POOL_SIZE (line 49) | const DATAGRAM_POOL_SIZE: usize = 64 * 1024; constant TINY_BUF_SIZE (line 51) | const TINY_BUF_SIZE: usize = 64; constant SMALL_BUF_SIZE (line 52) | const SMALL_BUF_SIZE: usize = 1024; constant MEDIUM_BUF_SIZE (line 53) | const MEDIUM_BUF_SIZE: usize = 4096; constant MAX_POOL_BUF_SIZE (line 54) | const MAX_POOL_BUF_SIZE: usize = 64 * 1024; type BufPool (line 56) | type BufPool = Pool; type PooledBuf (line 74) | pub type PooledBuf = Pooled; type PooledDgram (line 79) | pub type PooledDgram = Pooled; constant DGRAM_PREFIX (line 86) | const DGRAM_PREFIX: usize = 8 + 1; type BufFactory (line 90) | pub struct BufFactory; constant MAX_BUF_SIZE (line 95) | pub const MAX_BUF_SIZE: usize = MAX_POOL_BUF_SIZE; constant MAX_DGRAM_SIZE (line 97) | pub const MAX_DGRAM_SIZE: usize = MAX_DATAGRAM_SIZE; method get_empty_buf (line 101) | pub fn get_empty_buf() -> PooledBuf { method get_empty_datagram (line 107) | pub fn get_empty_datagram() -> PooledDgram { method get_max_buf (line 112) | pub fn get_max_buf() -> PooledBuf { method get_max_datagram (line 118) | pub fn get_max_datagram() -> PooledDgram { method dgram_from_vec (line 127) | pub fn dgram_from_vec(dgram: Vec) -> PooledDgram { method buf_from_slice (line 133) | pub fn buf_from_slice(slice: &[u8]) -> PooledBuf { method dgram_from_slice (line 146) | pub fn dgram_from_slice(slice: &[u8]) -> PooledDgram { type QuicheBuf (line 161) | pub struct QuicheBuf { method new (line 168) | pub(crate) fn new(inner: PooledBuf) -> Self { method as_ref (line 178) | fn as_ref(&self) -> &[u8] { method split_at (line 184) | fn split_at(&mut self, at: usize) -> Self { method try_add_prefix (line 198) | fn try_add_prefix(&mut self, prefix: &[u8]) -> bool { type Buf (line 215) | type Buf = QuicheBuf; function buf_from_slice (line 217) | fn buf_from_slice(buf: &[u8]) -> Self::Buf { FILE: tokio-quiche/src/http3/driver/client.rs type ClientH3Driver (line 58) | pub type ClientH3Driver = H3Driver; type ClientH3Controller (line 61) | pub type ClientH3Controller = H3Controller; method request_sender (line 285) | pub fn request_sender(&self) -> ClientRequestSender { type ClientEventStream (line 65) | pub type ClientEventStream = mpsc::UnboundedReceiver; type ClientRequestSender (line 68) | pub type ClientRequestSender = RequestSender Self { type ClientH3Command (line 103) | pub enum ClientH3Command { method from (line 112) | fn from(cmd: H3Command) -> Self { method from (line 118) | fn from(cmd: QuicCommand) -> Self { method from (line 124) | fn from(req: NewClientRequest) -> Self { type PendingClientRequest (line 134) | struct PendingClientRequest { type ClientHooks (line 139) | pub struct ClientHooks { method initiate_request (line 148) | fn initiate_request( method handle_response (line 204) | fn handle_response( type Command (line 237) | type Command = ClientH3Command; type Event (line 238) | type Event = ClientH3Event; method new (line 240) | fn new(_settings: &Http3Settings) -> Self { method conn_established (line 246) | fn conn_established( method headers_received (line 257) | fn headers_received( method conn_command (line 271) | fn conn_command( FILE: tokio-quiche/src/http3/driver/connection.rs type ClientH3Connection (line 45) | pub type ClientH3Connection = H3Connection; type ServerH3Connection (line 46) | pub type ServerH3Connection = H3Connection; type H3Connection (line 50) | pub struct H3Connection { function new (line 57) | pub fn new( function local_addr (line 67) | pub fn local_addr(&self) -> SocketAddr { function peer_addr (line 72) | pub fn peer_addr(&self) -> SocketAddr { function audit_log_stats (line 77) | pub fn audit_log_stats(&self) -> &Arc { function stats (line 82) | pub fn stats(&self) -> &Arc> { function scid (line 87) | pub fn scid(&self) -> &ConnectionId<'static> { method poll_shutdown (line 94) | fn poll_shutdown( method as_socket_stats (line 104) | fn as_socket_stats(&self) -> SocketStats { method as_quic_stats (line 109) | fn as_quic_stats(&self) -> Option<&Arc> { FILE: tokio-quiche/src/http3/driver/datagram.rs function extract_flow_id (line 38) | pub(crate) fn extract_flow_id( function send_h3_dgram (line 78) | pub(crate) fn send_h3_dgram( function receive_h3_dgram (line 97) | pub(crate) fn receive_h3_dgram( FILE: tokio-quiche/src/http3/driver/hooks.rs type InboundHeaders (line 40) | pub(crate) struct InboundHeaders { type DriverHooks (line 52) | pub trait DriverHooks: Sized + Send + 'static { method new (line 61) | fn new(settings: &Http3Settings) -> Self; method conn_established (line 66) | fn conn_established( method headers_received (line 73) | fn headers_received( method conn_command (line 81) | fn conn_command( method has_wait_action (line 89) | fn has_wait_action(driver: &mut H3Driver) -> bool { method wait_for_action (line 97) | fn wait_for_action( FILE: tokio-quiche/src/http3/driver/mod.rs constant DEFAULT_PRIO (line 102) | const DEFAULT_PRIO: h3::Priority = h3::Priority::new(3, true); constant STREAM_CAPACITY (line 107) | const STREAM_CAPACITY: usize = 16; constant STREAM_CAPACITY (line 109) | const STREAM_CAPACITY: usize = 1; constant FLOW_CAPACITY (line 113) | const FLOW_CAPACITY: usize = 2048; type OutboundFrameSender (line 117) | pub type OutboundFrameSender = PollSender; type OutboundFrameStream (line 121) | type OutboundFrameStream = mpsc::Receiver; type InboundFrameSender (line 125) | type InboundFrameSender = PollSender; type InboundFrameStream (line 129) | pub type InboundFrameStream = mpsc::Receiver; type H3ConnectionError (line 137) | pub enum H3ConnectionError { method from (line 152) | fn from(err: h3::Error) -> Self { method from (line 158) | fn from(err: quiche::Error) -> Self { method fmt (line 166) | fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { type H3ConnectionResult (line 179) | type H3ConnectionResult = Result; type IncomingH3Headers (line 185) | pub struct IncomingH3Headers { method fmt (line 203) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type H3Event (line 219) | pub enum H3Event { method from_error (line 266) | fn from_error(err: &H3ConnectionError) -> Option { type OutboundFrame (line 283) | pub enum OutboundFrame { method body (line 304) | pub fn body(body: PooledBuf, fin: bool) -> Self { type InboundFrame (line 316) | pub enum InboundFrame { type H3Driver (line 332) | pub struct H3Driver { function new (line 378) | pub fn new(http3_settings: Http3Settings) -> (Self, H3Controller) { function get_or_insert_flow (line 412) | fn get_or_insert_flow( function insert_stream (line 435) | fn insert_stream(&mut self, stream_id: u64, ctx: StreamCtx) { function process_h3_data (line 442) | fn process_h3_data( function process_h3_fin (line 582) | fn process_h3_fin( function process_read_event (line 616) | fn process_read_event( function forward_settings (line 676) | fn forward_settings(&mut self) -> H3ConnectionResult<()> { function process_write_frame (line 701) | fn process_write_frame( function on_fin_sent (line 811) | fn on_fin_sent(ctx: &mut StreamCtx) -> h3::Result<()> { function upstream_ready (line 832) | fn upstream_ready( function upstream_read_ready (line 841) | fn upstream_read_ready( function upstream_write_ready (line 861) | fn upstream_write_ready( function dgram_ready (line 881) | fn dgram_ready( function conn_mut (line 920) | fn conn_mut(&mut self) -> H3ConnectionResult<&mut h3::Connection> { function connection_not_present (line 927) | const fn connection_not_present() -> H3ConnectionError { function cleanup_stream (line 936) | fn cleanup_stream( function shutdown_stream (line 981) | fn shutdown_stream( function handle_core_command (line 1034) | fn handle_core_command( function process_available_dgrams (line 1059) | fn process_available_dgrams( function process_writable_stream (line 1075) | fn process_writable_stream( function record_quiche_error (line 1175) | fn record_quiche_error(qconn: &mut QuicheConnection, metrics: &impl Metr... method on_conn_established (line 1196) | fn on_conn_established( method should_act (line 1208) | fn should_act(&self) -> bool { method buffer (line 1213) | fn buffer(&mut self) -> &mut [u8] { method process_reads (line 1222) | fn process_reads(&mut self, qconn: &mut QuicheConnection) -> QuicResult<... method process_writes (line 1245) | fn process_writes(&mut self, qconn: &mut QuicheConnection) -> QuicResult... method on_conn_close (line 1260) | fn on_conn_close( method wait_for_data (line 1297) | async fn wait_for_data( method drop (line 1320) | fn drop(&mut self) { type H3Command (line 1335) | pub enum H3Command { type StreamShutdown (line 1365) | pub enum StreamShutdown { type RequestSender (line 1382) | pub struct RequestSender { function send (line 1392) | pub fn send(&self, v: T) -> Result<(), mpsc::error::SendError> { method clone (line 1398) | fn clone(&self) -> Self { type H3Controller (line 1413) | pub struct H3Controller { function event_receiver_mut (line 1425) | pub fn event_receiver_mut(&mut self) -> &mut UnboundedReceiver { function take_event_receiver (line 1432) | pub fn take_event_receiver(&mut self) -> UnboundedReceiver { function cmd_sender (line 1439) | pub fn cmd_sender(&self) -> RequestSender { function send_goaway (line 1447) | pub fn send_goaway(&self) { function h3_cmd_sender (line 1452) | pub fn h3_cmd_sender(&self) -> RequestSender { function shutdown_stream (line 1465) | pub fn shutdown_stream(&self, stream_id: u64, shutdown: StreamShutdown) { FILE: tokio-quiche/src/http3/driver/server.rs type ServerH3Driver (line 55) | pub type ServerH3Driver = H3Driver; type ServerH3Controller (line 58) | pub type ServerH3Controller = H3Controller; type ServerEventStream (line 62) | pub type ServerEventStream = mpsc::UnboundedReceiver; type RawPriorityValue (line 65) | pub struct RawPriorityValue(Vec); method from (line 68) | fn from(value: Vec) -> Self { type Target (line 74) | type Target = [u8]; method deref (line 76) | fn deref(&self) -> &Self::Target { type IsInEarlyData (line 83) | pub struct IsInEarlyData(bool); method new (line 86) | fn new(is_in_early_data: bool) -> Self { type Target (line 92) | type Target = bool; method deref (line 94) | fn deref(&self) -> &Self::Target { type ServerH3Event (line 101) | pub enum ServerH3Event { method from (line 113) | fn from(ev: H3Event) -> Self { type ServerH3Command (line 134) | pub enum ServerH3Command { method from (line 139) | fn from(cmd: H3Command) -> Self { method from (line 145) | fn from(cmd: QuicCommand) -> Self { constant PRE_HEADERS_BOOSTED_PRIORITY_URGENCY (line 153) | const PRE_HEADERS_BOOSTED_PRIORITY_URGENCY: u8 = 64; constant PRE_HEADERS_BOOSTED_PRIORITY_INCREMENTAL (line 156) | const PRE_HEADERS_BOOSTED_PRIORITY_INCREMENTAL: bool = false; type ServerHooks (line 158) | pub struct ServerHooks { method handle_request (line 174) | fn handle_request( type Command (line 246) | type Command = ServerH3Command; type Event (line 247) | type Event = ServerH3Event; method new (line 249) | fn new(settings: &Http3Settings) -> Self { method conn_established (line 257) | fn conn_established( method headers_received (line 283) | fn headers_received( method conn_command (line 306) | fn conn_command( method has_wait_action (line 314) | fn has_wait_action(driver: &mut H3Driver) -> bool { method wait_for_action (line 318) | async fn wait_for_action( FILE: tokio-quiche/src/http3/driver/streams.rs type StreamCtx (line 45) | pub(crate) struct StreamCtx { method new (line 71) | pub(crate) fn new( method wait_for_send (line 96) | pub(crate) fn wait_for_send(&mut self, stream_id: u64) -> WaitForStream { method wait_for_recv (line 104) | pub(crate) fn wait_for_recv(&mut self, stream_id: u64) -> WaitForStream { method handle_recvd_stop_sending (line 116) | pub(crate) fn handle_recvd_stop_sending(&mut self, wire_err_code: u64) { method handle_recvd_reset (line 132) | pub(crate) fn handle_recvd_reset(&mut self, wire_err_code: u64) { method handle_sent_reset (line 143) | pub(crate) fn handle_sent_reset(&mut self, wire_err_code: u64) { method handle_sent_stop_sending (line 150) | pub(crate) fn handle_sent_stop_sending(&mut self, wire_err_code: u64) { method both_directions_done (line 161) | pub(crate) fn both_directions_done(&self) -> bool { type FlowCtx (line 166) | pub(crate) struct FlowCtx { method new (line 175) | pub(crate) fn new(capacity: usize) -> (Self, InboundFrameStream) { method send_best_effort (line 185) | pub(crate) fn send_best_effort(&self, datagram: InboundFrame) { type WaitForStream (line 190) | pub(crate) enum WaitForStream { type StreamReady (line 195) | pub(crate) enum StreamReady { type Output (line 201) | type Output = StreamReady; method poll (line 203) | fn poll(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll { type WaitForDownstreamData (line 213) | pub(crate) struct WaitForDownstreamData { type ReceivedDownstreamData (line 218) | pub(crate) struct ReceivedDownstreamData { type Output (line 225) | type Output = ReceivedDownstreamData; method poll (line 227) | fn poll( type WaitForUpstreamCapacity (line 242) | pub(crate) struct WaitForUpstreamCapacity { type HaveUpstreamCapacity (line 247) | pub(crate) struct HaveUpstreamCapacity { type Output (line 253) | type Output = HaveUpstreamCapacity; method poll (line 255) | fn poll( FILE: tokio-quiche/src/http3/driver/test_utils.rs function default_quiche_config (line 27) | pub fn default_quiche_config() -> quiche::Config { function make_request_headers (line 46) | pub fn make_request_headers(method: &str) -> Vec
{ function make_response_headers (line 55) | pub fn make_response_headers() -> Vec
{ function make_response_trailers (line 62) | pub fn make_response_trailers() -> Vec
{ type GetConnectionForHook (line 69) | pub trait GetConnectionForHook { method qconn (line 70) | fn qconn(pipe: &mut Pipe) -> &mut quiche::Connection; method peer_qconn (line 71) | fn peer_qconn(pipe: &mut Pipe) -> &mut quiche::Connection; method qconn (line 75) | fn qconn(pipe: &mut Pipe) -> &mut quiche::Connection { method peer_qconn (line 79) | fn peer_qconn(pipe: &mut Pipe) -> &mut quiche::Connection { method qconn (line 85) | fn qconn(pipe: &mut Pipe) -> &mut quiche::Connection { method peer_qconn (line 89) | fn peer_qconn(pipe: &mut Pipe) -> &mut quiche::Connection { type DriverTestHelper (line 98) | pub struct DriverTestHelper { function new (line 107) | pub fn new() -> anyhow::Result { function with_pipe (line 114) | pub fn with_pipe(pipe: Pipe) -> anyhow::Result { function with_pipe_and_http3_settings (line 118) | pub fn with_pipe_and_http3_settings( function advance_and_run_loop (line 141) | pub fn advance_and_run_loop(&mut self) -> anyhow::Result<()> { function complete_handshake (line 154) | pub fn complete_handshake(&mut self) -> anyhow::Result<()> { function forward_settings (line 171) | pub fn forward_settings(&mut self) -> anyhow::Result<()> { function work_loop_iter (line 176) | pub fn work_loop_iter(&mut self) -> anyhow::Result<()> { function process_commands (line 201) | pub fn process_commands(&mut self) -> anyhow::Result { function poll_peer (line 212) | fn poll_peer(&mut self) -> h3::Result<(u64, h3::Event)> { function peer_send_body (line 217) | fn peer_send_body( function peer_recv_body_vec (line 226) | fn peer_recv_body_vec( function driver_try_recv_body (line 243) | pub fn driver_try_recv_body( function driver_send_request (line 274) | pub fn driver_send_request( function driver_enqueue_request (line 298) | pub fn driver_enqueue_request( function driver_recv_core_event (line 314) | pub fn driver_recv_core_event(&mut self) -> anyhow::Result { function driver_recv_client_event (line 322) | pub fn driver_recv_client_event(&mut self) -> anyhow::Result h3::Result<(u64, h3::Event)> { function peer_server_send_body (line 348) | pub fn peer_server_send_body( function peer_server_recv_body_vec (line 356) | pub fn peer_server_recv_body_vec( function peer_client_send_request (line 365) | pub fn peer_client_send_request( function driver_recv_core_event (line 375) | pub fn driver_recv_core_event(&mut self) -> anyhow::Result { function driver_recv_server_event (line 383) | pub fn driver_recv_server_event(&mut self) -> anyhow::Result h3::Result<(u64, h3::Event)> { function peer_client_send_body (line 392) | pub fn peer_client_send_body( function peer_client_recv_body_vec (line 400) | pub fn peer_client_recv_body_vec( FILE: tokio-quiche/src/http3/driver/tests.rs function client_fin_before_server_body (line 16) | fn client_fin_before_server_body() { function client_send_reset_stream_when_outbound_frame_channel_drops (line 110) | fn client_send_reset_stream_when_outbound_frame_channel_drops() { function client_send_reset_stream_when_outbound_frame_channel_drops_2 (line 185) | fn client_send_reset_stream_when_outbound_frame_channel_drops_2() { function client_send_reset_stream_with_full_stream (line 255) | fn client_send_reset_stream_with_full_stream() { function client_drop_outbound_frame_channel_after_fin_no_reset (line 361) | fn client_drop_outbound_frame_channel_after_fin_no_reset() { function client_fin_before_server_body (line 443) | fn client_fin_before_server_body() { function verify_pr_2162 (line 504) | fn verify_pr_2162() { function client_sends_stop_sending (line 552) | fn client_sends_stop_sending() { function client_sends_reset_stream_before_server_fin (line 638) | fn client_sends_reset_stream_before_server_fin() { function client_sends_reset_stream_after_server_fin (line 725) | fn client_sends_reset_stream_after_server_fin() { function client_sends_reset_stream_while_reading_wait_for_data (line 805) | fn client_sends_reset_stream_while_reading_wait_for_data() { function server_sends_reset_stream_while_reading_process_reads (line 931) | fn server_sends_reset_stream_while_reading_process_reads() { function server_driver_send_stop_sending_after_channel_drop (line 1032) | fn server_driver_send_stop_sending_after_channel_drop() { function server_driver_drop_channel_after_fin (line 1138) | fn server_driver_drop_channel_after_fin() { function server_driver_drop_channel_after_fin_2 (line 1214) | fn server_driver_drop_channel_after_fin_2() { function server_send_trailers (line 1302) | fn server_send_trailers() { function server_shutdown_stream_write_direction (line 1373) | fn server_shutdown_stream_write_direction() { function server_shutdown_stream_read_direction (line 1423) | fn server_shutdown_stream_read_direction() { function server_shutdown_stream_both_directions (line 1474) | fn server_shutdown_stream_both_directions() { FILE: tokio-quiche/src/http3/settings.rs type Http3Settings (line 44) | pub struct Http3Settings { function from (line 67) | fn from(value: &Http3Settings) -> Self { type TimeoutKey (line 91) | pub(crate) struct TimeoutKey(delay_queue::Key); type Http3SettingsEnforcer (line 93) | pub(crate) struct Http3SettingsEnforcer { method from (line 99) | fn from(value: &Http3Settings) -> Self { method enforce_requests_limit (line 115) | pub fn enforce_requests_limit(&self, request_count: u64) -> bool { method post_accept_timeout (line 124) | pub fn post_accept_timeout(&self) -> Option { method add_timeout (line 129) | pub fn add_timeout( method has_pending_timeouts (line 138) | pub fn has_pending_timeouts(&self) -> bool { method poll_timeouts (line 143) | fn poll_timeouts(&mut self, cx: &mut Context) -> Poll bool { FILE: tokio-quiche/src/http3/stats.rs type H3AuditStats (line 38) | pub struct H3AuditStats { method new (line 75) | pub fn new(stream_id: u64) -> Self { method stream_id (line 92) | pub fn stream_id(&self) -> u64 { method downstream_bytes_sent (line 98) | pub fn downstream_bytes_sent(&self) -> u64 { method downstream_bytes_recvd (line 104) | pub fn downstream_bytes_recvd(&self) -> u64 { method recvd_stop_sending_error_code (line 112) | pub fn recvd_stop_sending_error_code(&self) -> i64 { method recvd_reset_stream_error_code (line 120) | pub fn recvd_reset_stream_error_code(&self) -> i64 { method sent_stop_sending_error_code (line 128) | pub fn sent_stop_sending_error_code(&self) -> i64 { method sent_reset_stream_error_code (line 136) | pub fn sent_reset_stream_error_code(&self) -> i64 { method recvd_stream_fin (line 142) | pub fn recvd_stream_fin(&self) -> StreamClosureKind { method sent_stream_fin (line 148) | pub fn sent_stream_fin(&self) -> StreamClosureKind { method headers_flush_duration (line 159) | pub fn headers_flush_duration(&self) -> Duration { method add_downstream_bytes_sent (line 164) | pub fn add_downstream_bytes_sent(&self, bytes_sent: u64) { method add_downstream_bytes_recvd (line 170) | pub fn add_downstream_bytes_recvd(&self, bytes_recvd: u64) { method set_recvd_stop_sending_error_code (line 176) | pub fn set_recvd_stop_sending_error_code( method set_recvd_reset_stream_error_code (line 184) | pub fn set_recvd_reset_stream_error_code( method set_sent_stop_sending_error_code (line 192) | pub fn set_sent_stop_sending_error_code( method set_sent_reset_stream_error_code (line 200) | pub fn set_sent_reset_stream_error_code( method set_recvd_stream_fin (line 208) | pub fn set_recvd_stream_fin(&self, recvd_stream_fin: StreamClosureKind) { method set_sent_stream_fin (line 213) | pub fn set_sent_stream_fin(&self, sent_stream_fin: StreamClosureKind) { method add_header_flush_duration (line 218) | pub fn add_header_flush_duration(&self, duration: Duration) { FILE: tokio-quiche/src/lib.rs type QuicConnectionStream (line 138) | pub type QuicConnectionStream = function listen_with_capabilities (line 151) | pub fn listen_with_capabilities( function listen (line 172) | pub fn listen( function capture_quiche_logs (line 210) | pub(crate) fn capture_quiche_logs() { FILE: tokio-quiche/src/metrics/labels.rs type QuicHandshakeStage (line 38) | pub enum QuicHandshakeStage { type QuicWriteError (line 56) | pub enum QuicWriteError { type HandshakeError (line 65) | pub enum HandshakeError { method from (line 74) | fn from(err: &quiche::Error) -> Self { method from (line 84) | fn from(err: &quic::HandshakeError) -> Self { method from (line 93) | fn from(err: &BoxError) -> Self { type QuicInvalidInitialPacketError (line 106) | pub enum QuicInvalidInitialPacketError { method fmt (line 115) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { method hash (line 133) | fn hash(&self, state: &mut H) method serialize (line 127) | fn serialize(&self, serializer: S) -> Result Self { type H3Error (line 154) | pub struct H3Error(u64); method from (line 197) | fn from(code: u64) -> Self { method serialize (line 157) | fn serialize(&self, serializer: S) -> Result Self { method serialize (line 207) | fn serialize(&self, serializer: S) -> Result Gauge; method maximum_writable_streams (line 47) | fn maximum_writable_streams(&self) -> Histogram; method handshake_time_seconds (line 50) | fn handshake_time_seconds( method write_errors (line 55) | fn write_errors(&self, reason: labels::QuicWriteError) -> Counter; method send_to_wouldblock_duration_s (line 59) | fn send_to_wouldblock_duration_s(&self) -> TimeHistogram; method skipped_mid_handshake_flush_count (line 63) | fn skipped_mid_handshake_flush_count(&self) -> Counter; method invalid_cid_packet_count (line 66) | fn invalid_cid_packet_count(&self, reason: crate::BoxError) -> Counter; method accepted_initial_packet_count (line 69) | fn accepted_initial_packet_count(&self) -> Counter; method expensive_accepted_initial_packet_count (line 72) | fn expensive_accepted_initial_packet_count(&self, peer_ip: IpAddr) method rejected_initial_packet_count (line 77) | fn rejected_initial_packet_count( method expensive_rejected_initial_packet_count (line 83) | fn expensive_rejected_initial_packet_count( method utilized_bandwidth (line 89) | fn utilized_bandwidth(&self) -> Gauge; method max_bandwidth_mbps (line 93) | fn max_bandwidth_mbps(&self) -> Histogram; method max_loss_pct (line 97) | fn max_loss_pct(&self) -> Histogram; method udp_drop_count (line 100) | fn udp_drop_count(&self) -> Counter; method failed_handshakes (line 103) | fn failed_handshakes(&self, reason: labels::HandshakeError) -> Counter; method local_h3_conn_close_error_count (line 106) | fn local_h3_conn_close_error_count(&self, reason: labels::H3Error) method local_quic_conn_close_error_count (line 110) | fn local_quic_conn_close_error_count( method peer_h3_conn_close_error_count (line 115) | fn peer_h3_conn_close_error_count(&self, reason: labels::H3Error) -> C... method peer_quic_conn_close_error_count (line 118) | fn peer_quic_conn_close_error_count( method tokio_runtime_task_schedule_delay_histogram (line 125) | fn tokio_runtime_task_schedule_delay_histogram( method tokio_runtime_task_poll_duration_histogram (line 130) | fn tokio_runtime_task_poll_duration_histogram( method tokio_runtime_task_total_poll_time_micros (line 135) | fn tokio_runtime_task_total_poll_time_micros( method connections_in_memory (line 146) | fn connections_in_memory(&self) -> Gauge { method maximum_writable_streams (line 150) | fn maximum_writable_streams(&self) -> Histogram { method handshake_time_seconds (line 154) | fn handshake_time_seconds( method write_errors (line 160) | fn write_errors(&self, reason: labels::QuicWriteError) -> Counter { method send_to_wouldblock_duration_s (line 164) | fn send_to_wouldblock_duration_s(&self) -> TimeHistogram { method skipped_mid_handshake_flush_count (line 168) | fn skipped_mid_handshake_flush_count(&self) -> Counter { method invalid_cid_packet_count (line 172) | fn invalid_cid_packet_count(&self, reason: crate::BoxError) -> Counter { method accepted_initial_packet_count (line 176) | fn accepted_initial_packet_count(&self) -> Counter { method expensive_accepted_initial_packet_count (line 180) | fn expensive_accepted_initial_packet_count( method rejected_initial_packet_count (line 186) | fn rejected_initial_packet_count( method expensive_rejected_initial_packet_count (line 192) | fn expensive_rejected_initial_packet_count( method utilized_bandwidth (line 198) | fn utilized_bandwidth(&self) -> Gauge { method max_bandwidth_mbps (line 202) | fn max_bandwidth_mbps(&self) -> Histogram { method max_loss_pct (line 206) | fn max_loss_pct(&self) -> Histogram { method udp_drop_count (line 210) | fn udp_drop_count(&self) -> Counter { method failed_handshakes (line 214) | fn failed_handshakes(&self, reason: labels::HandshakeError) -> Counter { method local_h3_conn_close_error_count (line 218) | fn local_h3_conn_close_error_count( method local_quic_conn_close_error_count (line 224) | fn local_quic_conn_close_error_count( method peer_h3_conn_close_error_count (line 230) | fn peer_h3_conn_close_error_count(&self, reason: labels::H3Error) -> C... method peer_quic_conn_close_error_count (line 234) | fn peer_quic_conn_close_error_count( method tokio_runtime_task_schedule_delay_histogram (line 243) | fn tokio_runtime_task_schedule_delay_histogram( method tokio_runtime_task_poll_duration_histogram (line 250) | fn tokio_runtime_task_poll_duration_histogram( method tokio_runtime_task_total_poll_time_micros (line 257) | fn tokio_runtime_task_total_poll_time_micros( type DefaultMetrics (line 143) | pub struct DefaultMetrics; function connections_in_memory (line 267) | pub fn connections_in_memory() -> Gauge; function maximum_writable_streams (line 272) | pub fn maximum_writable_streams() -> Histogram; function handshake_time_seconds (line 276) | pub fn handshake_time_seconds( function write_errors (line 281) | pub fn write_errors(reason: labels::QuicWriteError) -> Counter; function send_to_wouldblock_duration_s (line 286) | pub fn send_to_wouldblock_duration_s() -> TimeHistogram; function skipped_mid_handshake_flush_count (line 290) | pub fn skipped_mid_handshake_flush_count() -> Counter; function invalid_cid_packet_count (line 293) | pub fn invalid_cid_packet_count(reason: String) -> Counter; function accepted_initial_packet_count (line 296) | pub fn accepted_initial_packet_count() -> Counter; function expensive_accepted_initial_packet_count (line 300) | pub fn expensive_accepted_initial_packet_count(peer_ip: IpAddr) -> Counter; function rejected_initial_packet_count (line 304) | pub fn rejected_initial_packet_count( function expensive_rejected_initial_packet_count (line 311) | pub fn expensive_rejected_initial_packet_count( function utilized_bandwidth (line 317) | pub fn utilized_bandwidth() -> Gauge; function max_bandwidth_mbps (line 322) | pub fn max_bandwidth_mbps() -> Histogram; function max_loss_pct (line 327) | pub fn max_loss_pct() -> Histogram; function udp_drop_count (line 330) | pub fn udp_drop_count() -> Counter; function failed_handshakes (line 333) | pub fn failed_handshakes(reason: labels::HandshakeError) -> Counter; function local_h3_conn_close_error_count (line 336) | pub fn local_h3_conn_close_error_count(reason: labels::H3Error) -> Counter; function local_quic_conn_close_error_count (line 339) | pub fn local_quic_conn_close_error_count( function peer_h3_conn_close_error_count (line 344) | pub fn peer_h3_conn_close_error_count(reason: labels::H3Error) -> Counter; function peer_quic_conn_close_error_count (line 347) | pub fn peer_quic_conn_close_error_count(reason: labels::QuicError) function runtime_task_schedule_delay_histogram (line 355) | pub fn runtime_task_schedule_delay_histogram( function runtime_task_poll_duration_histogram (line 361) | pub fn runtime_task_poll_duration_histogram(task: &Arc) function runtime_task_total_poll_time_micros (line 365) | pub fn runtime_task_total_poll_time_micros(task: &Arc) -> Counter; function quic_expensive_metrics_ip_reduce (line 368) | pub(crate) fn quic_expensive_metrics_ip_reduce(ip: IpAddr) -> Option { type InstrumentedWaker (line 69) | struct InstrumentedWaker { method wake (line 75) | fn wake(self: Arc) { method wake_by_ref (line 79) | fn wake_by_ref(self: &Arc) { function new (line 98) | fn new(name: &str, metrics: M, future: F) -> Self { type Output (line 111) | type Output = F::Output; method poll (line 113) | fn poll(self: Pin<&mut Self>, cx: &mut Context<'_>) -> Poll { function spawn (line 168) | pub fn spawn(name: &str, metrics: M, future: T) -> JoinHandle(name: &str, metrics: M, future: T) FILE: tokio-quiche/src/quic/addr_validation_token.rs constant HMAC_KEY_LEN (line 37) | const HMAC_KEY_LEN: usize = 32; constant HMAC_TAG_LEN (line 38) | const HMAC_TAG_LEN: usize = 32; type AddrValidationTokenManager (line 40) | pub(crate) struct AddrValidationTokenManager { method gen (line 56) | pub(super) fn gen( method validate_and_extract_original_dcid (line 83) | pub(super) fn validate_and_extract_original_dcid<'t>( method default (line 45) | fn default() -> Self { function generate (line 119) | fn generate() { function validate (line 147) | fn validate() { function validate_err_short_token (line 172) | fn validate_err_short_token() { function validate_err_ips_mismatch (line 196) | fn validate_err_ips_mismatch() { function validate_err_invalid_signature (line 219) | fn validate_err_invalid_signature() { FILE: tokio-quiche/src/quic/connection/error.rs type HandshakeError (line 35) | pub enum HandshakeError { function from (line 48) | fn from(err: HandshakeError) -> Self { function make_handshake_result (line 59) | pub(crate) fn make_handshake_result(res: &QuicResult<()>) -> io::Resu... FILE: tokio-quiche/src/quic/connection/id.rs type ConnectionIdGenerator (line 41) | pub trait ConnectionIdGenerator<'a>: Send + Sync + 'static { method new_connection_id (line 43) | fn new_connection_id(&self) -> ConnectionId<'a>; method verify_connection_id (line 46) | fn verify_connection_id(&self, cid: &ConnectionId) -> QuicResult<()>; type SharedConnectionIdGenerator (line 49) | pub type SharedConnectionIdGenerator = Arc ConnectionId<'static> { method verify_connection_id (line 68) | fn verify_connection_id(&self, _cid: &ConnectionId<'_>) -> QuicResult<... FILE: tokio-quiche/src/quic/connection/map.rs constant U64_SZ (line 37) | const U64_SZ: usize = std::mem::size_of::(); constant MAX_CONN_ID_QUADS (line 38) | const MAX_CONN_ID_QUADS: usize = MAX_CONN_ID_LEN.div_ceil(U64_SZ); constant CONN_ID_USABLE_LEN (line 39) | const CONN_ID_USABLE_LEN: usize = min_usize( function min_usize (line 46) | const fn min_usize(v1: usize, v2: usize) -> usize { type CidOwned (line 57) | enum CidOwned { method from (line 70) | fn from(value: &ConnectionId<'_>) -> Self { type ConnectionMap (line 104) | pub(crate) struct ConnectionMap { method insert (line 109) | pub(crate) fn insert( method map_cid (line 119) | pub(crate) fn map_cid( method unmap_cid (line 127) | pub(crate) fn unmap_cid(&mut self, cid: &ConnectionId<'_>) { method get (line 131) | pub(crate) fn get( function cid_storage (line 151) | fn cid_storage() { FILE: tokio-quiche/src/quic/connection/mod.rs type QuicConnectionStats (line 81) | pub struct QuicConnectionStats { method from_conn (line 90) | pub(crate) fn from_conn(qconn: &QuicheConnection) -> Self { method startup_exit_to_socket_stats (line 97) | fn startup_exit_to_socket_stats( type QuicConnectionStatsShared (line 87) | pub(crate) type QuicConnectionStatsShared = Arc SocketStats { type Incoming (line 189) | pub struct Incoming { type InitialQuicConnection (line 232) | pub struct InitialQuicConnection function new (line 250) | pub(crate) fn new(params: QuicConnectionParams) -> Self { function local_addr (line 269) | pub fn local_addr(&self) -> SocketAddr { function peer_addr (line 274) | pub fn peer_addr(&self) -> SocketAddr { function ssl_mut (line 280) | pub fn ssl_mut(&mut self) -> &mut SslRef { function audit_log_stats (line 291) | pub fn audit_log_stats(&self) -> Arc { function stats (line 302) | pub fn stats(&self) -> &QuicConnectionStatsShared { function handshake_fut (line 312) | pub fn handshake_fut( function handshake (line 383) | pub async fn handshake( function resume (line 405) | pub fn resume(pre_running: Running, M, A... function start (line 439) | pub fn start(self, app: A) -> QuicConnection { type QuicConnectionParams (line 462) | pub(crate) struct QuicConnectionParams type QuicConnection (line 493) | pub struct QuicConnection { method local_addr (line 504) | pub fn local_addr(&self) -> SocketAddr { method peer_addr (line 510) | pub fn peer_addr(&self) -> SocketAddr { method audit_log_stats (line 521) | pub fn audit_log_stats(&self) -> &Arc { method stats (line 532) | pub fn stats(&self) -> &QuicConnectionStatsShared { method scid (line 538) | pub fn scid(&self) -> &ConnectionId<'static> { method as_socket_stats (line 545) | fn as_socket_stats(&self) -> SocketStats { method as_quic_stats (line 553) | fn as_quic_stats(&self) -> Option<&Arc> { method as_socket_stats (line 564) | fn as_socket_stats(&self) -> SocketStats { method as_quic_stats (line 572) | fn as_quic_stats(&self) -> Option<&Arc> { method poll_shutdown (line 583) | fn poll_shutdown( method poll_shutdown (line 594) | fn poll_shutdown( type HandshakeInfo (line 604) | pub struct HandshakeInfo { method new (line 614) | pub(crate) fn new(start_time: Instant, timeout: Option) -> S... method start_time (line 624) | pub fn start_time(&self) -> Instant { method elapsed (line 630) | pub fn elapsed(&self) -> Duration { method set_elapsed (line 634) | pub(crate) fn set_elapsed(&mut self) { method deadline (line 639) | pub(crate) fn deadline(&self) -> Option { method is_expired (line 643) | pub(crate) fn is_expired(&self) -> bool { type ApplicationOverQuic (line 663) | pub trait ApplicationOverQuic: Send + 'static { method on_conn_established (line 670) | fn on_conn_established( method should_act (line 679) | fn should_act(&self) -> bool; method buffer (line 690) | fn buffer(&mut self) -> &mut [u8]; method wait_for_data (line 712) | fn wait_for_data( method process_reads (line 725) | fn process_reads(&mut self, qconn: &mut QuicheConnection) -> QuicResul... method process_writes (line 738) | fn process_writes(&mut self, qconn: &mut QuicheConnection) -> QuicResu... method on_conn_close (line 746) | fn on_conn_close( type QuicCommand (line 761) | pub enum QuicCommand { method execute (line 787) | pub fn execute(self, qconn: &mut QuicheConnection) { method fmt (line 814) | fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { type ConnectionShutdownBehaviour (line 831) | pub struct ConnectionShutdownBehaviour { FILE: tokio-quiche/src/quic/hooks.rs type ConnectionHook (line 31) | pub trait ConnectionHook { method create_custom_ssl_context_builder (line 41) | fn create_custom_ssl_context_builder( FILE: tokio-quiche/src/quic/io/connection_stage.rs type ConnectionStage (line 53) | pub trait ConnectionStage: Send + Debug { method on_read (line 54) | fn on_read( method on_flush (line 61) | fn on_flush( method wait_deadline (line 68) | fn wait_deadline(&mut self) -> Option { method post_wait (line 72) | fn post_wait( method on_flush (line 121) | fn on_flush( method wait_deadline (line 134) | fn wait_deadline(&mut self) -> Option { method post_wait (line 138) | fn post_wait( method on_read (line 152) | fn on_read( type ConnectionStageContext (line 80) | pub struct ConnectionStageContext { function buffer (line 93) | pub fn buffer(&mut self) -> &mut [u8] { type Handshake (line 99) | pub struct Handshake { method check_handshake_timeout_expired (line 104) | fn check_handshake_timeout_expired( type RunningApplication (line 149) | pub struct RunningApplication; type Close (line 171) | pub struct Close { FILE: tokio-quiche/src/quic/io/gso.rs constant UDP_MAX_SEGMENT_COUNT (line 50) | pub(crate) const UDP_MAX_SEGMENT_COUNT: usize = 64; function tune_max_send_size (line 62) | pub(crate) fn tune_max_send_size( constant UDP_MAX_GSO_PACKET_SIZE (line 75) | pub(crate) const UDP_MAX_GSO_PACKET_SIZE: usize = 65507; type PktInfo (line 79) | pub(crate) enum PktInfo { method make_cmsg (line 86) | fn make_cmsg(&'_ self) -> ControlMessage<'_> { method from_socket_addr (line 93) | fn from_socket_addr(addr: SocketAddr) -> Self { function send_to (line 119) | pub async fn send_to( function send_to (line 180) | pub(crate) async fn send_to( function instant_zero (line 193) | fn instant_zero() { FILE: tokio-quiche/src/quic/io/utilization_estimator.rs constant EST_WIN (line 37) | const EST_WIN: usize = 10; type BandwidthReporter (line 41) | pub(super) struct BandwidthReporter { method new (line 65) | pub(super) fn new(gauge: Gauge) -> Self { method update (line 86) | pub(super) fn update(&mut self, quiche: &QuicheConnection, now: Instan... method drop (line 130) | fn drop(&mut self) { type Estimate (line 136) | pub struct Estimate { method eq (line 142) | fn eq(&self, other: &Self) -> bool { method partial_cmp (line 150) | fn partial_cmp(&self, other: &Self) -> Option { method cmp (line 156) | fn cmp(&self, other: &Self) -> std::cmp::Ordering { type Round (line 161) | struct Round { type MaxUtilizedBandwidthEstimator (line 168) | pub(super) struct MaxUtilizedBandwidthEstimator { method new (line 175) | fn new() -> Self { method new_round (line 185) | fn new_round( method get (line 234) | pub(super) fn get(&self) -> Estimate { function bandwidth_from_bytes_and_time_delta (line 245) | fn bandwidth_from_bytes_and_time_delta(bytes: u64, time_delta: Duration)... type Sample (line 265) | struct Sample { type WindowedFilter (line 270) | pub struct WindowedFilter { function new (line 281) | pub fn new(window_length: D) -> Self { function reset (line 288) | pub fn reset(&mut self, new_sample: T, new_time: I) { function get_best (line 297) | pub fn get_best(&self) -> Option { function update (line 301) | pub fn update(&mut self, new_sample: T, new_time: I) { function estimate (line 382) | fn estimate() { FILE: tokio-quiche/src/quic/io/worker.rs constant INCOMING_QUEUE_SIZE (line 69) | pub(crate) const INCOMING_QUEUE_SIZE: usize = 2048; constant CHECK_INCOMING_QUEUE_RATIO (line 73) | pub(crate) const CHECK_INCOMING_QUEUE_RATIO: usize = INCOMING_QUEUE_SIZE... constant RELEASE_TIMER_THRESHOLD (line 75) | const RELEASE_TIMER_THRESHOLD: Duration = Duration::from_micros(250); constant GSO_THRESHOLD (line 78) | const GSO_THRESHOLD: usize = 1_000; type WriterConfig (line 80) | pub struct WriterConfig { type WriteState (line 90) | pub(crate) struct WriteState { type IoWorkerParams (line 107) | pub(crate) struct IoWorkerParams { type IoWorker (line 120) | pub(crate) struct IoWorker { function new (line 144) | pub(crate) fn new(params: IoWorkerParams, conn_stage: S) -> Self { function fill_available_scids (line 166) | fn fill_available_scids(&self, qconn: &mut QuicheConnection) { function unmap_cid (line 199) | fn unmap_cid(&self, cid: ConnectionId<'static>) { function refresh_connection_ids (line 206) | fn refresh_connection_ids(&self, qconn: &mut QuicheConnection) { function work_loop (line 216) | async fn work_loop( function measure_complete_handshake_time (line 347) | fn measure_complete_handshake_time(&mut self) { function gather_data_from_quiche_conn (line 359) | fn gather_data_from_quiche_conn( function select_path (line 528) | fn select_path( function pacing_enabled (line 548) | fn pacing_enabled(&self, qconn: &QuicheConnection) -> bool { function pacing_enabled (line 553) | fn pacing_enabled(&self, _qconn: &QuicheConnection) -> bool { function write_packet_to_buffer (line 557) | fn write_packet_to_buffer( function flush_buffer_to_socket (line 630) | async fn flush_buffer_to_socket(&mut self, send_buf: &[u8]) { function process_incoming (line 678) | fn process_incoming( function wait_for_data_or_handshake (line 704) | async fn wait_for_data_or_handshake( function wait_for_quiche (line 739) | async fn wait_for_quiche( type WaitForDataOrHandshakeDirective (line 768) | enum WaitForDataOrHandshakeDirective { type Running (line 773) | pub struct Running { function ssl (line 780) | pub fn ssl(&mut self) -> &mut SslRef { type Closing (line 785) | pub(crate) struct Closing { type RunningOrClosing (line 792) | pub enum RunningOrClosing { function run (line 802) | pub(crate) async fn run( function on_conn_established (line 864) | fn on_conn_established( function from (line 889) | fn from(value: IoWorker) -> Self { function run (line 910) | pub(crate) async fn run( function close (line 942) | pub(crate) async fn close( function close_connection (line 1013) | fn close_connection(&mut self, qconn: &mut QuicheConnection) { function min_of_some (line 1029) | fn min_of_some(v1: Option, v2: Option) -> Option { type TrackMidHandshakeFlush (line 1039) | struct TrackMidHandshakeFlush { function new (line 1045) | fn new(metrics: M) -> Self { function mark_complete (line 1052) | fn mark_complete(&mut self) { method drop (line 1058) | fn drop(&mut self) { function random_u128 (line 1065) | fn random_u128() -> u128 { FILE: tokio-quiche/src/quic/mod.rs type QuicheConnection (line 129) | pub type QuicheConnection = quiche::Connection( function connect_with_config (line 191) | pub async fn connect_with_config( function start_listener (line 281) | pub(crate) fn start_listener( FILE: tokio-quiche/src/quic/raw.rs type ConnWrapperResult (line 60) | pub struct ConnWrapperResult function wrap_quiche_conn (line 90) | pub fn wrap_quiche_conn( type ConnCloseReceiver (line 151) | pub struct ConnCloseReceiver(mpsc::UnboundedReceiver Poll<()> { method recv (line 168) | pub async fn recv(&mut self) { FILE: tokio-quiche/src/quic/router/acceptor.rs type ConnectionAcceptor (line 54) | pub(crate) struct ConnectionAcceptor { type ConnectionAcceptorConfig (line 62) | pub(crate) struct ConnectionAcceptorConfig { function new (line 75) | pub(crate) fn new( function accept_conn (line 89) | fn accept_conn( function handshake_reply (line 141) | fn handshake_reply( function stateless_retry (line 191) | fn stateless_retry( method handle_initials (line 210) | fn handle_initials( FILE: tokio-quiche/src/quic/router/connector.rs type ClientConnector (line 52) | pub(crate) struct ClientConnector { type ConnectionState (line 59) | enum ConnectionState { method take_if_queued (line 70) | fn take_if_queued(&mut self) -> Option { method take_if_pending_and_id_matches (line 80) | fn take_if_pending_and_id_matches( type PendingConnection (line 96) | struct PendingConnection { function new (line 106) | pub(crate) fn new(socket_tx: Arc, connection: QuicheConnection) -> S... function set_connection_to_pending (line 117) | fn set_connection_to_pending( function on_incoming (line 140) | fn on_incoming( function on_timeout (line 201) | fn on_timeout(&mut self, scid: ConnectionId<'static>) -> io::Result<()> { function update (line 227) | fn update(&mut self, cx: &mut Context) -> io::Result<()> { method update (line 246) | fn update(&mut self, ctx: &mut Context<'_>) -> io::Result<()> { method handle_initials (line 250) | fn handle_initials( function simple_conn_send (line 263) | fn simple_conn_send( FILE: tokio-quiche/src/quic/router/mod.rs type ConnStream (line 73) | type ConnStream = mpsc::Receiver function new (line 178) | pub(crate) fn new( function on_incoming (line 229) | fn on_incoming(&mut self, mut incoming: Incoming) -> io::Result<()> { function spawn_new_connection (line 290) | fn spawn_new_connection( function poll_recv_from (line 391) | fn poll_recv_from( function poll_recv_and_rx_time (line 407) | fn poll_recv_and_rx_time( function handle_conn_map_commands (line 609) | fn handle_conn_map_commands(&mut self) { function short_dcid (line 623) | fn short_dcid(buf: &[u8]) -> Option> { function instant_to_system (line 635) | fn instant_to_system(ts: Instant) -> SystemTime { function resolve_dst_addr (line 656) | fn resolve_dst_addr( type Output (line 673) | type Output = io::Result<()>; method poll (line 675) | fn poll(mut self: Pin<&mut Self>, cx: &mut Context) -> Poll) -> io::Result<()> { method handle_initials (line 805) | fn handle_initials( type NewConnection (line 813) | pub struct NewConnection { constant TEST_CERT_FILE (line 849) | const TEST_CERT_FILE: &str = concat!( constant TEST_KEY_FILE (line 854) | const TEST_KEY_FILE: &str = concat!( function test_connect (line 860) | fn test_connect(host_port: String) { function test_timeout (line 880) | async fn test_timeout() { FILE: tokio-quiche/src/result.rs type BoxError (line 42) | pub type BoxError = Box; type QuicResult (line 44) | pub type QuicResult = Result; type QuicResultExt (line 47) | pub trait QuicResultExt { method into_io (line 50) | fn into_io(self) -> io::Result function into_io (line 57) | fn into_io(self) -> io::Result FILE: tokio-quiche/src/settings/config.rs constant KEYLOGFILE_ENABLED (line 40) | const KEYLOGFILE_ENABLED: bool = type Config (line 44) | pub(crate) struct Config { method as_mut (line 59) | fn as_mut(&mut self) -> &mut quiche::Config { method new (line 65) | pub(crate) fn new( function make_quiche_config (line 111) | fn make_quiche_config( function quiche_config_with_tls (line 221) | fn quiche_config_with_tls( function read_file (line 261) | fn read_file(path: &str) -> QuicResult> { FILE: tokio-quiche/src/settings/hooks.rs type Hooks (line 35) | pub struct Hooks { method fmt (line 41) | fn fmt(&self, f: &mut std::fmt::Formatter) -> std::fmt::Result { FILE: tokio-quiche/src/settings/mod.rs type ConnectionParams (line 49) | pub struct ConnectionParams<'a> { function fmt (line 61) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { function new_server (line 75) | pub fn new_server( function new_client (line 89) | pub fn new_client( FILE: tokio-quiche/src/settings/quic.rs type QuicSettings (line 36) | pub struct QuicSettings { method default_alpn (line 337) | fn default_alpn() -> Vec> { method default_enable_dgram (line 345) | fn default_enable_dgram() -> bool { method default_dgram_max_queue_len (line 350) | fn default_dgram_max_queue_len() -> usize { method default_initial_max_data (line 355) | fn default_initial_max_data() -> u64 { method default_initial_max_stream_data (line 360) | fn default_initial_max_stream_data() -> u64 { method default_initial_max_streams (line 365) | fn default_initial_max_streams() -> u64 { method default_max_idle_timeout (line 370) | fn default_max_idle_timeout() -> Option { method default_max_recv_udp_payload_size (line 375) | fn default_max_recv_udp_payload_size() -> usize { method default_max_send_udp_payload_size (line 380) | fn default_max_send_udp_payload_size() -> usize { method default_disable_active_migration (line 385) | fn default_disable_active_migration() -> bool { method default_cc_algorithm (line 390) | fn default_cc_algorithm() -> String { method default_initial_congestion_window_packets (line 395) | fn default_initial_congestion_window_packets() -> usize { method default_enable_hystart (line 400) | fn default_enable_hystart() -> bool { method default_listen_backlog (line 405) | fn default_listen_backlog() -> usize { method default_max_connection_window (line 414) | fn default_max_connection_window() -> u64 { method default_max_stream_window (line 419) | fn default_max_stream_window() -> u64 { method default_grease (line 424) | fn default_grease() -> bool { method default_amplification_factor (line 429) | fn default_amplification_factor() -> usize { method default_send_capacity_factor (line 434) | fn default_send_capacity_factor() -> f64 { method default_ack_delay_exponent (line 439) | fn default_ack_delay_exponent() -> u64 { method default_max_ack_delay (line 444) | fn default_max_ack_delay() -> u64 { method default_active_connection_id_limit (line 449) | fn default_active_connection_id_limit() -> u64 { method default_max_path_challenge_recv_queue_len (line 454) | fn default_max_path_challenge_recv_queue_len() -> usize { method default_pmtud_max_probes (line 459) | fn default_pmtud_max_probes() -> u8 { function timeouts_parse_as_milliseconds (line 470) | fn timeouts_parse_as_milliseconds() { FILE: tokio-quiche/src/settings/tls.rs type TlsCertificatePaths (line 29) | pub struct TlsCertificatePaths<'p> { type CertificateKind (line 40) | pub enum CertificateKind { FILE: tokio-quiche/src/socket/capabilities.rs type IpMtuDiscoverProbe (line 68) | struct IpMtuDiscoverProbe; type Val (line 72) | type Val = (); method set (line 74) | fn set(&self, fd: &F, _val: &Self::Val) -> nix::Result<()> { type Ipv6MtuDiscoverProbe (line 95) | struct Ipv6MtuDiscoverProbe; type Val (line 99) | type Val = (); method set (line 101) | fn set(&self, fd: &F, _val: &Self::Val) -> nix::Result<()> { type RcvMark (line 122) | struct RcvMark; type Val (line 126) | type Val = (); method set (line 128) | fn set(&self, fd: &F, _val: &Self::Val) -> nix::Result<()> { type SocketCapabilitiesBuilder (line 151) | pub struct SocketCapabilitiesBuilder<'s> { function new (line 159) | pub fn new(socket: &'s S) -> Self { function gso (line 173) | pub fn gso(&mut self) -> io::Result<()> { function check_udp_drop (line 187) | pub fn check_udp_drop(&mut self) -> io::Result<()> { function txtime (line 196) | pub fn txtime(&mut self) -> io::Result<()> { function rxtime (line 210) | pub fn rxtime(&mut self) -> io::Result<()> { function gro (line 223) | pub fn gro(&mut self) -> io::Result<()> { function ipv4_pktinfo (line 232) | pub fn ipv4_pktinfo(&mut self) -> io::Result<()> { function ipv4_recvorigdstaddr (line 244) | pub fn ipv4_recvorigdstaddr(&mut self) -> io::Result<()> { function ipv6_pktinfo (line 253) | pub fn ipv6_pktinfo(&mut self) -> io::Result<()> { function ipv6_recvorigdstaddr (line 265) | pub fn ipv6_recvorigdstaddr(&mut self) -> io::Result<()> { function ip_mtu_discover_probe (line 275) | pub fn ip_mtu_discover_probe(&mut self) -> io::Result<()> { function ipv6_mtu_discover_probe (line 285) | pub fn ipv6_mtu_discover_probe(&mut self) -> io::Result<()> { function allows_nonlocal_source (line 300) | pub fn allows_nonlocal_source(&self) -> io::Result { function rcvmark (line 305) | pub fn rcvmark(&mut self) -> io::Result<()> { function finish (line 313) | pub fn finish(self) -> SocketCapabilities { type SocketCapabilities (line 330) | pub struct SocketCapabilities { method apply_all_and_get_compatibility (line 387) | pub fn apply_all_and_get_compatibility(socket: &S) -> Self FILE: tokio-quiche/src/socket/connected.rs type Socket (line 42) | pub struct Socket { type BoxedSocket (line 62) | pub type BoxedSocket = Socket< function from_udp (line 70) | pub fn from_udp( function as_udp_socket (line 102) | pub fn as_udp_socket(&self) -> Option<&UdpSocket> { function apply_max_capabilities (line 116) | pub fn apply_max_capabilities(&mut self) { type Error (line 128) | type Error = io::Error; function try_from (line 130) | fn try_from(socket: UdpSocket) -> Result { FILE: tokio-quiche/src/socket/listener.rs type QuicListener (line 52) | pub struct QuicListener { method apply_max_capabilities (line 71) | pub fn apply_max_capabilities(&mut self) { method fmt (line 79) | fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { type Error (line 89) | type Error = io::Error; method try_from (line 91) | fn try_from(socket: UdpSocket) -> Result { type Error (line 101) | type Error = io::Error; method try_from (line 103) | fn try_from(socket: std::net::UdpSocket) -> Result { method as_fd (line 112) | fn as_fd(&self) -> BorrowedFd<'_> { method as_raw_fd (line 119) | fn as_raw_fd(&self) -> RawFd { FILE: tokio-quiche/tests/fixtures/h3i_fixtures.rs function h3i_config (line 44) | pub fn h3i_config(url: &str) -> h3i::config::Config { function default_headers (line 63) | pub fn default_headers() -> Vec
{ function default_headers_with_authority (line 67) | pub fn default_headers_with_authority(host: &str) -> Vec
{ function url_headers (line 76) | pub fn url_headers(url: &Url) -> Vec
{ function summarize_connection (line 91) | pub async fn summarize_connection( function request (line 101) | pub async fn request( function received_status_code_on_stream (line 136) | pub fn received_status_code_on_stream( function stream_body (line 154) | pub fn stream_body(summary: &ConnectionSummary, stream: u64) -> Option Arc { method was_called (line 99) | pub fn was_called(&self) -> bool { method create_custom_ssl_context_builder (line 105) | fn create_custom_ssl_context_builder( function request (line 113) | pub async fn request( function serve_connection_details (line 130) | pub async fn serve_connection_details( function handle_connection (line 165) | pub async fn handle_connection(mut connection: ServerH3Connection) { function handle_forwarded_headers_frame (line 173) | pub async fn handle_forwarded_headers_frame( function start_server (line 210) | pub fn start_server() -> ( function start_server_with_settings (line 230) | pub fn start_server_with_settings( function extract_host_ipv4 (line 279) | pub fn extract_host_ipv4(url: &str) -> SocketAddr { function map_responses (line 288) | pub fn map_responses( FILE: tokio-quiche/tests/integration_tests/async_callbacks.rs function test_hello_world_async_callbacks (line 43) | async fn test_hello_world_async_callbacks() { function test_async_callbacks_fail_after_initial_send (line 99) | async fn test_async_callbacks_fail_after_initial_send() { FILE: tokio-quiche/tests/integration_tests/connection_close.rs function test_requests_per_connection_limit (line 44) | async fn test_requests_per_connection_limit() -> QuicResult<()> { function test_max_header_list_size_limit (line 97) | async fn test_max_header_list_size_limit() -> QuicResult<()> { function test_no_connection_close_frame_on_idle_timeout (line 160) | async fn test_no_connection_close_frame_on_idle_timeout() -> QuicResult<... FILE: tokio-quiche/tests/integration_tests/headers.rs function test_additional_headers (line 39) | async fn test_additional_headers() { FILE: tokio-quiche/tests/integration_tests/migration.rs function test_passive_migration (line 35) | async fn test_passive_migration() { function test_active_migration (line 40) | async fn test_active_migration() { function run_migration_test (line 65) | async fn run_migration_test(active: bool, base_port: u16) { function emit_flight (line 178) | async fn emit_flight( function process_flight (line 197) | async fn process_flight( function process_h3_events (line 225) | fn process_h3_events( FILE: tokio-quiche/tests/integration_tests/mod.rs function echo (line 52) | async fn echo() { function e2e (line 80) | async fn e2e() { function e2e_client_ip_validation_disabled (line 95) | async fn e2e_client_ip_validation_disabled() { function quiche_logs_forwarded_server_side (line 124) | async fn quiche_logs_forwarded_server_side(cx: TestTelemetryContext) { function test_ioworker_state_machine_pause (line 155) | async fn test_ioworker_state_machine_pause() { function test_so_mark_receive_data (line 208) | async fn test_so_mark_receive_data() { FILE: tokio-quiche/tests/integration_tests/stream_limit.rs function test_bidi_stream_limit_reached (line 53) | async fn test_bidi_stream_limit_reached() -> QuicResult<()> { FILE: tokio-quiche/tests/integration_tests/timeouts.rs function test_handshake_duration_ioworker (line 57) | async fn test_handshake_duration_ioworker() { function test_handshake_timeout_with_one_client_flight (line 133) | async fn test_handshake_timeout_with_one_client_flight() { function test_post_accept_timeout (line 220) | async fn test_post_accept_timeout() { function test_post_accept_timeout_is_reset (line 281) | async fn test_post_accept_timeout_is_reset() { FILE: tokio-quiche/tests/integration_tests/zero_rtt.rs type TestContext (line 55) | struct TestContext { function handle_0_rtt_request (line 62) | async fn handle_0_rtt_request() { function helper_connect_with_early_data (line 133) | pub async fn helper_connect_with_early_data( function helper_reset_test (line 150) | fn helper_reset_test(context: &Arc>) { function helper_frame_actions (line 155) | fn helper_frame_actions(stream_id: u64) -> Vec { function helper_server_handler (line 175) | fn helper_server_handler( FILE: tools/http3_test/src/lib.rs constant USER_AGENT (line 235) | pub const USER_AGENT: &[u8] = b"quiche-http3-integration-client"; type Http3Req (line 242) | pub struct Http3Req { method new (line 253) | pub fn new( method add_or_replace_header (line 292) | pub fn add_or_replace_header( function find_header (line 305) | fn find_header<'a>( type Http3Assert (line 357) | pub type Http3Assert = fn(&[Http3Req]); type Http3TestError (line 360) | pub enum Http3TestError { type ArbitraryStreamData (line 366) | pub struct ArbitraryStreamData { type Http3Test (line 382) | pub struct Http3Test { method new (line 393) | pub fn new( method with_stream_data (line 408) | pub fn with_stream_data( method requests_count (line 425) | pub fn requests_count(&mut self) -> usize { method endpoint (line 429) | pub fn endpoint(&self) -> url::Url { method send_requests (line 435) | pub fn send_requests( method add_response_headers (line 498) | pub fn add_response_headers(&mut self, stream_id: u64, headers: &[Head... method add_response_body (line 504) | pub fn add_response_body( method set_reset_stream_error (line 513) | pub fn set_reset_stream_error(&mut self, stream_id: u64, error: u64) { method assert (line 519) | pub fn assert(&mut self) { FILE: tools/http3_test/src/runner.rs function run (line 33) | pub fn run( function hdrs_to_strings (line 430) | pub fn hdrs_to_strings(hdrs: &[quiche::h3::Header]) -> Vec<(String, Stri... FILE: tools/http3_test/tests/httpbin_tests.rs function endpoint (line 39) | fn endpoint(testpoint: Option<&str>) -> url::Url { function host (line 56) | fn host() -> std::net::SocketAddr { function verify_peer (line 71) | fn verify_peer() -> bool { function idle_timeout (line 78) | fn idle_timeout() -> u64 { function extra_headers (line 85) | fn extra_headers() -> Option> { function expect_req_headers (line 96) | fn expect_req_headers() -> Option u64 { function early_data (line 115) | fn early_data() -> bool { function session_file (line 122) | fn session_file() -> Option { type HttpBinResponseBody (line 128) | struct HttpBinResponseBody { function jsonify (line 147) | fn jsonify(data: &[u8]) -> HttpBinResponseBody { function do_test (line 151) | fn do_test( function do_test_with_stream_data (line 168) | fn do_test_with_stream_data( function request_check_status (line 193) | fn request_check_status(testpoint: &str, status: usize) -> Vec { function request_with_body (line 203) | fn request_with_body(method: &str) -> Vec { function assert_request_body (line 223) | fn assert_request_body(reqs: &[Http3Req]) { function assert_headers_only (line 232) | fn assert_headers_only(reqs: &[Http3Req]) { function get (line 239) | fn get() { function req_no_method (line 267) | fn req_no_method() { function req_empty_method (line 301) | fn req_empty_method() { function req_invalid_method (line 336) | fn req_invalid_method() { function req_no_scheme (line 371) | fn req_no_scheme() { function req_empty_scheme (line 405) | fn req_empty_scheme() { function req_invalid_scheme (line 440) | fn req_invalid_scheme() { function req_no_authority (line 475) | fn req_no_authority() { function req_empty_authority (line 509) | fn req_empty_authority() { function req_no_path (line 544) | fn req_no_path() { function req_empty_path (line 577) | fn req_empty_path() { function req_invalid_pseudoheader_name (line 611) | fn req_invalid_pseudoheader_name() { function req_duplicate_pseudoheader_bad_order (line 646) | fn req_duplicate_pseudoheader_bad_order() { function req_too_large_headers (line 682) | fn req_too_large_headers() { function frames_duplicate_settings (line 710) | fn frames_duplicate_settings() { function frames_max_push_on_request (line 743) | fn frames_max_push_on_request() { function frames_data_on_control (line 773) | fn frames_data_on_control() { function frames_data_before_headers (line 803) | fn frames_data_before_headers() { function frames_too_small_headers (line 833) | fn frames_too_small_headers() { function stream_close_control (line 863) | fn stream_close_control() { function stream_close_qpack_enc (line 886) | fn stream_close_qpack_enc() { function stream_close_qpack_dec (line 909) | fn stream_close_qpack_dec() { function ip (line 932) | fn ip() { function useragent (line 946) | fn useragent() { function headers (line 963) | fn headers() { function post (line 1010) | fn post() { function put (line 1016) | fn put() { function patch (line 1022) | fn patch() { function delete (line 1028) | fn delete() { function encode_utf8 (line 1034) | fn encode_utf8() { function gzip (line 1050) | fn gzip() { function deflate (line 1069) | fn deflate() { function status (line 1086) | fn status() { function response_headers (line 1107) | fn response_headers() { function redirect (line 1133) | fn redirect() { function cookies (line 1165) | fn cookies() { function basic_auth (line 1188) | fn basic_auth() { function stream (line 1203) | fn stream() { function delay (line 1246) | fn delay() { function drip (line 1264) | fn drip() { function drip_delay_reset (line 1285) | fn drip_delay_reset() { function range (line 1304) | fn range() { function cache (line 1338) | fn cache() { function bytes (line 1369) | fn bytes() { function stream_bytes (line 1390) | fn stream_bytes() { function image (line 1408) | fn image() { function form (line 1465) | fn form() { function html (line 1505) | fn html() { function xml (line 1511) | fn xml() { function robots (line 1517) | fn robots() { function links (line 1523) | fn links() { function zero_length_body (line 1529) | fn zero_length_body() { function mismatched_content_length_too_long (line 1544) | fn mismatched_content_length_too_long() { function mismatched_content_length_too_short (line 1563) | fn mismatched_content_length_too_short() {