httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Roy T. Fielding" <field...@kiwi.ics.uci.edu>
Subject Re: Apache 1.3.7 being rolled now..
Date Fri, 30 Jul 1999 00:58:36 GMT
I pulled the tarball off the site.

fielding@kiwi% gdb httpd
GDB is free software and you are welcome to distribute copies of it
 under certain conditions; type "show copying" to see the conditions.
There is absolutely no warranty for GDB; type "show warranty" for details.
GDB 4.16.gnat.1.13 (sparc-sun-solaris2.5), 
Copyright 1996 Free Software Foundation, Inc...
(gdb) run -X -d /extra/fielding0/private/ws/apache-1.3
Starting program: /extra/fielding0/private/ws/apache-1.3/src/httpd -X -d /extra/fielding0/private/ws/apache-1.3
warning: Unable to find dynamic linker breakpoint function.
warning: GDB will be unable to debug shared library initializers
warning: and track explicitly loaded dynamic code.

Program received signal SIGSEGV, Segmentation fault.
0xef5d4f20 in strcasecmp ()
(gdb) bt
#0  0xef5d4f20 in strcasecmp ()
#1  0x32958 in ap_table_do (comp=0x41e64 <merge_vary_fields>, rec=0xac200, 
    t=0xaf078) at alloc.c:1490
#2  0x41ebc in fixup_vary (r=0xac200) at http_protocol.c:1493
#3  0x42124 in ap_send_http_header (r=0xac200) at http_protocol.c:1591
#4  0x3b2ec in default_handler (r=0xac200) at http_core.c:3168
#6  0x45aa8 in process_request_internal (r=0xac200) at http_request.c:1214
#7  0x45b00 in ap_process_request (r=0xac200) at http_request.c:1230
#8  0x3e9f0 in child_main (child_num_arg=705024) at http_main.c:4034
#9  0x3eb74 in make_child (s=0x90178, slot=0, now=933293681)
    at http_main.c:4138
#10 0x3ecbc in startup_children (number_to_start=6) at http_main.c:4220
#11 0x3f268 in standalone_main (argc=458944, argv=0x8b400) at http_main.c:4508
#12 0x3fa4c in main (argc=4, argv=0xefffee24) at http_main.c:4829
(gdb)

This other trace might help, but I'm off to dinner.

Breakpoint 1, fixup_vary (r=0xac200) at http_protocol.c:1490
1490        if (ap_table_get(r->headers_out, "Vary") == NULL) {
(gdb) n
1493        ap_table_do((int (*)(void *, const char *, const char *))merge_vary_fields,
(gdb) s
ap_table_do (comp=0x41e64 <merge_vary_fields>, rec=0xac200, t=0xaf078)
    at alloc.c:1481
1481        table_entry *elts = (table_entry *) t->a.elts;
(gdb) s
1486        argp = va_arg(vp, char *);
(gdb) n
1489            for (rv = 1, i = 0; rv && (i < t->a.nelts); ++i) {
(gdb) n
1490                if (elts[i].key && (!argp || !strcasecmp(elts[i].key, argp)))
{
(gdb) p argp
$1 = 0x721c8 "Vary"
(gdb) n
1491                    rv = (*comp) (rec, elts[i].key, elts[i].val);
(gdb) p elts[i].val
$2 = 0xaef0a "negotiate, accept-language, accept-encoding"
(gdb) n
1489            for (rv = 1, i = 0; rv && (i < t->a.nelts); ++i) {
(gdb) n
1490                if (elts[i].key && (!argp || !strcasecmp(elts[i].key, argp)))
{
(gdb) n

Program received signal SIGSEGV, Segmentation fault.
0xef5d4f20 in strcasecmp ()

To test, set up a directory like

drwxrwxr-x   2 fielding grad         512 Mar  8 05:13 test/
fielding@kiwi% cd test
fielding@kiwi% d
total 782
drwxrwxr-x   2 fielding grad         512 Mar  8 05:13 ./
drwxrwxr-x   5 fielding grad         512 Mar 28 19:32 ../
-rw-rw-r--   1 fielding grad          11 Jan  2  1999 hello.txt.de
-rw-rw-r--   1 fielding grad          13 Jan  3  1999 hello.txt.en
-rw-rw-r--   1 fielding grad          46 Jan  3  1999 hello.txt.en.gz
-rw-rw-r--   1 fielding grad          10 Jan  2  1999 hello.txt.mi

and then make a GET request for /test/hello

....Roy

Mime
View raw message