git: 91fd937f88ca - main - lang/php80: Upgrade from 8.0.12 to 8.0.13

From: Torsten Zuehlsdorff <tz_at_FreeBSD.org>
Date: Sat, 20 Nov 2021 19:31:50 UTC
The branch main has been updated by tz:

URL: https://cgit.FreeBSD.org/ports/commit/?id=91fd937f88cae37d468aa1973dd88232c2fb498c

commit 91fd937f88cae37d468aa1973dd88232c2fb498c
Author:     Torsten Zuehlsdorff <tz@FreeBSD.org>
AuthorDate: 2021-11-20 19:29:48 +0000
Commit:     Torsten Zuehlsdorff <tz@FreeBSD.org>
CommitDate: 2021-11-20 19:31:39 +0000

    lang/php80: Upgrade from 8.0.12 to 8.0.13
    
        Core:
            Fixed bug #81518 (Header injection via default_mimetype / default_charset).
        Date:
            Fixed bug #81500 (Interval serialization regression since 7.3.14 / 7.4.2).
        DBA:
            Fixed bug #81588 (TokyoCabinet driver leaks memory).
        MBString:
            Fixed bug #76167 (mbstring may use pointer from some previous request).
        Opcache:
            Fixed bug #81512 (Unexpected behavior with arrays and JIT).
        PCRE:
            Fixed bug #81424 (PCRE2 10.35 JIT performance regression).
        XML:
            Fixed bug #79971 (special character is breaking the path in xml function). (CVE-2021-21707)
        XMLReader:
            Fixed bug #81521 (XMLReader::getParserProperty may throw with a valid property).
    
    Also include a patch to fix issue 259725:
    dns_get_record fails when requested record doesn't exist
    
    PR:             259725
    Reported by:    fsbruva@yahoo.com
    Sponsored by:   Bounce Experts
---
 devel/php80-intl/Makefile                      |  1 -
 devel/php80-intl/files/patch-icu70             | 38 --------------------------
 lang/php80/Makefile                            |  2 +-
 lang/php80/distinfo                            |  6 ++--
 lang/php80/files/patch-ext_standard_dns.c      | 21 ++++++++++++++
 lang/php80/files/patch-ext_standard_php__dns.h | 24 ++++++++++++++++
 6 files changed, 49 insertions(+), 43 deletions(-)

diff --git a/devel/php80-intl/Makefile b/devel/php80-intl/Makefile
index 87b89e7b2c6d..0583fc5566ea 100644
--- a/devel/php80-intl/Makefile
+++ b/devel/php80-intl/Makefile
@@ -1,4 +1,3 @@
-PORTREVISION=	1
 CATEGORIES=	devel
 
 MASTERDIR=	${.CURDIR}/../../lang/php80
