update to 8.3.0RC3 https://fedoraproject.org/wiki/Changes/php83
add internal UTC if tzdata is missing bump to final API/ABI switch to nikic/php-parser version 5 openssl: always warn about missing curve_name
This commit is contained in:
parent
1dc9fab1f5
commit
29055c78ae
57
.gitignore
vendored
57
.gitignore
vendored
@ -1,58 +1,9 @@
|
|||||||
clog
|
clog
|
||||||
TODO
|
TODO
|
||||||
*.md
|
*.md
|
||||||
php-5.*.xz
|
|
||||||
php-7.*.xz
|
|
||||||
php-7.*.xz.asc
|
|
||||||
/php-8.0.*.tar.xz
|
|
||||||
/php-8.0.*.tar.xz.asc
|
|
||||||
/php-8.1.*.tar.xz
|
/php-8.1.*.tar.xz
|
||||||
/php-8.1.*.tar.xz.asc
|
/php-8.1.*.tar.xz.asc
|
||||||
/php-8.2.0RC5.tar.xz
|
/php-8.2.*.tar.xz
|
||||||
/php-8.2.0RC5.tar.xz.asc
|
/php-8.2.*.tar.xz.asc
|
||||||
/php-8.2.0RC6.tar.xz
|
/php-8.3.0RC3.tar.xz
|
||||||
/php-8.2.0RC6.tar.xz.asc
|
/php-8.3.0RC3.tar.xz.asc
|
||||||
/php-8.2.0RC7.tar.xz
|
|
||||||
/php-8.2.0RC7.tar.xz.asc
|
|
||||||
/php-8.2.0.tar.xz
|
|
||||||
/php-8.2.0.tar.xz.asc
|
|
||||||
/php-8.2.1RC1.tar.xz
|
|
||||||
/php-8.2.1RC1.tar.xz.asc
|
|
||||||
/php-8.2.1.tar.xz
|
|
||||||
/php-8.2.1.tar.xz.asc
|
|
||||||
/php-8.2.2RC1.tar.xz
|
|
||||||
/php-8.2.2RC1.tar.xz.asc
|
|
||||||
/php-8.2.2.tar.xz
|
|
||||||
/php-8.2.2.tar.xz.asc
|
|
||||||
/php-8.2.3.tar.xz
|
|
||||||
/php-8.2.3.tar.xz.asc
|
|
||||||
/php-8.2.4RC1.tar.xz
|
|
||||||
/php-8.2.4RC1.tar.xz.asc
|
|
||||||
/php-8.2.4.tar.xz
|
|
||||||
/php-8.2.4.tar.xz.asc
|
|
||||||
/php-8.2.5RC1.tar.xz
|
|
||||||
/php-8.2.5RC1.tar.xz.asc
|
|
||||||
/php-8.2.5.tar.xz
|
|
||||||
/php-8.2.5.tar.xz.asc
|
|
||||||
/php-8.2.6RC1.tar.xz
|
|
||||||
/php-8.2.6RC1.tar.xz.asc
|
|
||||||
/php-8.2.6.tar.xz
|
|
||||||
/php-8.2.6.tar.xz.asc
|
|
||||||
/php-8.2.7RC1.tar.xz
|
|
||||||
/php-8.2.7RC1.tar.xz.asc
|
|
||||||
/php-8.2.7.tar.xz
|
|
||||||
/php-8.2.7.tar.xz.asc
|
|
||||||
/php-8.2.8RC1.tar.xz
|
|
||||||
/php-8.2.8RC1.tar.xz.asc
|
|
||||||
/php-8.2.8.tar.xz
|
|
||||||
/php-8.2.8.tar.xz.asc
|
|
||||||
/php-8.2.9RC1.tar.xz
|
|
||||||
/php-8.2.9RC1.tar.xz.asc
|
|
||||||
/php-8.2.9.tar.xz
|
|
||||||
/php-8.2.9.tar.xz.asc
|
|
||||||
/php-8.2.10.tar.xz
|
|
||||||
/php-8.2.10.tar.xz.asc
|
|
||||||
/php-8.2.11RC1.tar.xz
|
|
||||||
/php-8.2.11RC1.tar.xz.asc
|
|
||||||
/php-8.2.11.tar.xz
|
|
||||||
/php-8.2.11.tar.xz.asc
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
diff -up ./scripts/phpize.in.headers ./scripts/phpize.in
|
diff -up ./scripts/phpize.in.headers ./scripts/phpize.in
|
||||||
--- ./scripts/phpize.in.headers 2019-07-23 10:05:11.000000000 +0200
|
--- ./scripts/phpize.in.headers 2019-07-23 10:05:11.000000000 +0200
|
||||||
+++ ./scripts/phpize.in 2019-07-23 10:18:13.648098089 +0200
|
+++ ./scripts/phpize.in 2019-07-23 10:18:13.648098089 +0200
|
||||||
@@ -165,6 +165,15 @@ phpize_autotools()
|
@@ -166,6 +166,15 @@ phpize_autotools()
|
||||||
$PHP_AUTOHEADER || exit 1
|
$PHP_AUTOHEADER || exit 1
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -17,7 +17,7 @@ diff -up ./scripts/phpize.in.headers ./scripts/phpize.in
|
|||||||
# Main script
|
# Main script
|
||||||
|
|
||||||
case "$1" in
|
case "$1" in
|
||||||
@@ -183,12 +192,15 @@ case "$1" in
|
@@ -184,12 +193,15 @@ case "$1" in
|
||||||
|
|
||||||
# Version
|
# Version
|
||||||
--version|-v)
|
--version|-v)
|
||||||
@ -33,3 +33,33 @@ diff -up ./scripts/phpize.in.headers ./scripts/phpize.in
|
|||||||
phpize_check_configm4 0
|
phpize_check_configm4 0
|
||||||
|
|
||||||
phpize_check_build_files
|
phpize_check_build_files
|
||||||
|
From c454f120857df6f771c5475bf1fcc99e683b87dc Mon Sep 17 00:00:00 2001
|
||||||
|
From: Remi Collet <remi@remirepo.net>
|
||||||
|
Date: Thu, 7 Sep 2023 09:56:51 +0200
|
||||||
|
Subject: [PATCH] also display PHP version in phpize
|
||||||
|
|
||||||
|
---
|
||||||
|
scripts/phpize.in | 3 +++
|
||||||
|
1 file changed, 3 insertions(+)
|
||||||
|
|
||||||
|
diff --git a/scripts/phpize.in b/scripts/phpize.in
|
||||||
|
index 7d9c1df14c8e..81605e06a590 100644
|
||||||
|
--- a/scripts/phpize.in
|
||||||
|
+++ b/scripts/phpize.in
|
||||||
|
@@ -59,6 +59,8 @@ phpize_check_configm4()
|
||||||
|
phpize_get_api_numbers()
|
||||||
|
{
|
||||||
|
# extracting API NOs:
|
||||||
|
+ PHP_MINOR_VERSION=`grep '#define PHP_MINOR_VERSION' $includedir/main/php_version.h|$SED 's/#define PHP_MINOR_VERSION //'`
|
||||||
|
+ PHP_MAJOR_VERSION=`grep '#define PHP_MAJOR_VERSION' $includedir/main/php_version.h|$SED 's/#define PHP_MAJOR_VERSION//'`
|
||||||
|
PHP_API_VERSION=`grep '#define PHP_API_VERSION' $includedir/main/php.h|$SED 's/#define PHP_API_VERSION//'`
|
||||||
|
ZEND_MODULE_API_NO=`grep '#define ZEND_MODULE_API_NO' $includedir/Zend/zend_modules.h|$SED 's/#define ZEND_MODULE_API_NO//'`
|
||||||
|
ZEND_EXTENSION_API_NO=`grep '#define ZEND_EXTENSION_API_NO' $includedir/Zend/zend_extensions.h|$SED 's/#define ZEND_EXTENSION_API_NO//'`
|
||||||
|
@@ -68,6 +70,7 @@ phpize_print_api_numbers()
|
||||||
|
{
|
||||||
|
phpize_get_api_numbers
|
||||||
|
echo "Configuring for:"
|
||||||
|
+ echo "PHP Version: ${PHP_MAJOR_VERSION}.${PHP_MINOR_VERSION}"
|
||||||
|
echo "PHP Api Version: "$PHP_API_VERSION
|
||||||
|
echo "Zend Module Api No: "$ZEND_MODULE_API_NO
|
||||||
|
echo "Zend Extension Api No: "$ZEND_EXTENSION_API_NO
|
||||||
|
47
php-8.3.0-openssl-ec-param.patch
Normal file
47
php-8.3.0-openssl-ec-param.patch
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
From 21f9d16e130b412b6839494dcf30a2f1d7dcee0f Mon Sep 17 00:00:00 2001
|
||||||
|
From: Remi Collet <remi@remirepo.net>
|
||||||
|
Date: Mon, 24 Jul 2023 10:54:49 +0200
|
||||||
|
Subject: [PATCH] Always warn about missing curve_name
|
||||||
|
|
||||||
|
Both Fedora and RHEL do not support arbitrary EC parameters
|
||||||
|
See https://bugzilla.redhat.com/2223953
|
||||||
|
---
|
||||||
|
ext/openssl/openssl.c | 13 ++-----------
|
||||||
|
1 file changed, 2 insertions(+), 11 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/ext/openssl/openssl.c b/ext/openssl/openssl.c
|
||||||
|
index 33f51bfa4d..340b0467d3 100644
|
||||||
|
--- a/ext/openssl/openssl.c
|
||||||
|
+++ b/ext/openssl/openssl.c
|
||||||
|
@@ -4299,13 +4299,8 @@ static bool php_openssl_pkey_init_legacy_ec(EC_KEY *eckey, zval *data, bool *is_
|
||||||
|
OPENSSL_PKEY_SET_BN(data, b);
|
||||||
|
OPENSSL_PKEY_SET_BN(data, order);
|
||||||
|
|
||||||
|
+ php_error_docref(NULL, E_WARNING, "Missing params: curve_name (params only is not supported by OpenSSL)");
|
||||||
|
if (!(p && a && b && order)) {
|
||||||
|
- if (!p && !a && !b && !order) {
|
||||||
|
- php_error_docref(NULL, E_WARNING, "Missing params: curve_name");
|
||||||
|
- } else {
|
||||||
|
- php_error_docref(
|
||||||
|
- NULL, E_WARNING, "Missing params: curve_name or p, a, b, order");
|
||||||
|
- }
|
||||||
|
goto clean_exit;
|
||||||
|
}
|
||||||
|
|
||||||
|
@@ -4455,12 +4450,8 @@ static EVP_PKEY *php_openssl_pkey_init_ec(zval *data, bool *is_private) {
|
||||||
|
OPENSSL_PKEY_SET_BN(data, b);
|
||||||
|
OPENSSL_PKEY_SET_BN(data, order);
|
||||||
|
|
||||||
|
+ php_error_docref(NULL, E_WARNING, "Missing params: curve_name");
|
||||||
|
if (!(p && a && b && order)) {
|
||||||
|
- if (!p && !a && !b && !order) {
|
||||||
|
- php_error_docref(NULL, E_WARNING, "Missing params: curve_name");
|
||||||
|
- } else {
|
||||||
|
- php_error_docref(NULL, E_WARNING, "Missing params: curve_name or p, a, b, order");
|
||||||
|
- }
|
||||||
|
goto cleanup;
|
||||||
|
}
|
||||||
|
|
||||||
|
--
|
||||||
|
2.41.0
|
||||||
|
|
@ -6,11 +6,11 @@ diff -up ./build/gen_stub.php.syslib ./build/gen_stub.php
|
|||||||
|
|
||||||
$isInitialized = true;
|
$isInitialized = true;
|
||||||
+
|
+
|
||||||
+ if (file_exists('/usr/share/php/PhpParser4/autoload.php')) {
|
+ if (file_exists('/usr/share/php/PhpParser5/autoload.php')) {
|
||||||
+ require_once '/usr/share/php/PhpParser4/autoload.php';
|
+ require_once '/usr/share/php/PhpParser5/autoload.php';
|
||||||
+ return;
|
+ return;
|
||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
$version = "4.15.1";
|
$version = "5.0.0alpha3";
|
||||||
$phpParserDir = __DIR__ . "/PHP-Parser-$version";
|
$phpParserDir = __DIR__ . "/PHP-Parser-$version";
|
||||||
if (!is_dir($phpParserDir)) {
|
if (!is_dir($phpParserDir)) {
|
@ -5,6 +5,7 @@ Add support for use of the system timezone database, rather
|
|||||||
than embedding a copy. Discussed upstream but was not desired.
|
than embedding a copy. Discussed upstream but was not desired.
|
||||||
|
|
||||||
History:
|
History:
|
||||||
|
f24: add internal UTC if tzdata is missing
|
||||||
r23: fix possible buffer overflow
|
r23: fix possible buffer overflow
|
||||||
r22: retrieve tzdata version from /usr/share/zoneinfo/tzdata.zi
|
r22: retrieve tzdata version from /usr/share/zoneinfo/tzdata.zi
|
||||||
r21: adapt for timelib 2021.03 (in 8.1.0)
|
r21: adapt for timelib 2021.03 (in 8.1.0)
|
||||||
@ -34,8 +35,9 @@ r3: fix a crash if /usr/share/zoneinfo doesn't exist (Raphael Geissert)
|
|||||||
r2: add filesystem trawl to set up name alias index
|
r2: add filesystem trawl to set up name alias index
|
||||||
r1: initial revision
|
r1: initial revision
|
||||||
|
|
||||||
|
|
||||||
diff --git a/ext/date/config0.m4 b/ext/date/config0.m4
|
diff --git a/ext/date/config0.m4 b/ext/date/config0.m4
|
||||||
index 18b8106bd2..3d1f63c758 100644
|
index 6b803bf33e..53c3cdb3f4 100644
|
||||||
--- a/ext/date/config0.m4
|
--- a/ext/date/config0.m4
|
||||||
+++ b/ext/date/config0.m4
|
+++ b/ext/date/config0.m4
|
||||||
@@ -4,6 +4,19 @@ AC_CHECK_HEADERS([io.h])
|
@@ -4,6 +4,19 @@ AC_CHECK_HEADERS([io.h])
|
||||||
@ -59,10 +61,10 @@ index 18b8106bd2..3d1f63c758 100644
|
|||||||
timelib_sources="lib/astro.c lib/dow.c lib/parse_date.c lib/parse_tz.c lib/parse_posix.c
|
timelib_sources="lib/astro.c lib/dow.c lib/parse_date.c lib/parse_tz.c lib/parse_posix.c
|
||||||
lib/timelib.c lib/tm2unixtime.c lib/unixtime2tm.c lib/parse_iso_intervals.c lib/interval.c"
|
lib/timelib.c lib/tm2unixtime.c lib/unixtime2tm.c lib/parse_iso_intervals.c lib/interval.c"
|
||||||
diff --git a/ext/date/lib/parse_tz.c b/ext/date/lib/parse_tz.c
|
diff --git a/ext/date/lib/parse_tz.c b/ext/date/lib/parse_tz.c
|
||||||
index e41315efdb..4b6547c0a3 100644
|
index c7f93580d7..ec196a98b6 100644
|
||||||
--- a/ext/date/lib/parse_tz.c
|
--- a/ext/date/lib/parse_tz.c
|
||||||
+++ b/ext/date/lib/parse_tz.c
|
+++ b/ext/date/lib/parse_tz.c
|
||||||
@@ -26,9 +26,22 @@
|
@@ -26,9 +26,33 @@
|
||||||
#include "timelib.h"
|
#include "timelib.h"
|
||||||
#include "timelib_private.h"
|
#include "timelib_private.h"
|
||||||
|
|
||||||
@ -75,6 +77,17 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
+
|
+
|
||||||
+#include "php_scandir.h"
|
+#include "php_scandir.h"
|
||||||
+
|
+
|
||||||
|
+static const unsigned char internal_utc[] = {
|
||||||
|
+ 0x54, 0x5a, 0x69, 0x66, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
+ 0x00, 0x00, 0x55, 0x54, 0x43, 0x00, 0x54, 0x5a, 0x69, 0x66, 0x32, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||||
|
+ 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00,
|
||||||
|
+ 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x55, 0x54, 0x43, 0x00, 0x0a, 0x55, 0x54, 0x43,
|
||||||
|
+ 0x30, 0x0a
|
||||||
|
+};
|
||||||
|
+
|
||||||
+#else
|
+#else
|
||||||
#define TIMELIB_SUPPORTS_V2DATA
|
#define TIMELIB_SUPPORTS_V2DATA
|
||||||
#define TIMELIB_SUPPORT_SLIM_FILE
|
#define TIMELIB_SUPPORT_SLIM_FILE
|
||||||
@ -85,7 +98,7 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
|
|
||||||
#if (defined(__APPLE__) || defined(__APPLE_CC__)) && (defined(__BIG_ENDIAN__) || defined(__LITTLE_ENDIAN__))
|
#if (defined(__APPLE__) || defined(__APPLE_CC__)) && (defined(__BIG_ENDIAN__) || defined(__LITTLE_ENDIAN__))
|
||||||
# if defined(__LITTLE_ENDIAN__)
|
# if defined(__LITTLE_ENDIAN__)
|
||||||
@@ -95,6 +108,11 @@ static int read_php_preamble(const unsigned char **tzf, timelib_tzinfo *tz)
|
@@ -95,6 +119,11 @@ static int read_php_preamble(const unsigned char **tzf, timelib_tzinfo *tz)
|
||||||
{
|
{
|
||||||
uint32_t version;
|
uint32_t version;
|
||||||
|
|
||||||
@ -97,7 +110,7 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
/* read ID */
|
/* read ID */
|
||||||
version = (*tzf)[3] - '0';
|
version = (*tzf)[3] - '0';
|
||||||
*tzf += 4;
|
*tzf += 4;
|
||||||
@@ -577,7 +595,467 @@ void timelib_dump_tzinfo(timelib_tzinfo *tz)
|
@@ -577,7 +606,475 @@ void timelib_dump_tzinfo(timelib_tzinfo *tz)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -441,6 +454,9 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
+
|
+
|
||||||
+ qsort(db_index, index_next, sizeof *db_index, sysdbcmp);
|
+ qsort(db_index, index_next, sizeof *db_index, sysdbcmp);
|
||||||
+
|
+
|
||||||
|
+ if (!index_next) {
|
||||||
|
+ db_index[index_next++].id = strdup("UTC");
|
||||||
|
+ }
|
||||||
+ db->index = db_index;
|
+ db->index = db_index;
|
||||||
+ db->index_size = index_next;
|
+ db->index_size = index_next;
|
||||||
+
|
+
|
||||||
@ -547,7 +563,12 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
+
|
+
|
||||||
+ fd = open(fname, O_RDONLY);
|
+ fd = open(fname, O_RDONLY);
|
||||||
+ if (fd == -1) {
|
+ if (fd == -1) {
|
||||||
|
+ if (strcmp(timezone, "UTC")) {
|
||||||
+ return NULL;
|
+ return NULL;
|
||||||
|
+ } else {
|
||||||
|
+ *length = sizeof(internal_utc);
|
||||||
|
+ return internal_utc;
|
||||||
|
+ }
|
||||||
+ } else if (fstat(fd, &st) != 0 || !is_valid_tzfile(&st, fd)) {
|
+ } else if (fstat(fd, &st) != 0 || !is_valid_tzfile(&st, fd)) {
|
||||||
+ close(fd);
|
+ close(fd);
|
||||||
+ return NULL;
|
+ return NULL;
|
||||||
@ -566,7 +587,7 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
{
|
{
|
||||||
int left = 0, right = tzdb->index_size - 1;
|
int left = 0, right = tzdb->index_size - 1;
|
||||||
|
|
||||||
@@ -603,9 +1081,49 @@ static int seek_to_tz_position(const unsigned char **tzf, const char *timezone,
|
@@ -603,9 +1100,49 @@ static int seek_to_tz_position(const unsigned char **tzf, const char *timezone,
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -600,7 +621,7 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
+ if (timezonedb_system == NULL) {
|
+ if (timezonedb_system == NULL) {
|
||||||
+ timelib_tzdb *tmp = malloc(sizeof *tmp);
|
+ timelib_tzdb *tmp = malloc(sizeof *tmp);
|
||||||
+
|
+
|
||||||
+ tmp->version = "0.system";
|
+ tmp->version = "0";
|
||||||
+ tmp->data = NULL;
|
+ tmp->data = NULL;
|
||||||
+ create_zone_index(tmp);
|
+ create_zone_index(tmp);
|
||||||
+ retrieve_zone_version(tmp);
|
+ retrieve_zone_version(tmp);
|
||||||
@ -616,7 +637,7 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
const timelib_tzdb_index_entry *timelib_timezone_identifiers_list(const timelib_tzdb *tzdb, int *count)
|
const timelib_tzdb_index_entry *timelib_timezone_identifiers_list(const timelib_tzdb *tzdb, int *count)
|
||||||
@@ -617,7 +1135,30 @@ const timelib_tzdb_index_entry *timelib_timezone_identifiers_list(const timelib_
|
@@ -617,7 +1154,32 @@ const timelib_tzdb_index_entry *timelib_timezone_identifiers_list(const timelib_
|
||||||
int timelib_timezone_id_is_valid(const char *timezone, const timelib_tzdb *tzdb)
|
int timelib_timezone_id_is_valid(const char *timezone, const timelib_tzdb *tzdb)
|
||||||
{
|
{
|
||||||
const unsigned char *tzf;
|
const unsigned char *tzf;
|
||||||
@ -630,7 +651,9 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
+ if (timezone[0] == '\0' || strstr(timezone, "..") != NULL) {
|
+ if (timezone[0] == '\0' || strstr(timezone, "..") != NULL) {
|
||||||
+ return 0;
|
+ return 0;
|
||||||
+ }
|
+ }
|
||||||
+
|
+ if (!strcmp(timezone, "UTC")) {
|
||||||
|
+ return 1;
|
||||||
|
+ }
|
||||||
+ if (system_location_table) {
|
+ if (system_location_table) {
|
||||||
+ if (find_zone_info(system_location_table, timezone) != NULL) {
|
+ if (find_zone_info(system_location_table, timezone) != NULL) {
|
||||||
+ /* found in cache */
|
+ /* found in cache */
|
||||||
@ -648,7 +671,7 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
}
|
}
|
||||||
|
|
||||||
static int skip_64bit_preamble(const unsigned char **tzf, timelib_tzinfo *tz)
|
static int skip_64bit_preamble(const unsigned char **tzf, timelib_tzinfo *tz)
|
||||||
@@ -662,6 +1203,8 @@ static timelib_tzinfo* timelib_tzinfo_ctor(const char *name)
|
@@ -662,6 +1224,8 @@ static timelib_tzinfo* timelib_tzinfo_ctor(const char *name)
|
||||||
timelib_tzinfo *timelib_parse_tzfile(const char *timezone, const timelib_tzdb *tzdb, int *error_code)
|
timelib_tzinfo *timelib_parse_tzfile(const char *timezone, const timelib_tzdb *tzdb, int *error_code)
|
||||||
{
|
{
|
||||||
const unsigned char *tzf;
|
const unsigned char *tzf;
|
||||||
@ -657,7 +680,7 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
timelib_tzinfo *tmp;
|
timelib_tzinfo *tmp;
|
||||||
int version;
|
int version;
|
||||||
int transitions_result, types_result;
|
int transitions_result, types_result;
|
||||||
@@ -669,7 +1212,7 @@ timelib_tzinfo *timelib_parse_tzfile(const char *timezone, const timelib_tzdb *t
|
@@ -669,7 +1233,7 @@ timelib_tzinfo *timelib_parse_tzfile(const char *timezone, const timelib_tzdb *t
|
||||||
|
|
||||||
*error_code = TIMELIB_ERROR_NO_ERROR;
|
*error_code = TIMELIB_ERROR_NO_ERROR;
|
||||||
|
|
||||||
@ -666,7 +689,7 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
tmp = timelib_tzinfo_ctor(timezone);
|
tmp = timelib_tzinfo_ctor(timezone);
|
||||||
|
|
||||||
version = read_preamble(&tzf, tmp, &type);
|
version = read_preamble(&tzf, tmp, &type);
|
||||||
@@ -712,11 +1255,36 @@ timelib_tzinfo *timelib_parse_tzfile(const char *timezone, const timelib_tzdb *t
|
@@ -712,11 +1276,38 @@ timelib_tzinfo *timelib_parse_tzfile(const char *timezone, const timelib_tzdb *t
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -689,7 +712,9 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
+ }
|
+ }
|
||||||
+
|
+
|
||||||
+ /* Now done with the mmap segment - discard it. */
|
+ /* Now done with the mmap segment - discard it. */
|
||||||
|
+ if (memmap != internal_utc) {
|
||||||
+ munmap(memmap, maplen);
|
+ munmap(memmap, maplen);
|
||||||
|
+ }
|
||||||
+ } else {
|
+ } else {
|
||||||
+#endif
|
+#endif
|
||||||
if (type == TIMELIB_TZINFO_PHP) {
|
if (type == TIMELIB_TZINFO_PHP) {
|
||||||
@ -704,10 +729,10 @@ index e41315efdb..4b6547c0a3 100644
|
|||||||
*error_code = TIMELIB_ERROR_NO_SUCH_TIMEZONE;
|
*error_code = TIMELIB_ERROR_NO_SUCH_TIMEZONE;
|
||||||
tmp = NULL;
|
tmp = NULL;
|
||||||
diff --git a/ext/date/php_date.c b/ext/date/php_date.c
|
diff --git a/ext/date/php_date.c b/ext/date/php_date.c
|
||||||
index cf4a11b8a2..cd49abc78d 100644
|
index 48c82bf7ec..443299c089 100644
|
||||||
--- a/ext/date/php_date.c
|
--- a/ext/date/php_date.c
|
||||||
+++ b/ext/date/php_date.c
|
+++ b/ext/date/php_date.c
|
||||||
@@ -457,7 +457,11 @@ PHP_MINFO_FUNCTION(date)
|
@@ -490,7 +490,11 @@ PHP_MINFO_FUNCTION(date)
|
||||||
php_info_print_table_row(2, "date/time support", "enabled");
|
php_info_print_table_row(2, "date/time support", "enabled");
|
||||||
php_info_print_table_row(2, "timelib version", TIMELIB_ASCII_VERSION);
|
php_info_print_table_row(2, "timelib version", TIMELIB_ASCII_VERSION);
|
||||||
php_info_print_table_row(2, "\"Olson\" Timezone Database Version", tzdb->version);
|
php_info_print_table_row(2, "\"Olson\" Timezone Database Version", tzdb->version);
|
10
php.ini
10
php.ini
@ -144,6 +144,11 @@
|
|||||||
; Development Value: 5
|
; Development Value: 5
|
||||||
; Production Value: 5
|
; Production Value: 5
|
||||||
|
|
||||||
|
; session.sid_length
|
||||||
|
; Default Value: 32
|
||||||
|
; Development Value: 26
|
||||||
|
; Production Value: 26
|
||||||
|
|
||||||
; short_open_tag
|
; short_open_tag
|
||||||
; Default Value: On
|
; Default Value: On
|
||||||
; Development Value: Off
|
; Development Value: Off
|
||||||
@ -154,6 +159,11 @@
|
|||||||
; Development Value: "GPCS"
|
; Development Value: "GPCS"
|
||||||
; Production Value: "GPCS"
|
; Production Value: "GPCS"
|
||||||
|
|
||||||
|
; zend.assertions
|
||||||
|
; Default Value: 1
|
||||||
|
; Development Value: 1
|
||||||
|
; Production Value: -1
|
||||||
|
|
||||||
; zend.exception_ignore_args
|
; zend.exception_ignore_args
|
||||||
; Default Value: Off
|
; Default Value: Off
|
||||||
; Development Value: Off
|
; Development Value: Off
|
||||||
|
44
php.spec
44
php.spec
@ -7,8 +7,8 @@
|
|||||||
#
|
#
|
||||||
|
|
||||||
# API/ABI check
|
# API/ABI check
|
||||||
%global apiver 20220829
|
%global apiver 20230831
|
||||||
%global zendver 20220829
|
%global zendver 20230831
|
||||||
%global pdover 20170320
|
%global pdover 20170320
|
||||||
|
|
||||||
# we don't want -z defs linker flag
|
# we don't want -z defs linker flag
|
||||||
@ -18,7 +18,7 @@
|
|||||||
%global _hardened_build 1
|
%global _hardened_build 1
|
||||||
|
|
||||||
# version used for php embedded library soname
|
# version used for php embedded library soname
|
||||||
%global embed_version 8.2
|
%global embed_version 8.3
|
||||||
|
|
||||||
%global mysql_sock %(mysql_config --socket 2>/dev/null || echo /var/lib/mysql/mysql.sock)
|
%global mysql_sock %(mysql_config --socket 2>/dev/null || echo /var/lib/mysql/mysql.sock)
|
||||||
|
|
||||||
@ -64,8 +64,8 @@
|
|||||||
%bcond_with imap
|
%bcond_with imap
|
||||||
%bcond_without lmdb
|
%bcond_without lmdb
|
||||||
|
|
||||||
%global upver 8.2.11
|
%global upver 8.3.0
|
||||||
#global rcver RC1
|
%global rcver RC3
|
||||||
|
|
||||||
Summary: PHP scripting language for creating dynamic web sites
|
Summary: PHP scripting language for creating dynamic web sites
|
||||||
Name: php
|
Name: php
|
||||||
@ -109,16 +109,20 @@ Patch8: php-8.1.0-libdb.patch
|
|||||||
|
|
||||||
# Functional changes
|
# Functional changes
|
||||||
# Use system nikic/php-parser
|
# Use system nikic/php-parser
|
||||||
Patch41: php-8.2.0-parser.patch
|
Patch41: php-8.3.0-parser.patch
|
||||||
# use system tzdata
|
# use system tzdata
|
||||||
Patch42: php-8.1.0-systzdata-v23.patch
|
Patch42: php-8.3.0-systzdata-v24.patch
|
||||||
# See http://bugs.php.net/53436
|
# See http://bugs.php.net/53436
|
||||||
|
# + display PHP version backported from 8.4
|
||||||
Patch43: php-7.4.0-phpize.patch
|
Patch43: php-7.4.0-phpize.patch
|
||||||
# Use -lldap_r for OpenLDAP
|
# Use -lldap_r for OpenLDAP
|
||||||
Patch45: php-7.4.0-ldap_r.patch
|
Patch45: php-7.4.0-ldap_r.patch
|
||||||
# drop "Configure command" from phpinfo output
|
# drop "Configure command" from phpinfo output
|
||||||
# and only use gcc (instead of full version)
|
# and only use gcc (instead of full version)
|
||||||
Patch47: php-8.1.0-phpinfo.patch
|
Patch47: php-8.1.0-phpinfo.patch
|
||||||
|
# Always warn about missing curve_name
|
||||||
|
# Both Fedora and RHEL do not support arbitrary EC parameters
|
||||||
|
Patch48: php-8.3.0-openssl-ec-param.patch
|
||||||
|
|
||||||
# Upstream fixes (100+)
|
# Upstream fixes (100+)
|
||||||
|
|
||||||
@ -260,7 +264,7 @@ Summary: Common files for PHP
|
|||||||
# fileinfo is licensed under PHP version 3.0
|
# fileinfo is licensed under PHP version 3.0
|
||||||
# regex, libmagic are licensed under BSD
|
# regex, libmagic are licensed under BSD
|
||||||
License: PHP-3.01 AND BSD-2-Clause
|
License: PHP-3.01 AND BSD-2-Clause
|
||||||
Requires: tzdata
|
Recommends: tzdata
|
||||||
# ABI/API check - Arch specific
|
# ABI/API check - Arch specific
|
||||||
Provides: php(api) = %{apiver}-%{__isa_bits}
|
Provides: php(api) = %{apiver}-%{__isa_bits}
|
||||||
Provides: php(zend-abi) = %{zendver}-%{__isa_bits}
|
Provides: php(zend-abi) = %{zendver}-%{__isa_bits}
|
||||||
@ -275,7 +279,7 @@ Provides: php-date, php-date%{?_isa}
|
|||||||
Provides: bundled(timelib)
|
Provides: bundled(timelib)
|
||||||
Provides: php-exif, php-exif%{?_isa}
|
Provides: php-exif, php-exif%{?_isa}
|
||||||
Provides: php-fileinfo, php-fileinfo%{?_isa}
|
Provides: php-fileinfo, php-fileinfo%{?_isa}
|
||||||
Provides: bundled(libmagic) = 5.29
|
Provides: bundled(libmagic) = 5.43
|
||||||
Provides: php-filter, php-filter%{?_isa}
|
Provides: php-filter, php-filter%{?_isa}
|
||||||
Provides: php-ftp, php-ftp%{?_isa}
|
Provides: php-ftp, php-ftp%{?_isa}
|
||||||
Provides: php-gettext, php-gettext%{?_isa}
|
Provides: php-gettext, php-gettext%{?_isa}
|
||||||
@ -321,7 +325,7 @@ Requires: zlib-devel%{?_isa}
|
|||||||
Provides: php-zts-devel = %{version}-%{release}
|
Provides: php-zts-devel = %{version}-%{release}
|
||||||
Provides: php-zts-devel%{?_isa} = %{version}-%{release}
|
Provides: php-zts-devel%{?_isa} = %{version}-%{release}
|
||||||
%endif
|
%endif
|
||||||
Recommends: php-nikic-php-parser4 >= 4.15.1
|
Recommends: php-nikic-php-parser5 >= 5.0.0~alpha3
|
||||||
|
|
||||||
|
|
||||||
%description devel
|
%description devel
|
||||||
@ -332,6 +336,7 @@ need to install this package.
|
|||||||
%package opcache
|
%package opcache
|
||||||
Summary: The Zend OPcache
|
Summary: The Zend OPcache
|
||||||
License: PHP-3.01
|
License: PHP-3.01
|
||||||
|
BuildRequires: pkgconfig(capstone) >= 3.0
|
||||||
Requires: php-common%{?_isa} = %{version}-%{release}
|
Requires: php-common%{?_isa} = %{version}-%{release}
|
||||||
Provides: php-pecl-zendopcache = %{version}
|
Provides: php-pecl-zendopcache = %{version}
|
||||||
Provides: php-pecl-zendopcache%{?_isa} = %{version}
|
Provides: php-pecl-zendopcache%{?_isa} = %{version}
|
||||||
@ -719,6 +724,7 @@ in pure PHP.
|
|||||||
%patch -P43 -p1 -b .headers
|
%patch -P43 -p1 -b .headers
|
||||||
%patch -P45 -p1 -b .ldap_r
|
%patch -P45 -p1 -b .ldap_r
|
||||||
%patch -P47 -p1 -b .phpinfo
|
%patch -P47 -p1 -b .phpinfo
|
||||||
|
%patch -P48 -p1 -b .ec-param
|
||||||
|
|
||||||
# upstream patches
|
# upstream patches
|
||||||
|
|
||||||
@ -734,7 +740,7 @@ cp TSRM/LICENSE TSRM_LICENSE
|
|||||||
cp Zend/asm/LICENSE BOOST_LICENSE
|
cp Zend/asm/LICENSE BOOST_LICENSE
|
||||||
cp sapi/fpm/LICENSE fpm_LICENSE
|
cp sapi/fpm/LICENSE fpm_LICENSE
|
||||||
cp ext/mbstring/libmbfl/LICENSE libmbfl_LICENSE
|
cp ext/mbstring/libmbfl/LICENSE libmbfl_LICENSE
|
||||||
cp ext/fileinfo/libmagic/LICENSE libmagic_LICENSE
|
# cp ext/fileinfo/libmagic/LICENSE libmagic_LICENSE
|
||||||
cp ext/bcmath/libbcmath/LICENSE libbcmath_LICENSE
|
cp ext/bcmath/libbcmath/LICENSE libbcmath_LICENSE
|
||||||
cp ext/date/lib/LICENSE.rst timelib_LICENSE
|
cp ext/date/lib/LICENSE.rst timelib_LICENSE
|
||||||
|
|
||||||
@ -760,6 +766,9 @@ rm Zend/tests/bug54268.phpt
|
|||||||
rm Zend/tests/bug68412.phpt
|
rm Zend/tests/bug68412.phpt
|
||||||
# tar issue
|
# tar issue
|
||||||
rm ext/zlib/tests/004-mb.phpt
|
rm ext/zlib/tests/004-mb.phpt
|
||||||
|
# Both Fedora and RHEL do not support arbitrary EC parameters
|
||||||
|
# https://bugzilla.redhat.com/2223953
|
||||||
|
rm ext/openssl/tests/ecc_custom_params.phpt
|
||||||
|
|
||||||
# Safety check for API version change.
|
# Safety check for API version change.
|
||||||
pver=$(sed -n '/#define PHP_VERSION /{s/.* "//;s/".*$//;p}' main/php_version.h)
|
pver=$(sed -n '/#define PHP_VERSION /{s/.* "//;s/".*$//;p}' main/php_version.h)
|
||||||
@ -905,6 +914,7 @@ pushd build-cgi
|
|||||||
build --libdir=%{_libdir}/php \
|
build --libdir=%{_libdir}/php \
|
||||||
--enable-pcntl \
|
--enable-pcntl \
|
||||||
--enable-opcache \
|
--enable-opcache \
|
||||||
|
--with-capstone \
|
||||||
--enable-phpdbg \
|
--enable-phpdbg \
|
||||||
%if %{with imap}
|
%if %{with imap}
|
||||||
--with-imap=shared --with-imap-ssl \
|
--with-imap=shared --with-imap-ssl \
|
||||||
@ -1043,6 +1053,7 @@ build --includedir=%{_includedir}/php-zts \
|
|||||||
--with-config-file-scan-dir=%{_sysconfdir}/php-zts.d \
|
--with-config-file-scan-dir=%{_sysconfdir}/php-zts.d \
|
||||||
--enable-pcntl \
|
--enable-pcntl \
|
||||||
--enable-opcache \
|
--enable-opcache \
|
||||||
|
--with-capstone \
|
||||||
%if %{with imap}
|
%if %{with imap}
|
||||||
--with-imap=shared --with-imap-ssl \
|
--with-imap=shared --with-imap-ssl \
|
||||||
%endif
|
%endif
|
||||||
@ -1142,7 +1153,7 @@ export NO_INTERACTION=1 REPORT_EXIT_STATUS=1 MALLOC_CHECK_=2
|
|||||||
export SKIP_ONLINE_TESTS=1
|
export SKIP_ONLINE_TESTS=1
|
||||||
export SKIP_IO_CAPTURE_TESTS=1
|
export SKIP_IO_CAPTURE_TESTS=1
|
||||||
unset TZ LANG LC_ALL
|
unset TZ LANG LC_ALL
|
||||||
if ! make test TESTS=-j4; then
|
if ! make test TESTS=%{?_smp_mflags}; then
|
||||||
set +x
|
set +x
|
||||||
for f in $(find .. -name \*.diff -type f -print); do
|
for f in $(find .. -name \*.diff -type f -print); do
|
||||||
if ! grep -q XFAIL "${f/.diff/.phpt}"
|
if ! grep -q XFAIL "${f/.diff/.phpt}"
|
||||||
@ -1406,7 +1417,7 @@ systemctl try-restart php-fpm.service >/dev/null 2>&1 || :
|
|||||||
%files common -f files.common
|
%files common -f files.common
|
||||||
%doc EXTENSIONS NEWS UPGRADING* README.REDIST.BINS *md docs
|
%doc EXTENSIONS NEWS UPGRADING* README.REDIST.BINS *md docs
|
||||||
%license LICENSE TSRM_LICENSE ZEND_LICENSE BOOST_LICENSE
|
%license LICENSE TSRM_LICENSE ZEND_LICENSE BOOST_LICENSE
|
||||||
%license libmagic_LICENSE
|
#license libmagic_LICENSE
|
||||||
%license timelib_LICENSE
|
%license timelib_LICENSE
|
||||||
%doc php.ini-*
|
%doc php.ini-*
|
||||||
%config(noreplace) %{_sysconfdir}/php.ini
|
%config(noreplace) %{_sysconfdir}/php.ini
|
||||||
@ -1541,6 +1552,13 @@ systemctl try-restart php-fpm.service >/dev/null 2>&1 || :
|
|||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Tue Sep 26 2023 Remi Collet <remi@remirepo.net> - 8.3.0~rc3-1
|
||||||
|
- update to 8.3.0RC3 https://fedoraproject.org/wiki/Changes/php83
|
||||||
|
- add internal UTC if tzdata is missing
|
||||||
|
- bump to final API/ABI
|
||||||
|
- switch to nikic/php-parser version 5
|
||||||
|
- openssl: always warn about missing curve_name
|
||||||
|
|
||||||
* Tue Sep 26 2023 Remi Collet <remi@remirepo.net> - 8.2.11-1
|
* Tue Sep 26 2023 Remi Collet <remi@remirepo.net> - 8.2.11-1
|
||||||
- Update to 8.2.11 - http://www.php.net/releases/8_2_11.php
|
- Update to 8.2.11 - http://www.php.net/releases/8_2_11.php
|
||||||
|
|
||||||
|
4
sources
4
sources
@ -1,2 +1,2 @@
|
|||||||
SHA512 (php-8.2.11.tar.xz) = 3c8db245854c0221a952e0f11fc8fbf8944caf73ae0049a710db0db5ce9c018207444dc8a60e2b3c63a6d025c5d09cd17b0542e1b7df8ad2e49635ef5faf7f45
|
SHA512 (php-8.3.0RC3.tar.xz) = e889fc4fd8b1b76c5e81ce198bc851880d06530f2cf6c8493876f98b596383321967c81c6034c6920815aa9be98917fa1aef81c6e120fae78875a85c7c793608
|
||||||
SHA512 (php-8.2.11.tar.xz.asc) = d4d1b633d9cac1eec6fe0057a12a1337d1db9fbf752cc54187af6272faba707f5f32bb8cf83f00c52af4812d7f5905d0ffa6d970bc2c26845fab0cb0d7a4c18f
|
SHA512 (php-8.3.0RC3.tar.xz.asc) = 725c75bf67645b2f04d8e2e056b949c288d0adfb89c355d5e988b214ee9e7fc613dfad1849fee4b1bad4c54afb0834df5479fb71505de4b974f4131843eaf93a
|
||||||
|
Loading…
Reference in New Issue
Block a user