diff options
author | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2018-05-08 09:36:34 +0300 |
---|---|---|
committer | Evgeniy Khramtsov <ekhramtsov@process-one.net> | 2018-05-08 09:36:34 +0300 |
commit | 61ae0ff02ca848afc3ecc37a6c5a3e52bf5f5dc7 (patch) | |
tree | 063e7bac5c56bc669ee33bbf44d3d84e229a956f /src/ejabberd_auth_external.erl | |
parent | Don't stop on out-of-date requests (diff) |
Improve logging of external authentication failures
Diffstat (limited to 'src/ejabberd_auth_external.erl')
-rw-r--r-- | src/ejabberd_auth_external.erl | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/src/ejabberd_auth_external.erl b/src/ejabberd_auth_external.erl index b36c519d..ec30870d 100644 --- a/src/ejabberd_auth_external.erl +++ b/src/ejabberd_auth_external.erl @@ -64,27 +64,27 @@ check_password(User, AuthzId, Server, Password) -> set_password(User, Server, Password) -> case extauth:set_password(User, Server, Password) of Res when is_boolean(Res) -> ok; - {error, Reason} -> failure(Reason) + {error, Reason} -> failure(User, Server, ?FUNCTION_NAME, Reason) end. try_register(User, Server, Password) -> case extauth:try_register(User, Server, Password) of true -> ok; false -> {error, not_allowed}; - {error, Reason} -> failure(Reason) + {error, Reason} -> failure(User, Server, ?FUNCTION_NAME, Reason) end. user_exists(User, Server) -> case extauth:user_exists(User, Server) of Res when is_boolean(Res) -> Res; - {error, Reason} -> failure(Reason) + {error, Reason} -> failure(User, Server, ?FUNCTION_NAME, Reason) end. remove_user(User, Server) -> case extauth:remove_user(User, Server) of false -> {error, not_allowed}; true -> ok; - {error, Reason} -> failure(Reason) + {error, Reason} -> failure(User, Server, ?FUNCTION_NAME, Reason) end. check_password_extauth(User, _AuthzId, Server, Password) -> @@ -92,16 +92,17 @@ check_password_extauth(User, _AuthzId, Server, Password) -> case extauth:check_password(User, Server, Password) of Res when is_boolean(Res) -> Res; {error, Reason} -> - failure(Reason), + failure(User, Server, ?FUNCTION_NAME, Reason), false end; true -> false end. --spec failure(any()) -> {error, db_failure}. -failure(Reason) -> - ?ERROR_MSG("External authentication program failure: ~p", [Reason]), +-spec failure(binary(), binary(), atom(), any()) -> {error, db_failure}. +failure(User, Server, Fun, Reason) -> + ?ERROR_MSG("External authentication program failed when calling " + "'~s' for ~s@~s: ~p", [Fun, User, Server, Reason]), {error, db_failure}. opt_type(extauth_cache) -> |