line |
true |
false |
branch |
57
|
2 |
0 |
$ssl_class ? : |
|
2 |
0 |
($ssl_class ? $ssl_class->can_ipv6 : $inet6_class || '') eq 'IO::Socket::IP' ? : |
74
|
0 |
0 |
if (@_ % 2) { } |
87
|
0 |
0 |
if (exists $arg{'Firewall'} or "Net::Config"->requires_firewall($peer)) |
93
|
0 |
0 |
if (defined $fire) |
104
|
0 |
0 |
if (can_ssl()) { } |
|
0 |
0 |
elsif ($arg{'SSL'}) { } |
107
|
0 |
0 |
$pkg->can_client_sni ? : |
118
|
0 |
0 |
unless $tlsargs{'SSL_reuse_ctx'} = "IO::Socket::SSL::SSL_Context"->new(%tlsargs) |
133
|
0 |
0 |
defined $arg{'Timeout'} ? : |
|
0 |
0 |
$arg{'SSL'} ? : |
|
0 |
0 |
unless my $ftp = $pkg->SUPER::new("PeerAddr", $peer, "PeerPort", $arg{'Port'} || ($arg{'SSL'} ? 'ftps(990)' : 'ftp(21)'), "LocalAddr", $arg{'LocalAddr'}, $family_key, $arg{'Domain'} || $arg{'Family'}, "Proto", "tcp", "Timeout", defined $arg{'Timeout'} ? $arg{'Timeout'} : 120, %tlsargs, $arg{'SSL'} ? () : ("SSL_startHandshake", 0)) |
143
|
0 |
0 |
if defined $fire |
145
|
0 |
0 |
if defined $fire_type |
152
|
0 |
0 |
defined $fire ? : |
|
0 |
0 |
exists $ENV{'FTP_PASSIVE'} ? : |
|
0 |
0 |
int exists $arg{'Passive'} ? : |
154
|
0 |
0 |
if %tlsargs |
155
|
0 |
0 |
if ($arg{'SSL'}) |
160
|
0 |
0 |
exists $arg{'Hash'} ? : |
164
|
0 |
0 |
exists $arg{'Debug'} ? : |
166
|
0 |
0 |
unless ($ftp->response == 2) |
188
|
0 |
0 |
unless @_ |
197
|
0 |
0 |
unless ($h) |
201
|
0 |
0 |
ref $h ? : |
203
|
0 |
0 |
if $b < 512 |
266
|
0 |
0 |
$2 eq '19' ? : |
|
0 |
0 |
$ftp->_MDTM($file) && $ftp->message =~ /((\d\d)(\d\d\d?))(\d\d)(\d\d)(\d\d)(\d\d)(\d\d)/ ? : |
277
|
0 |
0 |
if ($ftp->supported('SIZE')) { } |
|
0 |
0 |
elsif ($ftp->supported('STAT')) { } |
278
|
0 |
0 |
$ftp->_SIZE($file) ? : |
285
|
0 |
0 |
unless $ftp->_STAT($file) and (@msg = $ftp->message) == 3 |
287
|
0 |
0 |
if $line =~ /^[-rwxSsTt]{10}/ |
293
|
0 |
0 |
if (@files) |
294
|
0 |
0 |
if $files[0] =~ /^([-rwxSsTt]{10}.*)$/ |
304
|
0 |
0 |
unless can_ssl() |
305
|
0 |
0 |
if $ftp->is_SSL |
306
|
0 |
0 |
unless $ftp->_AUTH("TLS") == 2 |
308
|
0 |
0 |
unless $ftp->connect_SSL |
315
|
0 |
0 |
unless $prot eq "C" or $prot eq "P" |
316
|
0 |
0 |
unless $ftp->_PBSZ(0) |
317
|
0 |
0 |
unless $ftp->_PROT($prot) |
324
|
0 |
0 |
unless $ftp->is_SSL |
325
|
0 |
0 |
if do {
*$ftp
}->{'net_ftp_tlsdirect'} |
326
|
0 |
0 |
unless $ftp->_CCC |
335
|
0 |
0 |
unless (defined $user) |
340
|
0 |
0 |
if $rc |
351
|
0 |
0 |
if ($fwtype and defined do {
*$ftp
}->{'net_ftp_firewall'}) |
352
|
0 |
0 |
if ($fwtype == 1 or $fwtype == 7) { } |
360
|
0 |
0 |
$rc ? : |
362
|
0 |
0 |
if ($fwtype == 5) { } |
367
|
0 |
0 |
if ($fwtype == 2) { } |
|
0 |
0 |
elsif ($fwtype == 6) { } |
376
|
0 |
0 |
unless $ok == 2 or $ok == 3 |
380
|
0 |
0 |
unless $ok == 2 or $ok == 3 |
382
|
0 |
0 |
if defined $fwacct |
385
|
0 |
0 |
if ($fwtype == 3) { } |
|
0 |
0 |
elsif ($fwtype == 4) { } |
392
|
0 |
0 |
unless $ok == 2 or $ok == 3 |
400
|
0 |
0 |
if $ok == 2 and $ftp->code == 220 and $user =~ /\@/ |
403
|
0 |
0 |
if ($ok == 3) |
404
|
0 |
0 |
unless (defined $pass) |
409
|
0 |
0 |
if $rc |
412
|
0 |
0 |
if not defined $pass and !defined($ruser) || $ruser =~ /^anonymous/o |
419
|
0 |
0 |
if defined $acct and $ok == 3 || $ok == 2 |
422
|
0 |
0 |
if ($fwtype == 7 and $ok == 2 and defined do {
*$ftp
}->{'net_ftp_firewall'}) |
424
|
0 |
0 |
if defined $resp |
432
|
0 |
0 |
unless @_ == 2 |
442
|
0 |
0 |
unless (defined $resp) |
450
|
0 |
0 |
if $rc |
458
|
0 |
0 |
unless @_ >= 1 or @_ <= 3 |
464
|
0 |
0 |
if $ok == 3 |
472
|
0 |
0 |
unless @_ == 3 |
476
|
0 |
0 |
if $ftp->_RNFR($oldname) |
486
|
0 |
0 |
unless defined $type |
490
|
0 |
0 |
unless $ftp->_TYPE($type, @_) |
503
|
0 |
0 |
unless defined $size |
507
|
0 |
0 |
unless $ftp->supported("ALLO") and $ftp->_ALLO($size, @_) |
523
|
0 |
0 |
if defined do {
*$ftp
}->{'net_ftp_dataconn'} |
539
|
0 |
0 |
unless defined $local |
542
|
0 |
0 |
if $remote =~ /[\r\n]/s |
545
|
0 |
0 |
if defined $where |
551
|
0 |
0 |
unless $data = $ftp->retr($remote) |
554
|
0 |
0 |
if ($localfd) { } |
560
|
0 |
0 |
$rest ? : |
|
0 |
0 |
unless (sysopen $loc, $local, 65 | ($rest ? 1024 : 512)) |
567
|
0 |
0 |
if ($ftp->type eq "I" and not binmode($loc)) |
570
|
0 |
0 |
unless $localfd |
578
|
0 |
0 |
if $ref = do {
*$ftp
}->{'net_ftp_hash'} |
584
|
0 |
0 |
unless $len = $data->read($buf, $blksize) |
591
|
0 |
0 |
if ($hashh) |
596
|
0 |
0 |
unless (print $loc $buf) |
599
|
0 |
0 |
unless $localfd |
605
|
0 |
0 |
if $hashh |
607
|
0 |
0 |
unless ($localfd) |
608
|
0 |
0 |
unless (close $loc) |
614
|
0 |
0 |
unless ($data->close) |
625
|
0 |
0 |
unless @_ == 1 or @_ == 2 |
629
|
0 |
0 |
unless defined $dir and $dir =~ /\S/ |
631
|
0 |
0 |
$dir eq '..' ? : |
638
|
0 |
0 |
unless @_ == 1 |
644
|
0 |
0 |
unless @_ == 1 |
662
|
0 |
0 |
unless @_ == 2 or @_ == 3 |
668
|
0 |
0 |
if $ok = $ftp->_RMD($dir) or not $recurse |
674
|
0 |
0 |
/^(?:\S+;)+ (.+)$/ ? : |
677
|
0 |
0 |
unless @filelist |
681
|
0 |
0 |
unless @filelist |
683
|
0 |
0 |
if @filelist == 1 and $dir eq $filelist[0] |
687
|
0 |
0 |
m[/] ? : |
689
|
0 |
0 |
if $ftp->delete($file) |
694
|
0 |
0 |
unless $ok = $ftp->rmdir($file, 1) |
708
|
0 |
0 |
unless @_ == 2 |
719
|
0 |
0 |
unless @_ == 2 or @_ == 3 |
723
|
0 |
0 |
unless $ftp->_MKD($dir) or $recurse |
728
|
0 |
0 |
unless ($ftp->ok) |
744
|
0 |
0 |
unless ($ftp->ok) |
748
|
0 |
0 |
if ($pwd and $ftp->cwd($dir)) { } |
764
|
0 |
0 |
unless @_ == 2 |
790
|
0 |
0 |
if (not defined $remote and "STOU" ne uc $cmd) |
791
|
0 |
0 |
if $localfd |
797
|
0 |
0 |
if (defined do {
*$ftp
}->{'net_ftp_allo'}) { } |
806
|
0 |
0 |
if -f $local |
807
|
0 |
0 |
if $size |
809
|
0 |
0 |
if defined $remote and $remote =~ /[\r\n]/s |
812
|
0 |
0 |
if ($localfd) { } |
818
|
0 |
0 |
unless (sysopen $loc, $local, 0) |
824
|
0 |
0 |
if ($ftp->type eq "I" and not binmode($loc)) |
832
|
0 |
0 |
unless $sock = $ftp->_data_cmd($cmd, grep({defined $_;} $remote)) |
835
|
0 |
0 |
if "STOU" eq uc $cmd |
843
|
0 |
0 |
if $ref = do {
*$ftp
}->{'net_ftp_hash'} |
846
|
0 |
0 |
unless $len = read($loc, $buf = "", $blksize) |
853
|
0 |
0 |
if ($hashh) |
860
|
0 |
0 |
unless (defined($wlen = $sock->write($buf, $len)) and $wlen == $len) |
862
|
0 |
0 |
unless $localfd |
864
|
0 |
0 |
if $hashh |
869
|
0 |
0 |
if $hashh |
871
|
0 |
0 |
unless $localfd |
874
|
0 |
0 |
unless $sock->close |
877
|
0 |
0 |
if ("STOU" eq uc $cmd and $ftp->message =~ /unique\s+file\s*name\s*:\s*(.*)\)|"(.*)"/) |
887
|
0 |
0 |
unless @_ == 1 or @_ == 2 |
892
|
0 |
0 |
unless @_ == 1 or @_ == 2 |
899
|
0 |
0 |
$port ? : |
906
|
0 |
0 |
can_ssl() ? : |
911
|
0 |
0 |
$listen->sockdomain == 2 ? : |
912
|
0 |
0 |
if ($cmd eq 'EPRT' or $fam == 2) { } |
922
|
0 |
0 |
$cmd eq 'EPRT' ? : |
923
|
0 |
0 |
if $ok |
934
|
0 |
0 |
if @_ |
935
|
0 |
0 |
if $ftp->sockdomain != 2 |
938
|
0 |
0 |
if ($ftp->_PASV and $ftp->message =~ /(\d+,\d+,\d+,\d+),(\d+),(\d+)/) |
949
|
0 |
0 |
if @_ |
953
|
0 |
0 |
$ftp->_EPSV && $ftp->message =~ /\(([\x33-\x7e])\1\1(\d+)\1\)/ ? : |
960
|
0 |
0 |
unless do {
*$ftp
}->{'net_ftp_unique'} |
965
|
0 |
0 |
unless @_ == 2 |
971
|
0 |
0 |
if exists $hash->{$cmd} |
973
|
0 |
0 |
if $ftp->feature($cmd) |
976
|
0 |
0 |
unless $ftp->_HELP($cmd) |
980
|
0 |
0 |
if ($text =~ /following.+commands/i) { } |
999
|
0 |
0 |
if $^W |
1006
|
0 |
0 |
if $^W |
1024
|
0 |
0 |
if $ftp->ok and $ftp->message =~ /(?:^|\s)\"(.*)\"(?:$|\s)/ |
1039
|
0 |
0 |
unless eval "require " . $pkg |
1046
|
0 |
0 |
if ($pasv) { } |
|
0 |
0 |
elsif (my $listen = delete do {
*$ftp
}->{'net_ftp_listen'}) { } |
1055
|
0 |
0 |
can_ssl() ? : |
|
0 |
0 |
unless $conn = $pkg->new("PeerAddr", $pasv->[0], "PeerPort", $pasv->[1], "LocalAddr", do {
*$ftp
}->{'net_ftp_localaddr'}, $family_key, do {
*$ftp
}->{'net_ftp_domain'}, "Timeout", $ftp->timeout, can_ssl() ? ("SSL_startHandshake", 0, %{${*$ftp;}{"net_ftp_tlsargs"};}) : ()) |
1059
|
0 |
0 |
unless $conn = $listen->accept($pkg) |
1066
|
0 |
0 |
if ((do {
*$ftp
}->{'net_ftp_tlsprot'} || '') eq "P") |
1067
|
0 |
0 |
if ($conn->connect_SSL) { } |
1093
|
0 |
0 |
unless defined $data |
1115
|
0 |
0 |
wantarray ? : |
1128
|
0 |
0 |
if $arg =~ /[\r\n]/s |
1132
|
0 |
0 |
if (do {
*$ftp
}->{'net_ftp_passive'} and not defined do {
*$ftp
}->{'net_ftp_pasv'} and not defined do {
*$ftp
}->{'net_ftp_port'}) |
1136
|
0 |
0 |
unless defined $ftp->pasv |
1138
|
0 |
0 |
if ($where and not $ftp->_REST($where)) |
1150
|
0 |
0 |
if (1 == $ftp->response) |
1151
|
0 |
0 |
if $data and $cmd =~ /RETR|LIST|NLST|MLSD/ |
1155
|
0 |
0 |
if $data |
1162
|
0 |
0 |
unless defined do {
*$ftp
}->{'net_ftp_port'} or defined do {
*$ftp
}->{'net_ftp_pasv'} |
1164
|
0 |
0 |
if $ok and $where |
1168
|
0 |
0 |
unless $ok |
1170
|
0 |
0 |
if ($cmd =~ /(STOR|APPE|STOU)/ and exists do {
*$ftp
}->{'net_ftp_allo'} and $ftp->supported("ALLO")) |
1174
|
0 |
0 |
unless $ftp->_ALLO(delete do {
*$ftp
}->{'net_ftp_allo'}) |
1180
|
0 |
0 |
if defined do {
*$ftp
}->{'net_ftp_pasv'} |
1185
|
0 |
0 |
unless exists do {
*$ftp
}->{'net_ftp_intern_port'} |
1187
|
0 |
0 |
if ($ok) |
1190
|
0 |
0 |
if $data and $cmd =~ /RETR|LIST|NLST|MLSD/ |
1207
|
0 |
0 |
$_[2] =~ /^(pass|resp|acct)/i ? : |
1222
|
0 |
0 |
if $code != 3 and $code != 1 |
1230
|
0 |
0 |
if $_[1] =~ s/^(\d\d\d)([- ]?)//o |
1238
|
0 |
0 |
unless 0 + (do {
*$ftp
}->{'net_cmd_code'} || 0) |
1257
|
0 |
0 |
unless defined $dfile |
1260
|
0 |
0 |
unless my $port = $sftp->pasv |
1263
|
0 |
0 |
unless $dftp->port($port) |
1267
|
0 |
0 |
$unique ? : |
|
0 |
0 |
unless $unique ? $dftp->stou($dfile) : $dftp->stor($dfile) |
1269
|
0 |
0 |
unless ($sftp->retr($sfile) and $sftp->response == 1) |
1281
|
0 |
0 |
unless @_ == 2 |
1293
|
0 |
0 |
unless $dres == 2 and $sres == 2 |
1296
|
0 |
0 |
unless $ftp->ok and $non_pasv_server->ok |
1298
|
0 |
0 |
if $ftp->message =~ /unique file name:\s*(\S*)\s*\)/ |
1301
|
0 |
0 |
if $non_pasv_server->message =~ /unique file name:\s*(\S*)\s*\)/ |
1309
|
0 |
0 |
unless @_ == 2 |
1322
|
0 |
0 |
if $ftp->_FEAT |
1383
|
0 |
0 |
unless $ok == 3 or $ok == 2 |