Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Fix invalid username in scram authentication #4118

Merged
merged 1 commit into from
Sep 7, 2023

Conversation

NelsonVides
Copy link
Collaborator

@NelsonVides NelsonVides commented Sep 7, 2023

Addresses MIM-2035

When the connecting user starts SASL authentication with SCRAM, e.g.

<auth mechanism="SCRAM-SHA-512">biwsbj0gYm9iLHI9NGVLZkZBLzVjbWp2N3FGR1FNY1V4dz09</auth>

which decodes to

n,,n= bob,r=4eKfFA/5cmjv7qFGQMcUxw==

MongooseIM has the following error in the logs:

when=2023-09-07T08:52:53.097286+00:00 level=error reason="{error,function_clause,[{ejabberd_auth,get_passterm_with_authmodule,[<<\"advanced\">>,error],[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/auth/ejabberd_auth.erl\"},{line,295}]},{cyrsasl_scram,get_scram_attributes,3,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/sasl/cyrsasl_scram.erl\"},{line,69}]},{cyrsasl_scram,'-mech_new/3-fun-0-',5,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/sasl/cyrsasl_scram.erl\"},{line,30}]},{fast_scram,apply_fun,2,[{file,\"fast_scram.erl\"},{line,165}]},{fast_scram,mech_step,2,[{file,\"fast_scram.erl\"},{line,106}]},{cyrsasl_scram,mech_step,2,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/sasl/cyrsasl_scram.erl\"},{line,54}]},{cyrsasl,server_step,2,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/sasl/cyrsasl.erl\"},{line,130}]},{mongoose_c2s,do_handle_auth_start,4,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/c2s/mongoose_c2s.erl\"},{line,400}]}]}" pid=<0.19732.0> at=gen_statem:error_info/7:2617 state_enter=false timeouts={1,[{state_timeout,state_timeout_termination}]} postponed= callback_mode=handle_event_function client_info=undefined modules=[mongoose_c2s] queue="[{internal,{xmlel,<<\"auth\">>,[{<<\"mechanism\">>,<<\"SCRAM-SHA-512\">>},{<<\"xmlns\">>,<<\"urn:ietf:params:xml:ns:xmpp-sasl\">>}],[{xmlcdata,<<\"biwsbj0gYm9iLHI9NGVLZkZBLzVjbWp2N3FGR1FNY1V4dz09\">>}]}}]" state="{{wait_for_feature_before_auth,{sasl_state,<<\"jabber\">>,<<\"test-erlang-solutions1693992338.trymongoose.im\">>,<<\"advanced\">>,<<>>,undefined,undefined,{mongoose_credentials,<<\"test-erlang-solutions1693992338.trymongoose.im\">>,<<\"advanced\">>,[],[],[ejabberd_auth_rdbms]}},3},{c2s_data,<<\"advanced\">>,<<\"test-erlang-solutions1693992338.trymongoose.im\">>,<<\"en\">>,{1694076773095334,<0.19732.0>},<<\"7db3caad6170885d\">>,undefined,{c2s_socket,mod_websockets,{websocket,<0.19730.0>,{{127,0,0,1},55613},undefined}},{parser,#Ref<0.1133472776.1103495169.169242>,[]},none,#{access => all,port => 5280,shaper => none,hibernate_after => 0,max_stanza_size => 0,ip_tuple => {0,0,0,0},c2s_state_timeout => 5000,backwards_compatible_session => true,proto => tcp,xml_socket => true},#{},#{}}}" log= name=<0.19732.0> label={gen_statem,terminate}
when=2023-09-07T08:52:53.099650+00:00 level=error pid=<0.19732.0> at=proc_lib:crash_report/4:584 report="[[{initial_call,{mongoose_c2s,init,['Argument__1']}},{pid,<0.19732.0>},{registered_name,[]},{error_info,{error,function_clause,[{ejabberd_auth,get_passterm_with_authmodule,[<<\"advanced\">>,error],[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/auth/ejabberd_auth.erl\"},{line,295}]},{cyrsasl_scram,get_scram_attributes,3,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/sasl/cyrsasl_scram.erl\"},{line,69}]},{cyrsasl_scram,'-mech_new/3-fun-0-',5,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/sasl/cyrsasl_scram.erl\"},{line,30}]},{fast_scram,apply_fun,2,[{file,\"fast_scram.erl\"},{line,165}]},{fast_scram,mech_step,2,[{file,\"fast_scram.erl\"},{line,106}]},{cyrsasl_scram,mech_step,2,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/sasl/cyrsasl_scram.erl\"},{line,54}]},{cyrsasl,server_step,2,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/sasl/cyrsasl.erl\"},{line,130}]},{mongoose_c2s,do_handle_auth_start,4,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/c2s/mongoose_c2s.erl\"},{line,400}]}]}},{ancestors,[mongoose_c2s_sup,ejabberd_sup,<0.340.0>]},{message_queue_len,0},{messages,[]},{links,[<0.619.0>]},{dictionary,[]},{trap_exit,false},{status,running},{heap_size,10958},{stack_size,28},{reductions,76483}],[]]" label={proc_lib,crash}
when=2023-09-07T08:52:53.101167+00:00 level=error pid=<0.619.0> at=supervisor:do_restart/3:757 report="[{supervisor,{local,mongoose_c2s_sup}},{errorContext,child_terminated},{reason,{function_clause,[{ejabberd_auth,get_passterm_with_authmodule,[<<\"advanced\">>,error],[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/auth/ejabberd_auth.erl\"},{line,295}]},{cyrsasl_scram,get_scram_attributes,3,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/sasl/cyrsasl_scram.erl\"},{line,69}]},{cyrsasl_scram,'-mech_new/3-fun-0-',5,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/sasl/cyrsasl_scram.erl\"},{line,30}]},{fast_scram,apply_fun,2,[{file,\"fast_scram.erl\"},{line,165}]},{fast_scram,mech_step,2,[{file,\"fast_scram.erl\"},{line,106}]},{cyrsasl_scram,mech_step,2,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/sasl/cyrsasl_scram.erl\"},{line,54}]},{cyrsasl,server_step,2,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/sasl/cyrsasl.erl\"},{line,130}]},{mongoose_c2s,do_handle_auth_start,4,[{file,\"/Users/pawelchrzaszcz/dev/mongoose/src/c2s/mongoose_c2s.erl\"},{line,400}]}]}},{offender,[{pid,<0.19732.0>},{id,undefined},{mfargs,{mongoose_c2s,start_link,undefined}},{restart_type,temporary},{significant,false},{shutdown,brutal_kill},{child_type,worker}]}]" label={supervisor,child_terminated}
10:52:53.098 [error] gen_statem <0.19732.0> in state {wait_for_feature_before_auth,{sasl_state,<<106,97,98,98,101,114>>,<<116,101,115,116,45,101,114,108,97,110,103,45,115,111,108,117,116,105,111,110,115,49,54,57,51,57,57,50,51,51,56,46,116,114,121,109,111,110,103,111,111,115,101,46,105,109>>,<<97,100,118,97,110,99,101,100>>,<<>>,undefined,undefined,{mongoose_credentials,<<116,101,115,116,45,101,114,108,97,110,103,45,115,111,108,117,116,105,111,110,115,49,54,57,51,57,57,50,51,51,56,46,116,114,121,109,111,110,103,111,111,115,101,46,105,109>>,<<97,100,118,97,110,99,101,100>>,[],[],[ejabberd_auth_rdbms]}},3} terminated with reason: {function_clause,handle_event_function}
10:52:53.099 [error] CRASH REPORT Process <0.19732.0> with 0 neighbours crashed with reason: no function clause matching ejabberd_auth:get_passterm_with_authmodule(<<"advanced">>, error) line 295
10:52:53.101 [error] Supervisor mongoose_c2s_sup had child undefined started with {mongoose_c2s,start_link,undefined} at <0.19732.0> exit with reason no function clause matching ejabberd_auth:get_passterm_with_authmodule(<<"advanced">>, error) line 295 in context child_terminated

