10#ifndef __CWIST_HTTP3_CLIENT_H__
11#define __CWIST_HTTP3_CLIENT_H__
ssize_t cwist_http3_client_recv_datagram(cwist_http3_client *client, void *buf, size_t len)
Receive an unreliable QUIC datagram.
void cwist_http3_client_set_conn_timeout_ms(cwist_http3_client *client, int timeout_ms)
Set the connection establishment / stream creation timeout.
int cwist_http3_client_send_datagram(cwist_http3_client *client, const void *data, size_t len)
Send an unreliable QUIC datagram.
cwist_error_t cwist_http3_client_request(cwist_http3_client *client, const char *path, cwist_http_method_t method, cwist_http_header_node *headers, const char *body, size_t body_len, cwist_http_response **out_response)
Perform a synchronous HTTP/3 request.
int cwist_http3_client_set_ca_bundle(cwist_http3_client *client, const char *ca_path)
Load CA bundle for TLS certificate verification.
void cwist_http3_client_enable_datagrams(cwist_http3_client *client, int enabled)
Enable or disable QUIC datagram support (RFC 9221).
void cwist_http3_client_set_insecure(cwist_http3_client *client, int enabled)
Disable or re-enable TLS certificate verification.
int cwist_http3_client_set_server(cwist_http3_client *client, const char *host, uint16_t port)
Set server address for subsequent requests.
void cwist_http3_client_set_timeout_ms(cwist_http3_client *client, int timeout_ms)
Set request timeout in milliseconds.
void cwist_http3_client_set_max_retries(cwist_http3_client *client, int max_retries)
Set the maximum number of request retries on transient failure.
void cwist_http3_client_enable_0rtt(cwist_http3_client *client, int enabled)
Enable or disable 0-RTT session resumption.
void cwist_http3_client_set_retry_delay_ms(cwist_http3_client *client, int delay_ms)
Set the base delay between retries in milliseconds.
cwist_http3_client * cwist_http3_client_create(void)
struct cwist_http3_client cwist_http3_client
Opaque HTTP/3 client handle.
void cwist_http3_client_destroy(cwist_http3_client *client)
HTTP Protocol Definitions and Helpers.
Integrated error structure used throughout the system.
HTTP Response Object. Supports standard string body or Zero-Copy pointer body.
Unified error code and type definitions for the CWIST system layer.