Был замечен нехороший баг при работе Spamassassin на FreeBSD в связке с exim.
В логах:
Can't locate object method "header" via package "Mail::DomainKeys::Message" at
/usr/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Plugin/DomainKeys.pm line 213,
<GEN88> line 90.
rules: failed to run DK_POLICY_SIGNALL test, skipping:
Да, есть такой баг
применяем патч как patch -p0< patchname
в качестве применяемого имени файла:
/usr/local/lib/perl5/site_perl/5.8.5/Mail/SpamAssassin/Plugin/DomainKeys.pm
А вот и патч:
--- Линия отреза ------
Index: lib/Mail/SpamAssassin/Plugin/DomainKeys.pm
===================================================================
--- lib/Mail/SpamAssassin/Plugin/DomainKeys.pm (revision 357661)
+++ lib/Mail/SpamAssassin/Plugin/DomainKeys.pm (working copy)
@@ -211,7 +211,15 @@
# get the DK status "header" from the Mail::DomainKeys::Message object
sub _dkmsg_hdr {
my ($self, $message) = @_;
- return $message->header->value();
+ # try to use the signature() API if it exists (post-0.80)
+ if ($message->can("signature")) {
+ if (!$message->signed) {
+ return "no signature";
+ }
+ return $message->signature->status;
+ } else {
+ return $message->header->value;
+ }
}
sub sanitize_header_for_dk {
Оставить комментарий