aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorEvgeny Khramtsov <xramtsov@gmail.com>2014-08-15 19:15:32 +0400
committerEvgeny Khramtsov <xramtsov@gmail.com>2014-08-15 19:15:32 +0400
commitbc2e26fecd0f88385193b3e6b673819e83f3367d (patch)
treec6bc78cd62f75514841bc2fbdba65f52e9f1231e /src
parentMerge pull request #276 from weiss/xep-0198 (diff)
parentXEP-0198: Create shorter resume IDs (diff)
Merge pull request #277 from weiss/xep-0198
XEP-0198: Create shorter session resume IDs
Diffstat (limited to 'src')
-rw-r--r--src/ejabberd_c2s.erl10
1 files changed, 2 insertions, 8 deletions
diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl
index 66f9db507..368aacb39 100644
--- a/src/ejabberd_c2s.erl
+++ b/src/ejabberd_c2s.erl
@@ -2891,7 +2891,7 @@ is_encapsulated_forward(_El) ->
inherit_session_state(#state{user = U, server = S} = StateData, ResumeID) ->
case jlib:base64_to_term(ResumeID) of
- {term, {U, S, R, Time}} ->
+ {term, {R, Time}} ->
case ejabberd_sm:get_session_pid(U, S, R) of
none ->
{error, <<"Previous session PID not found">>};
@@ -2936,8 +2936,6 @@ inherit_session_state(#state{user = U, server = S} = StateData, ResumeID) ->
{error, <<"Cannot grab session state">>}
end
end;
- {term, {_WrongU, _WrongS, _R, _Time}} ->
- {error, <<"Previous JID doesn't match authenticated JID">>};
_ ->
{error, <<"Invalid 'previd' value">>}
end.
@@ -2947,11 +2945,7 @@ resume_session({Time, PID}) ->
make_resume_id(StateData) ->
{Time, _} = StateData#state.sid,
- ID = {StateData#state.user,
- StateData#state.server,
- StateData#state.resource,
- Time},
- jlib:term_to_base64(ID).
+ jlib:term_to_base64({StateData#state.resource, Time}).
%%%----------------------------------------------------------------------
%%% JID Set memory footprint reduction code