File Transfer Status and Error Codes


THE INFORMATION IN THIS ARTICLE APPLIES TO:

  • EFT Server all versions
  • CuteFTP® all versions
DISCUSSION

During FTP sessions, servers send and receive various numbered codes to/from FTP clients. Some codes represent errors, most others simply communicate the status of the connection. Below are brief explanations for the most common status and error codes.

When determining a course of action, review the entire log; some codes are informational only, others indicate that you have entered the wrong information, and others indicate what the information is that you need to provide before continuing.

For troubleshooting CuteFTP connection problems, also refer to Troubleshooting CuteFTP Connection Problems.

The table below is provided so that you have some idea whether you can solve the issue on your own (e.g., code 331=you need to provide a password) or you need to call your ISP for assistance (e.g., code 426=you are unable to connect to the remote server). These codes are used by most FTP servers/clients.

NOTE: The information below is only offered as a courtesy to assist you in telling your Internet Service Provider what the error is so that they can help solve your issue. For example, if you get a code 426, the transfer was aborted and the connection closed. The solution to this error is to "try logging back in; contact your hosting provider to check if you need to increase your hosting account; try disabling the firewall on your PC to see if that solves the problem. If not, contact your hosting provider or ISP."

The list below contains standard FTP or SFTP codes. Numbers outside this list are proprietary to the Server or Client that you are using.

FTP

Code Description Discussion
100 Series The requested action was initiated; expect another reply before proceeding with a new command.
110 Restart marker reply. The text is exact and not left to the particular implementation; it must read "MARK yyyy = mmmm" where yyyy is User-process data stream marker, and mmmm server's equivalent marker (note the spaces between markers and "=").
120 Service ready in nn minutes. (Informational)
125 Data Connection already open; transfer starting. (Informational)
150 File status okay; about to open data connection. FTP uses two ports: 21 for sending commands, and 20 for sending data. A status code of 150 indicates that the server is about to open a new connection on port 20 to send some data.
200 Series The requested action has been successfully completed.
200 Command okay. (Informational)
202 Command not implemented, superfluous at this site. (Informational)
211 System status, or system help reply. (Informational)
212 Directory status. (Informational)
213 File status. (Informational)
214 Help message. (Informational)
215 NAME system type. Where NAME is an official system name from the list in the Assigned Numbers document.
220 Service ready for new user. (Informational)
221 Service closing control connection. Logged out if appropriate.
225 Data connection open; no transfer in progress. (Informational)
226 Closing data connection. Requested file action successful (for example; file transfer or file abort). The command opens a data connection on port 20 to perform an action, such as transferring a file. This action successfully completes, and the data connection is closed.
227 Entering Passive Mode. (h1,h2,h3,h4,p1,p2)
230 User logged in, proceed. This status code appears after the client sends the correct password. It indicates that the user has successfully logged on. (Informational)
250 Requested file action okay, completed. (Informational)
257 "PATHNAME" created. (Informational)
300 Series The command has been accepted, but the requested action is on hold, pending receipt of further information.
331 User name okay, need password. You see this status code after the client sends a user name, regardless of whether the user name that is provided is a valid account on the system.
332 Need account for login. Provide login credentials
350 Requested file action pending further information. (Informational)
400 Series The command was not accepted and the requested action did not take place, but the error condition is temporary and the action may be requested again.
421 Error 421 Service not available, closing control connection. Error 421 User limit reached Error 421 You are not authorized to make the connection Error 421 Max connections reached Error 421 Max connections exceeded This can be a reply to any command if the service knows it must shut down. Try logging in later.
425 Cannot open data connection. Change from PASV to PORT mode, check your firewall settings, or try to connect via HTTP.
426 Connection closed; transfer aborted. The command opens a data connection to perform an action, but that action is canceled, and the data connection is closed. Try logging back in; contact your hosting provider to check if you need to increase your hosting account; try disabling the firewall on your PC to see if that solves the problem. If not, contact your hosting provider or ISP.
450 Requested file action not taken. File unavailable (e.g., file busy). Try again later.
451 Requested action aborted: local error in processing. Ensure command and parameters were typed correctly.
452 Requested action not taken. Insufficient storage space in system. Ask FTP administrator to increase allotted storage space, or archive/delete remote files.
500 Series The command was not accepted and the requested action did not take place.
500 Syntax error, command unrecognized, command line too long. Try switching to passive mode.
501 Syntax error in parameters or arguments. Verify your input; e.g., make sure there are no erroneous characters, spaces, etc.
502 Command not implemented. The server does not support this command.
503 Bad sequence of commands. Verify command sequence.
504 Command not implemented for that parameter. Ensure entered parameters are correct.
530 User not logged in. Ensure that you typed the correct user name and password combination. Some servers use this code instead of 421 when the user limit is reached
532 Need account for storing files. Logged in user does not have permission to store files on remote server.
550 Requested action not taken. File unavailable, not found, not accessible Verify that you are attempting to connect to the correct server/location. The administrator of the remote server must provide you with permission to connect via FTP.
552 Requested file action aborted. Possible causes: Client aborted the action; EFT Site not running; storage allocation exceeded.
553 Requested action not taken. File name not allowed. Change the file name or delete spaces/special characters in the file name.

 HTTP/S

The table below describes errors that can occur during EFT transfers over HTTP/S. For a complete reference of HTTP status and error codes visit: HTTP response status codes - HTTP 

Code Description
400 Bad Request
Malformed header; bytes uploaded is less than content length; bad query parameter
 401 Unauthorized  Login failed or unknown user agent
 403 Forbidden

DELETE:  when user lacks permission, file locked by another operation, or action denied due to file name restriction.

GET:  when user lacks permission, file locked by another operation, or action denied due to file name restriction.

MKCOL, MOVE, PUT:  when user lacks permission, file locked by another operation, or action denied due to file name restriction (or MOVE non-existent item)

Attempt to MKCOL using existing folder name

Destination path on server exceeds max length (260)

404 Not Found 

DELETE, GET: of non-existent file

CRC failed because file was locked

HEAD on non-existent file/folder

GET on non-existent folder

    406 Not Acceptable
 Bad header value, i.e., invalid content range
408 Request Time-out  Socket timed out on request
411 Length Required
 POST with invalid file length (< 0)
412 Precondition Failed
 action attempted after session has timed out
413 Request Entity Too Large

Attempted GET after download quota reached.

Attempted PUT after the maximum amount of upload data (quota) transferred

Attempted PUT after the maximum number of uploads performed

POST too large of a file

414 Request-URI Too Large  URI exceeds max (4096) length
 500 Internal Server Error  Disk full when PUT/POST attempted or unspecified abort of PUT
501 Not Implemented
 Unimplemented request method or unspecified disk IO error during processing of COPY request

SFTP

The table below describes errors that can occur during EFT transfers over SFTP for additional codes visit SFTP Status/Error Codes

Code Description
-1 Undefined or unknown error (not enough information to determine exactly why it failed)
When an OpenSSH client disconnects from EFT, it reports that the exit status is -1. The default return code is -1, unless an optional message is returned from the server. EFT does not return the optional message, so the exit status is always -1.
0 The operation completed successfully
1 The operation failed because of trying to read at end of file
2
The requested file does not exist
3
Insufficient privileges to perform the operation
4 The requested operation failed for some other reason
5 A badly formatted message was received. This indicates an error or incompatibility in the protocol implementation
6 Connection has not been established (yet) and a timeout occurred
7 Connection to the server was lost, and the operation could not be performed
8  A timeout occurred

EFT Event Rules Client Log

A tenth column can be added to the CL log by defining an advanced property. Refer to 10262, EFT Server Client Log Explained for details.

EFT Event Rules Client Session Log Files

Refer to ClientFTP.DLL Enable Logging Override for information in how to enable EFT Client Session Logs.

Network Socket

Code Description Discussion
10000 Series Common Winsock Error Codes (complete list of Winsock error codes)
10054 WSAECONNRESET. Connection reset by peer. The connection was forcibly closed by the remote host. (Informational)
10060 WSAETIMEDOUT. Connection timed out.
A connection attempt failed because the connected party did not properly respond after a period of time, or the established connection failed because the connected host has failed to respond
Generally a time-out error. Try switching from PASV to PORT mode, or try increasing the time-out value.
10061 WSAECONNREFUSED. Connection refused.
No connection could be made because the target computer actively refused it. This usually results from trying to connect to a service that is inactive on the foreign host—that is, one with no server application running.
Try switching the connection port.
10066 WSAENOTEMPTY. Directory not empty. Cannot remove a directory that is not empty. The server will not delete this directory while there are files/folders in it. If you want to remove the directory, first archive or delete the files in it.
10068 WSAEUSERS. User quota exceeded. Ran out of user quota.     
11001  WSAHOST_NOT_FOUND. Host not found. No such host is known. The name is not an official host name or alias, or it cannot be found in the database(s) being queried. This error may also be returned for protocol and service queries, and means that the specified name could not be found in the relevant database.  

 Windows Error Codes