Bug#710327: libapache2-mod-perl2: failing tests with Apache 2.4

Niko Tyni ntyni at debian.org
Mon Jun 3 07:47:11 UTC 2013


On Thu, May 30, 2013 at 12:26:25AM +0100, Dominic Hargreaves wrote:
> Source: libapache2-mod-perl2
> Version: 2.0.8+httpd24-r1449661-1
> Severity: important
> 
> The following tests are currently marked as 'todo':
> 
> # Failed test 4 in t/hooks/authen_digest.t at line 35 *TODO*
> # Failed test 5 in t/hooks/authen_digest.t at line 37 *TODO*
> # Failed test 6 in t/hooks/authen_digest.t at line 41 *TODO*
> # Failed test 7 in t/hooks/authen_digest.t at line 45 *TODO*

These are easy, just adding
 LoadModule auth_digest_module /usr/lib/apache2/modules/mod_auth_digest.so
to debian/apache2.conf fixes them. 

Apache 2.4 has more finely grained modules than 2.2, and the test
requirements need to be adapted eventually. t/hooks/authen_digest.t
currently reads

 plan tests => 7, todo => [4, 5, 6, 7], need need_lwp, need_auth, 'HTML::HeadParser';

I haven't looked where the need_* keywords are defined and how easy
it is to add new ones.

> # Failed test 1 in t/directive/perlloadmodule3.t at line 38 *TODO*

This is an API change in Apache 2.4: the server_rec struct member types
have changed. In this case, is_virtual used to be an 'int' but is now a
'char'.

 http://svn.apache.org/viewvc/httpd/httpd/trunk/include/httpd.h?r1=959392&r2=959464

mod_perl2 needs to somehow map the char to a Perl number. The test failure
happens because the zero byte "\0x0" is true in Perl and so the is_virtual
method is always true.

Looking at the above diff, there might be other cases too that the test
suite doesn't catch. This needs to be brought up upstream.
-- 
Niko Tyni   ntyni at debian.org



More information about the pkg-perl-maintainers mailing list