You are viewing a plain text version of this content. The canonical link for it is here.
Posted to modperl@perl.apache.org by Dan Axtell <da...@snet.net> on 2011/10/08 15:50:13 UTC

Building mod_perl for authentication

I've now tried various version of Perl (5.10.1, 5.12.4, 5.14.1), and various 
version of Apache, but I'm unable to get Apache to run when mod_perl is 
installed.

The error logs show
 symbol lookup error: /usr/local/lib/perl5/site_perl/5.14.1/x86_64-
linux/auto/ModPerl/Util/Util.so: undefined symbol: 
Perl_xs_apiversion_bootcheck

This is from an earlier attempt to test more recent versions of Perl, which 
seemed to do everything I need OK.  That led me to remove ./site_perl/5.14.1 
altogether, so at least I'm able to run Apache version 2.2.21 with Perl 5.12.4 
and mod_perl 2.0.5.

However authentication still doesn't work.  When I call $r->user in my 
authenticaion script for a URL that uses basic authentication, I don't get the 
login pop-up at all, and $r->user returns a value of  ' (single quote)

when I run make test in mod_perl, the logs show:

*** The following error entry is expected and harmless ***
[Sat Oct 08 08:27:58 2011] [error] [client 127.0.0.1] custom die hook: 
Undefined subroutine &TestError::runtime::no_such_func called at 
/home/daxtell/src/mod_perl-2.0.5/t/response/TestError/runtime.pm line 150.\n
[Sat Oct 08 08:28:03 2011] [error] [client 127.0.0.1] user stas: 
authentication failure for "/": Password Mismatch

*** The following error entry is expected and harmless ***
[Sat Oct 08 08:28:08 2011] [error] [client 127.0.0.1] need AuthName: 
/TestModperl__setauth
[Sat Oct 08 08:28:15 2011] [error] [client 127.0.0.1] Undefined subroutine 
&TestHooks::error::bomb called at 
/home/daxtell/src/mod_perl-2.0.5/t/hooks/TestHooks/error.pm line 21.\n
[Sat Oct 08 08:28:15 2011] [error] [client 127.0.0.1] Undefined subroutine 
&TestHooks::error::bomb called at 
/home/daxtell/src/mod_perl-2.0.5/t/hooks/TestHooks/error.pm line 21.\n


Any thoughts on why this would suddenly stop working?  Also, is there any 
reason not to try and use Perl 5.14.2 with mod_perl?

Thanks,
Dan

Re: Building mod_perl for authentication

Posted by Dave Hodgkinson <da...@gmail.com>.
On 12 Oct 2011, at 04:06, Fred Moyer wrote:

> You should be able to run 5.14.1 with 2.06-dev available on
> http://perl.apache.org.
> 
> If that doesn't work, I'd suggest posting your handlers to this list.
> 
> Looking at that symbol error though, it suggests that you may have
> built mod_perl with a different binary build than it is being run
> with.  Undefined symbols are generally an indication of incompatible
> Perl internal apis.


What Fred said. Take a look at perlbrew for building different
versions, for development at least.

Re: Building mod_perl for authentication

Posted by Fred Moyer <fr...@redhotpenguin.com>.
You should be able to run 5.14.1 with 2.06-dev available on
http://perl.apache.org.

If that doesn't work, I'd suggest posting your handlers to this list.

Looking at that symbol error though, it suggests that you may have
built mod_perl with a different binary build than it is being run
with.  Undefined symbols are generally an indication of incompatible
Perl internal apis.

On Sat, Oct 8, 2011 at 6:50 AM, Dan Axtell <da...@snet.net> wrote:
> I've now tried various version of Perl (5.10.1, 5.12.4, 5.14.1), and various
> version of Apache, but I'm unable to get Apache to run when mod_perl is
> installed.
>
> The error logs show
>  symbol lookup error: /usr/local/lib/perl5/site_perl/5.14.1/x86_64-
> linux/auto/ModPerl/Util/Util.so: undefined symbol:
> Perl_xs_apiversion_bootcheck
>
> This is from an earlier attempt to test more recent versions of Perl, which
> seemed to do everything I need OK.  That led me to remove ./site_perl/5.14.1
> altogether, so at least I'm able to run Apache version 2.2.21 with Perl 5.12.4
> and mod_perl 2.0.5.
>
> However authentication still doesn't work.  When I call $r->user in my
> authenticaion script for a URL that uses basic authentication, I don't get the
> login pop-up at all, and $r->user returns a value of  ' (single quote)
>
> when I run make test in mod_perl, the logs show:
>
> *** The following error entry is expected and harmless ***
> [Sat Oct 08 08:27:58 2011] [error] [client 127.0.0.1] custom die hook:
> Undefined subroutine &TestError::runtime::no_such_func called at
> /home/daxtell/src/mod_perl-2.0.5/t/response/TestError/runtime.pm line 150.\n
> [Sat Oct 08 08:28:03 2011] [error] [client 127.0.0.1] user stas:
> authentication failure for "/": Password Mismatch
>
> *** The following error entry is expected and harmless ***
> [Sat Oct 08 08:28:08 2011] [error] [client 127.0.0.1] need AuthName:
> /TestModperl__setauth
> [Sat Oct 08 08:28:15 2011] [error] [client 127.0.0.1] Undefined subroutine
> &TestHooks::error::bomb called at
> /home/daxtell/src/mod_perl-2.0.5/t/hooks/TestHooks/error.pm line 21.\n
> [Sat Oct 08 08:28:15 2011] [error] [client 127.0.0.1] Undefined subroutine
> &TestHooks::error::bomb called at
> /home/daxtell/src/mod_perl-2.0.5/t/hooks/TestHooks/error.pm line 21.\n
>
>
> Any thoughts on why this would suddenly stop working?  Also, is there any
> reason not to try and use Perl 5.14.2 with mod_perl?
>
> Thanks,
> Dan
>