Registry Included Below
John Klensin
Note: An IESG Standards Action is allowed to direct IANA to change theConformance Requirements listed for any entry. The following commands are part of the base FTP specification[RFC959] and are listed in the registry with the immutable pseudoFEAT code "base".Mandatory commands:ABOR, ACCT, ALLO, APPE, CWD, DELE, HELP, LIST, MODE, NLST, NOOP,PASS, PASV, PORT, QUIT, REIN, REST, RETR, RNFR, RNTO, SITE, STAT,STOR, STRU, TYPE, USEROptional commands:CDUP, MKD, PWD, RMD, SMNT, STOU, SYSTNote: STD 3 [RFC1123] clarified and updated the status andimplementation requirements of these standard FTP commands, and itcontains important complementary information for the followingcommands:LIST, NLST, PASV, REST, SITE, STOUThe following commands were specified as experimental in an extensionto an early version of the FTP specification [RFC775] but laterdeprecated by [RFC1123], because Standard FTP [RFC959]specifies their standard successors. They are listed in the registrywith the immutable pseudo FEAT code "hist".XCUP, XCWD, XMKD, XPWD, XRMDImplementation note: Deployed FTP clients still make use of thedeprecated commands and most FTP servers support them as aliasesfor the standard commands.The following commands were specified as part of the "FOOBAR" IPngeffort in [RFC1545] and, later, [RFC1639] and arenow obsolete. They are listed in the registry with the immutablepseudo FEAT code "hist".LPRT, LPSVLegend for the registry: o cmd (Command Name) Amended versions of commands are tagged with a trailing "+" o FEAT Code Keyword returned in FEAT response line for this command/extension: - actual FEAT codes are given in upper case - placeholders (pseudo FEAT codes) are shown in lower case - "-N/A-" indicates a feature not related to one particular command See the "Extension name" clause in Section 2.2 of [RFC5797] for details. o description Brief description of command / extension o type (Command Type) Type or "kind" of command, based on Section 4.1 of [RFC959]: 'a' ... access control 'p' ... parameter setting 's' ... service execution Combinations like 'p/s' are possible. o conf (Conformance Requirements) Expectation for support in modern FTP implementations: 'm' ... mandatory to implement 'o' ... optional 'h' ... historic
| Range | Registration Procedures |
|---|---|
| registration marked "mandatory" ('m' in the "conf" column) | Standards Action |
| all other registrations | Specification Required |
| cmd | FEAT code | description | type | conf | References and Notes |
|---|---|---|---|---|---|
| ABOR | base | Abort | s | m | [RFC959] |
| ACCT | base | Account | a | m | [RFC959] |
| ADAT | secu | Authentication/Security Data | a | o | [RFC2228] [RFC2773] [RFC4217] |
| ALGS | FTP64 ALG status | o | [RFC6384] Section 11 | ||
| ALLO | base | Allocate | s | m | [RFC959] |
| APPE | base | Append (with create) | s | m | [RFC959] |
| AUTH | secu | Authentication/Security Mechanism | a | o | [RFC2228] |
| AUTH+ | AUTH | Authentication/Security Mechanism | a | o | [2][RFC2773][RFC4217] |
| CCC | secu | Clear Command Channel | a | o | [RFC2228] |
| CDUP | base | Change to Parent Directory | a | o | [RFC959] |
| CONF | secu | Confidentiality Protected Command | a | o | [RFC2228] |
| CWD | base | Change Working Directory | a | m | [RFC959] |
| DELE | base | Delete File | s | m | [RFC959] |
| ENC | secu | Privacy Protected Command | a | o | [RFC2228] [RFC2773] [RFC4217] |
| EPRT | nat6 | Extended Port | p | o | [RFC2428] |
| EPSV | nat6 | Extended Passive Mode | p | o | [RFC2428] |
| FEAT | feat | Feature Negotiation | a | m [1] | [RFC2389] |
| HELP | base | Help | s | m | [RFC959] |
| HOST | HOST | Hostname | a | o | [RFC7151] |
| LANG | UTF8 | Language (for Server Messages) | p | o | [RFC2640] |
| LIST | base | List | s | m | [RFC959][RFC1123] |
| LPRT | hist | Data Port {FOOBAR} | p | h | [RFC1545][RFC1639] |
| LPSV | hist | Passive Mode {FOOBAR} | p | h | [RFC1545][RFC1639] |
| MDTM | MDTM | File Modification Time | s | o | [RFC3659] |
| MIC | secu | Integrity Protected Command | a | o | [RFC2228][RFC2773] [RFC4217] |
| MKD | base | Make Directory | s | o | [RFC959] |
| MLSD | MLST | List Directory (for machine) | s | o | [RFC3659] |
| MLST | MLST | List Single Object | s | o | [RFC3659] |
| MODE | base | Transfer Mode | p | m | [RFC959] |
| NLST | base | Name List | s | m | [RFC959][RFC1123] |
| NOOP | base | No-Op | s | m | [RFC959] |
| OPTS | feat | Options | p | m [1] | [RFC2389] |
| PASS | base | Password | a | m | [RFC959] |
| PASV | base | Passive Mode | p | m | [RFC959][RFC1123] |
| PBSZ | secu | Protection Buffer Size | p | o | [RFC2228] |
| PBSZ+ | PBSZ | Protection Buffer Size | p | o | [RFC4217] |
| PORT | base | Data Port | p | m | [RFC959] |
| PROT | secu | Data Channel Protection Level | p | o | [RFC2228] |
| PROT+ | PROT | Data Channel Protection Level | p | o | [RFC4217] |
| PWD | base | Print Directory | s | o | [RFC959] |
| QUIT | base | Logout | a | m | [RFC959] |
| REIN | base | Reinitialize | a | m | [RFC959] |
| REST | base | Restart | s/p | m | [RFC959][RFC1123] |
| REST+ | REST | Restart (for STREAM mode) | s/p | m | [3][RFC3659] |
| RETR | base | Retrieve | s | m | [RFC959] |
| RMD | base | Remove Directory | s | o | [RFC959] |
| RNFR | base | Rename From | s/p | m | [RFC959] |
| RNTO | base | Rename To | s | m | [RFC959][RFC Errata 5748] |
| SITE | base | Site Parameters | s | m | [RFC959][RFC1123] |
| SIZE | SIZE | File Size | s | o | [RFC3659] |
| SMNT | base | Structure Mount | a | o | [RFC959] |
| STAT | base | Status | s | m | [RFC959] |
| STOR | base | Store | s | m | [RFC959] |
| STOU | base | Store Unique | a | o | [RFC959][RFC1123] |
| STRU | base | File Structure | p | m | [RFC959] |
| SYST | base | System | s | o | [RFC959] |
| TYPE | base | Representation Type | p | m | [4][RFC959] |
| USER | base | User Name | a | m | [RFC959] |
| XCUP | hist | {precursor for CDUP} | s | h | [RFC775] [RFC1123] |
| XCWD | hist | {precursor for CWD} | s | h | [RFC775] [RFC1123] |
| XMKD | hist | {precursor for MKD} | s | h | [RFC775] [RFC1123] |
| XPWD | hist | {precursor for PWD} | s | h | [RFC775] [RFC1123] |
| XRMD | hist | {precursor for RMD} | s | h | [RFC775] [RFC1123] |
| -N/A- | TVFS | Trivial Virtual File Store | p | o | [RFC3659] |
| [1] | While an IETF Standards Action would be required to make the FEATmechanism [RFC2389] mandatory, implementation of that extensionmechanism is clearly required in conjunction with any extension orfeature that depends on it. |
| [2] | FEAT String for [RFC4217]: AUTH TLSFEAT String for [RFC2773]: AUTH KEA-SKIPJACK |
| [3] | FEAT String: REST STREAM |
| [4] | FEAT String: TYPE {semicolon-separated list of supported types} |