Skip to content

Commit c5a08d1

Browse files
committed
ext/curl: Bump minimim Curl version to >= 7.61.0
Bumps the minimum required libcurl version to 7.61.0. Please also see php#4917, which bumped minimum libcurl version to the current >= 7.29.0. This bumps the minimum requirement to Curl 7.61.0 (released 2018 Sept). Ubuntu, Debian, RHEL, and RHEL derivatives have major and LTS version bumps this year. Following are the libcurl-dev/libcurl-devel versions available in the oldest supported (LTS or otherwise) in major OSs. - Debian buster: [7.64](https://packages.debian.org/buster/libcurl4-openssl-dev) - Ubuntu 20.04: [7.68](https://packages.ubuntu.com/focal/libcurl-dev) - CentOS/RHEL 7: 7.29 - RHEL 8/Rocky 8/EL 8: 7.61 - Fedora 38: 7.87 RHEL/CentOS 7 reaches EOL mid 2024, so for PHP 8.4 scheduled towards the end of this year, we can safely bump the minimum libcurl version. 7.61.0 was selected as the new minimum because RHEL and derivatives have libcurl-devel version 7.61. RHEL 8 is a current and supported RHEL version.
1 parent b06fedb commit c5a08d1

8 files changed

+3
-293
lines changed

ext/curl/config.m4

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ PHP_ARG_WITH([curl],
44
[Include cURL support])])
55

66
if test "$PHP_CURL" != "no"; then
7-
PKG_CHECK_MODULES([CURL], [libcurl >= 7.29.0])
7+
PKG_CHECK_MODULES([CURL], [libcurl >= 7.61.0])
88
PKG_CHECK_VAR([CURL_FEATURES], [libcurl], [supported_features])
99

1010
PHP_EVAL_LIBLINE($CURL_LIBS, CURL_SHARED_LIBADD)

ext/curl/curl.stub.php

Lines changed: 0 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -472,13 +472,11 @@
472472
* @cvalue CURLOPT_WRITEHEADER
473473
*/
474474
const CURLOPT_WRITEHEADER = UNKNOWN;
475-
#if LIBCURL_VERSION_NUM >= 0x072000
476475
/**
477476
* @var int
478477
* @cvalue CURLOPT_XFERINFOFUNCTION
479478
*/
480479
const CURLOPT_XFERINFOFUNCTION = UNKNOWN;
481-
#endif
482480

483481
/* */
484482
/**
@@ -776,13 +774,11 @@
776774
* @cvalue CURLE_SSL_PEER_CERTIFICATE
777775
*/
778776
const CURLE_SSL_PEER_CERTIFICATE = UNKNOWN;
779-
#if LIBCURL_VERSION_NUM >= 0x072700 /* Available since 7.39.0 */
780777
/**
781778
* @var int
782779
* @cvalue CURLE_SSL_PINNEDPUBKEYNOTMATCH
783780
*/
784781
const CURLE_SSL_PINNEDPUBKEYNOTMATCH = UNKNOWN;
785-
#endif
786782
/**
787783
* @var int
788784
* @cvalue CURLE_TELNET_OPTION_SYNTAX
@@ -2421,7 +2417,6 @@
24212417
const CURLOPT_SASL_IR = UNKNOWN;
24222418
#endif
24232419

2424-
#if LIBCURL_VERSION_NUM >= 0x072100 /* Available since 7.33.0 */
24252420
/**
24262421
* @var int
24272422
* @cvalue CURLOPT_DNS_INTERFACE
@@ -2453,9 +2448,7 @@
24532448
* @cvalue CURL_VERSION_HTTP2
24542449
*/
24552450
const CURL_VERSION_HTTP2 = UNKNOWN;
2456-
#endif
24572451

2458-
#if LIBCURL_VERSION_NUM >= 0x072200 /* Available since 7.34.0 */
24592452
/**
24602453
* @var int
24612454
* @cvalue CURLOPT_LOGIN_OPTIONS
@@ -2477,9 +2470,7 @@
24772470
* @cvalue CURL_SSLVERSION_TLSv1_2
24782471
*/
24792472
const CURL_SSLVERSION_TLSv1_2 = UNKNOWN;
2480-
#endif
24812473

2482-
#if LIBCURL_VERSION_NUM >= 0x072400 /* Available since 7.36.0 */
24832474
/**
24842475
* @var int
24852476
* @cvalue CURLOPT_EXPECT_100_TIMEOUT_MS
@@ -2495,9 +2486,7 @@
24952486
* @cvalue CURLOPT_SSL_ENABLE_NPN
24962487
*/
24972488
const CURLOPT_SSL_ENABLE_NPN = UNKNOWN;
2498-
#endif
24992489

