Closed diabonas closed 5 years ago
BTW, the Travis builds using OpenSSL 1.1 seem to circumvent this problem by including the .libs
directory in LD_LIBRARY_PATH
, which is one possible workaround, see https://github.com/tpm2-software/tpm2-tss-engine/issues/6#issue-355391442. If this is the preferred solution, it should probably be incorporated directly into the tests (like setting OPENSSL_ENGINES
). This way, make check
works out of the box (provided a tpm_server
is running), without manually having to fiddle with environment variables.
As OpenSSL has changed its naming convention for engines, the library must be named
tpm2tss.so
for OpenSSL 1.1, while for OpenSSL 1.0, it waslibtpm2tss.so
. This is achieved in the makefile by creating a symbolic link fromtpm2tss.so
tolibtpm2tss.so
during installation. However, for the integration tests, the libtool.libs
directory is used, where no such symlink exists. This causes the integration tests run bymake check
to fail on my machine, which uses an OpenSSL 1.1.1 binary:Corresponding excerpt from
test-suite.log
:test/rand.sh
andtest/failload.sh
are not really successful either, their "PASS" is just an artefact ofopenssl
exiting without error/printing out "unable to load Private Key" despite being unable to load the engine.test/failwrite.sh
does not use theopenssl
binary and is therefore not affected.Manually adding a symlink from
libtpm2tss.so
totpm2tss.so
in the.libs
directory causes all eight tests to pass for me.