This is all because the user name starts with a space, and string-prepping results with an error atom, which is then passed to the following functions - and this shouldn’t take place.

MongooseIM should return with a proper authentication error instead.

@mongoose-im

This comment was marked as outdated.

@codecov
Copy link

codecov bot commented Sep 7, 2023

Codecov Report

Patch coverage: 100.00% and project coverage change: -0.02% ⚠️

Comparison is base (a82233e) 83.92% compared to head (ad67d9e) 83.90%.

Additional details and impacted files
@@            Coverage Diff             @@
##           master    #4118      +/-   ##
==========================================
- Coverage   83.92%   83.90%   -0.02%     
==========================================
  Files         552      552              
  Lines       33628    33630       +2     
==========================================
- Hits        28223    28218       -5     
- Misses       5405     5412       +7     
Files Changed Coverage Δ
src/sasl/cyrsasl_scram.erl 95.91% <100.00%> (+0.17%) ⬆️

... and 12 files with indirect coverage changes

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@NelsonVides NelsonVides force-pushed the bugfix/bad_nameprep_in_scram branch from 49f8c98 to b39a249 Compare September 7, 2023 10:51
@mongoose-im

This comment was marked as outdated.

@NelsonVides NelsonVides marked this pull request as ready for review September 7, 2023 11:20
Copy link
Member

