jani Sat May 23 18:59:17 2009 UTC
Modified files:
/php-src/sapi/cgi cgi_main.c
Log:
ws + cs
http://cvs.php.net/viewvc.cgi/php-src/sapi/cgi/cgi_main.c?r1=1.379&r2=1.380&diff_format=u
Index: php-src/sapi/cgi/cgi_main.c
diff -u php-src/sapi/cgi/cgi_main.c:1.379 php-src/sapi/cgi/cgi_main.c:1.380
--- php-src/sapi/cgi/cgi_main.c:1.379 Sat May 23 18:03:27 2009
+++ php-src/sapi/cgi/cgi_main.c Sat May 23 18:59:17 2009
@@ -21,7 +21,7 @@
+----------------------------------------------------------------------+
*/
-/* $Id: cgi_main.c,v 1.379 2009/05/23 18:03:27 andrei Exp $ */
+/* $Id: cgi_main.c,v 1.380 2009/05/23 18:59:17 jani Exp $ */
#include "php.h"
#include "php_globals.h"
@@ -32,29 +32,37 @@
#include <stdio.h>
#include "php.h"
+
#ifdef PHP_WIN32
-#include "win32/time.h"
-#include "win32/signal.h"
-#include <process.h>
+# include "win32/time.h"
+# include "win32/signal.h"
+# include <process.h>
#endif
+
#if HAVE_SYS_TIME_H
-#include <sys/time.h>
+# include <sys/time.h>
#endif
+
#if HAVE_UNISTD_H
-#include <unistd.h>
+# include <unistd.h>
#endif
+
#if HAVE_SIGNAL_H
-#include <signal.h>
+# include <signal.h>
#endif
+
#if HAVE_SETLOCALE
-#include <locale.h>
+# include <locale.h>
#endif
+
#if HAVE_SYS_TYPES_H
-#include <sys/types.h>
+# include <sys/types.h>
#endif
+
#if HAVE_SYS_WAIT_H
-#include <sys/wait.h>
+# include <sys/wait.h>
#endif
+
#include "zend.h"
#include "zend_extensions.h"
#include "php_ini.h"
@@ -62,14 +70,15 @@
#include "php_main.h"
#include "fopen_wrappers.h"
#include "ext/standard/php_standard.h"
+
#ifdef PHP_WIN32
-#include <io.h>
-#include <fcntl.h>
-#include "win32/php_registry.h"
+# include <io.h>
+# include <fcntl.h>
+# include "win32/php_registry.h"
#endif
#ifdef __riscos__
-#include <unixlib/local.h>
+# include <unixlib/local.h>
int __riscosify_control = __RISCOSIFY_STRICT_UNIX_SPECS;
#endif
@@ -164,7 +173,7 @@
/* {{{ user_config_cache
*
* Key for each cache entry is dirname(PATH_TRANSLATED).
- *
+ *
* NOTE: Each cache entry config_hash contains the combination from all user
ini files found in
* the path starting from doc_root throught to dirname(PATH_TRANSLATED).
There is no point
* storing per-file entries as it would not be possible to detect added
/ deleted entries
@@ -412,7 +421,8 @@
h =
(sapi_header_struct*)zend_llist_get_first_ex(&sapi_headers->headers, &pos);
while (h) {
if (h->header_len > sizeof("Status:")-1
&&
- strncasecmp(h->header, "Status:",
sizeof("Status:")-1) == 0) {
+ strncasecmp(h->header,
"Status:", sizeof("Status:")-1) == 0
+ ) {
has_status = 1;
break;
}
@@ -422,7 +432,7 @@
http_error *err =
(http_error*)http_error_codes;
while (err->code != 0) {
- if (err->code ==
SG(sapi_headers).http_response_code) {
+ if (err->code ==
SG(sapi_headers).http_response_code) {
break;
}
err++;
@@ -447,14 +457,16 @@
/* prevent CRLFCRLF */
if (h->header_len) {
if (h->header_len > sizeof("Status:")-1 &&
- strncasecmp(h->header, "Status:",
sizeof("Status:")-1) == 0) {
- if (!ignore_status) {
- ignore_status = 1;
+ strncasecmp(h->header, "Status:",
sizeof("Status:")-1) == 0
+ ) {
+ if (!ignore_status) {
+ ignore_status = 1;
PHPWRITE_H(h->header, h->header_len);
PHPWRITE_H("\r\n", 2);
}
- } else if (response_status == 304 && h->header_len >
sizeof("Content-Type:")-1 &&
- strncasecmp(h->header, "Content-Type:",
sizeof("Content-Type:")-1) == 0) {
+ } else if (response_status == 304 && h->header_len >
sizeof("Content-Type:")-1 &&
+ strncasecmp(h->header, "Content-Type:",
sizeof("Content-Type:")-1) == 0
+ ) {
h =
(sapi_header_struct*)zend_llist_get_next_ex(&sapi_headers->headers, &pos);
continue;
} else {
@@ -494,9 +506,9 @@
static char *sapi_cgibin_getenv(char *name, size_t name_len TSRMLS_DC)
{
/* when php is started by mod_fastcgi, no regular environment
- is provided to PHP. It is always sent to PHP at the start
- of a request. So we have to do our own lookup to get env
- vars. This could probably be faster somehow. */
+ * is provided to PHP. It is always sent to PHP at the start
+ * of a request. So we have to do our own lookup to get env
+ * vars. This could probably be faster somehow. */
if (fcgi_is_fastcgi()) {
fcgi_request *request = (fcgi_request*) SG(server_context);
return fcgi_getenv(request, name, name_len);
@@ -520,9 +532,9 @@
name_len = strlen(name);
/* when php is started by mod_fastcgi, no regular environment
- is provided to PHP. It is always sent to PHP at the start
- of a request. So we have to do our own lookup to get env
- vars. This could probably be faster somehow. */
+ * is provided to PHP. It is always sent to PHP at the start
+ * of a request. So we have to do our own lookup to get env
+ * vars. This could probably be faster somehow. */
if (fcgi_is_fastcgi()) {
fcgi_request *request = (fcgi_request*) SG(server_context);
return fcgi_putenv(request, name, name_len, value);
@@ -609,14 +621,13 @@
UConverter *conv = ZEND_U_CONVERTER(UG(runtime_encoding_conv));
for (zend_hash_internal_pointer_reset_ex(request->env, &pos);
- zend_hash_get_current_key_ex(request->env, &var,
&var_len, &idx, 0, &pos) == HASH_KEY_IS_STRING &&
- zend_hash_get_current_data_ex(request->env, (void **)
&val, &pos) == SUCCESS;
- zend_hash_move_forward_ex(request->env, &pos)
+ zend_hash_get_current_key_ex(request->env, &var,
&var_len, &idx, 0, &pos) == HASH_KEY_IS_STRING &&
+ zend_hash_get_current_data_ex(request->env, (void **)
&val, &pos) == SUCCESS;
+ zend_hash_move_forward_ex(request->env, &pos)
) {
unsigned int new_val_len;
- if (php_register_variable_with_conv(conv, var.s,
strlen(var.s), val, strlen(*val),
-
array_ptr, filter_arg TSRMLS_CC) == FAILURE) {
+ if (php_register_variable_with_conv(conv, var.s,
strlen(var.s), val, strlen(*val), array_ptr, filter_arg TSRMLS_CC) == FAILURE) {
php_error(E_WARNING, "Failed to decode %s array
entry", (filter_arg == PARSE_ENV?"_ENV":"_SERVER"));
}
}
@@ -651,16 +662,14 @@
}
/* Build the special-case PHP_SELF variable for the CGI version
*/
- if (php_register_variable_with_conv(conv,
ZEND_STRL("PHP_SELF"), php_self,
-
php_self_len, track_vars_array, PARSE_SERVER TSRMLS_CC) == FAILURE) {
+ if (php_register_variable_with_conv(conv,
ZEND_STRL("PHP_SELF"), php_self, php_self_len, track_vars_array, PARSE_SERVER
TSRMLS_CC) == FAILURE) {
php_error(E_WARNING, "Failed to decode _SERVER array
entry");
}
efree(php_self);
} else {
php_self = SG(request_info).request_uri ?
SG(request_info).request_uri : "";
php_self_len = strlen(php_self);
- if (php_register_variable_with_conv(conv,
ZEND_STRL("PHP_SELF"), php_self,
-
php_self_len, track_vars_array, PARSE_SERVER TSRMLS_CC) == FAILURE) {
+ if (php_register_variable_with_conv(conv,
ZEND_STRL("PHP_SELF"), php_self, php_self_len, track_vars_array, PARSE_SERVER
TSRMLS_CC) == FAILURE) {
php_error(E_WARNING, "Failed to decode _SERVER array
entry");
}
}
@@ -750,8 +759,9 @@
}
}
- if (php_ini_has_per_dir_config() ||
- (PG(user_ini_filename) && *PG(user_ini_filename))) {
+ if (php_ini_has_per_dir_config() ||
+ (PG(user_ini_filename) && *PG(user_ini_filename))
+ ) {
/* Prepare search path */
path_len = strlen(SG(request_info).path_translated);
@@ -917,7 +927,8 @@
p = strstr(path, "..");
if (p) {
if ((p == path || IS_SLASH(*(p-1))) &&
- (*(p+2) == 0 || IS_SLASH(*(p+2)))) {
+ (*(p+2) == 0 || IS_SLASH(*(p+2)))
+ ) {
return 0;
}
while (1) {
@@ -926,7 +937,8 @@
break;
}
if (IS_SLASH(*(p-1)) &&
- (*(p+2) == 0 || IS_SLASH(*(p+2)))) {
+ (*(p+2) == 0 || IS_SLASH(*(p+2)))
+ ) {
return 0;
}
}
@@ -1008,8 +1020,8 @@
char *script_path_translated = env_script_filename;
/* some broken servers do not have script_filename or argv0
- an example, IIS configured in some ways. then they do more
- broken stuff and set path_translated to the cgi script location */
+ * an example, IIS configured in some ways. then they do more
+ * broken stuff and set path_translated to the cgi script location */
if (!script_path_translated && env_path_translated) {
script_path_translated = env_path_translated;
}
@@ -1025,9 +1037,9 @@
SG(sapi_headers).http_response_code = 200;
/* script_path_translated being set is a good indication that
- we are running in a cgi environment, since it is always
- null otherwise. otherwise, the filename
- of the script will be retreived later via argc/argv */
+ * we are running in a cgi environment, since it is always
+ * null otherwise. otherwise, the filename
+ * of the script will be retreived later via argc/argv */
if (script_path_translated) {
const char *auth;
char *content_length = sapi_cgibin_getenv("CONTENT_LENGTH",
sizeof("CONTENT_LENGTH")-1 TSRMLS_CC);
@@ -1069,12 +1081,13 @@
}
if (env_path_translated != NULL && env_redirect_url !=
NULL &&
- orig_script_filename != NULL &&
script_path_translated != NULL) {
+ orig_script_filename != NULL &&
script_path_translated != NULL
+ ) {
/*
- pretty much apache specific. If we have a
redirect_url
- then our script_filename and script_name
point to the
- php executable
- */
+ * pretty much apache specific. If we have a
redirect_url
+ * then our script_filename and script_name
point to the
+ * php executable
+ */
script_path_translated = env_path_translated;
/* we correct SCRIPT_NAME now in case we don't
have PATH_INFO */
env_script_name = env_redirect_url;
@@ -1095,7 +1108,7 @@
(script_path_translated_len =
strlen(script_path_translated)) > 0 &&
(script_path_translated[script_path_translated_len-1] == '/' ||
#ifdef PHP_WIN32
-
script_path_translated[script_path_translated_len-1] == '\\' ||
+
script_path_translated[script_path_translated_len-1] == '\\' ||
#endif
(real_path =
tsrm_realpath(script_path_translated, NULL TSRMLS_CC)) == NULL)
) {
@@ -1155,9 +1168,8 @@
TRANSLATE_SLASHES(pt);
/* figure out docroot
- SCRIPT_FILENAME minus
SCRIPT_NAME
- */
-
+ * SCRIPT_FILENAME minus
SCRIPT_NAME
+ */
if (env_document_root) {
int l =
strlen(env_document_root);
int path_translated_len
= 0;
@@ -1440,11 +1452,10 @@
#if 0 && defined(PHP_DEBUG)
/* IIS is always making things more difficult. This allows
- us to stop PHP and attach a debugger before much gets started */
+ * us to stop PHP and attach a debugger before much gets started */
{
char szMessage [256];
- wsprintf (szMessage, "Please attach a debugger to the process
0x%X [%d] (%s) and click OK",
- GetCurrentProcessId(), GetCurrentProcessId(),
argv[0]);
+ wsprintf (szMessage, "Please attach a debugger to the process
0x%X [%d] (%s) and click OK", GetCurrentProcessId(), GetCurrentProcessId(),
argv[0]);
MessageBox(NULL, szMessage, "CGI Debug Time!",
MB_OK|MB_SERVICE_NOTIFICATION);
}
#endif
@@ -1477,7 +1488,7 @@
if (!fastcgi) {
/* Make sure we detect we are a cgi - a bit redundancy here,
- but the default case is that we have to check only the first
one. */
+ * but the default case is that we have to check only the first
one. */
if (getenv("SERVER_SOFTWARE") ||
getenv("SERVER_NAME") ||
getenv("GATEWAY_INTERFACE") ||
@@ -1530,8 +1541,8 @@
break;
}
/* if we're started on command line, check to see if
- we are being started as an 'external' fastcgi
- server by accepting a bindpath parameter. */
+ * we are being started as an 'external' fastcgi
+ * server by accepting a bindpath parameter. */
case 'b':
if (!fastcgi) {
bindpath = strdup(php_optarg);
@@ -1573,7 +1584,7 @@
if (!getenv("REDIRECT_STATUS") &&
!getenv ("HTTP_REDIRECT_STATUS") &&
/* this is to allow a different env var to be configured
- in case some server does something different than
above */
+ * in case some server does something different than
above */
(!CGIG(redirect_status_env) ||
!getenv(CGIG(redirect_status_env)))
) {
SG(sapi_headers).http_response_code = 400;
@@ -1589,11 +1600,11 @@
#if defined(ZTS) && !defined(PHP_DEBUG)
/* XXX we're crashing here in msvc6 debug builds at
- php_message_handler_for_zend:839 because
- SG(request_info).path_translated is an invalid
pointer.
- It still happens even though I set it to null, so
something
- weird is going on.
- */
+ * php_message_handler_for_zend:839 because
+ * SG(request_info).path_translated is an invalid
pointer.
+ * It still happens even though I set it to null, so
something
+ * weird is going on.
+ */
tsrm_shutdown();
#endif
return FAILURE;
@@ -1712,7 +1723,7 @@
break;
} else if (exit_signal) {
break;
- }
+ }
}
if (exit_signal) {
#if 0
@@ -1763,7 +1774,7 @@
/* Initialise FastCGI request structure */
#ifdef PHP_WIN32
/* attempt to set security impersonation for fastcgi
- will only happen on NT based OS, others will ignore it. */
+ * will only happen on NT based OS, others will ignore it. */
if (fastcgi && CGIG(impersonate)) {
fcgi_impersonate();
}
@@ -1905,13 +1916,13 @@
}
/* all remaining arguments are part of the
query string
- this section of code concatenates all
remaining arguments
- into a single string, seperating args with a
&
- this allows command lines like:
-
- test.php v1=test v2=hello+world!
- test.php "v1=test&v2=hello world!"
- test.php v1=test "v2=hello world!"
+ * this section of code concatenates all
remaining arguments
+ * into a single string, seperating args with a
&
+ * this allows command lines like:
+ *
+ * test.php v1=test v2=hello+world!
+ * test.php "v1=test&v2=hello world!"
+ * test.php v1=test "v2=hello world!"
*/
if (!SG(request_info).query_string && argc >
php_optind) {
int slen =
strlen(PG(arg_separator).input);
@@ -1957,7 +1968,7 @@
file_handle.free_filename = 0;
/* request startup only after we've done all we can to
- get path_translated */
+ * get path_translated */
if (php_request_startup(TSRMLS_C) == FAILURE) {
if (fastcgi) {
fcgi_finish_request(&request, 1);
@@ -1986,8 +1997,8 @@
PUTS("No input file
specified.\n");
}
/* we want to serve more requests if
this is fastcgi
- so cleanup and continue, request
shutdown is
- handled later */
+ * so cleanup and continue, request
shutdown is
+ * handled later */
if (fastcgi) {
goto fastcgi_request_done;
}
@@ -2063,8 +2074,8 @@
{
char *path_translated;
- /* Go through this trouble so that the
memory manager doesn't warn
- * about SG(request_info).path_translated
leaking
+ /* Go through this trouble so that the memory
manager doesn't warn
+ * about SG(request_info).path_translated
leaking
*/
if (SG(request_info).path_translated) {
path_translated =
strdup(SG(request_info).path_translated);
--
PHP CVS Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php