Skip to content

Commit 56b4d6d

Browse files
authored
lower case domains passed to is_valid_domain (#252)
fixes #251
1 parent 7ffb97d commit 56b4d6d

File tree

3 files changed

+5
-5
lines changed

3 files changed

+5
-5
lines changed

lib/Mail/DMARC.pm

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -45,19 +45,19 @@ sub source_ip {
4545

4646
sub envelope_to {
4747
return $_[0]->{envelope_to} if 1 == scalar @_;
48-
croak "invalid envelope_to" if !$_[0]->is_valid_domain( $_[1] );
48+
croak "invalid envelope_to" if !$_[0]->is_valid_domain( lc $_[1] );
4949
return $_[0]->{envelope_to} = $_[1];
5050
}
5151

5252
sub envelope_from {
5353
return $_[0]->{envelope_from} if 1 == scalar @_;
54-
croak "invalid envelope_from" if !$_[0]->is_valid_domain( $_[1] );
54+
croak "invalid envelope_from" if !$_[0]->is_valid_domain( lc $_[1] );
5555
return $_[0]->{envelope_from} = $_[1];
5656
}
5757

5858
sub header_from {
5959
return $_[0]->{header_from} if 1 == scalar @_;
60-
croak "invalid header_from" if !$_[0]->is_valid_domain( $_[1] );
60+
croak "invalid header_from" if !$_[0]->is_valid_domain( lc $_[1] );
6161
return $_[0]->{header_from} = lc $_[1];
6262
}
6363

lib/Mail/DMARC/Base.pm

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,7 @@ sub is_valid_ip {
281281
sub is_valid_domain {
282282
my ( $self, $domain ) = @_;
283283
return 0 if $domain !~ /^$RE{net}{domain}{-rfc1101}{-nospace}$/x;
284-
my $tld = ( split /\./, lc $domain )[-1];
284+
my $tld = ( split /\./, $domain )[-1];
285285
return 1 if $self->is_public_suffix($tld);
286286
return 0 if $domain eq 'localhost';
287287
return 0 if $tld eq 'localdomain';

t/00.Dmarc.t

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -225,7 +225,7 @@ sub test_spf {
225225

226226
sub test_header_from {
227227

228-
my @good_vals = (qw/ spam-example.com bar.com /);
228+
my @good_vals = (qw/ spam-example.com bar.com test.co.UK test.CO.za /);
229229
foreach my $k (@good_vals) {
230230
ok( $dmarc->header_from($k), "header_from, $k" );
231231
}

0 commit comments

Comments
 (0)