Lines 561-569
sub check_dkim_valid_author_sig {
Link Here
|
561 |
sub check_dkim_valid_envelopefrom { |
561 |
sub check_dkim_valid_envelopefrom { |
562 |
my ($self, $pms, $full_ref) = @_; |
562 |
my ($self, $pms, $full_ref) = @_; |
563 |
my $result = 0; |
563 |
my $result = 0; |
564 |
my $envfrom=$self->{'main'}->{'registryboundaries'}->uri_to_domain($pms->get("EnvelopeFrom")); |
564 |
my ( $envfrom ) = $pms->get("EnvelopeFrom:addr") =~ /@(\S*)/i; |
565 |
# if no envelopeFrom, it cannot be valid |
565 |
# if no envelopeFrom, it cannot be valid |
566 |
return $result if !$envfrom; |
566 |
return $result if !$envfrom; |
|
|
567 |
$envfrom = lc $envfrom; |
567 |
$self->_check_dkim_signature($pms) if !$pms->{dkim_checked_signature}; |
568 |
$self->_check_dkim_signature($pms) if !$pms->{dkim_checked_signature}; |
568 |
if (!$pms->{dkim_valid}) { |
569 |
if (!$pms->{dkim_valid}) { |
569 |
# don't bother |
570 |
# don't bother |
Lines 720-726
sub _check_dkim_signed_by {
Link Here
|
720 |
next if $minimum_key_bits && $sig->{_spamassassin_key_size} && |
721 |
next if $minimum_key_bits && $sig->{_spamassassin_key_size} && |
721 |
$sig->{_spamassassin_key_size} < $minimum_key_bits; |
722 |
$sig->{_spamassassin_key_size} < $minimum_key_bits; |
722 |
} |
723 |
} |
723 |
my $sdid = $sig->domain; |
724 |
my ( $sdid ) = $sig->identity =~ /@(\S*)/; |
724 |
next if !defined $sdid; # a signature with a missing required tag 'd' ? |
725 |
next if !defined $sdid; # a signature with a missing required tag 'd' ? |
725 |
$sdid = lc $sdid; |
726 |
$sdid = lc $sdid; |
726 |
if ($must_be_author_domain_signature) { |
727 |
if ($must_be_author_domain_signature) { |
Lines 909-915
sub _check_dkim_signature {
Link Here
|
909 |
push(@valid_signatures, $signature) if $valid && !$expired; |
910 |
push(@valid_signatures, $signature) if $valid && !$expired; |
910 |
# check if we have a potential Author Domain Signature, valid or not |
911 |
# check if we have a potential Author Domain Signature, valid or not |
911 |
my $d = $signature->domain; |
912 |
my ( $d ) = $signature->identity =~ /@(\S*)/; |
912 |
if (!defined $d) { |
913 |
if (!defined $d) { |
913 |
# can be undefined on a broken signature with missing required tags |
914 |
# can be undefined on a broken signature with missing required tags |
914 |
} else { |
915 |
} else { |
Lines 1261-1267
sub _wlcheck_list {
Link Here
|
1261 |
} |
1262 |
} |
1262 |
} |
1263 |
} |
1263 |
my $sdid = $signature->domain; |
1264 |
my ( $sdid ) = $signature->identity =~ /@(\S+)/; |
1264 |
$sdid = lc $sdid if defined $sdid; |
1265 |
$sdid = lc $sdid if defined $sdid; |
1265 |
my %tried_authors; |
1266 |
my %tried_authors; |