


      FFFFTTTTPPPPDDDD((((1111))))                     ((((bbbbssssdddd 4444....2222))))                     FFFFTTTTPPPPDDDD((((1111))))



      NNNNAAAAMMMMEEEE
           ftpd - DARPA Internet File Transfer Protocol server

      SSSSYYYYNNNNTTTTAAAAXXXX
           ////eeeettttcccc////ffffttttppppdddd [ ----dddd ] [ ----llll ] [ ----tttttimeout ]

      DDDDEEEESSSSCCCCRRRRIIIIPPPPTTTTIIIIOOOONNNN
           _F_t_p_d is the DARPA Internet File Transfer Prototocol server
           process.  The server uses the TCP protocol and listens at
           the port specified in the ``ftp'' service specification; see
           _s_e_r_v_i_c_e_s(4).

           If the ----dddd option is specified, each socket created will have
           debugging turned on (SO_DEBUG).  With debugging enabled, the
           system will trace all TCP packets sent and received on a
           socket.

           If the ----llll option is specified, each ftp session is logged on
           the standard output.  This allows a line of the form
           `/etc/ftpd -l > /tmp/ftplog'' to be used to conveniently
           maintain a log of ftp sessions.

           The ftp server will timeout an inactive session after 60
           seconds.  If the ----tttt option is specified, the inactivity
           timeout period will be set to _t_i_m_e_o_u_t.

           The ftp server currently supports the following ftp
           requests;  case is not distinguished.

           RRRReeeeqqqquuuueeeesssstttt        DDDDeeeessssccccrrrriiiippppttttiiiioooonnnn
           ACCT           specify account (ignored)
           ALLO           allocate storage (vacuously)
           APPE           append to a file
           CWD            change working directory
           DELE           delete a file
           HELP           give help information
           LIST           give list files in a directory (``ls -lg'')
           MODE           specify data transfer _m_o_d_e
           NLST           give name list of files in directory (``ls'')
           NOOP           do nothing
           PASS           specify password
           PORT           specify data connection port
           QUIT           terminate session
           RETR           retrieve a file
           RNFR           specify rename-from file name
           RNTO           specify rename-to file name
           STOR           store a file
           STRU           specify data transfer _s_t_r_u_c_t_u_r_e
           TYPE           specify data transfer _t_y_p_e
           USER           specify user name
           XCUP           change to parent of current working directory
           XCWD           change working directory



      Page 1                                                   (9010-E)






      FFFFTTTTPPPPDDDD((((1111))))                     ((((bbbbssssdddd 4444....2222))))                     FFFFTTTTPPPPDDDD((((1111))))



           XMKD           make a directory
           XPWD           print the current working directory
           XRMD           remove a directory

           The remaining ftp requests specified in Internet RFC 765 are
           recognized, but not implemented.

           _F_t_p_d interprets file names according to the ``globbing''
           conventions used by _c_s_h(1).  This allows users to utilize
           the metacharacters ``*?[]{}~''.

           _F_t_p_d authenticates users according to three rules.

           1)   The user name must be in the password data base,
                /_e_t_c/_p_a_s_s_w_d, and not have a null password.  In this
                case a password must be provided by the client before
                any file operations may be performed.

           2)   The user name must not appear in the file
                /_e_t_c/_f_t_p_u_s_e_r_s.

           3)   If the user name is ``anonymous'' or ``ftp'', an
                anonymous ftp account must be present in the password
                file (user ``ftp'').  In this case the user is allowed
                to log in by specifying any password (by convention
                this is given as the client host's name).

      SSSSEEEEEEEE AAAALLLLSSSSOOOO
           ftp(1)

      BBBBUUUUGGGGSSSS
           There is no support for aborting commands.

           The anonymous account is inherently dangerous and should be
           avoided when possible.

           The server must run as the super-user to create sockets with
           privileged port numbers.  It maintains an effective user id
           of the logged-in user, reverting to the super-user only when
           binding addresses to sockets.  The possible security holes
           have been scrutinized, but are incomplete.














      Page 2                                                   (9010-E)



