You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@spamassassin.apache.org by mm...@apache.org on 2007/09/15 22:16:08 UTC
svn commit: r575968 - in /spamassassin/trunk/lib/Mail/SpamAssassin: Conf.pm
Conf/Parser.pm Constants.pm HTML.pm Logger.pm Util.pm Util/MemoryDump.pm
Author: mmartinec
Date: Sat Sep 15 13:16:07 2007
New Revision: 575968
URL: http://svn.apache.org/viewvc?rev=575968&view=rev
Log:
Exporter never really worked in SA, was not enclosed in BEGIN{}; revert quick-fixes r575915 and r575772, they were not solving the right problem
Modified:
spamassassin/trunk/lib/Mail/SpamAssassin/Conf.pm
spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm
spamassassin/trunk/lib/Mail/SpamAssassin/Constants.pm
spamassassin/trunk/lib/Mail/SpamAssassin/HTML.pm
spamassassin/trunk/lib/Mail/SpamAssassin/Logger.pm
spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm
spamassassin/trunk/lib/Mail/SpamAssassin/Util/MemoryDump.pm
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Conf.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Conf.pm?rev=575968&r1=575967&r2=575968&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Conf.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Conf.pm Sat Sep 15 13:16:07 2007
@@ -88,6 +88,7 @@
use Mail::SpamAssassin::Conf::Parser;
use Mail::SpamAssassin::Logger;
use Mail::SpamAssassin::Util::TieOneStringHash;
+use Mail::SpamAssassin::Util qw(untaint_var);
use File::Spec;
use vars qw{
@@ -2839,7 +2840,7 @@
return $INVALID_VALUE;
}
# is blindly untainting safe? it is no worse than before
- $_ = Mail::SpamAssassin::Util::untaint_var($_) for ($package,$path);
+ $_ = untaint_var($_) for ($package,$path);
$self->load_plugin ($package, $path);
}
});
@@ -2869,7 +2870,7 @@
return $INVALID_VALUE;
}
# is blindly untainting safe? it is no worse than before
- $_ = Mail::SpamAssassin::Util::untaint_var($_) for ($package,$path);
+ $_ = untaint_var($_) for ($package,$path);
$self->load_plugin ($package, $path, 1);
}
});
@@ -3506,8 +3507,7 @@
}
# it wouldn't hurt to do some checking on validity of $package
# and $path before untainting them
- $self->{main}->{plugins}->load_plugin(
- Mail::SpamAssassin::Util::untaint_var($package), $path, $silent);
+ $self->{main}->{plugins}->load_plugin(untaint_var($package), $path, $silent);
}
sub load_plugin_succeeded {
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm?rev=575968&r1=575967&r2=575968&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Conf/Parser.pm Sat Sep 15 13:16:07 2007
@@ -124,6 +124,7 @@
use Mail::SpamAssassin::Conf;
use Mail::SpamAssassin::Constants qw(:sa);
use Mail::SpamAssassin::Logger;
+use Mail::SpamAssassin::Util qw(untaint_var);
use strict;
use warnings;
@@ -270,7 +271,7 @@
$value = '' unless defined($value);
# # Do a better job untainting this info ...
-# # $value = Mail::SpamAssassin::Util::untaint_var($value);
+# # $value = untaint_var($value);
# Do NOT blindly untaint now, do it carefully later when semantics is known!
my $parse_error; # undef by default, may be overridden
@@ -484,7 +485,7 @@
my $bad = 0;
foreach my $token (@tokens) {
if ($token =~ /^\W+|[+-]?\d+(?:\.\d+)?$/) {
- $eval .= Mail::SpamAssassin::Util::untaint_var($token) . " ";
+ $eval .= untaint_var($token) . " ";
}
elsif ($token eq 'plugin') {
# replace with method call
@@ -494,7 +495,7 @@
$eval .= $Mail::SpamAssassin::VERSION." ";
}
elsif ($token =~ /^\w[\w\:]+$/) { # class name
- $eval .= '"' . Mail::SpamAssassin::Util::untaint_var($token) . '" ';
+ $eval .= '"' . untaint_var($token) . '" ';
}
else {
$bad++;
@@ -613,7 +614,7 @@
return $Mail::SpamAssassin::Conf::INVALID_VALUE;
}
# it is safe to untaint now that we now the syntax is a valid number
- $conf->{$key} = Mail::SpamAssassin::Util::untaint_var($value) + 0.0;
+ $conf->{$key} = untaint_var($value) + 0.0;
}
sub set_bool_value {
@@ -832,7 +833,7 @@
next unless exists $conf->{tests}->{$token};
# add and recurse
- push(@{$deps}, Mail::SpamAssassin::Util::untaint_var($token));
+ push(@{$deps}, untaint_var($token));
$self->_meta_deps_recurse($conf, $toprule, $token, $deps, $alreadydone);
}
}
@@ -1091,7 +1092,7 @@
my ($self, $name, $rule) = @_;
my $meta = '';
- $rule = Mail::SpamAssassin::Util::untaint_var($rule); # must be careful below
+ $rule = untaint_var($rule); # must be careful below
# Lex the rule into tokens using a rather simple RE method ...
my $lexer = ARITH_EXPRESSION_LEXER;
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Constants.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Constants.pm?rev=575968&r1=575967&r2=575968&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Constants.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Constants.pm Sat Sep 15 13:16:07 2007
@@ -25,34 +25,38 @@
use warnings;
use re 'taint';
-use vars qw (
- @BAYES_VARS @IP_VARS @SA_VARS %EXPORT_TAGS @EXPORT_OK
-);
+BEGIN {
+ use Exporter ();
+ use vars qw(@ISA);
+ @ISA = qw(Exporter);
-use base qw( Exporter );
+ use vars qw (
+ @BAYES_VARS @IP_VARS @SA_VARS %EXPORT_TAGS @EXPORT_OK
+ );
-@IP_VARS = qw(
+ @IP_VARS = qw(
IP_IN_RESERVED_RANGE IP_PRIVATE LOCALHOST IPV4_ADDRESS IP_ADDRESS
-);
-@BAYES_VARS = qw(
+ );
+ @BAYES_VARS = qw(
DUMP_MAGIC DUMP_TOKEN DUMP_BACKUP
-);
-# These are generic constants that may be used across several modules
-@SA_VARS = qw(
+ );
+ # These are generic constants that may be used across several modules
+ @SA_VARS = qw(
HARVEST_DNSBL_PRIORITY MBX_SEPARATOR
MAX_BODY_LINE_LENGTH MAX_HEADER_KEY_LENGTH MAX_HEADER_VALUE_LENGTH
MAX_HEADER_LENGTH ARITH_EXPRESSION_LEXER AI_TIME_UNKNOWN
CHARSETS_LIKELY_TO_FP_AS_CAPS MAX_URI_LENGTH
-);
+ );
-%EXPORT_TAGS = (
+ %EXPORT_TAGS = (
bayes => [ @BAYES_VARS ],
ip => [ @IP_VARS ],
sa => [ @SA_VARS ],
all => [ @BAYES_VARS, @IP_VARS, @SA_VARS ],
-);
+ );
-@EXPORT_OK = ( @BAYES_VARS, @IP_VARS, @SA_VARS );
+ @EXPORT_OK = ( @BAYES_VARS, @IP_VARS, @SA_VARS );
+}
# BAYES_VARS
use constant DUMP_MAGIC => 1;
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/HTML.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/HTML.pm?rev=575968&r1=575967&r2=575968&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/HTML.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/HTML.pm Sat Sep 15 13:16:07 2007
@@ -29,12 +29,14 @@
use Mail::SpamAssassin::Constants qw(:sa);
use Mail::SpamAssassin::Util qw(untaint_var);
-use vars qw($re_loose $re_strict $re_other @ISA @EXPORT @EXPORT_OK);
-
-require Exporter;
-@ISA = qw(HTML::Parser Exporter);
-@EXPORT = qw(get_results name_to_rgb);
-@EXPORT_OK = qw();
+BEGIN {
+ use Exporter ();
+ use vars qw(@ISA @EXPORT @EXPORT_OK);
+ @ISA = qw(HTML::Parser Exporter);
+ @EXPORT = qw(get_results name_to_rgb);
+ @EXPORT_OK = qw();
+ use vars qw($re_loose $re_strict $re_other);
+}
# elements defined by the HTML 4.01 and XHTML 1.0 DTDs (do not change them!)
# does not include XML
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Logger.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Logger.pm?rev=575968&r1=575967&r2=575968&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Logger.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Logger.pm Sat Sep 15 13:16:07 2007
@@ -35,18 +35,18 @@
package Mail::SpamAssassin::Logger;
-use vars qw(@ISA @EXPORT @EXPORT_OK);
-
-require Exporter;
-
use strict;
use warnings;
use bytes;
use re 'taint';
-@ISA = qw(Exporter);
-@EXPORT = qw(dbg info would_log);
-@EXPORT_OK = qw(log_message);
+BEGIN {
+ use Exporter ();
+ use vars qw(@ISA @EXPORT @EXPORT_OK);
+ @ISA = qw(Exporter);
+ @EXPORT = qw(dbg info would_log);
+ @EXPORT_OK = qw(log_message);
+}
use constant ERROR => 0;
use constant WARNING => 1;
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm?rev=575968&r1=575967&r2=575968&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Util.pm Sat Sep 15 13:16:07 2007
@@ -47,16 +47,18 @@
use Mail::SpamAssassin::Logger;
-use vars qw (
- @ISA @EXPORT @EXPORT_OK
- $AM_TAINTED
-);
+BEGIN {
+ use Exporter ();
-require Exporter;
+ use vars qw (
+ @ISA @EXPORT @EXPORT_OK
+ $AM_TAINTED
+ );
-@ISA = qw(Exporter);
-@EXPORT = ();
-@EXPORT_OK = qw(&local_tz &base64_decode &untaint_var);
+ @ISA = qw(Exporter);
+ @EXPORT = ();
+ @EXPORT_OK = qw(&local_tz &base64_decode &untaint_var);
+}
use Mail::SpamAssassin;
use Mail::SpamAssassin::Util::RegistrarBoundaries;
Modified: spamassassin/trunk/lib/Mail/SpamAssassin/Util/MemoryDump.pm
URL: http://svn.apache.org/viewvc/spamassassin/trunk/lib/Mail/SpamAssassin/Util/MemoryDump.pm?rev=575968&r1=575967&r2=575968&view=diff
==============================================================================
--- spamassassin/trunk/lib/Mail/SpamAssassin/Util/MemoryDump.pm (original)
+++ spamassassin/trunk/lib/Mail/SpamAssassin/Util/MemoryDump.pm Sat Sep 15 13:16:07 2007
@@ -37,11 +37,12 @@
use warnings;
use bytes;
use re 'taint';
-require Exporter;
-
-our @ISA = qw(Exporter);
-our @EXPORT_OK = qw(MEMDEBUG MEMDEBUG_dump_obj);
+BEGIN {
+ use Exporter ();
+ our @ISA = qw(Exporter);
+ our @EXPORT_OK = qw(MEMDEBUG MEMDEBUG_dump_obj);
+}
our $COUNTER = 0;
use Devel::Peek qw();