Reputation: 31
We use RabbitMQ in our product that leverages Erlang. We deploy via debian images which have custom built SSL libraries (not openssl) which have had RC4 support commented out. Due to this lack of RC4 whenever RabbitMQ/Erlang attempts to start-up we see the following error and the start-up fails.
2021-01-12 15:32:00.007 [error] <0.427.0> Unable to load crypto library. Failed with error:
"load_failed, Failed to load NIF library: '/usr/lib/erlang/lib/crypto-4.4/priv/lib/crypto.so: symbol RC4 version OPENSSL_1_1_0 not defined in file libcrypto.so.1.1 with link time reference'"
OpenSSL might not be installed on this system.```
Upvotes: 3
Views: 279
Reputation: 41568
You might need to recompile Erlang against your SSL library. As of release 19.2, the crypto application checks whether OPENSSL_NO_RC4
is defined, and if so doesn't attempt to use RC4 (see this pull request). Thus if you use an Erlang package built against a different library, it might expect the feature to be present at runtime.
Upvotes: 1