#NAME
Net::FTP::dataconn - FTP Client data connection class
#SYNOPSIS
# Perform IO operations on an FTP client data connection object:
$num_bytes_read = $obj->read($buffer, $size);
$num_bytes_read = $obj->read($buffer, $size, $timeout);
$num_bytes_written = $obj->write($buffer, $size);
$num_bytes_written = $obj->write($buffer, $size, $timeout);
$num_bytes_read_so_far = $obj->bytes_read();
$obj->abort();
$closed_successfully = $obj->close();
#DESCRIPTION
Some of the methods defined in Net::FTP
return an object which will be derived from this class. The dataconn class itself is derived from the IO::Socket::INET
class, so any normal IO operations can be performed. However the following methods are defined in the dataconn class and IO should be performed using these.
read($buffer, $size[, $timeout])
-
Read
$size
bytes of data from the server and place it into$buffer
, also performing any <CRLF> translation necessary.$timeout
is optional, if not given, the timeout value from the command connection will be used.Returns the number of bytes read before any <CRLF> translation.
write($buffer, $size[, $timeout])
-
Write
$size
bytes of data from$buffer
to the server, also performing any <CRLF> translation necessary.$timeout
is optional, if not given, the timeout value from the command connection will be used.Returns the number of bytes written before any <CRLF> translation.
bytes_read()
-
Returns the number of bytes read so far.
abort()
-
Abort the current data transfer.
close()
-
Close the data connection and get a response from the FTP server. Returns true if the connection was closed successfully and the first digit of the response from the server was a '2'.
#EXPORTS
None.
#KNOWN BUGS
None.
#AUTHOR
Graham Barr <gbarr@pobox.com>.
Steve Hay <shay@cpan.org> is now maintaining libnet as of version 1.22_02.
#COPYRIGHT
Copyright (C) 1997-2010 Graham Barr. All rights reserved.
Copyright (C) 2013-2014, 2020 Steve Hay. All rights reserved.
#LICENCE
This module is free software; you can redistribute it and/or modify it under the same terms as Perl itself, i.e. under the terms of either the GNU General Public License or the Artistic License, as specified in the LICENCE file.
#VERSION
Version 3.15
#DATE
20 March 2023
#HISTORY
See the Changes file.