cvs: php4 /sapi/apache mod_php4.c mod_php4.h php_apache.c

From: Date: Sun, 13 May 2001 09:03:46 +0000
Subject: cvs: php4 /sapi/apache mod_php4.c mod_php4.h php_apache.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-5718@lists.php.net to get a copy of this message
zeev Sun May 13 02:03:46 2001 EDT Modified files: /php4/sapi/apache mod_php4.c mod_php4.h php_apache.c Log: Safer detection of recursive PHP invocations Index: php4/sapi/apache/mod_php4.c diff -u php4/sapi/apache/mod_php4.c:1.95 php4/sapi/apache/mod_php4.c:1.96 --- php4/sapi/apache/mod_php4.c:1.95 Fri May 11 11:17:08 2001 +++ php4/sapi/apache/mod_php4.c Sun May 13 02:03:46 2001 @@ -17,7 +17,7 @@ | PHP 4.0 patches by Zeev Suraski <zeev@zend.com> | +----------------------------------------------------------------------+ */ -/* $Id: mod_php4.c,v 1.95 2001/05/11 18:17:08 thies Exp $ */ +/* $Id: mod_php4.c,v 1.96 2001/05/13 09:03:46 zeev Exp $ */ #define NO_REGEX_EXTRA_H #ifdef WIN32 @@ -285,7 +285,9 @@ static void php_apache_request_shutdown(void *dummy) { SLS_FETCH(); + APLS_FETCH(); + AP(in_request)=0; SG(server_context) = NULL; /* The server context (request) is invalid by the time run_cleanups() is called */ php_request_shutdown(dummy); } @@ -446,7 +448,7 @@ PLS_FETCH(); APLS_FETCH(); - if (r->assbackwards && r->protocol && !strcmp(r->protocol, "INCLUDED")) { + if (AP(in_request)) { zend_file_handle fh; fh.filename = r->filename; @@ -456,6 +458,7 @@ zend_execute_scripts(ZEND_INCLUDE CLS_CC ELS_CC, 1, &fh); return OK; } + AP(in_request)=1; if (setjmp(EG(bailout))!=0) { return OK; Index: php4/sapi/apache/mod_php4.h diff -u php4/sapi/apache/mod_php4.h:1.11 php4/sapi/apache/mod_php4.h:1.12 --- php4/sapi/apache/mod_php4.h:1.11 Sun Feb 25 22:07:35 2001 +++ php4/sapi/apache/mod_php4.h Sun May 13 02:03:46 2001 @@ -15,7 +15,7 @@ | Authors: Rasmus Lerdorf <rasmus@php.net> | +----------------------------------------------------------------------+ */ -/* $Id: mod_php4.h,v 1.11 2001/02/26 06:07:35 andi Exp $ */ +/* $Id: mod_php4.h,v 1.12 2001/05/13 09:03:46 zeev Exp $ */ #ifndef MOD_PHP4_H #define MOD_PHP4_H @@ -31,6 +31,7 @@ long last_modified; long xbithack; long terminate_child; + zend_bool in_request; } php_apache_info_struct; extern zend_module_entry apache_module_entry; Index: php4/sapi/apache/php_apache.c diff -u php4/sapi/apache/php_apache.c:1.29 php4/sapi/apache/php_apache.c:1.30 --- php4/sapi/apache/php_apache.c:1.29 Mon May 7 04:07:22 2001 +++ php4/sapi/apache/php_apache.c Sun May 13 02:03:46 2001 @@ -17,7 +17,7 @@ | David Sklar <sklar@student.net> | +----------------------------------------------------------------------+ */ -/* $Id: php_apache.c,v 1.29 2001/05/07 11:07:22 zeev Exp $ */ +/* $Id: php_apache.c,v 1.30 2001/05/13 09:03:46 zeev Exp $ */ #define NO_REGEX_EXTRA_H @@ -89,10 +89,19 @@ PHP_INI_END() + +static void php_apache_globals_ctor(php_apache_info_struct *apache_globals) +{ + apache_globals->in_request = 0; +} + + static PHP_MINIT_FUNCTION(apache) { #ifdef ZTS - php_apache_info_id = ts_allocate_id(sizeof(php_apache_info_struct), NULL, NULL); + php_apache_info_id = ts_allocate_id(sizeof(php_apache_info_struct), ts_allocate_ctor, NULL); +#else + php_apache_globals_ctor(&php_apache_info); #endif REGISTER_INI_ENTRIES(); return SUCCESS;

« previous php.cvs (#5718) next »