aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/ejabberd_auth_external.erl4
-rw-r--r--src/extauth.erl7
2 files changed, 9 insertions, 2 deletions
diff --git a/src/ejabberd_auth_external.erl b/src/ejabberd_auth_external.erl
index 0a1515d34..3e300e3a0 100644
--- a/src/ejabberd_auth_external.erl
+++ b/src/ejabberd_auth_external.erl
@@ -118,9 +118,11 @@ opt_type(extauth_instances) ->
fun (V) when is_integer(V), V > 0 -> V end;
opt_type(extauth_program) ->
fun (V) -> binary_to_list(iolist_to_binary(V)) end;
+opt_type(extauth_pool_name) ->
+ fun (V) -> iolist_to_binary(V) end;
opt_type(extauth_pool_size) ->
fun(I) when is_integer(I), I>0 -> I end;
opt_type(_) ->
- [extauth_program, extauth_pool_size,
+ [extauth_program, extauth_pool_size, extauth_pool_name,
%% Deprecated:
extauth_cache, extauth_instances].
diff --git a/src/extauth.erl b/src/extauth.erl
index 7a71cfbc9..f77d3d2cc 100644
--- a/src/extauth.erl
+++ b/src/extauth.erl
@@ -82,7 +82,12 @@ prog_name(Host) ->
-spec pool_name(binary()) -> atom().
pool_name(Host) ->
- list_to_atom("extauth_pool_" ++ binary_to_list(Host)).
+ case ejabberd_config:get_option({extauth_pool_name, Host}) of
+ undefined ->
+ list_to_atom("extauth_pool_" ++ binary_to_list(Host));
+ Name ->
+ list_to_atom("extauth_pool_" ++ binary_to_list(Name))
+ end.
-spec worker_name(atom(), integer()) -> atom().
worker_name(Pool, N) ->