Hi,

I'm trying find a bug that makes AxKit not work on a particular server. After 
using Apache::DB and the command-line debugger, I came to the (perhaps 
dubious) conclusion that the call to AxKit::get_config in the new sub of 
Apache::AxKit::ConfigReader isn't returning what it's supposed to.

Unless I'm missing something major... it seems that the sub we're talking 
about is _get_config, defined in AxKit.xs.

So... I re-compiled Apache with debugging symbols, then re-compiled AxKit 
adding the -g switch to the OPTIMIZE line (as mentioned in the SUPPORT file), 
and ran Apache with gdb.

At the end of this message are the results of a somewhat haphasard gdb 
session... that shows as far as I've gotten with this. Anyway... I'm 
unfamiliar with xs debugging, Apache and AxKit code, etc... that is to say, I 
really don't know what I'm doing... so I'd really appreciate some pointers as 
to how to continue looking for the problem.

Many thanks in advance,
Andrew

P.S. I suspected that maybe the issue was the _FILE_OFFSET_BITS=64 trouble 
mentionned in a previous message 
(http://axkit.org/cgi-bin/ezmlm-cgi?3:mmn:4669); but when I ran a

        grep -r "_FILE_OFFSET" *

in both the Apache and AxKit source directories, all references to that 
parameter seemed to set it to 64.


-------------


d2ia1@nya:~/opt/apache/bin$ gdb httpd
GNU gdb 5.0
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or 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.
This GDB was configured as "i386-slackware-linux"...
(gdb) b ap_process_request
Breakpoint 1 at 0x80b0d1a: file http_request.c, line 1321.
(gdb) run -X
Starting program: /nfs/ank/home1/d/d2ia1/opt/apache/bin/httpd -X

<!-- this is where I make a request to the server -->

Breakpoint 1, ap_process_request (r=0x8389354) at http_request.c:1321
1321        if (ap_extended_status)
(gdb) b AxKit.xs:216
Breakpoint 2 at 0x402736d6: file AxKit.xs, line 216.

<!-- as far as I can tell, this is how to set a breakpoint in the code 
generated from AxKit.xs -->

(gdb) c
Continuing.

Breakpoint 2, XS_Apache__AxKit__ConfigReader__get_config (cv=0x83036ec) at 
AxKit.xs:220
220             if (r == NULL) {
(gdb) s
224             if (r->per_dir_config == NULL) {
(gdb) s
228             cfg = (axkit_dir_config *)
(gdb) s
231             if (!cfg) {
(gdb) s
232                 config = newHV();
(gdb) s
0x8103c7b in Perl_newHV () at eval.c:88
88      eval.c: No such file or directory.

<!-- maybe the above output says something that can lead me to the problem? -->

(gdb) s
XS_Apache__AxKit__ConfigReader__get_config (cv=0x83036ec) at AxKit.xs:233
233             }
(gdb) s
240             RETVAL = newRV_noinc((SV*)config);
(gdb) s
0x811336c in Perl_newRV_noinc () at eval.c:88
88      eval.c: No such file or directory.

<!-- maybe the above output says something that can lead me to the problem? -->


(gdb) s
XS_Apache__AxKit__ConfigReader__get_config (cv=0x83036ec) at AxKit.c:290
290             ST(0) = RETVAL;
(gdb) c
Continuing.


-------------------------------------------------
Obt�n tu correo en www.correo.unam.mx
UNAMonos Comunic�ndonos



---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to