SOLVED in 7.2: Perl problems on FreeBSD (again)

Jose Amengual M pepe at rdc.cl
Mon Oct 26 18:17:25 GMT 2009


Hi Guys.

I saw some emails about perl 5.10.1 giving errors when running  
mailscanner, I had the same problem and I follow the instructions  
below but it din't work for me, but finally after 2 days of work I  
found the solution!!!.

This is working 7.2 should work on 8.0.

if you have already mailscanner installed don't worry, portupgrade can  
do all the job for you :).

1.- Remove old perl version :
pkg_info|grep perl ( copy the exact name of you perl version like  
perl5.10.1 )
pkg_delete -f perl5.10.1

2.- Install old perl.
pkg_add -r ftp://ftp.freebsd.org/pub/FreeBSD/ports/amd64/packages-7.2-release/lang/perl-5.10.0_2.tbz

3.- Clean up any work directory
portsclean -C

4.- Update pkgdb add upgrade any perl package
pkgdb -Ff
portupgrade -fr perl ( this is going to upgrade everything that uses  
perl including mailscanner).
perl-after-upgrade && perl-after-upgrade -f

After that the error was gone and everything was working fine.

I was in the process of deciding of going towards mailscanner or  
amavisd-new and I decided to use mailscanner because was easier to  
configure and I expend 2 days fixing a problem with perl that I didn't  
have on amavis :).

I hope this help.

Thanks.

Jose Amengual.


This like
 >
Mog wrote:

 >>
Hi all,

 >>


 >>
I upgraded MailScanner last night along with a number of other ports,


 >>
which unfortunately included a micro update to Perl. On FreeBSD it

went
 >>
from perl-5.10.0 to perl-5.10.1, and judging by the error messages in


 >>
the maillog, it seems that the old taint mode problem has resurfaced:

 >>


 >>
Could not use Custom Function code

 >>
/usr/local/lib/MailScanner/MailScanner/CustomFunctions/SpamWhitelist.pm,

 >>
it could not be "require"d. Make sure the last line is "1;" and the

 >>
module is correct with perl -wc (Error: Insecure dependency in

require
 >>
while running with -T switch at

 >>
/usr/local/lib/MailScanner/MailScanner/Config.pm line 754.

 >>


 >>
I'm seeing this same error message being shown for these files as

well:
 >>
MyExample.pm, DavidHooton.pm, LastSpam.pm, GenericSpamScanner.pm,

 >>
CustomAction.pm, Ruleset-from-Function.pm and ZMRouterDirHash.pm.

 >>


 >>


 >>
  From what I understand, FreeBSD runs perl programs with the -T

option
 >>
(taint mode), which is basically some additional security check. If

I'm
 >>
reading this right, the additional security check (for some reason)

 >>
seems to have a problem with 'eval { require $fullfile; };', the code


 >>
used to require the CustomFunction modules MailScanner uses:

 >>


 >>
    $fullfile = "$dir/$filename";

 >>
    next unless -f $fullfile and -s $fullfile;

 >>
    eval { require $fullfile; };

 >>
    if ($@) {

 >>
      MailScanner::Log::WarnLog("Could not use Custom Function code

%s, " .
 >>
                                "it could not be \"require\"d. Make

sure " .
 >>
                                "the last line is \"1;\" and the

module " .
 >>
                                "is correct with perl -wc (Error:

%s)",
 >>
                                $fullfile, $@);

 >>
    }

 >>


 >>


 >>
Does this makes sense to anyone? Naturally I've reported this problem

to
 >>
the FreeBSD people as well to see if they can help work out what is

 >>
going on.

 >>


 >>
Regards,

 >>
mog


 >
What process did you use to upgrade MailScanner/Perl? If you used

 >
portupgrade, please give the command line you used.


 >I have the same issue, I did the normal portupgrade perl.
 >And did run the perl-after-upgrade
 >After that did not work I did a rebuild of perl with -rf portupgrade  
-rf
.perl, this way all ports relying on perl are rebuild.
 >And that did also not work.
 >So I grabbed another server, installed FreeBSD 8.0RC1 upgraded the  
ports
 >tree, installed MailScanner, and got the same error.
 >It is the same error I got with perl 5.8.9, and with perl 5.8.8 I  
had no
 >problems also.
 >Now perl5.10.0_4 and 5.8.8 has no problems, but 5.10.1 and 5.8.9  has,
 >anyway on my systems (AMD64 and i386)



-- 
Este mensaje ha sido analizado por MailScanner
en busca de virus y otros contenidos peligrosos,
y se considera que está limpio.
For all your IT requirements visit: http://www.transtec.co.uk



More information about the MailScanner mailing list