Skip Menu |

This queue is for tickets about the Net-IMAP-Server CPAN distribution.

Report information
The Basics
Id: 85445
Status: new
Priority: 0/
Queue: Net-IMAP-Server

People
Owner: Nobody in particular
Requestors: x.guimard [...] free.fr
Cc:
AdminCc:

Bug Information
Severity: Normal
Broken in: 1.36
Fixed in: (no value)



Subject: Tests fail with IPv6
Hi all, Trying to build Net::IMAP::Server for Debian, we have the following problem (with some debug output): # prove --blib --verbose t/01-connect.t t/01-connect.t .. ok 1 - Server started $VAR1 = 'CONNECT1: '; $VAR2 = 'PeerAddr'; $VAR3 = 'localhost'; $VAR4 = 'PeerPort'; $VAR5 = 67188; $VAR6 = 'Class'; $VAR7 = 'IO::Socket::INET'; $VAR1 = 'CONNECT2: '; $VAR2 = undef; $VAR1 = 'CONNECT2: '; $VAR2 = undef; # 2013/05/12-14:50:34 Net::IMAP::Server::Test::Server (type Net::Server) starting! pid(32595) # Resolved [localhost]:67188 to [::1]:1652, IPv6 # Resolved [localhost]:67188 to [127.0.0.1]:1652, IPv4 # Resolved [localhost]:67189 to [::1]:1653, IPv6 # Resolved [localhost]:67189 to [127.0.0.1]:1653, IPv4 # Binding to TCP port 1652 on host ::1 with IPv6 # Binding to TCP port 1652 on host 127.0.0.1 with IPv4 # Binding to TCP port 1653 on host ::1 with IPv6 # Binding to TCP port 1653 on host 127.0.0.1 with IPv4 # Setting gid to "0 0 0" $VAR1 = 'CONNECT2: '; $VAR2 = bless( \*Symbol::GEN2, 'IO::Socket::INET' ); ok 2 - Non-SSL connection OK $VAR1 = 'connect_ok: '; $VAR2 = 'Class'; $VAR3 = 'IO::Socket::INET'; $VAR4 = 'PeerPort'; $VAR5 = 67188; ok 3 - Got connection message ok 4 - Line 1 of STARTTLS response matched ok 5 - Negotiated TLS $VAR1 = 'CONNECT1: '; $VAR2 = 'PeerAddr'; $VAR3 = 'localhost'; $VAR4 = 'PeerPort'; $VAR5 = 67189; $VAR6 = 'Class'; $VAR7 = 'IO::Socket::SSL'; Bad arg length for Socket::unpack_sockaddr_in, length is 28, should be 16 at /usr/lib/perl5/Socket.pm line 824. + so the problem happens in t/01-connect in the '$t->connect_ok( "SSL connection OK" );' test + IO::Socket::SSL fails here, although it should be able to handle ipv6 (relevant packaes are installed) + I _guess_ this is somehow related to to the doubled socket binding seen above + this comes somewhere from Net::Server or Net::Server::Coro ... /usr/share/perl5/Net/Server.pod talks about ipv4/6 and looks like it should work; so maybe it's Net::Server::Coro doing weird things here? or Net::Server::Proto::Coro or Coro::Socket ... (Coro::Socket has a nice warning about IPv6 in the pod) the following from Net::Server's pod looks ok: # perl -e 'use base qw(Net::Server); main->run(host => "localhost")' 2013/05/12-14:54:56 main (type Net::Server) starting! pid(4632) Resolved [localhost]:20203 to [::1]:20203, IPv6 Resolved [localhost]:20203 to [127.0.0.1]:20203, IPv4 Binding to TCP port 20203 on host ::1 with IPv6 Binding to TCP port 20203 on host 127.0.0.1 with IPv4