]> git.kaiwu.me - haproxy.git/commit
MEDIUM: ssl: add FIPS signature algorithm check for AWS-LC master
authorWilliam Lallemand <wlallemand@haproxy.com>
Tue, 30 Jun 2026 13:39:14 +0000 (13:39 +0000)
committerWilliam Lallemand <wlallemand@haproxy.com>
Fri, 10 Jul 2026 17:42:03 +0000 (19:42 +0200)
commit8d2381c5ee242399d206f620941e14c8bb485b3a
tree7f354c557af07580cacd1ca24a66a96044c0c50b
parent46c3edcb16be36bbd14c309d65f3a5a5e3fb28db
MEDIUM: ssl: add FIPS signature algorithm check for AWS-LC

Add ssl_fips_check_sigalgs() which validates the configured signature
algorithm list against the FIPS-approved set: ECDSA on NIST P-curves
with SHA-256/384/512, RSA-PSS (rsae and pss variants) with SHA-256/
384/512, and RSA-PKCS1 with SHA-256/384/512.  SHA-1 based algorithms
and non-FIPS primitives (ed25519, ed448) are rejected.

The check uses the same strchr-based string parsing as
ssl_fips_check_ciphersuites().  A NULL list is silently accepted since
the global defaults were already overwritten with FIPS values at init
time.

The check is called right after SSL_CTX_set1_sigalgs_list() and
SSL_CTX_set1_client_sigalgs_list() in both the bind
(ssl_sock_prepare_ctx) and server (ssl_sock_prepare_srv_ssl_ctx)
configuration paths.
include/haproxy/fips.h
src/fips.c
src/ssl_sock.c