PublicInbox::SaPlugin::ListMirror(3) User Contributed Perl Documentation NAME PublicInbox::SaPlugin::ListMirror - SpamAssassin plugin for mailing list mirrors SYNOPSIS loadplugin PublicInbox::SaPlugin::ListMirror Declare some mailing lists based on the expected List-Id value, expected servers, and mailing list address: list_mirror List-Id *.example.com foo@example.com list_mirror List-Id *.example.com bar@example.com Bump the score for messages which come from unexpected servers: header LIST_MIRROR_RECEIVED eval:check_list_mirror_received() describe LIST_MIRROR_RECEIVED Received does not match expected score LIST_MIRROR_RECEIVED 10 Bump the score for messages which Bcc the list: header LIST_MIRROR_BCC eval:check_list_mirror_bcc() describe LIST_MIRROR_BCC Mailing list was Bcc-ed score LIST_MIRROR_BCC 5 DESCRIPTION This plugin contains common functions to provide accurate, ongoing mirrors of existing mailing lists. It may be used independently of the rest of public-inbox, it does not depend on any public-inbox code, only SpamAssassin. ADMINISTRATOR SETTINGS This plugin has no administrator settings, aside from the need to load it via "loadplugin" and enabling user rules "allow_user_rules 1" USER SETTINGS list_mirror HEADER HEADER_VALUE HOSTNAME_GLOB [LIST_ADDRESS] Declare a list based on an expected "HEADER" matching "HEADER_NAME" exactly coming from "HOSTNAME_GLOB". "LIST_ADDRESS" is optional, but may specify the address of the mailing list being mirrored. "List-Id" or "X-Mailing-List" are common values of "HEADER" An example of "HEADER_VALUE" is "" if "HEADER" is "List-Id". "HOSTNAME_GLOB" may be a wildcard match for machines where mail can come from or an exact match. "LIST_ADDRESS" is only required if using the "check_list_mirror_bcc" eval rule "list_mirror" may be specified multiple times. EVAL FUNCTIONS header LIST_MIRROR_RECEIVED eval:check_list_mirror_received() The "check_list_mirror_received" function implements "Received:" header checking based on "list_mirror" configuration values. This rule can be used to score and prevent messages from being injected directly into your mirror without going through the expected mailing list servers: ifplugin PublicInbox::SaPlugin::ListMirror header LIST_MIRROR_RECEIVED eval:check_list_mirror_received() describe LIST_MIRROR_RECEIVED Received does not match expected endif header LIST_MIRROR_BCC eval:check_list_mirror_bcc() The "check_list_mirror_bcc" function checks for Bcc to mailing lists declared with a "LIST_ADDRESS" via "list_mirror" Spammers will often Bcc mailing lists; while it's uncommon and strange for valid messages to be Bcc-ed to any public mailing list. This rule allows users to assign a score to Bcc-ed messages ifplugin PublicInbox::SaPlugin::ListMirror header LIST_MIRROR_BCC eval:check_list_mirror_bcc() describe LIST_MIRROR_BCC Mailing list was Bcc-ed endif CONTACT Feedback welcome via plain-text mail to The mail archives are hosted at and COPYRIGHT Copyright (C) 2016-2021 all contributors License: AGPL-3.0+ SEE ALSO Mail::SpamAssassin::Conf perl v5.38.0 2023-07-30 PublicInbox::SaPlugin::ListMirror(3)