<html><head></head><body><div style="font-family: Verdana;font-size: 12.0px;"><div>Yes i am using the right format as in document. If I do not, there will be error logs.</div>

<div> </div>

<div>
<p>ssl_certificate  <full path to my certificate file>;</p>

<p>ssl_certificate_key  engine:<my engine id>:<full patch to my key file>;</p>
</div>

<div>
<div>I also see my binder function is called by openssl. However, my crypto functions inside engine shared library never get called.</div>

<div> </div>

<div>As soon as I change openssl initialize to force OPENSSL_init_crypto() to call ENGINE_register_all_complete(), then everyting is working as expected. </div>

<div> </div>

<div>BTW, if I use builtin openssl comand 'openssl s_server' to launch a simple webserver it works fine. Inside the command it use the flag '
<p>OPENSSL_INIT_ENGINE_ALL_BUILTIN| OPENSSL_INIT_LOAD_CONFIG' to call OPENSSL_init_ssl().</p>
</div>

<div> </div>

<div>Vincent Chen</div>

<div> </div>

<div name="quote" style="margin:10px 5px 5px 10px; padding: 10px 0 10px 10px; border-left:2px solid #C3D9E5; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;">
<div style="margin:0 0 10px 0;"><b>Sent:</b> Monday, August 19, 2019 at 6:32 PM<br/>
<b>From:</b> "Maxim Dounin" <mdounin@mdounin.ru><br/>
<b>To:</b> nginx@nginx.org<br/>
<b>Subject:</b> Re: openssl engine is not initialized properly</div>

<div name="quoted-content">Hello!<br/>
<br/>
On Mon, Aug 19, 2019 at 07:35:57PM +0200, Vincent Chen wrote:<br/>
<br/>
> Hi,<br/>
><br/>
> I am trying to implement an openssl (1.1.1c) engine. However, after the<br/>
> openssl is initialized by nginx 1.17.2, the engine does not initialized<br/>
> properly. When I am using 'openssl' command it works file.<br/>
><br/>
> After a bit debugging, I realized that nginx 1.17.2 initialize openssl<br/>
> with function call 'OPENSSL_init_ssl(OPENSSL_INIT_LOAD_CONFIG, NULL)'.<br/>
> However, inside openssl function OPENSSL_init_crypto() (called from<br/>
> OPENSSL_init_ssl), it needs the following flags to register all openssl<br/>
> functions:<br/>
> ```<br/>
><br/>
> if (opts & (OPENSSL_INIT_ENGINE_ALL_BUILTIN<br/>
><br/>
> | OPENSSL_INIT_ENGINE_OPENSSL<br/>
><br/>
> | OPENSSL_INIT_ENGINE_AFALG)) {<br/>
><br/>
> ENGINE_register_all_complete();<br/>
><br/>
> }<br/>
><br/>
> ```<br/>
><br/>
> The easiest way to fix this issue is to initialize openssl with<br/>
> multiple flags like 'OPENSSL_INIT_LOAD_CONFIG<br/>
> | OPENSSL_INIT_ENGINE_ALL_BUILTIN'. Will there be a fix in near future<br/>
> about this issue?<br/>
<br/>
Unlikely. To load engines, you can use OpenSSL config, or the<br/>
"ssl_engine" directive in nginx configuration, see<br/>
<a href="http://nginx.org/r/ssl_engine" target="_blank">http://nginx.org/r/ssl_engine</a>.<br/>
<br/>
--<br/>
Maxim Dounin<br/>
<a href="http://mdounin.ru/" target="_blank">http://mdounin.ru/</a><br/>
_______________________________________________<br/>
nginx mailing list<br/>
nginx@nginx.org<br/>
<a href="http://mailman.nginx.org/mailman/listinfo/nginx" target="_blank">http://mailman.nginx.org/mailman/listinfo/nginx</a></div>
</div>
</div></div></body></html>