diff options
| -rw-r--r-- | opcache-blacklist.patch | 178 | ||||
| -rw-r--r-- | php-pecl-zendopcache.spec | 35 | 
2 files changed, 14 insertions, 199 deletions
diff --git a/opcache-blacklist.patch b/opcache-blacklist.patch deleted file mode 100644 index 2bfda57..0000000 --- a/opcache-blacklist.patch +++ /dev/null @@ -1,178 +0,0 @@ -From dc416b995f4560f73558d2567c7c45b665b58685 Mon Sep 17 00:00:00 2001 -From: Dmitry Stogov <dmitry@zend.com> -Date: Tue, 9 Apr 2013 10:51:19 +0400 -Subject: [PATCH] Fixed issue #82 (allow comments in blacklist file, lines - started with ";") - ---- - zend_accelerator_blacklist.c | 5 +++++ - 1 file changed, 5 insertions(+) - -diff --git a/zend_accelerator_blacklist.c b/zend_accelerator_blacklist.c -index 0ccd62e..764c950 100644 ---- a/zend_accelerator_blacklist.c -+++ b/zend_accelerator_blacklist.c -@@ -212,6 +212,11 @@ void zend_accel_blacklist_load(zend_blacklist *blacklist, char *filename) - 			continue; - 		} -  -+		/* skip comments */ -+		if (pbuf[0]==';') { -+			continue; -+		} -+ - 		path_dup = zend_strndup(pbuf, path_length); - 		expand_filepath(path_dup, real_path TSRMLS_CC); - 		path_length = strlen(real_path); ---  -1.8.1.5 - -From f80a5538063f470d7c42b386a357d47794108a74 Mon Sep 17 00:00:00 2001 -From: Dmitry Stogov <dmitry@zend.com> -Date: Wed, 10 Apr 2013 21:41:30 +0400 -Subject: [PATCH] Allow wilcards in opcache.blacklist_filename - ---- - README                       |  8 ++++---- - tests/blacklist.phpt         | 20 ++++++++++++++++++++ - tests/opcache-1.blacklist    |  5 +++++ - tests/opcache-2.blacklist    |  1 + - zend_accelerator_blacklist.c | 36 ++++++++++++++++++++++++++++++++++++ - 5 files changed, 66 insertions(+), 4 deletions(-) - create mode 100644 tests/blacklist.phpt - create mode 100644 tests/opcache-1.blacklist - create mode 100644 tests/opcache-2.blacklist - -diff --git a/README b/README -index 03386a0..3110012 100644 ---- a/README -+++ b/README -@@ -151,13 +151,13 @@ opcache.dups_fix (default "0") - 	Enable this hack as a workaround for "Cannot redeclare class" errors. -  - opcache.blacklist_filename --	The location of the OPcache blacklist file. --	The OPcache blacklist file is a text file that holds the names of files -+	The location of the OPcache blacklist file (wildcards allowed). -+	Each OPcache blacklist file is a text file that holds the names of files - 	that should not be accelerated. The file format is to add each filename - 	to a new line. The filename may be a full path or just a file prefix - 	(i.e., /var/www/x  blacklists all the files and directories in /var/www --	that start with 'x'). Files are usually triggered by one of the following --	three reasons: -+	that start with 'x'). Line starting with a ; are ignored (comments). -+	Files are usually triggered by one of the following three reasons: - 	1) Directories that contain auto generated code, like Smarty or ZFW cache. - 	2) Code that does not work well when accelerated, due to some delayed - 	   compile time evaluation. -diff --git a/tests/blacklist.phpt b/tests/blacklist.phpt -new file mode 100644 -index 0000000..f4a3472 ---- /dev/null -+++ b/tests/blacklist.phpt -@@ -0,0 +1,20 @@ -+--TEST-- -+Blacklist (with glob, quote and comments) -+--INI-- -+opcache.enable=1 -+opcache.enable_cli=1 -+opcache.blacklist_filename={PWD}/opcache-*.blacklist -+--SKIPIF-- -+<?php require_once('skipif.inc'); ?> -+--FILE-- -+<?php -+$conf = opcache_get_configuration(); -+print_r($conf['blacklist']); -+?> -+--EXPECT-- -+Array -+( -+    [0] => /path/to/foo -+    [1] => /path/to/foo2 -+    [2] => /path/to/bar -+) -\ No newline at end of file -diff --git a/tests/opcache-1.blacklist b/tests/opcache-1.blacklist -new file mode 100644 -index 0000000..5f498d6 ---- /dev/null -+++ b/tests/opcache-1.blacklist -@@ -0,0 +1,5 @@ -+; comments are allowed in blacklist file -+; and empty line are ignored -+ -+/path/to/foo -+"/path/to/foo2" -\ No newline at end of file -diff --git a/tests/opcache-2.blacklist b/tests/opcache-2.blacklist -new file mode 100644 -index 0000000..4f6580a ---- /dev/null -+++ b/tests/opcache-2.blacklist -@@ -0,0 +1 @@ -+/path/to/bar -diff --git a/zend_accelerator_blacklist.c b/zend_accelerator_blacklist.c -index 764c950..b09d0e5 100644 ---- a/zend_accelerator_blacklist.c -+++ b/zend_accelerator_blacklist.c -@@ -36,6 +36,14 @@ - # define REGEX_MODE (REG_EXTENDED|REG_NOSUB) - #endif -  -+#ifdef HAVE_GLOB -+#ifdef PHP_WIN32 -+#include "win32/glob.h" -+#else -+#include <glob.h> -+#endif -+#endif -+ - #define ZEND_BLACKLIST_BLOCK_SIZE	32 -  - struct _zend_regexp_list { -@@ -168,7 +176,11 @@ static inline void zend_accel_blacklist_allocate(zend_blacklist *blacklist) - 	} - } -  -+#ifdef HAVE_GLOB -+static void zend_accel_blacklist_loadone(zend_blacklist *blacklist, char *filename) -+#else - void zend_accel_blacklist_load(zend_blacklist *blacklist, char *filename) -+#endif - { - 	char buf[MAXPATHLEN + 1], real_path[MAXPATHLEN + 1]; - 	FILE *fp; -@@ -238,6 +250,30 @@ void zend_accel_blacklist_load(zend_blacklist *blacklist, char *filename) - 	zend_accel_blacklist_update_regexp(blacklist); - } -  -+#ifdef HAVE_GLOB -+void zend_accel_blacklist_load(zend_blacklist *blacklist, char *filename) -+{ -+	glob_t globbuf; -+	int    ret, i; -+ -+	memset(&globbuf, 0, sizeof(glob_t)); -+ -+	ret = glob(filename, 0, NULL, &globbuf); -+#ifdef GLOB_NOMATCH -+	if (ret == GLOB_NOMATCH || !globbuf.gl_pathc) { -+#else -+	if (!globbuf.gl_pathc) { -+#endif -+		zend_accel_error(ACCEL_LOG_WARNING, "No blacklist file found matching: %s\n", filename); -+	} else { -+		for(i=0 ; i<globbuf.gl_pathc; i++) { -+			zend_accel_blacklist_loadone(blacklist, globbuf.gl_pathv[i]); -+		} -+		globfree(&globbuf); -+	} -+} -+#endif -+ - zend_bool zend_accel_blacklist_is_blacklisted(zend_blacklist *blacklist, char *verify_path) - { - 	int ret = 0; ---  -1.8.1.5 - diff --git a/php-pecl-zendopcache.spec b/php-pecl-zendopcache.spec index 149fd30..87d227e 100644 --- a/php-pecl-zendopcache.spec +++ b/php-pecl-zendopcache.spec @@ -1,34 +1,30 @@ +# spec file for php-horde-Horde-HashTable +# +# Copyright (c) 2013 Remi Collet +# License: CC-BY-SA +# http://creativecommons.org/licenses/by-sa/3.0/ +# +# Please, preserve the changelog entries +#  %{!?__pecl:     %{expand: %%global __pecl     %{_bindir}/pecl}} -#global owner      zend-dev -#global commit     cef6093956bee5446207d5919fc9d30be58aa245 -#global short      %(c=%{commit}; echo ${c:0:7}) -#global prever     dev  %global proj_name  ZendOpcache  %global pecl_name  zendopcache  %global plug_name  opcache  Name:          php-pecl-%{pecl_name} -Version:       7.0.1 -Release:       2%{?dist} +Version:       7.0.2 +Release:       1%{?dist}  Summary:       The Zend OPcache  Group:         Development/Libraries  License:       PHP  URL:           http://pecl.php.net/package/%{proj_name} -%if 0%{?commit:1} -Source0:       https://github.com/%{owner}/%{proj_name}/archive/%{commit}/%{proj_name}-%{version}-%{short}.tar.gz -%else  Source0:       http://pecl.php.net/get/%{pecl_name}-%{version}.tgz -%endif  # this extension must be loaded before XDebug  # So "opcache" if before "xdebug"  Source1:       %{plug_name}.ini  Source2:       %{plug_name}-default.blacklist -# Allow comments in blacklist content -# Allow wildcard in blacklist filename -Patch0:        %{plug_name}-blacklist.patch -  BuildRoot:     %{_tmppath}/%{name}-%{version}-%{release}-root  BuildRequires: php-devel >= 5.2.0  BuildRequires: php-pear @@ -66,16 +62,9 @@ bytecode optimization patterns that make code execution faster.  %prep  %setup -q -c -%if 0%{?commit:1} -mv %{proj_name}-%{commit} NTS -sed -e '/release/s/7.0.0/%{version}%{prever}/' \ -    NTS/package.xml >package.xml -%else  mv %{pecl_name}-%{version} NTS -%endif  cd NTS -%patch0 -p1  # Sanity check, really often broken  extver=$(sed -n '/#define ACCELERATOR_VERSION/{s/.* "//;s/".*$//;p}' ZendAccelerator.h) @@ -179,6 +168,10 @@ fi  %changelog +* Wed Jun  5 2013 Remi Collet <rcollet@redhat.com> - 7.0.2-1 +- update to 7.0.2 +- add spec License = CC-BY-SA +  * Thu Apr 11 2013 Remi Collet <rcollet@redhat.com> - 7.0.1-2  - allow wildcard in opcache.blacklist_filename and provide    default /etc/php.d/opcache-default.blacklist  | 
