summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRemi Collet <remi@remirepo.net>2025-09-29 11:33:29 +0200
committerRemi Collet <remi@php.net>2025-09-29 11:33:29 +0200
commit4de683896e16cbce61bd52db8ce698d809d85d34 (patch)
tree19cb1ade04f8c1d1f221779ad59495300544dbdd
parent8b6b57bf3ffbb63604b49adcbaf93d5eacda41a0 (diff)
add upstream patch for PHP 8.5.0beta2
-rw-r--r--php-snuffleupagus.spec11
-rw-r--r--php85.patch114
2 files changed, 123 insertions, 2 deletions
diff --git a/php-snuffleupagus.spec b/php-snuffleupagus.spec
index 26330e7..9123710 100644
--- a/php-snuffleupagus.spec
+++ b/php-snuffleupagus.spec
@@ -1,6 +1,6 @@
# remirepo spec file for php-snuffleupagus
#
-# SPDX-FileCopyrightText: Copyright 201825 Remi Collet
+# SPDX-FileCopyrightText: Copyright 2018-2025 Remi Collet
# SPDX-License-Identifier: CECILL-2.1
# http://www.cecill.info/licences/Licence_CeCILL_V2-en.txt
#
@@ -35,13 +35,15 @@ Version: 0.12.0
%if 0%{?gh_date}
Release: 1%{gh_date}.%{gh_short}%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
%else
-Release: 1%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
+Release: 2%{?dist}%{!?scl:%{!?nophptag:%(%{__php} -r 'echo ".".PHP_MAJOR_VERSION.".".PHP_MINOR_VERSION;')}}
%endif
License: LGPL-3.0-only
Group: Development/Languages
URL: https://github.com/%{gh_owner}/%{gh_project}
Source0: https://github.com/%{gh_owner}/%{gh_project}/archive/%{gh_commit}/%{pkg_name}-%{version}-%{gh_short}.tar.gz
+Patch0: php85.patch
+
BuildRequires: %{?dtsprefix}gcc
BuildRequires: %{?scl_prefix}php-devel >= 7.0
# For tests/upload_validation_real.phpt
@@ -73,6 +75,8 @@ Package built for PHP %(%{__php} -r 'echo PHP_MAJOR_VERSION.".".PHP_MINOR_VERSIO
%setup -q -n %{gh_project}-%{gh_commit}
cd %{sources}
+%patch -P0 -p2
+
# Sanity check, really often broken
grep PHP_SNUFFLEUPAGUS_VERSION php_snuffleupagus.h
# sed -e '/PHP_SNUFFLEUPAGUS_VERSION/s/0.9.0/0.8.0/' -i php_snuffleupagus.h
@@ -212,6 +216,9 @@ REPORT_EXIT_STATUS=1 \
%changelog
+* Thu Sep 4 2025 Remi Collet <remi@remirepo.net> - 0.12.0-2
+- add upstream patch for PHP 8.5.0beta2
+
* Wed Aug 27 2025 Remi Collet <remi@remirepo.net> - 0.12.0-1
- update to 0.12.0
- re-license spec file to CECILL-2.1
diff --git a/php85.patch b/php85.patch
new file mode 100644
index 0000000..96f8d63
--- /dev/null
+++ b/php85.patch
@@ -0,0 +1,114 @@
+From ee5e383c6bbca94d5f93134510468b3fe87a470c Mon Sep 17 00:00:00 2001
+From: jvoisin <julien.voisin@dustri.org>
+Date: Sun, 31 Aug 2025 16:05:44 +0200
+Subject: [PATCH] Add support for PHP8.5
+
+---
+ .github/workflows/builds.yml | 1 +
+ src/sp_cookie_encryption.c | 23 +++++++++++++++++--
+ ...isabled_functions_shell_exec_backtick.phpt | 1 +
+ ...led_functions_shell_exec_backtick_var.phpt | 1 +
+ ...ctions_shell_exec_backtick_var_string.phpt | 1 +
+ 5 files changed, 25 insertions(+), 2 deletions(-)
+
+diff --git a/src/sp_cookie_encryption.c b/src/sp_cookie_encryption.c
+index c833f943..ec5c7c2d 100644
+--- a/src/sp_cookie_encryption.c
++++ b/src/sp_cookie_encryption.c
+@@ -48,7 +48,11 @@ static zend_string *encrypt_data(zend_string *data) {
+ #if PHP_VERSION_ID >= 70300
+ static void php_head_parse_cookie_options_array(
+ zval *options, zend_long *expires, zend_string **path, zend_string **domain,
+- zend_bool *secure, zend_bool *httponly, zend_string **samesite) {
++ zend_bool *secure, zend_bool *httponly, zend_string **samesite
++#if PHP_VERSION_ID >= 80500
++ ,bool *partitioned
++#endif
++ ) {
+ int found = 0;
+ zend_string *key;
+ zval *value;
+@@ -73,6 +77,11 @@ static void php_head_parse_cookie_options_array(
+ } else if (zend_string_equals_literal_ci(key, "samesite")) {
+ *samesite = zval_get_string(value);
+ found++;
++#if PHP_VERSION_ID >= 80500
++ } else if (zend_string_equals_literal_ci(key, "partitioned")) {
++ *partitioned = zval_is_true(value);
++ found++;
++#endif
+ } else {
+ php_error_docref(NULL, E_WARNING,
+ "Unrecognized key '%s' found in the options array",
+@@ -94,6 +103,9 @@ static void php_head_parse_cookie_options_array(
+ #endif
+
+ PHP_FUNCTION(sp_setcookie) {
++#if PHP_VERSION_ID >= 80500
++ zend_bool partitioned;
++#endif
+ zend_string *name = NULL, *value = NULL, *path = NULL, *domain = NULL,
+ *value_enc = NULL,
+ #if PHP_VERSION_ID < 70300
+@@ -133,7 +145,11 @@ PHP_FUNCTION(sp_setcookie) {
+ }
+ php_head_parse_cookie_options_array(expires_or_options, &expires, &path,
+ &domain, &secure, &httponly,
++#if PHP_VERSION_ID < 80500
+ &samesite);
++#else
++ &samesite, &partitioned);
++#endif
+ } else {
+ expires = zval_get_long(expires_or_options);
+ }
+@@ -194,9 +210,12 @@ PHP_FUNCTION(sp_setcookie) {
+ if (php_setcookie(name, (value_enc ? value_enc : value), expires,
+ (path_samesite ? path_samesite : path), domain, secure, 1,
+ httponly) == SUCCESS) {
+-#else
++#elif PHP_VERSION_ID < 80500
+ if (php_setcookie(name, (value_enc ? value_enc : value), expires, path,
+ domain, secure, httponly, samesite, 1) == SUCCESS) {
++#else
++ if (php_setcookie(name, (value_enc ? value_enc : value), expires, path,
++ domain, secure, httponly, samesite, partitioned, false) == SUCCESS) {
+ #endif
+ RETVAL_TRUE;
+ } else {
+diff --git a/src/tests/disable_function/disabled_functions_shell_exec_backtick.phpt b/src/tests/disable_function/disabled_functions_shell_exec_backtick.phpt
+index aeb64c29..6f53ceae 100644
+--- a/src/tests/disable_function/disabled_functions_shell_exec_backtick.phpt
++++ b/src/tests/disable_function/disabled_functions_shell_exec_backtick.phpt
+@@ -4,6 +4,7 @@ Disable functions - shell_exec via backtick operator
+ <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?>
+ --INI--
+ sp.configuration_file={PWD}/config/disabled_functions_extra.ini
++error_reporting = E_ALL & ~E_DEPRECATED
+ --FILE--
+ <?php
+ echo `ls`;
+diff --git a/src/tests/disable_function/disabled_functions_shell_exec_backtick_var.phpt b/src/tests/disable_function/disabled_functions_shell_exec_backtick_var.phpt
+index a312acfb..6ea5865d 100644
+--- a/src/tests/disable_function/disabled_functions_shell_exec_backtick_var.phpt
++++ b/src/tests/disable_function/disabled_functions_shell_exec_backtick_var.phpt
+@@ -4,6 +4,7 @@ Disable functions - shell_exec via backtick operator in context of a var name
+ <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?>
+ --INI--
+ sp.configuration_file={PWD}/config/disabled_functions_extra.ini
++error_reporting = E_ALL & ~E_DEPRECATED
+ --FILE--
+ <?php
+ echo ${`ls`};
+diff --git a/src/tests/disable_function/disabled_functions_shell_exec_backtick_var_string.phpt b/src/tests/disable_function/disabled_functions_shell_exec_backtick_var_string.phpt
+index ea77a7dd..f1175680 100644
+--- a/src/tests/disable_function/disabled_functions_shell_exec_backtick_var_string.phpt
++++ b/src/tests/disable_function/disabled_functions_shell_exec_backtick_var_string.phpt
+@@ -4,6 +4,7 @@ Disable functions - shell_exec via backtick operator in context of a var name in
+ <?php if (!extension_loaded("snuffleupagus")) print "skip"; ?>
+ --INI--
+ sp.configuration_file={PWD}/config/disabled_functions_extra.ini
++error_reporting = E_ALL & ~E_DEPRECATED
+ --FILE--
+ <?php
+ echo "{${`ls`}}";