mirror of
https://github.com/processone/ejabberd
synced 2025-10-05 19:42:11 +02:00
* src/ejabberd_c2s.erl: Fixed starttls_required behaviour for
legacy connections (thanks to Brian Campbell) SVN Revision: 345
This commit is contained in:
parent
4f7359298e
commit
7cb79cd482
2 changed files with 23 additions and 6 deletions
|
@ -256,16 +256,30 @@ wait_for_stream({xmlstreamstart, _Name, Attrs}, StateData) ->
|
|||
_ ->
|
||||
Header = io_lib:format(
|
||||
?STREAM_HEADER,
|
||||
[StateData#state.streamid, Server, "", DefaultLang]),
|
||||
send_text(StateData, Header),
|
||||
{next_state, wait_for_auth,
|
||||
StateData#state{server = Server,
|
||||
lang = Lang}}
|
||||
[StateData#state.streamid, Server, "",
|
||||
DefaultLang]),
|
||||
if
|
||||
(not StateData#state.tls_enabled) and
|
||||
StateData#state.tls_required ->
|
||||
send_text(StateData,
|
||||
Header ++
|
||||
?POLICY_VIOLATION_ERR(
|
||||
Lang,
|
||||
"Use of STARTTLS required") ++
|
||||
?STREAM_TRAILER),
|
||||
{stop, normal, StateData};
|
||||
true ->
|
||||
send_text(StateData, Header),
|
||||
{next_state, wait_for_auth,
|
||||
StateData#state{server = Server,
|
||||
lang = Lang}}
|
||||
end
|
||||
end;
|
||||
_ ->
|
||||
Header = io_lib:format(
|
||||
?STREAM_HEADER,
|
||||
[StateData#state.streamid, ?MYNAME, "", DefaultLang]),
|
||||
[StateData#state.streamid, ?MYNAME, "",
|
||||
DefaultLang]),
|
||||
send_text(StateData,
|
||||
Header ++ ?HOST_UNKNOWN_ERR ++ ?STREAM_TRAILER),
|
||||
{stop, normal, StateData}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue