Bug 8032 - [review] DCC meta failure
Summary: [review] DCC meta failure
Status: RESOLVED FIXED
Alias: None
Product: Spamassassin
Classification: Unclassified
Component: Plugins (show other bugs)
Version: 4.0.0
Hardware: All All
: P2 blocker
Target Milestone: 4.0.0
Assignee: SpamAssassin Developer Mailing List
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2022-08-25 05:54 UTC by Henrik Krohns
Modified: 2022-08-26 06:00 UTC (History)
5 users (show)



Attachment Type Modified Status Actions Submitter/CLA Status
async fix patch None Henrik Krohns [HasCLA]

Note You need to log in before you can comment on or make changes to this bug.
Description Henrik Krohns 2022-08-25 05:54:08 UTC
Noticed t/dcc.t failures for 4.0.0-rc1 when dcc responses are slow

t/dcc.t ........................... # Note: Failure may not be an SpamAssassin bug, as DCC tests can fail due to problems with the DCC servers.
t/dcc.t ........................... 5/16        Not found: pos =  3.3 X_META_POS  at t/dcc.t line 51.

#   Failed test at t/SATest.pm line 926.
        Found anti-pattern: neg =  X_META_NEG  at t/dcc.t line 51.

#   Failed test at t/SATest.pm line 937.
Output can be examined in: log/dcc.usiJXX/d.dcc/4
t/dcc.t ........................... 9/16        Not found: pos =  3.3 X_META_POS  at t/dcc.t line 53.

#   Failed test at t/SATest.pm line 926.
        Found anti-pattern: neg =  X_META_NEG  at t/dcc.t line 53.

#   Failed test at t/SATest.pm line 937.
Output can be examined in: log/dcc.usiJXX/d.dcc/8
# Looks like you failed 4 tests of 16.


Aug 25 08:22:03.364 [2311390] dbg: dcc: still waiting for dccifd response
Aug 25 08:22:03.364 [2311390] dbg: rules: ran meta rule X_META_NEG ======> got hit (1)

--> meta X_META_NEG !DCC_CHECK

It should not be possible for X_META_NEG to hit, unless DCC async status is somehow marked prematurely ready. Need to investigate.
Comment 1 Henrik Krohns 2022-08-25 06:19:05 UTC
Created attachment 5801 [details]
async fix

In this case, check_dcc() was called before check_dnsbl() and the logic did not handle that properly. Just needs an additional check in check_dcc() to check if async is active.

Vote to commit.
Comment 2 Giovanni Bechis 2022-08-25 14:38:54 UTC
+1 for me on the fix.
Comment 3 Bill Cole 2022-08-25 16:18:05 UTC
+1 for the fix
Comment 4 Kevin A. McGrail 2022-08-25 18:51:10 UTC
+1 for the fix -KAM
Comment 5 Sidney Markowitz 2022-08-25 21:16:44 UTC
+1 for the fix
Comment 6 Henrik Krohns 2022-08-26 06:00:56 UTC
Sending        trunk/lib/Mail/SpamAssassin/Plugin/DCC.pm
Transmitting file data .done
Committing transaction...
Committed revision 1903693.