mirror of
https://github.com/processone/ejabberd.git
synced 2024-11-30 16:36:29 +01:00
new ejabberd_c2s option support: max_fsm_queue
SVN Revision: 2940
This commit is contained in:
parent
e31b2582b6
commit
c24af4ca63
@ -111,7 +111,7 @@
|
|||||||
%% Module start with or without supervisor:
|
%% Module start with or without supervisor:
|
||||||
-ifdef(NO_TRANSIENT_SUPERVISORS).
|
-ifdef(NO_TRANSIENT_SUPERVISORS).
|
||||||
-define(SUPERVISOR_START, ?GEN_FSM:start(ejabberd_c2s, [SockData, Opts],
|
-define(SUPERVISOR_START, ?GEN_FSM:start(ejabberd_c2s, [SockData, Opts],
|
||||||
fsm_limit_opts() ++ ?FSMOPTS)).
|
fsm_limit_opts(Opts) ++ ?FSMOPTS)).
|
||||||
-else.
|
-else.
|
||||||
-define(SUPERVISOR_START, supervisor:start_child(ejabberd_c2s_sup,
|
-define(SUPERVISOR_START, supervisor:start_child(ejabberd_c2s_sup,
|
||||||
[SockData, Opts])).
|
[SockData, Opts])).
|
||||||
@ -158,7 +158,7 @@ start(SockData, Opts) ->
|
|||||||
|
|
||||||
start_link(SockData, Opts) ->
|
start_link(SockData, Opts) ->
|
||||||
?GEN_FSM:start_link(ejabberd_c2s, [SockData, Opts],
|
?GEN_FSM:start_link(ejabberd_c2s, [SockData, Opts],
|
||||||
fsm_limit_opts() ++ ?FSMOPTS).
|
fsm_limit_opts(Opts) ++ ?FSMOPTS).
|
||||||
|
|
||||||
socket_type() ->
|
socket_type() ->
|
||||||
xml_stream.
|
xml_stream.
|
||||||
@ -2083,10 +2083,15 @@ check_from(El, FromJID) ->
|
|||||||
end
|
end
|
||||||
end.
|
end.
|
||||||
|
|
||||||
fsm_limit_opts() ->
|
fsm_limit_opts(Opts) ->
|
||||||
|
case lists:keysearch(max_fsm_queue, 1, Opts) of
|
||||||
|
{value, {_, N}} when is_integer(N) ->
|
||||||
|
[{max_queue, N}];
|
||||||
|
_ ->
|
||||||
case ejabberd_config:get_local_option(max_fsm_queue) of
|
case ejabberd_config:get_local_option(max_fsm_queue) of
|
||||||
N when is_integer(N) ->
|
N when is_integer(N) ->
|
||||||
[{max_queue, N}];
|
[{max_queue, N}];
|
||||||
_ ->
|
_ ->
|
||||||
[]
|
[]
|
||||||
|
end
|
||||||
end.
|
end.
|
||||||
|
Loading…
Reference in New Issue
Block a user