@chrzaszcz chrzaszcz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good 👍

@NelsonVides NelsonVides force-pushed the bugfix/bad_nameprep_in_scram branch from b39a249 to ad67d9e Compare September 7, 2023 11:55
@mongoose-im
Copy link
Collaborator

mongoose-im commented Sep 7, 2023

elasticsearch_and_cassandra_25 / elasticsearch_and_cassandra_mnesia / ad67d9e
Reports root/ big
OK: 369 / Failed: 0 / User-skipped: 38 / Auto-skipped: 0


small_tests_24 / small_tests / ad67d9e
Reports root / small


small_tests_25_arm64 / small_tests / ad67d9e
Reports root / small


small_tests_25 / small_tests / ad67d9e
Reports root / small


ldap_mnesia_24 / ldap_mnesia / ad67d9e
Reports root/ big
OK: 2276 / Failed: 0 / User-skipped: 833 / Auto-skipped: 0


dynamic_domains_mysql_redis_25 / mysql_redis / ad67d9e
Reports root/ big
OK: 4205 / Failed: 0 / User-skipped: 116 / Auto-skipped: 0


ldap_mnesia_25 / ldap_mnesia / ad67d9e
Reports root/ big
OK: 2276 / Failed: 0 / User-skipped: 833 / Auto-skipped: 0


dynamic_domains_pgsql_mnesia_24 / pgsql_mnesia / ad67d9e
Reports root/ big
OK: 4237 / Failed: 0 / User-skipped: 84 / Auto-skipped: 0


dynamic_domains_pgsql_mnesia_25 / pgsql_mnesia / ad67d9e
Reports root/ big
OK: 4237 / Failed: 0 / User-skipped: 84 / Auto-skipped: 0


dynamic_domains_mssql_mnesia_25 / odbc_mssql_mnesia / ad67d9e
Reports root/ big
OK: 4234 / Failed: 0 / User-skipped: 87 / Auto-skipped: 0


internal_mnesia_25 / internal_mnesia / ad67d9e
Reports root/ big
OK: 2422 / Failed: 0 / User-skipped: 687 / Auto-skipped: 0


pgsql_cets_25 / pgsql_cets / ad67d9e
Reports root/ big
OK: 4596 / Failed: 0 / User-skipped: 121 / Auto-skipped: 0


