Quichex.Native (quichex v0.3.0)
View SourceThin Rustler bindings to the quiche
QUIC implementation.
These functions provide a direct bridge to the native library. Most NIFs
return {:ok, term} / {:error, reason} tuples, while config setters return
the updated config and raise Quichex.Native.ConfigError on failures.
Summary
Types
@type config() :: reference()
@type connection() :: reference()
@type quic_binary() :: binary()
@type reason() :: String.t()
@type stream_id() :: non_neg_integer()
Functions
@spec config_enable_dgram(config(), boolean(), non_neg_integer(), non_neg_integer()) :: config()
@spec config_new(non_neg_integer()) :: config()
@spec config_set_ack_delay_exponent(config(), non_neg_integer()) :: config()
@spec config_set_active_connection_id_limit(config(), non_neg_integer()) :: config()
@spec config_set_application_protos(config(), [quic_binary()]) :: config()
@spec config_set_initial_congestion_window_packets(config(), non_neg_integer()) :: config()
@spec config_set_initial_max_data(config(), non_neg_integer()) :: config()
@spec config_set_initial_max_stream_data_bidi_local(config(), non_neg_integer()) :: config()
@spec config_set_initial_max_stream_data_bidi_remote(config(), non_neg_integer()) :: config()
@spec config_set_initial_max_stream_data_uni(config(), non_neg_integer()) :: config()
@spec config_set_initial_max_streams_bidi(config(), non_neg_integer()) :: config()
@spec config_set_initial_max_streams_uni(config(), non_neg_integer()) :: config()
@spec config_set_max_ack_delay(config(), non_neg_integer()) :: config()
@spec config_set_max_amplification_factor(config(), non_neg_integer()) :: config()
@spec config_set_max_connection_window(config(), non_neg_integer()) :: config()
@spec config_set_max_datagram_frame_size(config(), non_neg_integer()) :: config()
@spec config_set_max_idle_timeout(config(), non_neg_integer()) :: config()
@spec config_set_max_pacing_rate(config(), non_neg_integer()) :: config()
@spec config_set_max_recv_udp_payload_size(config(), non_neg_integer()) :: config()
@spec config_set_max_send_udp_payload_size(config(), non_neg_integer()) :: config()
@spec config_set_max_stream_window(config(), non_neg_integer()) :: config()
@spec config_set_stateless_reset_token(config(), quic_binary()) :: config()
@spec config_set_ticket_key(config(), quic_binary()) :: config()
See Quichex.Native.Nif.connection_dgram_recv_queue_byte_size/1.
See Quichex.Native.Nif.connection_dgram_send_queue_byte_size/1.
See Quichex.Native.Nif.h3_config_set_max_field_section_size/2.
See Quichex.Native.Nif.h3_config_set_qpack_blocked_streams/2.
See Quichex.Native.Nif.h3_config_set_qpack_max_table_capacity/2.
See Quichex.Native.Nif.h3_extended_connect_enabled_by_peer/1.