On 28 February 2002, Craig Hughes said: > Greg, I think I'm going to be busy for a few days just with scoring > refinements. If you could solidify the regex I'd appreciate it.
OK, here's a patch relative to CVS: --- rules/20_head_tests.cf 26 Feb 2002 12:04:21 -0000 1.33 +++ rules/20_head_tests.cf 1 Mar 2002 13:20:15 -0000 @@ -20,6 +20,9 @@ header TO_MALFORMED To !~ /(?:(?:\"[^\"]+\"|\S+)\@\S+\.\S+|undisclosed-recipients:)/ [if-unset: [EMAIL PROTECTED]] describe TO_MALFORMED To: has a malformed address +header TO_LOCALPART_EQ_REAL To =~ +/^\s*(\"?)([\w%\+\-=_\.]+)\1\s*<\2\@[\w%\+\-=_\.]+>/i +describe TO_LOCALPART_EQ_REAL To: repeats local-part as real name + header FROM_MALFORMED From !~ /(?:\"[^\"]+\"|\S+)\@\S+\.\S+/ [if-unset: [EMAIL PROTECTED]] describe FROM_MALFORMED From: has a malformed address > I think as a general guide, the rules should be RFC-compliant, unless > there's a special reason not to be. Also, 2822 should be your guide, not > 822. OK. Note that the character classes used to recognize "local part" and "domain" in the regexes are subsets of the character set allowed by RFC 2822; you see - + _ . in local parts all the time, but & ! { } etc. seem pretty unlikely, and adding them all really bulked up the regex. Implementation question: is the \s* at the front necessary? Or does SA strip whitespace after the colon before feeding headers to rules? And do I need to modify any other file to make the GA pay attention to this rule and evolve its score? Greg -- Greg Ward - software developer [EMAIL PROTECTED] MEMS Exchange http://www.mems-exchange.org _______________________________________________ Spamassassin-talk mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/spamassassin-talk