home *** CD-ROM | disk | FTP | other *** search
-
-
-
-
-
-
- Work Information Center # 12404 G. Hicks
- Request for Comments # 412 Utah
- 27-Nov-72
-
-
-
- User FTP Documentation
-
- The attached document is the HELP file for the Utah-10
- implementation of the User FTP Process. This is what the user has
- typed on his console when he types 'HELP<cr>', and as such is the only
- documention produced to date.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [Page 1]
-
- User FTP Documentation Detailed Command Listing
-
-
- FTP User Documentation
- November 27, 1972
-
-
- I. Control Characters
-
- There are several control characters that have meaning to the FTP
- Process. First, the abort character is <control-z> (SUB), next for
- editing, only <control-r>, <control-a>, <control-h>, <control-v>,
- <control-w>, <alt-mode>, <eol>, <space>, <control-x> and <rub-out> have
- any meaning, <control-a> (SOH) and <control-h> (BS) are the character
- delete keys. <control-w> is the word delete character, Note: When dowing
- the ' funktion, this character will delete the entire line typed.
- <control-v> says take the next character literally. <alt-mode> (ESC)
- terminates the command giving helpful noise words, <eol> and <space> are
- terminators also. These last two will give no command completion or
- noise words. All three echo as a space however. <control-x> (CAN) and
- <rub-out> (DEL) are the command abort characters. <control-r> (DC2) will
- retype the line as the command interpreter sees it. When using the ? as
- a prompter, for initial commands, it will type-out all commands that
- begin with that particular character string. If it is typed in a sub-
- command field, it will type out the prompt message only if it is the
- first character typed. At all other times, it will be accepted as part
- of the typed string.
-
-
- II. General Information
-
- The FTP user process is designed to make transferring files from
- one host on the ARPANET to another much easier than it has been up until
- now. To this end, the command language was designed to be as natural as
- possible.
-
- The command interpreter is, of course, part of this idea.
- Therefore, to help the user as much as possible, there are several ways
- to find out what is expected in the form of commands, file-names, user-
- names, etc. When the user has typed nothing, typing a ? will cause the
- interpreter to type out all the commands that are available to the user.
- If the user has typed anything at all, then it will respond with all
- commands that begin with the particular character string.
-
- So that the command language was as easy to learn as possible, the
- command interpreter will 'see' nothing that is not part of a legal
- command. If the user types anything that is not expected, the character
- is not echoed and a bell is echoed instead.
-
-
-
-
-
-
- [Page 2]
-
- User FTP Documentation Detailed Command Listing
-
-
- III. Brief Command Listing
-
- The commands that are expected and their syntax are listed below.
- NOTE: UPPER and lower case letters are identical.
-
-
- <host-name>
- D<decimal host number>
- <octal host number>
- ;<any string> (useful for comments to a person that is
- linked to you)
- MODE <mode name>
- RETREIVE <remote file> (to) <local file>
- GET <remote file> (to) <local file>
- SEND <local file> (to) <remote file>
- STORE <local file> (to) <remote file>
- APPEND <local file> (to) <remote file>
- RENAME <remote file> (to be) <new remote file name>
- DELETE <remote file>
- BYE
- COPY <direction descriptor> <file group> (to) <file group>
- (see detailed description below)
- LOGOUT
- DDT
- LIST <file group> (to file) <local file name>
- SOCKET (NOT IMPLEMENTED YET)
- ALLOCATE <decimal number of bytes>
- QUIT
- foreign host)
- HOST <any valid ARPANET host name or number>
- USER <remote user name>
- PASSWORD <password for remote user's name>
- ACCOUNT <string or number for remote user's name>
- STATUS (see description of status command below)
- LOGIN <user name> <password> <optional account> <to host>
- BYTE <decimal byte size>
- TYPE <type descriptor>
- STRUCTURE <structure descriptor>
- TENEX
- ASCII
- VERBOSE
-
-
-
-
-
-
-
-
-
-
- [Page 3]
-
- User FTP Documentation Detailed Command Listing
-
-
- IV. Detailed Description of the Commands
-
- The commands and their syntax are described in greater detail
- blow. The words in parenthesis are noise words. NOTE: upper and
- lower case are identical. Unless otherwise noted in the command
- description, all commands described are implemented.
-
- <host name> or <host number>
- Performs the ICP to the indicated host with explanatory remarks if
- the ICP is not possible.
-
- MODE <mode descriptor>
- Sets the mode of the data transfer connection according to the
- following sub-commandos:
-
- STREAM: bit stream, end of file is indicated by the data connection
- closing.
-
- BLOCK: formats (or expects formatted) data into blocks.
-
- TEXT: Sends or retreives text. Forces TYPE ASCII and BYTE 8. This
- command sends the appropiate commands to the foreign host, then sends
- the data using the TELNET codes for EOR and EOF as per the FTP
- Protocol.
-
- HASP: compress data.
-
- NOTE: Of the above sub-commands, only MODE STREAM and MODE TEXT are
- implemented at present.
-
- RETREIVE (file) <remote file> (to file) <local file name>
- Sends the retr command to the remote server, sets up the data
- connection according to any previous MODE, TYPE, BYTE commands. Puts
- the data coming on the the data connection into the local file
- specified.
-
- GET (file) <remote file name> (to file) <local file name>
- See description of RETREIVE.
-
- STORE (local file) <file name> (onto file) <remote file>
- Accepts a local file name, does the formatting according to any
- previous BYTE, TYPE, MODE commands and sends it to the foreign host.
-
- SEND (local file) <file name> (onto file) <remote file>
- See description of STORE.
-
- APPEND (local file) <file name> (to remote file) <remote file>
- Does the same as a store except that the file is appended to the
-
-
-
- [Page 4]
-
- User FTP Documentation Detailed Command Listing
-
-
- remote file rather that just writing over the file.
-
- RENAME (existing file) <file name> (to be) <new file name>
- Accepts the name of n old remote file and asks for a new file name,
- sends the appropiate commands and names to the foreign host causing
- the old file name to be replaced by the new file name.
-
- DELETE (file) <file name>
- This command causes the remote file to be marked for deletion. It
- does require that the command be confirmed twice.
-
- BYE
- Takes no arguments. Causes the server to terminate the current
- session with the user. The program will return to the EXEC MODE when
- the command has been acknowledged by the remote server.
-
- COPY
- This command does a variety of things. First. it allows the user do
- describe a file group. EG: *.mac, *.sav, etc. The *'s may be for
- foreign files or local files according to the following sub-commands:
-
- REMOTE (remote file group) <remote file grouping>:
- Causes the user FTP to ask the server for the file in <remote file
- grouping>. Then asks the user to specify where each file is to go. A
- typical sequence might look like the following:
-
- !copy remote (remote file group) ftp.*
- Please be patient. Getting remote file names.
- Got them.
- !copy (file) <HICKS>FTP.MAC;| (to file) ftp.mac [New file]
- [Messages and etc. follow with the above line being
- repeated for each file in the remote file group.]
-
- LOCAL (local file grouping) <local file group>:
- Causes the user FTP to accept the file group specified, and send the
- file names to the server leaving off the <directory name> and version
- number of the local file. The user may not specify *'d devices of *'d
- directorys. A line for this might look like the following:
- !copy local (local file group) ftp.*;*
- [Confirm]
-
- Next, if the user does not specify any *'s for either the remote file
- or the local file, this command is exactly like the RETREIVE or STORE
- command described earlier.
- LOGOUT
- Takes no arguments. See description of BYE command for more details.
-
-
-
-
-
- [Page 5]
-
- User FTP Documentation Detailed Command Listing
-
-
- RESET
- Takes no arguments. Causes the user process to close all connections
- (if necessary), all files (if necessary), and reset the programs
- parameters to their defaults.
-
- DDT
- If DDT is loaded, just starts DDT. If DDT is not loaded, it will load
- DDT and then start it at its initial start-up location. This command
- will casue an abnormal interrupt if DDT is not found.
-
- LIST (file group) <remote file group> (to file) <local file>
- Esentially causes the remote server to do a directory command. The
- default is *.* and since the listing will come on the data connection,
- the user must specify a local file. A sample line might look like the
- following: !list (file group) *.* (going to file) tty: [ok]
-
- SOCKET <socket descriptor>
- Will accept a socket descriptor for the data to go to or come from. At
- present it is NOT IMPLEMENTED because we have not decided on the
- format of the command to the server.
-
- ALLOCATE <decimal number of bytes>
- Accepts as its argument a decimal number of bytes (of the specified
- size) telling the server how many bytes of storage to reserve for the
- next store of append.
-
- QUIT
- Takes no arguments. Returns the console to the EXEC. The program may
- be continued with no harm done.
-
- This command allows the user to send arbitrary strings to the remote
- server. At present, when talking to a TENEX site, it is only useful
- for doing the 'MAIL' command. Other sites may have help commands of
- whatever.
-
- HOST <ARPANET host name of number>
- Allows the user to specify an ARPANET host without actually connecting
- to the host. This specified host will be the ont that is connected to
- (or the attempt will be made anyway) when the next 'immediate' command
- is executed. EG: LOGIN, RETREIVE, STORE, LIST, etc.
-
- USER (name is) <remote user's name>
- Sets the user name for the remote system. Useful for systems that
- require no password for the specified name. Does nothing until an
- user must be 'logged into' the remote system. The programm knows this
- and so will not let the user execute any commands (RETREIVE, STORE,
- APPEND, LIST, STATUS, RENAME, DELETE) until he has at least specified
- a remote user name. The LOGIN command does this as does this command.
-
-
-
- [Page 6]
-
- User FTP Documentation Detailed Command Listing
-
-
- STATUS (of the) <sub-cmd> (at host) <ARPANET host>
- Accepts as its argument one of the following sub-commands:
- SERVICE (at host) <ARPANET host name or number>: Attempts to
- perform the ICP to the specified host. Does not disturb any existing
- connections.
- <ARPANET host name or number>: See description of STATUS SERVICE
- above.
-
- STATUS (of file) <remote file group>: Similar to the LIST
- command described above except that the listing does not gone back on
- the data connection but on the TELNET connection. See LIST command for
- more details.
- <COMMAND-TERMINATOR>: Just sneds the STAT command.
- Typically, is good for finding out where your are and perhaps who you
- are.
-
- PASSWORD (is) <passowrd for remote user's name>
- Sets the password for the remote user's name. It is NOT echoed and
- does nothing until the next 'immediate' command is executed.
-
- ACCOUNT (is) <account number or string>
- Accepts a string of number that can be charged for any activity the
- user specifies. EG: STORE, RETREIVE or APPEND. Useful only for systems
- that require this information of course. Also does nothing until the
- next immediate command is executed.
-
- LOGIN <user name> <password> <optional account>
- the format of this command is identical to the TENEX login command. It
- accepts a user name, password, and an optional account number. If no
- host has been specified, it will ask for the host to be connected to.
- This command will cause the ICP to take place if necessary.
-
- BYTE (size is) <decimal byte size>
- This command sets the byte size for the data connection. The default
- byte size is 8 bytes.
-
- Type (is) <type descriptor>
- Takes as its argument one of the following subcommands:
- TENEX: Shorthand that sets TYPE IMAGE and BYTE 36.
- EBCDIC: Says that the data will be Ebcdic.
- PRINT: Says that the data is an Ascii print file with ASA vertical
- format controls.
- LOCAL: Forces the user and server FTP to accept whatever
- byte size the user has specified. For the present, this type is
- treated the same as for IMAGE TYPE.
- IMAGE: Does the same as LOCAL. Just forces the user and server FTP to
- accept the specified byte size without doing any translation as is
- done for ASCII type. For most efficient usage of this command, the
-
-
-
- [Page 7]
-
- User FTP Documentation Detailed Command Listing
-
-
- matching byte size should be BYTE 36 when using TENEX sites as
- servers.
- ASCII: Sets TYPE ASCII and 8 bit bytes. Useful for text files.
- NOTE: Of the above sub-commands, only PRINT and EBCDIC are not
- implemented yet.
-
- STRUCTURE (is) <file structure descriptor>
- Accepts as its argument one of the following sub-commands:
- REDORD: Says the data on the data connection has record
- structure information contained in it. NOTE: Since TENEX NOT support
- record structured files per se, this mode only useful for sending text
- files to or retreiving text files from non-TENEX sites. The <EOL> in
- these files is converted to the TELNET EOR code for transmission and
- EOR to <EOL> etc. for reception.
-
- File: Says the data stream has no record structure information in it.
-
- TENEX
- See description under TYPE TENEX.
-
- ASCII
- See description under TYPE ASCII.
-
- VERBOSE
- This command sets the command completion/no completion flag. The
- program assumes the NO VERBOSE mode and thus does not complete
- commands when <space> or <eol> is used as a command terminator It also
- causes the noise words to be typed if in the verbose mode.
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [Page 8]
-
- User FTP Documentation Detailed Command Listing
-
-
- V. Sample Session using the FTP
-
- The following scenario shows some uses of the FTP.
- Everything that the user types is underlined.
-
- UTAH-TENEX 1.29.03 EXEC 1.38
- LOGIN (USER) HICKS (PASSOWRD) (ACCOUNT #) 1200
- JOB 24 ON TTY2 11-NOV-72 1:51
- TERMINAL (TYPE IS) 4
- ftp
- FTP User Process 1.10 5-NOV-72. Type Help<cr> for help.
- !login (user) network (password) (account) 4 (to host) case-10
- CONNECTION IS OPEN TO CASE-10.
- < CASE-10 FTP Server 1.14.0 - at SAT 11-NOV-72 2:00-EST
- !tenex ? confirm with carriage return
- tenex
- !copy remote (remote group) ftp.*
- Please be patient. Getting remote file-names.
- Got them.
- !copy (file) <NETWORK>FTP.MAC:32 (no file) ftp.mac [new file]
- < IMAGE retreive of <NETWORK>FTP.MAC;32 startet.
- < Transfer completed.
- !copy (file) <NETWORK>FTP.SAV;5 (fo file) FTP.SAV;5 [new version]
- < IMAGE retreive of <NETWORK>FTP.SAV;5 started.
- < Transfer completed.
- !copy (file) <NETWORK>FTP.REL;1 (to file) xxx
- !copy (file) <NETWORK>FTP.HELP;5 (to file) ftp.help [New version]
- copy (file) <NETWORK>FTP.HELP;5 (to file) FTP.HELP;1
- < IMAGE retreive of <NETWORK>FTP.HELP;5 started.
- < Transfer completed.
- Done...
- !usc-isi
- Closing connections to CASE-10.
- CONNECTION IS OPEN TO USC-ISI.
- < USC-ISI FTP Server 1.14.0 - at SAT 11-NOV-72 2:15-PST
- !log
- user hicks
- (password)
- (account) ? account number or string for remote user's name
- log
- (user) hicks
- (password)
- (account) |
- !send (local file) ftp.sav;5 (to remote file) ftp.sav
- < STORE of <HICKS>FTP.SAV;P777752;a|, IMAGE type, started.
- < Transfer completed.
- !cp r acs.mac (to local file) acs.mac [new file]
- < IMAGE Retreive of <HICKS>ACS.MAC;3 started.
-
-
-
- [Page 9]
-
- User FTP Documentation Detailed Command Listing
-
-
- < Transfer completed.
- !copy 1 ? Local file group, *'s ok - TENEX sites only,
- copy 1 ftp.*
- [Confirm]
- < Store of <HICKS>FTP.MAC;1;P777752;A1, IMAGE type, Started.
- < Transfer completed.
- < Store of <HICKS>FTP.SAV;2;P777753;A1, IMAGE type, Started.
- < Transfer completed.
- < copy of <HICKS>FTP.HELP;1;P777752;A1 IMAGE type, Started,
- < Transfer completed.
- !bye
- !< BYE command recieved.
- < Therefore connection terminated.
- logout
- [logout message go here]
-
-
-
-
-
-
- [ This RFC was put into machine readable form for entry ]
- [ into the online RFC archives by Gottfried Janik 6/97 ]
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- [Page 10]
-
-