You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
8.3.26 compiled from source on Redhat 9 Enterprise has issues with libcurl? #20099
AddressSanitizer:DEADLYSIGNAL
=================================================================
==166412==ERROR: AddressSanitizer: SEGV on unknown address 0x000000000240 (pc 0x7fe87829f4d6 bp 0x622000009100 sp 0x7fffe5cecab0 T0)
==166412==The signal is caused by a READ memory access.
==166412==Hint: address points to the zero page.
#0 0x7fe87829f4d6 in ossl_send (/lib64/libcurl.so.4+0x734d6)
#1 0x7fe8782567c5 in send_callback.lto_priv.0 (/lib64/libcurl.so.4+0x2a7c5)
#2 0x7fe8774e99b8 in nghttp2_session_send (/lib64/libnghttp2.so.14+0xd9b8)
#3 0x7fe8782570be in http2_conncheck.lto_priv.0 (/lib64/libcurl.so.4+0x2b0be)
#4 0x7fe8782499ce in conn_upkeep (/lib64/libcurl.so.4+0x1d9ce)
#5 0x7fe878241364 in Curl_conncache_foreach (/lib64/libcurl.so.4+0x15364)
#6 0x7fe87824bc7d in curl_easy_upkeep (/lib64/libcurl.so.4+0x1fc7d)
#7 0x87c086 in zif_curl_upkeep /home/dcarlier/php-src/ext/curl/interface.c:3230
#8 0x1079f01 in ZEND_DO_ICALL_SPEC_RETVAL_USED_HANDLER /home/dcarlier/php-src/Zend/zend_vm_execute.h:1337
#9 0x11c8747 in execute_ex /home/dcarlier/php-src/Zend/zend_vm_execute.h:57277
#10 0x11da8b9 in zend_execute /home/dcarlier/php-src/Zend/zend_vm_execute.h:61665
#11 0xfdbe05 in zend_execute_scripts /home/dcarlier/php-src/Zend/zend.c:1895
#12 0xe60e89 in php_execute_script /home/dcarlier/php-src/main/main.c:2531
#13 0x13ad2af in do_cli /home/dcarlier/php-src/sapi/cli/php_cli.c:966
#14 0x13aefc1 in main /home/dcarlier/php-src/sapi/cli/php_cli.c:1341
#15 0x7fe87722a60f in __libc_start_call_main (/lib64/libc.so.6+0x2a60f)
#16 0x7fe87722a6bf in __libc_start_main@GLIBC_2.2.5 (/lib64/libc.so.6+0x2a6bf)
#17 0x604014 in _start (/home/dcarlier/php-src/sapi/cli/php+0x604014)
AddressSanitizer can not provide additional info.
SUMMARY: AddressSanitizer: SEGV (/lib64/libcurl.so.4+0x734d6) in ossl_send
==166412==ABORTING
Hi @skunktoy which curl version do you have installed (original repo or from an alternative one like Remi's) ?
Should just be the standard package and the devel package is from the appstream?
curl-config --version
libcurl 7.76.1
dnf info libcurl
Updating Subscription Management repositories.
Last metadata expiration check: 1:07:33 ago on Tue 07 Oct 2025 04:45:57 PM EDT.
Installed Packages
Name : libcurl
Version : 7.76.1
Release : 31.el9_6.1
Architecture : x86_64
Size : 652 k
Source : curl-7.76.1-31.el9_6.1.src.rpm
Repository : @System
From repo : rhel-9-for-x86_64-baseos-rpms
Summary : A library for getting files from web servers
URL : https://curl.se/
License : MIT
Description : libcurl is a free and easy-to-use client-side URL transfer
: library, supporting FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP,
: TELNET, DICT, LDAP, LDAPS, FILE, IMAP, SMTP, POP3 and RTSP.
: libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP
: uploading, HTTP form based upload, proxies, cookies,
: user+password authentication (Basic, Digest, NTLM, Negotiate,
: Kerberos4), file transfer resume, http proxy tunneling and more.
Available Packages
Name : libcurl
Version : 7.76.1
Release : 31.el9_6.1
Architecture : i686
Size : 310 k
Source : curl-7.76.1-31.el9_6.1.src.rpm
Repository : rhel-9-for-x86_64-baseos-rpms
Summary : A library for getting files from web servers
URL : https://curl.se/
License : MIT
Description : libcurl is a free and easy-to-use client-side URL transfer
: library, supporting FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP,
: TELNET, DICT, LDAP, LDAPS, FILE, IMAP, SMTP, POP3 and RTSP.
: libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP
: uploading, HTTP form based upload, proxies, cookies,
: user+password authentication (Basic, Digest, NTLM, Negotiate,
: Kerberos4), file transfer resume, http proxy tunneling and more.
dnf info libcurl-devel
Updating Subscription Management repositories.
Last metadata expiration check: 1:07:48 ago on Tue 07 Oct 2025 04:45:57 PM EDT.
Installed Packages
Name : libcurl-devel
Version : 7.76.1
Release : 31.el9_6.1
Architecture : x86_64
Size : 1.4 M
Source : curl-7.76.1-31.el9_6.1.src.rpm
Repository : @System
From repo : rhel-9-for-x86_64-appstream-rpms
Summary : Files needed for building applications with libcurl
URL : https://curl.se/
License : MIT
Description : The libcurl-devel package includes header files and libraries
: necessary for developing programs which use the libcurl library.
: It contains the API documentation of the library, too.
Available Packages
Name : libcurl-devel
Version : 7.76.1
Release : 31.el9_6.1
Architecture : i686
Size : 975 k
Source : curl-7.76.1-31.el9_6.1.src.rpm
Repository : rhel-9-for-x86_64-appstream-rpms
Summary : Files needed for building applications with libcurl
URL : https://curl.se/
License : MIT
Description : The libcurl-devel package includes header files and libraries
: necessary for developing programs which use the libcurl library.
: It contains the API documentation of the library, too.
Thanks for confirming. Would it be possible for you to try with a more recent curl version from a different repository ? It does not appear to me, at first at least, a PHP issue.
Thanks for confirming. Would it be possible for you to try with a more recent curl version from a different repository ? It does not appear to me, at first at least, a PHP issue.
Would you happen to have another repository you could recommend, or would just compiling the latest libcurl work?
I do not see evidence of available more recent versions of curl in places I would expect (e.g. EPEL), so maybe yes if this is not problem you may try from sources.
I do not see evidence of available more recent versions of curl in places I would expect (e.g. EPEL), so maybe yes if this is not problem you may try from sources.
Have compiled curl 8.16.0, and have compiled php against it. Now running : make test
I do not see evidence of available more recent versions of curl in places I would expect (e.g. EPEL), so maybe yes if this is not problem you may try from sources.
And it failed to throw that error or a segfault.
Guess I will try 7.88.1 and see what happens.
I'm guessing I should be contacting Redhat Support to see if they will do anything at this point?
I do not see evidence of available more recent versions of curl in places I would expect (e.g. EPEL), so maybe yes if this is not problem you may try from sources.
Have compiled curl 8.16.0, and have compiled php against it. Now running : make test
Note for next time you can directly run an individual test or even just extension test suite with sapi/cli/php run-tests.php path to phpt unit test or extension directory.
I can reproduce on centos stream 9, tried to install the 10th version but it kernel panic directly .. unfortunately not the only one having this issue.To summarize, does not fail on my ubuntu laptop nor macos. I may try other scenarios such as having curl with a different tls backend (e.g. gnutls) on the centos instance.
Activity
devnexen commentedon Oct 7, 2025
devnexen commentedon Oct 7, 2025
Hi @skunktoy which curl version do you have installed (original repo or from an alternative one like Remi's) ?
skunktoy commentedon Oct 7, 2025
Should just be the standard package and the devel package is from the appstream?
curl-config --version
libcurl 7.76.1
dnf info libcurl
Updating Subscription Management repositories.
Last metadata expiration check: 1:07:33 ago on Tue 07 Oct 2025 04:45:57 PM EDT.
Installed Packages
Name : libcurl
Version : 7.76.1
Release : 31.el9_6.1
Architecture : x86_64
Size : 652 k
Source : curl-7.76.1-31.el9_6.1.src.rpm
Repository : @System
From repo : rhel-9-for-x86_64-baseos-rpms
Summary : A library for getting files from web servers
URL : https://curl.se/
License : MIT
Description : libcurl is a free and easy-to-use client-side URL transfer
: library, supporting FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP,
: TELNET, DICT, LDAP, LDAPS, FILE, IMAP, SMTP, POP3 and RTSP.
: libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP
: uploading, HTTP form based upload, proxies, cookies,
: user+password authentication (Basic, Digest, NTLM, Negotiate,
: Kerberos4), file transfer resume, http proxy tunneling and more.
Available Packages
Name : libcurl
Version : 7.76.1
Release : 31.el9_6.1
Architecture : i686
Size : 310 k
Source : curl-7.76.1-31.el9_6.1.src.rpm
Repository : rhel-9-for-x86_64-baseos-rpms
Summary : A library for getting files from web servers
URL : https://curl.se/
License : MIT
Description : libcurl is a free and easy-to-use client-side URL transfer
: library, supporting FTP, FTPS, HTTP, HTTPS, SCP, SFTP, TFTP,
: TELNET, DICT, LDAP, LDAPS, FILE, IMAP, SMTP, POP3 and RTSP.
: libcurl supports SSL certificates, HTTP POST, HTTP PUT, FTP
: uploading, HTTP form based upload, proxies, cookies,
: user+password authentication (Basic, Digest, NTLM, Negotiate,
: Kerberos4), file transfer resume, http proxy tunneling and more.
dnf info libcurl-devel
Updating Subscription Management repositories.
Last metadata expiration check: 1:07:48 ago on Tue 07 Oct 2025 04:45:57 PM EDT.
Installed Packages
Name : libcurl-devel
Version : 7.76.1
Release : 31.el9_6.1
Architecture : x86_64
Size : 1.4 M
Source : curl-7.76.1-31.el9_6.1.src.rpm
Repository : @System
From repo : rhel-9-for-x86_64-appstream-rpms
Summary : Files needed for building applications with libcurl
URL : https://curl.se/
License : MIT
Description : The libcurl-devel package includes header files and libraries
: necessary for developing programs which use the libcurl library.
: It contains the API documentation of the library, too.
Available Packages
Name : libcurl-devel
Version : 7.76.1
Release : 31.el9_6.1
Architecture : i686
Size : 975 k
Source : curl-7.76.1-31.el9_6.1.src.rpm
Repository : rhel-9-for-x86_64-appstream-rpms
Summary : Files needed for building applications with libcurl
URL : https://curl.se/
License : MIT
Description : The libcurl-devel package includes header files and libraries
: necessary for developing programs which use the libcurl library.
: It contains the API documentation of the library, too.
devnexen commentedon Oct 7, 2025
Thanks for confirming. Would it be possible for you to try with a more recent curl version from a different repository ? It does not appear to me, at first at least, a PHP issue.
skunktoy commentedon Oct 7, 2025
Have you got
Would you happen to have another repository you could recommend, or would just compiling the latest libcurl work?
devnexen commentedon Oct 7, 2025
I do not see evidence of available more recent versions of curl in places I would expect (e.g. EPEL), so maybe yes if this is not problem you may try from sources.
skunktoy commentedon Oct 7, 2025
Have compiled curl 8.16.0, and have compiled php against it. Now running : make test
skunktoy commentedon Oct 7, 2025
And it failed to throw that error or a segfault.
Guess I will try 7.88.1 and see what happens.
I'm guessing I should be contacting Redhat Support to see if they will do anything at this point?
devnexen commentedon Oct 7, 2025
Note for next time you can directly run an individual test or even just extension test suite with sapi/cli/php run-tests.php path to phpt unit test or extension directory.
devnexen commentedon Oct 7, 2025
That might be a curl dependency issue instead then.
skunktoy commentedon Oct 7, 2025
curl 7.88.1 hand compiled seems to work as well ...
devnexen commentedon Oct 8, 2025
I can reproduce on centos stream 9, tried to install the 10th version but it kernel panic directly .. unfortunately not the only one having this issue.To summarize, does not fail on my ubuntu laptop nor macos. I may try other scenarios such as having curl with a different tls backend (e.g. gnutls) on the centos instance.
devnexen commentedon Oct 8, 2025
So I did try with curl 7.76.1 but with gnutls
and built PHP linked to it
devnexen commentedon Oct 8, 2025
Trying out with another openssl version/set of features (seems it s 3.5.1 on Centos while on my ubuntu it s 3.4.1 and macos 3.5.4) might be an option.
bukka commentedon Nov 30, 2025
I'm going to close this as I can't see how this could be PHP issue.