New amavis Install
Phil Daws
uxbod at splatnix.net
Fri Aug 9 17:12:23 CEST 2013
Hello,
Have setup a new amavis-new 2.8.1 installation and seeing this error in the maillog:
Aug 9 10:10:00 mx2 amavis[8854]: (08854-01) (!)_DIE: Socket version 1.95 required--this is only version 1.82 at /usr/local/share/perl5/IO/Socket/SSL.pm line 71.
Aug 9 10:10:00 mx2 amavis[8854]: (08854-01) (!)_DIE: Can't locate IO/Socket/IP.pm in @INC (@INC contains: lib /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at /usr/local/share/perl5/IO/Socket/SSL.pm line 85.
What is baffling me is that I performed a near identical installation on another server and that does not exhibit the same issue. Here are the perl Socket modules from the new server:
[root at mx2 ~]# rpm -qa | grep -i socket
perl-IO-Socket-SSL-1.31-2.el6.noarch
perl-IO-Socket-INET6-2.56-4.el6.noarch
perl-Socket6-0.23-3.el6.x86_64
and here from the server that is fine:
[root at mx1 /]# rpm -qa | grep -i socket
perl-IO-Socket-INET6-2.56-4.el6.noarch
perl-IO-Socket-SSL-1.31-2.el6.noarch
perl-Socket6-0.23-3.el6.x86_64
I checked the code block in SSL.pl and if I extract it and run the following it works fine.
########################################################################################
#!/usr/bin/perl
my $ip6 = eval {
require Socket;
Socket->VERSION(1.95);
Socket->import( 'inet_pton' );
1;
} || eval {
require Socket6;
Socket6->import( 'inet_pton' );
1;
};
# try IO::Socket::IP or IO::Socket::INET6 for IPv6 support
if ( $ip6 ) {
# if we have IO::Socket::IP >= 0.11 we will use this in preference
# because it can handle both IPv4 and IPv6
if ( eval { require IO::Socket::IP; IO::Socket::IP->VERSION(0.11); } ) {
@ISA = qw(IO::Socket::IP);
constant->import( CAN_IPV6 => "IO::Socket::IP" );
# if we have IO::Socket::INET6 we will use this not IO::Socket::INET
# because it can handle both IPv4 and IPv6
} elsif( eval { require IO::Socket::INET6; } ) {
@ISA = qw(IO::Socket::INET6);
constant->import( CAN_IPV6 => "IO::Socket::INET6" );
} else {
$ip6 = 0;
}
}
# fall back to IO::Socket::INET for IPv4 only
if ( ! $ip6 ) {
@ISA = qw(IO::Socket::INET);
constant->import( CAN_IPV6 => '' );
}
########################################################################################
Any thoughts on what could be the issue please ?
Thanks.
More information about the amavis-users
mailing list