]> git.ipfire.org Git - thirdparty/haproxy.git/commit
MEDIUM: quic: implement CHACHA20_POLY1305 for AWS-LC
authorWilliam Lallemand <wlallemand@haproxy.com>
Thu, 25 Jul 2024 08:54:10 +0000 (10:54 +0200)
committerWilliam Lallemand <wlallemand@haproxy.com>
Thu, 25 Jul 2024 11:45:39 +0000 (13:45 +0200)
commit28cb01f8e8580e5c3936b227e897b64a9e4c5c7e
tree78163656f8ea4932accc64fffa3b415b6987f156
parent177c84808c11d59764dc6b05e78033f31918505f
MEDIUM: quic: implement CHACHA20_POLY1305 for AWS-LC

With AWS-LC, the aead part is covered by the EVP_AEAD API which
provides the correct EVP_aead_chacha20_poly1305(), however for header
protection it does not provides an EVP_CIPHER for chacha20.

This patch implements exceptions in the header protection code and use
EVP_CIPHER_CHACHA20 and EVP_CIPHER_CTX_CHACHA20 placeholders so we can
use the CRYPTO_chacha_20() primitive manually instead of the EVP_CIPHER
API.

This requires to check if we are using EVP_CIPHER_CTX_CHACHA20 when
doing EVP_CIPHER_CTX_free().
include/haproxy/quic_tls-t.h
include/haproxy/quic_tls.h
src/quic_tls.c