cvs commit: apache/src CHANGES mod_imap.c
rse 97/08/01 01:48:19 Modified:src Tag: APACHE_1_2_X CHANGES mod_imap.c Log: Fixed an infinite loop for references above the server root. PR: 748 Submitted by: Dean Gaudet Reviewed by: Brian Behlendorf Revision ChangesPath No revision No revision 1.286.2.38 +3 -0 apache/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache/src/CHANGES,v retrieving revision 1.286.2.37 retrieving revision 1.286.2.38 diff -u -r1.286.2.37 -r1.286.2.38 --- CHANGES 1997/07/31 08:50:01 1.286.2.37 +++ CHANGES 1997/08/01 08:48:16 1.286.2.38 @@ -1,5 +1,8 @@ Changes with Apache 1.2.2 + *) Fixed an infinite loop in mod_imap for references above the server root + [Dean Gaudet] PR#748 + *) mod_include cleanup showed that handle_else was being used to handle endif. It didn't cause problems, but it was cleaned up too. [Howard Fear] 1.21.2.1 +4 -0 apache/src/mod_imap.c Index: mod_imap.c === RCS file: /export/home/cvs/apache/src/mod_imap.c,v retrieving revision 1.21 retrieving revision 1.21.2.1 diff -u -r1.21 -r1.21.2.1 --- mod_imap.c1997/04/12 04:24:58 1.21 +++ mod_imap.c1997/08/01 08:48:17 1.21.2.1 @@ -475,6 +475,10 @@ } value += 2; /* jump over the '..' that we found in the value */ + } else if (directory) { + url[0] = '\0'; + log_reason(invalid directory name in map file, r-uri, r); + return; } if (! strncmp(value, /../, 4) || ! strcmp(value, /..) )
cvs commit: apache-site ABOUT_APACHE.html
rse 97/08/01 02:17:22 Modified:. ABOUT_APACHE.html Log: Moved my entry and fixed a HTML error with double /LI. Revision ChangesPath 1.5 +8 -4 apache-site/ABOUT_APACHE.html Index: ABOUT_APACHE.html === RCS file: /export/home/cvs/apache-site/ABOUT_APACHE.html,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- ABOUT_APACHE.html 1997/07/21 23:34:12 1.4 +++ ABOUT_APACHE.html 1997/08/01 09:17:20 1.5 @@ -136,7 +136,7 @@ /P HR SIZE=4 H2 - Current Apache Group, 1 June 1997 + Current Apache Group in alphabetical order as of 1 August 1997: /H2 DL DD @@ -160,6 +160,12 @@ /TD /TR TR + TDRalf S. Engelschallnbsp;nbsp; + /TD + TDMunich, Germany + /TD + /TR + TR TDRoy T. Fieldingnbsp;nbsp;nbsp;nbsp;nbsp;nbsp; /TD TDUC Irvine, California @@ -281,10 +287,8 @@ LIKevin Hughes (creator of all those nifty icons), /LI LIHenry Spencer (author of the regex library), - LIGarey Smiley (OS/2 port), - /LI /LI - LIRalf S. Engelschall (SAMPmod_rewrite/SAMP), + LIGarey Smiley (OS/2 port), /LI LIHoward Fear (SAMPmod_include/SAMP), /LI
cvs commit: apache/src CHANGES
rse 97/08/01 02:43:51 Modified:src CHANGES Log: Entry for added support of ``='' at RewriteCond. Revision ChangesPath 1.377 +4 -0 apache/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache/src/CHANGES,v retrieving revision 1.376 retrieving revision 1.377 diff -u -r1.376 -r1.377 --- CHANGES 1997/08/01 09:13:30 1.376 +++ CHANGES 1997/08/01 09:43:49 1.377 @@ -1,5 +1,9 @@ Changes with Apache 1.3a2 + *) Enable ``='' for RewriteCond directives to match against + the empty string. This is the preferred way instead of ``^$''. + [Ralf S. Engelschall] + *) Fixed an infinite loop in mod_imap for references above the server root [Dean Gaudet] PR#748
cvs commit: apache/htdocs/manual/mod mod_rewrite.html
rse 97/08/01 05:00:19 Modified:htdocs/manual/mod mod_rewrite.html Log: Fixed HTML tag which was bad in recent commit. Revision ChangesPath 1.15 +1 -1 apache/htdocs/manual/mod/mod_rewrite.html Index: mod_rewrite.html === RCS file: /export/home/cvs/apache/htdocs/manual/mod/mod_rewrite.html,v retrieving revision 1.14 retrieving revision 1.15 diff -u -r1.14 -r1.15 --- mod_rewrite.html 1997/08/01 09:36:41 1.14 +++ mod_rewrite.html 1997/08/01 12:00:18 1.15 @@ -632,7 +632,7 @@ lexicographically to iTestString/i and results in a true expression if iTestString/i is lexicographically equal to iCondPattern/i, i.e the two strings are exactly equal (character by character). -If iCondPatternI is just samp/samp (two quotation marks) this +If iCondPattern/i is just samp/samp (two quotation marks) this compares iTestString/i against the empty string. p li'b-d/b' (is bd/birectory)br
cvs commit: apache/htdocs/manual/mod mod_headers.html mod_browser.html
rse 97/08/01 05:05:07 Modified:htdocs/manual/mod mod_headers.html mod_browser.html Log: Make headerlines consistent between modules. Revision ChangesPath 1.5 +1 -1 apache/htdocs/manual/mod/mod_headers.html Index: mod_headers.html === RCS file: /export/home/cvs/apache/htdocs/manual/mod/mod_headers.html,v retrieving revision 1.4 retrieving revision 1.5 diff -u -r1.4 -r1.5 --- mod_headers.html 1997/06/04 16:14:20 1.4 +++ mod_headers.html 1997/08/01 12:05:05 1.5 @@ -13,7 +13,7 @@ ALINK=#FF !--#include virtual=header.html -- -h1 ALIGN=CENTERHeaders Module/h1 +h1 ALIGN=CENTERModule mod_headers/h1 The optional headers module allows for the customization of HTTP response headers. Headers can be merged, replaced or removed. The 1.10 +1 -1 apache/htdocs/manual/mod/mod_browser.html Index: mod_browser.html === RCS file: /export/home/cvs/apache/htdocs/manual/mod/mod_browser.html,v retrieving revision 1.9 retrieving revision 1.10 diff -u -r1.9 -r1.10 --- mod_browser.html 1997/06/04 16:14:18 1.9 +++ mod_browser.html 1997/08/01 12:05:05 1.10 @@ -13,7 +13,7 @@ ALINK=#FF !--#include virtual=header.html -- -H1 ALIGN=CENTERApache module mod_browser/h1 +H1 ALIGN=CENTERModule mod_browser/H1 This module is contained in the codemod_browser.c/code file, and is compiled in by default with Apache 1.2 and above. It provides for
cvs commit: apache/htdocs/manual index.html
brian 97/08/01 10:06:34 Modified:htdocs/manual index.html Log: Avoid multiviews expansion for now. Revision ChangesPath 1.16 +1 -1 apache/htdocs/manual/index.html Index: index.html === RCS file: /export/home/cvs/apache/htdocs/manual/index.html,v retrieving revision 1.15 retrieving revision 1.16 diff -u -r1.15 -r1.16 --- index.html1997/06/23 07:06:59 1.15 +++ index.html1997/08/01 17:06:32 1.16 @@ -33,7 +33,7 @@ H3a name=refApache Reference Manual/a/h3 UL LIA - HREF=http://www.apache.org/manual-index/docs; + HREF=http://www.apache.org/manual-index.cgi/docs; STRONGSearch/STRONG/A the master manual pages for key words /LI
cvs commit: apache-devsite styleguide.html
coar97/08/01 13:08:51 Modified:. styleguide.html Log: Update style guide with the majority results from the most recent issue vote. Revision ChangesPath 1.4 +100 -46 apache-devsite/styleguide.html Index: styleguide.html === RCS file: /export/home/cvs/apache-devsite/styleguide.html,v retrieving revision 1.3 retrieving revision 1.4 diff -u -r1.3 -r1.4 --- styleguide.html 1997/07/16 10:15:48 1.3 +++ styleguide.html 1997/08/01 20:08:49 1.4 @@ -4,9 +4,11 @@ H1Apache Developers' C Language Style Guide/H1 -BCompiled by Paul Sutton A -HREF=mailto:[EMAIL PROTECTED][EMAIL PROTECTED]/A/B. Based on a vote +STRONGCompiled by Paul Sutton A +HREF=mailto:[EMAIL PROTECTED][EMAIL PROTECTED]/A/STRONG. Based on a vote taken in November, 1996. +BR +Further refinements voted upon in July 1997. HR @@ -24,42 +26,55 @@ PULcode-i4 -npsl -di0 -br -nce -d0 -cli0 -npcs -nfc1/code/UL H2The Guidelines/H2 + UL + LIOpening braces are given on the same lines as statements, or on the +following line at the start of a function definition. + /LI + LICode inside a block (whether surrounded by braces or not) is +indented by four space characters. Tab characters are not +used. Comments are indented to the same level as the surrounding +code. + /LI + LIClosing braces are always on a separate line from surrounding +code, and are indented to line up with the start of the text on +the line containing the corresponding opening brace. + /LI + LIFunctions are declared with ANSI-style arguments. + /LI + LIThere is no space between the function name and the opening bracket +of the arguments to the function. There is a single space following +commas in argument lists and the semi-colons in for statements. + /LI + LIInside a SAMPswitch()/SAMP statement, the SAMPcase/SAMP +keywords are indented to the same level as the SAMPswitch/SAMP line. + /LI + LIOperators in expressions should be surrounded by a single space +before and after, except for unary increment (++), decrement (--), and +negation (!) operators. + /LI + LIThere is no whitespace between a cast and the item modified +(EMe.g./EM, quot;SAMP(int)j/SAMPquot; and not +quot;SAMP(int)nbsp;j/SAMPquot;). + /LI + LIIf a cast is to a pointer type, there is a space between the type +and the SAMP*/SAMP character (EMe.g./EM, +quot;SAMP(charnbsp;*)i/SAMPquot; instead of +quot;SAMP(char*)i/SAMPquot;) + /LI + /UL -POpening braces are given on the same lines as statements, or on the - following line at the start of a function definition. - -PCode inside a block (whether surrounded by braces or not) is - indented by four space characters. Tab characters are not - used. Comments are indented to the same level as the surrounding - code. - -PClosing braces are always on a separate line from surrounding - code, and are indented to line up with the start of the text on - the line containing the corresponding opening brace. - -PFunctions are declared with ANSI-style arguments. - -PInside a switch() statement, the case keywords are indented to - the same level as the switch line. - -PThere is no space between the function name and the opening bracket - of the arguments to the function. There is a single space following - commas in argument lists and the semi-colons in for statements. - -POperators in expressions should be surrounded by a single space - before and after, except for increment and decrement operators. H2Details and Examples/H2 OL -LIIndentation, General Style +LISTRONGIndentation, General Style/STRONG PEach level of indentation of code is four spaces. Tab characters should never be used. Specific indentation rules for function declarations and control-flow keywords are given below. PExample: -pre +PRE main(int argc, char **argc) { if (argc != 0) { @@ -68,8 +83,31 @@ } exit(0); } -/pre -LIComments +/PRE +P +A NAME=long-expsIf an expression/A (or a routine declaration or +invocation) would extend +past column 80, the terms or arguments are wrapped at a convenient spot +and the wrapped portion is indented under the first term in the expression +(or the first argument to the function). +Conditional expressions should be wrapped to keep single or +parenthesized terms as atomic as possible, and place Boolean operators +at either the start (preferable) or end of the line. +/P +P +Example: +/P +PRE + static const char *really_long_name(int i, int j, + const char *args, void *foo, +
cvs commit: apache/src/modules/proxy proxy_connect.c proxy_ftp.c proxy_http.c
dgaudet 97/08/01 17:58:36 Modified:src CHANGES alloc.c alloc.h buff.c http_main.c http_protocol.c mod_expires.c mod_usertrack.c rfc1413.c src/modules/proxy proxy_connect.c proxy_ftp.c proxy_http.c Log: Added psocket() which is a pool form of socket(), various places within the proxy weren't properly blocking alarms while registering the cleanup for its sockets. bclose() now uses pclose() and pclosesocket(). There was a bug where the client socket was being close()d twice due a still registered cleanup. A few cleanups were made to reduce unneeded time() and getpid() calls. Revision ChangesPath 1.379 +9 -0 apache/src/CHANGES Index: CHANGES === RCS file: /export/home/cvs/apache/src/CHANGES,v retrieving revision 1.378 retrieving revision 1.379 diff -u -r1.378 -r1.379 --- CHANGES 1997/08/01 10:24:39 1.378 +++ CHANGES 1997/08/02 00:58:24 1.379 @@ -1,5 +1,14 @@ Changes with Apache 1.3a2 + *) Added psocket() which is a pool form of socket(), various places within + the proxy weren't properly blocking alarms while registering the cleanup + for its sockets. bclose() now uses pclose() and pclosesocket(). There + was a bug where the client socket was being close()d twice due a still + registered cleanup. [Dean Gaudet] + + *) A few cleanups were made to reduce unneeded time() and getpid() + calls. [Dean Gaudet] + *) PORT: AIX = 4.2 requires -lm due to libc changes. [Jason Venner [EMAIL PROTECTED]] PR#667 1.46 +17 -0 apache/src/alloc.c Index: alloc.c === RCS file: /export/home/cvs/apache/src/alloc.c,v retrieving revision 1.45 retrieving revision 1.46 diff -u -r1.45 -r1.46 --- alloc.c 1997/07/25 09:41:29 1.45 +++ alloc.c 1997/08/02 00:58:25 1.46 @@ -985,6 +985,23 @@ kill_cleanup(p,(void *)(long)sock,socket_cleanup); } +API_EXPORT(int) psocket (pool *p, int domain, int type, int protocol) +{ +int fd; + +block_alarms(); +fd = socket (domain, type, protocol); +if (fd == -1) { + int save_errno = errno; + unblock_alarms(); + errno = save_errno; + return -1; +} +note_cleanups_for_socket (p, fd); +unblock_alarms(); +return fd; +} + API_EXPORT(int) pclosesocket(pool *a, int sock) { int res; 1.32 +1 -0 apache/src/alloc.h Index: alloc.h === RCS file: /export/home/cvs/apache/src/alloc.h,v retrieving revision 1.31 retrieving revision 1.32 diff -u -r1.31 -r1.32 --- alloc.h 1997/07/21 05:53:41 1.31 +++ alloc.h 1997/08/02 00:58:26 1.32 @@ -220,6 +220,7 @@ API_EXPORT(void) note_cleanups_for_socket (pool *, int); API_EXPORT(void) kill_cleanups_for_socket (pool *p, int sock); +API_EXPORT(int) psocket (pool *p, int, int, int); API_EXPORT(int) pclosesocket(pool *a, int sock); API_EXPORT(regex_t *) pregcomp (pool *p, const char *pattern, int cflags); 1.42 +4 -4 apache/src/buff.c Index: buff.c === RCS file: /export/home/cvs/apache/src/buff.c,v retrieving revision 1.41 retrieving revision 1.42 diff -u -r1.41 -r1.42 --- buff.c1997/08/01 04:07:57 1.41 +++ buff.c1997/08/02 00:58:26 1.42 @@ -1175,17 +1175,17 @@ else rc1 = 0; #ifdef WIN32 if (fb-flags B_SOCKET) { - rc2 = closesocket(fb-fd); + rc2 = pclosesocket(fb-pool, fb-fd); if (fb-fd_in != fb-fd) { - rc3 = closesocket(fb-fd_in); + rc3 = pclosesocket(fb-pool, fb-fd_in); } else { rc3 = 0; } } else { #endif - rc2 = close(fb-fd); + rc2 = pclosef(fb-pool, fb-fd); if (fb-fd_in != fb-fd) { - rc3 = close(fb-fd_in); + rc3 = pclosef(fb-pool, fb-fd_in); } else { rc3 = 0; } 1.192 +18 -4 apache/src/http_main.c Index: http_main.c === RCS file: /export/home/cvs/apache/src/http_main.c,v retrieving revision 1.191 retrieving revision 1.192 diff -u -r1.191 -r1.192 --- http_main.c 1997/07/29 06:57:19 1.191 +++ http_main.c 1997/08/02 00:58:27 1.192 @@ -219,6 +219,8 @@ pool *pconf; /* Pool for config stuff */ pool *ptrans;/* Pool for per-transaction stuff */ +int APACHE_TLS my_pid; /* it seems silly to call getpid all the time */ + /* small utility macros to make things easier to read */ #ifdef