ejabberd: symbol not found error with LibreSSL
The most recent package version of ejabberd (16.09-r1) is build against LibreSSL, which seems not to be supported by ejabberd.
Ejabberd crashes on startup with the following messages in the log:
2016-11-22 21:59:01.978 [error] <0.128.0> CRASH REPORT Process <0.128.0> with 0 neighbours exited with reason: {{shutdown,{failed_to_start_child,fast_tls,{open_error,-10}
2016-11-22 21:59:01.978 [info] <0.31.0> Application fast_tls exited with reason: shutdown,{failed_to_start_child,fast_tls,{open_error,-10},{fast_tls_app,start,[normal
2016-11-22 21:59:25.940 [info] <0.31.0> Application lager started on node ejabberd@localhost
2016-11-22 21:59:25.943 [info] <0.31.0> Application crypto started on node ejabberd@localhost
2016-11-22 21:59:25.949 [info] <0.31.0> Application sasl started on node ejabberd@localhost
2016-11-22 21:59:25.954 [info] <0.31.0> Application asn1 started on node ejabberd@localhost
2016-11-22 21:59:25.954 [info] <0.31.0> Application public_key started on node ejabberd@localhost
2016-11-22 21:59:25.961 [info] <0.31.0> Application ssl started on node ejabberd@localhost
2016-11-22 21:59:25.964 [info] <0.31.0> Application fast_yaml started on node ejabberd@localhost
2016-11-22 21:59:25.969 [error] <0.131.0> failed to load TLS driver: Error relocating /usr/lib/fast_tls-1.0.7/priv/lib/fast_tls_drv.so: OPENSSL_cleanup: symbol not found
2016-11-22 21:59:25.969 [error] <0.131.0> CRASH REPORT Process <0.131.0> with 0 neighbours exited with reason: {open_error,-10} in gen_server:init_it/6 line 344
2016-11-22 21:59:25.970 [critical] <0.62.0>@ejabberd:exit_or_halt:133 failed to start application 'fast_tls': {error,
{{shutdown,
{failed_to_start_child,fast_tls,
{open_error,-10}}},
{fast_tls_app,start,[normal,[]]}}}
So, the main problem seems to be the fast_tls_drv.so can’t find the OPENSSL_cleanup symbol:
failed to load TLS driver: Error relocating /usr/lib/fast_tls-1.0.7/priv/lib/fast_tls_drv.so: OPENSSL_cleanup: symbol not found
fast_tls_drv.so is part of ejabberd:
ejabberd@xmpp:/etc/ejabberd$ apk info -W /usr/lib/fast_tls-1.0.7/priv/lib/fast_tls_drv.so
/usr/lib/fast_tls-1.0.7/priv/lib/fast_tls_drv.so is owned by ejabberd-16.09-r1
(from redmine: issue id 6483, created on 2016-11-22, closed on 2016-11-23)
- Changesets:
- Revision 47c9e237 by Stefan Wagner on 2016-11-23T11:33:40Z:
testing/ejabberd: fixes for libressl
This fixes problems with libressl for ejabberd.
* refs #6483