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

(cherry picked from commit 91fd937f88)
This commit is contained in:
Torsten Zuehlsdorff 2021-11-20 20:29:48 +01:00
parent d2b83425d5
commit 4c9d8131c3
4 changed files with 49 additions and 4 deletions

View file

@ -1,5 +1,5 @@
PORTNAME= php80
DISTVERSION= 8.0.12
DISTVERSION= 8.0.13
PORTREVISION?= 0
CATEGORIES?= lang devel www
MASTER_SITES= PHP/distributions

View file

@ -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

View file

@ -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;

View file

@ -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