perl-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Geoffrey Young <ge...@modperlcookbook.org>
Subject Re: MP 2.0.3 & Apache 2.2.3 -> auth tests fail
Date Tue, 16 Jan 2007 14:00:46 GMT

> Back to 2.2.4 - MP2.0.3 worked with one alteration. It seems that 
> ap_get_server_version is not only depreciated, but also changed 
> functionality. That is... one test fails because it calls 
> get_server_version, expects "Apache 2.2.4  (Unix)" but gets "Apache 
> 2.2.4". 

ugh.  I guess we haven't been paying attention.  the relevant changes
are these:

Changes with Apache 2.2.4

  *) The full server version information is now included in the error log at
     startup as well as server status reports, irrespective of the setting
     of the ServerTokens directive.  ap_get_server_version() is now
     deprecated, and is replaced by ap_get_server_banner() and
     ap_get_server_description().  [Jeff Trawick]

Changes with Apache 2.3.0

  *) ap_get_server_version() has been removed.  Third-party modules must
     now use ap_get_server_banner() or ap_get_server_description().
     [Jeff Trawick]

so we'll need to address these.

fwiw, there are lots of changes in 2.2.0 and above that simplay haven't
been incorporated into mod_perl yet, simply for lack of developer tuits.
 so, help/patches in this respect most welcome.  come on and join
dev@perl.a.o if you're interested :)

> This can be solved by applying the following patch:

> But note that this is not a backwards compatible patch. 

yeah, we can't bork back compat.  but there is a way to maintain compat
between moving APIs via modperl_apache_compat.c.  right now that file is
empty, but you can see what entries would look like by peeking at old
versions in svn.

I suspect what we'd want would be to hack the map to

  o add ap_get_server_banner and ap_get_server_description to the apache
function map and mark them both as mod_perl implemented

  o add code to modperl_apache_compat.(c|h) to implement stubs for those
routines if not currently defined, or callback to them if defined

  o mark ap_get_server_version as mod_perl implemented

  o add a stub for ap_get_server_version if not defined with a warning
that the function is deprecated (else issue the callback)

we did a similar workaround for something else, but I forget what it
was.  svn history will know, however.

--Geoff


---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@perl.apache.org
For additional commands, e-mail: dev-help@perl.apache.org


Mime
View raw message