| line |
true |
false |
branch |
|
33
|
0 |
282 |
unless $arg and %$arg |
|
35
|
0 |
282 |
if (defined(my $family2 = delete $arg->{'Domain'}) and not defined $family) |
|
36
|
245 |
37 |
if (not defined $family and my $addr = $arg->{'LocalHost'} || $arg->{'PeerHost'} || $arg->{'LocalAddr'} || $arg->{'PeerAddr'}) |
|
38
|
170 |
75 |
if ($addr =~ /^(\d+\.\d+\.\d+\.\d+)(|:\w+|\w+\(\d+\))$/) { } |
|
|
75 |
0 |
elsif ($addr =~ /^\[[a-fA-F\d:]+\](|:\w+|\w+\(\d+\))$/ or $addr =~ /^(?:[a-fA-F\d]*:){2,7}([a-fA-F\d]*|\d+\.\d+\.\d+\.\d+)$/) { } |
|
46
|
33 |
159 |
if ($ISA[0] eq "IO::Socket::INET" and defined $family and $family ne &AF_INET()) |
|
48
|
4 |
29 |
$ipv6_package ? : |
|
50
|
1 |
69 |
if $INC{&$pm($_)} |
|
52
|
33 |
34 |
if $pkg |
|
|
1 |
32 |
if $_->isa(__PACKAGE__) |
|
|
2 |
32 |
unless eval {
do {
local $^W = 0;
require &$pm($_);
die "Circular ISA" if $_->isa(__PACKAGE__);
$pkg = $_
}
} |
|
53
|
33 |
0 |
if ($pkg) { } |
|
55
|
33 |
0 |
if (not $pkg->new('LocalAddr', '[::]', 'Listen', 1) && $pkg->new('LocalAddr', '127.0.0.1', 'Listen', 1)) { } |
|
56
|
33 |
0 |
if ($pkg->new('LocalAddr', '[::]', 'Listen', 1, 'GetAddrInfoFlags', 0) or $pkg->new('LocalAddr', '127.0.0.1', 'Listen', 1, 'GetAddrInfoFlags', 0)) { } |
|
64
|
33 |
0 |
if $pkg |
|
66
|
0 |
0 |
if $@ = "Preferred ipv6_package (@try) could not be loaded:$err" and $family |
|
70
|
282 |
0 |
if (defined $family) |
|
71
|
123 |
159 |
if $self->isa("IO::Socket::IP") |
|
72
|
0 |
282 |
if $self->isa("IO::Socket::INET6") |
|
73
|
123 |
159 |
if not defined $arg->{'GetAddrInfoFlags'} and $fake_danger |
|
74
|
0 |
282 |
if (defined $arg->{'V6Only'} and $self->isa("IO::Socket::INET6")) |
|
76
|
0 |
0 |
if $family eq &AF_INET() |
|
85
|
0 |
282 |
if (defined(my $opt = do {
*$self
}->{'NS_v6only'})) |
|
86
|
0 |
0 |
$opt ? : |
|
|
0 |
0 |
unless eval {
do {
$self->setsockopt(IPPROTO_IPV6(), &IPV6_V6ONLY(), $opt ? 1 : 0)
}
} |