apache.org is up & running on 2_0_14 with some debug code added.  As a
result, we have 2 new core dumps in /usr/local/apache2a/corefiles.  Both
are closedir failures for an autoindex request.

httpd.core.25:

(gdb) bt
#0  0x281293c8 in kill () from /usr/lib/libc.so.4
#1  0x2816509e in abort () from /usr/lib/libc.so.4
#2  0x28141de7 in __assert () from /usr/lib/libc.so.4
#3  0x808c923 in dir_cleanup (thedir=0x81d71dc) at dir.c:74
#4  0x808c9df in apr_dir_close (thedir=0x81d71dc) at dir.c:110
#5  0x281b6d4f in index_directory (r=0x81d003c,
autoindex_conf=0x80e855c)
    at mod_autoindex.c:1648
#6  0x281b6e6e in handle_autoindex (r=0x81d003c) at mod_autoindex.c:1690
#7  0x805df54 in ap_run_handler (r=0x81d003c) at config.c:131
#8  0x805e2cf in ap_invoke_handler (r=0x81d003c) at config.c:288
#9  0x805bc38 in process_request_internal (r=0x81d003c) at
http_request.c:355
#10 0x805bce7 in ap_process_request (r=0x81d003c) at http_request.c:394
#11 0x8058cdf in ap_process_http_connection (c=0x81300fc) at
http_core.c:277
#12 0x8065680 in ap_run_process_connection (c=0x81300fc) at
connection.c:82
#13 0x80657e4 in ap_process_connection (c=0x81300fc) at connection.c:216
#14 0x805cd6a in child_main (child_num_arg=131) at prefork.c:807
#15 0x805ce99 in make_child (s=0x80b44cc, slot=131) at prefork.c:880
#16 0x805d091 in perform_idle_server_maintenance () at prefork.c:1021
#17 0x805d3ad in ap_mpm_run (_pconf=0x80b400c, plog=0x80de00c,
s=0x80b44cc)
    at prefork.c:1191
#18 0x80617fc in main (argc=1, argv=0xbfbffb0c) at main.c:425
#19 0x8058941 in _start ()
(gdb) fr 3
#3  0x808c923 in dir_cleanup (thedir=0x81d71dc) at dir.c:74
74              assert(0);    /* should not occur, but does apparently -
GLA */
(gdb) list
69          apr_dir_t *dir = thedir;
70          if (closedir(dir->dirstruct) == 0) {
71              return APR_SUCCESS;
72          }
73          else {
74              assert(0);    /* should not occur, but does apparently -
GLA */
75              return errno;
76          }
77      }
78
(gdb) p *dir
No symbol "dir" in current context.
(gdb) fr 4
#4  0x808c9df in apr_dir_close (thedir=0x81d71dc) at dir.c:110
110         return dir_cleanup(thedir);
(gdb) p *thedir
$1 = {cntxt = 0x81d000c,
  dirname = 0x81d71ec "/www/www.apache.org/mail/apache-docs/",
  dirstruct = 0x80aa060, entry = 0x0}
(gdb) p *thedir.dirstruct
$2 = {dd_fd = 0, dd_loc = 135311360, dd_size = 656384,
  dd_buf = 0x40003 <Address 0x40003 out of bounds>, dd_len = 4110,
dd_seek = 0,
  dd_rewind = 55, dd_flags = 3}  

something to look at tomorrow.

Greg

Reply via email to