B.rian
B.rian

Reputation: 31

Erlang will not launch without RC4 support

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

Answers (1)

legoscia
legoscia

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

Related Questions