Blame t/listen_port_only.t
|
Packit |
a83d8b |
#!/usr/bin/perl
|
|
Packit |
a83d8b |
|
|
Packit |
a83d8b |
use strict;
|
|
Packit |
a83d8b |
use warnings;
|
|
Packit |
a83d8b |
use IO::Socket::INET6;
|
|
Packit |
a83d8b |
|
|
Packit |
a83d8b |
use Test::More;
|
|
Packit |
a83d8b |
|
|
Packit |
a83d8b |
my ($server,$port);
|
|
Packit |
a83d8b |
# try to create inet6 listener on some port, w/o given
|
|
Packit |
a83d8b |
# LocalHost (should use :: then)
|
|
Packit |
a83d8b |
CREATE_SERVER:
|
|
Packit |
a83d8b |
for my $i (1 .. 100)
|
|
Packit |
a83d8b |
{
|
|
Packit |
a83d8b |
$port = int(rand(50000)+2000);
|
|
Packit |
a83d8b |
$server = IO::Socket::INET6->new(
|
|
Packit |
a83d8b |
LocalPort => $port,
|
|
Packit |
a83d8b |
Listen => 10,
|
|
Packit |
a83d8b |
);
|
|
Packit |
a83d8b |
if ($server)
|
|
Packit |
a83d8b |
{
|
|
Packit |
a83d8b |
last CREATE_SERVER;
|
|
Packit |
a83d8b |
}
|
|
Packit |
a83d8b |
}
|
|
Packit |
a83d8b |
|
|
Packit |
a83d8b |
if (!$server)
|
|
Packit |
a83d8b |
{
|
|
Packit |
a83d8b |
plan skip_all => "failed to create inet6 listener";
|
|
Packit |
a83d8b |
}
|
|
Packit |
a83d8b |
elsif ( $server->sockhost ne '::' )
|
|
Packit |
a83d8b |
{
|
|
Packit |
a83d8b |
plan skip_all => "not listening on ::, maybe inet6 not available";
|
|
Packit |
a83d8b |
}
|
|
Packit |
a83d8b |
else
|
|
Packit |
a83d8b |
{
|
|
Packit |
a83d8b |
plan tests => 1;
|
|
Packit |
a83d8b |
|
|
Packit |
a83d8b |
my $client = IO::Socket::INET6->new( "[::1]:$port" );
|
|
Packit |
a83d8b |
|
|
Packit |
a83d8b |
# TEST
|
|
Packit |
a83d8b |
ok($client, "Client was initialised - connected.");
|
|
Packit |
a83d8b |
}
|