home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / perl_ste.zip / auto / Net / FTP / _list_cmd.al < prev    next >
Text File  |  1997-11-28  |  607b  |  37 lines

  1. # NOTE: Derived from ./blib/lib/Net/FTP.pm.  Changes made here will be lost.
  2. package Net::FTP;
  3.  
  4. sub _list_cmd
  5. {
  6.  my $ftp = shift;
  7.  my $cmd = uc shift;
  8.  
  9.  delete ${*$ftp}{'net_ftp_port'};
  10.  delete ${*$ftp}{'net_ftp_pasv'};
  11.  
  12.  my $data = $ftp->_data_cmd($cmd,@_);
  13.  
  14.  return undef
  15.     unless(defined $data);
  16.  
  17.  require Net::FTP::A;
  18.  bless $data, "Net::FTP::A"; # Force ASCII mode
  19.  
  20.  my $databuf = '';
  21.  my $buf = '';
  22.  
  23.  while($data->read($databuf,1024))
  24.   {
  25.    $buf .= $databuf;
  26.   }
  27.  
  28.  my $list = [ split(/\n/,$buf) ];
  29.  
  30.  $data->close();
  31.  
  32.  wantarray ? @{$list}
  33.            : $list;
  34. }
  35.  
  36. 1;
  37.