error codes documented
authorDaniel Stenberg <daniel@haxx.se>
Wed, 10 Apr 2002 13:24:45 +0000 (13:24 +0000)
committerDaniel Stenberg <daniel@haxx.se>
Wed, 10 Apr 2002 13:24:45 +0000 (13:24 +0000)
docs/libcurl/libcurl-errors.3 [new file with mode: 0644]

diff --git a/docs/libcurl/libcurl-errors.3 b/docs/libcurl/libcurl-errors.3
new file mode 100644 (file)
index 0000000..ceeb56d
--- /dev/null
@@ -0,0 +1,233 @@
+.\" You can view this file with:
+.\" nroff -man [file]
+.\" $Id$
+.\"
+.TH libcurl-errors 3 "10 April 2002" "libcurl 7.9.6" "libcurl errors"
+.SH NAME
+error codes in libcurl
+.SH DESCRIPTION
+This man page includes most, if not all, available error codes in libcurl.
+Why they occur and possibly what you can do to fix the problem.
+.SH "CURLcode"
+Almost all "easy" interface functions return a CURLcode error code. No matter
+what, using \fICURLOPT_ERRORBUFFER\fP is a good idea as it will give you a
+human readable error string that may offer more details about the error cause
+than just the error code does. CURLcode is one of the following:
+.RS 1
+.TP 5
+.B CURLE_OK (0)
+All fine. Proceed as usual.
+.TP
+.B CURLE_UNSUPPORTED_PROTOCOL (1)
+The URL you passed to libcurl used a protocol that this libcurl does not
+support. The support might be a compile-time option that you didn't use, it
+can be a misspelled protocol string or just a protocol libcurl has no code
+for.
+.TP
+.B CURLE_FAILED_INIT (2)
+Very early initialization code failed. This is likely to be an internal error
+or problem.
+.TP
+.B CURLE_URL_MALFORMAT (3)
+The URL was not properly formatted.
+.TP
+.B CURLE_URL_MALFORMAT_USER (4)
+URL user malformatted. The user-part of the URL syntax was not correct.
+.TP
+.B CURLE_COULDNT_RESOLVE_PROXY (5)
+Couldn't resolve proxy. The given proxy host could not be resolved.
+.TP
+.B CURLE_COULDNT_RESOLVE_HOST (6)
+Couldn't resolve host. The given remote host was not resolved.
+.TP
+.B CURLE_COULDNT_CONNECT (7)
+Failed to connect() to host or proxy.
+.TP
+.B CURLE_FTP_WEIRD_SERVER_REPLY (8)
+After connecting to a FTP server, libcurl expects to get a certain reply back.
+This error code implies that it god a strange or bad reply. The given remote
+server is probably not an OK FTP server.
+.TP
+.B CURLE_FTP_ACCESS_DENIED (9)
+We were denied access when trying to login to an FTP server or when trying to
+change working directory to the one given in the URL.
+.TP
+.B CURLE_FTP_USER_PASSWORD_INCORRECT (10)
+The username and/or the password were incorrect when trying to login to an FTP
+server.
+.TP
+.B CURLE_FTP_WEIRD_PASS_REPLY (11)
+After having sent the FTP password to the server, libcurl expects a proper
+reply. This error code indicates that an unexpected code was returned.
+.TP
+.B CURLE_FTP_WEIRD_USER_REPLY (12)
+After having sent user name to the FTP server, libcurl expects a proper
+reply. This error code indicates that an unexpected code was returned.
+.TP
+.B CURLE_FTP_WEIRD_PASV_REPLY (13)
+libcurl failed to get a sensible result back from the server as a response to
+either a PASV or a EPSV command. The server is flawed.
+.TP
+.B CURLE_FTP_WEIRD_227_FORMAT (14)
+FTP servers return a 227-line as a response to a PASV command. If libcurl
+fails to parse that line, this return code is passed back.
+.TP
+.B CURLE_FTP_CANT_GET_HOST (15)
+An internal failure to lookup the host used for the new connection.
+.TP
+.B CURLE_FTP_CANT_RECONNECT (16)
+A bad return code on either PASV or EPSV was sent by the FTP server,
+preventing libcurl from being able to continue.
+.TP
+.B CURLE_FTP_COULDNT_SET_BINARY (17)
+Received an error when trying to set the transfer mode to binary.
+.TP
+.B CURLE_PARTIAL_FILE (18)
+A file transfer was shorter or larger than expected. This happens when the
+server first reports an expected transfer size, and then delivers data that
+doesn't match the previously given size.
+.TP
+.B CURLE_FTP_COULDNT_RETR_FILE (19)
+This was either a weird reply to a 'RETR' command or a zero byte transfer
+complete.
+.TP
+.B CURLE_FTP_WRITE_ERROR (20)
+After a completed file transfer, the FTP server did not respond a proper
+\"transfer successful\" code.
+.TP
+.B CURLE_FTP_QUOTE_ERROR (21)
+When sending custom "QUOTE" commands to the remote server, one of the commands
+returned an error code that was 400 or higher.
+.TP
+.B CURLE_HTTP_NOT_FOUND (22)
+This is returned if CURLOPT_FAILONERROR is set TRUE and the HTTP server
+returns an error code that is >= 400.
+.TP
+.B CURLE_WRITE_ERROR (23)
+This error message is in fact used for two different kinds of write
+errors. (This fact should be corrected in future versions of libcurl.) The
+first kind of write this error code might refer to, is for errors that occurs
+when writing received data to a local file, the other kind is when we get
+problems writing data to a remote server.
+.TP
+.B CURLE_MALFORMAT_USER (24)
+Malformat user. User name badly specified. *Not currently used*
+.TP
+.B CURLE_FTP_COULDNT_STOR_FILE (25)
+FTP couldn't STOR file. The server denied the STOR operation. The error buffer
+usually contains the server's explanation to this.
+.TP
+.B CURLE_READ_ERROR (26)
+This error is returned both for errors when reading a local file, as well as
+when getting problems when reading network data.
+.TP
+.B CURLE_OUT_OF_MEMORY (27)
+Out of memory. A memory allocation request failed. This is serious badness and
+things are severly screwed up if this ever occur.
+.TP
+.B CURLE_OPERATION_TIMEOUTED (28)
+Operation timeout. The specified time-out period was reached according to the
+conditions.
+.TP
+.B CURLE_FTP_COULDNT_SET_ASCII (29)
+libcurl failed to set ASCII transfer type (TYPE A).
+.TP
+.B CURLE_FTP_PORT_FAILED (30)
+The FTP PORT command returned error. This mostly happen when you haven't
+specified a good enough address for libcurl to use. See \fICURLOPT_FTPPORT\fP.
+.TP
+.B CURLE_FTP_COULDNT_USE_REST (31)
+The FTP REST command returned error. This should never happen if the server is
+sane.
+.TP
+.B CURLE_FTP_COULDNT_GET_SIZE (32)
+The FTP SIZE command returned errror. SIZE is not a kosher FTP command, it is
+an extension and not all servers support it. This is not a surprising error.
+.TP
+.B CURLE_HTTP_RANGE_ERROR (33)
+The HTTP server does not support or accept range requests.
+.TP
+.B CURLE_HTTP_POST_ERROR (34)
+This is an odd error that mainly occurs due to internal confusion.
+.TP
+.B CURLE_SSL_CONNECT_ERROR (35)
+A problem occured somewhere in the SSL/TLS handshake. You really want the
+error buffer and read the message there as it pinpoints the problem slightly
+more. Could be certificates (file formats, paths, permissions), passwords, and
+others.
+.TP
+.B CURLE_FTP_BAD_DOWNLOAD_RESUME (36)
+Attempting FTP resume beyond file size.
+.TP
+.B CURLE_FILE_COULDNT_READ_FILE (37)
+A file given with FILE:// couldn't be opened. Most likely because the file
+path doesn't identify an existing file. Did you check file permissions?
+.TP
+.B CURLE_LDAP_CANNOT_BIND (38)
+LDAP cannot bind. LDAP bind operation failed.
+.TP
+.B CURLE_LDAP_SEARCH_FAILED (39)
+LDAP search failed.
+.TP
+.B CURLE_LIBRARY_NOT_FOUND (40)
+Library not found. The LDAP library was not found.
+.TP
+.B CURLE_FUNCTION_NOT_FOUND (41)
+Function not found. A required LDAP function was not found.
+.TP
+.B CURLE_ABORTED_BY_CALLBACK (42)
+Aborted by callback. A callback returned "abort" to libcurl.
+.TP
+.B CURLE_BAD_FUNCTION_ARGUMENT (43)
+Internal error. A function was called with a bad parameter.
+.TP
+.B CURLE_BAD_CALLING_ORDER (44)
+Internal error. A function was called in a bad order.
+.TP
+.B CURLE_HTTP_PORT_FAILED (45)
+Interface error. A specified outgoing interface could not be used. Set which
+interface to use for outgoing connections' source IP address with
+CURLOPT_INTERFACE.
+.TP
+.B CURLE_BAD_PASSWORD_ENTERED (46)
+Bad password entered. An error was signaled when the password was
+entered. This can also be the result of a "bad password" returned from a
+specified password callback.
+.TP
+.B CURLE_TOO_MANY_REDIRECTS (47)
+Too many redirects. When following redirects, libcurl hit the maximum amount.
+Set your limit with CURLOPT_MAXREDIRS.
+.TP
+.B CURLE_UNKNOWN_TELNET_OPTION (48)
+An option set with CURLOPT_TELNETOPTIONS was not recognized/known. Refer to
+the appropriate documentation.
+.TP
+.B CURLE_TELNET_OPTION_SYNTAX (49)
+A telnet option string was Illegally formatted.
+.TP
+.B CURLE_OBSOLETE (50)
+This is not an error. This used to be another error code in an old libcurl
+version and is currently unused.
+.TP
+.B CURLE_SSL_PEER_CERTIFICATE (51)
+The remote server's SSL certificate was deemed not OK.
+.TP
+.B CURLE_GOT_NOTHING (52)
+Nothing was returned from the server, and under the circumstances, getting
+nothing is considered an error.
+.TP
+.B CURLE_SSL_ENGINE_NOTFOUND (53)
+The specified crypto engine wasn't found.
+.TP
+.B CURLE_SSL_ENGINE_SETFAILED (54)
+Failed setting the selected SSL crypto engine as default!
+
+.TP
+.B CURL_LAST
+This is not an error, but in the curl/curl.h file this can be used to know how
+many existing error codes there are.
+.RE
+
+.SH "CURLMcode"
+This is the generic return code used by functions in the libcurl multi
+interface.