[prev in list] [next in list] [prev in thread] [next in thread] 

List:       spamassassin-devel
Subject:    [Bug 6426] New: "Use of uninitialized value in pattern match"
From:       bugzilla-daemon () issues ! apache ! org
Date:       2010-04-29 9:57:40
Message-ID: bug-6426-26 () https ! issues ! apache ! org/SpamAssassin/
[Download RAW message or body]

https://issues.apache.org/SpamAssassin/show_bug.cgi?id=6426

           Summary: "Use of uninitialized value in pattern match" warnings
           Product: Spamassassin
           Version: 3.3.1
          Platform: PC
        OS/Version: FreeBSD
            Status: NEW
          Severity: normal
          Priority: P2
         Component: spamassassin
        AssignedTo: dev@spamassassin.apache.org
        ReportedBy: bas@debian.org


I gt a lot of these error messages in my mail.log:

Apr 29 11:24:12 aegir spamd[1103]: Use of uninitialized value in pattern match
(m//) at
/usr/local/lib/perl5/site_perl/5.8.9/Mail/SpamAssassin/Plugin/URIDNSBL.pm line
925, <GEN7455> line 124. 

Line 925 is the following:
    next if ($tflags->{$rulename} =~ /\b(?:ips_only|domains_only)\b/);

so it seems $tflags->{$rulename} does not exist.
Debugging show that the rule triggering the error is a user-created rule, which
indeed does not declare any tflags.

I propose to change the code to:

    next if (exists $tflags->{$rulename} and $tflags->{$rulename} =~
/\b(?:ips_only|domains_only)\b/);

to fix the problem.  Alternatively, you could add a warning when reading the
user prefs, telling the user to add a tflags line to his rule.

-- 
Configure bugmail: https://issues.apache.org/SpamAssassin/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic