Download | Plain Text | No Line Numbers
- --- php-5.3.2.orig/main/php_ini.c 2010-02-03 21:13:18.000000000 +0100
- +++ php-5.3.2/main/php_ini.c 2010-06-12 21:09:14.000000000 +0200
- @@ -687,6 +687,48 @@
- php_ini_scanned_path = NULL;
- }
-
- + char *php_ini_extra = getenv("PHP_INI_EXTRA");
- + if (!sapi_module.php_ini_ignore && php_ini_extra) {
- + struct stat sb;
- + zend_file_handle fh;
- + RESET_ACTIVE_INI_HASH();
- + memset(&fh, 0, sizeof(fh));
- +
- + if (VCWD_STAT(php_ini_extra, &sb) == 0) {
- + if (S_ISREG(sb.st_mode)) {
- + if ((fh.handle.fp = VCWD_FOPEN(php_ini_extra, "r"))) {
- + fh.filename = php_ini_extra;
- + fh.type = ZEND_HANDLE_FP;
- +
- + /* add an fake-host section so our settings will be changed to PHP_INI_SYSTEM during merge */
- + zval fakehost;
- + Z_STRLEN(fakehost) = sizeof("HOST=\%fake\%") - 1;
- + Z_STRVAL(fakehost) = zend_strndup("HOST=\%fake\%", Z_STRLEN(fakehost));
- + Z_TYPE(fakehost) = IS_STRING;
- + php_ini_parser_cb(&fakehost, NULL, NULL, ZEND_INI_PARSER_SECTION, &configuration_hash TSRMLS_CC);
- +
- + if (zend_parse_ini_file(&fh, 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 */
- + int add_len = strlen(php_ini_extra) + 2;
- +
- + 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 + add_len + 1);
- + if (!php_ini_scanned_files_len) {
- + *php_ini_scanned_files = '\0';
- + }
- + add_len += php_ini_scanned_files_len;
- + if (php_ini_scanned_files_len) {
- + php_ini_scanned_files[php_ini_scanned_files_len - 2] = '\0';
- + strlcat(php_ini_scanned_files, ",\n", add_len);
- + }
- + strlcat(php_ini_scanned_files, php_ini_extra, add_len);
- + strlcat(php_ini_scanned_files, "\n", add_len);
- + }
- + }
- + }
- + }
- + }
- +
- if (sapi_module.ini_entries) {
- /* Reset active ini section */
- RESET_ACTIVE_INI_HASH();
- diff -Naur php-5.3.2.orig/sapi/cgi/cgi_main.c php-5.3.2/sapi/cgi/cgi_main.c
- --- php-5.3.2.orig/sapi/cgi/cgi_main.c 2012-09-06 13:37:47.599471003 +0200
- +++ php-5.3.2/sapi/cgi/cgi_main.c 2012-09-06 14:06:10.504809677 +0200
- @@ -832,6 +832,9 @@
- }
-
- if (php_ini_has_per_host_config()) {
- + /* activate our fake host entries. lowercase string required! */
- + php_ini_activate_per_host_config("\%fake\%", sizeof("\%fake\%") TSRMLS_CC);
- +
- /* Activate per-host-system-configuration defined in php.ini and stored into configuration_hash during startup */
- if (fcgi_is_fastcgi()) {
- fcgi_request *request = (fcgi_request*) SG(server_context);
-