You are viewing a plain text version of this content. The canonical link for it is here.
Posted to cvs@httpd.apache.org by co...@hyperreal.org on 1998/10/15 09:58:26 UTC
cvs commit: apache-1.3/src/main http_core.c http_protocol.c http_request.c
coar 98/10/15 00:58:26
Modified: src/include http_core.h
src/main http_core.c http_protocol.c http_request.c
Log:
Add a keyword to the Options directive that enables the display
of error-notes text in server-generated 500 status pages. By
default, this information will not be included any more (several
reports of this exposing sensitive information, so our users
don't like it regardless of our opinions). Adding
"Options DebugServerErrors" will enable it. The keyword is
only a placeholder until we come up with a better name.
In addition, the type of allow_options_t has been changed
from a char to an int; I don't think this warrants an MMN
bump because a) that's a core-private type, and b) access to
the information is through ap_allow_options(), which extends it
to an int anyway.
This patch also fixes the problem of partial per-dir config
merges if a parse error occurs somewhere in an .htaccess file
in the tree. One instruction of additional overhead, and now
.htaccess files with ErrorDocument 500 will work properly
for subordinate directories.
PR: 2409, 3173
Revision Changes Path
1.49 +3 -2 apache-1.3/src/include/http_core.h
Index: http_core.h
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/include/http_core.h,v
retrieving revision 1.48
retrieving revision 1.49
diff -u -r1.48 -r1.49
--- http_core.h 1998/08/26 20:01:21 1.48
+++ http_core.h 1998/10/15 07:58:23 1.49
@@ -83,6 +83,7 @@
#define OPT_INCNOEXEC 32
#define OPT_SYM_OWNER 64
#define OPT_MULTI 128
+#define OPT_DEBUG500 256
#define OPT_ALL (OPT_INDEXES|OPT_INCLUDES|OPT_SYM_LINKS|OPT_EXECCGI)
/* options for get_remote_host() */
@@ -156,7 +157,7 @@
/*
* Core is also unlike other modules in being implemented in more than
* one file... so, data structures are declared here, even though most of
- * the code that cares really is in http_core.c. Also, anothre accessor.
+ * the code that cares really is in http_core.c. Also, another accessor.
*/
char *ap_response_code_string (request_rec *r, int error_index);
@@ -165,7 +166,7 @@
/* Per-directory configuration */
-typedef unsigned char allow_options_t;
+typedef unsigned int allow_options_t;
typedef unsigned char overrides_t;
typedef struct {
1.233 +3 -0 apache-1.3/src/main/http_core.c
Index: http_core.c
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/main/http_core.c,v
retrieving revision 1.232
retrieving revision 1.233
diff -u -r1.232 -r1.233
--- http_core.c 1998/10/01 04:52:28 1.232
+++ http_core.c 1998/10/15 07:58:23 1.233
@@ -994,6 +994,9 @@
else if (!strcasecmp(w, "RunScripts")) { /* AI backcompat. Yuck */
opt = OPT_MULTI|OPT_EXECCGI;
}
+ else if (!strcasecmp(w, "DebugServerErrors")) {
+ opt = OPT_DEBUG500;
+ }
else if (!strcasecmp(w, "None")) {
opt = OPT_NONE;
}
1.244 +3 -1 apache-1.3/src/main/http_protocol.c
Index: http_protocol.c
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/main/http_protocol.c,v
retrieving revision 1.243
retrieving revision 1.244
diff -u -r1.243 -r1.244
--- http_protocol.c 1998/10/06 19:06:09 1.243
+++ http_protocol.c 1998/10/15 07:58:24 1.244
@@ -2385,7 +2385,9 @@
" and inform them of the time the error occurred,\n"
"and anything you might have done that may have\n"
"caused the error.<P>\n", NULL);
- if ((error_notes = ap_table_get(r->notes, "error-notes")) != NULL) {
+ if ((ap_allow_options(r) & OPT_DEBUG500)
+ && (error_notes = ap_table_get(r->notes, "error-notes"))
+ != NULL) {
ap_bvputs(fd, error_notes, "<P>\n", NULL);
}
break;
1.134 +6 -4 apache-1.3/src/main/http_request.c
Index: http_request.c
===================================================================
RCS file: /export/home/cvs/apache-1.3/src/main/http_request.c,v
retrieving revision 1.133
retrieving revision 1.134
diff -u -r1.133 -r1.134
--- http_request.c 1998/10/06 19:06:09 1.133
+++ http_request.c 1998/10/15 07:58:24 1.134
@@ -464,10 +464,12 @@
if (res)
return res;
- if (htaccess_conf)
- per_dir_defaults =
- ap_merge_per_dir_configs(r->pool, per_dir_defaults,
- htaccess_conf);
+ if (htaccess_conf) {
+ per_dir_defaults = ap_merge_per_dir_configs(r->pool,
+ per_dir_defaults,
+ htaccess_conf);
+ r->per_dir_config = per_dir_defaults;
+ }
}
}
Re: cvs commit: apache-1.3/src/main http_core.c http_protocol.c http_request.c
Posted by Marc Slemko <ma...@worldgate.com>.
On 15 Oct 1998 coar@hyperreal.org wrote:
> coar 98/10/15 00:58:26
>
> Modified: src/include http_core.h
> src/main http_core.c http_protocol.c http_request.c
> Log:
> Add a keyword to the Options directive that enables the display
Why are we adding options? They are legacy things that should be
replaced, not added to...