You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@tomcat.apache.org by "William A. Rowe, Jr." <wr...@rowe-clan.net> on 2008/04/23 00:57:59 UTC

[Fwd: svn commit: r646229 - in /httpd/mod_ftp/trunk/modules/ftp: ftp_connection.c ftp_protocol.c]

Although it's a little goofy to f/w this to the tomcat list, it seems this
might clear up your fluxored mod_jk test ;-)

Re: [Fwd: svn commit: r646229 - in /httpd/mod_ftp/trunk/modules/ftp: ftp_connection.c ftp_protocol.c]

Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
Rainer Jung wrote:
> 
> Hmmm, I'm talking only about 2.2. The function ap_get_server_banner() 
> has been added between 2.2.3 and 2.2.4 with an associated minor MMN 
> bump. So any module build against 2.2.4 using ap_get_server_banner() 
> shielded by AP_MODULE_MAGIC_AT_LEAST(20051115,4) will not load into 
> 2.2.3, because the symbol ap_get_server_banner can not be resolved. That 
> was the original issue noticed by Henri.

Right - simply don't use it until the original is deprecated, in 2.3-dev.
That's the only answer for ABI between 2.2.0 and 2.2.x.

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


Re: [Fwd: svn commit: r646229 - in /httpd/mod_ftp/trunk/modules/ftp: ftp_connection.c ftp_protocol.c]

Posted by Henri Gomez <he...@gmail.com>.
>  IMHO that's incorrect.
>  You cannot change mmn unless you support what mmn is supposed
>  to support. This is clear distribution error not mod_jk or httpd one.

I contacted Suse packager, theu should fix it.

>  Distribution is simply laying saying:
>  "OK I support 2.2.5 API" while the real statement should be:
>  "I support something from 2.2.5 API, but it's up to you
>  to figure out what"

I know :)

>  Pretty confusing, and we shouldn't bother with something
>  like that cause if we don't trust the headers in httpd, what's
>  the point?

Agreed

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


Re: [Fwd: svn commit: r646229 - in /httpd/mod_ftp/trunk/modules/ftp: ftp_connection.c ftp_protocol.c]

Posted by Mladen Turk <mt...@apache.org>.
Henri Gomez wrote:
> Well Suse RPM provided an Apache 2.2.3 but with ap_mmm from 2.2.5.
> 
> It's pretty common on Linux Enterprise distributions to use a know
> core (ie 2.2.3) and apply security patches from later (ie: 2.2.5).
> 

IMHO that's incorrect.
You cannot change mmn unless you support what mmn is supposed
to support. This is clear distribution error not mod_jk or httpd one.

Distribution is simply laying saying:
"OK I support 2.2.5 API" while the real statement should be:
"I support something from 2.2.5 API, but it's up to you
to figure out what"

Pretty confusing, and we shouldn't bother with something
like that cause if we don't trust the headers in httpd, what's
the point?

Cheers
--
(TM)


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


Re: [Fwd: svn commit: r646229 - in /httpd/mod_ftp/trunk/modules/ftp: ftp_connection.c ftp_protocol.c]

Posted by Henri Gomez <he...@gmail.com>.
Well Suse RPM provided an Apache 2.2.3 but with ap_mmm from 2.2.5.

It's pretty common on Linux Enterprise distributions to use a know
core (ie 2.2.3) and apply security patches from later (ie: 2.2.5).