2500-
#if LIBCURL_VERSION_NUM >= 0x072500 /* Available since 7.37.0 */
25012490
/**
25022491
* @var int
25032492
* @cvalue CURLHEADER_SEPARATE
@@ -2518,9 +2507,7 @@
25182507
* @cvalue CURLOPT_PROXYHEADER
25192508
*/
25202509
const CURLOPT_PROXYHEADER = UNKNOWN;
2521-
#endif
25222510

2523-
#if LIBCURL_VERSION_NUM >= 0x072600 /* Available since 7.38.0 */
25242511
/**
25252512
* @var int
25262513
* @cvalue CURLAUTH_NEGOTIATE
@@ -2531,17 +2518,13 @@
25312518
* @cvalue CURL_VERSION_GSSAPI
25322519
*/
25332520
const CURL_VERSION_GSSAPI = UNKNOWN;
2534-
#endif
25352521

2536-
#if LIBCURL_VERSION_NUM >= 0x072700 /* Available since 7.39.0 */
25372522
/**
25382523
* @var int
25392524
* @cvalue CURLOPT_PINNEDPUBLICKEY
25402525
*/
25412526
const CURLOPT_PINNEDPUBLICKEY = UNKNOWN;
2542-
#endif
25432527

2544-
#if LIBCURL_VERSION_NUM >= 0x072800 /* Available since 7.40.0 */
25452528
/**
25462529
* @var int
25472530
* @cvalue CURLOPT_UNIX_SOCKET_PATH
@@ -2567,15 +2550,12 @@
25672550
* @cvalue CURL_VERSION_UNIX_SOCKETS
25682551
*/
25692552
const CURL_VERSION_UNIX_SOCKETS = UNKNOWN;
2570-
#endif
25712553

2572-
#if LIBCURL_VERSION_NUM >= 0x072900 /* Available since 7.41.0 */
25732554
/**
25742555
* @var int
25752556
* @cvalue CURLOPT_SSL_VERIFYSTATUS
25762557
*/
25772558
const CURLOPT_SSL_VERIFYSTATUS = UNKNOWN;
2578-
#endif
25792559

25802560
#if LIBCURL_VERSION_NUM >= 0x072a00 /* Available since 7.42.0 */
25812561
/**
@@ -2690,7 +2670,6 @@
26902670
const CURLOPT_TFTP_NO_OPTIONS = UNKNOWN;
26912671
#endif
26922672

2693-
#if LIBCURL_VERSION_NUM >= 0x073100 /* Available since 7.49.0 */
26942673
/**
26952674
* @var int
26962675
* @cvalue CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE
@@ -2706,17 +2685,13 @@
27062685
* @cvalue CURLOPT_TCP_FASTOPEN
27072686
*/
27082687
const CURLOPT_TCP_FASTOPEN = UNKNOWN;
2709-
#endif
27102688

2711-
#if LIBCURL_VERSION_NUM >= 0x073200 /* Available since 7.50.0 */
27122689
/**
27132690
* @var int
27142691
* @cvalue CURLINFO_HTTP_VERSION
27152692
*/
27162693
const CURLINFO_HTTP_VERSION = UNKNOWN;
2717-
#endif
27182694

2719-
#if LIBCURL_VERSION_NUM >= 0x073300 /* Available since 7.51.0 */
27202695
/**
27212696
* @var int
27222697
* @cvalue CURLE_WEIRD_SERVER_REPLY
@@ -2727,9 +2702,7 @@
27272702
* @cvalue CURLOPT_KEEP_SENDING_ON_ERROR
27282703
*/
27292704
const CURLOPT_KEEP_SENDING_ON_ERROR = UNKNOWN;
2730-
#endif
27312705

2732-
#if LIBCURL_VERSION_NUM >= 0x073400 /* Available since 7.52.0 */
27332706
/**
27342707
* @var int
27352708
* @cvalue CURL_SSLVERSION_TLSv1_3
@@ -2850,9 +2823,7 @@
28502823
* @cvalue CURLPROXY_HTTPS
28512824
*/
28522825
const CURLPROXY_HTTPS = UNKNOWN;
2853-
#endif
28542826

2855-
#if LIBCURL_VERSION_NUM >= 0x073500 /* Available since 7.53.0 */
28562827
/**
28572828
* @var int
28582829
* @cvalue CURL_MAX_READ_SIZE
@@ -2863,9 +2834,7 @@
28632834
* @cvalue CURLOPT_ABSTRACT_UNIX_SOCKET
28642835
*/
28652836
const CURLOPT_ABSTRACT_UNIX_SOCKET = UNKNOWN;
2866-
#endif
28672837

