cvs commit: apache-site/info apache_books.html
brian 98/05/03 19:18:44 Modified:info apache_books.html Log: Add Lars's info about his new book. Revision ChangesPath 1.4 +21 -3 apache-site/info/apache_books.html Index: apache_books.html === RCS file: /export/home/cvs/apache-site/info/apache_books.html,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- apache_books.html 1998/03/08 01:55:03 1.3 +++ apache_books.html 1998/05/04 02:18:43 1.4 @@ -28,7 +28,7 @@ UL LI DL - DTSTRONGApache Server for Dummies/STRONG + DTA HREF=http://www.dummies.com/cgi/fill_out_template.pl?book:0-7645-0291-3:book-Dummies+Press;STRONGApache Server for Dummies/STRONG/A /DT DDAuthor: Ken Coar BR @@ -42,6 +42,23 @@ /DD /DL /LI + LI + DL + DTSTRONGApache Web-Server/STRONG + - 2supnd/sup Edition + /DT + DDAuthor: Lars Eilebrecht +BR +Published by: International Thomson Publishing +BR +ISBN: 3-8266-0438-5 +BR +Language: German +BR +Note: includes CD-ROM, expanded and upated edition + /DD + /DL + /LI /UL HR @@ -69,6 +86,7 @@ DL DTA HREF=http://www.itp.de/online/0347/0347.html; STRONGApache Web-Server/STRONG/A + - 1supst/sup Edition /DT DDAuthor: Lars Eilebrecht BR @@ -76,9 +94,9 @@ BR ISBN: 3-8266-0347-8 BR -Language: german +Language: German BR -Note: includes CD-ROM +Note: includes CD-ROM, (emsold out/em) /DD /DL /LI
cvs commit: apache-1.3 STATUS
brian 98/05/03 19:31:48 Modified:.STATUS Log: Major STATUS work cleaning up for a 1.3b7 release planned for tonight. First order of business - get STATUS as manageable and neat as possible. Since all committed code changes are in the CHANGES file, this section of the STATUS is completely redundant. I went through and made sure every entry removed had an equivalent in CHANGES. Revision ChangesPath 1.357 +0 -44 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.356 retrieving revision 1.357 diff -u -r1.356 -r1.357 --- STATUS1998/05/03 17:31:02 1.356 +++ STATUS1998/05/04 02:31:47 1.357 @@ -43,50 +43,6 @@ Showstoppers: -Committed Code Changes: - -* Lars' Configure fix to avoid confusing message under APACI control -* Ralf's Configure fix for AWK's failing with string to long error -* Ralf's fix for stderr logging to make sure default loglevel is honored -* Marc's catching of defined handlers still ending in the default handler -* Ralf's cast for dlopen's arg1 under OSF1 and FreeBSD 2.2.x -* Lars' fix for the prefix setup on configure --compat -* Dean's add %pA, %pI, and %pp codes to ap_vformatter -* Dean's httpd -S command line option to dump parsed vhost setup -* HP-UX 11 port by Jeff Earickson -* Ralf's fix for the install-config target to get correct MimeMagicFile -* PRs 2081 and 2082 closed -* Ralf's adjustments to `configure --compat' to be even more compatible -* Ralf/Jim's enhanced make install carefulness for DocRoot, PR#2084 -* Ralf's back-compat in configure for EXTRA_xxx parameter names -* Ralf's configure fix to avoid side-effects in Configure on exported vars -* Ralf's fix for the install-config target to get correct ScoreBoardFile -* Dynamic Shared Object (DSO) support for OpenBSD 2.x -* Ralf's enhanced make install carefulness for mime.types+magic files -* Ralf's paranoia-fixes for the IFS-handling in `configure' -* Fix for the DEBUG_CGI (#ifdef'ed) situation in mod_cgi.c, PR#2114 -* Ralf's various bugfixes and cleanups for the configure script -* Ralf's workaround for braindead awk when generating ap_config.h, PR#2139 -* Ralf's manual renaming of forgotten non-ap_-symbols because of #define -* Ralf's fix for SOCKS4 and adding of additional SOCKS5 support, PR#2140 -* Ralf's workaround for sed limitation in configure script, PR#2136 -* Ralf's support for making APACI install root overrideable by pkg authors -* Ralf's more granular install paths: runtimedir, logfiledir, proxycachedir -* Roy's bugfixes for select() handling -* Martin's suppress error(0) messages for ap_log_error() -* Ralf's fixes for compiler warnings under AIX 4.2 (NET_SIZE_T is size_t) -* Ralf's DSO support for AIX -* Ralf's DSO support for NetBSD, PR#2158 -* Some optimization defines for NetBSD, PR#2165 -* Ralf's various porting changes to support AIX 3.2, 4.1.5, 4.2 and 4.3. -* Ben's WIN32: Make roots of filesystems (e.g. c:/) work, PR#1558 -* Ben's WIN32: Extensive overhaul of the way UNCs are handled. -* Ralf's fix for referer/agent log entries in installed httpd.conf, PR#2175 -* Jim's fix for MIME type case sensitivity disparity, PR#2112 -* Child processes can now signal to the parent process that - it (the parent process) should abort, shutting down the server. -* Michael Anderson's [EMAIL PROTECTED] C++ friendly patch - Available Patches: * Dean's mod_alias.c, translate_alias_redir patch
cvs commit: apache-1.3/src/modules/standard mod_alias.c
brian 98/05/03 19:38:44 Modified:.STATUS src CHANGES src/modules/standard mod_alias.c Log: Submitted by: Dean Gaudet Reviewed by: Ben Laurie, Jim Jagielski Fix to mod_alias: translate_alias_redir is dealing with a URI, not a filename, so the check for drive letters for win32 and emx is not necessary. Revision ChangesPath 1.358 +0 -4 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.357 retrieving revision 1.358 diff -u -r1.357 -r1.358 --- STATUS1998/05/04 02:31:47 1.357 +++ STATUS1998/05/04 02:38:34 1.358 @@ -45,10 +45,6 @@ Available Patches: -* Dean's mod_alias.c, translate_alias_redir patch - [EMAIL PROTECTED] - Status: Dean, Ben, Jim +1 - * Arnt Gulbrandsen [EMAIL PROTECTED] 03 Apr 1998 21:28:17 +0200 [EMAIL PROTECTED] mod_usertrack.c patch: The patch provides per-domain cookies (which I use to share user-ids 1.814 +4 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.813 retrieving revision 1.814 diff -u -r1.813 -r1.814 --- CHANGES 1998/05/03 22:56:15 1.813 +++ CHANGES 1998/05/04 02:38:39 1.814 @@ -1,5 +1,9 @@ Changes with Apache 1.3b7 + *) Fix to mod_alias: translate_alias_redir is dealing with + a URI, not a filename, so the check for drive letters for win32 + and emx is not necessary. [Dean Gaudet] + *) WIN32: Allow .cmd as an executable extension. [Kari Likovuori [EMAIL PROTECTED]] PR#2146 1.36 +0 -5 apache-1.3/src/modules/standard/mod_alias.c Index: mod_alias.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_alias.c,v retrieving revision 1.35 retrieving revision 1.36 diff -u -r1.35 -r1.36 --- mod_alias.c 1998/04/13 18:05:15 1.35 +++ mod_alias.c 1998/05/04 02:38:43 1.36 @@ -353,12 +353,7 @@ char *ret; int status; -#if defined(__EMX__) || defined(WIN32) -/* Add support for OS/2 drive names */ -if ((r-uri[0] != '/' r-uri[0] != '\0') r-uri[1] != ':') -#else if (r-uri[0] != '/' r-uri[0] != '\0') -#endif return DECLINED; if ((ret = try_alias_list(r, serverconf-redirects, 1, status)) != NULL) {
cvs commit: apache-devsite index.html guidelines.html voting.html
brian 98/05/03 19:57:06 Modified:.index.html guidelines.html voting.html Log: The guidelines have been approved, though with some outstanding issues that could use some clarification. Revision ChangesPath 1.22 +5 -2 apache-devsite/index.html Index: index.html === RCS file: /export/home/cvs/apache-devsite/index.html,v retrieving revision 1.21 retrieving revision 1.22 diff -u -r1.21 -r1.22 --- index.html1998/04/28 05:30:29 1.21 +++ index.html1998/05/04 02:57:05 1.22 @@ -56,8 +56,7 @@ Apache project plan/ABR (last modified on !--#flastmod virtual=project-plan.html --) /LI - LIA HREF=guidelinesApache Project Guidelines/A, currently in - draft form. [A HREF=votingOld Guidelines/A]. BR + LIA HREF=guidelinesApache Project Guidelines/A. (last modified on !--#flastmod virtual=guidelines.html --) /LI LIThe Apache coding A HREF=styleguidestyle guide/ABR @@ -139,6 +138,10 @@ /LI LIA A HREF=binbuild.shshell script to build a binary release/A. /LI + /UL + H2Historical Documents/H2 + UL TYPE=SQUARE + LIA HREF=votingOld voting guidelines/ABR /UL /BLOCKQUOTE !--#include virtual=footer.html -- 1.9 +7 -1 apache-devsite/guidelines.html Index: guidelines.html === RCS file: /export/home/cvs/apache-devsite/guidelines.html,v retrieving revision 1.8 retrieving revision 1.9 diff -u -r1.8 -r1.9 --- guidelines.html 1998/02/12 14:39:20 1.8 +++ guidelines.html 1998/05/04 02:57:05 1.9 @@ -15,7 +15,6 @@ IMG SRC=images/apache_logo.gif ALT= H1 ALIGN=CENTERApache Project Guidelines/H1 -PSTRONGDRAFT/STRONG: These guidelines are not yet approved./P /CENTER P @@ -332,6 +331,13 @@ command,/P PREpatch -s lt; patchfile/PRE is issued in the target repository. + +H2Addendum: Outstanding issues with this document/H2 +UL +LIWe may need a better definition for lazy consensus. +LIWe should clarify under what conditions a veto can be rescinded or overridden. +LIShould we set a time limit on vetos of patches? Two weeks? +/UL /BODY /HTML 1.7 +5 -0 apache-devsite/voting.html Index: voting.html === RCS file: /export/home/cvs/apache-devsite/voting.html,v retrieving revision 1.6 retrieving revision 1.7 diff -u -r1.6 -r1.7 --- voting.html 1998/04/06 17:10:39 1.6 +++ voting.html 1998/05/04 02:57:05 1.7 @@ -11,6 +11,11 @@ ALINK=#FF +H1This document is now obsolete. Please refer to A +HREF=guidelines.htmlthe Apache Project guidelines/A for +up-to-date info./H1 + + H1 ALIGN=CENTER IMG SRC=images/apache_logo.gif ALT=BR Apache voting rules and guidelines
cvs commit: apache-1.3 STATUS
brian 98/05/03 19:58:03 Modified:.STATUS Log: The guidelines have been approved - the devsite docs have been changed to reflect this. Is there anywhere else we can/should note this? Revision ChangesPath 1.360 +0 -30 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.359 retrieving revision 1.360 diff -u -r1.359 -r1.360 --- STATUS1998/05/04 02:49:50 1.359 +++ STATUS1998/05/04 02:58:02 1.360 @@ -9,36 +9,6 @@ 2.0 : In pre-alpha development, see apache-2.0 repository -Guidelines: - -o For the past few months we have been working on a commit-then-review - basis. It is now time to decide whether or not we want to work - under the guidelines in http://dev.apache.org/guidelines.html - or not, and if not, what changes are needed to make it right. - - Approve guidelines as written: - +1: Paul, Jim, Martin, Ralf, Randy, Brian, Ken - +0: - -1: - - Notes: - - Ken: 'lazy consensus' needs to be defined. - - Ralf: At least the following points should be added: - 1. A statement that really everyone has the equal right to veto - in general and that only the one can rescind a veto who has - done it originally. - 2. The statements that although a veto can be done at any point - if it gets done more then approximately two weeks after some - stuff already went in or was changed, the guy who vetoes - really _HAS_ to provide a reasonable alternative solution - idea _AND_ at least someone (not really the guy who vetoes) - who wants to volunteer for this alternative solution. Or - the veto will not make much sense IMHO at this stage and - always just creates flamewars! I think only this way it's - fair. - -Plan: - Showstoppers: Available Patches:
cvs commit: apache-1.3 STATUS
brian 98/05/03 20:03:05 Modified:.STATUS Log: Final bit of reprioritizations for now. Note that showstoppers are at the top! People should either fix them, or decide that the showstoppers aren't necessary. Revision ChangesPath 1.361 +52 -57apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.360 retrieving revision 1.361 diff -u -r1.360 -r1.361 --- STATUS1998/05/04 02:58:02 1.360 +++ STATUS1998/05/04 03:03:04 1.361 @@ -9,8 +9,59 @@ 2.0 : In pre-alpha development, see apache-2.0 repository -Showstoppers: +FINAL RELEASE SHOWSTOPPERS: + +* proxy security fixes from 1.2.5 need to be brought forward + Jim: What are these? + +* Someone other than Dean has to do a security/correctness review on + psprintf(), bprintf(), and ap_snprintf(). In particular these routines + do lots of fun pointer manipulations and such and possibly have overflow + errors. The respective flush_funcs also need to be exercised. + o Jim's looked over the ap_snprintf() stuff (the changes that Dean + did to make thread-safe) and they look fine. + +* The DoS issue about symlinks to /dev/zero is still present. + A device checker patch had been sent to the list a while ago. + Msg-Id: ? + Jim: Couldn't we just use stat() and check the file-type? +stats are expensive though... + +* get_path_info bug; ap_get_remote_host should be ap_vformatter instead. + See: [EMAIL PROTECTED] + +WIN32 1.3 FINAL RELEASE SHOWSTOPPERS: + +* CGIs +- hangs on multiple CGI execution? PR#1607,1129 + Marc can't repeat... + +* SECURITY: PR#1203 still needs to be dealt with for WIN32 + +* SECURITY: check if the magic con/aux/nul/etc names do anything + really bad + +* SECURITY: numerous uses of strcpy and strcat have potential + for buffer overflow, someone should rewrite or verify + they're safe + +* SECURITY: os_ abstract is_only_below() in mod_include.c +* signal type handling + - how to rotate logs from command line? + +* bad use of chdir in some places; it isn't thread-specific + +Documentation that needs writing: + +* Documentation for: + 1) htdocs/manual/sourcereorg.html and other files should mention + new mod_so capabilities. + 2) windows.html should be cleaned up. + +* Need a document explaining mod_rewrite/UseCanonicalName off based + virtualhosting. (If it exists already I can't find it easily.) + Available Patches: * Ed Korthof's patch to fix protocol issues surrounding 400, 408, and @@ -48,38 +99,6 @@ * Ken's IndexFormat enhancement to mod_autoindex to allow CustomLog-like tailoring of directory listing formats -FINAL RELEASE SHOWSTOPPERS: - -* proxy security fixes from 1.2.5 need to be brought forward - Jim: What are these? - -* Someone other than Dean has to do a security/correctness review on - psprintf(), bprintf(), and ap_snprintf(). In particular these routines - do lots of fun pointer manipulations and such and possibly have overflow - errors. The respective flush_funcs also need to be exercised. - o Jim's looked over the ap_snprintf() stuff (the changes that Dean - did to make thread-safe) and they look fine. - -* The DoS issue about symlinks to /dev/zero is still present. - A device checker patch had been sent to the list a while ago. - Msg-Id: ? - Jim: Couldn't we just use stat() and check the file-type? -stats are expensive though... - -* get_path_info bug; ap_get_remote_host should be ap_vformatter instead. - See: [EMAIL PROTECTED] - - -Documentation that needs writing: - -* Documentation for: - 1) htdocs/manual/sourcereorg.html and other files should mention - new mod_so capabilities. - 2) windows.html should be cleaned up. - -* Need a document explaining mod_rewrite/UseCanonicalName off based - virtualhosting. (If it exists already I can't find it easily.) - Needs patch: * uri issues @@ -126,8 +145,6 @@ apdefaults.h : apdefines.h: -Closed issues: - Open issues: * Paul would like to see a 'gdbm' option because he uses @@ -326,28 +343,6 @@ * mod_include -- exec cgi, exec cmd, etc. don't work right. Looks like a code path that isn't run anywhere else that has something not quite right... A PR or two on it. - -WIN32 1.3 FINAL RELEASE SHOWSTOPPERS: - -* CGIs -- hangs on multiple CGI execution? PR#1607,1129 -
cvs commit: apache-1.3 STATUS
brian 98/05/03 20:18:03 Modified:.STATUS Log: Ben handled these, or they were from bug reports that haven't been updated with feedback from users. Revision ChangesPath 1.362 +0 -6 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.361 retrieving revision 1.362 diff -u -r1.361 -r1.362 --- STATUS1998/05/04 03:03:04 1.361 +++ STATUS1998/05/04 03:18:02 1.362 @@ -32,12 +32,6 @@ WIN32 1.3 FINAL RELEASE SHOWSTOPPERS: -* CGIs -- hangs on multiple CGI execution? PR#1607,1129 - Marc can't repeat... - -* SECURITY: PR#1203 still needs to be dealt with for WIN32 - * SECURITY: check if the magic con/aux/nul/etc names do anything really bad
cvs commit: apache-1.3 STATUS
brian 98/05/03 23:06:09 Modified:.STATUS Log: Add something Dean caught Revision ChangesPath 1.363 +3 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.362 retrieving revision 1.363 diff -u -r1.362 -r1.363 --- STATUS1998/05/04 03:18:02 1.362 +++ STATUS1998/05/04 06:06:07 1.363 @@ -364,3 +364,6 @@ * proxy module doesn't load on Win95. Why? Good question. PR#1462. +* In ap_bclose() there's no test that (fb-fd != -1) -- so it's + possible that it'll do something completely bogus when it's + used for read-only things. - Dean Gaudet
cvs commit: apache-2.0/ballots - New directory
brian 98/05/03 23:10:41 apache-2.0/ballots - New directory
Re: cvs commit: apache-2.0/ballots - New directory
Nevermind... pass the gin and tonic. At 06:10 AM 5/4/98 -, [EMAIL PROTECTED] wrote: brian 98/05/03 23:10:41 apache-2.0/ballots - New directory --=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-- pure chewing satisfaction [EMAIL PROTECTED] [EMAIL PROTECTED]
cvs commit: apache-1.3/src/modules/standard mod_negotiation.c
brian 98/05/03 23:44:44 Modified:src/modules/standard mod_negotiation.c Log: Revision ChangesPath 1.78 +63 -18apache-1.3/src/modules/standard/mod_negotiation.c Index: mod_negotiation.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_negotiation.c,v retrieving revision 1.77 retrieving revision 1.78 diff -u -r1.77 -r1.78 --- mod_negotiation.c 1998/04/11 12:00:49 1.77 +++ mod_negotiation.c 1998/05/04 06:44:42 1.78 @@ -1457,7 +1457,6 @@ int i; accept_rec *accept_recs = (accept_rec *) neg-accept_encodings-elts; char *enc = variant-content_encoding; -char *x_enc = NULL; if (!enc || is_identity_encoding(enc)) { return; @@ -1473,29 +1472,22 @@ } /* Go through each of the encodings on the Accept-Encoding: header, - * looking for a match with our encoding - * Prefer non- 'x-' prefixed token (e.g. gzip over x-gzip) */ + * looking for a match with our encoding. x- prefixes are ignored. + */ if (enc[0] == 'x' enc[1] == '-') { enc += 2; } for (i = 0; i neg-accept_encodings-nelts; ++i) { char *name = accept_recs[i].type_name; +if (name[0] == 'x' name[1] == '-') { +name += 2; +} + if (!strcmp(name, enc)) { variant-encoding_quality = 1; -variant-content_encoding = name; return; } - -if (name[0] == 'x' name[1] == '-' !strcmp(name+2, enc)) { -x_enc = name; -} -} - -if (x_enc != NULL) { -variant-encoding_quality = 1; -variant-content_encoding = x_enc; -return; } /* Encoding not found on Accept-Encoding: header, so it is @@ -2201,9 +2193,7 @@ r-filename = sub_req-filename; r-handler = sub_req-handler; r-content_type = sub_req-content_type; -/* it may have been modified, so that it would match the exact encoding - * requested by the client (i.e. x-gzip vs. gzip) */ -r-content_encoding = best-content_encoding; +r-content_encoding = sub_req-content_encoding; r-content_languages = sub_req-content_languages; r-content_language = sub_req-content_language; r-finfo = sub_req-finfo; @@ -2226,6 +2216,61 @@ return OK; } +/* There is a problem with content-encoding, as some clients send and + * expect an x- token (e.g. x-gzip) while others expect the plain token + * (i.e. gzip). To try and deal with this as best as possible we do + * the following: if the client sent an Accept-Encoding header and it + * contains a plain token corresponding to the content encoding of the + * response, then set content encoding using the plain token. Else if + * the A-E header contains the x- token use the x- token in the C-E + * header. Else don't do anything. + * + * Note that if no A-E header was sent, or it does not contain a token + * compatible with the final content encoding, then the token in the + * C-E header will be whatever was specified in the AddEncoding + * directive. + */ +static int fix_encoding(request_rec *r) +{ +char *enc = r-content_encoding; +char *x_enc = NULL; +array_header *accept_encodings; +accept_rec *accept_recs; +int i; + +if (!enc || !*enc) { +return DECLINED; +} + +if (enc[0] == 'x' enc[1] == '-') { +enc += 2; +} + +accept_encodings = do_header_line(r-pool, +ap_table_get(r-headers_in, Accept-encoding)); +accept_recs = (accept_rec *) accept_encodings-elts; + +for (i = 0; i accept_encodings-nelts; ++i) { +char *name = accept_recs[i].type_name; + +if (!strcmp(name, enc)) { +r-content_encoding = name; +return OK; +} + +if (name[0] == 'x' name[1] == '-' !strcmp(name+2, enc)) { +x_enc = name; +} +} + +if (x_enc) { +r-content_encoding = x_enc; +return OK; +} + +return DECLINED; +} + static const handler_rec negotiation_handlers[] = { {MAP_FILE_MAGIC_TYPE, handle_map_file}, @@ -2248,7 +2293,7 @@ NULL, /* check auth */ NULL, /* check access */ handle_multi, /* type_checker */ -NULL, /* fixups */ +fix_encoding, /* fixups */ NULL, /* logger */ NULL, /* header parser */ NULL, /* child_init */
cvs commit: apache-1.3/src/modules/standard mod_negotiation.c
brian 98/05/03 23:58:09 Modified:.STATUS src CHANGES src/modules/standard mod_negotiation.c Log: Submitted by: [EMAIL PROTECTED] Reviewed by: Dean Gaudet, Brian Behlendorf Preserve the 'x-' if the client used it in its Accept-Encoding headers. I had to make a small cosmetic change to mod_negotiation.c so that this report would be attached to the change, since the actual one had a blank log message. Oops. For more details about this whole mess, check out [EMAIL PROTECTED] From the April 1998 archives, and the whole thread around it. Revision ChangesPath 1.364 +0 -4 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.363 retrieving revision 1.364 diff -u -r1.363 -r1.364 --- STATUS1998/05/04 06:06:07 1.363 +++ STATUS1998/05/04 06:57:56 1.364 @@ -62,10 +62,6 @@ 414 responses. [EMAIL PROTECTED] -* Ronald Tschalaer's Accept-Encoding patch - [EMAIL PROTECTED] - Status: Dean +1 - * Wilfredo Sanchez's port to Rhapsody 5.1 for 1.2.6 - forward port to 1.3? [EMAIL PROTECTED] 1.815 +5 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.814 retrieving revision 1.815 diff -u -r1.814 -r1.815 --- CHANGES 1998/05/04 02:38:39 1.814 +++ CHANGES 1998/05/04 06:58:02 1.815 @@ -1,5 +1,10 @@ Changes with Apache 1.3b7 + *) Ronald Tschalaer's Accept-Encoding patch - preserve the x- in + the encoding type from the Accept-Encoding header (if it's there) + and use it in the response, as that's probably what it'll be expecting. + [EMAIL PROTECTED] + *) Fix to mod_alias: translate_alias_redir is dealing with a URI, not a filename, so the check for drive letters for win32 and emx is not necessary. [Dean Gaudet] 1.79 +1 -1 apache-1.3/src/modules/standard/mod_negotiation.c Index: mod_negotiation.c === RCS file: /export/home/cvs/apache-1.3/src/modules/standard/mod_negotiation.c,v retrieving revision 1.78 retrieving revision 1.79 diff -u -r1.78 -r1.79 --- mod_negotiation.c 1998/05/04 06:44:42 1.78 +++ mod_negotiation.c 1998/05/04 06:58:09 1.79 @@ -79,7 +79,7 @@ /*#define TCN_02 */ /* Commands --- configuring document caching on a per (virtual?) - * server basis... + * server basis... */ typedef struct {
cvs commit: apache-1.3 STATUS
brian 98/05/04 00:00:47 Modified:.STATUS Log: Yay! Ben handled this one too. Revision ChangesPath 1.365 +0 -2 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.364 retrieving revision 1.365 diff -u -r1.364 -r1.365 --- STATUS1998/05/04 06:57:56 1.364 +++ STATUS1998/05/04 07:00:45 1.365 @@ -39,8 +39,6 @@ for buffer overflow, someone should rewrite or verify they're safe -* SECURITY: os_ abstract is_only_below() in mod_include.c - * signal type handling - how to rotate logs from command line?
cvs commit: apache-1.3 STATUS
brian 98/05/04 00:15:36 Modified:.STATUS Log: shifted an open issue from the list to status. Since this is a protocol issue it merits attention. Revision ChangesPath 1.366 +8 -0 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.365 retrieving revision 1.366 diff -u -r1.365 -r1.366 --- STATUS1998/05/04 07:00:45 1.365 +++ STATUS1998/05/04 07:15:36 1.366 @@ -361,3 +361,11 @@ * In ap_bclose() there's no test that (fb-fd != -1) -- so it's possible that it'll do something completely bogus when it's used for read-only things. - Dean Gaudet + +* Okay, so our negotiation strategy needs a bit of refinement. See + [EMAIL PROTECTED]. + In general, we need to go through and clean up the negotiation + module to make it compliant with the final HTTP/1.1 draft, and at the + very least we should make it more copacetic to the idea of transferring + gzipped variants of files when both variants exist on the server. +
cvs commit: apache-1.3/htdocs/manual/misc HTTP_Features.tsv index.html
brian 98/05/04 01:42:33 Modified:htdocs/manual/misc index.html Added: htdocs/manual/misc HTTP_Features.tsv Log: Moved HTTP_Features to a more appropriate directory, now we don't need to remove it when we build the release. Revision ChangesPath 1.10 +3 -0 apache-1.3/htdocs/manual/misc/index.html Index: index.html === RCS file: /export/home/cvs/apache-1.3/htdocs/manual/misc/index.html,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- index.html1998/01/26 16:53:51 1.9 +++ index.html1998/05/04 08:42:32 1.10 @@ -59,6 +59,9 @@ DDInstructions about how to accomplish some commonly-desired server functionality changes. /DD + DTA HREF=HTTP_Features.tsvHTTP Features list/A/DT + DDA tab-separate table of HTTP features implemented and tested in Apache. + /DD DTA HREF=known_bugs.html Known Bugs/A 1.1 apache-1.3/htdocs/manual/misc/HTTP_Features.tsv Index: HTTP_Features.tsv === This tab-separated-value file is for use as a checklist for features against draft-ietf-http-v11-spec-rev-03.txt, since two independently developed and interoperable implementations are needed for each feature. For each entry, ? means not filled-in - means not applicable n means no y means yes Y means yes with the addition of a module that uses feature The contents should be placed in the form at http://www.agranat.com:1998/ by someone who wants to be the contact for the Apache Group. Section Feature Implemented Tested 8.1 Persistent Connections y y 8.2.3 Automatic retrying of requests - - 8.2.4 Use of the 100 (Continue) statusn n 9.2 OPTIONS y y 9.3 GET y y 9.4 HEADy y 9.5 POSTy y 9.6 PUT Y y 9.7 DELETE Y y 9.8 TRACE y y 9.9 CONNECT y y 10.1.1100 Continuey y 10.1.2101 Switching Protocols Y n 10.2.1200 OK y y 10.2.2201 Created y y 10.2.3202 Acceptedy y 10.2.4203 Non-Authoritative Information y y 10.2.5204 No Content y y 10.2.6205 Reset Content y y 10.2.7206 Partial Content y y 10.3.1300 Multiple Choicesy y 10.3.2301 Moved Permanently y y 10.3.3302 Found y y 10.3.4303 See Other y y 10.3.5304 Not Modifiedy y 10.3.6305 Use Proxy y n 10.3.7307 Temporary Redirect n n 10.4.1400 Bad Request y y 10.4.2401 Unauthorizedy y 10.4.3402 Payment RequiredY n 10.4.4403 Forbidden y y 10.4.5404 Not Found y y 10.4.6405 Method Not Allowed y y 10.4.7406 Not Acceptable y y 10.4.8407 Proxy Authentication Required y y 10.4.9408 Request Timeout y y 10.4.10 409 ConflictY n 10.4.11 410 Goney y 10.4.12 411 Length Required y y 10.4.13 412 Precondition Failed y y 10.4.14 413 Request Entity Too Largey y 10.4.15 414 Request-URI Too Longy y 10.4.16 415 Unsupported Media Type y n 10.4.17 416 Requested range not satisfiable n n 10.4.18 417 Expectation Failed n n 10.5.1500 Internal Server Error y y 10.5.2501 Not Implemented y y 10.5.3502 Bad Gateway y y 10.5.4503 Service Unavailable y y 10.5.5504 Gateway Timeout y y 10.5.6505 HTTP Version Not Supported Y n 13.3.3Strong entity tags y y 13.3.3Weak entity tagsy y 14.1 Accept y y 14.2 Accept-Charset y y 14.3 Accept-Encoding n n 14.4 Accept-Language y y 14.5 Accept-Ranges y y 14.6 Age - - 14.7 Allow y y 14.8 Authorization y y 14.9 Cache-Control y y 14.10 Connection y y 14.11 Content-Encodingy y 14.12 Content-Languagey y 14.13 Content-Length y y 14.14 Content-LocationY n 14.15 Content-MD5 y n 14.16 Content-Range y y 14.17 Content-Typey y 14.18 Datey y 14.19 ETag
cvs commit: apache-1.3 HTTP_Features.tsv
rse 98/05/04 05:09:08 Removed: .HTTP_Features.tsv Log: Ups, Brain comitted the HTTP_Features.tsv in htdocs/manual/misc/ and said he removed it in the top-level, but it's still there. So remove it now!
cvs commit: apache-1.3 STATUS
rse 98/05/04 07:15:30 Modified:.STATUS Log: Now my final DSO-execution-order-patch is available for voting. Revision ChangesPath 1.367 +7 -3 apache-1.3/STATUS Index: STATUS === RCS file: /export/home/cvs/apache-1.3/STATUS,v retrieving revision 1.366 retrieving revision 1.367 diff -u -r1.366 -r1.367 --- STATUS1998/05/04 07:15:36 1.366 +++ STATUS1998/05/04 14:15:29 1.367 @@ -56,6 +56,13 @@ Available Patches: +* Ralf's [PATCH] Fix module execution order for DSO situation (take 2): + This is the final patch for 1.3b7 to make sure the module execution + order is correct even when the DSO mechanism is used. This is mainly + achieved by fixing the AddModule command. + [EMAIL PROTECTED] + Status: Ralf +1 + * Ed Korthof's patch to fix protocol issues surrounding 400, 408, and 414 responses. [EMAIL PROTECTED] @@ -81,9 +88,6 @@ In progress: -* Ralf's fix for 1.3b7 to make the module execution order - correct when the DSO mechanism is used - * Ken's IndexFormat enhancement to mod_autoindex to allow CustomLog-like tailoring of directory listing formats
cvs commit: apache-1.3/src Configuration.tmpl
rse 98/05/04 07:44:36 Modified:src Configuration.tmpl Log: Some enhancements to the comments: - give hint where compiler and optimization flags have to specified (under CC and OPTIM) - give hint that using -O3 (or -O6 which is used often for pgcc) is risky - remove example from out-commented entry because this is inconsistent with the other entries and only leads to less thinking by the user Feel free to fix me here. Revision ChangesPath 1.102 +10 -4 apache-1.3/src/Configuration.tmpl Index: Configuration.tmpl === RCS file: /export/home/cvs/apache-1.3/src/Configuration.tmpl,v retrieving revision 1.101 retrieving revision 1.102 diff -u -r1.101 -r1.102 --- Configuration.tmpl1998/04/27 08:17:25 1.101 +++ Configuration.tmpl1998/05/04 14:44:36 1.102 @@ -37,17 +37,23 @@ # will be added to whatever flags Configure determines as appropriate # and needed for your platform. # -# You can also set the compiler and Optimization used here as well. -# Settings here have priority; If not set, Configure will attempt to guess -# the C compiler, looking for gcc first, then cc. +# You can also set the compiler (CC) and optimization (OPTIM) used here as +# well. Settings here have priority; If not set, Configure will attempt to +# guess the C compiler, looking for gcc first, then cc. # +# Optimization note: +# Be careful when adding optimization flags (like -O3 or -O6) on the OPTIM +# entry, especially when using some GCC variants. Experience showed that using +# these for compiling Apache is risky. If you don't want to see Apache dumping +# core regularly then at most use -O or -O2. +# EXTRA_CFLAGS= EXTRA_LDFLAGS= EXTRA_LIBS= EXTRA_INCLUDES= #CC= -#OPTIM=-O2 +#OPTIM= #RANLIB=
cvs commit: apache-1.3 Makefile.tmpl
rse 98/05/04 08:29:26 Modified:.Makefile.tmpl Log: Consequently write shell variables as ${name} instead of $name, especially to avoid problems in some brain-dead Bourne-shell variants when something like $conf-dist is used which now is written more safe as ${conf}-dist. Revision ChangesPath 1.31 +28 -28apache-1.3/Makefile.tmpl Index: Makefile.tmpl === RCS file: /export/home/cvs/apache-1.3/Makefile.tmpl,v retrieving revision 1.30 retrieving revision 1.31 diff -u -r1.30 -r1.31 --- Makefile.tmpl 1998/05/03 10:22:26 1.30 +++ Makefile.tmpl 1998/05/04 15:29:25 1.31 @@ -239,13 +239,13 @@ echo $(INSTALL_SCRIPT) $(TOP)/$(SRC)/libhttpd.so $(root)$(libexecdir)/libhttpd.so; \ $(INSTALL_SCRIPT) $(TOP)/$(SRC)/libhttpd.so $(root)$(libexecdir)/libhttpd.so; \ SHLIB_SUFFIX_LIST=`grep '^SHLIB_SUFFIX_LIST=' $(TOP)/$(SRC)/Makefile | sed -e 's:^.*=::'`; \ - if [ .$$SHLIB_SUFFIX_LIST != . ]; then \ + if [ .$${SHLIB_SUFFIX_LIST} != . ]; then \ echo $(RM) $(libexecdir)/libhttpd.so.*; \ $(RM) $(libexecdir)/libhttpd.so.*; \ - for suffix in $$SHLIB_SUFFIX_LIST ; do \ - [ .$$suffix = . ] continue; \ - echo $(LN) $(root)$(libexecdir)/libhttpd.so $(root)$(libexecdir)/libhttpd.so.$$suffix; \ - $(LN) $(root)$(libexecdir)/libhttpd.so $(root)$(libexecdir)/libhttpd.so.$$suffix; \ + for suffix in $${SHLIB_SUFFIX_LIST} ; do \ + [ .$${suffix} = . ] continue; \ + echo $(LN) $(root)$(libexecdir)/libhttpd.so $(root)$(libexecdir)/libhttpd.so.$${suffix}; \ + $(LN) $(root)$(libexecdir)/libhttpd.so $(root)$(libexecdir)/libhttpd.so.$${suffix}; \ done; \ fi; \ fi @@ -254,15 +254,15 @@ [EMAIL PROTECTED] [ .`grep '^[ ]*SharedModule' $(TOP)/$(SRC)/Configuration.apaci` != . ]; then \ for mod in `egrep '^[ ]*SharedModule' $(TOP)/$(SRC)/Configuration.apaci |\ sed -e 's/^[]*SharedModule[ ]*//'`; do \ - file=`echo $$mod | sed -e 's;^.*/\([^/]*\);\1;'`; \ - echo $(INSTALL_SCRIPT) $(TOP)/$(SRC)/$$mod $(root)$(libexecdir)/$$file; \ - $(INSTALL_SCRIPT) $(TOP)/$(SRC)/$$mod $(root)$(libexecdir)/$$file; \ - name=`$(TOP)/$(AUX)/fmn.sh $(TOP)/$(SRC)/$$mod`; \ - prefix=#; case $$name in $(so_mods_in_conf) ) prefix= ;; esac; \ + file=`echo $${mod} | sed -e 's;^.*/\([^/]*\);\1;'`; \ + echo $(INSTALL_SCRIPT) $(TOP)/$(SRC)/$${mod} $(root)$(libexecdir)/$${file}; \ + $(INSTALL_SCRIPT) $(TOP)/$(SRC)/$${mod} $(root)$(libexecdir)/$${file}; \ + name=`$(TOP)/$(AUX)/fmn.sh $(TOP)/$(SRC)/$${mod}`; \ + prefix=#; case $${name} in $(so_mods_in_conf) ) prefix= ;; esac; \ echo dummy | awk '{ printf(%sLoadModule %-18s %s\n, \ prefix, modname, modpath); }' \ - prefix=$$prefix modname=$$name \ - modpath=$(libexecdir_relative)$$file $(SRC)/.apaci.install.conf; \ + prefix=$${prefix} modname=$${name} \ + modpath=$(libexecdir_relative)$${file} $(SRC)/.apaci.install.conf; \ done; \ fi @echo === [programs] @@ -318,8 +318,8 @@ @echo === [include: Installing Apache C header files] $(UMASK) 022; $(CP) $(TOP)/$(SRC)/include/*.h $(root)$(includedir)/ @osdir=`grep '^OSDIR' $(TOP)/$(SRC)/Makefile.config | sed -e 's:^OSDIR=::'`; \ - echo $(UMASK) 022; $(CP) $(TOP)/$(SRC)/$$osdir/os.h $(includedir)/; \ - $(UMASK) 022; $(CP) $(TOP)/$(SRC)/$$osdir/os.h $(root)$(includedir)/ + echo $(UMASK) 022; $(CP) $(TOP)/$(SRC)/$${osdir}/os.h $(includedir)/; \ + $(UMASK) 022; $(CP) $(TOP)/$(SRC)/$${osdir}/os.h $(root)$(includedir)/ @echo === [include] # create an initial document root containing the Apache manual, @@ -357,10 +357,10 @@ @echo === [config: Installing Apache configuration files] [EMAIL PROTECTED] conf in httpd.conf access.conf srm.conf; do \ (echo ##; \ - echo ## $$conf -- Apache HTTP server configuration file; \ + echo ## $${conf} -- Apache HTTP server configuration file; \ echo ##; \ echo ; \ - cat $(TOP)/conf/$$conf-dist ) |\ + cat $(TOP)/conf/$${conf}-dist ) |\ sed -e '/# LoadModule/r
cvs commit: apache-1.3/src/os/bs2000 bs2login.c
martin 98/05/04 09:22:12 Added: src/os/bs2000 bs2login.c Log: BS2000 needs an extra authentication phase (beside setuid()) for changing the permissions to the un-privileged user account Revision ChangesPath 1.1 apache-1.3/src/os/bs2000/bs2login.c Index: bs2login.c === /* * Copyright (c) 1995-1998 The Apache Group. All rights reserved. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * * 1. Redistributions of source code must retain the above copyright *notice, this list of conditions and the following disclaimer. * * 2. Redistributions in binary form must reproduce the above copyright *notice, this list of conditions and the following disclaimer in *the documentation and/or other materials provided with the *distribution. * * 3. All advertising materials mentioning features or use of this *software must display the following acknowledgment: *This product includes software developed by the Apache Group *for use in the Apache HTTP server project (http://www.apache.org/). * * 4. The names Apache Server and Apache Group must not be used to *endorse or promote products derived from this software without *prior written permission. For written permission, please contact *[EMAIL PROTECTED] * * 5. Products derived from this software may not be called Apache *nor may Apache appear in their names without prior written *permission of the Apache Group. * * 6. Redistributions of any form whatsoever must retain the following *acknowledgment: *This product includes software developed by the Apache Group *for use in the Apache HTTP server project (http://www.apache.org/). * * THIS SOFTWARE IS PROVIDED BY THE APACHE GROUP ``AS IS'' AND ANY * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE APACHE GROUP OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED * OF THE POSSIBILITY OF SUCH DAMAGE. * * * This software consists of voluntary contributions made by many * individuals on behalf of the Apache Group and was originally based * on public domain software written at the National Center for * Supercomputing Applications, University of Illinois, Urbana-Champaign. * For more information on the Apache Group and the Apache HTTP server * project, please see http://www.apache.org/. * */ #ifdef _OSD_POSIX #include httpd.h #include http_config.h #include http_log.h static const char *bs2000_authfile = NULL; /* This routine is called by http_core for the BS2000AuthFile directive */ /* It stores the file name (after a quick check for validity) for later use */ const char *os_set_authfile(pool *p, const char *name) { struct stat stbuf; char *filename; filename = ap_server_root_relative(p, name); /* auth file must exist */ if (stat(filename, stbuf) != 0) { return ap_pstrcat(p, Unable to access bs2000 auth file , filename, NULL); exit(1); } /* auth file must be owned by root, and not readable/writable by everyone else */ if (stbuf.st_uid != 0) { return ap_pstrcat(p, BS2000 auth file , filename, is not owned by SYSROOT - change owner!, NULL); } if (stbuf.st_mode (S_IRGRP | S_IWGRP | S_IROTH | S_IWOTH)) { return ap_pstrcat(p, BS2000 auth file , filename, is readable/writable by others - check permissions!, NULL); } bs2000_authfile = filename; return NULL; } int os_init_job_environment(server_rec *server, const char *user_name) { _checkuser_struct chk_usr; _rini_structinittask; struct { char username[8+1]; /* Length of a user name including \0 */ char password[8+1]; /* Length of a password including \0 */ char account [8+1]; /* Length of a account number including \0 */
cvs commit: apache-1.3/src/main http_log.c
martin 98/05/04 09:28:47 Modified:src CHANGES src/main http_log.c Log: BS2000 Debug Logging logs relative paths now, as in unix Revision ChangesPath 1.816 +4 -0 apache-1.3/src/CHANGES Index: CHANGES === RCS file: /home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.815 retrieving revision 1.816 diff -u -u -r1.815 -r1.816 --- CHANGES 1998/05/04 06:58:02 1.815 +++ CHANGES 1998/05/04 16:28:45 1.816 @@ -1,5 +1,9 @@ Changes with Apache 1.3b7 + *) Fix debug log messages for BS2000/OSD: instead of logging the whole + absolute path, only log base name of logging source as is done + in unix. [Martin Kraemer] + *) Ronald Tschalaer's Accept-Encoding patch - preserve the x- in the encoding type from the Accept-Encoding header (if it's there) and use it in the response, as that's probably what it'll be expecting. 1.56 +18 -0 apache-1.3/src/main/http_log.c Index: http_log.c === RCS file: /home/cvs/apache-1.3/src/main/http_log.c,v retrieving revision 1.55 retrieving revision 1.56 diff -u -u -r1.55 -r1.56 --- http_log.c1998/05/03 17:16:59 1.55 +++ http_log.c1998/05/04 16:28:47 1.56 @@ -325,6 +325,24 @@ [%s] , priorities[level APLOG_LEVELMASK].t_name); if (file (level APLOG_LEVELMASK) == APLOG_DEBUG) { +#ifdef _OSD_POSIX + char tmp[256]; + char *e = strrchr(file, '/'); + + /* In OSD/POSIX, the compiler returns for __FILE__ + * a string like: __FILE__=*POSIX(/usr/include/stdio.h) + * (it even returns an absolute path for sources in + * the current directory). Here we try to strip this + * down to the basename. + */ + if (e != NULL e[1] != '\0') { + ap_snprintf(tmp, sizeof(tmp), %s, e[1]); + e = tmp[strlen(tmp)-1]; + if (*e == ')') + *e = '\0'; + file = tmp; + } +#endif /*_OSD_POSIX*/ len += ap_snprintf(errstr + len, sizeof(errstr) - len, %s(%d): , file, line); }
cvs commit: apache-1.3/src/main http_main.c http_core.c
martin 98/05/04 09:46:43 Modified:htdocs/manual/mod directives.html core.html src/main http_main.c http_core.c Log: BS2000 Security: BS2000 needs extra authentication Revision ChangesPath 1.44 +1 -0 apache-1.3/htdocs/manual/mod/directives.html Index: directives.html === RCS file: /home/cvs/apache-1.3/htdocs/manual/mod/directives.html,v retrieving revision 1.43 retrieving revision 1.44 diff -u -u -r1.43 -r1.44 --- directives.html 1998/04/03 16:07:15 1.43 +++ directives.html 1998/05/04 16:46:38 1.44 @@ -67,6 +67,7 @@ LIA HREF=core.html#bindaddressBindAddress/A LIA HREF=mod_setenvif.html#BrowserMatchBrowserMatch/A LIA HREF=mod_setenvif.html#BrowserMatchNoCaseBrowserMatchNoCase/A +LIA HREF=core.html#bs2000authfileBS2000AuthFile/A LIA HREF=mod_proxy.html#cachedefaultexpireCacheDefaultExpire/A LIA HREF=mod_proxy.html#cachedirlengthCacheDirLength/A LIA HREF=mod_proxy.html#cachedirlevelsCacheDirLevels/A 1.110 +38 -0 apache-1.3/htdocs/manual/mod/core.html Index: core.html === RCS file: /home/cvs/apache-1.3/htdocs/manual/mod/core.html,v retrieving revision 1.109 retrieving revision 1.110 diff -u -u -r1.109 -r1.110 --- core.html 1998/04/29 06:32:11 1.109 +++ core.html 1998/05/04 16:46:38 1.110 @@ -28,6 +28,7 @@ LIA HREF=#authnameAuthName/A LIA HREF=#authtypeAuthType/A LIA HREF=#bindaddressBindAddress/A +LIA HREF=#bs2000authfileBS2000AuthFile/A LIA HREF=#clearmodulelistClearModuleList/A LIA HREF=#contentdigestContentDigest/A LIA HREF=#coredumpdirectoryCoreDumpDirectory/A @@ -351,6 +352,43 @@ A HREF=../dns-caveats.htmlDNS Issues/ABR STRONGSee Also:/STRONG A HREF=../bind.htmlSetting which addresses and ports Apache uses/A/P + +HR + +H2A name=bs2000authfileBS2000AuthFile directive/A/H2 +!--%plaintext lt;?INDEX {\tt BS2000AuthFile} directivegt; -- +A + HREF=directive-dict.html#Syntax + REL=Help +STRONGSyntax:/STRONG/A BS2000AuthFile EMauthfile/EMBR +A + HREF=directive-dict.html#Default + REL=Help +STRONGDefault:/STRONG/A EMnone/EMBR +A + HREF=directive-dict.html#Context + REL=Help +STRONGContext:/STRONG/A server configBR +A + HREF=directive-dict.html#Status + REL=Help +STRONGStatus:/STRONG/A coreBR +STRONGCompatibility:/STRONG/A BS2000AuthFile is only available for BS2000 machines, as of Apache 1.3 and later.P + +The CODEBS2000AuthFile/CODE directive is available for BS2000 hosts +only. It must be used to define the password file which is used to +change the BS2000 task environment of the server to the non-privileged +account specified by the A HREF=#userUser/A directive. This is +required in the BS2000 POSIX subsystem (by performing a sub-LOGON) to +prevent CGI scripts from accessing resources of the privileged account +which started the server, usually SAMPTSOS/SAMP.BR +Note that the specified EMauthfile/EM must be owned by the super +user and must not be readable or writable by anyone else, otherwise +Apache will refuse to start and exit with an error message.BR +Only one CODEBS2000AuthFile/CODE directive can be used. P + +PSTRONGSee Also:/STRONG +A HREF=../ebcdic.htmlApache EBCDIC port/A/P HR 1.330 +5 -1 apache-1.3/src/main/http_main.c Index: http_main.c === RCS file: /home/cvs/apache-1.3/src/main/http_main.c,v retrieving revision 1.329 retrieving revision 1.330 diff -u -u -r1.329 -r1.330 --- http_main.c 1998/05/03 17:17:00 1.329 +++ http_main.c 1998/05/04 16:46:40 1.330 @@ -3147,7 +3147,11 @@ } #else /* Only try to switch if we're running as root */ -if (!geteuid() setuid(ap_user_id) == -1) { +if (!geteuid() ( +#ifdef _OSD_POSIX + os_init_job_environment(server_conf, ap_user_name) != 0 || +#endif + setuid(ap_user_id) == -1)) { ap_log_error(APLOG_MARK, APLOG_ALERT, server_conf, setuid: unable to change uid); clean_child_exit(APEXIT_CHILDFATAL); 1.191 +14 -0 apache-1.3/src/main/http_core.c Index: http_core.c === RCS file: /home/cvs/apache-1.3/src/main/http_core.c,v retrieving revision 1.190 retrieving revision 1.191 diff -u -u -r1.190 -r1.191 --- http_core.c 1998/05/03 10:37:06 1.190 +++ http_core.c 1998/05/04 16:46:41 1.191 @@ -1861,6 +1861,16 @@ return NULL; } +#ifdef _OSD_POSIX /* BS2000 Logon Passwd file */ +static const char *set_bs2000_authfile (cmd_parms *cmd, void *dummy, char *name) +{ +const char *err = ap_check_cmd_context(cmd, GLOBAL_ONLY); +if (err !=
cvs commit: apache-1.3/src Configure
martin 98/05/04 09:59:22 Modified:src Configure Log: ReliantUNIX 5.44 has problems with USE_SYSVSEM_SERIALIZED_ACCEPT Revision ChangesPath 1.254 +7 -1 apache-1.3/src/Configure Index: Configure === RCS file: /home/cvs/apache-1.3/src/Configure,v retrieving revision 1.253 retrieving revision 1.254 diff -u -u -r1.253 -r1.254 --- Configure 1998/05/03 18:45:55 1.253 +++ Configure 1998/05/04 16:59:21 1.254 @@ -591,7 +591,13 @@ ;; *-sni-sysv4*) OS='SVR4' - CFLAGS=$CFLAGS -DSVR4 -D_XPG_IV -DHAS_DLFCN -DUSE_MMAP_FILES -DUSE_SYSVSEM_SERIALIZED_ACCEPT -DNEED_UNION_SEMUN + case `uname -r` in + # 5.44 sometimes has problems with SysV IPC + 5.44) + CFLAGS=$CFLAGS -DSVR4 -D_XPG_IV -DHAS_DLFCN -DUSE_MMAP_FILES -DUSE_FCNTL_SERIALIZED_ACCEPT -DNEED_UNION_SEMUN;; + *) + CFLAGS=$CFLAGS -DSVR4 -D_XPG_IV -DHAS_DLFCN -DUSE_MMAP_FILES -DUSE_SYSVSEM_SERIALIZED_ACCEPT -DNEED_UNION_SEMUN;; + esac DEF_WANTHSREGEX=yes LIBS=$LIBS -lsocket -lnsl -lc ;;
cvs commit: apache-1.3/src/main md5c.c
martin 98/05/04 10:10:13 Modified:src/main md5c.c Log: Add EBCDIC conversion to MD5 digestion Revision ChangesPath 1.13 +20 -0 apache-1.3/src/main/md5c.c Index: md5c.c === RCS file: /home/cvs/apache-1.3/src/main/md5c.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -u -r1.12 -r1.13 --- md5c.c1998/04/11 12:00:31 1.12 +++ md5c.c1998/05/04 17:10:12 1.13 @@ -193,6 +193,7 @@ partLen = 64 - idx; /* Transform as many times as possible. */ +#ifndef CHARSET_EBCDIC if (inputLen = partLen) { memcpy(context-buffer[idx], input, partLen); MD5Transform(context-state, context-buffer); @@ -207,6 +208,25 @@ /* Buffer remaining input */ memcpy(context-buffer[idx], input[i], inputLen - i); +#else /*CHARSET_EBCDIC*/ +if (inputLen = partLen) { + ebcdic2ascii(context-buffer[idx], input, partLen); + MD5Transform(context-state, context-buffer); + + for (i = partLen; i + 63 inputLen; i += 64) { + unsigned char inp_tmp[64]; + ebcdic2ascii(inp_tmp, input[i], 64); + MD5Transform(context-state, inp_tmp); + } + + idx = 0; +} +else + i = 0; + +/* Buffer remaining input */ +ebcdic2ascii(context-buffer[idx], input[i], inputLen - i); +#endif /*CHARSET_EBCDIC*/ } /* MD5 finalization. Ends an MD5 message-digest operation, writing the
cvs commit: apache-1.3/src/include httpd.h
martin 98/05/04 10:19:57 Modified:src/include httpd.h Log: Prototypes for the BS2000 security patch (Forgot to commit this) Revision ChangesPath 1.209 +5 -0 apache-1.3/src/include/httpd.h Index: httpd.h === RCS file: /home/cvs/apache-1.3/src/include/httpd.h,v retrieving revision 1.208 retrieving revision 1.209 diff -u -u -r1.208 -r1.209 --- httpd.h 1998/05/03 17:31:09 1.208 +++ httpd.h 1998/05/04 17:19:54 1.209 @@ -947,6 +947,11 @@ API_EXPORT(char *) ap_os_canonical_filename(pool *p, const char *file); #endif +#ifdef _OSD_POSIX +extern const char *os_set_authfile(pool *p, const char *filename); +extern int os_init_job_environment(server_rec *s, const char *user_name); +#endif /* _OSD_POSIX */ + char *ap_get_local_host(pool *); unsigned long ap_get_virthost_addr(const char *hostname, unsigned short *port);
cvs commit: apache-site related_projects.html
brian 98/05/04 11:58:36 Modified:.related_projects.html Log: New home for GUI work. As soon as some DNS changes go through with the 'Nic, this can become gui.apache.org. Revision ChangesPath 1.26 +1 -2 apache-site/related_projects.html Index: related_projects.html === RCS file: /export/home/cvs/apache-site/related_projects.html,v retrieving revision 1.25 retrieving revision 1.26 diff -u -r1.25 -r1.26 --- related_projects.html 1998/04/04 07:14:42 1.25 +++ related_projects.html 1998/05/04 18:58:35 1.26 @@ -131,8 +131,7 @@ mail to A HREF=mailto:[EMAIL PROTECTED][EMAIL PROTECTED]/A with the words subscribe in the body of the message. Also, visit -A HREF=http://butler.disa.mil/ApacheConfig;Justin Seiferth's status -page/A. +A HREF=http://apache.on-the-net.com/;the project status page/A. /BLOCKQUOTE HR
cvs commit: apache-1.3/src/os/bs2000 bs2login.c
martin 98/05/04 15:18:24 Modified:src/os/bs2000 bs2login.c Log: Use new error-propagating APEXIT_CHILDFATAL exit code Revision ChangesPath 1.2 +6 -6 apache-1.3/src/os/bs2000/bs2login.c Index: bs2login.c === RCS file: /home/cvs/apache-1.3/src/os/bs2000/bs2login.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -u -r1.1 -r1.2 --- bs2login.c1998/05/04 16:22:12 1.1 +++ bs2login.c1998/05/04 22:18:24 1.2 @@ -76,7 +76,7 @@ if (stat(filename, stbuf) != 0) { return ap_pstrcat(p, Unable to access bs2000 auth file , filename, NULL); - exit(1); + exit(APEXIT_CHILDFATAL); } /* auth file must be owned by root, and not readable/writable by everyone else */ @@ -126,14 +126,14 @@ Use the 'BS2000AuthFile passwdfile' directive to specify an authorization file for User %s, user_name); - exit(1); + exit(APEXIT_CHILDFATAL); } if ((pwfile = fopen(bs2000_authfile, r)) == NULL) { ap_log_error(APLOG_MARK, APLOG_ALERT, server, Unable to open bs2000 auth file %s for User %s, bs2000_authfile, user_name); - exit(1); + exit(APEXIT_CHILDFATAL); } if (fgets(lcl_data.password, sizeof lcl_data.password, pwfile) == NULL @@ -141,7 +141,7 @@ ap_log_error(APLOG_MARK, APLOG_ALERT|APLOG_NOERRNO, server, Unable ro read BS2000 auth file %s, bs2000_authfile); - exit(1); + exit(APEXIT_CHILDFATAL); } fclose(pwfile); @@ -156,7 +156,7 @@ if(_checkuser(chk_usr) != 0) { ap_log_error(APLOG_MARK, APLOG_ALERT, server, _checkuser: BS2000 auth failed for user %s, chk_usr.username); - exit(1); + exit(APEXIT_CHILDFATAL); } inittask.username = chk_usr.username; @@ -170,7 +170,7 @@ ap_log_error(APLOG_MARK, APLOG_ALERT, server, _rini: BS2000 auth failed for user %s, inittask.username); - exit(1); + exit(APEXIT_CHILDFATAL); } /*ap_log_error(APLOG_MARK, APLOG_DEBUG|APLOG_NOERRNO, server,