Re: [PHP4BETA] cvs: /php4 SAPI.c SAPI.h main.c php_globals.h php_ini.c php_version.h /php4/sapi/apache mod_php4.c
| From: | Zeev Suraski | Date: | Thu, 24 Feb 2000 23:28:23 +0000 |
| Subject: | Re: [PHP4BETA] cvs: /php4 SAPI.c SAPI.h main.c php_globals.h php_ini.c php_version.h /php4/sapi/apache mod_php4.c | ||
| References: | 1 | Groups: | php.version4 |
| Request: | Send a blank email to php-version4+get-10906@lists.php.net to get a copy of this message | ||
I still think that having a charset going out by default is a bad thing to
do. It would mess many people up. Either way, we should definitely make
it possible not to send a charset (I only glanced at the patch, so if it's
possible already, ignore that).
Zeev
On Thu, 24 Feb 2000, Stig Bakken wrote:
> ssb Thu Feb 24 14:01:17 2000 EDT
>
> Modified files:
> /php4 SAPI.c SAPI.h main.c php_globals.h php_ini.c php_version.h
> /php4/sapi/apache mod_php4.c
> Log:
> started implementing directives for default mimetype/charset
>
> Index: php4/SAPI.c
> diff -u php4/SAPI.c:1.58 php4/SAPI.c:1.59
> --- php4/SAPI.c:1.58 Sat Feb 19 15:21:25 2000
> +++ php4/SAPI.c Thu Feb 24 14:00:47 2000
> @@ -177,10 +177,36 @@
> }
>
>
> -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 @@
> 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 @@
> {
> 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 @@
> }
> 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 @@
> } else {
> return NULL;
> }
> -}
> \ No newline at end of file
> +}
> Index: php4/SAPI.h
> diff -u php4/SAPI.h:1.39 php4/SAPI.h:1.40
> --- php4/SAPI.h:1.39 Sat Feb 19 15:21:25 2000
> +++ php4/SAPI.h Thu Feb 24 14:00:47 2000
> @@ -47,6 +47,8 @@
> 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 @@
> #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 @@
> #define STANDARD_SAPI_MODULE_PROPERTIES NULL
>
> #endif /* _NEW_SAPI_H */
> +
> +/*
> + * Local variables:
> + * tab-width: 4
> + * c-basic-offset: 4
> + * End:
> + */
> Index: php4/main.c
> diff -u php4/main.c:1.214 php4/main.c:1.215
> --- php4/main.c:1.214 Thu Feb 24 07:41:34 2000
> +++ php4/main.c Thu Feb 24 14:00:47 2000
> @@ -19,7 +19,7 @@
> */
>
>
> -/* $Id: main.c,v 1.214 2000/02/24 15:41:34 andrei Exp $ */
> +/* $Id: main.c,v 1.215 2000/02/24 22:00:47 ssb Exp $ */
>
>
> #include <stdio.h>
> @@ -165,77 +165,66 @@
> # 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)
> -#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)
>
> + PHP_INI_ENTRY("memory_limit", "8388608", PHP_INI_ALL, OnChangeMemoryLimit)
> #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 @@
> 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));
>
> Index: php4/php_globals.h
> diff -u php4/php_globals.h:1.41 php4/php_globals.h:1.42
> --- php4/php_globals.h:1.41 Sat Feb 19 15:21:25 2000
> +++ php4/php_globals.h Thu Feb 24 14:00:47 2000
> @@ -83,6 +83,9 @@
> char *gpc_order;
> char *variables_order;
>
> + char *default_mimetype;
> + char *default_charset;
> +
> zend_bool expose_php;
>
> zend_bool track_vars;
> Index: php4/php_ini.c
> diff -u php4/php_ini.c:1.31 php4/php_ini.c:1.32
> --- php4/php_ini.c:1.31 Sat Feb 19 15:21:25 2000
> +++ php4/php_ini.c Thu Feb 24 14:00:47 2000
> @@ -480,3 +480,10 @@
> *p = new_value;
> return SUCCESS;
> }
> +
> +/*
> + * Local variables:
> + * tab-width: 4
> + * c-basic-offset: 4
> + * End:
> + */
> Index: php4/php_version.h
> diff -u php4/php_version.h:1.24 php4/php_version.h:1.25
> --- php4/php_version.h:1.24 Wed Feb 23 10:57:08 2000
> +++ php4/php_version.h Thu Feb 24 14:00:47 2000
> @@ -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"
> Index: php4/sapi/apache/mod_php4.c
> diff -u php4/sapi/apache/mod_php4.c:1.34 php4/sapi/apache/mod_php4.c:1.35
> --- php4/sapi/apache/mod_php4.c:1.34 Sat Feb 19 15:41:24 2000
> +++ php4/sapi/apache/mod_php4.c Thu Feb 24 14:00:47 2000
> @@ -17,7 +17,7 @@
> | PHP 4.0 patches by Zeev Suraski <zeev@zend.com> |
> +----------------------------------------------------------------------+
> */
> -/* $Id: mod_php4.c,v 1.34 2000/02/19 23:41:24 zeev Exp $ */
> +/* $Id: mod_php4.c,v 1.35 2000/02/24 22:00:47 ssb Exp $ */
>
> #define NO_REGEX_EXTRA_H
>
> @@ -428,7 +428,7 @@
> * 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 @@
> }
> /* 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);
>
>
>
>
--
Zeev Suraski <zeev@zend.com>
http://www.zend.com/