Commit dc5acdb60e0 for php

commit dc5acdb60e04f44c5ef38d32eabf1a90da243289
Author: Shivam Mathur <shivam_jpr@hotmail.com>
Date:   Sun Nov 1 21:10:10 2026 +0530

    Fix linking ext/curl against OpenSSL (#13262) (#25129)

    This is backport for 8.3 of b222c020bfa876ae1cea87406beb8af0b53f0fab
    that originally targeted only 8.4+. This is however a bug fix.

    Following 68f6ab711323678382d2746e57358d3f57a3446b, the ext/curl doesn't
    need to be linked against OpenSSL anymore, if curl_version_info_data
    ssl_version is OpenSSL/1.1 or later.

    With OpenSSL 3 and later the check for old SSL crypto locking callbacks
    was detected here.

    This also uses a common PHP_SETUP_OPENSSL macro for checking OpenSSL and
    syncs the minimum OpenSSL version (currently 1.0.2 or later) across the
    PHP build system.

    (cherry picked from commit ae92b85572ac9a5f14103cdedbf6448f9e8db09d)

    Co-authored-by: Peter Kokot <peterkokot@gmail.com>

diff --git a/ext/curl/config.m4 b/ext/curl/config.m4
index 3b11739654b..c0325f990ad 100644
--- a/ext/curl/config.m4
+++ b/ext/curl/config.m4
@@ -28,6 +28,7 @@ if test "$PHP_CURL" != "no"; then

     AC_MSG_CHECKING([for libcurl linked against old openssl])
     AC_RUN_IFELSE([AC_LANG_SOURCE([[
+#include <stdio.h>
 #include <strings.h>
 #include <curl/curl.h>

@@ -39,9 +40,18 @@ int main(int argc, char *argv[])
     const char *ptr = data->ssl_version;

     while(*ptr == ' ') ++ptr;
-    if (strncasecmp(ptr, "OpenSSL/1.1", sizeof("OpenSSL/1.1")-1) == 0) {
-      /* New OpenSSL version */
-      return 3;
+    int major, minor;
+    if (sscanf(ptr, "OpenSSL/%d", &major) == 1) {
+      if (major >= 3) {
+        /* OpenSSL version 3 or later */
+        return 4;
+      }
+    }
+    if (sscanf(ptr, "OpenSSL/%d.%d", &major, &minor) == 2) {
+      if (major > 1 || (major == 1 && minor >= 1)) {
+        /* OpenSSL version 1.1 or later */
+        return 3;
+      }
     }
     if (strncasecmp(ptr, "OpenSSL", sizeof("OpenSSL")-1) == 0) {
       /* Old OpenSSL version */
@@ -56,11 +66,7 @@ int main(int argc, char *argv[])
     ]])],[
       AC_MSG_RESULT([yes])
       AC_DEFINE([HAVE_CURL_OLD_OPENSSL], [1], [Have cURL with old OpenSSL])
-      PKG_CHECK_MODULES([OPENSSL], [openssl], [
-        PHP_EVAL_LIBLINE($OPENSSL_LIBS, CURL_SHARED_LIBADD)
-        PHP_EVAL_INCLINE($OPENSSL_CFLAGS)
-        AC_CHECK_HEADERS([openssl/crypto.h])
-      ], [])
+      PHP_SETUP_OPENSSL(CURL_SHARED_LIBADD,[AC_CHECK_HEADERS([openssl/crypto.h])],[])
     ], [
       AC_MSG_RESULT([no])
     ], [