]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MINOR: quic: Missing encoded transport parameters for QUIC OpenSSL wrapper
authorFrédéric Lécaille <flecaille@haproxy.com>
Fri, 21 Jul 2023 15:27:40 +0000 (17:27 +0200)
committerFrédéric Lécaille <flecaille@haproxy.com>
Fri, 21 Jul 2023 15:27:40 +0000 (17:27 +0200)
commit2fd67c558a91bdf3166965d3faaad1233da2dc48
treeabb27a7156db84bbd041fe5fc4e4ec4bcd520d6a
parentbcbd5a287b35813ed667f23afb98db446c572618
MINOR: quic: Missing encoded transport parameters for QUIC OpenSSL wrapper

This wrapper needs to have an access to an encoded version of the local transport
parameter (to be sent to the peer). They are provided to the TLS stack thanks to
qc_ssl_compat_add_tps_cb() callback.

These encoded transport parameters were attached to the QUIC connection but
removed by this commit to save memory:

      MINOR: quic: Stop storing the TX encoded transport parameters

This patch restores these transport parameters and attaches them again
to the QUIC connection (quic_conn struct), but only when the QUIC OpenSSL wrapper
is compiled.
Implement qc_set_quic_transport_params() to encode the transport parameters
for a connection and to set them into the stack and make this function work
for both the OpenSSL wrapper or any other TLS stack with QUIC support. Its uses
the encoded version of the transport parameters attached to the connection
when compiled for the OpenSSL wrapper, or local parameters when compiled
with TLS stack with QUIC support. These parameters are passed to
quic_transport_params_encode() and SSL_set_quic_transport_params() as before
this patch.
include/haproxy/quic_conn-t.h
src/quic_conn.c