pgsql_mnesia_25 / pgsql_mnesia / ad67d9e
Reports root/ big
OK: 4626 / Failed: 0 / User-skipped: 91 / Auto-skipped: 0


mysql_redis_25 / mysql_redis / ad67d9e
Reports root/ big
OK: 4606 / Failed: 0 / User-skipped: 111 / Auto-skipped: 0


mssql_mnesia_25 / odbc_mssql_mnesia / ad67d9e
Reports root/ big
OK: 4623 / Failed: 0 / User-skipped: 94 / Auto-skipped: 0


pgsql_mnesia_24 / pgsql_mnesia / ad67d9e
Reports root/ big
OK: 1 / Failed: 40 / User-skipped: 16 / Auto-skipped: 2869

mim_c2s_SUITE:init_per_suite
{'EXIT',
  {{badrpc,
     {'EXIT',
       {noproc,
         {gen_server,call,
           [gen_hook,
            {delete_handler,
              {user_send_presence,<<"localhost">>},
              {hook_handler,50,
                fun mod_presence:user_send_presence/3,
                #{hook_name => user_send_presence,
                hook_tag => <<"localhost">>,
                host_type => <<"localhost">>}}}]}}}},
   [{distributed_helper,rpc,
      [#{node => mongooseim@localhost},
       mongoose_modules,ensure_stopped,
       [<<"localhost">>,mod_presence]],
      [{file,
         "/home/circleci/project/big_tests/tests/distributed_helper.erl"},
       {line,121}]},
    {dynamic_modules,'-ensure_stopped/3-lc$^0/1-0-',3,
      [{file,"/home/circleci/project/big_tests/tests/dynamic_modules.erl"},
       {line,39}]},
    {mim_c2s_SUITE,init_per_suite,1,
      [{file,"/home/circleci/project/big_tests/tests/mim_c2s_SUITE.erl"},
       {line,46}]},
    {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1783}]},
    {test_server,run_test_case_eval1,6,
      [{file,"test_server.erl"},{line,1380}]},
    {test_server,run_test_case_eval,9,
      [{file,"test_server.erl"},{line,1224}]}]}}

Report log

acc_e2e_SUITE:init_per_suite
{'EXIT',
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,new,
            [test_message_index,
             [named_table,public,{heir,undefined,none}]],
            [{error_info,#{module => erl_stdlib_errors}}]},
          {acc_test_helper,recreate_table,0,[{file,[]},{line,77}]}]}}},
   [{distributed_helper,rpc,
      [#{node => mongooseim@localhost},acc_test_helper,recreate_table,[]],
      [{file,
         "/home/circleci/project/big_tests/tests/distributed_helper.erl"},
       {line,121}]},
    {acc_e2e_SUITE,init_per_suite,1,
      [{file,"/home/circleci/project/big_tests/tests/acc_e2e_SUITE.erl"},
       {line,68}]},
    {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1783}]},
    {test_server,run_test_case_eval1,6,
      [{file,"test_server.erl"},{line,1380}]},
    {test_server,run_test_case_eval,9,
      [{file,"test_server.erl"},{line,1224}]}]}}

Report log

accounts_SUITE:init_per_suite
{'EXIT',{badmatch,{error,econnrefused}}}

Report log

