From fb6267f38ee47f3f725f88324d132741c85dfb6a Mon Sep 17 00:00:00 2001 From: Evgeniy Khramtsov Date: Mon, 1 Jun 2015 15:38:27 +0300 Subject: Add config validation at startup --- src/ejabberd_service.erl | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) (limited to 'src/ejabberd_service.erl') diff --git a/src/ejabberd_service.erl b/src/ejabberd_service.erl index b7cea0c36..3e283a0a2 100644 --- a/src/ejabberd_service.erl +++ b/src/ejabberd_service.erl @@ -25,6 +25,8 @@ -module(ejabberd_service). +-behaviour(ejabberd_config). + -author('alexey@process-one.net'). -protocol({xep, 114, '1.6'}). @@ -37,11 +39,11 @@ -export([start/2, start_link/2, send_text/2, send_element/2, socket_type/0, transform_listen_option/2]). -%% gen_fsm callbacks -export([init/1, wait_for_stream/2, wait_for_handshake/2, stream_established/2, handle_event/3, handle_sync_event/4, code_change/4, - handle_info/3, terminate/3, print_state/1]). + handle_info/3, terminate/3, print_state/1, + mod_opt_type/1, opt_type/1]). -include("ejabberd.hrl"). -include("logger.hrl"). @@ -404,3 +406,10 @@ fsm_limit_opts(Opts) -> N -> [{max_queue, N}] end end. + +mod_opt_type(password) -> fun iolist_to_binary/1; +mod_opt_type(_) -> [password]. + +opt_type(max_fsm_queue) -> + fun (I) when is_integer(I), I > 0 -> I end; +opt_type(_) -> [max_fsm_queue]. -- cgit v1.2.3