Menu

#444 openssl with noengine fails

closed-fixed
nobody
None
5
2013-06-21
2004-09-24
Anonymous
No

Message from Peter.Sylvester@edelweb.fr

src/main.c unconditionallly sets an ssl engine (even with
a null value).

if openssl has no engine enabled, lib/url.c returns
always code 53, even if the parameter is null.

Suggested solution in lib/curl.c

case CURLOPT_SSLENGINE:
/*
* String that holds the SSL crypto engine.
*/
{
const char *cpTemp = va_arg(param, char *);
if (cpTemp && cpTemp[0]) {
#ifdef HAVE_OPENSSL_ENGINE_H
ENGINE *e = ENGINE_by_id(cpTemp);
if (e) {
if (data->engine) {
ENGINE_free(data->engine);
}
data->engine = e;
}
else {
failf(data, "SSL Engine '%s' not found", cpTemp);
return CURLE_SSL_ENGINE_NOTFOUND;
}
#else
return CURLE_SSL_ENGINE_NOTFOUND;
#endif
}
}
break;

Discussion

  • Daniel Stenberg

    Daniel Stenberg - 2004-09-25

    Logged In: YES
    user_id=1110

    Thanks for reporting this!

    I agree with you and I've just committed a fix that allows
    setting this to NULL even if no engine is supported.

     
  • Daniel Stenberg

    Daniel Stenberg - 2004-09-25
    • status: open --> closed-fixed
     
MongoDB Logo MongoDB