# Net::FTP::dataconn - phpMan

## 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.13

## DATE
    23 Dec 2020

## HISTORY
    See the Changes file.

