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;
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.