mirror of
https://git.haproxy.org/git/haproxy.git/
synced 2025-09-24 23:31:40 +02:00
glibc < 2.10 requires _GNU_SOURCE in order to make use of strsignal(), otherwise leading to SEGV at runtime. $ make V=1 TARGET=linux-glibc-legacy USE_THREAD= USE_ACCEPT4= .. src/mworker.c: In function 'mworker_catch_sigchld': src/mworker.c:285: warning: implicit declaration of function 'strsignal' src/mworker.c:285: warning: pointer/integer type mismatch in conditional expression .. $ make V=1 reg-tests REGTESTS_TYPES=slow,default .. ###### Test case: reg-tests/mcli/mcli_start_progs.vtc ###### ## test results in: "/tmp/haregtests-2021-01-19_15-18-07.n24989/vtc.29077.28f6153d" ---- h1 Bad exit status: 0x008b exit 0x0 signal 11 core 128 ---- h1 Assert error in haproxy_wait(), src/vtc_haproxy.c line 792: Condition(*(&h->fds[1]) >= 0) not true. Errno=0 Success .. $ gdb ./haproxy /tmp/core.0.haproxy.30270 .. Core was generated by `/root/haproxy/haproxy -d -W -S fd@8 -dM -f /tmp/haregtests-2021-01-19_15-18-07.'. Program terminated with signal 11, Segmentation fault. #0 0x00002aaaab387a10 in strlen () from /lib64/libc.so.6 (gdb) bt #0 0x00002aaaab387a10 in strlen () from /lib64/libc.so.6 #1 0x00002aaaab354b69 in vfprintf () from /lib64/libc.so.6 #2 0x00002aaaab37788a in vsnprintf () from /lib64/libc.so.6 #3 0x00000000004a76a3 in memvprintf (out=0x7fffedc680a0, format=0x5a5d58 "Current worker #%d (%d) exited with code %d (%s)\n", orig_args=0x7fffedc680d0) at src/tools.c:3868 #4 0x00000000004bbd40 in print_message (label=0x58abed "ALERT", fmt=0x5a5d58 "Current worker #%d (%d) exited with code %d (%s)\n", argp=0x7fffedc680d0) at src/log.c:1066 #5 0x00000000004bc07f in ha_alert (fmt=0x5a5d58 "Current worker #%d (%d) exited with code %d (%s)\n") at src/log.c:1109 #6 0x0000000000534b7b in mworker_catch_sigchld (sh=<value optimized out>) at src/mworker.c:293 #7 0x0000000000556af3 in __signal_process_queue () at src/signal.c:88 #8 0x00000000004f6216 in signal_process_queue () at include/haproxy/signal.h:39 #9 run_poll_loop () at src/haproxy.c:2859 #10 0x00000000004f63b7 in run_thread_poll_loop (data=<value optimized out>) at src/haproxy.c:3028 #11 0x00000000004faaac in main (argc=<value optimized out>, argv=0x7fffedc68498) at src/haproxy.c:904 See: https://man7.org/linux/man-pages/man3/strsignal.3.html Must be backported as far as 2.0.
The HAProxy documentation has been split into a number of different files for ease of use. Please refer to the following files depending on what you're looking for : - INSTALL for instructions on how to build and install HAProxy - BRANCHES to understand the project's life cycle and what version to use - LICENSE for the project's license - CONTRIBUTING for the process to follow to submit contributions The more detailed documentation is located into the doc/ directory : - doc/intro.txt for a quick introduction on HAProxy - doc/configuration.txt for the configuration's reference manual - doc/lua.txt for the Lua's reference manual - doc/SPOE.txt for how to use the SPOE engine - doc/network-namespaces.txt for how to use network namespaces under Linux - doc/management.txt for the management guide - doc/regression-testing.txt for how to use the regression testing suite - doc/peers.txt for the peers protocol reference - doc/coding-style.txt for how to adopt HAProxy's coding style - doc/internals for developer-specific documentation (not all up to date)
Description
Languages
C
98.1%
Shell
0.8%
Makefile
0.5%
Lua
0.2%
Python
0.2%