Loading...
Searching...
No Matches
imquic_configuration Struct Reference

A client/server configuration. More...

#include <configuration.h>

Data Fields

const char * name
 Name of the endpoint.
gboolean is_server
 Whether this is a server or a client.
const char * ip
 Interface or IP address to bind to.
uint16_t local_port
 Local port of the endpoint.
const char * remote_host
 Remote address to connect to (client-only)
uint16_t remote_port
 Remote port to connect to (client-only)
const char * sni
 SNI to force, if any (will use localhost otherwise)
const char * alpn
 Comma separated list of ALPN(s) to negotiate for raw QUIC.
gboolean raw_quic
 Whether raw QUIC should be offered.
gboolean webtransport
 Whether WebTransport should be offered.
const char * h3_path
 In case WebTransport is used, the HTTP/3 path to connect to (client-only)
const char * wt_protocols
 In case WebTransport is used, a comma separated list of the protocol(s) to negotiate.
const char * qlog_path
 Path to save QLOG files to, if needed/supported: a filename for clients, a folder for servers.
gboolean qlog_sequential
 Whether sequential JSON should be used for the QLOG file, instead of regular JSON.
gboolean qlog_quic
 Whether QUIC and/or HTTP/3 and/or RoQ and/or MoQT events should be saved to QLOG, if supported.
gboolean qlog_quic_stream
gboolean qlog_http3
gboolean qlog_roq
gboolean qlog_roq_packets
gboolean qlog_moq
gboolean qlog_moq_messages
gboolean qlog_moq_objects
const char * cert_pem
 Path to the certificate file to use for TLS.
const char * cert_key
 Path to the key file to use for TLS.
const char * cert_pwd
 Password needed to access the certificate for TLS, if any.
gboolean cert_no_verify
 Whether we should disable verification of the remote certificate.
gboolean early_data
 Whether early data should be supported.
const char * ticket_file
 File to use for session tickets, when doing early data.
uint32_t moq_version
 MoQ version to negotiate, if any.
void * user_data
 Optional user data, to pass back when notifying new connections associated to this endpoint.

Detailed Description

A client/server configuration.

Field Documentation

◆ alpn

const char* imquic_configuration::alpn

Comma separated list of ALPN(s) to negotiate for raw QUIC.

◆ cert_key

const char* imquic_configuration::cert_key

Path to the key file to use for TLS.

◆ cert_no_verify

gboolean imquic_configuration::cert_no_verify

Whether we should disable verification of the remote certificate.

◆ cert_pem

const char* imquic_configuration::cert_pem

Path to the certificate file to use for TLS.

◆ cert_pwd

const char* imquic_configuration::cert_pwd

Password needed to access the certificate for TLS, if any.

◆ early_data

gboolean imquic_configuration::early_data

Whether early data should be supported.

◆ h3_path

const char* imquic_configuration::h3_path

In case WebTransport is used, the HTTP/3 path to connect to (client-only)

◆ ip

const char* imquic_configuration::ip

Interface or IP address to bind to.

◆ is_server

gboolean imquic_configuration::is_server

Whether this is a server or a client.

◆ local_port

uint16_t imquic_configuration::local_port

Local port of the endpoint.

◆ moq_version

uint32_t imquic_configuration::moq_version

MoQ version to negotiate, if any.

◆ name

const char* imquic_configuration::name

Name of the endpoint.

◆ qlog_http3

gboolean imquic_configuration::qlog_http3

◆ qlog_moq

gboolean imquic_configuration::qlog_moq

◆ qlog_moq_messages

gboolean imquic_configuration::qlog_moq_messages

◆ qlog_moq_objects

gboolean imquic_configuration::qlog_moq_objects

◆ qlog_path

const char* imquic_configuration::qlog_path

Path to save QLOG files to, if needed/supported: a filename for clients, a folder for servers.

◆ qlog_quic

gboolean imquic_configuration::qlog_quic

Whether QUIC and/or HTTP/3 and/or RoQ and/or MoQT events should be saved to QLOG, if supported.

◆ qlog_quic_stream

gboolean imquic_configuration::qlog_quic_stream

◆ qlog_roq

gboolean imquic_configuration::qlog_roq

◆ qlog_roq_packets

gboolean imquic_configuration::qlog_roq_packets

◆ qlog_sequential

gboolean imquic_configuration::qlog_sequential

Whether sequential JSON should be used for the QLOG file, instead of regular JSON.

◆ raw_quic

gboolean imquic_configuration::raw_quic

Whether raw QUIC should be offered.

Note
In case both raw_quic and webtranport are set to FALSE the configuration will automatically default to raw QUIC only

◆ remote_host

const char* imquic_configuration::remote_host

Remote address to connect to (client-only)

◆ remote_port

uint16_t imquic_configuration::remote_port

Remote port to connect to (client-only)

◆ sni

const char* imquic_configuration::sni

SNI to force, if any (will use localhost otherwise)

◆ ticket_file

const char* imquic_configuration::ticket_file

File to use for session tickets, when doing early data.

◆ user_data

void* imquic_configuration::user_data

Optional user data, to pass back when notifying new connections associated to this endpoint.

◆ webtransport

gboolean imquic_configuration::webtransport

Whether WebTransport should be offered.

◆ wt_protocols

const char* imquic_configuration::wt_protocols

In case WebTransport is used, a comma separated list of the protocol(s) to negotiate.


The documentation for this struct was generated from the following file: