On Sat, 12 Apr 1997, Ben Laurie wrote:
> > This with a version current as of April 8th, 1am. Looks like the call to
> > get_remote_host returned something Apache didn't like - I am using bind 8.1 and
> > its resolver library.
> >
> > Program terminated with signal 6, Abort trap.
> > #0 0x60c89 in kill ()
> > (gdb) where
> > #0 0x60c89 in kill ()
> > #1 0x601e7 in abort ()
> > #2 0x2f90 in just_die ()
> > #3 <signal handler called>
> > #4 0x384b6 in __res_send (buf=0xefbf975c "69.164.137.207.in-addr.arpa",
> > buflen=1, ans=0xc <Address 0xc out of bounds>, anssiz=-272657572)
> > at res_send.c:589
>
> This out-of-bounds address is supplied by the library routine, not by Apache.
> I'd have expected a static buffer, in which case it is hard to see how Apache
> stomped it.
Oh right, it's not a proper system call, but a library call, one statically
linked with Apache, which is why a seg fault there could seg fault Apache even
though Apache's doing things fine. This is experimental bind code after all.
> But it may be that it does something cleverer. Do you have the
> source of ho_byaddr in dns_ho.c?
Sure, it's attached. If this is clearly a bind problem I'm not inclined to
worry much about it:
> Note that buflen and anssiz appear to be garbage as well as ans.
Note that gethostbyaddr was given something weird too.
> > #5 0x3fb15 in ho_byaddr (this=0x7e280, addr=0xb603c, len=4, af=2)
> > at dns_ho.c:287
> > #6 0x39940 in ho_byaddr (this=0x7e400, addr=0xb603c, len=4, af=2)
> > at gen_ho.c:168
> > #7 0x35ebe in gethostbyaddr (addr=0xb603c "O\211$E", len=4, af=2)
> > at gethostent.c:118
> > #8 0x4ebf in get_remote_host ()
Brian
--=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=--
brian@organic.com www.apache.org hyperreal.com http://www.organic.com/JOBS
|