|
wired
libc-free QUIC/HTTP3 SDK in C for x86_64-linux
|
Inputs to quic_sdrv_init. More...
#include <sdrv.h>
Data Fields | |
| const u8 * | server_priv_x25519 |
| ECDHE x25519 private (32 bytes). | |
| const u8 * | server_pub_x25519 |
| ECDHE x25519 public (32 bytes). | |
| const u8 * | sign_priv |
| ECDSA P-256 signing scalar (32 bytes). | |
| const quic_span * | chain |
| external chain, leaf first; NULL for self-signed mode (caller keeps the views alive through the handshake) | |
| usz | chain_count |
| entries in chain; 0 = self-signed mode | |
| const u8 * | san_ipv4 |
| RFC 5280 4.2.1.6: see wired_srvboot_id.san_ipv4's doc. | |
| u64 | now_secs |
| RFC 5280 4.1.2.5.1: see wired_srvboot_id.now_secs's doc. | |
| const u8 * | ticket_key |
| RFC 8446 4.6.1: this server's session-ticket encryption key (QUIC_TICKET_KEY_LEN bytes), or 0 to disable session resumption – quic_sdrv_recv_client_hello then never inspects pre_shared_key. | |
Inputs to quic_sdrv_init.
server_priv_x25519/server_pub_x25519 are the ECDHE key pair. sign_priv is the ECDSA P-256 signing scalar; in self-signed mode (chain is NULL or chain_count is 0) it also signs the driver's own generated certificate's TBS. chain/chain_count, when non-empty, are an externally issued certificate chain (leaf first, views the caller keeps alive through the handshake) to send instead of a self-signed certificate; chain_count over QUIC_TLS_CERT_CHAIN_MAX makes the flight unbuildable (cert_count stays 0), not a truncated/overflowing copy.
| u64 quic_sdrv_init_in::now_secs |
RFC 5280 4.1.2.5.1: see wired_srvboot_id.now_secs's doc.
Only used in self-signed mode (ignored when an external chain is given). 0 to keep the fixed 2020-2030 window (tests only).
| const u8* quic_sdrv_init_in::san_ipv4 |
RFC 5280 4.2.1.6: see wired_srvboot_id.san_ipv4's doc.
0 to omit.