https://bz.apache.org/SpamAssassin/show_bug.cgi?id=7153

Kevin A. McGrail <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
         Resolution|---                         |FIXED
             Status|NEW                         |RESOLVED

--- Comment #1 from Kevin A. McGrail <[email protected]> ---
svn commit -m 'Bug 7153 for leak of URILocalBL.pm to stderr'
Sending        lib/Mail/SpamAssassin/Plugin/URILocalBL.pm
Transmitting file data .
Committed revision 1665706

This is a follow-up on bug 7079.

You are defining $gic_wanted and have but as best I can tell, never using those
variables.

Did you mean to have && $gic_wanted >= $gic_have as well in the conditions?

I added that for now.  Otherwise I would comment out the $gic_wanted/have
definition.

Considering resolved unless you say otherwise Philip.

Index: lib/Mail/SpamAssassin/Plugin/URILocalBL.pm
===================================================================
--- lib/Mail/SpamAssassin/Plugin/URILocalBL.pm  (revision 1665676)
+++ lib/Mail/SpamAssassin/Plugin/URILocalBL.pm  (working copy)
@@ -110,7 +110,14 @@
 use warnings;
 use bytes;
 use re 'taint';
+use version;

+# need GeoIP C library 1.6.3 and GeoIP perl API 1.4.4 or later to avoid
messages leaking - Bug 7153
+my $gic_wanted = version->parse('v1.4.4');
+my $gic_have = version->parse(Geo::IP->lib_version());
+my $gip_wanted = version->parse('v1.6.3');
+my $gip_have = version->parse($Geo::IP::VERSION);
+
 use vars qw(@ISA);
 @ISA = qw(Mail::SpamAssassin::Plugin);

@@ -132,10 +139,8 @@
   # this code burps an ugly message if it fails, but that's redirected
elsewhere
   my $flags = 0;
   eval '$flags = Geo::IP::GEOIP_SILENCE if (defined &Geo::IP::GEOIP_SILENCE)';
-  open(STDERR, ">&OLDERR");
-  close(OLDERR);

-  if ($flags) {
+  if ($flags && $gip_wanted >= $gip_have && $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);
   } else {

-- 
You are receiving this mail because:
You are the assignee for the bug.

Reply via email to