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. |
Windows Error Codes