diff options
| -rw-r--r-- | main/SAPI.c | 49 | ||||
| -rw-r--r-- | main/SAPI.h | 14 | ||||
| -rw-r--r-- | main/main.c | 129 | ||||
| -rw-r--r-- | main/php_globals.h | 3 | ||||
| -rw-r--r-- | main/php_ini.c | 7 | ||||
| -rw-r--r-- | main/php_version.h | 2 | ||||
| -rw-r--r-- | sapi/apache/mod_php4.c | 4 | 
7 files changed, 130 insertions, 78 deletions
diff --git a/main/SAPI.c b/main/SAPI.c index ed7910cb63..7de50cb951 100644 --- a/main/SAPI.c +++ b/main/SAPI.c @@ -177,10 +177,36 @@ SAPI_POST_READER_FUNC(sapi_read_standard_form_data)  } -SAPI_API void sapi_activate(SLS_D) +/* + * Called from php_request_startup() for every request. + */ +SAPI_API void sapi_activate(SLS_D PLS_DC)  { +	int len; +  	zend_llist_init(&SG(sapi_headers).headers, sizeof(sapi_header_struct), (void (*)(void *)) sapi_free_header, 0);  	SG(sapi_headers).send_default_content_type = 1; + +	if (PG(default_mimetype) != NULL) { +		if (strncasecmp(PG(default_mimetype), "text/", 5) == 0) { +			len = strlen(PG(default_mimetype)) + sizeof(";charset=") + strlen(PG(default_charset)); +			/* add charset for text output */ +			SG(sapi_headers).default_content_type = emalloc(len); +			strcpy(SG(sapi_headers).default_content_type, PG(default_mimetype)); +			strlcat(SG(sapi_headers).default_content_type, ";charset=", len); +			strlcat(SG(sapi_headers).default_content_type, PG(default_charset), len); +		} else { +			/* don't add charset */ +			len = strlen(PG(default_mimetype)) + 1; +			SG(sapi_headers).default_content_type = emalloc(len); +			strcpy(SG(sapi_headers).default_content_type, PG(default_mimetype)); +		} +		SG(sapi_headers).default_content_type[len - 1] = '\0'; +		SG(sapi_headers).default_content_type_size = len; +	} else { +		SG(sapi_headers).default_content_type = NULL; +		SG(sapi_headers).default_content_type_size = 0; +	}  	SG(sapi_headers).http_response_code = 200;  	SG(sapi_headers).http_status_line = NULL;  	SG(headers_sent) = 0; @@ -231,6 +257,9 @@ SAPI_API void sapi_deactivate(SLS_D)  	if (SG(request_info).current_user) {  		efree(SG(request_info).current_user);  	} +	if (SG(sapi_headers).default_content_type) { +		efree(SG(sapi_headers).default_content_type); +	}  	if (sapi_module.deactivate) {  		sapi_module.deactivate(SLS_C);  	} @@ -329,7 +358,6 @@ SAPI_API int sapi_send_headers()  {  	int retval;  	int ret = FAILURE; -	sapi_header_struct default_header = { SAPI_DEFAULT_CONTENT_TYPE, sizeof(SAPI_DEFAULT_CONTENT_TYPE)-1 };  	SLS_FETCH();  	if (SG(headers_sent)) { @@ -357,7 +385,20 @@ SAPI_API int sapi_send_headers()  			}  			zend_llist_apply_with_argument(&SG(sapi_headers).headers, (void (*)(void *, void *)) sapi_module.send_header, SG(server_context));  			if(SG(sapi_headers).send_default_content_type) { -				sapi_module.send_header(&default_header,SG(server_context)); +				if (SG(sapi_headers).default_content_type != NULL) { +					sapi_header_struct default_header; +					int len = SG(sapi_headers).default_content_type_size + sizeof("Content-type: "); + +					strcpy(default_header.header, "Content-type: "); +					strlcat(default_header.header, SG(sapi_headers).default_content_type, len); +					default_header.header[len - 1] = '\0'; +					default_header.header_len = len - 1; +					sapi_module.send_header(&default_header,SG(server_context)); +					efree(default_header.header); +				} else { +					sapi_header_struct default_header = { SAPI_DEFAULT_CONTENT_TYPE_HEADER, sizeof(SAPI_DEFAULT_CONTENT_TYPE_HEADER) - 1 }; +					sapi_module.send_header(&default_header,SG(server_context)); +				}  			}  			sapi_module.send_header(NULL, SG(server_context));  			SG(headers_sent) = 1; @@ -445,4 +486,4 @@ SAPI_API char *sapi_getenv(char *name, int name_len)  	} else {  		return NULL;  	} -}
\ No newline at end of file +} diff --git a/main/SAPI.h b/main/SAPI.h index b357b6f791..8cb83a38f1 100644 --- a/main/SAPI.h +++ b/main/SAPI.h @@ -47,6 +47,8 @@ typedef struct {  typedef struct {  	zend_llist headers;  	int http_response_code; +	char *default_content_type; +	size_t default_content_type_size;  	unsigned char send_default_content_type;  	char *http_status_line;  } sapi_headers_struct; @@ -190,7 +192,10 @@ struct _sapi_post_entry {  #define SAPI_HEADER_DO_SEND				2  #define SAPI_HEADER_SEND_FAILED			3 -#define SAPI_DEFAULT_CONTENT_TYPE	"Content-Type: text/html" +#define SAPI_DEFAULT_MIMETYPE		"text/html" +#define SAPI_DEFAULT_CHARSET		"iso-8859-1" +#define SAPI_DEFAULT_CONTENT_TYPE	SAPI_DEFAULT_MIMETYPE ";charset=" SAPI_DEFAULT_CHARSET +#define SAPI_DEFAULT_CONTENT_TYPE_HEADER "Content-type: " SAPI_DEFAULT_CONTENT_TYPE  #define SAPI_PHP_VERSION_HEADER		"X-Powered-By: PHP/" PHP_VERSION  #define SAPI_POST_READER_FUNC(post_reader) void post_reader(SLS_D) @@ -201,3 +206,10 @@ SAPI_POST_READER_FUNC(sapi_read_standard_form_data);  #define STANDARD_SAPI_MODULE_PROPERTIES NULL  #endif /* _NEW_SAPI_H */ + +/* + * Local variables: + * tab-width: 4 + * c-basic-offset: 4 + * End: + */ diff --git a/main/main.c b/main/main.c index 3ff2e98d6d..bbbd9a4321 100644 --- a/main/main.c +++ b/main/main.c @@ -165,77 +165,66 @@ static PHP_INI_MH(OnUpdateErrorReporting)  #	define DEFAULT_SENDMAIL_PATH NULL  #endif  PHP_INI_BEGIN() -	STD_PHP_INI_BOOLEAN("short_open_tag",	"1",		PHP_INI_ALL,		OnUpdateBool,		short_tags,		php_core_globals,	core_globals) -	STD_PHP_INI_BOOLEAN("asp_tags",			"0",		PHP_INI_ALL,		OnUpdateBool,		asp_tags,		php_core_globals,	core_globals) -	STD_PHP_INI_BOOLEAN("allow_call_time_pass_reference",	"1",	PHP_INI_ALL,	OnUpdateBool,	allow_call_time_pass_reference, php_core_globals, core_globals) -	PHP_INI_ENTRY("precision",			"14",		PHP_INI_ALL,		OnSetPrecision) -	STD_PHP_INI_BOOLEAN("output_buffering",	"0",	PHP_INI_PERDIR|PHP_INI_SYSTEM,	OnUpdateBool,	output_buffering,	php_core_globals,	core_globals) -	STD_PHP_INI_BOOLEAN("implicit_flush",	"0",	PHP_INI_PERDIR|PHP_INI_SYSTEM,	OnUpdateBool,	implicit_flush,		php_core_globals,	core_globals) - -	PHP_INI_ENTRY_EX("highlight.comment",	HL_COMMENT_COLOR,	PHP_INI_ALL,		NULL,		php_ini_color_displayer_cb) -	PHP_INI_ENTRY_EX("highlight.default",	HL_DEFAULT_COLOR,	PHP_INI_ALL,		NULL,		php_ini_color_displayer_cb) -	PHP_INI_ENTRY_EX("highlight.html",		HL_HTML_COLOR,		PHP_INI_ALL,		NULL,		php_ini_color_displayer_cb) -	PHP_INI_ENTRY_EX("highlight.string",	HL_STRING_COLOR,	PHP_INI_ALL,		NULL,		php_ini_color_displayer_cb) -	PHP_INI_ENTRY_EX("highlight.bg",		HL_BG_COLOR,		PHP_INI_ALL,		NULL,		php_ini_color_displayer_cb) -	PHP_INI_ENTRY_EX("highlight.keyword",	HL_KEYWORD_COLOR,	PHP_INI_ALL,		NULL,		php_ini_color_displayer_cb) - -	STD_PHP_INI_BOOLEAN("magic_quotes_gpc",		"1",	PHP_INI_ALL,		OnUpdateBool,		magic_quotes_gpc,		php_core_globals,	core_globals) -	STD_PHP_INI_BOOLEAN("magic_quotes_runtime",	"0",	PHP_INI_ALL,		OnUpdateBool,		magic_quotes_runtime,	php_core_globals,	core_globals) -	STD_PHP_INI_BOOLEAN("magic_quotes_sybase",	"0",	PHP_INI_ALL,		OnUpdateBool,		magic_quotes_sybase,	php_core_globals,	core_globals) - -	STD_PHP_INI_BOOLEAN("safe_mode",		"0",	PHP_INI_SYSTEM,			OnUpdateBool,	safe_mode,				php_core_globals,	core_globals) -	STD_PHP_INI_BOOLEAN("sql.safe_mode",	"0",	PHP_INI_SYSTEM,			OnUpdateBool,	sql_safe_mode,			php_core_globals,	core_globals) -	STD_PHP_INI_ENTRY("safe_mode_exec_dir",	"1",	PHP_INI_SYSTEM,			OnUpdateString,	safe_mode_exec_dir,		php_core_globals,	core_globals) -	STD_PHP_INI_BOOLEAN("enable_dl",		"1",	PHP_INI_SYSTEM,			OnUpdateBool,	enable_dl,				php_core_globals,	core_globals) -	STD_PHP_INI_BOOLEAN("expose_php",		"1",	PHP_INI_SYSTEM,			OnUpdateBool,	expose_php,				php_core_globals,	core_globals) - - -	PHP_INI_ENTRY("SMTP",			"localhost",			PHP_INI_ALL,		NULL) -	PHP_INI_ENTRY("sendmail_path",	DEFAULT_SENDMAIL_PATH,	PHP_INI_SYSTEM,		NULL) -	PHP_INI_ENTRY("sendmail_from",	NULL,					PHP_INI_ALL,		NULL) - -	PHP_INI_ENTRY("error_reporting",	NULL,				PHP_INI_ALL,		OnUpdateErrorReporting) -	STD_PHP_INI_BOOLEAN("display_errors",		"1",			PHP_INI_ALL,		OnUpdateBool,		display_errors,		php_core_globals,	core_globals) -	STD_PHP_INI_BOOLEAN("track_errors",		"0",			PHP_INI_ALL,		OnUpdateBool,		track_errors,		php_core_globals,	core_globals) -	STD_PHP_INI_BOOLEAN("log_errors",			"0",			PHP_INI_ALL,		OnUpdateBool,		log_errors,			php_core_globals,	core_globals) -	STD_PHP_INI_ENTRY("error_log",			NULL,			PHP_INI_ALL,		OnUpdateString,	error_log,			php_core_globals,	core_globals) - - -	STD_PHP_INI_ENTRY("auto_prepend_file",	NULL,			PHP_INI_ALL,		OnUpdateString,	auto_prepend_file,	php_core_globals,	core_globals) -	STD_PHP_INI_ENTRY("auto_append_file",	NULL,			PHP_INI_ALL,		OnUpdateString,	auto_append_file,	php_core_globals,	core_globals) - -	STD_PHP_INI_BOOLEAN("y2k_compliance",		"0",			PHP_INI_ALL,		OnUpdateBool,		y2k_compliance,		php_core_globals,	core_globals) - -	STD_PHP_INI_ENTRY("doc_root",			NULL,			PHP_INI_SYSTEM,		OnUpdateStringUnempty,	doc_root,		php_core_globals,	core_globals) -	STD_PHP_INI_ENTRY("user_dir",			NULL,			PHP_INI_SYSTEM,		OnUpdateStringUnempty,	user_dir,		php_core_globals,	core_globals) -	STD_PHP_INI_ENTRY("include_path",		NULL,			PHP_INI_ALL,		OnUpdateStringUnempty,	include_path,	php_core_globals,	core_globals) -	STD_PHP_INI_ENTRY("open_basedir",		NULL,			PHP_INI_SYSTEM,		OnUpdateStringUnempty,	open_basedir,	php_core_globals,	core_globals) -	STD_PHP_INI_ENTRY("extension_dir",		NULL,			PHP_INI_SYSTEM,		OnUpdateStringUnempty,	extension_dir,	php_core_globals,	core_globals) - -	STD_PHP_INI_ENTRY("upload_tmp_dir",			NULL,			PHP_INI_SYSTEM,		OnUpdateStringUnempty,	upload_tmp_dir,			php_core_globals,	core_globals) -	STD_PHP_INI_ENTRY("upload_max_filesize",	"2097152",		PHP_INI_ALL,		OnUpdateInt,				upload_max_filesize,	php_core_globals,	core_globals) - -	PHP_INI_ENTRY("browscap",			NULL,				PHP_INI_SYSTEM,		NULL) - -	PHP_INI_ENTRY_EX("define_syslog_variables",	"0",		PHP_INI_ALL,		NULL,	php_ini_boolean_displayer_cb) - -	STD_PHP_INI_ENTRY("max_execution_time",		"30",			PHP_INI_ALL,		OnUpdateInt, 				max_execution_time,	php_core_globals,	core_globals) +	PHP_INI_ENTRY_EX("define_syslog_variables",	"0",				PHP_INI_ALL,	NULL,			php_ini_boolean_displayer_cb)			 +	PHP_INI_ENTRY_EX("highlight.bg",			HL_BG_COLOR,		PHP_INI_ALL,	NULL,			php_ini_color_displayer_cb) +	PHP_INI_ENTRY_EX("highlight.comment",		HL_COMMENT_COLOR,	PHP_INI_ALL,	NULL,			php_ini_color_displayer_cb) +	PHP_INI_ENTRY_EX("highlight.default",		HL_DEFAULT_COLOR,	PHP_INI_ALL,	NULL,			php_ini_color_displayer_cb) +	PHP_INI_ENTRY_EX("highlight.html",			HL_HTML_COLOR,		PHP_INI_ALL,	NULL,			php_ini_color_displayer_cb) +	PHP_INI_ENTRY_EX("highlight.keyword",		HL_KEYWORD_COLOR,	PHP_INI_ALL,	NULL,			php_ini_color_displayer_cb) +	PHP_INI_ENTRY_EX("highlight.string",		HL_STRING_COLOR,	PHP_INI_ALL,	NULL,			php_ini_color_displayer_cb) + +	STD_PHP_INI_BOOLEAN("allow_call_time_pass_reference","1",PHP_INI_ALL,		OnUpdateBool,	allow_call_time_pass_reference,	php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("asp_tags",				"0",		PHP_INI_ALL,		OnUpdateBool,			asp_tags,				php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("display_errors",		"1",		PHP_INI_ALL,		OnUpdateBool,			display_errors,			php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("enable_dl",			"1",		PHP_INI_SYSTEM,		OnUpdateBool,			enable_dl,				php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("expose_php",			"1",		PHP_INI_SYSTEM,		OnUpdateBool,			expose_php,				php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("ignore_user_abort",	"1",		PHP_INI_ALL,		OnUpdateBool,			ignore_user_abort,		php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("implicit_flush",		"0",		PHP_INI_PERDIR|PHP_INI_SYSTEM,OnUpdateBool,	implicit_flush,			php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("log_errors",			"0",		PHP_INI_ALL,		OnUpdateBool,			log_errors,				php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("magic_quotes_gpc",		"1",		PHP_INI_ALL,		OnUpdateBool,			magic_quotes_gpc,		php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("magic_quotes_runtime",	"0",		PHP_INI_ALL,		OnUpdateBool,			magic_quotes_runtime,	php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("magic_quotes_sybase",	"0",		PHP_INI_ALL,		OnUpdateBool,			magic_quotes_sybase,	php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("output_buffering",		"0",		PHP_INI_PERDIR|PHP_INI_SYSTEM,OnUpdateBool,	output_buffering,		php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("register_argc_argv",	"1",		PHP_INI_ALL,		OnUpdateBool,			register_argc_argv,		php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("register_globals",		"1",		PHP_INI_ALL,		OnUpdateBool,			register_globals,		php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("safe_mode",			"0",		PHP_INI_SYSTEM,		OnUpdateBool,			safe_mode,				php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("short_open_tag",		"1",		PHP_INI_ALL,		OnUpdateBool,			short_tags,				php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("sql.safe_mode",		"0",		PHP_INI_SYSTEM,		OnUpdateBool,			sql_safe_mode,			php_core_globals,	core_globals) +	STD_PHP_INI_BOOLEAN("track_errors",			"0",		PHP_INI_ALL,		OnUpdateBool,			track_errors,			php_core_globals,	core_globals) +#if PHP_TRACK_VARS /* "cc -32" on IRIX 6.4 does not like (PHP_TRACK_VARS?"1":"0") - thies 991004 */								 +	STD_PHP_INI_BOOLEAN("track_vars",			"1",		PHP_INI_ALL,		OnUpdateBool,			track_vars,				php_core_globals,	core_globals) +#else																															 +	STD_PHP_INI_BOOLEAN("track_vars",			"0",		PHP_INI_ALL,		OnUpdateBool,			track_vars,				php_core_globals,	core_globals) +#endif																															 +	STD_PHP_INI_BOOLEAN("y2k_compliance",		"0",		PHP_INI_ALL,		OnUpdateBool,			y2k_compliance,			php_core_globals,	core_globals) + +	STD_PHP_INI_ENTRY("arg_separator",			"&",		PHP_INI_ALL,		OnUpdateStringUnempty,	arg_separator,			php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("auto_append_file",		NULL,		PHP_INI_ALL,		OnUpdateString,			auto_append_file,		php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("auto_prepend_file",		NULL,		PHP_INI_ALL,		OnUpdateString,			auto_prepend_file,		php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("doc_root",				NULL,		PHP_INI_SYSTEM,		OnUpdateStringUnempty,	doc_root,				php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("default_charset", SAPI_DEFAULT_MIMETYPE,	PHP_INI_ALL,	OnUpdateStringUnempty,	default_charset,		php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("default_mimetype",SAPI_DEFAULT_CHARSET,	PHP_INI_ALL,	OnUpdateStringUnempty,	default_mimetype,		php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("error_log",				NULL,		PHP_INI_ALL,		OnUpdateString,			error_log,				php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("extension_dir",			NULL,		PHP_INI_SYSTEM,		OnUpdateStringUnempty,	extension_dir,			php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("gpc_order",				"GPC",		PHP_INI_ALL,		OnUpdateStringUnempty,	gpc_order,				php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("include_path",			NULL,		PHP_INI_ALL,		OnUpdateStringUnempty,	include_path,			php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("max_execution_time",		"30",		PHP_INI_ALL,		OnUpdateInt, 			max_execution_time,		php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("open_basedir",			NULL,		PHP_INI_SYSTEM,		OnUpdateStringUnempty,	open_basedir,			php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("safe_mode_exec_dir",		"1",		PHP_INI_SYSTEM,		OnUpdateString,			safe_mode_exec_dir,		php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("upload_max_filesize",	"2097152",	PHP_INI_ALL,		OnUpdateInt,			upload_max_filesize,	php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("upload_tmp_dir",			NULL,		PHP_INI_SYSTEM,		OnUpdateStringUnempty,	upload_tmp_dir,			php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("user_dir",				NULL,		PHP_INI_SYSTEM,		OnUpdateStringUnempty,	user_dir,				php_core_globals,	core_globals) +	STD_PHP_INI_ENTRY("variables_order",		NULL,		PHP_INI_ALL,		OnUpdateStringUnempty,	variables_order,		php_core_globals,	core_globals) + +	PHP_INI_ENTRY("SMTP",						"localhost",PHP_INI_ALL,		NULL) +	PHP_INI_ENTRY("browscap",					NULL,		PHP_INI_SYSTEM,		NULL) +	PHP_INI_ENTRY("error_reporting",			NULL,		PHP_INI_ALL,		OnUpdateErrorReporting)  #if MEMORY_LIMIT -	PHP_INI_ENTRY("memory_limit",			"8388608",		PHP_INI_ALL,		OnChangeMemoryLimit) +	PHP_INI_ENTRY("memory_limit",				"8388608",	PHP_INI_ALL,		OnChangeMemoryLimit)  #endif - -#if PHP_TRACK_VARS /* "cc -32" on IRIX 6.4 does not like (PHP_TRACK_VARS?"1":"0") - thies 991004 */ -	STD_PHP_INI_BOOLEAN("track_vars",			"1",			PHP_INI_ALL,		OnUpdateBool,				track_vars,		php_core_globals,	core_globals) -#else -	STD_PHP_INI_BOOLEAN("track_vars",			"0",			PHP_INI_ALL,		OnUpdateBool,				track_vars,		php_core_globals,	core_globals) -#endif - -	STD_PHP_INI_BOOLEAN("register_globals",		"1",			PHP_INI_ALL,		OnUpdateBool,			register_globals,	php_core_globals,	core_globals) -	STD_PHP_INI_BOOLEAN("register_argc_argv",	"1",			PHP_INI_ALL,		OnUpdateBool,			register_argc_argv,	php_core_globals,	core_globals) -	STD_PHP_INI_ENTRY("gpc_order",				"GPC",			PHP_INI_ALL,		OnUpdateStringUnempty,	gpc_order,			php_core_globals,	core_globals) -	STD_PHP_INI_ENTRY("variables_order",		NULL,			PHP_INI_ALL,		OnUpdateStringUnempty,	variables_order,	php_core_globals,	core_globals) -	STD_PHP_INI_ENTRY("arg_separator",			"&",			PHP_INI_ALL,		OnUpdateStringUnempty,	arg_separator,		php_core_globals,	core_globals) -	STD_PHP_INI_BOOLEAN("ignore_user_abort",	"1",			PHP_INI_ALL,		OnUpdateBool,			ignore_user_abort,		php_core_globals,	core_globals) +	PHP_INI_ENTRY("precision",					"14",		PHP_INI_ALL,		OnSetPrecision) +	PHP_INI_ENTRY("sendmail_from",				NULL,		PHP_INI_ALL,		NULL) +	PHP_INI_ENTRY("sendmail_path",	DEFAULT_SENDMAIL_PATH,	PHP_INI_SYSTEM,		NULL)  PHP_INI_END() @@ -627,7 +616,7 @@ int php_request_startup(CLS_D ELS_DC PLS_DC SLS_DC)  	PG(header_is_being_sent) = 0;  	zend_activate(CLS_C ELS_CC); -	sapi_activate(SLS_C);	 +	sapi_activate(SLS_C PLS_CC);	  	php_set_timeout(PG(max_execution_time)); diff --git a/main/php_globals.h b/main/php_globals.h index 5297e59d50..b7d1b391a4 100644 --- a/main/php_globals.h +++ b/main/php_globals.h @@ -83,6 +83,9 @@ struct _php_core_globals {  	char *gpc_order;  	char *variables_order; +	char *default_mimetype; +	char *default_charset; +  	zend_bool expose_php;  	zend_bool track_vars; diff --git a/main/php_ini.c b/main/php_ini.c index bec317b56a..cfd6f97058 100644 --- a/main/php_ini.c +++ b/main/php_ini.c @@ -480,3 +480,10 @@ PHPAPI PHP_INI_MH(OnUpdateStringUnempty)  	*p = new_value;  	return SUCCESS;  } + +/* + * Local variables: + * tab-width: 4 + * c-basic-offset: 4 + * End: + */ diff --git a/main/php_version.h b/main/php_version.h index 001b79478d..7a86df4256 100644 --- a/main/php_version.h +++ b/main/php_version.h @@ -1,3 +1,3 @@  /* automatically generated by configure */ -/* edit configure.in.in to change version number */ +/* edit configure.in to change version number */  #define PHP_VERSION "4.0b5-dev" diff --git a/sapi/apache/mod_php4.c b/sapi/apache/mod_php4.c index 25edeb4d53..226ccbd1b8 100644 --- a/sapi/apache/mod_php4.c +++ b/sapi/apache/mod_php4.c @@ -428,7 +428,7 @@ int send_php(request_rec *r, int display_source_mode, char *filename)  	 * directive, then decline to handle this request  	 */  	if (!php_apache_info.engine) { -		r->content_type = "text/html;charset=iso-8859-1"; +		r->content_type = SAPI_DEFAULT_CONTENT_TYPE; /* XXX FIXME use default_{mimetype|charset} directives */  		r->allowed |= (1 << METHODS) - 1;  		return DECLINED;  	} @@ -460,7 +460,7 @@ int send_php(request_rec *r, int display_source_mode, char *filename)  	}  	/* Assume output will be HTML.  Individual scripts may change this   	   further down the line */ -	r->content_type = "text/html;charset=iso-8859-1"; +	r->content_type = SAPI_DEFAULT_CONTENT_TYPE; /* XXX FIXME use default_{mimetype|charset} directives */  	/* Init timeout */  	hard_timeout("send", r);  | 
