aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRadosław Szymczyszyn <radoslaw.szymczyszyn@erlang-solutions.com>2014-05-20 11:52:02 +0100
committerRadosław Szymczyszyn <radoslaw.szymczyszyn@erlang-solutions.com>2014-05-20 11:52:02 +0100
commitc39ce133decd2bb8eba720ca7ad9e847e9701bf4 (patch)
tree9de89613cb59036a24d9c71396b67ae93cc13173
parentMUC messages with ~ were not logged (EJAB-1696) (diff)
Build proceed/compressed elements in a sane way
-rw-r--r--src/ejabberd_c2s.erl26
1 files changed, 6 insertions, 20 deletions
diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl
index 85a696c7f..a160a4677 100644
--- a/src/ejabberd_c2s.erl
+++ b/src/ejabberd_c2s.erl
@@ -788,18 +788,11 @@ wait_for_feature_request({xmlstreamelement, El},
StateData#state.tls_options)]
end,
Socket = StateData#state.socket,
+ BProceed = xml:element_to_binary(#xmlel{name = <<"proceed">>,
+ attrs = [{<<"xmlns">>, ?NS_TLS}]}),
TLSSocket = (StateData#state.sockmod):starttls(Socket,
TLSOpts,
- xml:element_to_binary(#xmlel{name
- =
- <<"proceed">>,
- attrs
- =
- [{<<"xmlns">>,
- ?NS_TLS}],
- children
- =
- []})),
+ BProceed),
fsm_next_state(wait_for_stream,
StateData#state{socket = TLSSocket,
streamid = new_id(),
@@ -820,17 +813,10 @@ wait_for_feature_request({xmlstreamelement, El},
case xml:get_tag_cdata(Method) of
<<"zlib">> ->
Socket = StateData#state.socket,
+ BCompressed = xml:element_to_binary(#xmlel{name = <<"compressed">>,
+ attrs = [{<<"xmlns">>, ?NS_COMPRESS}]}),
ZlibSocket = (StateData#state.sockmod):compress(Socket,
- xml:element_to_binary(#xmlel{name
- =
- <<"compressed">>,
- attrs
- =
- [{<<"xmlns">>,
- ?NS_COMPRESS}],
- children
- =
- []})),
+ BCompressed),
fsm_next_state(wait_for_stream,
StateData#state{socket = ZlibSocket,
streamid = new_id()});