processone / ejabberd

Robust, Ubiquitous and Massively Scalable Messaging Platform (XMPP, MQTT, SIP Server)
https://www.process-one.net/en/ejabberd/
Other
6k stars 1.5k forks source link

Generic Server Error Upon Clients Connecting to Server #4177

Closed inferenceus closed 3 months ago

inferenceus commented 3 months ago

I have been running ejabberd successfully and without issues since 2022. Upon recently starting the server, it seems to be running (as shown by both my server's init system and ejabberdctl status); however, the stdout log-file shows the following error and clients cannot connect from the intranet nor internet:

2024-03-14 16:27:31.105398+00:00 [info] <0.127.0>@ejabberd_config:load/1:82 Loading configuration from /etc/ejabberd/ejabberd.yml
2024-03-14 16:27:31.370538+00:00 [info] <0.127.0>@ejabberd_config:load/1:89 Configuration loaded successfully
2024-03-14 16:27:31.517694+00:00 [info] <0.365.0>@ejabberd_systemd:init/1:94 Got no NOTIFY_SOCKET, notifications disabled
2024-03-14 16:27:31.628525+00:00 [warning] <0.395.0>@ejabberd_pkix:wildcard/1:362 Path /etc/ssl/ejabberd/dissension_club-xmpp/certfile.pem is empty, please make sure ejabberd has sufficient rights to read it
2024-03-14 16:27:31.753970+00:00 [info] <0.364.0>@gen_mod:start_modules/0:141 Loading modules for inferencium.net and dissensionclub.net
2024-03-14 16:27:31.794398+00:00 [info] <0.456.0>@mod_stun_disco:parse_listener/1:616 Going to offer STUN/TURN service: 10.1.0.20:3478 (udp)
2024-03-14 16:27:32.571597+00:00 [info] <0.542.0>@mod_stun_disco:parse_listener/1:616 Going to offer STUN/TURN service: 10.1.0.20:3478 (udp)
2024-03-14 16:27:32.688661+00:00 [warning] <0.586.0>@ejabberd_captcha:get_prog_name/0:444 The option captcha_cmd is not configured, but some module wants to use the CAPTCHA feature.
2024-03-14 16:27:32.717644+00:00 [info] <0.127.0>@ejabberd_cluster_mnesia:wait_for_sync/1:123 Waiting for Mnesia synchronization to complete
2024-03-14 16:27:32.740692+00:00 [warning] <0.395.0>@ejabberd_pkix:log_warnings/1:393 Invalid certificate in /etc/ssl/ejabberd/inferencium-xmpp/certfile.pem: at line 57: certificate is signed by unknown CA
2024-03-14 16:27:32.740742+00:00 [warning] <0.395.0>@ejabberd_pkix:log_warnings/1:393 Invalid certificate in /etc/ssl/ejabberd/inferencium-xmpp/certfile.pem: at line 57: certificate is signed by unknown CA
2024-03-14 16:27:32.761114+00:00 [warning] <0.395.0>@ejabberd_pkix:check_domain_certfiles/1:312 No certificate found matching dissensionclub.net
2024-03-14 16:27:32.761218+00:00 [warning] <0.395.0>@ejabberd_pkix:check_domain_certfiles/1:312 No certificate found matching pubsub.dissensionclub.net
2024-03-14 16:27:32.761304+00:00 [warning] <0.395.0>@ejabberd_pkix:check_domain_certfiles/1:312 No certificate found matching pubsub.inferencium.net
2024-03-14 16:27:32.761353+00:00 [warning] <0.395.0>@ejabberd_pkix:check_domain_certfiles/1:312 No certificate found matching muc.xmpp.inferencium.net
2024-03-14 16:27:32.761401+00:00 [warning] <0.395.0>@ejabberd_pkix:check_domain_certfiles/1:312 No certificate found matching muc.xmpp.inferencium.net
2024-03-14 16:27:32.761449+00:00 [warning] <0.395.0>@ejabberd_pkix:check_domain_certfiles/1:312 No certificate found matching upload.dissensionclub.net
2024-03-14 16:27:32.761480+00:00 [warning] <0.395.0>@ejabberd_pkix:check_domain_certfiles/1:312 No certificate found matching upload.inferencium.net
2024-03-14 16:27:32.762284+00:00 [info] <0.127.0>@ejabberd_app:start/2:63 ejabberd 23.10 is started in the node ejabberd@localhost in 1.80s
2024-03-14 16:27:32.763169+00:00 [warning] <0.588.0>@ejabberd_acme:request_on_start/0:594 No HTTP listeners for ACME challenges are configured, automatic certificate requests are aborted. Hint: configure the listener and restart/reload ejabberd. Or set acme->auto option to `false` to suppress this warning.
2024-03-14 16:27:32.763870+00:00 [info] <0.391.0>@ejabberd_listener:init/4:163 Start accepting TCP connections at 10.1.0.20:5222 for ejabberd_c2s
2024-03-14 16:27:32.763879+00:00 [info] <0.394.0>@ejabberd_listener:init/4:129 Start accepting UDP connections at 10.1.0.20:3478 for ejabberd_stun
2024-03-14 16:27:32.763882+00:00 [info] <0.393.0>@ejabberd_listener:init/4:163 Start accepting TLS connections at 10.1.0.20:5443 for ejabberd_http
2024-03-14 16:27:32.763967+00:00 [info] <0.392.0>@ejabberd_listener:init/4:163 Start accepting TCP connections at 10.1.0.20:5269 for ejabberd_s2s_in
2024-03-14 16:27:32.780848+00:00 [info] <0.391.0>@ejabberd_listener:accept/7:344 (<0.637.0>) Accepted connection 10.1.0.50:43302 -> 10.1.0.20:5222
2024-03-14 16:27:32.780848+00:00 [info] <0.392.0>@ejabberd_listener:accept/7:344 (<0.638.0>) Accepted connection [REDACTED] -> 10.1.0.20:5269
2024-03-14 16:27:32.831236+00:00 [info] <0.394.0>@ejabberd_stun:prepare_turn_opts/2:133 You have several virtual hosts configured, but option 'auth_realm' is undefined and 'auth_type' is set to 'user', so the TURN relay might not be working properly. Using inferencium.net as a fallback
2024-03-14 16:27:33.436657+00:00 [info] <0.637.0>@ejabberd_c2s:process_auth_result/3:272 (tls|<0.637.0>) Accepted c2s SCRAM-SHA-256-PLUS authentication for inference@inferencium.net by mnesia backend from 10.1.0.50
2024-03-14 16:27:33.436834+00:00 [info] <0.637.0>@ejabberd_c2s:bind/2:450 (tls|<0.637.0>) Opened c2s session for inference@inferencium.net/Conversations.x5lyUi8qD2
2024-03-14 16:27:33.437036+00:00 [error] <0.637.0> ** Generic server <0.637.0> terminating
** Last message in was {'$gen_event',
                        {xmlstreamelement,
                         {xmlel,<<"response">>,
                          [{<<"xmlns">>,<<"urn:xmpp:sasl:2">>}],

This is immediately followed by some long xmlcdata gibberish and the following:

** When Server state == #{socket =>
                              {socket_state,fast_tls,
                                  {tlssock,#Port<0.58>,

Note that the errors shown in the first code block are normal (up until 2024-03-14 16:27:33.437036+00:00 [error] <0.637.0> ** Generic server <0.637.0> terminating) and have been appearing since I first configured the server; they shouldn't be what is preventing the server from working correctly. The domain without the certfile (dissensionclub.net) is also currently unused and no users exist on that domain; the domain in question with users is inferencium.net.

inferenceus commented 3 months ago

Scrolling further down the log, the following is shown:

** Reason for termination ==
** {{badmatch,
        {#{socket =>
               {socket_state,fast_tls,
prefiks commented 3 months ago

Doesn't you have stacktrace somewhere around that? Could you also check in error.log file?

inferenceus commented 3 months ago

Doesn't you have stacktrace somewhere around that? Could you also check in error.log file?

Yes, I have an error log alongside the standard log. It seems to repeat itself after the following, so I'm posting the first instance of this in the logs rather than the entire log:

2024-03-14 18:53:48.274797+00:00 [error] <0.653.0>@proc_lib:crash_report/4:584 CRASH REPORT:
  crasher:
    initial call: xmpp_stream_in:init/1
    pid: <0.653.0>
    registered_name: []
    exception exit: {{badmatch,
                      {#{socket =>
                          {socket_state,fast_tls,
                           {tlssock,#Port<0.62>,
                            #Ref<0.3234609524.3383361537.159014>},
                           262144,#Ref<0.3234609524.3383361537.159003>,
                           {state,131100000,131100000,131100000,
                            1710442428272825},
                           none,
                           <<"/var/lib/ejabberd/certs/f2fb6114afe08265accdd2aa22292d8dc51df0c7">>},
                         conn => c2s_tls,
                         sasl_channel_bindings =>
                          #{<<"tls-exporter">> =>
                             <<164,86,134,235,12,67,189,65,86,215,194,158,107,
                               200,163,9,145,236,39,15,39,198,63,84,252,158,
                               240,200,219,82,137,80>>,
                            <<"tls-server-end-point">> =>
                             <<38,150,167,76,12,227,153,136,141,53,85,36,159,
                               102,87,245,101,76,78,47,236,93,149,124,195,217,
                               243,191,132,148,12,174>>},
                         mgmt_stanzas_req => 0,
                         codec_options => [ignore_els],
                         bind2_session_id =>
                          {<<"8146dd8c-9b95-4481-8146-dd8c9b95d481">>,
                           <<"LeRkXvCckc">>},
                         user => <<"homejacob">>,mgmt_max_queue => 5000,
                         tls_options =>
                          [compression_none,
                           {protocol_options,
                            <<"no_sslv3|no_tlsv1|no_tlsv1_1|cipher_server_preferences">>},
                           {ciphers,
                            <<"ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256">>},
                           {dhfile,
                            <<"/etc/ssl/ejabberd/inferencium/dh.pem">>}],
                         xmlns => <<"jabber:client">>,csi_state => active,
                         jid =>
                          {jid,<<"homejacob">>,<<"inferencium.net">>,
                           <<"Conversations.LeRkXvCckc">>,<<"homejacob">>,
                           <<"inferencium.net">>,
                           <<"Conversations.LeRkXvCckc">>},
                         stream_encrypted => true,mgmt_stanzas_out => 0,
                         mgmt_resend => if_offline,
                         sasl_mech => <<"SCRAM-SHA-256-PLUS">>,
                         sasl2_stream_from =>
                          {jid,<<"homejacob">>,<<"inferencium.net">>,<<>>,
                           <<"homejacob">>,<<"inferencium.net">>,<<>>},
                         server => <<"inferencium.net">>,mgmt_stanzas_in => 0,
                         mod => ejabberd_c2s,stream_compressed => false,
                         csi_queue => {0,#{}},
                         stream_authenticated => true,mgmt_timeout => 300000,
                         stream_id => <<"1900312546708079307">>,
                         pres_a => {0,nil},
                         sasl_state =>
                          {sasl_state,<<"inferencium.net">>,
                           <<"SCRAM-SHA-256-PLUS">>,
                           {state,4,sha256,
                            #{<<"tls-exporter">> =>
                               <<164,86,134,235,12,67,189,65,86,215,194,158,
                                 107,200,163,9,145,236,39,15,39,198,63,84,252,
                                 158,240,200,219,82,137,80>>,
                              <<"tls-server-end-point">> =>
                               <<38,150,167,76,12,227,153,136,141,53,85,36,
                                 159,102,87,245,101,76,78,47,236,93,149,124,
                                 195,217,243,191,132,148,12,174>>},
                            <<"sBs1qJafeL47KVmByeGsWkXGJMw3kXVeDubPktj/E2M=">>,
                            <<99,212,178,181,172,5,83,124,158,191,226,203,165,
                              108,46,114,128,94,148,116,193,8,68,97,3,166,1,
                              251,253,211,86,180>>,
                            <<53,54,162,54,153,24,159,7,138,225,186,132,146,
                              193,43,57,142,99,28,146,4,113,2,1,49,179,145,134,
                              234,174,50,106>>,
                            <<"homejacob">>,ejabberd_auth_mnesia,
                            #Fun<ejabberd_c2s.1.73912048>,
                            <<"n=homejacob,r=yDabZYVnTkesY3AbqeLeIFIT3LcnjD1WVrQIaGr1izDNll_hu9Zay7uixSFoXVPhNNL_fzYSlsXFr8iCWG-gEVss2p11Q0CImEXmSum4CiX2RROlZnABTtWPAkoGnwKZElNU-w,r=yDabZYVnTkesY3AbqeLeIFIT3LcnjD1WVrQIaGr1izDNll_hu9Zay7uixSFoXVPhNNL_fzYSlsXFr8iCWG-gEVss2p11Q0CImEXmSum4CiX2RROlZnABTtWPAkoGnwKZElNU-wn51ZxRxCAi/7bTXrsJzD7A==,s=QugQ6T/ayCZUuk7WyIp1rQ==,i=4096,d=sBs1qJafeL47KVmByeGsWkXGJMw3kXVeDubPktj/E2M=">>,
                            <<"yDabZYVnTkesY3AbqeLeIFIT3LcnjD1WVrQIaGr1izDNll_hu9Zay7uixSFoXVPhNNL_fzYSlsXFr8iCWG-gEVss2p11Q0CImEXmSum4CiX2RROlZnABTtWPAkoGnwKZElNU-w">>,
                            <<"n51ZxRxCAi/7bTXrsJzD7A==">>},
                           #Fun<ejabberd_c2s.1.73912048>,
                           #Fun<ejabberd_c2s.3.73912048>,
                           #Fun<ejabberd_c2s.4.73912048>},
                         mgmt_max_timeout => 300000,
                         stream_header_sent => true,mgmt_ack_timeout => 60000,
                         resource => <<"Conversations.LeRkXvCckc">>,
                         tls_enabled => true,zlib => false,
                         stream_timeout => infinity,mgmt_queue_type => ram,
                         tls_verify => false,tls_required => true,
                         auth_module => ejabberd_auth_mnesia,
                         sasl2_inline_els =>
                          [{bind2_bind,<<"Conversations">>,undefined,[]}],
                         stream_state => established,owner => <0.653.0>,
                         stream_version => {1,0},
                         shaper => c2s_shaper,stream_direction => in,
                         stream_restarted => true,mgmt_state => inactive,
                         sid => {{1710,442428,23},<0.653.0>},
                         ip => {{109,250,87,134},53566},
                         lang => <<"en">>,lserver => <<"inferencium.net">>,
                         socket_monitor =>
                          #Ref<0.3234609524.3383230465.159004>,
                         access => c2s,
                         sasl2_ua_id =>
                          <<"8146dd8c-9b95-4481-8146-dd8c9b95d481">>},
                       []}},
                     [{xmpp_stream_in,process_bind2,2,
                       [{file,"src/xmpp_stream_in.erl"},{line,1187}]},
                      {xmpp_stream_in,process_sasl2_success,3,
                       [{file,"src/xmpp_stream_in.erl"},{line,1139}]},
                      {xmpp_stream_in,handle_info,2,
                       [{file,"src/xmpp_stream_in.erl"},{line,412}]},
                      {p1_server,handle_msg,8,
                       [{file,"src/p1_server.erl"},{line,696}]},
                      {proc_lib,init_p_do_apply,3,
                       [{file,"proc_lib.erl"},{line,241}]}]}
      in function  p1_server:terminate/7 (src/p1_server.erl, line 878)
    ancestors: [ejabberd_c2s_sup,ejabberd_sup,<0.127.0>]
    message_queue_len: 0
    messages: []
    links: [<0.618.0>]
    dictionary: [{'$internal_queue_len',0},
                  {rand_seed,{#{type => exsss,next => #Fun<rand.0.65977474>,
                                bits => 58,uniform => #Fun<rand.1.65977474>,
                                uniform_n => #Fun<rand.2.65977474>,
                                jump => #Fun<rand.3.65977474>},
                              [55023630847314065|186960824217213248]}},
                  {already_terminated,true}]
    trap_exit: false
    status: running
    heap_size: 46422
    stack_size: 28
    reductions: 179158
  neighbours:

2024-03-14 18:53:48.277172+00:00 [error] <0.618.0>@supervisor:do_restart/3:759 SUPERVISOR REPORT:
    supervisor: {local,ejabberd_c2s_sup}
    errorContext: child_terminated
    reason: {{badmatch,
                 {#{socket =>
                        {socket_state,fast_tls,
                            {tlssock,#Port<0.62>,
                                #Ref<0.3234609524.3383361537.159014>},
                            262144,#Ref<0.3234609524.3383361537.159003>,
                            {state,131100000,131100000,131100000,
                                1710442428272825},
                            none,
                            <<"/var/lib/ejabberd/certs/f2fb6114afe08265accdd2aa22292d8dc51df0c7">>},
                    conn => c2s_tls,
                    sasl_channel_bindings =>
                        #{<<"tls-exporter">> =>
                              <<164,86,134,235,12,67,189,65,86,215,194,158,107,
                                200,163,9,145,236,39,15,39,198,63,84,252,158,
                                240,200,219,82,137,80>>,
                          <<"tls-server-end-point">> =>
                              <<38,150,167,76,12,227,153,136,141,53,85,36,159,
                                102,87,245,101,76,78,47,236,93,149,124,195,
                                217,243,191,132,148,12,174>>},
                    mgmt_stanzas_req => 0,
                    codec_options => [ignore_els],
                    bind2_session_id =>
                        {<<"8146dd8c-9b95-4481-8146-dd8c9b95d481">>,
                         <<"LeRkXvCckc">>},
                    user => <<"homejacob">>,mgmt_max_queue => 5000,
                    tls_options =>
                        [compression_none,
                         {protocol_options,
                             <<"no_sslv3|no_tlsv1|no_tlsv1_1|cipher_server_preferences">>},
                         {ciphers,
                             <<"ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256">>},
                         {dhfile,<<"/etc/ssl/ejabberd/inferencium/dh.pem">>}],
                    xmlns => <<"jabber:client">>,csi_state => active,
                    jid =>
                        {jid,<<"homejacob">>,<<"inferencium.net">>,
                            <<"Conversations.LeRkXvCckc">>,<<"homejacob">>,
                            <<"inferencium.net">>,
                            <<"Conversations.LeRkXvCckc">>},
                    stream_encrypted => true,mgmt_stanzas_out => 0,
                    mgmt_resend => if_offline,
                    sasl_mech => <<"SCRAM-SHA-256-PLUS">>,
                    sasl2_stream_from =>
                        {jid,<<"homejacob">>,<<"inferencium.net">>,<<>>,
                            <<"homejacob">>,<<"inferencium.net">>,<<>>},
                    server => <<"inferencium.net">>,mgmt_stanzas_in => 0,
                    mod => ejabberd_c2s,stream_compressed => false,
                    csi_queue => {0,#{}},
                    stream_authenticated => true,mgmt_timeout => 300000,
                    stream_id => <<"1900312546708079307">>,
                    pres_a => {0,nil},
                    sasl_state =>
                        {sasl_state,<<"inferencium.net">>,
                            <<"SCRAM-SHA-256-PLUS">>,
                            {state,4,sha256,
                                #{<<"tls-exporter">> =>
                                      <<164,86,134,235,12,67,189,65,86,215,194,
                                        158,107,200,163,9,145,236,39,15,39,198,
                                        63,84,252,158,240,200,219,82,137,80>>,
                                  <<"tls-server-end-point">> =>
                                      <<38,150,167,76,12,227,153,136,141,53,
                                        85,36,159,102,87,245,101,76,78,47,236,
                                        93,149,124,195,217,243,191,132,148,12,
                                        174>>},
                                <<"sBs1qJafeL47KVmByeGsWkXGJMw3kXVeDubPktj/E2M=">>,
                                <<99,212,178,181,172,5,83,124,158,191,226,203,
                                  165,108,46,114,128,94,148,116,193,8,68,97,3,
                                  166,1,251,253,211,86,180>>,
                                <<53,54,162,54,153,24,159,7,138,225,186,132,
                                  146,193,43,57,142,99,28,146,4,113,2,1,49,179,
                                  145,134,234,174,50,106>>,
                                <<"homejacob">>,ejabberd_auth_mnesia,
                                #Fun<ejabberd_c2s.1.73912048>,
                                <<"n=homejacob,r=yDabZYVnTkesY3AbqeLeIFIT3LcnjD1WVrQIaGr1izDNll_hu9Zay7uixSFoXVPhNNL_fzYSlsXFr8iCWG-gEVss2p11Q0CImEXmSum4CiX2RROlZnABTtWPAkoGnwKZElNU-w,r=yDabZYVnTkesY3AbqeLeIFIT3LcnjD1WVrQIaGr1izDNll_hu9Zay7uixSFoXVPhNNL_fzYSlsXFr8iCWG-gEVss2p11Q0CImEXmSum4CiX2RROlZnABTtWPAkoGnwKZElNU-wn51ZxRxCAi/7bTXrsJzD7A==,s=QugQ6T/ayCZUuk7WyIp1rQ==,i=4096,d=sBs1qJafeL47KVmByeGsWkXGJMw3kXVeDubPktj/E2M=">>,
                                <<"yDabZYVnTkesY3AbqeLeIFIT3LcnjD1WVrQIaGr1izDNll_hu9Zay7uixSFoXVPhNNL_fzYSlsXFr8iCWG-gEVss2p11Q0CImEXmSum4CiX2RROlZnABTtWPAkoGnwKZElNU-w">>,
                                <<"n51ZxRxCAi/7bTXrsJzD7A==">>},
                            #Fun<ejabberd_c2s.1.73912048>,
                            #Fun<ejabberd_c2s.3.73912048>,
                            #Fun<ejabberd_c2s.4.73912048>},
                    mgmt_max_timeout => 300000,stream_header_sent => true,
                    mgmt_ack_timeout => 60000,
                    resource => <<"Conversations.LeRkXvCckc">>,
                    tls_enabled => true,zlib => false,
                    stream_timeout => infinity,mgmt_queue_type => ram,
                    tls_verify => false,tls_required => true,
                    auth_module => ejabberd_auth_mnesia,
                    sasl2_inline_els =>
                        [{bind2_bind,<<"Conversations">>,undefined,[]}],
                    stream_state => established,owner => <0.653.0>,
                    stream_version => {1,0},
                    shaper => c2s_shaper,stream_direction => in,
                    stream_restarted => true,mgmt_state => inactive,
                    sid => {{1710,442428,23},<0.653.0>},
                    ip => {{109,250,87,134},53566},
                    lang => <<"en">>,lserver => <<"inferencium.net">>,
                    socket_monitor => #Ref<0.3234609524.3383230465.159004>,
                    access => c2s,
                    sasl2_ua_id => <<"8146dd8c-9b95-4481-8146-dd8c9b95d481">>},
                  []}},
             [{xmpp_stream_in,process_bind2,2,
                  [{file,"src/xmpp_stream_in.erl"},{line,1187}]},
              {xmpp_stream_in,process_sasl2_success,3,
                  [{file,"src/xmpp_stream_in.erl"},{line,1139}]},
              {xmpp_stream_in,handle_info,2,
                  [{file,"src/xmpp_stream_in.erl"},{line,412}]},
              {p1_server,handle_msg,8,[{file,"src/p1_server.erl"},{line,696}]},
              {proc_lib,init_p_do_apply,3,
                  [{file,"proc_lib.erl"},{line,241}]}]}
    offender: [{pid,<0.653.0>},
               {id,undefined},
               {mfargs,{ejabberd_c2s,start_link,undefined}},
               {restart_type,temporary},
               {significant,false},
               {shutdown,5000},
               {child_type,worker}]
prefiks commented 3 months ago

Thank you, could you tell me what what version you have installed, and from where?

It looks like some parts are from different versions (it looks like you have xmpp module from newer version than rest of ejabberd packages), and you are hitting fallback path in xmpp when it's uses don't implement some features added in recent version.

I will fix fallback code that trigger that crash, but you probably need to see why you are using older ejabberd with never xmpp, as that is not really supported configuration.

inferenceus commented 3 months ago

@prefiks

Thank you, could you tell me what what version you have installed, and from where?

ejabberd 23.10 via Gentoo Linux package manager, from official Gentoo Linux package repository.

I will fix fallback code that trigger that crash, but you probably need to see why you are using older ejabberd with never xmpp, as that is not really supported configuration.

This could have been caused by a recent OS update.

I have attempted to reinstall ejabberd 23.10, which is the currently installed version as I haven't yet had 24.02 installed, but it has failed to fix the issue. I also reinstalled the fast_tls package, as it seems to be shown in the logs, to no avail.

inferenceus commented 3 months ago

Updating to ejabberd 24.02 has resolved the issue.

prefiks commented 3 months ago

I commited https://github.com/processone/xmpp/commit/0451c0787e75e669db8a594d69afc5e192420e50 that should prevent crash when used with client without bind2 callbacks.