adhoc_SUITE:disco_visible:init_per_group
{'EXIT',
  {{badrpc,
     {'EXIT',
       {noproc,
         {gen_server,call,
           [gen_hook,
            {delete_handler,
              {disco_local_features,<<"localhost">>},
              {hook_handler,99,
                fun mod_adhoc:disco_local_features/3,
                #{hook_name => disco_local_features,
                hook_tag => <<"localhost">>,
                host_type => <<"localhost">>}}}]}}}},
   [{distributed_helper,rpc,
      [#{node => mongooseim@localhost},
       mongoose_modules,replace_modules,
       [<<"localhost">>,[],
      #{mod_adhoc =>
          #{iqdisc => one_queue,report_commands_node => true}}]],
      [{file,
         "/home/circleci/project/big_tests/tests/distributed_helper.erl"},
       {line,121}]},
    {adhoc_SUITE,init_modules,2,
      [{file,"/home/circleci/project/big_tests/tests/adhoc_SUITE.erl"},
       {line,81}]},
    {adhoc_SUITE,init_per_group,2,
      [{file,"/home/circleci/project/big_tests/tests/adhoc_SUITE.erl"},
       {line,66}]},
    {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1783}]},
    {test_server,run_test_case_eval1,6,
      [{file,"test_server.erl"},{line,1380}]},
    {test_server,run_test_case_eval,9,
      [{file,"test_server.erl"},{line,1224}]}]}}

Report log

