Branch Coverage

blib/lib/Control/CLI.pm
Criterion Covered Total %
branch 44 1260 3.4


line true false branch
156 0 0 unless open my $key, "<", $privateKey
158 0 0 if (/ENCRYPTED/)
170 0 1 unless @$argsRef
172 2 2 if (++$even_lc % 2 and defined $_) { }
175 0 2 unless defined $argsIn[$i]
176 2 0 if ($validArgs{$argsIn[$i]})
180 0 0 unless $noCarp
188 0 0 unless @$argsRef
190 0 0 if (++$even_lc % 2) { }
193 0 0 if $suppressArgs{$argsIn[$i]}
203 0 2 if (not defined $mode) { }
0 2 elsif ($mode =~ /^\s*die\s*$/i) { }
0 2 elsif ($mode =~ /^\s*croak\s*$/i) { }
2 0 elsif ($mode =~ /^\s*return\s*$/i) { }
0 0 elsif (ref $mode) { }
211 0 0 unless (validCodeRef($mode))
227 0 0 defined $1 ? :
233 0 0 if ref $codeRef eq "CODE"
234 0 0 if ref $codeRef eq "ARRAY" and ref $codeRef->[0] eq "CODE"
241 0 0 if ref $callRef eq "CODE"
251 0 0 if validCodeRef($mode)
252 0 0 if lc $privacy eq "clear"
253 0 0 if lc $privacy eq "hide"
265 0 1 if (@_ == 1) { }
272 0 1 defined $args{'debug'} ? :
273 1 0 defined $args{'errmode'} ? :
274 0 1 defined $args{'errmsg_format'} ? :
275 0 1 unless defined $connectionType
277 1 0 if ($connectionType =~ /^TELNET$/i) { }
0 0 elsif ($connectionType =~ /^SSH$/i) { }
278 0 1 unless $UseTelnet
287 0 0 unless $UseSSH
293 0 0 if ($^O eq 'MSWin32') { }
294 0 0 unless $UseSerial
297 0 0 $debug & 2 ? :
298 0 0 unless $parent = "Win32::SerialPort"->new($connectionType, !($debug & 1))
304 0 0 unless $UseSerial
307 0 0 $debug & 2 ? :
308 0 0 unless $parent = "Device::SerialPort"->new($connectionType, !($debug & 1))
370 0 1 $connectionType eq 'SSH' ? :
371 0 1 if ($connectionType eq "SERIAL")
373 0 0 $^O eq 'MSWin32' ? :
376 1 0 if ($connectionType eq "TELNET")
383 1 1 if ($arg eq 'errmode') { }
0 1 elsif ($arg eq 'errmsg_format') { }
0 1 elsif ($arg eq 'timeout') { }
0 1 elsif ($arg eq 'connection_timeout') { }
0 1 elsif ($arg eq 'read_block_size') { }
0 1 elsif ($arg eq 'blocking') { }
0 1 elsif ($arg eq 'read_attempts') { }
0 1 elsif ($arg eq 'readwait_timer') { }
0 1 elsif ($arg eq 'data_with_error') { }
0 1 elsif ($arg eq 'return_reference') { }
0 1 elsif ($arg eq 'output_record_separator') { }
0 1 elsif ($arg eq 'binmode') { }
0 1 elsif ($arg eq 'prompt_credentials') { }
0 1 elsif ($arg eq 'prompt') { }
0 1 elsif ($arg eq 'username_prompt') { }
0 1 elsif ($arg eq 'password_prompt') { }
0 1 elsif ($arg eq 'terminal_type') { }
0 1 elsif ($arg eq 'window_size') { }
0 1 elsif ($arg eq 'report_query_status') { }
0 1 elsif ($arg eq 'input_log') { }
0 1 elsif ($arg eq 'output_log') { }
0 1 elsif ($arg eq 'dump_log') { }
0 1 elsif ($arg eq 'debug') { }
422 0 0 if (@_ == 1) { }
424 0 0 if ($args{'host'} =~ /^(.+?)\s+(\d+)$/ or $args{'host'} =~ /^([^:\s]+?):(\d+)$/)
442 0 0 defined $args{'blocking'} ? :
0 0 defined $args{'connection_timeout'} ? :
0 0 defined $args{'errmode'} ? :
469 0 0 defined $args{'prompt_credentials'} ? :
473 0 0 if ($self->{'TYPE'} ne "SERIAL" and not $UseSocketIP and defined $args{'blocking'} and not $args{'blocking'})
477 0 0 if defined $self->{'POLL'}{'errmode'}
485 0 0 if @_
487 0 0 unless (defined $self->{'POLL'} and $self->{'POLL'}{'coderef'} == __PACKAGE__->can("connect_poll"))
491 0 0 if defined $self->{'POLL'}{'errmode'}
494 0 0 unless defined $self->{'POLL'}{'complete'} and $self->{'POLL'}{'complete'} == 0
506 0 0 defined $args{'timeout'} ? :
507 0 0 defined $args{'blocking'} ? :
508 0 0 defined $args{'return_reference'} ? :
509 0 0 defined $args{'binmode'} ? :
510 0 0 defined $args{'errmode'} ? :
511 0 0 if defined $binmode
512 0 0 if defined $errmode
514 0 0 if $blocking and not length $self->{'BUFFER'}
526 0 0 defined $args{'read_attempts'} ? :
527 0 0 defined $args{'readwait_timer'} ? :
528 0 0 defined $args{'data_with_error'} ? :
529 0 0 defined $args{'timeout'} ? :
530 0 0 defined $args{'blocking'} ? :
531 0 0 defined $args{'return_reference'} ? :
532 0 0 defined $args{'binmode'} ? :
533 0 0 defined $args{'errmode'} ? :
534 0 0 if defined $binmode
535 0 0 if defined $errmode
539 0 0 if (not length $$bufref and $blocking)
541 0 0 unless defined $bufref
547 0 0 unless (defined $outref)
548 0 0 if $dataWithError and length $$bufref
551 0 0 if (length $$outref)
557 0 0 $returnRef ? :
569 0 0 if (@_ == 1) { }
576 0 0 if $args[$i] eq "match"
577 0 0 if $args[$i] eq "match_list" and ref $args[$i + 1] eq "ARRAY"
578 0 0 if $args[$i] eq "timeout"
579 0 0 if $args[$i] eq "blocking"
580 0 0 if $args[$i] eq "return_reference"
581 0 0 if $args[$i] eq "errmode"
582 0 0 if $args[$i] eq "poll_syntax"
608 0 0 if defined $self->{'POLL'}{'errmode'}
612 0 0 if ($pollSyntax) { }
613 0 0 wantarray ? :
616 0 0 wantarray ? :
624 0 0 if @_
626 0 0 unless (defined $self->{'POLL'} and $self->{'POLL'}{'coderef'} == __PACKAGE__->can("waitfor_poll"))
631 0 0 if defined $self->{'POLL'}{'errmode'}
634 0 0 unless defined $self->{'POLL'}{'complete'} and $self->{'POLL'}{'complete'} == 0
645 0 0 if (@_ == 1) { }
652 0 0 unless defined $args{'string'}
653 0 0 defined $args{'binmode'} ? :
654 0 0 defined $args{'errmode'} ? :
655 0 0 if defined $binmode
656 0 0 if defined $errmode
666 0 0 if (@_ == 1) { }
673 0 0 defined $args{'binmode'} ? :
674 0 0 defined $args{'errmode'} ? :
675 0 0 if defined $binmode
676 0 0 if defined $errmode
710 0 0 defined $args{'blocking'} ? :
0 0 defined $args{'timeout'} ? :
0 0 defined $args{'errmode'} ? :
0 0 defined $args{'return_reference'} ? :
720 0 0 defined $args{'prompt_credentials'} ? :
0 0 defined $args{'prompt'} ? :
0 0 defined $args{'username_prompt'} ? :
0 0 defined $args{'password_prompt'} ? :
724 0 0 if defined $self->{'POLL'}{'errmode'}
732 0 0 if @_
734 0 0 unless (defined $self->{'POLL'} and $self->{'POLL'}{'coderef'} == __PACKAGE__->can("login_poll"))
739 0 0 if defined $self->{'POLL'}{'errmode'}
742 0 0 unless defined $self->{'POLL'}{'complete'} and $self->{'POLL'}{'complete'} == 0
753 0 0 if (@_ == 1) { }
760 0 0 unless defined $args{'command'}
773 0 0 defined $args{'blocking'} ? :
0 0 defined $args{'timeout'} ? :
0 0 defined $args{'errmode'} ? :
0 0 defined $args{'return_reference'} ? :
779 0 0 defined $args{'prompt'} ? :
784 0 0 if defined $self->{'POLL'}{'errmode'}
788 0 0 if ($args{'poll_syntax'}) { }
789 0 0 wantarray ? :
792 0 0 wantarray ? :
800 0 0 if @_
802 0 0 unless (defined $self->{'POLL'} and $self->{'POLL'}{'coderef'} == __PACKAGE__->can("cmd_poll"))
807 0 0 if defined $self->{'POLL'}{'errmode'}
810 0 0 unless defined $self->{'POLL'}{'complete'} and $self->{'POLL'}{'complete'} == 0
821 0 0 if (@_ == 1) { }
835 0 0 defined $args{'blocking'} ? :
0 0 defined $args{'errmode'} ? :
850 0 0 defined $args{'baudrate'} ? :
0 0 defined $args{'parity'} ? :
0 0 defined $args{'databits'} ? :
0 0 defined $args{'stopbits'} ? :
0 0 defined $args{'handshake'} ? :
853 0 0 if defined $self->{'POLL'}{'errmode'}
861 0 0 if @_
863 0 0 unless (defined $self->{'POLL'} and $self->{'POLL'}{'coderef'} == __PACKAGE__->can("change_baudrate_poll"))
867 0 0 if defined $self->{'POLL'}{'errmode'}
870 0 0 unless defined $self->{'POLL'}{'complete'} and $self->{'POLL'}{'complete'} == 0
881 0 0 unless (defined $fh)
884 0 0 unless (ref $fh or length $fh)
888 0 0 unless (ref $fh or defined fileno $fh)
891 0 0 unless open $fh, ">", "$logfile"
903 0 0 unless (defined $fh)
906 0 0 unless (ref $fh or length $fh)
910 0 0 unless (ref $fh or defined fileno $fh)
913 0 0 unless open $fh, ">", "$logfile"
925 0 0 unless (defined $fh)
928 0 0 unless (ref $fh or length $fh)
932 0 0 unless (ref $fh or defined fileno $fh)
935 0 0 unless open $fh, ">", "$logfile"
947 0 0 if ($self->{'TYPE'} eq 'TELNET') { }
0 0 elsif ($self->{'TYPE'} eq 'SSH') { }
0 0 elsif ($self->{'TYPE'} eq 'SERIAL') { }
949 0 0 $self->{'PARENT'}->eof ? :
953 0 0 if defined $self->{'PARENT'} and not defined $self->{'SSHCHANNEL'}
955 0 0 if $self->{'SSHCHANNEL'}->eof
959 0 0 if $sshError == -1
960 0 0 if $sshError == -13
961 0 0 if $sshError == -43
979 0 0 if $self->eof
981 0 0 if ($self->{'TYPE'} eq 'TELNET') { }
0 0 elsif ($self->{'TYPE'} eq 'SSH') { }
0 0 elsif ($self->{'TYPE'} eq 'SERIAL') { }
984 0 0 unless $self->{'PARENT'}->break
988 0 0 unless $self->put("string", "~B", "errmode", "return")
1005 0 0 if (@_ == 1) { }
1013 0 0 if ($self->{'TYPE'} eq 'TELNET') { }
0 0 elsif ($self->{'TYPE'} eq 'SSH') { }
0 0 elsif ($self->{'TYPE'} eq 'SERIAL') { }
1014 0 0 if defined $self->{'PARENT'}
1016 0 0 if defined $self->{'SOCKET'}
1020 0 0 if defined $self->{'SSHCHANNEL'}
1022 0 0 if defined $self->{'PARENT'}
1024 0 0 if defined $self->{'SOCKET'}
1028 0 0 if (defined $self->{'PARENT'} and not $self->{'SERIALEOF'})
1029 0 0 if ($^O eq 'MSWin32') { }
1036 0 0 if defined $self->{'BAUDRATE'}
1050 0 0 if ($args{'close_logs'})
1051 0 0 if (defined $self->input_log)
1055 0 0 if (defined $self->output_log)
1059 0 0 if (defined $self->dump_log)
1063 0 0 if ($self->{'TYPE'} eq "TELNET" and defined $self->parent->option_log)
1098 0 0 if ($_[0]->isa($Package)) { }
0 0 elsif (ref $_[0]) { }
1110 0 0 if (defined $args{'object_complete'})
1111 0 0 if ($args{'object_complete'} =~ /^all|next$/i) { }
1118 0 0 if (defined $args{'object_error'})
1119 0 0 if ($args{'object_error'} =~ /^return|ignore$/i) { }
1126 0 0 if (defined $args{'poll_timer'})
1127 0 0 if ($args{'poll_timer'} =~ /\d+/) { }
1134 0 0 if (defined $args{'poll_code'})
1135 0 0 unless (validCodeRef($args{'poll_code'}))
1140 0 0 defined $self ? :
0 0 defined $args{'errmode'} ? :
1141 0 0 defined $self ? :
0 0 defined $args{'errmsg_format'} ? :
1142 0 0 unless defined $self or defined $args{'object_list'}
1149 0 0 if (defined $self) { }
0 0 elsif (ref $args{'object_list'} eq 'ARRAY') { }
0 0 elsif (ref $args{'object_list'} eq 'HASH') { }
1150 0 0 unless (defined $self->{'POLL'})
1151 0 0 if defined $args{'errmode'}
1154 0 0 defined $args{'errmode'} ? :
1156 0 0 if $ok or not defined $ok
1162 0 0 unless $obj->isa($Package)
1163 0 0 unless (defined $obj->{'POLL'})
1164 0 0 if defined $args{'errmode'}
1168 0 0 defined $objLastPollTime->[$i] ? :
1169 0 0 defined $args{'errmode'} ? :
1170 0 0 if ($ok) { }
0 0 elsif (not defined $ok) { }
1172 0 0 unless ($obj->{'POLLREPORTED'})
1179 0 0 unless ($obj->{'POLLREPORTED'})
1186 0 0 if ($objLastPollTime->[$i] - $objStartTime > $pollTimer and $args{'poll_code'}) { }
1198 0 0 unless $obj->isa($Package)
1199 0 0 unless (defined $obj->{'POLL'})
1200 0 0 if defined $args{'errmode'}
1204 0 0 defined $objLastPollTime->{$key} ? :
1205 0 0 defined $args{'errmode'} ? :
1206 0 0 if ($ok) { }
0 0 elsif (not defined $ok) { }
1208 0 0 unless ($obj->{'POLLREPORTED'})
1215 0 0 unless ($obj->{'POLLREPORTED'})
1222 0 0 if ($objLastPollTime->{$key} - $objStartTime > $pollTimer and $args{'poll_code'}) { }
1236 0 0 if $running == 0 or $objComplete eq "next" and @lastCompleted or $objError eq "return" and @lastFailed
1238 0 0 if ($args{'poll_code'} and not $pollActHost)
1243 0 0 if $mainLoopSleep > 0
1246 0 0 unless wantarray
1256 0 0 if (defined $newSetting)
1258 0 0 if ($self->{'TYPE'} eq "TELNET")
1277 0 0 if defined $newSetting
1285 0 0 if defined $newSetting
1293 0 0 if defined $newSetting
1301 0 0 if defined $newSetting
1309 0 0 if defined $newSetting
1317 0 0 if defined $newSetting
1325 0 0 if (defined $newSetting)
1327 0 0 $newSetting eq "\r" ? :
1336 0 0 if defined $newSetting
1345 0 0 if (defined $newSetting)
1346 0 0 if (ref $newSetting and not validCodeRef($newSetting))
1365 0 0 if (defined $newSetting)
1376 0 0 if (defined $newSetting)
1387 0 0 if (defined $newSetting)
1398 0 0 if (defined $newSetting)
1399 0 0 length $newSetting ? :
1409 0 0 if (defined $width and not $width or defined $height and not $height) { }
0 0 elsif (defined $width and defined $height) { }
1413 0 0 if ($width =~ /^\d+$/ and $height =~ /^\d+$/) { }
1427 0 0 if defined $newSetting
1436 1 0 if (defined $newSetting and my $newMode = parse_errmode($pkgsub, $newSetting))
1447 0 0 if (@_ == 1) { }
1454 0 0 defined $args{'errmsg_format'} ? :
1456 0 0 if defined $args{'set_message'}
1466 0 0 if (defined $newSetting)
1467 0 0 if ($newSetting =~ /^\s*terse\s*$/i) { }
0 0 elsif ($newSetting =~ /^\s*verbose\s*$/i) { }
0 0 elsif ($newSetting =~ /^\s*default\s*$/i) { }
1474 0 0 if defined $newSetting
1483 0 0 if (defined $newSetting and $newSetting != $currentSetting)
1485 0 0 if ($self->{'TYPE'} eq 'SSH') { }
0 0 elsif ($self->{'TYPE'} eq 'SERIAL') { }
1486 0 0 $newSetting & 2 ? :
1489 0 0 if ($^O eq 'MSWin32') { }
1491 0 0 $newSetting & 2 ? :
1497 0 0 $newSetting & 2 ? :
1545 0 0 if ($self->{'TYPE'} eq 'SERIAL') { }
1620 0 0 if (defined $self->{'POLL'} and defined $self->{'POLL'}{'complete'} and $self->{'POLL'}{'complete'} == 0)
1657 0 0 unless defined $self->{'POLL'}
1659 0 0 if @{$self->{'POLL'}{'cache'};}
1670 0 0 unless ($self->{'POLLING'})
1684 0 0 if (defined $timeout)
1689 0 0 @{$self->{'POLL'}{'cache'};} ? :
1700 0 0 unless ($self->{'POLLING'})
1715 0 0 @{$self->{'POLL'}{'cache'};} ? :
1726 0 0 unless ($self->{'POLLING'})
1732 0 0 if (@{$self->{'POLL'}{'cache'};})
1733 0 0 if defined $ok and $ok == 0
1736 0 0 unless defined $ok
1737 0 0 unless wantarray
1742 0 0 unless $self->{'POLL'}{'output_requested'} and $self->{'POLL'}{'output_type'}
1745 0 0 if ($self->{'POLL'}{'output_type'} & 1)
1748 0 0 if ($self->{'POLL'}{'return_reference'}) { }
1755 0 0 if ($self->{'POLL'}{'output_type'} & 2)
1756 0 0 if (ref $self->{'POLL'}{'output_result'} eq 'ARRAY') { }
1757 0 0 if ($self->{'POLL'}{'return_list'}) { }
1776 0 0 unless ($self->{'POLLING'})
1781 0 0 if ($self->{'POLL'}{'blocking'}) { }
1785 0 0 unless (defined $self->{'POLL'}{'endtime'})
1788 0 0 unless &Control::CLI::time() > $self->{'POLL'}{'endtime'}
1798 0 0 unless ($self->{'POLLING'})
1803 0 0 if ($UseSocketIP) { }
1806 0 0 unless (defined $self->{'POLL'}{'socket'})
1809 0 0 unless ($self->{'POLL'}{'blocking'})
1810 0 0 if (defined $self->{'POLL'}{'timeout'}) { }
1818 0 0 unless $self->{'POLL'}{'socket'} = "IO::Socket::IP"->new("PeerHost", $host, "PeerPort", $port, "Blocking", 0)
1832 0 0 if ($self->{'POLL'}{'blocking'}) { }
1834 0 0 unless select undef, $wvec, $evec, $self->{'POLL'}{'timeout'}
1837 0 0 unless (select undef, $wvec, $evec, 0)
1838 0 0 unless &Control::CLI::time() > $self->{'POLL'}{'endtime'}
1843 0 0 if $!
1850 0 0 unless $self->{'POLL'}{'socket'} = "IO::Socket::INET"->new("PeerHost", $host, "PeerPort", $port, "Timeout", $self->{'POLL'}{'timeout'})
1860 0 0 unless ($self->{'POLLING'})
1865 0 0 if ($self->{'POLL'}{'blocking'}) { }
1872 0 0 unless (defined $self->{'POLL'}{'read_buffer'})
1873 0 0 if defined $errmsg
1879 0 0 if ($self->{'POLL'}{'already_polled'})
1885 0 0 unless (defined $self->{'POLL'}{'endtime'})
1894 0 0 unless (defined $self->{'POLL'}{'read_buffer'})
1895 0 0 if defined $errmsg
1898 0 0 if (length $self->{'POLL'}{'read_buffer'})
1905 0 0 if (&Control::CLI::time() > $self->{'POLL'}{'endtime'}) { }
1908 0 0 if defined $errmsg
1920 0 0 unless defined $readAttempts
1921 0 0 unless defined $readwaitTimer
1922 0 0 unless defined $dataWithError
1925 0 0 unless ($self->{'POLLING'})
1931 0 0 if ($self->{'POLL'}{'blocking'}) { }
1941 0 0 unless (defined $self->{'POLL'}{'read_buffer'})
1942 0 0 if defined $errmsg
1948 0 0 if ($self->{'POLL'}{'already_polled'})
1954 0 0 if ($firstReadRequired and not defined $self->{'POLL'}{'endtime'}) { }
0 0 elsif (not $firstReadRequired || defined $self->{'POLL'}{'waittime'}) { }
1967 0 0 unless (defined $outref)
1968 0 0 if ($dataWithError and length $self->{'POLL'}{'read_buffer'})
1974 0 0 if defined $errmsg
1977 0 0 if (length $$outref)
1984 0 0 if (defined $self->{'POLL'}{'waittime'}) { }
1985 0 0 if (&Control::CLI::time() > $self->{'POLL'}{'waittime'}) { }
1996 0 0 if (&Control::CLI::time() > $self->{'POLL'}{'endtime'}) { }
1999 0 0 if defined $errmsg
2015 0 0 unless ($self->{'POLLING'})
2020 0 0 unless (defined $self->{'POLL'}{$pollsub})
2026 0 0 if (@_ and not %args)
2057 0 0 defined $args{'username'} ? :
0 0 defined $args{'password'} ? :
0 0 defined $args{'passphrase'} ? :
0 0 defined $args{'prompt_credentials'} ? :
2062 0 0 if defined $connect->{'errmode'}
2066 0 0 if ($connect->{'stage'} < 1)
2071 0 0 if defined $connect->{'terminal_type'}
2072 0 0 if defined $connect->{'window_size'}
2075 0 0 if ($self->{'TYPE'} eq 'TELNET') { }
0 0 elsif ($self->{'TYPE'} eq 'SSH') { }
0 0 elsif ($self->{'TYPE'} eq 'SERIAL') { }
2076 0 0 if ($connect->{'stage'} < 1)
2078 0 0 unless defined $connect->{'host'}
2081 0 0 unless defined $connect->{'port'}
2084 0 0 if (not $self->{'POLL'}{'blocking'} and $connect->{'atomic_connect'}) { }
2095 0 0 unless $ok
2100 0 0 unless $self->{'PARENT'}->fhopen($self->{'SOCKET'})
2101 0 0 if ($^O eq "MSWin32")
2105 0 0 if (exists $telobj->{'select_supported'} and not $telobj->{'select_supported'})
2115 0 0 if $connect->{'atomic_connect'}
2118 0 0 if ($connect->{'stage'} < 1)
2120 0 0 unless defined $connect->{'host'}
2121 0 0 unless defined $connect->{'port'}
2124 0 0 if (not $self->{'POLL'}{'blocking'} and $connect->{'atomic_connect'}) { }
2132 0 0 if ($connect->{'stage'} < 2)
2135 0 0 unless $ok
2147 0 0 if $@
2148 0 0 unless $ok
2149 0 0 unless $self->{'POLL'}{'blocking'}
2151 0 0 if ($connect->{'stage'} < 3)
2153 0 0 if ($connect->{'callback'})
2154 0 0 if (validCodeRef($connect->{'callback'})) { }
2156 0 0 defined $errmsg ? :
0 0 unless $ok
2157 0 0 unless $self->{'POLL'}{'blocking'}
2164 0 0 if ($connect->{'stage'} < 4)
2166 0 0 unless (defined $connect->{'username'})
2167 0 0 unless $connect->{'prompt_credentials'}
2172 0 0 if (not $self->{'POLL'}{'blocking'} and &Control::CLI::time() > $self->{'POLL'}{'endtime'})
2177 0 0 if $auth eq "publickey"
2178 0 0 if $auth eq "password"
2179 0 0 if $auth eq "keyboard-interactive"
2184 0 0 unless $self->{'POLL'}{'blocking'}
2186 0 0 if ($connect->{'stage'} < 5)
2188 0 0 if ($connect->{'authPublicKey'})
2189 0 0 if (defined $connect->{'publickey'} and defined $connect->{'privatekey'}) { }
0 0 elsif (not $connect->{'authPassword'}) { }
2191 0 0 unless -e $connect->{'publickey'}
2193 0 0 unless -e $connect->{'privatekey'}
2194 0 0 unless ($connect->{'passphrase'})
2196 0 0 unless defined $passphReq
2197 0 0 if ($passphReq)
2198 0 0 unless $connect->{'prompt_credentials'}
2205 0 0 if (not $self->{'POLL'}{'blocking'} and &Control::CLI::time() > $self->{'POLL'}{'endtime'})
2214 0 0 if ($ok) { }
0 0 elsif (not $connect->{'authPassword'} && (defined $connect->{'password'} || $connect->{'prompt_credentials'})) { }
2215 0 0 if $connect->{'passphrase'}
2222 0 0 unless $self->{'POLL'}{'blocking'}
2229 0 0 if ($connect->{'stage'} < 6)
2231 0 0 if ($connect->{'authPassword'} and not $self->{'PARENT'}->auth_ok)
2232 0 0 unless (defined $connect->{'password'})
2233 0 0 unless $connect->{'prompt_credentials'}
2238 0 0 if (not $self->{'POLL'}{'blocking'} and &Control::CLI::time() > $self->{'POLL'}{'endtime'})
2241 0 0 if ($connect->{'authPassword'} & 1) { }
0 0 elsif ($connect->{'authPassword'} & 2) { }
2243 0 0 unless $self->{'PARENT'}->auth_password($connect->{'username'}, $connect->{'password'})
2248 0 0 unless $self->{'PARENT'}->auth_keyboard($connect->{'username'}, $connect->{'password'})
2256 0 0 unless $self->{'POLL'}{'blocking'}
2260 0 0 unless $self->{'PARENT'}->auth_ok
2263 0 0 if (not $self->{'POLL'}{'blocking'} and &Control::CLI::time() > $self->{'POLL'}{'endtime'})
2271 0 0 if $connect->{'atomic_connect'}
2274 0 0 unless defined $connect->{'handshake'}
2275 0 0 unless defined $connect->{'baudrate'}
2276 0 0 unless defined $connect->{'parity'}
2277 0 0 unless defined $connect->{'databits'}
2278 0 0 unless defined $connect->{'stopbits'}
2279 0 0 unless $self->{'PARENT'}->handshake($connect->{'handshake'})
2280 0 0 unless ($self->{'PARENT'}->baudrate($connect->{'baudrate'}))
2282 0 0 if ($^O eq 'MSWin32' and $connect->{'forcebaud'}) { }
2289 0 0 unless $self->{'PARENT'}->parity($connect->{'parity'})
2290 0 0 unless ($connect->{'parity'} eq "none")
2291 0 0 unless $self->{'PARENT'}->parity_enable(1)
2293 0 0 unless $self->{'PARENT'}->databits($connect->{'databits'})
2294 0 0 unless $self->{'PARENT'}->stopbits($connect->{'stopbits'})
2295 0 0 unless $self->{'PARENT'}->write_settings
2297 0 0 unless $self->{'PARENT'}->buffers($ComPortReadBuffer, 0)
2298 0 0 if ($^O eq "MSWin32")
2299 0 0 unless $self->{'PARENT'}->read_interval($ComReadInterval)
2302 0 0 unless defined $self->{'PARENT'}->read_char_time(0)
2322 0 0 unless ($self->{'POLLING'})
2327 0 0 unless (defined $self->{'POLL'}{$pollsub})
2330 0 0 if (@_ and not %args)
2348 0 0 defined $args{'username'} ? :
0 0 defined $args{'password'} ? :
0 0 defined $args{'prompt'} ? :
0 0 defined $args{'username_prompt'} ? :
0 0 defined $args{'password_prompt'} ? :
0 0 defined $args{'prompt_credentials'} ? :
2353 0 0 if defined $login->{'errmode'}
2354 0 0 if $self->eof
2356 0 0 if ($login->{'stage'} < 1)
2358 0 0 if ($self->{'LOGINSTAGE'} eq 'username') { }
0 0 elsif ($self->{'LOGINSTAGE'} eq 'password') { }
2359 0 0 unless $login->{'username'}
2360 0 0 unless $self->print("line", $login->{'username'}, "errmode", "return")
2366 0 0 unless $login->{'password'}
2367 0 0 unless $self->print("line", $login->{'password'}, "errmode", "return")
2375 0 0 unless $ok
2380 0 0 if ($self->{'POLL'}{'local_buffer'} =~ /$login->{'username_prompt'}/)
2381 0 0 if ($login->{'login_attempted'})
2384 0 0 unless ($login->{'username'})
2385 0 0 if ($self->{'TYPE'} eq 'SSH') { }
2389 0 0 unless ($login->{'prompt_credentials'})
2396 0 0 unless $self->print("line", $login->{'username'}, "errmode", "return")
2403 0 0 if ($self->{'POLL'}{'local_buffer'} =~ /$login->{'password_prompt'}/)
2404 0 0 unless (defined $login->{'password'})
2405 0 0 unless (defined $login->{'prompt_credentials'})
2411 0 0 unless $self->print("line", $login->{'password'}, "errmode", "return")
2420 0 0 if $login->{'login_attempted'}
2430 0 0 unless ($self->{'POLLING'})
2435 0 0 unless (defined $self->{'POLL'}{$pollsub})
2438 0 0 if (@_ and not %args)
2441 0 0 unless ref $args{'match_list'} eq "ARRAY"
2457 0 0 if defined $waitfor->{'errmode'}
2458 0 0 if $self->eof
2460 0 0 if ($waitfor->{'stage'} < 1)
2462 0 0 unless @{$waitfor->{'matchpat'};}
2467 0 0 if ($@)
2475 0 0 unless $ok
2479 0 0 if ($self->{'POLL'}{'local_buffer'} =~ s/$pattern//)
2485 0 0 if length $self->{'POLL'}{'local_buffer'}
2495 0 0 unless ($self->{'POLLING'})
2500 0 0 unless (defined $self->{'POLL'}{$pollsub})
2503 0 0 if (@_ and not %args)
2516 0 0 defined $args{'prompt'} ? :
2521 0 0 if defined $cmd->{'errmode'}
2522 0 0 if $self->eof
2524 0 0 if ($cmd->{'stage'} < 1)
2531 0 0 unless $self->print("line", $cmd->{'command'}, "errmode", "return")
2538 0 0 unless $ok
2540 0 0 if ($cmd->{'cmdEchoRemoved'}) { }
2548 0 0 if ($self->{'POLL'}{'local_buffer'} =~ s/^.*\n//)
2567 0 0 unless ($self->{'POLLING'})
2572 0 0 unless (defined $self->{'POLL'}{$pollsub})
2575 0 0 if (@_ and not %args)
2591 0 0 defined $args{'baudrate'} ? :
0 0 defined $args{'parity'} ? :
0 0 defined $args{'databits'} ? :
0 0 defined $args{'stopbits'} ? :
0 0 defined $args{'handshake'} ? :
2596 0 0 if defined $changeBaud->{'errmode'}
2598 0 0 unless $self->{'TYPE'} eq "SERIAL"
2599 0 0 if $self->{'SERIALEOF'}
2601 0 0 if ($changeBaud->{'stage'} < 1)
2605 0 0 if ($changeBaud->{'stage'} < 2)
2607 0 0 unless $ok
2612 0 0 if ($^O eq 'MSWin32') { }
2613 0 0 unless $self->{'PARENT'} = "Win32::SerialPort"->new($self->{'COMPORT'}, !($self->{'debug'} & 1))
2617 0 0 unless $self->{'PARENT'} = "Device::SerialPort"->new($self->{'COMPORT'}, !($self->{'debug'} & 1))
2620 0 0 unless $self->{'PARENT'}->handshake($changeBaud->{'handshake'})
2621 0 0 unless ($self->{'PARENT'}->baudrate($changeBaud->{'baudrate'}))
2623 0 0 if ($^O eq 'MSWin32' and $changeBaud->{'forcebaud'}) { }
2630 0 0 unless $self->{'PARENT'}->parity($changeBaud->{'parity'})
2631 0 0 unless ($changeBaud->{'parity'} eq "none")
2632 0 0 unless $self->{'PARENT'}->parity_enable(1)
2634 0 0 unless $self->{'PARENT'}->databits($changeBaud->{'databits'})
2635 0 0 unless $self->{'PARENT'}->stopbits($changeBaud->{'stopbits'})
2636 0 0 unless $self->{'PARENT'}->write_settings
2638 0 0 unless $self->{'PARENT'}->buffers($ComPortReadBuffer, 0)
2639 0 0 if ($^O eq "MSWin32")
2640 0 0 unless $self->{'PARENT'}->read_interval($ComReadInterval)
2643 0 0 unless defined $self->{'PARENT'}->read_char_time(0)
2656 0 0 if (shift() & $self->{'debug'})
2670 0 0 if (length $self->{'QUERYBUFFER'})
2674 0 0 if ($$bufRef =~ /(\e(?:\[.?)?)$/)
2677 0 0 if ($VT100_QueryDeviceStatus =~ /^\Q$escFrag\E/)
2682 0 0 unless $$bufRef =~ s/\Q$VT100_QueryDeviceStatus\E//go
2694 0 0 if (length $self->{'PUSHBACKCR'})
2700 0 0 if ($nextchar eq "\n") { }
0 0 elsif (not length $nextchar) { }
2718 0 0 $returnRef ? :
2728 0 0 if ($self->{'TYPE'} eq 'TELNET') { }
0 0 elsif ($self->{'TYPE'} eq 'SSH') { }
0 0 elsif ($self->{'TYPE'} eq 'SERIAL') { }
2730 0 0 if $self->eof
2731 0 0 unless defined $buffer
2734 0 0 unless defined $self->{'SSHCHANNEL'}
2736 0 0 unless (defined $buffer and length $buffer)
2737 0 0 if $self->eof
2739 0 0 unless ($self->{'PARENT'}->poll($timeout * 1000, \@poll) and $poll[0]{'revents'}{'in'})
2743 0 0 unless defined $inBytes
2747 0 0 if $self->{'SERIALEOF'}
2748 0 0 if ($^O eq 'MSWin32') { }
2752 0 0 $timeout == 0 ? :
0 0 unless ($self->{'PARENT'}->read_const_time($timeout == 0 ? 1 : $timeout * 1000))
2758 0 0 unless $inBytes
2762 0 0 unless ($self->{'PARENT'}->read_const_time($PollTimer))
2771 0 0 if ($ticks++ > $ticksTimeout)
2782 0 0 if ($self->{'report_query_status'})
2784 0 0 unless (length $buffer)
2786 0 0 if $timeout <= 0
2791 0 0 unless $self->{'binmode'}
2794 0 0 if defined $self->{'INPUTLOGFH'}
2795 0 0 if defined $self->{'DUMPLOGFH'}
2798 0 0 $returnRef ? :
2806 0 0 if ($self->{'TYPE'} eq 'TELNET') { }
0 0 elsif ($self->{'TYPE'} eq 'SSH') { }
0 0 elsif ($self->{'TYPE'} eq 'SERIAL') { }
2808 0 0 if $self->eof
2809 0 0 unless defined $buffer
2812 0 0 unless defined $self->{'SSHCHANNEL'}
2816 0 0 unless defined $buffer
2819 0 0 if $self->{'SERIALEOF'}
2823 0 0 unless ($self->{'PARENT'}->read_const_time(1))
2829 0 0 unless defined $buffer
2835 0 0 if (length $buffer)
2837 0 0 if $self->{'report_query_status'}
2840 0 0 unless $self->{'binmode'}
2843 0 0 if defined $self->{'INPUTLOGFH'}
2844 0 0 if defined $self->{'DUMPLOGFH'}
2848 0 0 if length $self->{'BUFFER'}
2851 0 0 $returnRef ? :
2859 0 0 if $self->eof
2862 0 0 if (defined $self->{'OUTPUTLOGFH'} or defined $self->{'DUMPLOGFH'})
2867 0 0 unless $self->{'binmode'}
2869 0 0 if ($self->{'TYPE'} eq 'TELNET') { }
0 0 elsif ($self->{'TYPE'} eq 'SSH') { }
0 0 elsif ($self->{'TYPE'} eq 'SERIAL') { }
2873 0 0 unless $self->{'PARENT'}->put("String", $$outref, "Telnetmode", $self->{'TELNETMODE'})
2876 0 0 unless defined $self->{'SSHCHANNEL'}
2881 0 0 if ($^O eq 'MSWin32') { }
2891 0 0 unless $done and $countOut
2892 0 0 if $countOut != length $$outref
2899 0 0 if (defined $outlog)
2900 0 0 if defined $self->{'OUTPUTLOGFH'}
2901 0 0 if defined $self->{'DUMPLOGFH'}
2912 0 0 if (ref $fh and ref $fh ne 'GLOB') { }
2930 0 0 if ($len >= 16) { }
2952 0 0 if $$dataRef
2960 0 0 if $msgFormat =~ /^\s*verbose\s*$/i
2962 0 0 if $msgFormat =~ /^\s*default\s*$/i or not $msgFormat =~ /^\s*terse\s*$/i
2973 0 0 if (defined $mode)
2974 0 0 if (ref $mode)
2978 0 0 if $mode eq "return"
2979 0 0 if $mode eq "croak"
2980 0 0 if $mode eq "die"
2991 0 0 unless ($self->{'POLLREPORTED'})
2992 0 0 if (defined $errmode)
2996 0 0 if ($timeCredit > 0 and defined $self->{'POLL'}{'endtime'})
3000 0 0 if defined $self->{'POLL'}{'endtime'}
3006 0 0 unless ($self->{'POLLREPORTED'})
3007 0 0 unless defined $ok
3009 0 0 if defined $errmode
3021 0 0 if defined &Net::Telnet::_log_option and $telobj->{'opt_log'}
3031 0 0 if defined $self->{'terminal_type'}
3032 0 0 if @{$self->{'window_size'};}
3035 0 0 if defined &Net::Telnet::_flush_opts and length $telobj->{'unsent_opts'}
3044 0 0 if ($option == &TELOPT_NAWS and @{$self->{'window_size'};})
3049 0 0 if (defined &Net::Telnet::_log_option and $telobj->{'opt_log'})
3065 0 0 if defined &Net::Telnet::_log_option and $telobj->{'opt_log'}
3068 0 0 if ($option == &TELOPT_TTYPE and defined $self->{'terminal_type'})
3071 0 0 if defined &Net::Telnet::_log_option and $telobj->{'opt_log'}
3075 0 0 if ($option == &TELOPT_NAWS and @{$self->{'window_size'};})
3078 0 0 if defined &Net::Telnet::_log_option and $telobj->{'opt_log'}