]> git.ipfire.org Git - thirdparty/rspamd.git/commit
[Fix] Fuzzy: per-key ACL applies to delayed v1 replies master
authorVsevolod Stakhov <vsevolod@rspamd.com>
Thu, 6 Aug 2026 14:36:00 +0000 (15:36 +0100)
committerVsevolod Stakhov <vsevolod@rspamd.com>
Thu, 6 Aug 2026 14:36:00 +0000 (15:36 +0100)
commita47a8580123394ce9644e08b77d3fdb3e244d533
tree04e3ed452d3e789e0c84444a4924f7057d6ff6a1
parente0e92d6f5208bc0537ce33f10fd8ae44d4626793
[Fix] Fuzzy: per-key ACL applies to delayed v1 replies

The v1 reply path gated the per-key forbidden_ids check on prob > 0.
The DELAY branch above it zeroes ts, prob and value but leaves flag
intact, so a delayed reply took the `else if (default_disabled)` branch
instead: a key with its own forbidden_ids silently lost its ACL and the
global default_forbidden_ids applied after all. That is the same
inversion fixed in the v2 path in the previous commit, just limited to
encrypted delayed replies.

Drop the prob check so the per-key set overrides the default regardless
of the match result, matching rspamd_fuzzy_flag_is_forbidden(). Outside
DELAY this changes nothing: prob == 0 means a miss, where flag is 0 too
and neither set matches.

Only EPOCH10/EPOCH11 clients reach this path.
src/fuzzy_storage.c