[Mimedefang] GLOB error on $Helo

Jan Pieter Cornet johnpc at xs4all.nl
Mon Apr 3 17:47:56 EDT 2006


On Mon, Apr 03, 2006 at 12:20:46PM -0400, Joseph Brennan wrote:
> Apr  3 04:33:52 jujube mimedefang-multiplexor[411]:
>  [ID 980602 mail.info] Slave 22 stderr: Can't coerce GLOB to number
>  in add at /etc/mail/mimedefang/mimedefang-filter line 383.
> 
> The slave then dies prematurely with the "check your filter rules"
> error.  Line 383 is:
> 
>                    if ($Helo =~ /yahoo.com/) {
> 
> "Can't coerce GLOB to number in add"-- meaning a file named "add"?
> If this is the result of a bizarre HELO string, is there an exploit
> here waiting for the right HELO string?

Perl has a habit of reporting the wrong error line in some constructs,
if () { ... } being one of them.

Search for buggy perl in your filter at the last line of either
that if() {...} block, or the following else {...} block.

By the way, if you don't understand perl's error messages, say:
use diagnostics;

or use the stand-alone program "splain" to explain your error messages:

$ echo "Can't coerce GLOB to number in add" | splain
Can't coerce GLOB to number in add (#1)
    (F) Certain types of SVs, in particular real symbol table entries
    (typeglobs), can't be forced to stop being what they are.

OK, this doesn't necessarily makes it more understandable, but it
usually does.

What you are doing somewhere is something like "$var + FILE", which
is invalid perl syntax.

You _are_ using "use warnings" and "use strict", right?

-- 
Jan-Pieter Cornet <johnpc at xs4all.nl>
!! Disc lamer: The addressee of this email is not the intended recipient. !!
!! This is only a test of the echelon and data retention systems. Please  !!
!! archive this message indefinately to allow verification of the logs.   !!



More information about the MIMEDefang mailing list