adhoc_SUITE:adhoc:init_per_group
{'EXIT',
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"alicE">>,<<"localhost">>,<<"matygrysa">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
    {escalus_ejabberd,create_users,2,
      [{file,
   ...

Report log

ct_framework:error_in_suite
{error,'amp_big_SUITE:all/0 failed'}

Report log

anonymous_SUITE:anonymous:connection_is_registered_with_sasl_anon
{error,
  {{badmatch,
     {error,
       {{badmatch,{error,econnrefused}},
        [{escalus_tcp,init,1,
           [{file,
            "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_tcp.erl"},
          {line,209}]},
         {gen_server,init_it,2,[{file,"gen_server.erl"},{line,423}]},
         {gen_server,init_it,6,[{file,"gen_server.erl"},{line,390}]},
         {proc_lib,init_p_do_apply,3,
           [{file,"proc_lib.erl"},{line,226}]}]}}},
   [{escalus_tcp,connect,1,
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_tcp.erl"},
       {line,88}]},
    {escalus_connection,connect,1,
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_connection.erl"},
       {line,187}]},
    {escalus_connection,start,2,
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_connection.erl"},
       {line,144}]},
    {escalus_client,start,3,
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_client.erl"},
       {line,58}]},
    {escalus_story,'-start_ready_clients/2-fun-0-',3,
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_story.erl"},
       {line,131}]},
    {lists,foldl,3,[{file,"lists.erl"},{line,1267}]},
    {escalus_story,start_ready_clients,2,
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escal...

Report log

auth_methods_for_c2s_SUITE:two_methods_enabled:init_per_group
{'EXIT',
  {{badmatch,{error,{not_started,mongooseim}}},
   [{ejabberd_node_utils,restart_application,2,
      [{file,
         "/home/circleci/project/big_tests/tests/ejabberd_node_utils.erl"},
       {line,76}]},
    {auth_methods_for_c2s_SUITE,init_per_group,2,
      [{file,
         "/home/circleci/project/big_tests/tests/auth_methods_for_c2s_SUITE.erl"},
       {line,40}]},
    {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1783}]},
    {test_server,run_test_case_eval1,6,
      [{file,"test_server.erl"},{line,1380}]},
    {test_server,run_test_case_eval,9,
      [{file,"test_server.erl"},{line,1224}]}]}}

Report log

auth_methods_for_c2s_SUITE:metrics:metrics_incremented_on_user_connect
{error,
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"alicE_metrics_incremented_on_user_connect_8">>,<<"localhost">>,
      <<"matygrysa">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
    {escalu...

Report log

bosh_SUITE:without_bosh:init_per_group
{'EXIT',
  {{badrpc,
     {'EXIT',
       {noproc,
         {gen_server,call,
           [gen_hook,
            {delete_handler,
              {node_cleanup,global},
              {hook_handler,50,fun mod_bosh:node_cleanup/3,
                #{hook_name => node_cleanup,
                hook_tag => global}}}]}}}},
   [{distributed_helper,rpc,
      [#{node => mongooseim@localhost},
       mongoose_modules,replace_modules,
       [<<"localhost">>,[mod_bosh],#{}]],
      [{file,
         "/home/circleci/project/big_tests/tests/distributed_helper.erl"},
       {line,121}]},
    {bosh_SUITE,init_per_group,2,
      [{file,"/home/circleci/project/big_tests/tests/bosh_SUITE.erl"},
       {line,123}]},
    {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1783}]},
    {test_server,run_test_case_eval1,6,
      [{file,"test_server.erl"},{line,1380}]},
    {test_server,run_test_case_eval,9,
      [{file,"test_server.erl"},{line,1224}]}]}}

Report log

bosh_SUITE:essential:create_and_terminate_session
{error,{thrown,{timeout,session_creation_response}}}

Report log

bosh_SUITE:essential_https:create_and_terminate_session
{error,{thrown,{timeout,session_creation_response}}}

Report log

bosh_SUITE:chat:init_per_group
{'EXIT',
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"carol">>,<<"localhost">>,<<"jinglebells">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
    {escalus_ejabberd,create_users,2,
      [{file,
 ...

Report log

bosh_SUITE:chat_https:init_per_group
{'EXIT',
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"carol">>,<<"localhost">>,<<"jinglebells">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
    {escalus_ejabberd,create_users,2,
      [{file,
 ...

Report log

bosh_SUITE:time:init_per_group
{'EXIT',
  {{badrpc,
     {'EXIT',
       {noproc,
         {gen_server,call,
           [gen_hook,
            {delete_handler,
              {node_cleanup,global},
              {hook_handler,50,fun mod_bosh:node_cleanup/3,
                #{hook_name => node_cleanup,
                hook_tag => global}}}]}}}},
   [{distributed_helper,rpc,
      [#{node => mongooseim@localhost},
       mongoose_modules,replace_modules,
       [<<"localhost">>,[],
      #{mod_bosh =>
          #{backend => mnesia,inactivity => 2,max_pause => 120,
          max_wait => 5,server_acks => false}}]],
      [{file,
         "/home/circleci/project/big_tests/tests/distributed_helper.erl"},
       {line,121}]},
    {bosh_SUITE,init_per_group,2,
      [{file,"/home/circleci/project/big_tests/tests/bosh_SUITE.erl"},
       {line,119}]},
    {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1783}]},
    {test_server,run_test_case_eval1,6,
      [{file,"test_server.erl"},{line,1380}]},
    {test_server,run_test_case_eval,9,
      [{file,"test_server.erl"},{line,1224}]}]}}

Report log

bosh_SUITE:acks:init_per_group
{'EXIT',
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"carol">>,<<"localhost">>,<<"jinglebells">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
    {escalus_ejabberd,create_users,2,
      [{file,
 ...

Report log

bosh_SUITE:server_acks:init_per_group
{'EXIT',
  {{badrpc,
     {'EXIT',
       {noproc,
         {gen_server,call,
           [gen_hook,
            {delete_handler,
              {node_cleanup,global},
              {hook_handler,50,fun mod_bosh:node_cleanup/3,
                #{hook_name => node_cleanup,
                hook_tag => global}}}]}}}},
   [{distributed_helper,rpc,
      [#{node => mongooseim@localhost},
       mongoose_modules,replace_modules,
       [<<"localhost">>,[],
      #{mod_bosh =>
          #{backend => mnesia,inactivity => 30,max_pause => 120,
          max_wait => infinity,server_acks => true}}]],
      [{file,
         "/home/circleci/project/big_tests/tests/distributed_helper.erl"},
       {line,121}]},
    {bosh_SUITE,init_per_group,2,
      [{file,"/home/circleci/project/big_tests/tests/bosh_SUITE.erl"},
       {line,133}]},
    {test_server,ts_tc,3,[{file,"test_server.erl"},{line,1783}]},
    {test_server,run_test_case_eval1,6,
      [{file,"test_server.erl"},{line,1380}]},
    {test_server,run_test_case_eval,9,
      [{file,"test_server.erl"},{line,1224}]}]}}

Report log

bosh_SUITE:interleave_requests_statem:init_per_group
{'EXIT',
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"carol">>,<<"localhost">>,<<"jinglebells">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
    {escalus_ejabberd,create_users,2,
      [{file,
 ...

Report log

carboncopy_SUITE:one2one:discovering_support
{error,
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"alicE_discovering_support_9">>,<<"localhost">>,<<"matygrysa">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
    {escalus_ejabberd,create_users...

Report log

carboncopy_SUITE:one2one:disabling_carbons
{error,
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"alicE_disabling_carbons_10">>,<<"localhost">>,<<"matygrysa">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
    {escalus_ejabberd,create_users,...

Report log

carboncopy_SUITE:one2one:enabling_carbons
{error,
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"alicE_enabling_carbons_11">>,<<"localhost">>,<<"matygrysa">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
    {escalus_ejabberd,create_users,2...

Report log

carboncopy_SUITE:one2one:non_enabled_clients_dont_get_sent_carbons
{error,
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"alicE_non_enabled_clients_dont_get_sent_carbons_13">>,
      <<"localhost">>,<<"matygrysa">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
    ...

Report log

carboncopy_SUITE:one2one:avoiding_carbons
{error,
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"alicE_avoiding_carbons_12">>,<<"localhost">>,<<"matygrysa">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
    {escalus_ejabberd,create_users,2...

Report log

carboncopy_SUITE:one2one:non_enabled_clients_dont_get_received_carbons
{error,
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"alicE_non_enabled_clients_dont_get_received_carbons_14">>,
      <<"localhost">>,<<"matygrysa">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
...

Report log

carboncopy_SUITE:one2one:unavailable_resources_dont_get_carbons
{error,
  {{badrpc,
     {'EXIT',
       {badarg,
         [{ets,lookup,
            [mongoose_domain_core,<<"localhost">>],
            [{error_info,
               #{cause => id,module => erl_stdlib_errors}}]},
          {mongoose_domain_core,get_host_type,1,
            [{file,
               "/home/circleci/project/src/domain/mongoose_domain_core.erl"},
             {line,48}]},
          {ejabberd_auth,call_auth_modules_for_domain,3,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,512}]},
          {ejabberd_auth,does_user_exist,1,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,310}]},
          {ejabberd_auth,try_register,2,
            [{file,
               "/home/circleci/project/src/auth/ejabberd_auth.erl"},
             {line,220}]},
          {mongoose_account_api,register_user,3,
            [{file,
               "/home/circleci/project/src/mongoose_account_api.erl"},
             {line,82}]},
          {ejabberd_admin,register,3,[]}]}}},
   [{escalus_rpc,call_with_cookie_match,
      [mongooseim@localhost,ejabberd_admin,register,
       [<<"alicE_unavailable_resources_dont_get_carbons_15">>,
      <<"localhost">>,<<"matygrysa">>],
       3000,mongooseim],
      [{file,
         "/home/circleci/project/big_tests/_build/default/lib/escalus/src/escalus_rpc.erl"},
       {line,34}]},
    {lists,foreach,2,[{file,"lists.erl"},{line,1342}]},
    {es...

Report log

179 errors were truncated


pgsql_mnesia_24 / pgsql_mnesia / ad67d9e
Reports root/ big
OK: 4626 / Failed: 0 / User-skipped: 91 / Auto-skipped: 0

Copy link
Member

@chrzaszcz chrzaszcz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

👌

@chrzaszcz chrzaszcz merged commit f1aa1ef into master Sep 7, 2023
@chrzaszcz chrzaszcz deleted the bugfix/bad_nameprep_in_scram branch September 7, 2023 13:52
@Neustradamus

This comment was marked as spam.

@chrzaszcz chrzaszcz added this to the 6.2.0 milestone Dec 11, 2023
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants