pkgsrc-Changes-HG archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
[pkgsrc/pkgsrc-2018Q2]: pkgsrc/lang Pullup ticket #5799 - requested by taca
details: https://anonhg.NetBSD.org/pkgsrc/rev/ba943aef6b41
branches: pkgsrc-2018Q2
changeset: 408418:ba943aef6b41
user: bsiegert <bsiegert%pkgsrc.org@localhost>
date: Fri Aug 17 17:37:21 2018 +0000
description:
Pullup ticket #5799 - requested by taca
lang/php70: security fix
Revisions pulled up:
- lang/php/phpversion.mk 1.224
- lang/php70/Makefile 1.11-1.12
- lang/php70/Makefile.php 1.8-1.9
- lang/php70/distinfo 1.46-1.47
- lang/php70/patches/patch-disable-filter-url 1.1
---
Module Name: pkgsrc
Committed By: maya
Date: Mon Jul 16 10:58:50 UTC 2018
Modified Files:
pkgsrc/lang/php70: Makefile Makefile.php
pkgsrc/lang/php71: Makefile Makefile.php
pkgsrc/lang/php72: Makefile Makefile.php
Log Message:
php*: disable global regs on i386.
Fixes PR pkg/53222 that resurfaced
Remove the previous workaround to add GCC_REQD, which isn't sufficient
any more, possibly due to enabling ssp/fortify?
XXX bumping PKGREVISION might not be sufficient, for the same reason the
GCC_REQD had to be moved to Makefile.php, it affects modules too.
---
Module Name: pkgsrc
Committed By: manu
Date: Wed Jul 18 07:33:12 UTC 2018
Modified Files:
pkgsrc/lang/php56: Makefile.php distinfo
pkgsrc/lang/php70: Makefile.php distinfo
pkgsrc/lang/php71: Makefile.php distinfo
pkgsrc/lang/php72: Makefile.php distinfo
Added Files:
pkgsrc/lang/php56/patches: patch-disable-filter-url
pkgsrc/lang/php70/patches: patch-disable-filter-url
pkgsrc/lang/php71/patches: patch-disable-filter-url
pkgsrc/lang/php72/patches: patch-disable-filter-url
Log Message:
Add pkgsrc build option disable-filter-url to disable php://filter URL
php://filter URL is a feature documented here:
http://php.net/manual/en/wrappers.php.php
Unfortunately, it allows remote control of include() behavior
beyond what many developpers expected, enabling easy dump of
PHP source files. The administrator may want to disable the
feature for security sake, and this option makes that possible.
---
Module Name: pkgsrc
Committed By: taca
Date: Fri Jul 20 13:27:28 UTC 2018
Modified Files:
pkgsrc/lang/php: phpversion.mk
pkgsrc/lang/php70: Makefile distinfo
Log Message:
lang/php70: update to 7.0.31
19 Jul 2018 PHP 7.0.31
- Exif:
. Fixed bug #76423 (Int Overflow lead to Heap OverFlow in
exif_thumbnail_extract of exif.c). (Stas)
. Fixed bug #76557 (heap-buffer-overflow (READ of size 48) while reading exif
data). (Stas)
- Win32:
. Fixed bug #76459 (windows linkinfo lacks openbasedir check). (Anatol)
diffstat:
lang/php/phpversion.mk | 4 +-
lang/php70/Makefile | 8 +++++-
lang/php70/Makefile.php | 13 +++++-----
lang/php70/distinfo | 11 +++++----
lang/php70/patches/patch-disable-filter-url | 34 +++++++++++++++++++++++++++++
5 files changed, 55 insertions(+), 15 deletions(-)
diffs (136 lines):
diff -r e956be5b879f -r ba943aef6b41 lang/php/phpversion.mk
--- a/lang/php/phpversion.mk Fri Aug 17 16:08:38 2018 +0000
+++ b/lang/php/phpversion.mk Fri Aug 17 17:37:21 2018 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: phpversion.mk,v 1.221.2.2 2018/08/17 16:08:38 bsiegert Exp $
+# $NetBSD: phpversion.mk,v 1.221.2.3 2018/08/17 17:37:21 bsiegert Exp $
#
# This file selects a PHP version, based on the user's preferences and
# the installed packages. It does not add a dependency on the PHP
@@ -88,7 +88,7 @@
# Define each PHP's version.
PHP56_VERSION= 5.6.36
-PHP70_VERSION= 7.0.30
+PHP70_VERSION= 7.0.31
PHP71_VERSION= 7.1.20
PHP72_VERSION= 7.2.8
diff -r e956be5b879f -r ba943aef6b41 lang/php70/Makefile
--- a/lang/php70/Makefile Fri Aug 17 16:08:38 2018 +0000
+++ b/lang/php70/Makefile Fri Aug 17 17:37:21 2018 +0000
@@ -1,4 +1,4 @@
-# $NetBSD: Makefile,v 1.10 2017/10/27 08:46:49 taca Exp $
+# $NetBSD: Makefile,v 1.10.6.1 2018/08/17 17:37:22 bsiegert Exp $
#
# We can't omit PKGNAME here to handle PKG_OPTIONS.
@@ -48,6 +48,12 @@
CONFIGURE_ARGS+= --without-pcre-jit
.endif
+.if ${MACHINE_ARCH} == "i386"
+# segfaults when buidling with many compilers
+# https://bugs.php.net/bug.php?id=74527
+CONFIGURE_ARGS+= --disable-gcc-global-regs
+.endif
+
# Make sure modules can link correctly
.if ${OPSYS} == "Darwin"
INSTALL_UNSTRIPPED= yes
diff -r e956be5b879f -r ba943aef6b41 lang/php70/Makefile.php
--- a/lang/php70/Makefile.php Fri Aug 17 16:08:38 2018 +0000
+++ b/lang/php70/Makefile.php Fri Aug 17 17:37:21 2018 +0000
@@ -1,13 +1,8 @@
-# $NetBSD: Makefile.php,v 1.7 2017/08/04 23:07:28 taca Exp $
+# $NetBSD: Makefile.php,v 1.7.10.1 2018/08/17 17:37:22 bsiegert Exp $
# used by lang/php70/Makefile
# used by www/ap-php/Makefile
# used by www/php-fpm/Makefile
-# PHP bug #74526 - segfaults on build with GCC 4.8.5 i386
-.if ${MACHINE_ARCH} == "i386"
-GCC_REQD+= 4.9
-.endif
-
.include "../../lang/php70/Makefile.common"
DISTINFO_FILE= ${.CURDIR}/../../lang/php70/distinfo
@@ -45,7 +40,7 @@
.include "../../textproc/libxml2/buildlink3.mk"
PKG_OPTIONS_VAR= PKG_OPTIONS.${PHP_PKG_PREFIX}
-PKG_SUPPORTED_OPTIONS+= inet6 ssl maintainer-zts readline
+PKG_SUPPORTED_OPTIONS+= inet6 ssl maintainer-zts readline disable-filter-url
PKG_SUGGESTED_OPTIONS+= inet6 ssl readline
.if ${OPSYS} == "SunOS" || ${OPSYS} == "Darwin" || ${OPSYS} == "FreeBSD"
@@ -92,5 +87,9 @@
INSTALL_MAKE_FLAGS+= -r
.endif
+.if !empty(PKG_OPTIONS:Mdisable-filter-url)
+CFLAGS+= -DDISABLE_FILTER_URL
+.endif
+
DL_AUTO_VARS= yes
.include "../../mk/dlopen.buildlink3.mk"
diff -r e956be5b879f -r ba943aef6b41 lang/php70/distinfo
--- a/lang/php70/distinfo Fri Aug 17 16:08:38 2018 +0000
+++ b/lang/php70/distinfo Fri Aug 17 17:37:21 2018 +0000
@@ -1,11 +1,12 @@
-$NetBSD: distinfo,v 1.45 2018/04/26 15:46:57 taca Exp $
+$NetBSD: distinfo,v 1.45.2.1 2018/08/17 17:37:22 bsiegert Exp $
-SHA1 (php-7.0.30.tar.bz2) = 774d76578f06e4acc035ed65692f7750f7d9c9b1
-RMD160 (php-7.0.30.tar.bz2) = f3bf11cfb9d02988d1458d9b30a223af3191e970
-SHA512 (php-7.0.30.tar.bz2) = 37b39b3163ad5c5f7d42e22bb5fe9d8708a0559add4f29624c4640c11ef0cbcdfe010cbf69032b741099c9d4f87c9878c19c1d2f3f98817271686aa177956002
-Size (php-7.0.30.tar.bz2) = 14641553 bytes
+SHA1 (php-7.0.31.tar.bz2) = 4da4e41b37445b0f5166df37583d23c78ca8e358
+RMD160 (php-7.0.31.tar.bz2) = f34a43e8809a25b0b8af78a62ab92d8f3012825e
+SHA512 (php-7.0.31.tar.bz2) = f496ca871245c0ddbbc848ad2c46d24e789c8cc3f1be489b87d25d353c5773ea9c54c2a54dfb2c4e9fc6b08cdf812305fa6bd0d80615f33f0db9d21edee3636b
+Size (php-7.0.31.tar.bz2) = 14641488 bytes
SHA1 (patch-acinclude.m4) = 81a8f33a536500978ea5a9aa2d2875c61c843e56
SHA1 (patch-configure) = 68ca63d7623feee2f12c9e1abacf4a5d7827d96c
+SHA1 (patch-disable-filter-url) = e9e92d686ddd1d1a1ece10fe4feee4e368fe510c
SHA1 (patch-ext_gd_config.m4) = bde93678626592cdcee619189bfc6532d0913a76
SHA1 (patch-ext_imap_config.m4) = f4e10ab81697b72019313f63bc630627a08efd92
SHA1 (patch-ext_intl_config.m4) = 222e35fc2c3e9e559696293fdf66171f8abfca7f
diff -r e956be5b879f -r ba943aef6b41 lang/php70/patches/patch-disable-filter-url
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/php70/patches/patch-disable-filter-url Fri Aug 17 17:37:21 2018 +0000
@@ -0,0 +1,34 @@
+$NetBSD: patch-disable-filter-url,v 1.1.2.2 2018/08/17 17:37:22 bsiegert Exp $
+
+Add build-time disable option for dangerous php://filter URL
+
+php://filter URL is a feature documented here:
+http://php.net/manual/en/wrappers.php.php
+
+Unfortunately, it allows remote control of include() behavior
+beyond what many developpers expected, enabling easy dump of
+PHP source files. The administrator may want to disable the
+feature for security sake, and this patch makes that possible.
+
+--- ./ext/standard/php_fopen_wrapper.c.orig
++++ ./ext/standard/php_fopen_wrapper.c
+@@ -345,8 +345,9 @@
+ "Error duping file descriptor " ZEND_LONG_FMT "; possibly it doesn't exist: "
+ "[%d]: %s", fildes_ori, errno, strerror(errno));
+ return NULL;
+ }
++#ifndef DISABLE_FILTER_URL
+ } else if (!strncasecmp(path, "filter/", 7)) {
+ /* Save time/memory when chain isn't specified */
+ if (strchr(mode, 'r') || strchr(mode, '+')) {
+ mode_rw |= PHP_STREAM_FILTER_READ;
+@@ -382,8 +383,9 @@
+ }
+ efree(pathdup);
+
+ return stream;
++#endif /* !DISABLE_FILTER_URL */
+ } else {
+ /* invalid php://thingy */
+ php_error_docref(NULL, E_WARNING, "Invalid php:// URL specified");
+ return NULL;
Home |
Main Index |
Thread Index |
Old Index