cvs commit: apache-1.3 STATUS
rse 98/03/27 00:03:23 Modified:.STATUS Log: update Revision ChangesPath 1.222 +5 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.221 retrieving revision 1.222 diff -u -r1.221 -r1.222 --- STATUS1998/03/26 20:08:48 1.221 +++ STATUS1998/03/27 08:03:22 1.222 @@ -110,6 +110,11 @@ * Dean's protect against FD_SETSIZE mismatches * Ralf's fallback stategy because of HIDE for loading shared object modules * Martin's fix to allow %2F chars in proxy requests and in the uri query part +* fix to mark listening sockets for closure in the parent after a SIGHUP +* Dean's clean up undefined signals on some platforms (SCO, BeOS). +* Dean's fix for making work the `HostnameLookups Off' +* Dean's mark of a few bitfields as signed to ensure correct code. +* Dean's changes to scoreboard defs which helps gcc generate better code. Available Patches:
cvs commit: apache-1.3 STATUS
rse 98/03/27 00:09:01 Modified:.STATUS Log: votes Revision ChangesPath 1.223 +9 -1 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.222 retrieving revision 1.223 diff -u -r1.222 -r1.223 --- STATUS1998/03/27 08:03:22 1.222 +++ STATUS1998/03/27 08:09:00 1.223 @@ -416,11 +416,19 @@ Proposal: the next release should be named 1.3.0 and should be labelled stable on unix, beta on NT. +1: Dean + -0: Ralf (because we've done a lot of good but new stuff + in 1.3b6-dev now and we should give us at least + one pre-release before the so-called release [1.3.0]. + But we should not take again many months. 1.3.0 should + be kicked out as soon as possible after 1.3b6 is out. So + we should commit APACI, test a few days again, release + 1.3b6, look for the responses, fix a few bugs and then + roll 1.3.0 out of the door marked as stated above) Proposal: the next release should be named 1.3b6, and labelled release candidate on unix, beta on NT. The release after that will be called 1.3.0 stable on unix, beta on NT. - +1: Jim + +1: Jim, Ralf +0: Dean Win32 specific issues:
cvs commit: apache-1.3/src/main http_main.c
dgaudet 98/03/27 00:51:46 Modified:src/main http_main.c Log: Verbose error messages are so much more useful to our users... and to us as well because they can avert bug reports. Fix a few more... there's dozens more that could do with improvements. Revision ChangesPath 1.314 +7 -3 apache-1.3/src/main/http_main.c Index: http_main.c === RCS file: /export/home/cvs/apache-1.3/src/main/http_main.c,v retrieving revision 1.313 retrieving revision 1.314 diff -u -r1.313 -r1.314 --- http_main.c 1998/03/26 21:20:50 1.313 +++ http_main.c 1998/03/27 08:51:39 1.314 @@ -2473,7 +2473,9 @@ if ((ent = getpwuid(uid)) == NULL) { aplog_error(APLOG_MARK, APLOG_ALERT, server_conf, - getpwuid: couldn't determine user name from uid); + getpwuid: couldn't determine user name from uid %u, + you probably need to modify the User directive, + (unsigned)uid); exit(1); } @@ -2489,7 +2491,8 @@ if (initgroups(name, group_id) == -1) { aplog_error(APLOG_MARK, APLOG_ALERT, server_conf, - initgroups: unable to set groups); + initgroups: unable to set groups for User %s + and Group %u, name, (unsigned)group_id); exit(1); } #ifdef MULTIPLE_GROUPS @@ -2501,7 +2504,8 @@ #endif if (setgid(group_id) == -1) { aplog_error(APLOG_MARK, APLOG_ALERT, server_conf, - setgid: unable to set group id); + setgid: unable to set group id to Group %u, + (unsigned)group_id); exit(1); } #endif
cvs commit: apache-1.3/src/main gen_test_char.c gen_uri_delims.c util_uri.c Makefile.tmpl
rse 98/03/27 02:06:55 Modified:src/main gen_test_char.c gen_uri_delims.c util_uri.c Makefile.tmpl Log: Dr. Cosmetics: - avoid gcc complains by define main as at the other places in the two new generation programs - make uri_delim as all-in-one as test_char (#include in the middle of a struct definition is a little bit ugly) - make the generated files readable even not editable - remove double-defined dependencies in Makefile.tmpl (because they are already part of the make depend generated list) PS: There seems to be another problem here: The files are generated in main/ and included with #include Although we only have -I../include and -I../os/unix but not -I. ! Is it really portable for all compilers to assume the CWD is searched for #include ... even if no -I. is used? I personally would change it so that the files are generated in ../include/. Comments? Revision ChangesPath 1.2 +7 -4 apache-1.3/src/main/gen_test_char.c Index: gen_test_char.c === RCS file: /export/home/cvs/apache-1.3/src/main/gen_test_char.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- gen_test_char.c 1998/03/26 04:58:39 1.1 +++ gen_test_char.c 1998/03/27 10:06:49 1.2 @@ -9,7 +9,7 @@ #define T_OS_ESCAPE_PATH (0x04) #define T_HTTP_TOKEN_STOP(0x08) -void main(void) +int main(int argc, char *argv[]) { unsigned c; unsigned char flags; @@ -22,7 +22,7 @@ #define T_HTTP_TOKEN_STOP (%u)\n \n static const unsigned char test_char_table[256] = {\n -0,\n, +0,, T_ESCAPE_SHELL_CMD, T_ESCAPE_PATH_SEGMENT, T_OS_ESCAPE_PATH, @@ -33,6 +33,8 @@ for (c = 1; c 256; ++c) { flags = 0; + if (c % 20 == 0) + printf(\n); /* escape_shell_cmd */ if (strchr(;`'\|*?~^()[]{}$\\\n, c)) { @@ -51,8 +53,9 @@ if (iscntrl(c) || strchr( \t()@,;:\\/[]?={}, c)) { flags |= T_HTTP_TOKEN_STOP; } - printf(%u%c\n, flags, (c 255) ? ',' : ' '); + printf(%u%c, flags, (c 255) ? ',' : ' '); + } -printf(};\n); +printf(\n};\n); exit(0); } 1.2 +6 -2 apache-1.3/src/main/gen_uri_delims.c Index: gen_uri_delims.c === RCS file: /export/home/cvs/apache-1.3/src/main/gen_uri_delims.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -r1.1 -r1.2 --- gen_uri_delims.c 1998/03/26 04:58:39 1.1 +++ gen_uri_delims.c 1998/03/27 10:06:51 1.2 @@ -4,14 +4,17 @@ * marked interesting... for the uri parsing process. */ -void main(void) +int main(int argc, char *argv[]) { int i; char *value; printf(/* this file is automatically generated by gen_uri_delims, do not edit */\n); +printf(static const unsigned char uri_delims[256] = {); for (i = 0; i 256; ++i) { + if (i % 20 == 0) + printf(\n); switch (i) { case ':': value = T_COLON; break; case '/': value = T_SLASH; break; @@ -20,7 +23,8 @@ case '\0': value = T_NUL;break; default:value = 0;break; } - printf(%s%c\n, value, (i 255) ? ',' : ' '); + printf(%s%c, value, (i 255) ? ',' : ' '); } +printf(\n};\n); exit(0); } 1.16 +0 -2 apache-1.3/src/main/util_uri.c Index: util_uri.c === RCS file: /export/home/cvs/apache-1.3/src/main/util_uri.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- util_uri.c1998/03/26 04:58:41 1.15 +++ util_uri.c1998/03/27 10:06:52 1.16 @@ -393,9 +393,7 @@ #define T_NUL0x80/* '\0' */ /* the uri_delims.h file is autogenerated by gen_uri_delims.c */ -static const unsigned char uri_delims[256] = { #include uri_delims.h -}; /* it works like this: if (uri_delims[ch] NOTEND_foobar) { 1.21 +0 -4 apache-1.3/src/main/Makefile.tmpl Index: Makefile.tmpl === RCS file: /export/home/cvs/apache-1.3/src/main/Makefile.tmpl,v retrieving revision 1.20 retrieving revision 1.21 diff -u -r1.20 -r1.21 --- Makefile.tmpl 1998/03/26 04:58:39 1.20 +++ Makefile.tmpl 1998/03/27 10:06:53 1.21 @@ -36,15 +36,11 @@ uri_delims.h: gen_uri_delims ./gen_uri_delims uri_delims.h -util_uri.o: uri_delims.h - gen_uri_delims: gen_uri_delims.o $(CC) $(CFLAGS) $(LDFLAGS) -o gen_uri_delims gen_uri_delims.o $(LIBS)
cvs commit: apache-1.3/conf httpd.conf-dist
rse 98/03/27 03:00:22 Modified:conf httpd.conf-dist Log: Make sure the user finds the location where he has to put the LoadModule lines when using shared objects. Because these lines have to be in front of any directives which are contained in the module itself it is recommended to load those modules at the top of httpd.conf. Revision ChangesPath 1.23 +7 -0 apache-1.3/conf/httpd.conf-dist Index: httpd.conf-dist === RCS file: /export/home/cvs/apache-1.3/conf/httpd.conf-dist,v retrieving revision 1.22 retrieving revision 1.23 diff -u -r1.22 -r1.23 --- httpd.conf-dist 1998/03/06 19:56:24 1.22 +++ httpd.conf-dist 1998/03/27 11:00:22 1.23 @@ -7,6 +7,13 @@ # Originally by Rob McCool +# Shared Object Module Loading: +# To be able to use the functionality of a module which was built +# as a shared object you have to place corresponding `LoadModule' +# lines at this location so the directives contained in it are +# actually available _before_ they are used. +#LoadModule config_log_module libexec/mod_log_config.so + # ServerType is either inetd, or standalone. ServerType standalone
cvs commit: apache-1.3 STATUS
randy 98/03/27 06:22:37 Modified:.STATUS Log: The first thunderstorm of the year right now... Revision ChangesPath 1.224 +16 -3 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.223 retrieving revision 1.224 diff -u -r1.223 -r1.224 --- STATUS1998/03/27 08:09:00 1.223 +++ STATUS1998/03/27 14:22:36 1.224 @@ -269,13 +269,20 @@ worth adding it by weighting on the advantages and disadvantages. Votes for including APACI (in general): - Ralf +1, Dean +1, Roy +1, Paul +1, Martin +1, Jim +1, Chuck +0 + Ralf +1, Dean +1, Roy +1, Paul +1, Martin +1, Jim +1, Chuck +0, + Randy +0 Votes for commit variants: - CV1: Ralf +1, Dean +1, Roy +1, Paul +1, Martin +1 Jim +1, Chuck +0 + CV1: Ralf +1, Dean +1, Roy +1, Paul +1, Martin +1 Jim +1, Chuck +0, + Randy +0 CV2: Ralf +0 Notes: + Randy: Given the amount of work that Ralf has clearly done on this, + I would not veto it. However, I don't think this is something + that should go in for 1.3.0 general and I don't feel that the + current system is lacking enough that it needs replacing. + We're asking for trouble. Chuck: What the heck. We're not releasing soon anymore. Let users get used to it if there's time. Jim: [the +1] iff we remove the present top-level build @@ -428,8 +435,14 @@ Proposal: the next release should be named 1.3b6, and labelled release candidate on unix, beta on NT. The release after that will be called 1.3.0 stable on unix, beta on NT. - +1: Jim, Ralf + +1: Jim, Ralf, Randy +0: Dean + +Notes: +Randy: APACI should go in a beta release if it is to go in at all. + I would also argue that 1.3b6 is _not_ stable. I've been + having real fits keeping it alive on a dual processor + machine. Could be OS problems.. Win32 specific issues:
cvs commit: apache-1.3/src/modules/standard mod_rewrite.c
rse 98/03/27 07:43:55 Modified:.STATUS src CHANGES src/modules/standard mod_rewrite.c Log: Adjust the proxy pass-through feature in mod_rewrite to fit the requirements of mod_proxy again. Revision ChangesPath 1.225 +1 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.224 retrieving revision 1.225 diff -u -r1.224 -r1.225 --- STATUS1998/03/27 14:22:36 1.224 +++ STATUS1998/03/27 15:43:48 1.225 @@ -115,6 +115,7 @@ * Dean's fix for making work the `HostnameLookups Off' * Dean's mark of a few bitfields as signed to ensure correct code. * Dean's changes to scoreboard defs which helps gcc generate better code. +* Ralf's fix for QUERY_STRING and the proxy pass-through of mod_rewrite Available Patches: 1.738 +4 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.737 retrieving revision 1.738 diff -u -r1.737 -r1.738 --- CHANGES 1998/03/26 21:20:46 1.737 +++ CHANGES 1998/03/27 15:43:49 1.738 @@ -1,5 +1,9 @@ Changes with Apache 1.3b6 + *) Fix the proxy pass-through feature of mod_rewrite for the case of + existing QUERY_STRING now that mod_proxy was recently changed because of + the new URL parsing stuff. [Ralf S. Engelschall] + *) A few changes to scoreboard definitions which helps gcc generate better code. [Dean Gaudet] 1.94 +10 -9 apache-1.3/src/modules/standard/mod_rewrite.c Index: mod_rewrite.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_rewrite.c,v retrieving revision 1.93 retrieving revision 1.94 diff -u -r1.93 -r1.94 --- mod_rewrite.c 1998/03/13 19:20:42 1.93 +++ mod_rewrite.c 1998/03/27 15:43:53 1.94 @@ -1039,10 +1039,11 @@ /* make sure the QUERY_STRING and * PATH_INFO parts get incorporated */ -r-filename = pstrcat(r-pool, r-filename, - r-path_info ? r-path_info : , - r-args ? ? : NULL, r-args, - NULL); +if (r-path_info != NULL) +r-filename = pstrcat(r-pool, r-filename, r-path_info, NULL); +if (r-args != NULL +r-uri == r-unparsed_uri /* see proxy_http:proxy_http_canon() */) +r-filename = pstrcat(r-pool, r-filename, ?, r-args, NULL); /* now make sure the request gets handled by the proxy handler */ r-proxyreq = 1; @@ -1281,12 +1282,12 @@ /* make sure the QUERY_STRING and * PATH_INFO parts get incorporated + * (r-path_info was already appended by the + * rewriting engine because of the per-dir context!) */ -r-filename = pstrcat(r-pool, r-filename, - /* r-path_info was already - * appended by the rewriting engine - * because of the per-dir context! */ - r-args ? ? : NULL, r-args, NULL); +if (r-args != NULL +r-uri == r-unparsed_uri /* see proxy_http:proxy_http_canon() */) +r-filename = pstrcat(r-pool, r-filename, ?, r-args, NULL); /* now make sure the request gets handled by the proxy handler */ r-proxyreq = 1;
cvs commit: apache-1.3/src/modules/standard mod_rewrite.c
rse 98/03/27 07:50:25 Modified:src/modules/standard mod_rewrite.c Log: just a few whitespace cosmetics... Revision ChangesPath 1.95 +4 -4 apache-1.3/src/modules/standard/mod_rewrite.c Index: mod_rewrite.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_rewrite.c,v retrieving revision 1.94 retrieving revision 1.95 diff -u -r1.94 -r1.95 --- mod_rewrite.c 1998/03/27 15:43:53 1.94 +++ mod_rewrite.c 1998/03/27 15:50:16 1.95 @@ -801,7 +801,7 @@ status = atoi(val); if (!is_HTTP_REDIRECT(status)) return RewriteRule: invalid HTTP response code - for flag 'R'; + for flag 'R'; cfg-forced_responsecode = status; } } @@ -820,7 +820,7 @@ else if ( strcasecmp(key, type) == 0 || strcasecmp(key, T) == 0 ) { cfg-forced_mimetype = pstrdup(p, val); - str_tolower(cfg-forced_mimetype); +str_tolower(cfg-forced_mimetype); } else if ( strcasecmp(key, env) == 0 || strcasecmp(key, E) == 0 ) { @@ -3439,7 +3439,7 @@ /* file stuff */ else if (strcasecmp(var, SCRIPT_USER) == 0) { - result = unknown; +result = unknown; if (r-finfo.st_mode != 0) { if ((pw = getpwuid(r-finfo.st_uid)) != NULL) { result = pw-pw_name; @@ -3454,7 +3454,7 @@ } } else if (strcasecmp(var, SCRIPT_GROUP) == 0) { - result = unknown; +result = unknown; if (r-finfo.st_mode != 0) { if ((gr = getgrgid(r-finfo.st_gid)) != NULL) { result = gr-gr_name;
cvs commit: apache-1.3 STATUS
jim 98/03/27 08:30:40 Modified:.STATUS Log: Just some general feelings about APACI and how it affects our general c-t-r process and how some of us knew that this was bound to happen Revision ChangesPath 1.226 +6 -1 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.225 retrieving revision 1.226 diff -u -r1.225 -r1.226 --- STATUS1998/03/27 15:43:48 1.225 +++ STATUS1998/03/27 16:30:33 1.226 @@ -287,7 +287,12 @@ Chuck: What the heck. We're not releasing soon anymore. Let users get used to it if there's time. Jim: [the +1] iff we remove the present top-level build - capability AND we clearly document the changes + capability AND we clearly document the changes. Also, +I agree with Randy that the amount of work that Ralf +put into it kind of forces our hand... I don't want +this to start a precedent and it _was_ one of the +major discussion points on the Ideas get discussed +first issue with c-t-r... Ralf: Sure, top-level Makefile+src/helpers/InstallApache is removed and the current top-level README file is extended by documenting APACI and the manual build-only approach with
cvs commit: apache-1.3/src/main http_main.c
dgaudet 98/03/27 12:18:52 Modified:src CHANGES src/main http_main.c Log: SIGXCPU and SIGXFSZ are now reset to SIG_DFL at boot-time. This is necessary on at least Solaris where the /etc/rc?.d scripts are run with these signals ignored, and SIG_IGN settings are maintained across exec(). PR: 2009 Submitted by: Rein Tollevik [EMAIL PROTECTED] Revision ChangesPath 1.740 +6 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.739 retrieving revision 1.740 diff -u -r1.739 -r1.740 --- CHANGES 1998/03/27 17:37:31 1.739 +++ CHANGES 1998/03/27 20:18:46 1.740 @@ -1,5 +1,11 @@ Changes with Apache 1.3b6 + *) SIGXCPU and SIGXFSZ are now reset to SIG_DFL at boot-time. This + is necessary on at least Solaris where the /etc/rc?.d scripts + are run with these signals ignored, and SIG_IGN settings are + maintained across exec(). + [Rein Tollevik [EMAIL PROTECTED]] PR#2009 + *) Fix the check for symbolic links in ``RewriteCond ... -l'': stat() was used instead of lstat() and thus this flag didn't work as expected. [Rein Tollevik [EMAIL PROTECTED], PR#2010] 1.315 +16 -0 apache-1.3/src/main/http_main.c Index: http_main.c === RCS file: /export/home/cvs/apache-1.3/src/main/http_main.c,v retrieving revision 1.314 retrieving revision 1.315 diff -u -r1.314 -r1.315 --- http_main.c 1998/03/27 08:51:39 1.314 +++ http_main.c 1998/03/27 20:18:50 1.315 @@ -2349,6 +2349,16 @@ if (sigaction(SIGINT, sa, NULL) 0) aplog_error(APLOG_MARK, APLOG_WARNING, server_conf, sigaction(SIGINT)); #endif +#ifdef SIGXCPU +sa.sa_handler = SIG_DFL; +if (sigaction(SIGXCPU, sa, NULL) 0) + aplog_error(APLOG_MARK, APLOG_WARNING, server_conf, sigaction(SIGXCPU)); +#endif +#ifdef SIGXFSZ +sa.sa_handler = SIG_DFL; +if (sigaction(SIGXFSZ, sa, NULL) 0) + aplog_error(APLOG_MARK, APLOG_WARNING, server_conf, sigaction(SIGXFSZ)); +#endif /* we want to ignore HUPs and USR1 while we're busy processing one */ sigaddset(sa.sa_mask, SIGHUP); @@ -2370,6 +2380,12 @@ #ifdef SIGABRT signal(SIGABRT, sig_coredump); #endif /* SIGABRT */ +#ifdef SIGXCPU + signal(SIGXCPU, SIG_DFL); +#endif /* SIGXCPU */ +#ifdef SIGXFSZ + signal(SIGXFSZ, SIG_DFL); +#endif /* SIGXFSZ */ } signal(SIGTERM, sig_term);