Net::TFTP(3) TFTP Client class

SYNOPSIS


use Net::TFTP;
$tftp = Net::TFTP->new("some.host.name", BlockSize => 1024);
$tftp->ascii;
$tftp->get("remotefile", "localfile");
$tftp->get("remotefile", \*STDOUT);
$fh = $tftp->get("remotefile");
$tftp->binary;
$tftp->put("localfile", "remotefile");
$tftp->put(\*STDOUT, "remotefile");
$fh = $tftp->put("remotefile");
$err = $tftp->error

DESCRIPTION

"Net::TFTP" is a class implementing a simple Trivial File Transfer Protocol client in Perl as described in RFC1350. "Net::TFTP" also supports the TFTP Option Extension (as described in RFC2347), with the following options

 RFC2348 Blocksize Option

CONSTRUCTOR

new ( [ HOST ] [, OPTIONS ])
Create a new Net::TFTP object where HOST is the default host to connect to and OPTIONS are the default transfer options. Valid options are

 Option     Description                                           Default
 ------     -----------                                           -------
 Timeout    Timeout in seconds before retry                          5
 Retries    Maximum number of retries                                5
 Port       Port to send data to                                    69
 Mode       Mode to transfer data in, "octet" or "netascii"     "netascii"
 BlockSize  Negotiate size of blocks to use in the transfer        512
 IpMode     Indicates whether to operate in IPv6 mode              "v4"

METHODS

get ( REMOTE_FILE [, LOCAL ] [, OPTIONS ])
Get REMOTE_FILE from the server. OPTIONS can be any that are accepted by "new" plus the following

  Host    Override default host

If the LOCAL option is missing the get will return a filehandle. This filehandle must be read ASAP as the server will otherwise timeout.

If the LOCAL option is given then it can be a file name or a reference. If it is a reference it is assumed to be a reference that is valid as a filehandle. "get" will return true if the transfer is successful and undef otherwise.

Valid filehandles are

  • A sub-class of IO::Handle
  • A tied filehandle
  • A GLOB reference (eg "\*STDOUT")
put ( [ LOCAL, ] REMOTE_FILE [, OPTIONS])
Put a file to the server as REMOTE_FILE. OPTIONS can be any that are accepted by "new" plus the following

  Host    Override default host

If the LOCAL option is missing the put will return a filehandle. This filehandle must be written to ASAP as the server will otherwise timeout.

If the LOCAL option is given then it can be a file name or a reference. If it is a reference it is assumed to be a valid filehandle as described above. "put" will return true if the transfer is successful and undef otherwise.

error
If there was an error then this method will return an error string.
host ( [ HOST ] )
timeout ( [ TIMEOUT ] )
port ( [ PORT ] )
mode ( [ MODE ] )
retries ( [ VALUE ] )
block_size ( [ VALUE ] )
debug ( [ VALUE ] )
Set or get the values for the various options. If an argument is passed then a new value is set for that option and the previous value returned. If no value is passed then the current value is returned.
ip_mode ( [ VALUE ] )
Set or get which verion of IP to use (``v4'' or ``v6'')
ascii
netascii
Set the transfer mode to "netascii"
binary
octet
Set the transfer mode to "octet"

AUTHOR

Graham Barr <[email protected]>

COPYRIGHT

Copyright (c) 1998,2007 Graham Barr. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.