diff options
author | Evgeny Khramtsov <xramtsov@gmail.com> | 2014-08-15 19:15:32 +0400 |
---|---|---|
committer | Evgeny Khramtsov <xramtsov@gmail.com> | 2014-08-15 19:15:32 +0400 |
commit | bc2e26fecd0f88385193b3e6b673819e83f3367d (patch) | |
tree | c6bc78cd62f75514841bc2fbdba65f52e9f1231e /src | |
parent | Merge pull request #276 from weiss/xep-0198 (diff) | |
parent | XEP-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.erl | 10 |
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 |