2868-
#if LIBCURL_VERSION_NUM >= 0x073600 /* Available since 7.54.0 */
28692838
/**
28702839
* @var int
28712840
* @cvalue CURL_SSLVERSION_MAX_DEFAULT
@@ -2901,17 +2870,13 @@
29012870
* @cvalue CURLOPT_SUPPRESS_CONNECT_HEADERS
29022871
*/
29032872
const CURLOPT_SUPPRESS_CONNECT_HEADERS = UNKNOWN;
2904-
#endif
29052873

2906-
#if LIBCURL_VERSION_NUM >= 0x073601 /* Available since 7.54.1 */
29072874
/**
29082875
* @var int
29092876
* @cvalue CURLAUTH_GSSAPI
29102877
*/
29112878
const CURLAUTH_GSSAPI = UNKNOWN;
2912-
#endif
29132879

2914-
#if LIBCURL_VERSION_NUM >= 0x073700 /* Available since 7.55.0 */
29152880
/**
29162881
* @var int
29172882
* @cvalue CURLINFO_CONTENT_LENGTH_DOWNLOAD_T
@@ -2952,9 +2917,7 @@
29522917
* @cvalue CURLOPT_SOCKS5_AUTH
29532918
*/
29542919
const CURLOPT_SOCKS5_AUTH = UNKNOWN;
2955-
#endif
29562920

2957-
#if LIBCURL_VERSION_NUM >= 0x073800 /* Available since 7.56.0 */
29582921
/**
29592922
* @var int
29602923
* @cvalue CURLOPT_SSH_COMPRESSION
@@ -2965,9 +2928,7 @@
29652928
* @cvalue CURL_VERSION_MULTI_SSL
29662929
*/
29672930
const CURL_VERSION_MULTI_SSL = UNKNOWN;
2968-
#endif
29692931

2970-
#if LIBCURL_VERSION_NUM >= 0x073900 /* Available since 7.57.0 */
29712932
/**
29722933
* @var int
29732934
* @cvalue CURL_VERSION_BROTLI
@@ -2978,17 +2939,13 @@
29782939
* @cvalue CURL_LOCK_DATA_CONNECT
29792940
*/
29802941
const CURL_LOCK_DATA_CONNECT = UNKNOWN;
2981-
#endif
29822942

2983-
#if LIBCURL_VERSION_NUM >= 0x073a00 /* Available since 7.58.0 */
29842943
/**
29852944
* @var int
29862945
* @cvalue CURLSSH_AUTH_GSSAPI
29872946
*/
29882947
const CURLSSH_AUTH_GSSAPI = UNKNOWN;
2989-
#endif
29902948

2991-
#if LIBCURL_VERSION_NUM >= 0x073b00 /* Available since 7.59.0 */
29922949
/**
29932950
* @var int
29942951
* @cvalue CURLINFO_FILETIME_T
@@ -3004,9 +2961,7 @@
30042961
* @cvalue CURLOPT_TIMEVALUE_LARGE
30052962
*/
30062963
const CURLOPT_TIMEVALUE_LARGE = UNKNOWN;
3007-
#endif
30082964

3009-
#if LIBCURL_VERSION_NUM >= 0x073c00 /* Available since 7.60.0 */
30102965
/**
30112966
* @var int
30122967
* @cvalue CURLOPT_DNS_SHUFFLE_ADDRESSES
@@ -3017,9 +2972,7 @@
30172972
* @cvalue CURLOPT_HAPROXYPROTOCOL
30182973
*/
30192974
const CURLOPT_HAPROXYPROTOCOL = UNKNOWN;
3020-
#endif
30212975

3022-
#if LIBCURL_VERSION_NUM >= 0x073d00 /* Available since 7.61.0 */
30232976
/**
30242977
* @var int
30252978
* @cvalue CURL_LOCK_DATA_PSL
@@ -3080,7 +3033,6 @@
30803033
* @cvalue CURLOPT_TLS13_CIPHERS
30813034
*/
30823035
const CURLOPT_TLS13_CIPHERS = UNKNOWN;
3083-
#endif
30843036

30853037
#if LIBCURL_VERSION_NUM >= 0x073E00 /* Available since 7.62.0 */
30863038
/**

ext/curl/curl_arginfo.h

Lines changed: 1 addition & 39 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

ext/curl/curl_private.h

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -73,9 +73,7 @@ typedef struct {
7373
php_curl_read *read;
7474
zval std_err;
7575
php_curl_callback *progress;
76-
#if LIBCURL_VERSION_NUM >= 0x072000
7776
php_curl_callback *xferinfo;
78-
#endif
7977
php_curl_callback *fnmatch;
8078
#if LIBCURL_VERSION_NUM >= 0x075400
8179
php_curl_callback *sshhostkey;

0 commit comments

Comments
 (0)