diff --git a/devel/php80-intl/files/patch-icu70 b/devel/php80-intl/files/patch-icu70
deleted file mode 100644
index d9b8932f356b..000000000000
--- a/devel/php80-intl/files/patch-icu70
+++ /dev/null
@@ -1,38 +0,0 @@
-Regressed by https://github.com/unicode-org/icu/commit/633438f8da99
-
-In file included from breakiterator/breakiterator_class.cpp:21:
-breakiterator/codepointiterator_internal.h:40:17: error: virtual function 'operator==' has a different return type ('UBool' (aka 'signed char')) than the function it overrides (which has return type 'bool')
-                virtual UBool operator==(const BreakIterator& that) const;
-                        ~~~~~ ^
-/usr/local/include/unicode/brkiter.h:127:18: note: overridden virtual function is here
-    virtual bool operator==(const BreakIterator&) const = 0;
-            ~~~~ ^
-
---- breakiterator/codepointiterator_internal.cpp.orig	2021-09-21 17:07:44 UTC
-+++ breakiterator/codepointiterator_internal.cpp
-@@ -73,7 +73,11 @@ CodePointBreakIterator::~CodePointBreakIterator()
- 	clearCurrentCharIter();
- }
- 
-+#if U_ICU_VERSION_MAJOR_NUM < 70
- UBool CodePointBreakIterator::operator==(const BreakIterator& that) const
-+#else
-+bool CodePointBreakIterator::operator==(const BreakIterator& that) const
-+#endif
- {
- 	if (typeid(*this) != typeid(that)) {
- 		return false;
---- breakiterator/codepointiterator_internal.h.orig	2021-09-21 17:07:44 UTC
-+++ breakiterator/codepointiterator_internal.h
-@@ -37,7 +37,11 @@ namespace PHP {
- 
- 		virtual ~CodePointBreakIterator();
- 
-+#if U_ICU_VERSION_MAJOR_NUM < 70
- 		virtual UBool operator==(const BreakIterator& that) const;
-+#else
-+		virtual bool operator==(const BreakIterator& that) const;
-+#endif
- 
- 		virtual CodePointBreakIterator* clone(void) const;
- 
diff --git a/lang/php80/Makefile b/lang/php80/Makefile
index 7e9acf6c4607..b76f80480659 100644
--- a/lang/php80/Makefile
+++ b/lang/php80/Makefile
@@ -1,5 +1,5 @@
 PORTNAME=	php80
-DISTVERSION=	8.0.12
+DISTVERSION=	8.0.13
 PORTREVISION?=	0
 CATEGORIES?=	lang devel www
 MASTER_SITES=	PHP/distributions
diff --git a/lang/php80/distinfo b/lang/php80/distinfo
index 297a4ce4290b..8754c07f4489 100644
--- a/lang/php80/distinfo
+++ b/lang/php80/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1635020227
-SHA256 (php-8.0.12.tar.xz) = a501017b3b0fd3023223ea25d98e87369b782f8a82310c4033d7ea6a989fea0a
-SIZE (php-8.0.12.tar.xz) = 10713980
+TIMESTAMP = 1637349092
+SHA256 (php-8.0.13.tar.xz) = cd976805ec2e9198417651027dfe16854ba2c2c388151ab9d4d268513d52ed52
+SIZE (php-8.0.13.tar.xz) = 10854284
diff --git a/lang/php80/files/patch-ext_standard_dns.c b/lang/php80/files/patch-ext_standard_dns.c
new file mode 100644
index 000000000000..58acda6824e1
--- /dev/null
+++ b/lang/php80/files/patch-ext_standard_dns.c
@@ -0,0 +1,21 @@
+--- ext/standard/dns.c.orig	2021-10-19 10:34:32 UTC
++++ ext/standard/dns.c
+@@ -798,6 +798,7 @@ PHP_FUNCTION(dns_get_record)
+ 	zend_long type_param = PHP_DNS_ANY;
+ 	zval *authns = NULL, *addtl = NULL;
+ 	int type_to_fetch;
++	int dns_errno;
+ #if defined(HAVE_DNS_SEARCH)
+ 	struct sockaddr_storage from;
+ 	uint32_t fromsize = sizeof(from);
+@@ -946,8 +947,9 @@ PHP_FUNCTION(dns_get_record)
+ 			n = php_dns_search(handle, hostname, C_IN, type_to_fetch, answer.qb2, sizeof answer);
+ 
+ 			if (n < 0) {
++				dns_errno = php_dns_errno(handle);
+ 				php_dns_free_handle(handle);
+-				switch (h_errno) {
++				switch (dns_errno) {
+ 					case NO_DATA:
+ 					case HOST_NOT_FOUND:
+ 						continue;
diff --git a/lang/php80/files/patch-ext_standard_php__dns.h b/lang/php80/files/patch-ext_standard_php__dns.h
new file mode 100644
index 000000000000..11ebd188624e
--- /dev/null
+++ b/lang/php80/files/patch-ext_standard_php__dns.h
@@ -0,0 +1,24 @@
+--- ext/standard/php_dns.h.orig	2021-10-19 10:34:32 UTC
++++ ext/standard/php_dns.h
+@@ -24,6 +24,7 @@
+     	((int)dns_search(res, dname, class, type, (char *) answer, anslen, (struct sockaddr *)&from, &fromsize))
+ #define php_dns_free_handle(res) \
+ 		dns_free(res)
++#define php_dns_errno(handle) h_errno
+ 
+ #elif defined(HAVE_RES_NSEARCH)
+ #define php_dns_search(res, dname, class, type, answer, anslen) \
+@@ -37,11 +38,13 @@
+ 			res_nclose(res); \
+ 			php_dns_free_res(res)
+ #endif
++#define php_dns_errno(handle) handle->res_h_errno
+ 
+ #elif defined(HAVE_RES_SEARCH)
+ #define php_dns_search(res, dname, class, type, answer, anslen) \
+ 			res_search(dname, class, type, answer, anslen)
+ #define php_dns_free_handle(res) /* noop */
++#define php_dns_errno(handle) h_errno
+ 
+ #endif
+