dirkx 99/05/01 06:42:10
Modified: src CHANGES src/modules/standard mod_dir.c Log: Fixes a bug in mod_dir that causes a child process will infinitely recurse when it attemps to handle a request for a directory wnd the value of the DirectoryIndex directive is a single dot. Also likely to happen for anyother values of DirectoryIndex that will map back to the same directory. The handler now only considers regular files as being index candidates. Submitted by: Raymond S Brand <[EMAIL PROTECTED]> Reviewed by: dirkx Revision Changes Path 1.1336 +8 -0 apache-1.3/src/CHANGES Index: CHANGES =================================================================== RCS file: /x3/home/cvs/apache-1.3/src/CHANGES,v retrieving revision 1.1335 retrieving revision 1.1336 diff -u -r1.1335 -r1.1336 --- CHANGES 1999/05/01 05:15:49 1.1335 +++ CHANGES 1999/05/01 13:42:07 1.1336 @@ -14,6 +14,14 @@ clients that choke on "Vary" fields in the response header. [Ken Coar] PR#4118 + *) Fixed a bug in mod_dir that causes a child process will infinitely + recurse when it attemps to handle a request for a directory wnd the + value of the DirectoryIndex directive is a single dot. Also likely + to happen for anyother values of DirectoryIndex that will map back + to the same directory. The handler now only considers regular files + as being index candidates. No PR#s found. + [Raymond S Brand <[EMAIL PROTECTED]>] + *) Ease configuration debugging by making TestCompile fall back to using "make" if the $MAKE variable is unset [Martin Kraemer] 1.55 +1 -1 apache-1.3/src/modules/standard/mod_dir.c Index: mod_dir.c =================================================================== RCS file: /x3/home/cvs/apache-1.3/src/modules/standard/mod_dir.c,v retrieving revision 1.54 retrieving revision 1.55 diff -u -r1.54 -r1.55 --- mod_dir.c 1999/02/06 08:51:26 1.54 +++ mod_dir.c 1999/05/01 13:42:09 1.55 @@ -161,7 +161,7 @@ char *name_ptr = *names_ptr; request_rec *rr = ap_sub_req_lookup_uri(name_ptr, r); - if (rr->status == HTTP_OK && rr->finfo.st_mode != 0) { + if (rr->status == HTTP_OK && S_ISREG(rr->finfo.st_mode)) { char *new_uri = ap_escape_uri(r->pool, rr->uri); if (rr->args != NULL)