httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Michael Felt <mamf...@gmail.com>
Subject Re: A push for 2.4.2
Date Sat, 31 Mar 2012 13:49:24 GMT
FYI: needs to be built separately -- httpd-2.4.2 (patched for AIX) builds
and passes configtest on AIX 4.3.3

On Sat, Mar 31, 2012 at 2:33 PM, Graham Leggett <minfrin@sharp.fm> wrote:

> On 31 Mar 2012, at 3:10 AM, Gregg Smith wrote:
>
> > I found this to be an interesting error message:
> >
> > [Fri Mar 30 18:07:41.019600 2012] [session_crypto:error] [pid 4236:tid
> 700] (100005)Error string not specified yet: AH01845: (null)
> >
> > very informative :)
>
> Can you give more details of the crypto driver you're trying to use?
>
> Using the error code "AH01845", a quick search of the source shows up this:
>
>        rv = apr_crypto_get_driver(&driver, conf->library, conf->params,
> &err, p);
>        ...
>        if (APR_SUCCESS != rv && err) {
>            ap_log_error(APLOG_MARK, APLOG_ERR, rv, s, APLOGNO(01845)
>                    "%s", err->msg);
>            return rv;
>        }
>
> It looks like the error code returned by apr_crypto_get_driver() is not
> recognised as an APR error, and the error message being printed is the
> string "(null)".
>
> This comes from here:
>
>            apr_dso_error(dso, buffer, ERROR_SIZE - 1);
>            err->msg = buffer;
>            err->reason = modname;
>
> What this means is that an attempt to load a DSO is failing, with an
> unknown APR error code and an error message of "(null)".
>
> The assumption that the underlying driver will always return a sensible
> error message seems to be bogus, this won't help with the message, but will
> in theory give a hint to the driver involved:
>
> Index: modules/session/mod_session_crypto.c
> ===================================================================
> --- modules/session/mod_session_crypto.c        (revision 1307617)
> +++ modules/session/mod_session_crypto.c        (working copy)
> @@ -435,7 +435,7 @@
>         }
>         if (APR_SUCCESS != rv && err) {
>             ap_log_error(APLOG_MARK, APLOG_ERR, rv, s, APLOGNO(01845)
> -                    "%s", err->msg);
> +                    "The crypto library '%s' could not be loaded: %s
> (%s)", conf->library, err->msg, err->reason);
>             return rv;
>         }
>         if (APR_ENOTIMPL == rv) {
>
> Can you confirm?
>
> Regards,
> Graham
> --
>
>

Mime
View raw message