Source: rsyslog Version: 8.2502.0-1 X-Debbugs-CC: jspri...@debian.org Hello,
as suggested by Jochen (in CC:), I'm filing this bug to record the apparent ftbfs of rsyslog. This happens inside sbuild 0.88.5 with todays unstable. Given enough RAM and diskspace, rsyslog compiles, but then the tests fail in imrelp-tls-cfgcmd.sh. With gdb installed, I get this result in test-suite.log: | rsyslogd: imrelp[50927]: error 'relpTcpRtryHandshake_ossl: Server handshake failed with 1 - Aborting handshake.', object 'lstn 50927: conn to clt 127.0.0.1/localhost' - input may not work as intended [v8.2502.0 try https://www.rsyslog.com/e/2353 ] | rsyslogd: imrelp[50927]: error 'relpTcpLastSSLErrorMsg: OpenSSL Error Stack: error:0A0000BF:SSL routines::no protocols available ', object 'lstn 50927: conn to clt 127.0.0.1/localhost' - | input may not work as intended [v8.2502.0 try https://www.rsyslog.com/e/2353 ] | starting run 1 | Sending 1000 messages. | error during tcpflood on port 50927! But test continues... | 21:00:48 Shutting down instance 1 | imdiag: wait q_empty: qsize 0 nempty 1 | imdiag[34869]: mainqueue empty | DoDie called. | rsyslogd debug: info: trying to cooperatively stop input ../plugins/imdiag/.libs/imdiag, timeout 60000 ms | rsyslogd debug: info: trying to cooperatively stop input imrelp, timeout 60000 ms | rsyslog debug: main Q:Reg/w0: enter WrkrExecCleanup | rsyslog debug: 0xaaaad34ac350: worker exiting | rsyslog debug: main Q:Reg/w0: thread joined | 21:00:49[1] wait on shutdown of 268852 | ABORT! core file exists (maybe from a parallel run!) | /build/reproducible-path/rsyslog-8.2502.0/tests | -rw------- 1 sbuild sbuild 10649600 Mar 10 21:00 core.268875 | trying to obtain crash location info | note: this may not be the correct file, check it | | warning: core file may not match specified executable file. | [New LWP 268877] | [New LWP 268875] | Core was generated by `./tcpflood -p50927 -u openssl -Trelp-tls -acertvalid -p50927 -m1000 -x ./tls-certs/ca.pem -z ./tls-certs/key.pem -Z ./tls-certs/cert.pem -Ersyslog -k Protocol=ALL,-S | SLv2,-SSLv3,-TLSv1.1,-TLSv1.2\ CipherString=DHE-RSA-AES256-SHA\ Protocol=ALL,-SSLv2,-SSLv3,-TLSv1.1,-TLSv1.2,-TLSv1.3\ MinProtocol=TLSv1.1\ MaxProtocol=TLSv1.1'. | Program terminated with signal SIGSEGV, Segmentation fault. | #0 0x0000ffff7f807c54 in ?? () | [Current thread is 1 (LWP 268877)] | #0 0x0000ffff7f807c54 in ?? () | #1 0x0000ffff7e48e238 in ?? () | Backtrace stopped: not enough registers or memory available to unwind further | not reporting failure as RSYSLOG_STATSURL is not set | 21:00:49[1] FAIL: Test ./imrelp-tls-cfgcmd.sh (took 1 seconds) | FAIL imrelp-tls-cfgcmd.sh (exit status: 1) Upstream has at least one open issue from 2020 and newer, allegedly fixed issues: https://github.com/rsyslog/rsyslog/issues/4130 https://github.com/rsyslog/rsyslog/pull/4535 I tried understanding the test, but ISTM it tries to setup a TLS configuration that cannot work. All protocols get disabled, and then Min/MaxProtocol is set to a disabled protocol. I don't see how OpenSSL could ever fulfill this request. On top of that, tcpflood(.c) apparently segfaults when it cannot connect to the specified remote. Hope this helps, Chris