Net::FTP::dataconn(3p) | Perl Programmers Reference Guide | Net::FTP::dataconn(3p)

# 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 <mailto:gbarr@pobox.com>>.

Steve Hay <shay@cpan.org <mailto: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.

2024-05-14 | perl v5.40.1