summaryrefslogtreecommitdiff
path: root/net/tnftp
diff options
context:
space:
mode:
authorlukem <lukem@pkgsrc.org>2003-07-31 07:27:52 +0000
committerlukem <lukem@pkgsrc.org>2003-07-31 07:27:52 +0000
commit1a6275ff51aa3471f00bf00c0ab36ac395f26492 (patch)
tree3328400d901c0edd4c6a2f7ebfc35887d08881ba /net/tnftp
parentfcdd12c888a56109590d6ea6298b78e16e9afdd9 (diff)
downloadpkgsrc-1a6275ff51aa3471f00bf00c0ab36ac395f26492.tar.gz
Import of canonical tnftp 20030825 sources,
to make it easier to track new versions.
Diffstat (limited to 'net/tnftp')
-rw-r--r--net/tnftp/files/THANKS45
-rw-r--r--net/tnftp/files/src/ftp.cat11128
2 files changed, 1173 insertions, 0 deletions
diff --git a/net/tnftp/files/THANKS b/net/tnftp/files/THANKS
new file mode 100644
index 00000000000..677d9513187
--- /dev/null
+++ b/net/tnftp/files/THANKS
@@ -0,0 +1,45 @@
+Whilst a lot of the work in tnftp (both the original sources in NetBSD
+and this port) was done by Luke Mewburn, it would not be as usable
+without the enhancements, fixes, or input from the following people:
+
+Amitai Schlair <schmonz@schmonz.com>
+Anders Dinsen <anders@dinsen.net>
+Arkadiusz Miskiewicz <misiek@pld.org.pl>
+Brian Stark <bstark1990@netscape.net>
+Chris G. Demetriou <cgd@NetBSD.org>
+Christos Zoulas <christos@NetBSD.org>
+Dan Winship <danw@mit.edu>
+Darren Reed <darrenr@pobox.com>
+David Brownlee <abs@mono.org>
+David Carrel <carrel@NetBSD.org>
+DervishD <raul@pleyades.net>
+Douwe Kiela <virtus@wanadoo.nl>
+Geoff Wing <mason@primenet.com.au>
+Giles Lean <giles@nemeton.com.au>
+Havard Eidnes <Havard.Eidnes@runit.sintef.no>
+Hubert Feyrer <hubert@feyrer.de>
+ITOH Yasufumi <itohy@NetBSD.org>
+Jason R. Thorpe <thorpej@NetBSD.org>
+John Hawkinson <jhawk@mit.edu>
+Joseph S. Myers <jsm28@cam.ac.uk>
+Jun-ichiro itojun Hagino <itojun@NetBSD.org>
+Kimmo Suominen <kim@tac.nyc.ny.us>
+Klaus Klein <kleink@NetBSD.org>
+Launey Thomas <ljt@alum.mit.edu>
+Luke Mewburn <lukem@NetBSD.org>
+Marc Horowitz <marc@mit.edu>
+Matthew R. Green <mrg@eterna.com.au>
+Matthias Pfaller <leo@dachau.marco.de>
+Matthias Scheler <tron@zhadum.de>
+Maxim Konovalov <maxim@freebsd.org>
+Michael L. Hitch <osymh@terra.oscs.montana.edu>
+Mike Heffner <mikeh@freebsd.org>
+Ruslan Ermilov <ru@FreeBSD.org>
+Scott Aaron Bamford <sab@ansic.net>
+Simon Burge <simonb@thistledown.com.au>
+Steve McClellan <steve.mcclellan@radisys.com>
+Todd C. Miller <Todd.Miller@courtesan.com>
+YAMANO Yuji <yyamano@NetBSD.org>
+Yar Tikhiy <yar@freebsd.org>
+
+Apologies to anyone missed.
diff --git a/net/tnftp/files/src/ftp.cat1 b/net/tnftp/files/src/ftp.cat1
new file mode 100644
index 00000000000..c63bf421608
--- /dev/null
+++ b/net/tnftp/files/src/ftp.cat1
@@ -0,0 +1,1128 @@
+FTP(1) NetBSD General Commands Manual FTP(1)
+
+NNAAMMEE
+ ffttpp - Internet file transfer program
+
+SSYYNNOOPPSSIISS
+ ffttpp [--4466AAaaddeeffggiinnppRRttvvVV] [--NN _n_e_t_r_c] [--oo _o_u_t_p_u_t] [--PP _p_o_r_t] [--qq _q_u_i_t_t_i_m_e]
+ [--rr _r_e_t_r_y] [--TT _d_i_r,_m_a_x[,_i_n_c]] [[_u_s_e_r@]_h_o_s_t [_p_o_r_t]]
+ [[_u_s_e_r@]_h_o_s_t:[_p_a_t_h][/]] [file:///_p_a_t_h]
+ [ftp://[_u_s_e_r[:_p_a_s_s_w_o_r_d]@]_h_o_s_t[:_p_o_r_t]/_p_a_t_h[/][;type=_X]]
+ [http://[_u_s_e_r[:_p_a_s_s_w_o_r_d]@]_h_o_s_t[:_p_o_r_t]/_p_a_t_h] [_._._.]
+ ffttpp --uu _U_R_L _f_i_l_e [_._._.]
+
+DDEESSCCRRIIPPTTIIOONN
+ ffttpp is the user interface to the Internet standard File Transfer Proto-
+ col. The program allows a user to transfer files to and from a remote
+ network site.
+
+ The last five arguments will fetch a file using the FTP or HTTP proto-
+ cols, or by direct copying, into the current directory. This is ideal
+ for scripts. Refer to _A_U_T_O_-_F_E_T_C_H_I_N_G _F_I_L_E_S below for more information.
+
+ Options may be specified at the command line, or to the command inter-
+ preter.
+
+ --44 Forces ffttpp to only use IPv4 addresses.
+
+ --66 Forces ffttpp to only use IPv6 addresses.
+
+ --AA Force active mode ftp. By default, ffttpp will try to use passive
+ mode ftp and fall back to active mode if passive is not support-
+ ed by the server. This option causes ffttpp to always use an ac-
+ tive connection. It is only useful for connecting to very old
+ servers that do not implement passive mode properly.
+
+ --aa Causes ffttpp to bypass normal login procedure, and use an anony-
+ mous login instead.
+
+ --dd Enables debugging.
+
+ --ee Disables command line editing. This is useful for Emacs ange-
+ ftp mode.
+
+ --ff Forces a cache reload for transfers that go through the FTP or
+ HTTP proxies.
+
+ --gg Disables file name globbing.
+
+ --ii Turns off interactive prompting during multiple file transfers.
+
+ --nn Restrains ffttpp from attempting ``auto-login'' upon initial con-
+ nection. If auto-login is enabled, ffttpp will check the _._n_e_t_r_c
+ (see below) file in the user's home directory for an entry de-
+ scribing an account on the remote machine. If no entry exists,
+ ffttpp will prompt for the remote machine login name (default is
+ the user identity on the local machine), and, if necessary,
+ prompt for a password and an account with which to login.
+
+ --NN _n_e_t_r_c
+ Use _n_e_t_r_c instead of _~_/_._n_e_t_r_c. Refer to _T_H_E _._n_e_t_r_c _F_I_L_E for
+ more information.
+
+ --oo _o_u_t_p_u_t
+ When auto-fetching files, save the contents in _o_u_t_p_u_t. _o_u_t_p_u_t
+ is parsed according to the _F_I_L_E _N_A_M_I_N_G _C_O_N_V_E_N_T_I_O_N_S below. If
+ _o_u_t_p_u_t is not `-' or doesn't start with `|', then only the first
+ file specified will be retrieved into _o_u_t_p_u_t; all other files
+ will be retrieved into the basename of their remote name.
+
+ --pp Enable passive mode operation for use behind connection filter-
+ ing firewalls. This option has been deprecated as ffttpp now tries
+ to use passive mode by default, falling back to active mode if
+ the server does not support passive connections.
+
+ --PP _p_o_r_t Sets the port number to _p_o_r_t.
+
+ --rr _w_a_i_t Retry the connection attempt if it failed, pausing for _w_a_i_t sec-
+ onds.
+
+ --qq _q_u_i_t_t_i_m_e
+ Quit if the connection has stalled for _q_u_i_t_t_i_m_e seconds.
+
+ --RR Restart all non-proxied auto-fetches.
+
+ --tt Enables packet tracing.
+
+ --TT _d_i_r_e_c_t_i_o_n,_m_a_x_i_m_u_m[,_i_n_c_r_e_m_e_n_t]
+ Set the maximum transfer rate for _d_i_r_e_c_t_i_o_n to _m_a_x_i_m_u_m
+ bytes/second, and if specified, the increment to _i_n_c_r_e_m_e_n_t
+ bytes/second. Refer to rraattee for more information.
+
+ --uu _U_R_L _f_i_l_e [...]
+ Upload files on the command line to _U_R_L where _U_R_L is one of the
+ ftp URL types as supported by auto-fetch (with an optional tar-
+ get filename for single file uploads), and _f_i_l_e is one or more
+ local files to be uploaded.
+
+ --vv Enable vveerrbboossee and pprrooggrreessss. This is the default if output is
+ to a terminal (and in the case of pprrooggrreessss, ffttpp is the fore-
+ ground process). Forces ffttpp to show all responses from the re-
+ mote server, as well as report on data transfer statistics.
+
+ --VV Disable vveerrbboossee and pprrooggrreessss, overriding the default of enabled
+ when output is to a terminal.
+
+ The client host with which ffttpp is to communicate may be specified on the
+ command line. If this is done, ffttpp will immediately attempt to establish
+ a connection to an FTP server on that host; otherwise, ffttpp will enter its
+ command interpreter and await instructions from the user. When ffttpp is
+ awaiting commands from the user the prompt `ftp>' is provided to the us-
+ er. The following commands are recognized by ffttpp:
+
+ !! [_c_o_m_m_a_n_d [_a_r_g_s]]
+ Invoke an interactive shell on the local machine. If there
+ are arguments, the first is taken to be a command to execute
+ directly, with the rest of the arguments as its arguments.
+
+ $$ _m_a_c_r_o_-_n_a_m_e [_a_r_g_s]
+ Execute the macro _m_a_c_r_o_-_n_a_m_e that was defined with the mmaaccddeeff
+ command. Arguments are passed to the macro unglobbed.
+
+ aaccccoouunntt [_p_a_s_s_w_d]
+ Supply a supplemental password required by a remote system
+ for access to resources once a login has been successfully
+ completed. If no argument is included, the user will be
+ prompted for an account password in a non-echoing input mode.
+
+ aappppeenndd _l_o_c_a_l_-_f_i_l_e [_r_e_m_o_t_e_-_f_i_l_e]
+ Append a local file to a file on the remote machine. If
+ _r_e_m_o_t_e_-_f_i_l_e is left unspecified, the local file name is used
+ in naming the remote file after being altered by any nnttrraannss
+ or nnmmaapp setting. File transfer uses the current settings for
+ ttyyppee, ffoorrmmaatt, mmooddee, and ssttrruuccttuurree.
+
+ aasscciiii Set the file transfer ttyyppee to network ASCII. This is the de-
+ fault type.
+
+ bbeellll Arrange that a bell be sounded after each file transfer com-
+ mand is completed.
+
+ bbiinnaarryy Set the file transfer ttyyppee to support binary image transfer.
+
+ bbyyee Terminate the FTP session with the remote server and exit
+ ffttpp. An end of file will also terminate the session and ex-
+ it.
+
+ ccaassee Toggle remote computer file name case mapping during ggeett,
+ mmggeett and mmppuutt commands. When ccaassee is on (default is off),
+ remote computer file names with all letters in upper case are
+ written in the local directory with the letters mapped to
+ lower case.
+
+ ccdd _r_e_m_o_t_e_-_d_i_r_e_c_t_o_r_y
+ Change the working directory on the remote machine to
+ _r_e_m_o_t_e_-_d_i_r_e_c_t_o_r_y.
+
+ ccdduupp Change the remote machine working directory to the parent of
+ the current remote machine working directory.
+
+ cchhmmoodd _m_o_d_e _r_e_m_o_t_e_-_f_i_l_e
+ Change the permission modes of the file _r_e_m_o_t_e_-_f_i_l_e on the
+ remote system to _m_o_d_e.
+
+ cclloossee Terminate the FTP session with the remote server, and return
+ to the command interpreter. Any defined macros are erased.
+
+ ccrr Toggle carriage return stripping during ascii type file re-
+ trieval. Records are denoted by a carriage return/linefeed
+ sequence during ascii type file transfer. When ccrr is on (the
+ default), carriage returns are stripped from this sequence to
+ conform with the UNIX single linefeed record delimiter.
+ Records on non-UNIX remote systems may contain single line-
+ feeds; when an ascii type transfer is made, these linefeeds
+ may be distinguished from a record delimiter only when ccrr is
+ off.
+
+ ddeebbuugg [_d_e_b_u_g_-_v_a_l_u_e]
+ Toggle debugging mode. If an optional _d_e_b_u_g_-_v_a_l_u_e is speci-
+ fied it is used to set the debugging level. When debugging
+ is on, ffttpp prints each command sent to the remote machine,
+ preceded by the string `-->'
+
+ ddeelleettee _r_e_m_o_t_e_-_f_i_l_e
+ Delete the file _r_e_m_o_t_e_-_f_i_l_e on the remote machine.
+
+ ddiirr [_r_e_m_o_t_e_-_p_a_t_h [_l_o_c_a_l_-_f_i_l_e]]
+ Print a listing of the contents of a directory on the remote
+ machine. The listing includes any system-dependent informa-
+ tion that the server chooses to include; for example, most
+ UNIX systems will produce output from the command `ls -l'.
+ If _r_e_m_o_t_e_-_p_a_t_h is left unspecified, the current working di-
+ rectory is used. If interactive prompting is on, ffttpp will
+ prompt the user to verify that the last argument is indeed
+ the target local file for receiving ddiirr output. If no local
+ file is specified, or if _l_o_c_a_l_-_f_i_l_e is `--', the output is
+ sent to the terminal.
+
+ ddiissccoonnnneecctt A synonym for cclloossee.
+
+ eeddiitt Toggle command line editing, and context sensitive command
+ and file completion. This is automatically enabled if input
+ is from a terminal, and disabled otherwise.
+
+ eeppssvv44 Toggle the use of the extended EPSV and EPRT commands on IPv4
+ connections; first try EPSV / EPRT, and then PASV / PORT.
+ This is enabled by default. If an extended command fails
+ then this option will be temporarily disabled for the dura-
+ tion of the current connection, or until eeppssvv44 is executed
+ again.
+
+ eexxiitt A synonym for bbyyee.
+
+ ffeeaattuurreess Display what features the remote server supports (using the
+ FEAT command).
+
+ ffggeett _l_o_c_a_l_f_i_l_e
+ Retrieve the files listed in _l_o_c_a_l_f_i_l_e, which has one line
+ per filename.
+
+ ffoorrmm _f_o_r_m_a_t
+ Set the file transfer ffoorrmm to _f_o_r_m_a_t. The default (and only
+ supported) format is ``non-print''.
+
+ ffttpp _h_o_s_t [_p_o_r_t]
+ A synonym for ooppeenn.
+
+ ggaattee [_h_o_s_t [_p_o_r_t]]
+ Toggle gate-ftp mode, which used to connect through the TIS
+ FWTK and Gauntlet ftp proxies. This will not be permitted if
+ the gate-ftp server hasn't been set (either explicitly by the
+ user, or from the FTPSERVER environment variable). If _h_o_s_t
+ is given, then gate-ftp mode will be enabled, and the gate-
+ ftp server will be set to _h_o_s_t. If _p_o_r_t is also given, that
+ will be used as the port to connect to on the gate-ftp serv-
+ er.
+
+ ggeett _r_e_m_o_t_e_-_f_i_l_e [_l_o_c_a_l_-_f_i_l_e]
+ Retrieve the _r_e_m_o_t_e_-_f_i_l_e and store it on the local machine.
+ If the local file name is not specified, it is given the same
+ name it has on the remote machine, subject to alteration by
+ the current ccaassee, nnttrraannss, and nnmmaapp settings. The current
+ settings for ttyyppee, ffoorrmm, mmooddee, and ssttrruuccttuurree are used while
+ transferring the file.
+
+ gglloobb Toggle filename expansion for mmddeelleettee, mmggeett, mmppuutt, and
+ mmrreeggeett. If globbing is turned off with gglloobb, the file name
+ arguments are taken literally and not expanded. Globbing for
+ mmppuutt is done as in csh(1). For mmddeelleettee, mmggeett, and mmrreeggeett,
+ each remote file name is expanded separately on the remote
+ machine and the lists are not merged. Expansion of a direc-
+ tory name is likely to be different from expansion of the
+ name of an ordinary file: the exact result depends on the
+ foreign operating system and ftp server, and can be previewed
+ by doing `mls remote-files -' Note: mmggeett, mmppuutt and mmrreeggeett are
+ not meant to transfer entire directory subtrees of files.
+ That can be done by transferring a tar(1) archive of the sub-
+ tree (in binary mode).
+
+ hhaasshh [_s_i_z_e]
+ Toggle hash-sign (``#'') printing for each data block trans-
+ ferred. The size of a data block defaults to 1024 bytes.
+ This can be changed by specifying _s_i_z_e in bytes. Enabling
+ hhaasshh disables pprrooggrreessss.
+
+ hheellpp [_c_o_m_m_a_n_d]
+ Print an informative message about the meaning of _c_o_m_m_a_n_d.
+ If no argument is given, ffttpp prints a list of the known com-
+ mands.
+
+ iiddllee [_s_e_c_o_n_d_s]
+ Set the inactivity timer on the remote server to _s_e_c_o_n_d_s sec-
+ onds. If _s_e_c_o_n_d_s is omitted, the current inactivity timer is
+ printed.
+
+ iimmaaggee A synonym for bbiinnaarryy.
+
+ llccdd [_d_i_r_e_c_t_o_r_y]
+ Change the working directory on the local machine. If no
+ _d_i_r_e_c_t_o_r_y is specified, the user's home directory is used.
+
+ lleessss _f_i_l_e A synonym for ppaaggee.
+
+ llppaaggee _l_o_c_a_l_-_f_i_l_e
+ Display _l_o_c_a_l_-_f_i_l_e with the program specified by the sseett
+ ppaaggeerr option.
+
+ llppwwdd Print the working directory on the local machine.
+
+ llss [_r_e_m_o_t_e_-_p_a_t_h [_l_o_c_a_l_-_f_i_l_e]]
+ A synonym for ddiirr.
+
+ mmaaccddeeff _m_a_c_r_o_-_n_a_m_e
+ Define a macro. Subsequent lines are stored as the macro
+ _m_a_c_r_o_-_n_a_m_e; a null line (consecutive newline characters in a
+ file or carriage returns from the terminal) terminates macro
+ input mode. There is a limit of 16 macros and 4096 total
+ characters in all defined macros. Macros remain defined un-
+ til a cclloossee command is executed. The macro processor inter-
+ prets `$' and `\' as special characters. A `$' followed by a
+ number (or numbers) is replaced by the corresponding argument
+ on the macro invocation command line. A `$' followed by an
+ `i' signals that macro processor that the executing macro is
+ to be looped. On the first pass `$i' is replaced by the
+ first argument on the macro invocation command line, on the
+ second pass it is replaced by the second argument, and so on.
+ A `\' followed by any character is replaced by that charac-
+ ter. Use the `\' to prevent special treatment of the `$'.
+
+ mmddeelleettee [_r_e_m_o_t_e_-_f_i_l_e_s]
+ Delete the _r_e_m_o_t_e_-_f_i_l_e_s on the remote machine.
+
+ mmddiirr _r_e_m_o_t_e_-_f_i_l_e_s _l_o_c_a_l_-_f_i_l_e
+ Like ddiirr, except multiple remote files may be specified. If
+ interactive prompting is on, ffttpp will prompt the user to ver-
+ ify that the last argument is indeed the target local file
+ for receiving mmddiirr output.
+
+ mmggeett _r_e_m_o_t_e_-_f_i_l_e_s
+ Expand the _r_e_m_o_t_e_-_f_i_l_e_s on the remote machine and do a ggeett
+ for each file name thus produced. See gglloobb for details on
+ the filename expansion. Resulting file names will then be
+ processed according to ccaassee, nnttrraannss, and nnmmaapp settings.
+ Files are transferred into the local working directory, which
+ can be changed with `lcd directory'; new local directories
+ can be created with `! mkdir directory'.
+
+ mmkkddiirr _d_i_r_e_c_t_o_r_y_-_n_a_m_e
+ Make a directory on the remote machine.
+
+ mmllss _r_e_m_o_t_e_-_f_i_l_e_s _l_o_c_a_l_-_f_i_l_e
+ Like llss, except multiple remote files may be specified, and
+ the _l_o_c_a_l_-_f_i_l_e must be specified. If interactive prompting
+ is on, ffttpp will prompt the user to verify that the last argu-
+ ment is indeed the target local file for receiving mmllss out-
+ put.
+
+ mmllssdd [_r_e_m_o_t_e_-_p_a_t_h]
+ Display the contents of _r_e_m_o_t_e_-_p_a_t_h (which should default to
+ the current directory if not given) in a machine-parsable
+ form, using MLSD. The format of display can be changed with
+ `remopts mlst ...'.
+
+ mmllsstt [_r_e_m_o_t_e_-_p_a_t_h]
+ Display the details about _r_e_m_o_t_e_-_p_a_t_h (which should default
+ to the current directory if not given) in a machine-parsable
+ form, using MLST. The format of display can be changed with
+ `remopts mlst ...'.
+
+ mmooddee _m_o_d_e_-_n_a_m_e
+ Set the file transfer mmooddee to _m_o_d_e_-_n_a_m_e. The default (and
+ only supported) mode is ``stream''.
+
+ mmooddttiimmee _r_e_m_o_t_e_-_f_i_l_e
+ Show the last modification time of the file on the remote ma-
+ chine.
+
+ mmoorree _f_i_l_e A synonym for ppaaggee.
+
+ mmppuutt _l_o_c_a_l_-_f_i_l_e_s
+ Expand wild cards in the list of local files given as argu-
+ ments and do a ppuutt for each file in the resulting list. See
+ gglloobb for details of filename expansion. Resulting file names
+ will then be processed according to nnttrraannss and nnmmaapp settings.
+
+ mmrreeggeett _r_e_m_o_t_e_-_f_i_l_e_s
+ As per mmggeett, but performs a rreeggeett instead of ggeett.
+
+ mmsseenndd _l_o_c_a_l_-_f_i_l_e_s
+ A synonym for mmppuutt.
+
+ nneewweerr _r_e_m_o_t_e_-_f_i_l_e [_l_o_c_a_l_-_f_i_l_e]
+ Get the file only if the modification time of the remote file
+ is more recent that the file on the current system. If the
+ file does not exist on the current system, the remote file is
+ considered nneewweerr. Otherwise, this command is identical to
+ _g_e_t.
+
+ nnlliisstt [_r_e_m_o_t_e_-_p_a_t_h [_l_o_c_a_l_-_f_i_l_e]]
+ A synonym for llss.
+
+ nnmmaapp [_i_n_p_a_t_t_e_r_n _o_u_t_p_a_t_t_e_r_n]
+ Set or unset the filename mapping mechanism. If no arguments
+ are specified, the filename mapping mechanism is unset. If
+ arguments are specified, remote filenames are mapped during
+ mmppuutt commands and ppuutt commands issued without a specified re-
+ mote target filename. If arguments are specified, local
+ filenames are mapped during mmggeett commands and ggeett commands
+ issued without a specified local target filename. This com-
+ mand is useful when connecting to a non-UNIX remote computer
+ with different file naming conventions or practices. The
+ mapping follows the pattern set by _i_n_p_a_t_t_e_r_n and _o_u_t_p_a_t_t_e_r_n.
+ [_I_n_p_a_t_t_e_r_n] is a template for incoming filenames (which may
+ have already been processed according to the nnttrraannss and ccaassee
+ settings). Variable templating is accomplished by including
+ the sequences `$1', `$2', ..., `$9' in _i_n_p_a_t_t_e_r_n. Use `\' to
+ prevent this special treatment of the `$' character. All
+ other characters are treated literally, and are used to de-
+ termine the nnmmaapp [_i_n_p_a_t_t_e_r_n] variable values. For example,
+ given _i_n_p_a_t_t_e_r_n $1.$2 and the remote file name "mydata.data",
+ $1 would have the value "mydata", and $2 would have the value
+ "data". The _o_u_t_p_a_t_t_e_r_n determines the resulting mapped file-
+ name. The sequences `$1', `$2', ...., `$9' are replaced by
+ any value resulting from the _i_n_p_a_t_t_e_r_n template. The se-
+ quence `$0' is replace by the original filename. Additional-
+ ly, the sequence `[_s_e_q_1, _s_e_q_2]' is replaced by [_s_e_q_1] if _s_e_q_1
+ is not a null string; otherwise it is replaced by _s_e_q_2. For
+ example, the command
+
+ nmap $1.$2.$3 [$1,$2].[$2,file]
+
+ would yield the output filename "myfile.data" for input file-
+ names "myfile.data" and "myfile.data.old", "myfile.file" for
+ the input filename "myfile", and "myfile.myfile" for the in-
+ put filename ".myfile". Spaces may be included in
+ _o_u_t_p_a_t_t_e_r_n, as in the example: `nmap $1 sed "s/ *$//" > $1'
+ . Use the `\' character to prevent special treatment of the
+ `$','[',']', and `,' characters.
+
+ nnttrraannss [_i_n_c_h_a_r_s [_o_u_t_c_h_a_r_s]]
+ Set or unset the filename character translation mechanism.
+ If no arguments are specified, the filename character trans-
+ lation mechanism is unset. If arguments are specified, char-
+ acters in remote filenames are translated during mmppuutt com-
+ mands and ppuutt commands issued without a specified remote tar-
+ get filename. If arguments are specified, characters in lo-
+ cal filenames are translated during mmggeett commands and ggeett
+ commands issued without a specified local target filename.
+ This command is useful when connecting to a non-UNIX remote
+ computer with different file naming conventions or practices.
+ Characters in a filename matching a character in _i_n_c_h_a_r_s are
+ replaced with the corresponding character in _o_u_t_c_h_a_r_s. If
+ the character's position in _i_n_c_h_a_r_s is longer than the length
+ of _o_u_t_c_h_a_r_s, the character is deleted from the file name.
+
+ ooppeenn _h_o_s_t [_p_o_r_t]
+ Establish a connection to the specified _h_o_s_t FTP server. An
+ optional port number may be supplied, in which case, ffttpp will
+ attempt to contact an FTP server at that port. If the sseett
+ aauuttoo--llooggiinn option is on (default), ffttpp will also attempt to
+ automatically log the user in to the FTP server (see below).
+
+ ppaaggee _f_i_l_e Retrieve ffiillee and display with the program specified by the
+ sseett ppaaggeerr option.
+
+ ppaassssiivvee [aauuttoo]
+ Toggle passive mode (if no arguments are given). If aauuttoo is
+ given, act as if FTPMODE is set to `auto'. If passive mode
+ is turned on (default), ffttpp will send a PASV command for all
+ data connections instead of a PORT command. The PASV command
+ requests that the remote server open a port for the data con-
+ nection and return the address of that port. The remote
+ server listens on that port and the client connects to it.
+ When using the more traditional PORT command, the client lis-
+ tens on a port and sends that address to the remote server,
+ who connects back to it. Passive mode is useful when using
+ ffttpp through a gateway router or host that controls the direc-
+ tionality of traffic. (Note that though FTP servers are re-
+ quired to support the PASV command by RFC 1123, some do not.)
+
+ ppddiirr [_r_e_m_o_t_e_-_p_a_t_h]
+ Perform ddiirr [_r_e_m_o_t_e_-_p_a_t_h], and display the result with the
+ program specified by the sseett ppaaggeerr option.
+
+ ppllss [_r_e_m_o_t_e_-_p_a_t_h]
+ Perform llss [_r_e_m_o_t_e_-_p_a_t_h], and display the result with the
+ program specified by the sseett ppaaggeerr option.
+
+ ppmmllssdd [_r_e_m_o_t_e_-_p_a_t_h]
+ Perform mmllssdd [_r_e_m_o_t_e_-_p_a_t_h], and display the result with the
+ program specified by the sseett ppaaggeerr option.
+
+ pprreesseerrvvee Toggle preservation of modification times on retrieved files.
+
+ pprrooggrreessss Toggle display of transfer progress bar. The progress bar
+ will be disabled for a transfer that has _l_o_c_a_l_-_f_i_l_e as `--' or
+ a command that starts with `|'. Refer to _F_I_L_E _N_A_M_I_N_G
+ _C_O_N_V_E_N_T_I_O_N_S for more information. Enabling pprrooggrreessss disables
+ hhaasshh.
+
+ pprroommpptt Toggle interactive prompting. Interactive prompting occurs
+ during multiple file transfers to allow the user to selec-
+ tively retrieve or store files. If prompting is turned off
+ (default is on), any mmggeett or mmppuutt will transfer all files,
+ and any mmddeelleettee will delete all files.
+
+ When prompting is on, the following commands are available at
+ a prompt:
+
+ aa Answer `yes' to the current file, and automatically
+ answer `yes' to any remaining files for the current
+ command.
+
+ nn Answer `no', and do not transfer the file.
+
+ pp Answer `yes' to the current file, and turn off
+ prompt mode (as is ``prompt off'' had been given).
+
+ qq Terminate the current operation.
+
+ yy Answer `yes', and transfer the file.
+
+ ?? Display a help message.
+
+ Any other response will answer `yes' to the current file.
+
+ pprrooxxyy _f_t_p_-_c_o_m_m_a_n_d
+ Execute an ftp command on a secondary control connection.
+ This command allows simultaneous connection to two remote FTP
+ servers for transferring files between the two servers. The
+ first pprrooxxyy command should be an ooppeenn, to establish the sec-
+ ondary control connection. Enter the command "proxy ?" to
+ see other FTP commands executable on the secondary connec-
+ tion. The following commands behave differently when pref-
+ aced by pprrooxxyy: ooppeenn will not define new macros during the au-
+ to-login process, cclloossee will not erase existing macro defini-
+ tions, ggeett and mmggeett transfer files from the host on the pri-
+ mary control connection to the host on the secondary control
+ connection, and ppuutt, mmppuutt, and aappppeenndd transfer files from the
+ host on the secondary control connection to the host on the
+ primary control connection. Third party file transfers de-
+ pend upon support of the FTP protocol PASV command by the
+ server on the secondary control connection.
+
+ ppuutt _l_o_c_a_l_-_f_i_l_e [_r_e_m_o_t_e_-_f_i_l_e]
+ Store a local file on the remote machine. If _r_e_m_o_t_e_-_f_i_l_e is
+ left unspecified, the local file name is used after process-
+ ing according to any nnttrraannss or nnmmaapp settings in naming the
+ remote file. File transfer uses the current settings for
+ ttyyppee, ffoorrmmaatt, mmooddee, and ssttrruuccttuurree.
+
+ ppwwdd Print the name of the current working directory on the remote
+ machine.
+
+ qquuiitt A synonym for bbyyee.
+
+ qquuoottee _a_r_g_1 _a_r_g_2 _._._.
+ The arguments specified are sent, verbatim, to the remote FTP
+ server.
+
+ rraattee _d_i_r_e_c_t_i_o_n [_m_a_x_i_m_u_m [_i_n_c_r_e_m_e_n_t]]
+ Throttle the maximum transfer rate to _m_a_x_i_m_u_m bytes/second.
+ If _m_a_x_i_m_u_m is 0, disable the throttle.
+
+ _d_i_r_e_c_t_i_o_n may be one of:
+ aallll Both directions.
+ ggeett Incoming transfers.
+ ppuutt Outgoing transfers.
+
+ _m_a_x_i_m_u_m can by modified on the fly by _i_n_c_r_e_m_e_n_t bytes (de-
+ fault: 1024) each time a given signal is received:
+
+ SIGUSR1 Increment _m_a_x_i_m_u_m by _i_n_c_r_e_m_e_n_t bytes.
+
+ SIGUSR2 Decrement _m_a_x_i_m_u_m by _i_n_c_r_e_m_e_n_t bytes. The re-
+ sult must be a positive number.
+
+ If _m_a_x_i_m_u_m is not supplied, the current throttle rates are
+ displayed.
+
+ Note: rraattee is not yet implemented for ascii mode transfers.
+
+ rrccvvbbuuff _s_i_z_e
+ Set the size of the socket receive buffer to _s_i_z_e.
+
+ rreeccvv _r_e_m_o_t_e_-_f_i_l_e [_l_o_c_a_l_-_f_i_l_e]
+ A synonym for ggeett.
+
+ rreeggeett _r_e_m_o_t_e_-_f_i_l_e [_l_o_c_a_l_-_f_i_l_e]
+ rreeggeett acts like ggeett, except that if _l_o_c_a_l_-_f_i_l_e exists and is
+ smaller than _r_e_m_o_t_e_-_f_i_l_e, _l_o_c_a_l_-_f_i_l_e is presumed to be a par-
+ tially transferred copy of _r_e_m_o_t_e_-_f_i_l_e and the transfer is
+ continued from the apparent point of failure. This command
+ is useful when transferring very large files over networks
+ that are prone to dropping connections.
+
+ rreemmooppttss _c_o_m_m_a_n_d [_c_o_m_m_a_n_d_-_o_p_t_i_o_n_s]
+ Set options on the remote FTP server for _c_o_m_m_a_n_d to
+ _c_o_m_m_a_n_d_-_o_p_t_i_o_n_s (whose absence is handled on a command-spe-
+ cific basis). Remote FTP commands known to support options
+ include: `MLST' (used for MLSD and MLST).
+
+ rreennaammee [_f_r_o_m [_t_o]]
+ Rename the file _f_r_o_m on the remote machine, to the file _t_o.
+
+ rreesseett Clear reply queue. This command re-synchronizes command/re-
+ ply sequencing with the remote FTP server. Resynchronization
+ may be necessary following a violation of the FTP protocol by
+ the remote server.
+
+ rreessttaarrtt _m_a_r_k_e_r
+ Restart the immediately following ggeett or ppuutt at the indicated
+ _m_a_r_k_e_r. On UNIX systems, marker is usually a byte offset in-
+ to the file.
+
+ rrhheellpp [_c_o_m_m_a_n_d_-_n_a_m_e]
+ Request help from the remote FTP server. If a _c_o_m_m_a_n_d_-_n_a_m_e
+ is specified it is supplied to the server as well.
+
+ rrmmddiirr _d_i_r_e_c_t_o_r_y_-_n_a_m_e
+ Delete a directory on the remote machine.
+
+ rrssttaattuuss [_r_e_m_o_t_e_-_f_i_l_e]
+ With no arguments, show status of remote machine. If
+ _r_e_m_o_t_e_-_f_i_l_e is specified, show status of _r_e_m_o_t_e_-_f_i_l_e on re-
+ mote machine.
+
+ rruunniiqquuee Toggle storing of files on the local system with unique file-
+ names. If a file already exists with a name equal to the
+ target local filename for a ggeett or mmggeett command, a ".1" is
+ appended to the name. If the resulting name matches another
+ existing file, a ".2" is appended to the original name. If
+ this process continues up to ".99", an error message is
+ printed, and the transfer does not take place. The generated
+ unique filename will be reported. Note that rruunniiqquuee will not
+ affect local files generated from a shell command (see be-
+ low). The default value is off.
+
+ sseenndd _l_o_c_a_l_-_f_i_l_e [_r_e_m_o_t_e_-_f_i_l_e]
+ A synonym for ppuutt.
+
+ sseennddppoorrtt Toggle the use of PORT commands. By default, ffttpp will at-
+ tempt to use a PORT command when establishing a connection
+ for each data transfer. The use of PORT commands can prevent
+ delays when performing multiple file transfers. If the PORT
+ command fails, ffttpp will use the default data port. When the
+ use of PORT commands is disabled, no attempt will be made to
+ use PORT commands for each data transfer. This is useful for
+ certain FTP implementations which do ignore PORT commands
+ but, incorrectly, indicate they've been accepted.
+
+ sseett [_o_p_t_i_o_n _v_a_l_u_e]
+ Set _o_p_t_i_o_n to _v_a_l_u_e. If _o_p_t_i_o_n and _v_a_l_u_e are not given, dis-
+ play all of the options and their values. The currently sup-
+ ported options are:
+
+ aannoonnppaassss Defaults to $FTPANONPASS
+
+ ffttpp__pprrooxxyy Defaults to $ftp_proxy.
+
+ hhttttpp__pprrooxxyy Defaults to $http_proxy.
+
+ nnoo__pprrooxxyy Defaults to $no_proxy.
+
+ ppaaggeerr Defaults to $PAGER.
+
+ pprroommpptt Defaults to $FTPPROMPT.
+
+ rrpprroommpptt Defaults to $FTPRPROMPT.
+
+ ssiittee _a_r_g_1 _a_r_g_2 _._._.
+ The arguments specified are sent, verbatim, to the remote FTP
+ server as a SITE command.
+
+ ssiizzee _r_e_m_o_t_e_-_f_i_l_e
+ Return size of _r_e_m_o_t_e_-_f_i_l_e on remote machine.
+
+ ssnnddbbuuff _s_i_z_e
+ Set the size of the socket send buffer to _s_i_z_e.
+
+ ssttaattuuss Show the current status of ffttpp.
+
+ ssttrruucctt _s_t_r_u_c_t_-_n_a_m_e
+ Set the file transfer _s_t_r_u_c_t_u_r_e to _s_t_r_u_c_t_-_n_a_m_e. The default
+ (and only supported) structure is ``file''.
+
+ ssuunniiqquuee Toggle storing of files on remote machine under unique file
+ names. The remote FTP server must support FTP protocol STOU
+ command for successful completion. The remote server will
+ report unique name. Default value is off.
+
+ ssyysstteemm Show the type of operating system running on the remote ma-
+ chine.
+
+ tteenneexx Set the file transfer type to that needed to talk to TENEX
+ machines.
+
+ tthhrroottttllee A synonym for rraattee.
+
+ ttrraaccee Toggle packet tracing.
+
+ ttyyppee [_t_y_p_e_-_n_a_m_e]
+ Set the file transfer ttyyppee to _t_y_p_e_-_n_a_m_e. If no type is spec-
+ ified, the current type is printed. The default type is net-
+ work ASCII.
+
+ uummaasskk [_n_e_w_m_a_s_k]
+ Set the default umask on the remote server to _n_e_w_m_a_s_k. If
+ _n_e_w_m_a_s_k is omitted, the current umask is printed.
+
+ uunnsseett _o_p_t_i_o_n
+ Unset _o_p_t_i_o_n. Refer to sseett for more information.
+
+ uussaaggee _c_o_m_m_a_n_d
+ Print the usage message for _c_o_m_m_a_n_d.
+
+ uusseerr _u_s_e_r_-_n_a_m_e [_p_a_s_s_w_o_r_d [_a_c_c_o_u_n_t]]
+ Identify yourself to the remote FTP server. If the _p_a_s_s_w_o_r_d
+ is not specified and the server requires it, ffttpp will prompt
+ the user for it (after disabling local echo). If an _a_c_c_o_u_n_t
+ field is not specified, and the FTP server requires it, the
+ user will be prompted for it. If an _a_c_c_o_u_n_t field is speci-
+ fied, an account command will be relayed to the remote server
+ after the login sequence is completed if the remote server
+ did not require it for logging in. Unless ffttpp is invoked
+ with ``auto-login'' disabled, this process is done automati-
+ cally on initial connection to the FTP server.
+
+ vveerrbboossee Toggle verbose mode. In verbose mode, all responses from the
+ FTP server are displayed to the user. In addition, if ver-
+ bose is on, when a file transfer completes, statistics re-
+ garding the efficiency of the transfer are reported. By de-
+ fault, verbose is on.
+
+ xxffeerrbbuuff _s_i_z_e
+ Set the size of the socket send and receive buffers to _s_i_z_e.
+
+ ?? [_c_o_m_m_a_n_d]
+ A synonym for hheellpp.
+
+ Command arguments which have embedded spaces may be quoted with quote `"'
+ marks.
+
+ Commands which toggle settings can take an explicit oonn or ooffff argument to
+ force the setting appropriately.
+
+ Commands which take a byte count as an argument (e.g., hhaasshh, rraattee, and
+ xxffeerrbbuuff) support an optional suffix on the argument which changes the in-
+ terpretation of the argument. Supported suffixes are:
+ b Causes no modification. (Optional)
+ k Kilo; multiply the argument by 1024
+ m Mega; multiply the argument by 1048576
+ g Giga; multiply the argument by 1073741824
+
+ If ffttpp receives a SIGINFO (see the ``status'' argument of stty(1)) or
+ SIGQUIT signal whilst a transfer is in progress, the current transfer
+ rate statistics will be written to the standard error output, in the same
+ format as the standard completion message.
+
+AAUUTTOO--FFEETTCCHHIINNGG FFIILLEESS
+ In addition to standard commands, this version of ffttpp supports an auto-
+ fetch feature. To enable auto-fetch, simply pass the list of host-
+ names/files on the command line.
+
+ The following formats are valid syntax for an auto-fetch element:
+
+ [_u_s_e_r@]_h_o_s_t:[_p_a_t_h][/]
+ ``Classic'' FTP format.
+
+ If _p_a_t_h contains a glob character and globbing is enabled, (see
+ gglloobb), then the equivalent of `mget path' is performed.
+
+ If the directory component of _p_a_t_h contains no globbing characters,
+ it is stored locally with the name basename (see basename(1)) of
+ ppaatthh, in the current directory. Otherwise, the full remote name is
+ used as the local name, relative to the local root directory.
+
+ ftp://[_u_s_e_r[:_p_a_s_s_w_o_r_d]@]_h_o_s_t[:_p_o_r_t]/_p_a_t_h[/][;type=_X]
+ An FTP URL, retrieved using the FTP protocol if sseett ffttpp__pprrooxxyy isn't
+ defined. Otherwise, transfer the URL using HTTP via the proxy de-
+ fined in sseett ffttpp__pprrooxxyy. If sseett ffttpp__pprrooxxyy isn't defined and _u_s_e_r is
+ given, login as _u_s_e_r. In this case, use _p_a_s_s_w_o_r_d if supplied, oth-
+ erwise prompt the user for one.
+
+ If a suffix of `;type=A' or `;type=I' is supplied, then the trans-
+ fer type will take place as ascii or binary (respectively). The
+ default transfer type is binary.
+
+ In order to be compliant with RRFFCC 11773388, ffttpp interprets the _p_a_t_h
+ part of an ``ftp://'' auto-fetch URL as follows:
+
+ ++oo The `/' immediately after the _h_o_s_t[:_p_o_r_t] is interpreted as a
+ separator before the _p_a_t_h, and not as part of the _p_a_t_h itself.
+
+ ++oo The _p_a_t_h is interpreted as a `/'-separated list of name compo-
+ nents. For all but the last such component, ffttpp performs the
+ equivalent of a ccdd command. For the last path component, ffttpp
+ performs the equivalent of a ggeett command.
+
+ ++oo Empty name components, which result from `//' within the _p_a_t_h,
+ or from an extra `/' at the beginning of the _p_a_t_h, will cause
+ the equivalent of a ccdd command without a directory name. This
+ is unlikely to be useful.
+
+ ++oo Any `%_X_X' codes within the path components are decoded, with _X_X
+ representing a character code in hexadecimal. This decoding
+ takes place after the _p_a_t_h has been split into components, but
+ before each component is used in the equivalent of a ccdd or ggeett
+ command. Some often-used codes are `%2F' (which represents
+ `/') and `%7E' (which represents `~').
+
+ The above interpretation has the following consequences:
+
+ ++oo The path is interpreted relative to the default login directory
+ of the specified user or of the `anonymous' user. If the _/ di-
+ rectory is required, use a leading path of ``%2F''. If a us-
+ er's home directory is required (and the remote server supports
+ the syntax), use a leading path of ``%7Euser/''. For example,
+ to retrieve _/_e_t_c_/_m_o_t_d from `localhost' as the user `myname'
+ with the password `mypass', use
+ ``ftp://myname:mypass@localhost/%2fetc/motd''
+
+ ++oo The exact ccdd and ggeett commands can be controlled by careful
+ choice of where to use `/' and where to use `%2F' (or `%2f').
+ For example, the following URLs correspond to the equivalents
+ of the indicated commands:
+
+ ftp://host/dir1/dir2/file ``cd dir1'', ``cd dir2'',
+ ``get file''.
+
+ ftp://host/%2Fdir1/dir2/file ``cd /dir1'', ``cd dir2'',
+ ``get file''.
+
+ ftp://host/dir1%2Fdir2/file ``cd dir1/dir2'', ``get
+ file''.
+
+ ftp://host/%2Fdir1%2Fdir2/file ``cd /dir1/dir2'', ``get
+ file''.
+
+ ftp://host/dir1%2Fdir2%2Ffile ``get dir1/dir2/file''.
+
+ ftp://host/%2Fdir1%2Fdir2%2Ffile ``get /dir1/dir2/file''.
+
+ ++oo You must have appropriate access permission for each of the in-
+ termediate directories that is used in the equivalent of a ccdd
+ command.
+
+ http://[_u_s_e_r[:_p_a_s_s_w_o_r_d]@]_h_o_s_t[:_p_o_r_t]/_p_a_t_h
+ An HTTP URL, retrieved using the HTTP protocol. If sseett hhttttpp__pprrooxxyy
+ is defined, it is used as a URL to an HTTP proxy server. If HTTP
+ authorization is required to retrieve _p_a_t_h, and `user' (and option-
+ ally `password') is in the URL, use them for the first attempt to
+ authenticate.
+
+ file:///_p_a_t_h
+ A local URL, copied from _/_p_a_t_h on the local host.
+
+ Unless noted otherwise above, and --oo _o_u_t_p_u_t is not given, the file is
+ stored in the current directory as the basename(1) of _p_a_t_h.
+
+ If a classic format or an FTP URL format has a trailing `/' or an empty
+ _p_a_t_h component, then ffttpp will connect to the site and ccdd to the directory
+ given as the path, and leave the user in interactive mode ready for fur-
+ ther input. This will not work if sseett ffttpp__pprrooxxyy is being used.
+
+ Direct HTTP transfers use HTTP 1.1. Proxied FTP and HTTP transfers use
+ HTTP 1.0.
+
+ If --RR is given, all auto-fetches that don't go via the FTP or HTTP prox-
+ ies will be restarted. For FTP, this is implemented by using rreeggeett in-
+ stead of ggeett. For HTTP, this is implemented by using the `Range: bytes='
+ HTTP/1.1 directive.
+
+ If WWW or proxy WWW authentication is required, you will be prompted to
+ enter a username and password to authenticate with.
+
+ When specifying IPv6 numeric addresses in a URL, you need to surround the
+ address in square brackets. E.g.: ``ftp://[::1]:21/''. This is because
+ colons are used in IPv6 numeric address as well as being the separator
+ for the port number.
+
+AABBOORRTTIINNGG AA FFIILLEE TTRRAANNSSFFEERR
+ To abort a file transfer, use the terminal interrupt key (usually Ctrl-
+ C). Sending transfers will be immediately halted. Receiving transfers
+ will be halted by sending an FTP protocol ABOR command to the remote
+ server, and discarding any further data received. The speed at which
+ this is accomplished depends upon the remote server's support for ABOR
+ processing. If the remote server does not support the ABOR command, the
+ prompt will not appear until the remote server has completed sending the
+ requested file.
+
+ If the terminal interrupt key sequence is used whilst ffttpp is awaiting a
+ reply from the remote server for the ABOR processing, then the connection
+ will be closed. This is different from the traditional behaviour (which
+ ignores the terminal interrupt during this phase), but is considered more
+ useful.
+
+FFIILLEE NNAAMMIINNGG CCOONNVVEENNTTIIOONNSS
+ Files specified as arguments to ffttpp commands are processed according to
+ the following rules.
+
+ 1. If the file name `--' is specified, the _s_t_d_i_n (for reading) or _s_t_d_o_u_t
+ (for writing) is used.
+
+ 2. If the first character of the file name is `|', the remainder of the
+ argument is interpreted as a shell command. ffttpp then forks a shell,
+ using popen(3) with the argument supplied, and reads (writes) from
+ the stdout (stdin). If the shell command includes spaces, the argu-
+ ment must be quoted; e.g. ``"| ls -lt"''. A particularly useful
+ example of this mechanism is: ``dir "" |more''.
+
+ 3. Failing the above checks, if ``globbing'' is enabled, local file
+ names are expanded according to the rules used in the csh(1); c.f.
+ the gglloobb command. If the ffttpp command expects a single local file
+ (e.g. ppuutt), only the first filename generated by the "globbing" op-
+ eration is used.
+
+ 4. For mmggeett commands and ggeett commands with unspecified local file
+ names, the local filename is the remote filename, which may be al-
+ tered by a ccaassee, nnttrraannss, or nnmmaapp setting. The resulting filename
+ may then be altered if rruunniiqquuee is on.
+
+ 5. For mmppuutt commands and ppuutt commands with unspecified remote file
+ names, the remote filename is the local filename, which may be al-
+ tered by a nnttrraannss or nnmmaapp setting. The resulting filename may then
+ be altered by the remote server if ssuunniiqquuee is on.
+
+FFIILLEE TTRRAANNSSFFEERR PPAARRAAMMEETTEERRSS
+ The FTP specification specifies many parameters which may affect a file
+ transfer. The ttyyppee may be one of ``ascii'', ``image'' (binary),
+ ``ebcdic'', and ``local byte size'' (for PDP-10's and PDP-20's mostly).
+ ffttpp supports the ascii and image types of file transfer, plus local byte
+ size 8 for tteenneexx mode transfers.
+
+ ffttpp supports only the default values for the remaining file transfer pa-
+ rameters: mmooddee, ffoorrmm, and ssttrruucctt.
+
+TTHHEE ..nneettrrcc FFIILLEE
+ The _._n_e_t_r_c file contains login and initialization information used by the
+ auto-login process. It resides in the user's home directory, unless
+ overridden with the --NN _n_e_t_r_c option, or specified in the NETRC environ-
+ ment variable. The following tokens are recognized; they may be separat-
+ ed by spaces, tabs, or new-lines:
+
+ mmaacchhiinnee _n_a_m_e
+ Identify a remote machine _n_a_m_e. The auto-login process search-
+ es the _._n_e_t_r_c file for a mmaacchhiinnee token that matches the remote
+ machine specified on the ffttpp command line or as an ooppeenn command
+ argument. Once a match is made, the subsequent _._n_e_t_r_c tokens
+ are processed, stopping when the end of file is reached or an-
+ other mmaacchhiinnee or a ddeeffaauulltt token is encountered.
+
+ ddeeffaauulltt This is the same as mmaacchhiinnee _n_a_m_e except that ddeeffaauulltt matches
+ any name. There can be only one ddeeffaauulltt token, and it must be
+ after all mmaacchhiinnee tokens. This is normally used as:
+
+ default login anonymous password user@site
+
+ thereby giving the user an automatic anonymous FTP login to ma-
+ chines not specified in _._n_e_t_r_c. This can be overridden by us-
+ ing the --nn flag to disable auto-login.
+
+ llooggiinn _n_a_m_e
+ Identify a user on the remote machine. If this token is
+ present, the auto-login process will initiate a login using the
+ specified _n_a_m_e.
+
+ ppaasssswwoorrdd _s_t_r_i_n_g
+ Supply a password. If this token is present, the auto-login
+ process will supply the specified string if the remote server
+ requires a password as part of the login process. Note that if
+ this token is present in the _._n_e_t_r_c file for any user other
+ than _a_n_o_n_y_m_o_u_s, ffttpp will abort the auto-login process if the
+ _._n_e_t_r_c is readable by anyone besides the user.
+
+ aaccccoouunntt _s_t_r_i_n_g
+ Supply an additional account password. If this token is
+ present, the auto-login process will supply the specified
+ string if the remote server requires an additional account
+ password, or the auto-login process will initiate an ACCT com-
+ mand if it does not.
+
+ mmaaccddeeff _n_a_m_e
+ Define a macro. This token functions like the ffttpp mmaaccddeeff com-
+ mand functions. A macro is defined with the specified name;
+ its contents begin with the next _._n_e_t_r_c line and continue until
+ a blank line (consecutive new-line characters) is encountered.
+ If a macro named iinniitt is defined, it is automatically executed
+ as the last step in the auto-login process. For example,
+
+ default
+ macdef init
+ epsv4 off
+
+ followed by a blank line.
+
+CCOOMMMMAANNDD LLIINNEE EEDDIITTIINNGG
+ ffttpp supports interactive command line editing, via the editline(3) li-
+ brary. It is enabled with the eeddiitt command, and is enabled by default if
+ input is from a tty. Previous lines can be recalled and edited with the
+ arrow keys, and other GNU Emacs-style editing keys may be used as well.
+
+ The editline(3) library is configured with a _._e_d_i_t_r_c file - refer to
+ editrc(5) for more information.
+
+ An extra key binding is available to ffttpp to provide context sensitive
+ command and filename completion (including remote file completion). To
+ use this, bind a key to the editline(3) command ffttpp--ccoommpplleettee. By de-
+ fault, this is bound to the TAB key.
+
+CCOOMMMMAANNDD LLIINNEE PPRROOMMPPTT
+ By default, ffttpp displays a command line prompt of ``ftp> '' to the user.
+ This can be changed with the sseett pprroommpptt command.
+
+ A prompt can be displayed on the right side of the screen (after the com-
+ mand input) with the sseett rrpprroommpptt command.
+
+ The following formatting sequences are replaced by the given information:
+
+ %/ The current remote working directory.
+
+ %c[[0]_n],%.[[0]_n]
+ The trailing component of the current remote working directo-
+ ry, or _n trailing components if a digit _n is given. If _n be-
+ gins with `0', the number of skipped components precede the
+ trailing component(s) in the format ``/<_n_u_m_b_e_r>_t_r_a_i_l_i_n_g'' (for
+ `%c') or ``..._t_r_a_i_l_i_n_g'' (for `%.').
+
+ %M The remote host name.
+
+ %m The remote host name, up to the first `.'.
+
+ %n The remote user name.
+
+ %% A single `%'.
+
+EENNVVIIRROONNMMEENNTT
+ ffttpp uses the following environment variables.
+
+ FTPANONPASS Password to send in an anonymous FTP transfer. Defaults
+ to ```whoami`@''.
+
+ FTPMODE Overrides the default operation mode. Support values are:
+
+ aaccttiivvee active mode FTP only
+
+ aauuttoo automatic determination of passive or active
+ (this is the default)
+
+ ggaattee gate-ftp mode
+
+ ppaassssiivvee passive mode FTP only
+
+ FTPPROMPT Command-line prompt to use. Defaults to ``ftp> ''. Refer
+ to _C_O_M_M_A_N_D _L_I_N_E _P_R_O_M_P_T for more information.
+
+ FTPRPROMPT Command-line right side prompt to use. Defaults to ``''.
+ Refer to _C_O_M_M_A_N_D _L_I_N_E _P_R_O_M_P_T for more information.
+
+ FTPSERVER Host to use as gate-ftp server when ggaattee is enabled.
+
+ FTPSERVERPORT Port to use when connecting to gate-ftp server when ggaattee
+ is enabled. Default is port returned by a ggeettsseerrvvbbyynnaammee()
+ lookup of ``ftpgate/tcp''.
+
+ FTPUSERAGENT The value to send for the HTTP User-Agent header.
+
+ HOME For default location of a _._n_e_t_r_c file, if one exists.
+
+ NETRC An alternate location of the _._n_e_t_r_c file.
+
+ PAGER Used by various commands to display files. Defaults to
+ more(1) if empty or not set.
+
+ SHELL For default shell.
+
+ ftp_proxy URL of FTP proxy to use when making FTP URL requests (if
+ not defined, use the standard FTP protocol).
+
+ _N_O_T_E: this is not used for interactive sessions, only for
+ command-line fetches.
+
+ http_proxy URL of HTTP proxy to use when making HTTP URL requests.
+ If proxy authentication is required and there is a user-
+ name and password in this URL, they will automatically be
+ used in the first attempt to authenticate to the proxy.
+
+ Note that the use of a username and password in ftp_proxy
+ and http_proxy may be incompatible with other programs
+ that use it (such as lynx(1)).
+
+ _N_O_T_E: this is not used for interactive sessions, only for
+ command-line fetches.
+
+ no_proxy A space or comma separated list of hosts (or domains) for
+ which proxying is not to be used. Each entry may have an
+ optional trailing ":port", which restricts the matching to
+ connections to that port.
+
+EEXXTTEENNDDEEDD PPAASSSSIIVVEE MMOODDEE AANNDD FFIIRREEWWAALLLLSS
+ Some firewall configurations do not allow ffttpp to use extended passive
+ mode. If you find that even a simple llss appears to hang after printing a
+ message such as this:
+
+ 229 Entering Extended Passive Mode (|||58551|)
+
+ then you will need to disable extended passive mode with eeppssvv44 ooffff. See
+ the above section _T_h_e _._n_e_t_r_c _F_i_l_e for an example of how to make this au-
+ tomatic.
+
+SSEEEE AALLSSOO
+ getservbyname(3), editrc(5), services(5), ftpd(8)
+
+SSTTAANNDDAARRDDSS
+ ffttpp attempts to be compliant with RRFFCC 995599, RRFFCC 11112233, RRFFCC 11773388, RRFFCC 22006688,
+ RRFFCC 22338899, RRFFCC 22442288, RRFFCC 22773322, and ddrraafftt--iieettff--ffttppeexxtt--mmllsstt--1111.
+
+HHIISSTTOORRYY
+ The ffttpp command appeared in 4.2BSD.
+
+ Various features such as command line editing, context sensitive command
+ and file completion, dynamic progress bar, automatic fetching of files
+ and URLs, modification time preservation, transfer rate throttling, con-
+ figurable command line prompt, and other enhancements over the standard
+ BSD ffttpp were implemented in NetBSD 1.3 and later releases by Luke Mewburn
+ <lukem@NetBSD.org>.
+
+ IPv6 support was added by the WIDE/KAME project (but may not be present
+ in all non-NetBSD versions of this program, depending if the operating
+ system supports IPv6 in a similar manner to KAME).
+
+BBUUGGSS
+ Correct execution of many commands depends upon proper behavior by the
+ remote server.
+
+ An error in the treatment of carriage returns in the 4.2BSD ascii-mode
+ transfer code has been corrected. This correction may result in incor-
+ rect transfers of binary files to and from 4.2BSD servers using the ascii
+ type. Avoid this problem by using the binary image type.
+
+ ffttpp assumes that all IPv4 mapped addresses (IPv6 addresses with a form
+ like ::ffff:10.1.1.1) indicate IPv4 destinations which can be handled by
+ AF_INET sockets. However, in certain IPv6 network configurations, this
+ assumption is not true. In such an environment, IPv4 mapped addresses
+ must be passed to AF_INET6 sockets directly. For example, if your site
+ uses a SIIT translator for IPv6-to-IPv4 translation, ffttpp is unable to
+ support your configuration.
+
+NetBSD 1.6 July 31, 2003 NetBSD 1.6