Branch Coverage

blib/lib/Net/Server/IP.pm
Criterion Covered Total %
branch 31 50 62.0


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) } }