| line |
true |
false |
branch |
|
14
|
0 |
0 |
$^O eq 'MSWin32' ? : |
|
15
|
0 |
0 |
$^O eq 'MSWin32' ? : |
|
65
|
42 |
5 |
if (defined $args) |
|
66
|
3 |
39 |
if (ref $args ne 'HASH') |
|
71
|
11 |
28 |
if defined $$args{'LocalHost'} |
|
76
|
2 |
4 |
ref $$args{'LocalPort'} eq 'ARRAY' ? : |
|
|
6 |
33 |
defined $$args{'LocalPort'} ? : |
|
85
|
41 |
5 |
if $self->_socket_open_tcp($host, $port) and $self->_socket_open_udp($host, $port) |
|
117
|
1 |
43 |
unless defined $_tcp{refaddr $self} |
|
125
|
0 |
3 |
unless defined $_tcp{refaddr $self} |
|
133
|
0 |
25 |
unless defined $_udp{refaddr $self} |
|
141
|
0 |
3 |
unless defined $_udp{refaddr $self} |
|
155
|
0 |
6 |
if (not defined $value or $value != _MSE_DISABLED() and $value != _MSE_ENABLED() and $value != _MSE_FORCED()) |
|
169
|
0 |
1 |
unless (defined $value and $value =~ /^\d+$/ and $value) |
|
179
|
0 |
1 |
unless (defined $value and $value =~ /^\d+$/) |
|
189
|
0 |
0 |
if (not defined $value && $value =~ /^\d+$/ or $value < 1) |
|
199
|
0 |
0 |
if (not defined $value && $value =~ /^\d+$/ or $value < 1) |
|
209
|
0 |
6 |
if (not defined $value && $value =~ /^\d+$/ or $value < 1) |
|
219
|
0 |
15 |
unless (defined $value and $value =~ /^[10]$/) |
|
235
|
0 |
1381 |
$timeout < 0 ? : |
|
|
1381 |
2 |
defined $timeout && $timeout =~ /^(\-1|\d+)\.?\d*$/ ? : |
|
243
|
7342 |
152 |
if $_connections{refaddr $self}{$fileno}{'Mode'} =~ /r/ |
|
245
|
4657 |
2837 |
if $_connections{refaddr $self}{$fileno}{'Mode'} =~ /w/ |
|
250
|
812 |
571 |
if $nfound and $nfound != -1 |
|
272
|
3 |
2400 |
unless (defined $connection) |
|
276
|
1 |
2399 |
unless (blessed $connection) |
|
282
|
105 |
2294 |
if (not $_sock or ref $_sock ne 'GLOB') |
|
283
|
0 |
2294 |
unless ($mode and $mode =~ /^(?:ro|rw|wo)$/) |
|
296
|
0 |
98 |
unless (defined $connection) |
|
300
|
0 |
98 |
unless (blessed $connection) |
|
306
|
31 |
67 |
unless defined $socket |
|
312
|
0 |
55 |
unless ($self or not blessed $self || !$self->isa('Net::BitTorrent')) |
|
319
|
0 |
46 |
unless ($_tcp{refaddr $self} or $host) |
|
324
|
1 |
54 |
if (defined $port and not $port =~ /^\d+$/) |
|
334
|
3 |
51 |
if ($host and not $host =~ /^(?:(?:(?:25[0-5]|2[0-4][0-9]|[0-1]?[0-9]{1,2})[.]?){4})$/) { } |
|
337
|
2 |
1 |
unless my($name, $aliases, $addrtype, $length, @addrs) = gethostbyname $host |
|
343
|
0 |
52 |
unless socket my $_tcp, 2, 1, getprotobyname 'tcp' |
|
357
|
5 |
47 |
unless bind $_tcp, pack_sockaddr_in($port, $_packed_host) |
|
359
|
0 |
47 |
unless listen $_tcp, 1 |
|
360
|
0 |
47 |
unless $_connections{refaddr $self}{fileno $_tcp} = {'Object', $self, 'Mode', 'ro'} |
|
364
|
6 |
0 |
if (defined $_tcp{refaddr $self} and fileno $_tcp{refaddr $self} and defined $_connections{refaddr $self}{fileno $_tcp{refaddr $self}}) |
|
376
|
0 |
50 |
unless ($self or not blessed $self || !$self->isa('Net::BitTorrent')) |
|
383
|
0 |
0 |
unless ($_tcp{refaddr $self} or $host) |
|
388
|
1 |
49 |
if (defined $port and not $port =~ /^\d+$/) |
|
400
|
3 |
46 |
if ($host and not $host =~ /^(?:(?:(?:25[0-5]|2[0-4][0-9]|[0-1]?[0-9]{1,2})[.]?){4})$/) { } |
|
403
|
2 |
1 |
unless my($name, $aliases, $addrtype, $length, @addrs) = gethostbyname $host |
|
409
|
0 |
47 |
unless socket my $_udp, 2, 2, getprotobyname 'udp' |
|
423
|
0 |
47 |
unless bind $_udp, pack_sockaddr_in($port, $_packed_host) |
|
425
|
0 |
47 |
unless $_connections{refaddr $self}{fileno $_udp} = {'Object', $self, 'Mode', 'ro'} |
|
429
|
6 |
0 |
if ($_udp{refaddr $self} and fileno $_udp{refaddr $self} and defined $_connections{refaddr $self}{fileno $_udp{refaddr $self}}) |
|
441
|
0 |
812 |
unless ($rin and ref $rin and ref $rin eq 'SCALAR' and ($win and ref $win and ref $win eq 'SCALAR') and ($ein and ref $ein and ref $ein eq 'SCALAR')) |
|
451
|
0 |
6346 |
unless defined $_connections{refaddr $self}{$fileno} |
|
452
|
812 |
5534 |
if ($_tcp{refaddr $self} and $fileno == fileno $_tcp{refaddr $self}) { } |
|
|
812 |
4722 |
elsif ($_udp{refaddr $self} and $fileno == fileno $_udp{refaddr $self}) { } |
|
454
|
67 |
745 |
if (vec($$rin, $fileno, 1) == 1) |
|
456
|
67 |
0 |
if (scalar grep({not $$_{'Object'}->torrent if $$_{'Object'}->isa('Net::BitTorrent::Peer');} values %{$_connections{refaddr $self};}) < $_half_open{refaddr $self}) |
|
457
|
406 |
134 |
if $$_{'Object'}->isa('Net::BitTorrent::Peer') |
|
463
|
0 |
67 |
unless accept my $new_socket, $_tcp{refaddr $self} |
|
474
|
198 |
614 |
if (vec($$rin, $fileno, 1) == 1) |
|
476
|
0 |
198 |
unless my $paddr = recv($_udp{refaddr $self}, my $data, 1024, 0) |
|
479
|
75 |
123 |
if ($__UDP_OBJECT_CACHE{refaddr $self}{$paddr}{'Object'}) { } |
|
480
|
32 |
43 |
unless $__UDP_OBJECT_CACHE{refaddr $self}{$paddr}{'Object'}->_on_data($paddr, $data) |
|
490
|
0 |
0 |
if $_->isa('Net::BitTorrent::Torrent::Tracker::UDP') |
|
496
|
0 |
0 |
if ($tracker and $tracker->_on_data($paddr, $data)) |
|
507
|
57 |
66 |
if ($_use_dht{refaddr $self} and $_dht{refaddr $self}->_on_data($paddr, $data)) |
|
518
|
0 |
4722 |
$_max_dl_rate{refaddr $self} ? : |
|
527
|
0 |
4722 |
$_max_ul_rate{refaddr $self} ? : |
|
540
|
4341 |
53 |
if ($read or $write or $error) |
|
544
|
4650 |
19 |
defined $this_r ? : |
|
545
|
4650 |
19 |
defined $this_w ? : |
|
558
|
0 |
76 |
unless $infohash =~ /^[\d|a-f]{40}$/i |
|
561
|
47 |
29 |
$torrents{refaddr $self}{lc $infohash} ? : |
|
569
|
1 |
30 |
if (ref $args ne 'HASH') |
|
576
|
0 |
30 |
unless defined $torrent |
|
577
|
1 |
29 |
if $self->_locate_torrent($torrent->infohash) |
|
583
|
1 |
1 |
unless (blessed $torrent and $torrent->isa('Net::BitTorrent::Torrent')) |
|
600
|
0 |
32 |
unless ___check_event($type) |
|
608
|
0 |
2118 |
unless ___check_event($type) |
|
612
|
109 |
2009 |
$_event{refaddr $self}{$type} ? : |
|
638
|
1 |
2967 |
if (not $args or ref $args ne 'HASH') |
|
643
|
1 |
2966 |
unless ($$args{'Object'} and blessed($$args{'Object'})) |
|
648
|
0 |
2966 |
unless ($$args{'Time'} and $$args{'Time'} =~ /^\d+(?:\.\d+)?$/) |
|
653
|
0 |
2966 |
if (not $$args{'Code'} or ref $$args{'Code'} ne 'CODE') |
|
668
|
0 |
1 |
unless ($tid) |
|
672
|
0 |
1 |
unless ($_schedule{refaddr $self}{$tid}) |
|
684
|
2133 |
32700 |
if ($_schedule{refaddr $self}{$job}{'Timestamp'} <= time) |
|
685
|
2092 |
41 |
if defined $_schedule{refaddr $self}{$job}{'Object'} |
|
696
|
0 |
2966 |
if defined $_[1] |
|
700
|
47 |
0 |
$_tid{refaddr $self} =~ /\0/ ? : |
|
|
47 |
2919 |
$_tid{refaddr $self} =~ /^z*(\0*)$/ ? : |
|
745
|
2 |
0 |
$_use_dht{refaddr $self} ? : |
|
|
6 |
2 |
!$advanced ? : |
|
747
|
6 |
2 |
defined wantarray ? : |
|
766
|
0 |
6 |
if $_tcp{refaddr $self} |
|
767
|
0 |
6 |
if $_udp{refaddr $self} |
|
769
|
0 |
0 |
if $$conn{'Object'} |