diff options
author | Holger Weiss <holger@zedat.fu-berlin.de> | 2016-07-19 21:08:13 +0200 |
---|---|---|
committer | Holger Weiss <holger@zedat.fu-berlin.de> | 2016-07-19 21:08:13 +0200 |
commit | 9fcb81dea99dd7f97ed0c970ed44b23a09153be9 (patch) | |
tree | 4d51c3d25f720baf0a1f917a99cc26d0e224beb3 | |
parent | Upgrade Elixir version to 1.2 in rebar config (diff) |
mod_mam: Always limit result set page size
Limit the number of messages returned for a given MAM request even if
the client didn't specify an RSM set (not just if the client specified
an RSM set without a limit).
This is still not done for MAM v0.2 requests though, as that version of
the XEP doesn't require clients to support RSM.
-rw-r--r-- | src/mod_mam.erl | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/src/mod_mam.erl b/src/mod_mam.erl index 10eb098da..f5dc67abc 100644 --- a/src/mod_mam.erl +++ b/src/mod_mam.erl @@ -1032,12 +1032,12 @@ filter_by_max(_Msgs, _Junk) -> limit_max(RSM, ?NS_MAM_TMP) -> RSM; % XEP-0313 v0.2 doesn't require clients to support RSM. +limit_max(none, _NS) -> + #rsm_in{max = ?DEF_PAGE_SIZE}; limit_max(#rsm_in{max = Max} = RSM, _NS) when not is_integer(Max) -> RSM#rsm_in{max = ?DEF_PAGE_SIZE}; limit_max(#rsm_in{max = Max} = RSM, _NS) when Max > ?MAX_PAGE_SIZE -> - RSM#rsm_in{max = ?MAX_PAGE_SIZE}; -limit_max(RSM, _NS) -> - RSM. + RSM#rsm_in{max = ?MAX_PAGE_SIZE}. match_interval(Now, Start, End) -> (Now >= Start) and (Now =< End). |