This module defines the xmpp_sasl behaviour.
Required callback functions: mech_new/6, mech_step/2.
channel_bindings() = none | #{binary() => binary()}
check_password_digest_fun() = function()
check_password_fun() = function()
error_reason() = xmpp_sasl_digest:error_reason() | xmpp_sasl_oauth:error_reason() | xmpp_sasl_plain:error_reason() | xmpp_sasl_scram:error_reason() | xmpp_sasl_fast:error_reason() | unsupported_mechanism | nodeprep_failed | empty_username | aborted
get_fast_tokens_fun() = function()
get_password_fun() = function()
mech_state() = term()
mechanism() = binary()
sasl_property() = {username, binary()} | {authzid, binary()} | {mechanism, binary()} | {auth_module, atom()}
sasl_return() = {ok, [sasl_property()]} | {ok, [sasl_property()], binary()} | {continue, binary(), sasl_state()} | {error, error_reason(), binary()} | {error, error_reason()}
sasl_state() = #sasl_state{server_host = binary(), mech_name = mechanism(), mech_state = mech_state(), callbacks = map()}
| format_error/2 | |
| listmech/0 | |
| server_new/5 | |
| server_start/6 | |
| server_step/2 |
format_error(Mech::mechanism(), Reason::error_reason()) -> {atom(), binary()}
listmech() -> [mechanism()]
server_new(ServerHost::binary(), GetPassword::get_password_fun(), CheckPassword::check_password_fun(), CheckPasswordDigest::check_password_digest_fun(), GetFastTokens::get_fast_tokens_fun() | undefined) -> sasl_state()
server_start(State::sasl_state(), Mech::mechanism(), ClientIn::binary(), ChannelBindings::channel_bindings(), Mechs::[binary()] | undefined | not_available, UAId::binary() | undefined) -> sasl_return()
server_step(State::sasl_state(), ClientIn::binary()) -> sasl_return()
Generated by EDoc