>2008/4/23 Rainer Jung <ra...@kippdata.de>:
> William A. Rowe, Jr. schrieb:
>
> > Rainer Jung wrote:
> >
> > > Hi Bill,
> > >
> > > thanks for this. The problem though is not with the test, but if your
> compilation environment does not match your runtime environment. In Henri's
> case, and also in the case where we provide binaries, the build environment
> contains a newer version of 2.2.x httpd header files than the real runtime
> version is. That's why we have an additional configure flag to overwrite the
> AP_MODULE_MAGIC_AT_LEAST magic to build a backwards compatible module even
> if your build environment contains the newer API.
> > >
> > > Without the flag we check against AP_MODULE_MAGIC_AT_LEAST(20051115,4),
> which is fine for 2.2.x and allows to use ap_get_server_banner() for 2.2.4+.
> The below test in mod_ftp trunk is AP_MODULE_MAGIC_AT_LEAST(20060905,0),
> which is appropriate for trunk.
> > >
> >
> > It's not an issue; because 2.2 builds of the module can't load in 2.0 and
> > shouldn't be loaded in 2.3-dev, this simply isn't a problem.  The flip
> > occurs within 2.1-dev and we don't target binaries to such users.
> >
>
>  Hmmm, I'm talking only about 2.2. The function ap_get_server_banner() has
> been added between 2.2.3 and 2.2.4 with an associated minor MMN bump. So any
> module build against 2.2.4 using ap_get_server_banner() shielded by
> AP_MODULE_MAGIC_AT_LEAST(20051115,4) will not load into 2.2.3, because the
> symbol ap_get_server_banner can not be resolved. That was the original issue
> noticed by Henri.
>
>  Regards,
>
>  Rainer
>
>
>
>  ---------------------------------------------------------------------
>  To unsubscribe, e-mail: dev-unsubscribe@tomcat.apache.org
>  For additional commands, e-mail: dev-help@tomcat.apache.org
>
>

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


Re: [Fwd: svn commit: r646229 - in /httpd/mod_ftp/trunk/modules/ftp: ftp_connection.c ftp_protocol.c]

Posted by Rainer Jung <ra...@kippdata.de>.
William A. Rowe, Jr. schrieb:
> Rainer Jung wrote:
>> Hi Bill,
>>
>> thanks for this. The problem though is not with the test, but if your 
>> compilation environment does not match your runtime environment. In 
>> Henri's case, and also in the case where we provide binaries, the 
>> build environment contains a newer version of 2.2.x httpd header files 
>> than the real runtime version is. That's why we have an additional 
>> configure flag to overwrite the AP_MODULE_MAGIC_AT_LEAST magic to 
>> build a backwards compatible module even if your build environment 
>> contains the newer API.
>>
>> Without the flag we check against 
>> AP_MODULE_MAGIC_AT_LEAST(20051115,4), which is fine for 2.2.x and 
>> allows to use ap_get_server_banner() for 2.2.4+. The below test in 
>> mod_ftp trunk is AP_MODULE_MAGIC_AT_LEAST(20060905,0), which is 
>> appropriate for trunk.
> 
> It's not an issue; because 2.2 builds of the module can't load in 2.0 and
> shouldn't be loaded in 2.3-dev, this simply isn't a problem.  The flip
> occurs within 2.1-dev and we don't target binaries to such users.

Hmmm, I'm talking only about 2.2. The function ap_get_server_banner() 
has been added between 2.2.3 and 2.2.4 with an associated minor MMN 
bump. So any module build against 2.2.4 using ap_get_server_banner() 
shielded by AP_MODULE_MAGIC_AT_LEAST(20051115,4) will not load into 
2.2.3, because the symbol ap_get_server_banner can not be resolved. That 
was the original issue noticed by Henri.

Regards,

Rainer

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


Re: [Fwd: svn commit: r646229 - in /httpd/mod_ftp/trunk/modules/ftp: ftp_connection.c ftp_protocol.c]

Posted by "William A. Rowe, Jr." <wr...@rowe-clan.net>.
Rainer Jung wrote:
> Hi Bill,
> 
> thanks for this. The problem though is not with the test, but if your 
> compilation environment does not match your runtime environment. In 
> Henri's case, and also in the case where we provide binaries, the build 
> environment contains a newer version of 2.2.x httpd header files than 
> the real runtime version is. That's why we have an additional configure 
> flag to overwrite the AP_MODULE_MAGIC_AT_LEAST magic to build a 
> backwards compatible module even if your build environment contains the 
> newer API.
> 
> Without the flag we check against AP_MODULE_MAGIC_AT_LEAST(20051115,4), 
> which is fine for 2.2.x and allows to use ap_get_server_banner() for 
> 2.2.4+. The below test in mod_ftp trunk is 
> AP_MODULE_MAGIC_AT_LEAST(20060905,0), which is appropriate for trunk.

It's not an issue; because 2.2 builds of the module can't load in 2.0 and
shouldn't be loaded in 2.3-dev, this simply isn't a problem.  The flip
occurs within 2.1-dev and we don't target binaries to such users.

Bill

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


Re: [Fwd: svn commit: r646229 - in /httpd/mod_ftp/trunk/modules/ftp: ftp_connection.c ftp_protocol.c]

Posted by Rainer Jung <ra...@kippdata.de>.
Hi Bill,

thanks for this. The problem though is not with the test, but if your 
compilation environment does not match your runtime environment. In 
Henri's case, and also in the case where we provide binaries, the build 
environment contains a newer version of 2.2.x httpd header files than 
the real runtime version is. That's why we have an additional configure 
flag to overwrite the AP_MODULE_MAGIC_AT_LEAST magic to build a 
backwards compatible module even if your build environment contains the 
newer API.

Without the flag we check against AP_MODULE_MAGIC_AT_LEAST(20051115,4), 
which is fine for 2.2.x and allows to use ap_get_server_banner() for 
2.2.4+. The below test in mod_ftp trunk is 
AP_MODULE_MAGIC_AT_LEAST(20060905,0), which is appropriate for trunk.

Regards,

Rainer

William A. Rowe, Jr. schrieb:
> Although it's a little goofy to f/w this to the tomcat list, it seems this
> might clear up your fluxored mod_jk test ;-)
> 
> ------------------------------------------------------------------------
> 
> Betreff:
> svn commit: r646229 - in /httpd/mod_ftp/trunk/modules/ftp: 
> ftp_connection.c ftp_protocol.c
> Von:
> wrowe@apache.org
> Datum:
> Wed, 09 Apr 2008 08:48:22 -0000
> An:
> cvs@httpd.apache.org
> 
> An:
> cvs@httpd.apache.org
> 
> 
> Author: wrowe
> Date: Wed Apr  9 01:48:19 2008
> New Revision: 646229
> 
> URL: http://svn.apache.org/viewvc?rev=646229&view=rev
> Log:
> Per httpd/trunk r440337 - "Replace ap_get_server_version with ap_get_server_banner"
> mod_ftp must call ap_get_server_banner for httpd 2.3+.
> 
> PR: 44747
> Submitted by: Tom Donovan <Tom.Donovan acm.org>
> 
> Modified:
>     httpd/mod_ftp/trunk/modules/ftp/ftp_connection.c
>     httpd/mod_ftp/trunk/modules/ftp/ftp_protocol.c
> 
> Modified: httpd/mod_ftp/trunk/modules/ftp/ftp_connection.c
> URL: http://svn.apache.org/viewvc/httpd/mod_ftp/trunk/modules/ftp/ftp_connection.c?rev=646229&r1=646228&r2=646229&view=diff
> ==============================================================================
> --- httpd/mod_ftp/trunk/modules/ftp/ftp_connection.c (original)
> +++ httpd/mod_ftp/trunk/modules/ftp/ftp_connection.c Wed Apr  9 01:48:19 2008
> @@ -150,7 +150,11 @@
>                     FTP_REPLY_SERVICE_READY, 0,
>                     "%s FTP Server (%s) ready.",
>                     fc->orig_server->server_hostname,
> +#if AP_MODULE_MAGIC_AT_LEAST(20060905,0)
> +                   ap_get_server_banner());
> +#else
>                     ap_get_server_version());
> +#endif
>      return rv;
>  }
>  
> 
> Modified: httpd/mod_ftp/trunk/modules/ftp/ftp_protocol.c
> URL: http://svn.apache.org/viewvc/httpd/mod_ftp/trunk/modules/ftp/ftp_protocol.c?rev=646229&r1=646228&r2=646229&view=diff
> ==============================================================================
> --- httpd/mod_ftp/trunk/modules/ftp/ftp_protocol.c (original)
> +++ httpd/mod_ftp/trunk/modules/ftp/ftp_protocol.c Wed Apr  9 01:48:19 2008
> @@ -742,7 +742,13 @@
>      case FTP_REPLY_SYSTEM_TYPE:
>          ftp_reply(fc, c->output_filters, r->pool, FTP_REPLY_SYSTEM_TYPE, 0,
>                    apr_pstrcat(r->pool, "UNIX Type: L8 System: \"",
> -                              ap_get_server_version(), "\"", NULL));
> +#if AP_MODULE_MAGIC_AT_LEAST(20060905,0)
> +                                       ap_get_server_banner(),
> +
> +#else
> +                                       ap_get_server_version(),
> +#endif
> +                                       "\"", NULL));
>          break;
>      case FTP_REPLY_CONTROL_CLOSE:
>          fsc = ftp_get_module_config(r->server->module_config);

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