24#ifndef PROTOCORE_H3_CONN_H
25#define PROTOCORE_H3_CONN_H
36#ifndef PC_H3_STREAM_BUF
37#define PC_H3_STREAM_BUF 2048
39#ifndef PC_H3_METHOD_LEN
40#define PC_H3_METHOD_LEN 16
43#define PC_H3_PATH_LEN 256
45#ifndef PC_H3_AUTHORITY_LEN
46#define PC_H3_AUTHORITY_LEN 128
55typedef void (*H3RequestFn)(
void *app, H3Conn *h3, uint64_t stream_id,
const char *method,
const char *path,
56 const char *authority,
const uint8_t *body,
size_t body_len);
59enum class H3StreamRole : uint8_t
76 uint8_t buf[PC_H3_STREAM_BUF];
78 char method[PC_H3_METHOD_LEN];
79 char path[PC_H3_PATH_LEN];
80 char authority[PC_H3_AUTHORITY_LEN];
89 H3RequestFn on_request;
91 H3Settings peer_settings;
104void pc_h3_conn_init(H3Conn *h3, QuicConn *qc, H3RequestFn on_request,
void *app);
111bool pc_h3_conn_respond(H3Conn *h3, uint64_t stream_id,
int status,
const char *content_type,
const uint8_t *body,
#define PC_H3_MAX_STREAMS
User-facing configuration for ProtoCore.