cvs: php4(PHP_4_2_0) /sapi/apache2filter apache_config.c sapi_apache2.c
| From: | Edin Kadribasic | Date: | Thu, 15 Aug 2002 22:27:03 +0000 |
| Subject: | cvs: php4(PHP_4_2_0) /sapi/apache2filter apache_config.c sapi_apache2.c | ||
| Groups: | php.cvs | ||
| Request: | Send a blank email to php-cvs+get-13394@lists.php.net to get a copy of this message | ||
edink Thu Aug 15 18:27:03 2002 EDT
Modified files: (Branch: PHP_4_2_0)
/php4/sapi/apache2filter apache_config.c sapi_apache2.c
Log:
MFH (make apache2filter work with Apache 2.0.40)
Index: php4/sapi/apache2filter/apache_config.c
diff -u php4/sapi/apache2filter/apache_config.c:1.17.2.1
php4/sapi/apache2filter/apache_config.c:1.17.2.2
--- php4/sapi/apache2filter/apache_config.c:1.17.2.1 Mon Jun 24 05:34:06 2002
+++ php4/sapi/apache2filter/apache_config.c Thu Aug 15 18:27:03 2002
@@ -165,9 +165,9 @@
"PHP Value Modifier"),
AP_INIT_TAKE2("php_flag", php_apache_flag_handler, NULL, OR_OPTIONS,
"PHP Flag Modifier"),
- AP_INIT_TAKE2("php_admin_value", php_apache_admin_value_handler, NULL, ACCESS_CONF,
+ AP_INIT_TAKE2("php_admin_value", php_apache_admin_value_handler, NULL,
ACCESS_CONF|RSRC_CONF,
"PHP Value Modifier (Admin)"),
- AP_INIT_TAKE2("php_admin_flag", php_apache_admin_flag_handler, NULL, ACCESS_CONF,
+ AP_INIT_TAKE2("php_admin_flag", php_apache_admin_flag_handler, NULL,
ACCESS_CONF|RSRC_CONF,
"PHP Flag Modifier (Admin)"),
AP_INIT_TAKE1("PHPINIDir", php_apache_phpini_set, NULL, RSRC_CONF,
"Directory containing the php.ini file"),
Index: php4/sapi/apache2filter/sapi_apache2.c
diff -u php4/sapi/apache2filter/sapi_apache2.c:1.61.2.13
php4/sapi/apache2filter/sapi_apache2.c:1.61.2.14
--- php4/sapi/apache2filter/sapi_apache2.c:1.61.2.13 Mon Jun 24 05:34:06 2002
+++ php4/sapi/apache2filter/sapi_apache2.c Thu Aug 15 18:27:03 2002
@@ -40,6 +40,7 @@
#include "http_main.h"
#include "util_script.h"
#include "http_core.h"
+#include "ap_mpm.h"
#include "php_apache.h"
@@ -94,7 +95,10 @@
val = strchr(sapi_header->header, ':');
- if (!val) return 0;
+ if (!val) {
+ sapi_free_header(sapi_header);
+ return 0;
+ }
*val = '\0';
@@ -425,7 +429,9 @@
{
apache2_sapi_module.shutdown(&apache2_sapi_module);
sapi_shutdown();
+#ifdef ZTS
tsrm_shutdown();
+#endif
return APR_SUCCESS;
}
@@ -439,6 +445,15 @@
static int php_pre_config(apr_pool_t *pconf, apr_pool_t *plog, apr_pool_t *ptemp)
{
+#ifndef ZTS
+ int threaded_mpm;
+
+ ap_mpm_query(AP_MPMQ_IS_THREADED, &threaded_mpm);
+ if(threaded_mpm) {
+ ap_log_error(APLOG_MARK, APLOG_CRIT, 0, 0, "Apache is running a threaded MPM, but your PHP
Module is not compiled to be threadsafe. You need to recompile PHP.");
+ return DONE;
+ }
+#endif
/* When this is NULL, apache won't override the hard-coded default
* php.ini path setting. */
apache2_php_ini_path_override = NULL;
@@ -470,8 +485,9 @@
if (apache2_php_ini_path_override) {
apache2_sapi_module.php_ini_path_override = apache2_php_ini_path_override;
}
-
+#ifdef ZTS
tsrm_startup(1, 1, 0, NULL);
+#endif
sapi_startup(&apache2_sapi_module);
apache2_sapi_module.startup(&apache2_sapi_module);
apr_pool_cleanup_register(pconf, NULL, php_apache_server_shutdown, apr_pool_cleanup_null);
@@ -548,8 +564,8 @@
ap_hook_post_config(php_apache_server_startup, NULL, NULL, APR_HOOK_MIDDLE);
ap_hook_insert_filter(php_insert_filter, NULL, NULL, APR_HOOK_MIDDLE);
ap_hook_post_read_request(php_post_read_request, NULL, NULL, APR_HOOK_MIDDLE);
- ap_register_output_filter("PHP", php_output_filter, AP_FTYPE_RESOURCE);
- ap_register_input_filter("PHP", php_input_filter, AP_FTYPE_RESOURCE);
+ ap_register_output_filter("PHP", php_output_filter, NULL, AP_FTYPE_RESOURCE);
+ ap_register_input_filter("PHP", php_input_filter, NULL, AP_FTYPE_RESOURCE);
}
AP_MODULE_DECLARE_DATA module php4_module = {