From 87f579ab6bc074186397371d05020f29722bc7c4 Mon Sep 17 00:00:00 2001 From: Fiorenza Date: Thu, 30 Jul 2026 17:28:13 +0200 Subject: [PATCH] Aggiungi header X-Spam-Flag sempre presente MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Alcune regole client/server filtrano lo spam su un singolo header booleano invece di parsare X-Spam-Status; X-Spam-Flag riporta lo stesso esito (Yes/No, No di default se Rspamd non è raggiungibile). Co-Authored-By: Claude Sonnet 5 --- postfix-filter.py | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/postfix-filter.py b/postfix-filter.py index fda9c86..542100d 100644 --- a/postfix-filter.py +++ b/postfix-filter.py @@ -163,6 +163,7 @@ class PostfixRspamdFilter: if not rspamd_result: # Se Rspamd non è disponibile, aggiungi header di fallback message['X-Spam-Status'] = 'Unknown (Rspamd not available)' + message['X-Spam-Flag'] = 'No' message['X-Spam-Checker-Version'] = 'Postfix Content Filter v1.0' return message @@ -178,7 +179,11 @@ class PostfixRspamdFilter: is_spam = score >= required_score spam_status = f"{'Yes' if is_spam else 'No'}, score={score:.2f} required={required_score:.2f}" message['X-Spam-Status'] = spam_status - + + # Header X-Spam-Flag: stesso esito di X-Spam-Status ma in forma sintetica, + # utile per regole client/server che filtrano su un singolo header booleano + message['X-Spam-Flag'] = 'Yes' if is_spam else 'No' + # Header X-Spam-Score (punteggio numerico) message['X-Spam-Score'] = f"{score:.2f}"