Hello, The issue was fixed with these two patches in HAProxy:
https://github.com/haproxy/haproxy/commit/eb5279b15470d187061b1d7be3512ca6178eba0c https://github.com/haproxy/haproxy/commit/fbc98ebcdaefd4c024b33194640350ba0c348567 There was also an issue in AWS-LC which was fixed in https://github.com/aws/aws-lc/pull/2946, but you don't need the patch if you use the 2 previous HAProxy patches. Thanks for the report! Regards, On Mon, Jan 12, 2026 at 12:07:37PM +0100, Przemyslaw Bromber wrote: > Subject: [3.2.4][AWS-LC:1.58.1] Segmentation fault on certificate generation. > Hi. > > I just wanted to report that we encountered an issue with certificates > generation (generate-certificates option) for hostnames longer than 64 > characters. When generating a certificate for such a hostname with AWS-LC > library, haproxy crushes with segmentation fault as shown below in the > backtrace. This may be connected to the Common Name length limit which is > 64 characters. > > Fortunately hostnames in the SAN section have no this limitation. Maybe for > longer hostnames it's a good idea to put some generic hostname in CN and a > desired one in SAN section. > > Please let me know if you need any additional information from our side. > > Regards > Przemek > > GDB backtrace (details about HAProxy installation is below backtrace): > > root@hap-rnd-1a:/var/lib/haproxy# gdb /usr/sbin/haproxy > core.haproxy.3069061.1767965391 > GNU gdb (Ubuntu 12.1-0ubuntu1~22.04.2) 12.1 > Copyright (C) 2022 Free Software Foundation, Inc. > License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html > > > This is free software: you are free to change and redistribute it. > There is NO WARRANTY, to the extent permitted by law. > Type "show copying" and "show warranty" for details. > This GDB was configured as "x86_64-linux-gnu". > Type "show configuration" for configuration details. > For bug reporting instructions, please see: > <https://www.gnu.org/software/gdb/bugs/>. > Find the GDB manual and other documentation resources online at: > <http://www.gnu.org/software/gdb/documentation/>. > > For help, type "help". > Type "apropos word" to search for commands related to "word"... > Reading symbols from /usr/sbin/haproxy... > Reading symbols from > /usr/lib/debug/.build-id/6f/2876252e93c1a4c4505814515d851660ec0b90.debug... > > warning: Can't open file /dev/zero (deleted) during file-backed mapping > note processing > [New LWP 3069405] > [New LWP 3069061] > [New LWP 3069404] > [New LWP 3069406] > [New LWP 3069408] > [New LWP 3069403] > [New LWP 3069407] > [New LWP 3069409] > [Thread debugging using libthread_db enabled] > Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1". > Core was generated by `/usr/sbin/haproxy -f /etc/haproxy/haproxy.cfg -p > /var/run/haproxy.pid -D -sf 30'. > Program terminated with signal SIGSEGV, Segmentation fault. > #0 0x00007f7479af97a3 in SSL_set_SSL_CTX () from > /usr/lib/haproxy/awslc_v1.58.1/lib/libssl.so > [Current thread is 1 (Thread 0x7f73deea5640 (LWP 3069405))] > (gdb) bt > #0 0x00007f7479af97a3 in SSL_set_SSL_CTX () from > /usr/lib/haproxy/awslc_v1.58.1/lib/libssl.so > #1 0x000055809203a615 in ssl_sock_generate_certificate ( > servername=0x7f73d40f5840 > "dsfadsfdssdfgsfdgsdfgsdfrargsdfgsdffdsgdsfgsdf.przemek.test.local", > bind_conf=0x5580f60402c0, ssl=ssl@entry=0x7f73d4108848) at > src/ssl_gencert.c:357 > #2 0x000055809203dcb2 in ssl_sock_switchctx_cbk (ctx=<optimized out>) at > src/ssl_clienthello.c:438 > #3 0x00007f7479ae14c6 in bssl::ssl_server_handshake(bssl::SSL_HANDSHAKE*) > () > from /usr/lib/haproxy/awslc_v1.58.1/lib/libssl.so > #4 0x00007f7479adb828 in bssl::ssl_run_handshake(bssl::SSL_HANDSHAKE*, > bool*) () > from /usr/lib/haproxy/awslc_v1.58.1/lib/libssl.so > #5 0x00007f7479afa67a in SSL_do_handshake () from > /usr/lib/haproxy/awslc_v1.58.1/lib/libssl.so > #6 0x0000558092012669 in ssl_sock_handshake (flag=134217728, > conn=<optimized out>) at src/ssl_sock.c:5425 > #7 ssl_sock_io_cb (t=0x7f73d41025d0, context=0x7f73d4102a70, > state=<optimized out>) at src/ssl_sock.c:5795 > #8 0x00005580922c8aa8 in run_tasks_from_lists > (budgets=budgets@entry=0x7f73dee99ee0) > at src/task.c:648 > #9 0x00005580922c92af in process_runnable_tasks () at src/task.c:889 > #10 0x0000558092238472 in run_poll_loop () at src/haproxy.c:2851 > #11 0x0000558092238b29 in run_thread_poll_loop (data=<optimized out>) at > src/haproxy.c:3067 > #12 0x00007f747937eac3 in start_thread (arg=<optimized out>) at > ./nptl/pthread_create.c:442 > #13 0x00007f74794108c0 in clone3 () at > ../sysdeps/unix/sysv/linux/x86_64/clone3.S:81 > (gdb) > > > More details about our HAProy installation: > > > root@hap-rnd:/var/lib/haproxy# haproxy -vv > HAProxy version 3.2.4-98813a1 2025/08/13 - https://haproxy.org/ > Status: long-term supported branch - will stop receiving fixes around Q2 > 2030. > Known bugs: http://www.haproxy.org/bugs/bugs-3.2.4.html > Running on: Linux 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 > UTC 2025 x86_64 > Build options : > TARGET = linux-glibc > CC = cc > CFLAGS = -O2 -g -fwrapv -DMAX_SESS_STKCTR=12 > OPTIONS = USE_OPENSSL_AWSLC=1 USE_LUA=1 USE_QUIC=1 USE_PROMEX=1 > USE_PCRE2=1 USE_PCRE2_JIT=1 > DEBUG = > > Feature list : -51DEGREES +ACCEPT4 +BACKTRACE -CLOSEFROM +CPU_AFFINITY > +CRYPT_H -DEVICEATLAS +DL -ENGINE +EPOLL -EVPORTS +GETADDRINFO -KQUEUE > -LIBATOMIC +LIBCRYPT +LINUX_CAP +LINUX_SPLICE +LINUX_TPROXY +LUA +MATH > -MEMORY_PROFILING +NETFILTER +NS -OBSOLETE_LINKER +OPENSSL +OPENSSL_AWSLC > -OPENSSL_WOLFSSL -OT -PCRE +PCRE2 +PCRE2_JIT -PCRE_JIT +POLL +PRCTL > -PROCCTL +PROMEX -PTHREAD_EMULATION +QUIC -QUIC_OPENSSL_COMPAT +RT +SLZ > +SSL -STATIC_PCRE -STATIC_PCRE2 +TFO +THREAD +THREAD_DUMP +TPROXY -WURFL > -ZLIB +ACME > > Default settings : > bufsize = 16384, maxrewrite = 1024, maxpollevents = 200 > > Built with multi-threading support (MAX_TGROUPS=32, MAX_THREADS=1024, > default=3). > Built with SSL library version : OpenSSL 1.1.1 (compatible; AWS-LC 1.58.1) > Running on SSL library version : AWS-LC 1.58.1 > SSL library supports TLS extensions : yes > SSL library supports SNI : yes > SSL library FIPS mode : no > SSL library supports : TLSv1.0 TLSv1.1 TLSv1.2 TLSv1.3 > QUIC: connection socket-owner mode support : yes > QUIC: GSO emission support : yes > Built with Lua version : Lua 5.4.6 > Built with the Prometheus exporter as a service > Built with network namespace support. > Built with libslz for stateless compression. > Compression algorithms supported : identity("identity"), > deflate("deflate"), raw-deflate("deflate"), gzip("gzip") > Built with transparent proxy support using: IP_TRANSPARENT IPV6_TRANSPARENT > IP_FREEBIND > Built with PCRE2 version : 10.42 2022-12-11 > PCRE2 library supports JIT : yes > Encrypted password support via crypt(3): yes > Built with gcc compiler version 11.2.0 > > Available polling systems : > epoll : pref=300, test result OK > poll : pref=200, test result OK > select : pref=150, test result OK > Total: 3 (3 usable), will use epoll. > > Available multiplexer protocols : > (protocols marked as <default> cannot be specified using 'proto' keyword) > quic : mode=HTTP side=FE mux=QUIC flags=HTX|NO_UPG|FRAMED > h2 : mode=HTTP side=FE|BE mux=H2 flags=HTX|HOL_RISK|NO_UPG > <default> : mode=HTTP side=FE|BE mux=H1 flags=HTX > h1 : mode=HTTP side=FE|BE mux=H1 flags=HTX|NO_UPG > fcgi : mode=HTTP side=BE mux=FCGI flags=HTX|HOL_RISK|NO_UPG > <default> : mode=SPOP side=BE mux=SPOP flags=HOL_RISK|NO_UPG > spop : mode=SPOP side=BE mux=SPOP flags=HOL_RISK|NO_UPG > <default> : mode=TCP side=FE|BE mux=PASS flags= > none : mode=TCP side=FE|BE mux=PASS flags=NO_UPG > > Available services : prometheus-exporter > Available filters : > [BWLIM] bwlim-in > [BWLIM] bwlim-out > [CACHE] cache > [COMP] compression > [FCGI] fcgi-app > [SPOE] spoe > [TRACE] trace -- William Lallemand

