|  line  | 
 !l  | 
 l&&!r  | 
 l&&r  | 
 condition  | 
 
| 
372
 | 
 994  | 
 0  | 
 0  | 
 !$ip4 && $can_ip6 && eval {
	do {
	inet_pton(10, $ip)
}
}  | 
 
| 
644
 | 
 10  | 
 122  | 
 116  | 
 $sub != \&Mail::SPF::Iterator::_got_TXT_exp and not $self->{'opt'}{'rfc4408'}  | 
 
| 
 | 
 132  | 
 108  | 
 8  | 
 $sub != \&Mail::SPF::Iterator::_got_TXT_exp and not $self->{'opt'}{'rfc4408'} and --$self->{'limit_dns_void'} < 0  | 
 
| 
714
 | 
 1585  | 
 0  | 
 0  | 
 not @ans and @names > 1  | 
 
| 
769
 | 
 2687  | 
 112  | 
 20  | 
 $self->{'result'} and not @rv  | 
 
| 
831
 | 
 1062  | 
 2  | 
 0  | 
 $self->{'tmpresult'} and $ResultQ{$self->{'tmpresult'}[0]} > $ResultQ{$rv[0]}  | 
 
| 
908
 | 
 0  | 
 0  | 
 0  | 
 $domain->{'macro'} and my(@rv) = $self->_resolve_macro_p($domain)  | 
 
| 
1012
 | 
 12  | 
 72  | 
 2378  | 
 $domain =~ /[^\d.]/ and $domain =~ s/^($rx)\.?$/$1/  | 
 
| 
1133
 | 
 12  | 
 28  | 
 0  | 
 not $self->{'mech'} and my $default = $self->{'opt'}{'default_spf'}  | 
 
| 
1294
 | 
 20  | 
 200  | 
 6  | 
 $qual eq 'Pass' and $_->[0] == \&Mail::SPF::Iterator::_mech_all  | 
 
| 
1424
 | 
 0  | 
 0  | 
 285  | 
 $addr =~ /^[\d.]+$/ && eval {
	do {
	inet_aton($addr)
}
}  | 
 
| 
1532
 | 
 6  | 
 0  | 
 40  | 
 $rr->type eq $atyp and exists $mx{$rr->name}  | 
 
| 
1928
 | 
 0  | 
 2  | 
 20  | 
 ref $rec && $rec->{'ip'}  | 
|  line  | 
 l  | 
 !l&&r  | 
 !l&&!r  | 
 condition  | 
 
| 
258
 | 
 5  | 
 0  | 
 0  | 
 eval {
	do {
	require Socket;
'Socket'->import('inet_pton', 'inet_ntop');
'Socket'->import('AF_INET6') unless defined &Mail::SPF::Iterator::AF_INET6;
1
}
} || eval {
	do {
	require Socket6;
'Socket6'->import('inet_pton', 'inet_ntop');
'Socket6'->import('AF_INET6') unless defined &Mail::SPF::Iterator::AF_INET6;
1
}
}  | 
 
| 
373
 | 
 994  | 
 0  | 
 0  | 
 $ip4 or $ip6  | 
 
| 
463
 | 
 0  | 
 0  | 
 0  | 
 $resolver ||= 'Net::DNS::Resolver'->new  | 
 
| 
486
 | 
 0  | 
 0  | 
 0  | 
 $status or @ans  | 
 
| 
513
 | 
 508  | 
 0  | 
 4217  | 
 $v =~ /[\s;()]/ or $v eq ''  | 
 
| 
608
 | 
 30  | 
 0  | 
 4  | 
 not $self->{'tmpresult'} or $ResultQ{$self->{'tmpresult'}[0]} < $ResultQ{&SPF_TempError}  | 
 
| 
642
 | 
 248  | 
 0  | 
 1585  | 
 not @answer or $rcode ne 'NOERROR'  | 
 
| 
802
 | 
 0  | 
 72  | 
 44  | 
 $rv[0] eq 'TempError' or $rv[0] eq 'PermError'  | 
 
| 
1009
 | 
 458  | 
 2004  | 
 0  | 
 $rx ||= qr/.*?/  | 
 
| 
1177
 | 
 358  | 
 156  | 
 272  | 
 $mech eq 'a' or $mech eq 'mx'  | 
 
| 
1609
 | 
 34  | 
 0  | 
 0  | 
 $self->{'clientip4'} || $self->{'clientip6'}  | 
 
| 
1863
 | 
 62  | 
 0  | 
 0  | 
 $self->{'clientip4'} || $self->{'clientip6'}  | 
 
| 
1955
 | 
 0  | 
 0  | 
 20  | 
 $rcode ne 'NOERROR' or not @$ans  |