Branch Coverage

blib/lib/Net/OSCAR/Connection.pm
Criterion Covered Total %
branch 0 188 0.0


line true false branch
56 0 0 unless $$self{'paused'}
61 0 0 if exists $$self{'peer'}
74 0 0 unless $$self{'paused'}
92 0 0 unless ref $self
93 0 0 unless ref $data{'protodata'}
97 0 0 if exists $data{$_}
100 0 0 if (exists $snac{'family'}) { }
101 0 0 if ($snac{'family'} == -1 and exists $data{'family'})
105 0 0 if ($$self{'paused'} and not $data{'nopause'}) { }
123 0 0 unless $$self{'socket'}
141 0 0 if $$self{'outbuff'}
145 0 0 unless (defined $nchars)
146 0 0 if $! == 11
155 0 0 if ($$self{'outbuff'}) { }
0 0 elsif ($had_outbuff) { }
176 0 0 unless $$self{'socket'} and CORE::fileno $$self{'socket'} and getpeername $$self{'socket'}
178 0 0 if $msg
195 0 0 if $len > $buffsize
197 0 0 if ($no_reread == 2) { }
203 0 0 if ($readlen > 0 and $no_reread != 1)
206 0 0 if (${$$self{'buffer'};}) { }
212 0 0 if (not ${$$self{'buffer'};} || defined $nchars) { }
0 0 elsif (not ${$$self{'buffer'};} and $nchars == 0) { }
213 0 0 if $! == 11
226 0 0 if (length ${$$self{'buffer'};} < $len) { }
231 0 0 if (length ${$$self{'buffer'};} == $len) { }
248 0 0 unless ($$self{'buff_gotflap'})
250 0 0 if (not defined $header) { }
0 0 elsif ($header eq '') { }
261 0 0 if ($$self{'flap_size'} > 0) { }
263 0 0 if (not defined $data) { }
0 0 elsif ($data eq '') { }
288 0 0 if $snac{'reqdata'}
297 0 0 if ($snac{'family'} and not $$self{'families'}{$snac{'family'}}) { }
301 0 0 if ($newconn) { }
308 0 0 unless exists $snac{'family'} and exists $snac{'subtype'}
310 0 0 if ($$self{'session'}{'rate_manage_mode'} != 0 and $$self{'rate_limits'})
312 0 0 if ($key)
314 0 0 if ($rinfo)
330 0 0 unless my $snac = $self->flap_get($no_reread)
338 0 0 if ($data{'flags1'} & 128)
363 0 0 if ($^O ne 'MSWin32') { }
365 0 0 if ($blocking) { }
373 0 0 unless ioctl $$self{'socket'}, 2147772030, $blocking
388 0 0 unless $host
390 0 0 if (not $1) { }
391 0 0 if (exists $$self{'session'}) { }
398 0 0 if ($port =~ /^[^0-9]/)
406 0 0 if (defined $$self{'session'}{'proxy_type'}) { }
407 0 0 if ($$self{'session'}{'proxy_type'} eq 'SOCKS4' or $$self{'session'}{'proxy_type'} eq 'SOCKS5') { }
0 0 elsif ($$self{'session'}{'proxy_type'} eq 'HTTP' or $$self{'session'}{'proxy_type'} eq 'HTTPS') { }
408 0 0 unless require Net::SOCKS
411 0 0 if ($$self{'session'}{'proxy_type'} eq 'SOCKS4') { }
422 0 0 if exists $$self{'session'}{'proxy_username'}
423 0 0 if exists $$self{'session'}{'proxy_password'}
424 0 0 unless $$self{'socks'} = 'Net::SOCKS'->new(%socksargs)
426 0 0 unless $$self{'socket'} = $$self{'socks'}->connect('peer_addr', $host, 'peer_port', $port)
436 0 0 if $$self{'session'}{'proxy_password'}
437 0 0 if $authen
440 0 0 if $authen
446 0 0 if ($$self{'session'}{'local_ip'})
447 0 0 unless bind $$self{'socket'}, sockaddr_in(0, inet_aton($$self{'session'}{'local_ip'}))
451 0 0 unless my $addr = inet_aton($$self{'session'}{'proxy_host'})
452 0 0 unless (CORE::connect $$self{'socket'}, sockaddr_in($$self{'session'}{'proxy_port'}, $addr))
453 0 0 unless $! == 115
461 0 0 unless sysread $$self{'socket'}, $buffer, 1024
464 0 0 unless $buffer =~ /connection\s+established/i
476 0 0 if ($$self{'session'}{'local_ip'})
477 0 0 unless bind $$self{'socket'}, sockaddr_in(0, inet_aton($$self{'session'}{'local_ip'}))
481 0 0 unless my $addr = inet_aton($host)
482 0 0 unless (CORE::connect $$self{'socket'}, sockaddr_in($port, $addr))
483 0 0 if $! == 115
491 0 0 unless binmode $$self{'socket'}
503 0 0 if (defined $$self{'session'}{'proxy_type'}) { }
509 0 0 unless setsockopt $$self{'socket'}, 1, 2, "\cA\000\000\000"
512 0 0 unless bind $$self{'socket'}, $sockaddr
514 0 0 unless CORE::listen $$self{'socket'}, 128
520 0 0 unless binmode $$self{'socket'}
534 0 0 if ($error)
539 0 0 if ($write and $$self{'outbuff'})
544 0 0 if ($write and not $$self{'connected'}) { }
0 0 elsif ($read and not $$self{'ready'}) { }
0 0 elsif ($read) { }
553 0 0 if (not defined $flap) { }
560 0 0 unless $$self{'channel'} == 1
562 0 0 if ($$self{'conntype'} == 0) { }
564 0 0 unless $$self{'session'}{'svcdata'}{'hashlogin'}
569 0 0 if (not $$self{'session'}{'svcdata'}{'hashlogin'}) { }
593 0 0 if (not $$self{'session'}{'svcdata'}{'hashlogin'}) { }
594 0 0 unless $snac = $self->snac_get($no_reread)
597 0 0 unless my $data = $self->flap_get($no_reread)
599 0 0 if ($$self{'channel'} == 4) { }
609 0 0 if ($snac) { }
625 0 0 if $$self{'sentready'}++