You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by gb...@apache.org on 2019/02/04 09:55:45 UTC

svn commit: r1852885 - /spamassassin/branches/3.4/lib/Mail/SpamAssassin/Plugin/URILocalBL.pm

Author: gbechis
Date: Mon Feb  4 09:55:45 2019
New Revision: 1852885

URL: http://svn.apache.org/viewvc?rev=1852885&view=rev
Log:
do not try to use Geo::IP constants if GeoIP2 is present
fix #7687

Modified:
    spamassassin/branches/3.4/lib/Mail/SpamAssassin/Plugin/URILocalBL.pm

Modified: spamassassin/branches/3.4/lib/Mail/SpamAssassin/Plugin/URILocalBL.pm
URL: http://svn.apache.org/viewvc/spamassassin/branches/3.4/lib/Mail/SpamAssassin/Plugin/URILocalBL.pm?rev=1852885&r1=1852884&r2=1852885&view=diff
==============================================================================
--- spamassassin/branches/3.4/lib/Mail/SpamAssassin/Plugin/URILocalBL.pm (original)
+++ spamassassin/branches/3.4/lib/Mail/SpamAssassin/Plugin/URILocalBL.pm Mon Feb  4 09:55:45 2019
@@ -460,16 +460,20 @@ sub check_uri_local_bl {
 
     # this code burps an ugly message if it fails, but that's redirected elsewhere
     my $flags = 0;
-    eval '$flags = Geo::IP::GEOIP_SILENCE' if ($gip_wanted >= $gip_have);
+    my $flag_isp = 0;
+    my $flag_silent = 0;
+    eval '$flags = GEOIP_MEMORY_CACHE | GEOIP_CHECK_CACHE' if ($gip_wanted >= $gip_have);
+    eval '$flag_silent = Geo::IP::GEOIP_SILENCE' if ($gip_wanted >= $gip_have);
+    eval '$flag_isp = GEOIP_ISP_EDITION' if ($gip_wanted >= $gip_have);
 
-    if ($flags && $gic_wanted >= $gic_have) {
-      $self->{geoip} = Geo::IP->new(GEOIP_MEMORY_CACHE | GEOIP_CHECK_CACHE | $flags);
-      $self->{geoisp} = Geo::IP->open_type(GEOIP_ISP_EDITION, GEOIP_MEMORY_CACHE | GEOIP_CHECK_CACHE | $flags);
+    if ($flag_silent && $gic_wanted >= $gic_have) {
+      $self->{geoip} = Geo::IP->new($flags | $flag_silent);
+      $self->{geoisp} = Geo::IP->open_type($flag_isp | $flag_silent | $flags);
     } else {
       open(OLDERR, ">&STDERR");
       open(STDERR, ">", "/dev/null");
-      $self->{geoip} = Geo::IP->new(GEOIP_MEMORY_CACHE | GEOIP_CHECK_CACHE);
-      $self->{geoisp} = Geo::IP->open_type(GEOIP_ISP_EDITION, GEOIP_MEMORY_CACHE | GEOIP_CHECK_CACHE);
+      $self->{geoip} = Geo::IP->new($flags);
+      $self->{geoisp} = Geo::IP->open_type($flag_isp);
       open(STDERR, ">&OLDERR");
       close(OLDERR);
     }