diff options
author | Holger Weiss <holger@zedat.fu-berlin.de> | 2014-05-09 18:01:31 +0200 |
---|---|---|
committer | Holger Weiss <holger@zedat.fu-berlin.de> | 2014-05-09 18:01:31 +0200 |
commit | 15369ff9d7f8738d9da167fac8883bbd0067cd35 (patch) | |
tree | c78d0e9a6e9cbf8c16129bd92e551c4289551383 | |
parent | XEP-0198: Don't warn on invalid ACK elements (diff) |
XEP-0198: Reject <resume/> with negative 'h' value
Make sure the 'h' attribute sent with a <resume/> request is
nonnegative, as mandated by XEP-0198.
We already have this check for <a/> elements.
-rw-r--r-- | src/ejabberd_c2s.erl | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/ejabberd_c2s.erl b/src/ejabberd_c2s.erl index 5fb81d1f5..0897730a5 100644 --- a/src/ejabberd_c2s.erl +++ b/src/ejabberd_c2s.erl @@ -2707,7 +2707,7 @@ handle_resume(StateData, Attrs) -> case {xml:get_attr(<<"previd">>, Attrs), catch jlib:binary_to_integer(xml:get_attr_s(<<"h">>, Attrs))} of - {{value, PrevID}, H} when is_integer(H) -> + {{value, PrevID}, H} when is_integer(H), H >= 0 -> case inherit_session_state(StateData, PrevID) of {ok, InheritedState} -> {ok, InheritedState, H}; |