ascii-chat
Binary v0.15.83-53-gb711d8720
Library lib/v0.3.2-701-gb711d8720
Video chat in your terminal
Loading...
Searching...
No Matches
quic.h
Go to the documentation of this file.
1#pragma once
2
4
10typedef struct quic_endpoint quic_endpoint_t;
11typedef struct http_server http_server_t;
12
28
31
35asciichat_error_t quic_endpoint_open(const struct sockaddr *bind_address, socklen_t bind_length, bool listener,
36 const quic_config_t *config, quic_endpoint_t **out);
37asciichat_error_t quic_endpoint_address(quic_endpoint_t *endpoint, struct sockaddr_storage *address,
38 socklen_t *length);
39
45asciichat_error_t quic_connect(quic_endpoint_t *endpoint, const struct sockaddr *remote, socklen_t remote_length,
46 const char *server_name, acip_transport_t **out);
51asciichat_error_t quic_transport_peer_address(acip_transport_t *transport, struct sockaddr_storage *address,
52 socklen_t *length);
53
62
72
81asciichat_error_t quic_endpoint_migrate(quic_endpoint_t *endpoint, const struct sockaddr *local_address,
82 socklen_t length);
unsigned long long uint64_t
Definition common.h:63
asciichat_error_t
Error and exit codes - unified status values (0-255).
Definition error_codes.h:44
struct acip_transport acip_transport_t
Forward declaration of ACIP transport.
Definition host.h:506
Transport abstraction layer for ACIP protocol.
struct quic_endpoint quic_endpoint_t
static bool size_t gotel_query_t * out
Definition queries.h:8
asciichat_error_t quic_release(quic_endpoint_t *endpoint, acip_transport_t **transport)
Definition endpoint.c:280
asciichat_error_t quic_transport_wait_security(acip_transport_t *transport, uint64_t timeout_ns)
asciichat_error_t quic_transport_peer_address(acip_transport_t *transport, struct sockaddr_storage *address, socklen_t *length)
asciichat_error_t quic_accept(quic_endpoint_t *endpoint, acip_transport_t **out)
Definition endpoint.c:255
asciichat_error_t quic_connect(quic_endpoint_t *endpoint, const struct sockaddr *remote, socklen_t remote_length, const char *server_name, acip_transport_t **out)
Definition endpoint.c:229
asciichat_error_t quic_transport_begin_security(acip_transport_t *transport, crypto_context_t *crypto)
asciichat_error_t quic_endpoint_open(const struct sockaddr *bind_address, socklen_t bind_length, bool listener, const quic_config_t *config, quic_endpoint_t **out)
Definition endpoint.c:131
asciichat_error_t quic_endpoint_address(quic_endpoint_t *endpoint, struct sockaddr_storage *address, socklen_t *length)
Definition endpoint.c:219
bool quic_transport_security_ready(acip_transport_t *transport)
asciichat_error_t quic_endpoint_migrate(quic_endpoint_t *endpoint, const struct sockaddr *local_address, socklen_t length)
Definition endpoint.c:366
asciichat_error_t quic_transport_allow_media(acip_transport_t *transport)
asciichat_error_t quic_endpoint_stop(quic_endpoint_t *endpoint)
Definition endpoint.c:308
asciichat_error_t quic_endpoint_set_http_server(quic_endpoint_t *endpoint, http_server_t *server)
Definition endpoint.c:206
asciichat_error_t quic_endpoint_destroy(quic_endpoint_t **endpoint)
Definition endpoint.c:353
Endpoint cryptographic state for handshake, packet protection, authentication, and rekeying.
bool prefer_visual_datagrams
Definition quic.h:22
const char * private_key_file
Definition quic.h:16
const char * ca_file
Definition quic.h:17
bool enable_datagrams
Definition quic.h:20
http_server_t * http_server
Definition quic.h:26
const char * alpn
Definition quic.h:14
bool prefer_audio_datagrams
Definition quic.h:23
bool accept_native
Definition quic.h:21
const char * certificate_file
Definition quic.h:15
bool enable_http3
Definition quic.h:24
const char * webtransport_path
Definition quic.h:19
const char * webtransport_origin
Definition quic.h:18
struct http_server http_server_t
Definition tls.h:8