|
static void | quic_update_timer (quic_ctx_t *ctx) |
|
static void | quic_check_quic_session_connected (quic_ctx_t *ctx) |
|
static int | quic_reset_connection (u64 udp_session_handle, quic_rx_packet_ctx_t *pctx) |
|
static void | quic_proto_on_close (u32 ctx_index, u32 thread_index) |
|
static void | quic_crypto_context_make_key_from_ctx (clib_bihash_kv_24_8_t *kv, quic_ctx_t *ctx) |
|
static void | quic_crypto_context_make_key_from_crctx (clib_bihash_kv_24_8_t *kv, crypto_context_t *crctx) |
|
static void | quic_crypto_context_free_if_needed (crypto_context_t *crctx, u8 thread_index) |
|
static int | quic_app_cert_key_pair_delete_callback (app_cert_key_pair_t *ckpair) |
|
static crypto_context_t * | quic_crypto_context_alloc (u8 thread_index) |
|
static crypto_context_t * | quic_crypto_context_get (u32 cr_index, u32 thread_index) |
|
static clib_error_t * | quic_list_crypto_context_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
static clib_error_t * | quic_set_max_packets_per_key_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
static clib_error_t * | quic_set_cc_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
static void | quic_release_crypto_context (u32 crypto_context_index, u8 thread_index) |
|
static int | quic_init_crypto_context (crypto_context_t *crctx, quic_ctx_t *ctx) |
|
static int | quic_acquire_crypto_context (quic_ctx_t *ctx) |
|
static u32 | quic_ctx_alloc (u32 thread_index) |
|
static void | quic_ctx_free (quic_ctx_t *ctx) |
|
static quic_ctx_t * | quic_ctx_get (u32 ctx_index, u32 thread_index) |
|
static quic_ctx_t * | quic_ctx_get_if_valid (u32 ctx_index, u32 thread_index) |
|
quic_ctx_t * | quic_get_conn_ctx (quicly_conn_t *conn) |
|
static void | quic_store_conn_ctx (quicly_conn_t *conn, quic_ctx_t *ctx) |
|
static int | quic_ctx_is_stream (quic_ctx_t *ctx) |
|
static int | quic_ctx_is_listener (quic_ctx_t *ctx) |
|
static int | quic_ctx_is_conn (quic_ctx_t *ctx) |
|
static session_t * | get_stream_session_and_ctx_from_stream (quicly_stream_t *stream, quic_ctx_t **ctx) |
|
static void | quic_make_connection_key (clib_bihash_kv_16_8_t *kv, const quicly_cid_plaintext_t *id) |
|
static int | quic_sendable_packet_count (session_t *udp_session) |
|
static quicly_context_t * | quic_get_quicly_ctx_from_ctx (quic_ctx_t *ctx) |
|
static quicly_context_t * | quic_get_quicly_ctx_from_udp (u64 udp_session_handle) |
|
static void | quic_set_udp_tx_evt (session_t *udp_session) |
|
static void | quic_stop_ctx_timer (quic_ctx_t *ctx) |
|
static void | quic_ack_rx_data (session_t *stream_session) |
|
static void | quic_disconnect_transport (quic_ctx_t *ctx) |
|
static void | quic_connection_delete (quic_ctx_t *ctx) |
|
void | quic_increment_counter (u8 evt, u8 val) |
|
static void | quic_connection_closed (quic_ctx_t *ctx) |
| Called when quicly return an error This function interacts tightly with quic_proto_on_close. More...
|
|
static int | quic_send_datagram (session_t *udp_session, struct iovec *packet, quicly_address_t *dest, quicly_address_t *src) |
|
static int | quic_send_packets (quic_ctx_t *ctx) |
|
static void | quic_on_stream_destroy (quicly_stream_t *stream, int err) |
|
static void | quic_on_stop_sending (quicly_stream_t *stream, int err) |
|
static void | quic_on_receive_reset (quicly_stream_t *stream, int err) |
|
static void | quic_on_receive (quicly_stream_t *stream, size_t off, const void *src, size_t len) |
|
void | quic_fifo_egress_shift (quicly_stream_t *stream, size_t delta) |
|
void | quic_fifo_egress_emit (quicly_stream_t *stream, size_t off, void *dst, size_t *len, int *wrote_all) |
|
static int | quic_on_stream_open (quicly_stream_open_t *self, quicly_stream_t *stream) |
|
static void | quic_on_closed_by_remote (quicly_closed_by_remote_t *self, quicly_conn_t *conn, int code, uint64_t frame_type, const char *reason, size_t reason_len) |
|
static int64_t | quic_get_thread_time (u8 thread_index) |
|
static int64_t | quic_get_time (quicly_now_t *self) |
|
static u32 | quic_set_time_now (u32 thread_index) |
|
static void | quic_update_time (f64 now, u8 thread_index) |
|
static void | quic_timer_expired (u32 conn_index) |
|
static void | quic_expired_timers_dispatch (u32 *expired_timers) |
|
static int | quic_connect_stream (session_t *quic_session, session_endpoint_cfg_t *sep) |
|
static int | quic_connect_connection (session_endpoint_cfg_t *sep) |
|
static int | quic_connect (transport_endpoint_cfg_t *tep) |
|
static u32 | quic_start_listen (u32 quic_listen_session_index, transport_endpoint_t *tep) |
|
static u32 | quic_stop_listen (u32 lctx_index) |
|
static transport_connection_t * | quic_connection_get (u32 ctx_index, u32 thread_index) |
|
static transport_connection_t * | quic_listener_get (u32 listener_index) |
|
static u8 * | format_quic_ctx (u8 *s, va_list *args) |
|
static u8 * | format_quic_connection (u8 *s, va_list *args) |
|
static u8 * | format_quic_half_open (u8 *s, va_list *args) |
|
static u8 * | format_quic_listener (u8 *s, va_list *args) |
|
static void | quic_build_sockaddr (struct sockaddr *sa, socklen_t *salen, ip46_address_t *addr, u16 port, u8 is_ip4) |
|
static void | quic_on_quic_session_connected (quic_ctx_t *ctx) |
|
static void | quic_update_conn_ctx (quicly_conn_t *conn, quicly_context_t *quicly_context) |
|
static void | quic_receive_connection (void *arg) |
|
static void | quic_transfer_connection (u32 ctx_index, u32 dest_thread) |
|
static int | quic_udp_session_connected_callback (u32 quic_app_index, u32 ctx_index, session_t *udp_session, session_error_t err) |
|
static void | quic_udp_session_disconnect_callback (session_t *s) |
|
static void | quic_udp_session_cleanup_callback (session_t *udp_session, session_cleanup_ntf_t ntf) |
|
static void | quic_udp_session_reset_callback (session_t *s) |
|
static void | quic_udp_session_migrate_callback (session_t *s, session_handle_t new_sh) |
|
int | quic_udp_session_accepted_callback (session_t *udp_session) |
|
static int | quic_add_segment_callback (u32 client_index, u64 seg_handle) |
|
static int | quic_del_segment_callback (u32 client_index, u64 seg_handle) |
|
static int | quic_custom_app_rx_callback (transport_connection_t *tc) |
|
static int | quic_custom_tx_callback (void *s, transport_send_params_t *sp) |
|
static int | quic_find_packet_ctx (quic_rx_packet_ctx_t *pctx, u32 caller_thread_index) |
|
static void | quic_accept_connection (quic_rx_packet_ctx_t *pctx) |
|
static int | quic_process_one_rx_packet (u64 udp_session_handle, svm_fifo_t *f, u32 fifo_offset, quic_rx_packet_ctx_t *pctx) |
|
static int | quic_udp_session_rx_callback (session_t *udp_session) |
|
static void | quic_common_get_transport_endpoint (quic_ctx_t *ctx, transport_endpoint_t *tep, u8 is_lcl) |
|
static void | quic_get_transport_listener_endpoint (u32 listener_index, transport_endpoint_t *tep, u8 is_lcl) |
|
static void | quic_get_transport_endpoint (u32 ctx_index, u32 thread_index, transport_endpoint_t *tep, u8 is_lcl) |
|
static void | quic_register_cipher_suite (crypto_engine_type_t type, ptls_cipher_suite_t **ciphers) |
|
static void | quic_update_fifo_size () |
|
static clib_error_t * | quic_init (vlib_main_t *vm) |
|
static clib_error_t * | quic_plugin_crypto_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
static clib_error_t * | quic_plugin_set_fifo_size_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
static u64 | quic_get_counter_value (u32 event_code) |
|
static void | quic_show_aggregated_stats (vlib_main_t *vm) |
|
static u8 * | quic_format_quicly_conn_id (u8 *s, va_list *args) |
|
static u8 * | quic_format_quicly_stream_id (u8 *s, va_list *args) |
|
static u8 * | quic_format_listener_ctx (u8 *s, va_list *args) |
|
static u8 * | quic_format_connection_ctx (u8 *s, va_list *args) |
|
static u8 * | quic_format_stream_ctx (u8 *s, va_list *args) |
|
static clib_error_t * | quic_show_connections_command_fn (vlib_main_t *vm, unformat_input_t *input, vlib_cli_command_t *cmd) |
|
| VLIB_PLUGIN_REGISTER () |
|
static clib_error_t * | quic_config_fn (vlib_main_t *vm, unformat_input_t *input) |
|
static uword | quic_node_fn (vlib_main_t *vm, vlib_node_runtime_t *node, vlib_frame_t *frame) |
|