You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by he...@apache.org on 2018/10/07 10:02:50 UTC

svn commit: r1843054 - in /spamassassin/trunk/lib/Mail/SpamAssassin: DnsResolver.pm Plugin/DNSEval.pm Plugin/URIDNSBL.pm

Author: hege
Date: Sun Oct  7 10:02:50 2018
New Revision: 1843054

URL: http://svn.apache.org/viewvc?rev=1843054&view=rev
Log:
Make some IP constant uses more uniform

Modified:
    spamassassin/trunk/lib/Mail/SpamAssassin/DnsResolver.pm
    spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/DNSEval.pm
    spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm

Modified: spamassassin/trunk/lib/Mail/SpamAssassin/DnsResolver.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/DnsResolver.pm?rev=1843054&r1=1843053&r2=1843054&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/DnsResolver.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/DnsResolver.pm Sun Oct  7 10:02:50 2018
@@ -64,6 +64,8 @@ BEGIN {
   }
 }
 
+my $IPV4_ADDRESS = IPV4_ADDRESS;
+
 ###########################################################################
 
 sub new {
@@ -237,13 +239,12 @@ sub available_nameservers {
   }
   if ($self->{force_ipv4} || $self->{force_ipv6}) {
     # filter the list according to a chosen protocol family
-    my $ip4_re = IPV4_ADDRESS;
     my(@filtered_addr_port);
     for (@{$self->{available_dns_servers}}) {
       local($1,$2);
       /^ \[ (.*) \] : (\d+) \z/xs  or next;
       my($addr,$port) = ($1,$2);
-      if ($addr =~ /^${ip4_re}\z/o) {
+      if ($addr =~ /^$IPV4_ADDRESS\z/o) {
         push(@filtered_addr_port, $_)  unless $self->{force_ipv6};
       } elsif ($addr =~ /:.*:/) {
         push(@filtered_addr_port, $_)  unless $self->{force_ipv4};
@@ -378,13 +379,12 @@ sub connect_sock {
   # is unspecified, causing EINVAL failure when automatically assigned local
   # IP address and a remote address do not belong to the same address family.
   # Let's choose a suitable source address if possible.
-  my $ip4_re = IPV4_ADDRESS;
   my $srcaddr;
   if ($self->{force_ipv4}) {
     $srcaddr = "0.0.0.0";
   } elsif ($self->{force_ipv6}) {
     $srcaddr = "::";
-  } elsif ($ns_addr =~ /^${ip4_re}\z/o) {
+  } elsif ($ns_addr =~ /^$IPV4_ADDRESS\z/o) {
     $srcaddr = "0.0.0.0";
   } elsif ($ns_addr =~ /:.*:/) {
     $srcaddr = "::";

Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/DNSEval.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/DNSEval.pm?rev=1843054&r1=1843053&r2=1843054&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/DNSEval.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/DNSEval.pm Sun Oct  7 10:02:50 2018
@@ -36,6 +36,9 @@ use re 'taint';
 
 our @ISA = qw(Mail::SpamAssassin::Plugin);
 
+my $IP_ADDRESS = IP_ADDRESS;
+my $IP_PRIVATE = IP_PRIVATE;
+
 # constructor: register the eval rule
 sub new {
   my $class = shift;
@@ -81,11 +84,10 @@ sub ip_list_uniq_and_strip_private {
   my ($self, @origips) = @_;
   my @ips;
   my %seen;
-  my $IP_PRIVATE = IP_PRIVATE;
   foreach my $ip (@origips) {
     next unless $ip;
     next if (exists ($seen{$ip})); $seen{$ip} = 1;
-    next if ($ip =~ /$IP_PRIVATE/o);
+    next if ($ip =~ /^$IP_PRIVATE$/o);
     push(@ips, $ip);
   }
   return @ips;
@@ -152,9 +154,7 @@ sub check_rbl_backend {
   return 0 unless $pms->is_dns_available();
   $pms->load_resolver();
 
-  if (($rbl_server !~ /^(\d+)\.(\d+)\.(\d+)\.(\d+)$/) &&
-      (index($rbl_server, '.') >= 0) &&
-      ($rbl_server !~ /\.$/)) {
+  if ($rbl_server !~ /^$IP_ADDRESS$/o) {
     $rbl_server .= ".";
   }
 
@@ -175,7 +175,6 @@ sub check_rbl_backend {
   # Make sure a header significantly improves results before adding here
   # X-Sender-Ip: could be worth using (very low occurance for me)
   # X-Sender: has a very low bang-for-buck for me
-  my $IP_ADDRESS = IP_ADDRESS;
   my @originating;
   for my $header (@{$pms->{conf}->{originating_ip_headers}}) {
     my $str = $pms->get($header,undef);

Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm?rev=1843054&r1=1843053&r2=1843054&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Plugin/URIDNSBL.pm Sun Oct  7 10:02:50 2018
@@ -305,6 +305,9 @@ our @ISA = qw(Mail::SpamAssassin::Plugin
 
 use constant LOG_COMPLETION_TIMES => 0;
 
+my $IPV4_ADDRESS = IPV4_ADDRESS;
+my $IP_PRIVATE = IP_PRIVATE;
+
 # constructor
 sub new {
   my $class = shift;
@@ -840,8 +843,6 @@ sub query_hosts_or_domains {
 
     my ($is_ip, $single_dnsbl);
     if ($host =~ /^\d+\.\d+\.\d+\.\d+$/) {
-      my $IPV4_ADDRESS = IPV4_ADDRESS;
-      my $IP_PRIVATE = IP_PRIVATE;
       # only look up the IP if it is public and valid
       if ($host =~ /^$IPV4_ADDRESS$/o && $host !~ /^$IP_PRIVATE$/o) {
         my $obj = { dom => $host };
@@ -934,8 +935,6 @@ sub complete_ns_lookup {
   my $conf = $pms->{conf};
   my @answer = $pkt->answer;
 
-  my $IPV4_ADDRESS = IPV4_ADDRESS;
-  my $IP_PRIVATE = IP_PRIVATE;
   my $nsrhsblrules = $pms->{uridnsbl_active_rules_nsrhsbl};
   my $fullnsrhsblrules = $pms->{uridnsbl_active_rules_fullnsrhsbl};
   my $seen_lookups = $pms->{'uridnsbl_seen_lookups'};