The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.


Mail::FilterXML - Filter email based on a rules file written in XML.


  use Mail::FilterXML;
  my $filter = new MailFilter(rules => "/home/matt/mail_rules.xml");


This module builds upon Mail::Audit by Simon Cozens. Mail::Audit is a module for constructing filters, Mail::FilterXML is a filter of sorts. FilterXML is just made up of some logic for processing an email message, and is controlled by the contents of a rules file, so if I wanted to block a particular sender, I could just add an element to my rules file, like:

<Rule type="from" content="" folder="Trash" action="program" /> See the mail_rules.xml file for an example.

The content attribute can contain perl regexps, such as *\.microsoft\.*$, etceteras.


I will be adding new "types" of rules, and the ability to reject or altogether ignore messages, as possible in Mail::Audit. Any feedback or patches are welcome.


Matthew MacKenzie <> Eli Ben-Shoshan <>


(c)2000-2002 Matthew MacKenzie. You may use/copy this under the same terms as Perl.


perl(1), Mail::Audit