[peruser] interesting peruser problem

Severn solar.inversion at gmail.com
Tue Apr 4 17:26:59 MDT 2006


It is Listen x.x.x.x:80

Lol... I'm learning gdb as I'm going... trying to figure this out.

I was messing around with the code, and somehow I got it to segfault doing
strcmp in ld-linux-x86-64, which is when I thought.. what the heck? How can
such a basic function be broken?

After some googling about that...  I just found the stupidest solution.
Apparently gcc 3.4 (which is default on CentOS 4), generates bad x86_64
code. In otherwords, there's nothing wrong with peruser... it's the
compiler! I installed gcc4 and compiled apache with it and it's all happy
now.

Just to be sure, please install GCC4:
# yum -y install gcc4-c++
then do the configure and build with it
# ./buildconf
# CC=gcc4 \
[...]
./configure --with-mpm=peruser \
[...]
# make ; make install

So for anyone trying to use peruser on a 64 bit system, make sure you're
using GCC4 to compile it and not GCC3.x

-Severn

On 4/4/06, Sean Gabriel Heacock <gabriel at telana.com> wrote:
>
> On Tue, 2006-04-04 at 16:24 -0400, Severn wrote:
> > It doesn't segfault at the senv enymore.. instead it does this--
> >
> > Program received signal SIGSEGV, Segmentation fault.
> > [Switching to Thread 182919131456 (LWP 22254)]
>
> How is your Listen directive set up?  "Listen 80" or does it specify an
> IP?  It looks like the code it's crashing on is what's responsible for
> the "0.0.0.0" some people see in their logs if they don't bind to a
> specific IP (I can't reproduce this, unfortunately).  Maybe the same
> workaround will help in your situation.
>
> So try "Listen xxx.xxx.xxx.xxx:80" if it's not like that already.  If
> you need to bind to multiple IPs you can still do that with multiple
> Listens.
>
> > If I enable MPM_PERUSER_DEBUG however, *sock is 0x0 and everything
> > seems to work fine... (how the heck does turning on debug affect
> > pointers?)
>
> Yeah I'm hitting the same thing (a "heisenbug" ;) trying to figure out
> what's crashing during the automatic die-off phase... normally it
> segfaults, but not with debugging on... unfortunately my gdb kung fu is
> NOT strong :(
>
> --
> Sean Gabriel Heacock
> Telana Internet Services
> http://www.telana.com/
>
> _______________________________________________
> Peruser mailing list
> Peruser at telana.com
> http://www.telana.com/mailman/listinfo/peruser
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://www.telana.com/pipermail/peruser/attachments/20060404/052a2fbd/attachment-0003.html


More information about the Peruser mailing list