aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/guide.tex2
-rw-r--r--src/ejabberd_captcha.erl18
2 files changed, 10 insertions, 10 deletions
diff --git a/doc/guide.tex b/doc/guide.tex
index d77a2525f..b2034f2b4 100644
--- a/doc/guide.tex
+++ b/doc/guide.tex
@@ -2083,7 +2083,7 @@ listen:
port: 3478
transport: udp
use_turn: true
- turn_ip: 10.20.30.1
+ turn_ip: "10.20.30.1"
module: ejabberd_stun
...
\end{verbatim}
diff --git a/src/ejabberd_captcha.erl b/src/ejabberd_captcha.erl
index ab91ccb04..d433cc24b 100644
--- a/src/ejabberd_captcha.erl
+++ b/src/ejabberd_captcha.erl
@@ -549,10 +549,11 @@ get_transfer_protocol(PortString) ->
get_port_listeners(PortNumber) ->
AllListeners = ejabberd_config:get_option(listen, fun(V) -> V end),
- lists:filter(fun ({{Port, _Ip, _Netp}, _Module1,
- _Opts1})
- when Port == PortNumber ->
- true;
+ lists:filter(fun (Listener) when is_list(Listener) ->
+ case proplists:get_value(port, Listener) of
+ PortNumber -> true;
+ _ -> false
+ end;
(_) -> false
end,
AllListeners).
@@ -562,12 +563,11 @@ get_captcha_transfer_protocol([]) ->
"is not a ejabberd_http listener with "
"'captcha' option. Change the port number "
"or specify http:// in that option.">>);
-get_captcha_transfer_protocol([{{_Port, _Ip, tcp},
- ejabberd_http, Opts}
- | Listeners]) ->
- case lists:member(captcha, Opts) of
+get_captcha_transfer_protocol([Listener | Listeners]) when is_list(Listener) ->
+ case proplists:get_value(module, Listener) == ejabberd_http andalso
+ proplists:get_bool(captcha, Listener) of
true ->
- case lists:member(tls, Opts) of
+ case proplists:get_bool(tls, Listener) of
true -> https;
false -> http
end;