[packages/php/PHP_5_5] - up to 5.5.10; config-file-scan-dir.patch functionality seems to be merged (https://bugs.php.net/bu
arekm
arekm at pld-linux.org
Thu Mar 13 11:56:44 CET 2014
commit 2e0e7ed6b5614f6390a0a1e20c72466a2dc9b63d
Author: Arkadiusz Miśkiewicz <arekm at maven.pl>
Date: Thu Mar 13 11:56:38 2014 +0100
- up to 5.5.10; config-file-scan-dir.patch functionality seems to be merged (https://bugs.php.net/bug.php?id=66574)
php-config-file-scan-dir.patch | 155 -----------------------------------------
php-sapi-ini-file.patch | 32 +++++----
php.spec | 8 +--
3 files changed, 20 insertions(+), 175 deletions(-)
---
diff --git a/php.spec b/php.spec
index c669ddd..7613fa5 100644
--- a/php.spec
+++ b/php.spec
@@ -139,13 +139,13 @@ Summary(pt_BR.UTF-8): A linguagem de script PHP
Summary(ru.UTF-8): PHP Версии 5 - язык препроцессирования HTML-файлов, выполняемый на сервере
Summary(uk.UTF-8): PHP Версії 5 - мова препроцесування HTML-файлів, виконувана на сервері
Name: %{orgname}%{php_suffix}
-Version: 5.5.9
+Version: 5.5.10
Release: %{rel}%{?with_type_hints:.th}%{?with_oci8:.oci}
Epoch: 4
License: PHP
Group: Libraries
Source0: http://www.php.net/distributions/%{orgname}-%{version}.tar.xz
-# Source0-md5: 139e2ac02fddd4c80cc31de000c6f7e3
+# Source0-md5: ff7ac75abd986f591fd6fc8e997be33e
Source2: %{orgname}-mod_%{orgname}.conf
Source3: %{orgname}-cgi-fcgi.ini
Source4: %{orgname}-apache.ini
@@ -165,7 +165,6 @@ Patch4: %{orgname}-libpq_fs_h_path.patch
Patch5: %{orgname}-filter-shared.patch
Patch6: %{orgname}-build_modules.patch
Patch7: %{orgname}-sapi-ini-file.patch
-Patch8: %{orgname}-config-file-scan-dir.patch
Patch10: %{orgname}-ini.patch
Patch11: embed.patch
@@ -318,7 +317,7 @@ BuildRoot: %{tmpdir}/%{name}-%{version}-root-%(id -u -n)
# Extension versions
%define bz2ver 1.0
%define enchantver 1.1.0
-%define fileinfover 1.0.5-dev
+%define fileinfover 1.0.5
%define hashver 1.0
%define intlver 1.1.0
%define jsonver 1.2.1
@@ -1900,7 +1899,6 @@ Moduł PHP umożliwiający używanie kompresji zlib.
%patch4 -p1
%patch5 -p1
%patch6 -p1
-%patch8 -p1
%patch7 -p1
cp -p php.ini-production php.ini
diff --git a/php-config-file-scan-dir.patch b/php-config-file-scan-dir.patch
deleted file mode 100644
index a01906e..0000000
--- a/php-config-file-scan-dir.patch
+++ /dev/null
@@ -1,155 +0,0 @@
---- php-5.4.0RC3/main/php_ini.c~ 2011-12-10 03:26:15.000000000 +0200
-+++ php-5.4.0RC3/main/php_ini.c 2011-12-10 03:26:54.901295707 +0200
-@@ -376,6 +376,7 @@
- char *open_basedir;
- int free_ini_search_path = 0;
- zend_file_handle fh;
-+ static const char paths_separator[] = { ZEND_PATHS_SEPARATOR, 0 };
-
- if (zend_hash_init(&configuration_hash, 0, NULL, (dtor_func_t) config_zval_dtor, 1) == FAILURE) {
- return FAILURE;
-@@ -398,7 +399,6 @@
- int search_path_size;
- char *default_location;
- char *env_location;
-- static const char paths_separator[] = { ZEND_PATHS_SEPARATOR, 0 };
- #ifdef PHP_WIN32
- char *reg_location;
- char phprc_path[MAXPATHLEN];
-@@ -608,72 +608,86 @@
-
- /* Scan and parse any .ini files found in scan path if path not empty. */
- if (!sapi_module.php_ini_ignore && php_ini_scanned_path_len) {
-- struct dirent **namelist;
- int ndir, i;
- struct stat sb;
- char ini_file[MAXPATHLEN];
-- char *p;
-+ char *p, *last, *path_copy, *ini_path = NULL;
- zend_file_handle fh2;
- zend_llist scanned_ini_list;
- zend_llist_element *element;
- int l, total_l = 0;
-
-- if ((ndir = php_scandir(php_ini_scanned_path, &namelist, 0, php_alphasort)) > 0) {
-- zend_llist_init(&scanned_ini_list, sizeof(char *), (llist_dtor_func_t) free_estring, 1);
-- memset(&fh2, 0, sizeof(fh2));
--
-- for (i = 0; i < ndir; i++) {
--
-- /* check for any file with .ini extension */
-- if (!(p = strrchr(namelist[i]->d_name, '.')) || (p && strcmp(p, ".ini"))) {
-- free(namelist[i]);
-- continue;
-- }
-- /* Reset active ini section */
-- RESET_ACTIVE_INI_HASH();
--
-- if (IS_SLASH(php_ini_scanned_path[php_ini_scanned_path_len - 1])) {
-- snprintf(ini_file, MAXPATHLEN, "%s%s", php_ini_scanned_path, namelist[i]->d_name);
-- } else {
-- snprintf(ini_file, MAXPATHLEN, "%s%c%s", php_ini_scanned_path, DEFAULT_SLASH, namelist[i]->d_name);
-- }
-- if (VCWD_STAT(ini_file, &sb) == 0) {
-- if (S_ISREG(sb.st_mode)) {
-- if ((fh2.handle.fp = VCWD_FOPEN(ini_file, "r"))) {
-- fh2.filename = ini_file;
-- fh2.type = ZEND_HANDLE_FP;
--
-- if (zend_parse_ini_file(&fh2, 1, ZEND_INI_SCANNER_NORMAL, (zend_ini_parser_cb_t) php_ini_parser_cb, &configuration_hash TSRMLS_CC) == SUCCESS) {
-- /* Here, add it to the list of ini files read */
-- l = strlen(ini_file);
-- total_l += l + 2;
-- p = estrndup(ini_file, l);
-- zend_llist_add_element(&scanned_ini_list, &p);
-+ /* List of found ini files */
-+ zend_llist_init(&scanned_ini_list, sizeof(char *), (llist_dtor_func_t) free_estring, 1);
-+
-+ /* Split by paths_separator and load ini-files from all paths */
-+ path_copy = estrdup(php_ini_scanned_path);
-+ ini_path = php_strtok_r(path_copy, paths_separator, &last);
-+
-+ while (ini_path != NULL) {
-+ struct dirent **namelist;
-+ int ini_path_len = strlen(ini_path);
-+
-+ if ((ndir = php_scandir(ini_path, &namelist, 0, php_alphasort)) > 0) {
-+ memset(&fh2, 0, sizeof(fh2));
-+
-+ for (i = 0; i < ndir; i++) {
-+ /* check for any file with .ini extension */
-+ if (!(p = strrchr(namelist[i]->d_name, '.')) || (p && strcmp(p, ".ini"))) {
-+ free(namelist[i]);
-+ continue;
-+ }
-+ /* Reset active ini section */
-+ RESET_ACTIVE_INI_HASH();
-+
-+ if (IS_SLASH(ini_path[ini_path_len - 1])) {
-+ snprintf(ini_file, MAXPATHLEN, "%s%s", ini_path, namelist[i]->d_name);
-+ } else {
-+ snprintf(ini_file, MAXPATHLEN, "%s%c%s", ini_path, DEFAULT_SLASH, namelist[i]->d_name);
-+ }
-+ if (VCWD_STAT(ini_file, &sb) == 0) {
-+ if (S_ISREG(sb.st_mode)) {
-+ if ((fh2.handle.fp = VCWD_FOPEN(ini_file, "r"))) {
-+ fh2.filename = ini_file;
-+ fh2.type = ZEND_HANDLE_FP;
-+
-+ /* Reset active ini section */
-+ RESET_ACTIVE_INI_HASH();
-+
-+ if (zend_parse_ini_file(&fh2, 1, ZEND_INI_SCANNER_NORMAL, (zend_ini_parser_cb_t) php_ini_parser_cb, &configuration_hash TSRMLS_CC) == SUCCESS) {
-+ /* Here, add it to the list of ini files read */
-+ l = strlen(ini_file);
-+ total_l += l + 2;
-+ p = estrndup(ini_file, l);
-+ zend_llist_add_element(&scanned_ini_list, &p);
-+ }
- }
- }
- }
-+ free(namelist[i]);
- }
-- free(namelist[i]);
-+ free(namelist);
- }
-- free(namelist);
--
-- if (total_l) {
-- int php_ini_scanned_files_len = (php_ini_scanned_files) ? strlen(php_ini_scanned_files) + 1 : 0;
-- php_ini_scanned_files = (char *) realloc(php_ini_scanned_files, php_ini_scanned_files_len + total_l + 1);
-- if (!php_ini_scanned_files_len) {
-- *php_ini_scanned_files = '\0';
-- }
-- total_l += php_ini_scanned_files_len;
-- for (element = scanned_ini_list.head; element; element = element->next) {
-- if (php_ini_scanned_files_len) {
-- strlcat(php_ini_scanned_files, ",\n", total_l);
-- }
-- strlcat(php_ini_scanned_files, *(char **)element->data, total_l);
-- strlcat(php_ini_scanned_files, element->next ? ",\n" : "\n", total_l);
-+ ini_path = php_strtok_r(NULL, paths_separator, &last);
-+ }
-+
-+ if (total_l) {
-+ int php_ini_scanned_files_len = (php_ini_scanned_files) ? strlen(php_ini_scanned_files) + 1 : 0;
-+ php_ini_scanned_files = (char *) realloc(php_ini_scanned_files, php_ini_scanned_files_len + total_l + 1);
-+ if (!php_ini_scanned_files_len) {
-+ *php_ini_scanned_files = '\0';
-+ }
-+ total_l += php_ini_scanned_files_len;
-+ for (element = scanned_ini_list.head; element; element = element->next) {
-+ if (php_ini_scanned_files_len) {
-+ strlcat(php_ini_scanned_files, ",\n", total_l);
- }
-+ strlcat(php_ini_scanned_files, *(char **)element->data, total_l);
-+ strlcat(php_ini_scanned_files, element->next ? ",\n" : "\n", total_l);
- }
-- zend_llist_destroy(&scanned_ini_list);
- }
-+ efree(path_copy);
-+ zend_llist_destroy(&scanned_ini_list);
- } else {
- /* Make sure an empty php_ini_scanned_path ends up as NULL */
- php_ini_scanned_path = NULL;
diff --git a/php-sapi-ini-file.patch b/php-sapi-ini-file.patch
index 7ceb984..7dab0cc 100644
--- a/php-sapi-ini-file.patch
+++ b/php-sapi-ini-file.patch
@@ -52,28 +52,30 @@
}
if (free_ini_search_path) {
-@@ -627,12 +627,14 @@
+@@ -645,13 +645,15 @@ int php_init_config(TSRMLS_D)
zend_llist scanned_ini_list;
zend_llist_element *element;
int l, total_l = 0;
+ const char *fmt = "%s:" PHP_CONFIG_FILE_PATH "/%s.d";
+ char *bufpath, *debpath, *endpath;
+ int lenpath;
- /* List of found ini files */
zend_llist_init(&scanned_ini_list, sizeof(char *), (llist_dtor_func_t) free_estring, 1);
+ memset(&fh2, 0, sizeof(fh2));
- /* Split by paths_separator and load ini-files from all paths */
-- path_copy = estrdup(php_ini_scanned_path);
-+ path_copy = emalloc(strlen(php_ini_scanned_path) + strlen(fmt) + strlen(sapi_module.name));
-+ sprintf(path_copy, fmt, php_ini_scanned_path, sapi_module.name);
- ini_path = php_strtok_r(path_copy, paths_separator, &last);
-
- while (ini_path != NULL) {
-@@ -636,7 +653,7 @@
- struct dirent **namelist;
- int ini_path_len = strlen(ini_path);
+- bufpath = estrdup(php_ini_scanned_path);
++ bufpath = emalloc(strlen(php_ini_scanned_path) + strlen(fmt) + strlen(sapi_module.name));
++ sprintf(bufpath, fmt, php_ini_scanned_path, sapi_module.name);
+ for (debpath = bufpath ; debpath ; debpath=endpath) {
+ endpath = strchr(debpath, DEFAULT_DIR_SEPARATOR);
+ if (endpath) {
+@@ -664,7 +666,7 @@ int php_init_config(TSRMLS_D)
+ }
+ lenpath = strlen(debpath);
-- if ((ndir = php_scandir(ini_path, &namelist, 0, php_alphasort)) > 0) {
-+ if ((ndir = php_scandir(ini_path, &namelist, 0, php_csort)) > 0) {
- memset(&fh2, 0, sizeof(fh2));
+- if (lenpath > 0 && (ndir = php_scandir(debpath, &namelist, 0, php_alphasort)) > 0) {
++ if (lenpath > 0 && (ndir = php_scandir(debpath, &namelist, 0, php_csort)) > 0) {
for (i = 0; i < ndir; i++) {
+
+
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/php.git/commitdiff/2e0e7ed6b5614f6390a0a1e20c72466a2dc9b63d
More information about the pld-cvs-commit
mailing list