[openssl-dev] Errors when loading an OpenSSL RSA Engine

danigrosu dni.grosu at gmail.com
Thu Mar 10 09:19:09 UTC 2016


Blumenthal, Uri - 0553 - MITLL wrote
> But autotools setup did not work (see my
> previous post in this thread). Perhaps Richard could shed some light on
> that.

I just did what that guy said and it worked. Basically I created a "m4"
directory
and I copied the "ax_check_openssl.m4" file to the "m4" directory, then I
used
the "autoreconf -fi -I m4" command, then ./configure, then make.
-- "ax_check_openssl.m4" can be found here 
autoconf-archive-2015.09.25.tar.xz
<http://gnu.mirrors.linux.ro/autoconf-archive/>  


Blumenthal, Uri - 0553 - MITLL wrote
> Regarding RSA-X engine, it lacks the dynamic binding code necessary for
> being loaded, etc. That’s why it fails to load. Check the contents of
> e_md5.c and eng_rsax.c for differences.
> 
> $ OPENSSL_ENGINES=. openssl engine -t -c rsax
> (rsax) RSAX engine support
>  [RSA]
>      [ available ]
> $ 

Be aware that the name "rsax" is the name of the engine that OpenSSL
already knows. Try to change it's name to something else, e.g. "rsax_smth".
I get the same error after I change it's name to "rsax_dani":

/140334964717216:error:25066067:DSO support routines:DLFCN_LOAD:could not
load the shared library:dso_dlfcn.c:185:filename(./librsax_dani.so):
./librsax_dani.so: cannot open shared object file: No such file or directory
140334964717216:error:25070067:DSO support routines:DSO_load:could not load
the shared library:dso_lib.c:244:
140334964717216:error:260B6084:engine routines:DYNAMIC_LOAD:dso not
found:eng_dyn.c:450:
140334964717216:error:2606A074:engine routines:ENGINE_by_id:no such
engine:eng_list.c:417:id=rsax_dani/

Then I tryed to use the following macros in order to dynamically bind
the engine (as I saw in the md5 engine):

/IMPLEMENT_DYNAMIC_BIND_FN(bind_helper)
IMPLEMENT_DYNAMIC_CHECK_FN()/

I changed the "bind_helper" function to be exactly like "bind" function
from the md5 engine => /static int bind_helper(ENGINE *e, const char *id)/
and I get this error message:

/eng_rsax.c: In function ‘ENGINE_rsax’:
eng_rsax.c:178:2: error: too few arguments to function ‘bind_helper’
  if(!bind_helper(ret))
  ^
eng_rsax.c:142:12: note: declared here
 static int bind_helper(ENGINE *e, const char *id)
            ^
140334964717216:error:25066067:DSO support routines:DLFCN_LOAD:could not
load the shared library:dso_dlfcn.c:185:filename(./librsax_dani.so):
./librsax_dani.so: cannot open shared object file: No such file or directory
140334964717216:error:25070067:DSO support routines:DSO_load:could not load
the shared library:dso_lib.c:244:
140334964717216:error:260B6084:engine routines:DYNAMIC_LOAD:dso not
found:eng_dyn.c:450:
140334964717216:error:2606A074:engine routines:ENGINE_by_id:no such
engine:eng_list.c:417:id=rsax_dani/

Dani Grosu




--
View this message in context: http://openssl.6102.n7.nabble.com/Errors-when-loading-an-OpenSSL-RSA-Engine-tp64385p64535.html
Sent from the OpenSSL - Dev mailing list archive at Nabble.com.


More information about the openssl-dev mailing list