diff options
Diffstat (limited to 'src/ejabberd_auth_external.erl')
-rw-r--r-- | src/ejabberd_auth_external.erl | 15 |
1 files changed, 12 insertions, 3 deletions
diff --git a/src/ejabberd_auth_external.erl b/src/ejabberd_auth_external.erl index 0aa825f73..67477f27a 100644 --- a/src/ejabberd_auth_external.erl +++ b/src/ejabberd_auth_external.erl @@ -25,11 +25,12 @@ -module(ejabberd_auth_external). +-behaviour(ejabberd_config). + -author('alexey@process-one.net'). -behaviour(ejabberd_auth). -%% External exports -export([start/1, set_password/3, check_password/3, check_password/5, try_register/3, dirty_get_registered_users/0, get_vh_registered_users/1, @@ -37,8 +38,8 @@ get_vh_registered_users_number/1, get_vh_registered_users_number/2, get_password/2, get_password_s/2, is_user_exists/2, remove_user/2, - remove_user/3, store_type/0, - plain_password_required/0]). + remove_user/3, store_type/0, plain_password_required/0, + opt_type/1]). -include("ejabberd.hrl"). -include("logger.hrl"). @@ -311,3 +312,11 @@ get_mod_last_configured(Server) -> is_configured(Host, Module) -> gen_mod:is_loaded(Host, Module). + +opt_type(extauth_cache) -> + fun (false) -> undefined; + (I) when is_integer(I), I >= 0 -> I + end; +opt_type(extauth_program) -> + fun (V) -> binary_to_list(iolist_to_binary(V)) end; +opt_type(_) -> [extauth_cache, extauth_program]. |