aboutsummaryrefslogtreecommitdiff
path: root/src/ejabberd_auth_pam.erl
diff options
context:
space:
mode:
authorEvgeniy Khramtsov <ekhramtsov@process-one.net>2015-06-01 15:38:27 +0300
committerEvgeniy Khramtsov <ekhramtsov@process-one.net>2015-06-01 15:38:27 +0300
commitfb6267f38ee47f3f725f88324d132741c85dfb6a (patch)
treed63c5efd207a736f9215d645ccb881bba942ed6a /src/ejabberd_auth_pam.erl
parentDo not try to fetch module options via eldap_utils (diff)
Add config validation at startup
Diffstat (limited to 'src/ejabberd_auth_pam.erl')
-rw-r--r--src/ejabberd_auth_pam.erl24
1 files changed, 15 insertions, 9 deletions
diff --git a/src/ejabberd_auth_pam.erl b/src/ejabberd_auth_pam.erl
index f3fdf628d..312bcf46e 100644
--- a/src/ejabberd_auth_pam.erl
+++ b/src/ejabberd_auth_pam.erl
@@ -24,22 +24,21 @@
%%%-------------------------------------------------------------------
-module(ejabberd_auth_pam).
+-behaviour(ejabberd_config).
+
-author('xram@jabber.ru').
-behaviour(ejabberd_auth).
-%% External exports
-%%====================================================================
-%% API
-%%====================================================================
-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,
- get_vh_registered_users/2, 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]).
+ get_vh_registered_users/2,
+ 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,
+ opt_type/1]).
start(_Host) ->
ejabberd:start_app(p1_pam).
@@ -118,3 +117,10 @@ get_pam_userinfotype(Host) ->
(jid) -> jid
end,
username).
+
+opt_type(pam_service) -> fun iolist_to_binary/1;
+opt_type(pam_userinfotype) ->
+ fun (username) -> username;
+ (jid) -> jid
+ end;
+opt_type(_) -> [pam_service, pam_userinfotype].