Mercurial > hgrepos > Python2 > PyMuPDF
comparison mupdf-source/thirdparty/curl/docs/libcurl/libcurl-errors.3 @ 2:b50eed0cc0ef upstream
ADD: MuPDF v1.26.7: the MuPDF source as downloaded by a default build of PyMuPDF 1.26.4.
The directory name has changed: no version number in the expanded directory now.
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Mon, 15 Sep 2025 11:43:07 +0200 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 1:1d09e1dec1d9 | 2:b50eed0cc0ef |
|---|---|
| 1 .\" ************************************************************************** | |
| 2 .\" * _ _ ____ _ | |
| 3 .\" * Project ___| | | | _ \| | | |
| 4 .\" * / __| | | | |_) | | | |
| 5 .\" * | (__| |_| | _ <| |___ | |
| 6 .\" * \___|\___/|_| \_\_____| | |
| 7 .\" * | |
| 8 .\" * Copyright (C) 1998 - 2018, Daniel Stenberg, <daniel@haxx.se>, et al. | |
| 9 .\" * | |
| 10 .\" * This software is licensed as described in the file COPYING, which | |
| 11 .\" * you should have received as part of this distribution. The terms | |
| 12 .\" * are also available at https://curl.haxx.se/docs/copyright.html. | |
| 13 .\" * | |
| 14 .\" * You may opt to use, copy, modify, merge, publish, distribute and/or sell | |
| 15 .\" * copies of the Software, and permit persons to whom the Software is | |
| 16 .\" * furnished to do so, under the terms of the COPYING file. | |
| 17 .\" * | |
| 18 .\" * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY | |
| 19 .\" * KIND, either express or implied. | |
| 20 .\" * | |
| 21 .\" ************************************************************************** | |
| 22 .\" | |
| 23 .TH libcurl-errors 3 "1 Jan 2010" "libcurl 7.20.0" "libcurl errors" | |
| 24 .SH NAME | |
| 25 libcurl-errors \- error codes in libcurl | |
| 26 .SH DESCRIPTION | |
| 27 This man page includes most, if not all, available error codes in libcurl. | |
| 28 Why they occur and possibly what you can do to fix the problem are also included. | |
| 29 .SH "CURLcode" | |
| 30 Almost all "easy" interface functions return a CURLcode error code. No matter | |
| 31 what, using the \fIcurl_easy_setopt(3)\fP option \fICURLOPT_ERRORBUFFER(3)\fP | |
| 32 is a good idea as it will give you a human readable error string that may | |
| 33 offer more details about the cause of the error than just the error code. | |
| 34 \fIcurl_easy_strerror(3)\fP can be called to get an error string from a given | |
| 35 CURLcode number. | |
| 36 | |
| 37 CURLcode is one of the following: | |
| 38 .IP "CURLE_OK (0)" | |
| 39 All fine. Proceed as usual. | |
| 40 .IP "CURLE_UNSUPPORTED_PROTOCOL (1)" | |
| 41 The URL you passed to libcurl used a protocol that this libcurl does not | |
| 42 support. The support might be a compile-time option that you didn't use, it | |
| 43 can be a misspelled protocol string or just a protocol libcurl has no code | |
| 44 for. | |
| 45 .IP "CURLE_FAILED_INIT (2)" | |
| 46 Very early initialization code failed. This is likely to be an internal error | |
| 47 or problem, or a resource problem where something fundamental couldn't get | |
| 48 done at init time. | |
| 49 .IP "CURLE_URL_MALFORMAT (3)" | |
| 50 The URL was not properly formatted. | |
| 51 .IP "CURLE_NOT_BUILT_IN (4)" | |
| 52 A requested feature, protocol or option was not found built-in in this libcurl | |
| 53 due to a build-time decision. This means that a feature or option was not | |
| 54 enabled or explicitly disabled when libcurl was built and in order to get it | |
| 55 to function you have to get a rebuilt libcurl. | |
| 56 .IP "CURLE_COULDNT_RESOLVE_PROXY (5)" | |
| 57 Couldn't resolve proxy. The given proxy host could not be resolved. | |
| 58 .IP "CURLE_COULDNT_RESOLVE_HOST (6)" | |
| 59 Couldn't resolve host. The given remote host was not resolved. | |
| 60 .IP "CURLE_COULDNT_CONNECT (7)" | |
| 61 Failed to connect() to host or proxy. | |
| 62 .IP "CURLE_FTP_WEIRD_SERVER_REPLY (8)" | |
| 63 The server sent data libcurl couldn't parse. This error code is used for more | |
| 64 than just FTP and is aliased as \fICURLE_WEIRD_SERVER_REPLY\fP since 7.51.0. | |
| 65 .IP "CURLE_REMOTE_ACCESS_DENIED (9)" | |
| 66 We were denied access to the resource given in the URL. For FTP, this occurs | |
| 67 while trying to change to the remote directory. | |
| 68 .IP "CURLE_FTP_ACCEPT_FAILED (10)" | |
| 69 While waiting for the server to connect back when an active FTP session is | |
| 70 used, an error code was sent over the control connection or similar. | |
| 71 .IP "CURLE_FTP_WEIRD_PASS_REPLY (11)" | |
| 72 After having sent the FTP password to the server, libcurl expects a proper | |
| 73 reply. This error code indicates that an unexpected code was returned. | |
| 74 .IP "CURLE_FTP_ACCEPT_TIMEOUT (12)" | |
| 75 During an active FTP session while waiting for the server to connect, the | |
| 76 \fICURLOPT_ACCEPTTIMEOUT_MS(3)\fP (or the internal default) timeout expired. | |
| 77 .IP "CURLE_FTP_WEIRD_PASV_REPLY (13)" | |
| 78 libcurl failed to get a sensible result back from the server as a response to | |
| 79 either a PASV or a EPSV command. The server is flawed. | |
| 80 .IP "CURLE_FTP_WEIRD_227_FORMAT (14)" | |
| 81 FTP servers return a 227-line as a response to a PASV command. If libcurl | |
| 82 fails to parse that line, this return code is passed back. | |
| 83 .IP "CURLE_FTP_CANT_GET_HOST (15)" | |
| 84 An internal failure to lookup the host used for the new connection. | |
| 85 .IP "CURLE_HTTP2 (16)" | |
| 86 A problem was detected in the HTTP2 framing layer. This is somewhat generic | |
| 87 and can be one out of several problems, see the error buffer for details. | |
| 88 .IP "CURLE_FTP_COULDNT_SET_TYPE (17)" | |
| 89 Received an error when trying to set the transfer mode to binary or ASCII. | |
| 90 .IP "CURLE_PARTIAL_FILE (18)" | |
| 91 A file transfer was shorter or larger than expected. This happens when the | |
| 92 server first reports an expected transfer size, and then delivers data that | |
| 93 doesn't match the previously given size. | |
| 94 .IP "CURLE_FTP_COULDNT_RETR_FILE (19)" | |
| 95 This was either a weird reply to a 'RETR' command or a zero byte transfer | |
| 96 complete. | |
| 97 .IP "CURLE_QUOTE_ERROR (21)" | |
| 98 When sending custom "QUOTE" commands to the remote server, one of the commands | |
| 99 returned an error code that was 400 or higher (for FTP) or otherwise | |
| 100 indicated unsuccessful completion of the command. | |
| 101 .IP "CURLE_HTTP_RETURNED_ERROR (22)" | |
| 102 This is returned if \fICURLOPT_FAILONERROR(3)\fP is set TRUE and the HTTP | |
| 103 server returns an error code that is >= 400. | |
| 104 .IP "CURLE_WRITE_ERROR (23)" | |
| 105 An error occurred when writing received data to a local file, or an error was | |
| 106 returned to libcurl from a write callback. | |
| 107 .IP "CURLE_UPLOAD_FAILED (25)" | |
| 108 Failed starting the upload. For FTP, the server typically denied the STOR | |
| 109 command. The error buffer usually contains the server's explanation for this. | |
| 110 .IP "CURLE_READ_ERROR (26)" | |
| 111 There was a problem reading a local file or an error returned by the read | |
| 112 callback. | |
| 113 .IP "CURLE_OUT_OF_MEMORY (27)" | |
| 114 A memory allocation request failed. This is serious badness and | |
| 115 things are severely screwed up if this ever occurs. | |
| 116 .IP "CURLE_OPERATION_TIMEDOUT (28)" | |
| 117 Operation timeout. The specified time-out period was reached according to the | |
| 118 conditions. | |
| 119 .IP "CURLE_FTP_PORT_FAILED (30)" | |
| 120 The FTP PORT command returned error. This mostly happens when you haven't | |
| 121 specified a good enough address for libcurl to use. See | |
| 122 \fICURLOPT_FTPPORT(3)\fP. | |
| 123 .IP "CURLE_FTP_COULDNT_USE_REST (31)" | |
| 124 The FTP REST command returned error. This should never happen if the server is | |
| 125 sane. | |
| 126 .IP "CURLE_RANGE_ERROR (33)" | |
| 127 The server does not support or accept range requests. | |
| 128 .IP "CURLE_HTTP_POST_ERROR (34)" | |
| 129 This is an odd error that mainly occurs due to internal confusion. | |
| 130 .IP "CURLE_SSL_CONNECT_ERROR (35)" | |
| 131 A problem occurred somewhere in the SSL/TLS handshake. You really want the | |
| 132 error buffer and read the message there as it pinpoints the problem slightly | |
| 133 more. Could be certificates (file formats, paths, permissions), passwords, and | |
| 134 others. | |
| 135 .IP "CURLE_BAD_DOWNLOAD_RESUME (36)" | |
| 136 The download could not be resumed because the specified offset was out of the | |
| 137 file boundary. | |
| 138 .IP "CURLE_FILE_COULDNT_READ_FILE (37)" | |
| 139 A file given with FILE:// couldn't be opened. Most likely because the file | |
| 140 path doesn't identify an existing file. Did you check file permissions? | |
| 141 .IP "CURLE_LDAP_CANNOT_BIND (38)" | |
| 142 LDAP cannot bind. LDAP bind operation failed. | |
| 143 .IP "CURLE_LDAP_SEARCH_FAILED (39)" | |
| 144 LDAP search failed. | |
| 145 .IP "CURLE_FUNCTION_NOT_FOUND (41)" | |
| 146 Function not found. A required zlib function was not found. | |
| 147 .IP "CURLE_ABORTED_BY_CALLBACK (42)" | |
| 148 Aborted by callback. A callback returned "abort" to libcurl. | |
| 149 .IP "CURLE_BAD_FUNCTION_ARGUMENT (43)" | |
| 150 Internal error. A function was called with a bad parameter. | |
| 151 .IP "CURLE_INTERFACE_FAILED (45)" | |
| 152 Interface error. A specified outgoing interface could not be used. Set which | |
| 153 interface to use for outgoing connections' source IP address with | |
| 154 \fICURLOPT_INTERFACE(3)\fP. | |
| 155 .IP "CURLE_TOO_MANY_REDIRECTS (47)" | |
| 156 Too many redirects. When following redirects, libcurl hit the maximum amount. | |
| 157 Set your limit with \fICURLOPT_MAXREDIRS(3)\fP. | |
| 158 .IP "CURLE_UNKNOWN_OPTION (48)" | |
| 159 An option passed to libcurl is not recognized/known. Refer to the appropriate | |
| 160 documentation. This is most likely a problem in the program that uses | |
| 161 libcurl. The error buffer might contain more specific information about which | |
| 162 exact option it concerns. | |
| 163 .IP "CURLE_TELNET_OPTION_SYNTAX (49)" | |
| 164 A telnet option string was Illegally formatted. | |
| 165 .IP "CURLE_GOT_NOTHING (52)" | |
| 166 Nothing was returned from the server, and under the circumstances, getting | |
| 167 nothing is considered an error. | |
| 168 .IP "CURLE_SSL_ENGINE_NOTFOUND (53)" | |
| 169 The specified crypto engine wasn't found. | |
| 170 .IP "CURLE_SSL_ENGINE_SETFAILED (54)" | |
| 171 Failed setting the selected SSL crypto engine as default! | |
| 172 .IP "CURLE_SEND_ERROR (55)" | |
| 173 Failed sending network data. | |
| 174 .IP "CURLE_RECV_ERROR (56)" | |
| 175 Failure with receiving network data. | |
| 176 .IP "CURLE_SSL_CERTPROBLEM (58)" | |
| 177 problem with the local client certificate. | |
| 178 .IP "CURLE_SSL_CIPHER (59)" | |
| 179 Couldn't use specified cipher. | |
| 180 .IP "CURLE_PEER_FAILED_VERIFICATION (60)" | |
| 181 The remote server's SSL certificate or SSH md5 fingerprint was deemed not OK. | |
| 182 This error code has been unified with CURLE_SSL_CACERT since 7.62.0. Its | |
| 183 previous value was 51. | |
| 184 .IP "CURLE_BAD_CONTENT_ENCODING (61)" | |
| 185 Unrecognized transfer encoding. | |
| 186 .IP "CURLE_LDAP_INVALID_URL (62)" | |
| 187 Invalid LDAP URL. | |
| 188 .IP "CURLE_FILESIZE_EXCEEDED (63)" | |
| 189 Maximum file size exceeded. | |
| 190 .IP "CURLE_USE_SSL_FAILED (64)" | |
| 191 Requested FTP SSL level failed. | |
| 192 .IP "CURLE_SEND_FAIL_REWIND (65)" | |
| 193 When doing a send operation curl had to rewind the data to retransmit, but the | |
| 194 rewinding operation failed. | |
| 195 .IP "CURLE_SSL_ENGINE_INITFAILED (66)" | |
| 196 Initiating the SSL Engine failed. | |
| 197 .IP "CURLE_LOGIN_DENIED (67)" | |
| 198 The remote server denied curl to login (Added in 7.13.1) | |
| 199 .IP "CURLE_TFTP_NOTFOUND (68)" | |
| 200 File not found on TFTP server. | |
| 201 .IP "CURLE_TFTP_PERM (69)" | |
| 202 Permission problem on TFTP server. | |
| 203 .IP "CURLE_REMOTE_DISK_FULL (70)" | |
| 204 Out of disk space on the server. | |
| 205 .IP "CURLE_TFTP_ILLEGAL (71)" | |
| 206 Illegal TFTP operation. | |
| 207 .IP "CURLE_TFTP_UNKNOWNID (72)" | |
| 208 Unknown TFTP transfer ID. | |
| 209 .IP "CURLE_REMOTE_FILE_EXISTS (73)" | |
| 210 File already exists and will not be overwritten. | |
| 211 .IP "CURLE_TFTP_NOSUCHUSER (74)" | |
| 212 This error should never be returned by a properly functioning TFTP server. | |
| 213 .IP "CURLE_CONV_FAILED (75)" | |
| 214 Character conversion failed. | |
| 215 .IP "CURLE_CONV_REQD (76)" | |
| 216 Caller must register conversion callbacks. | |
| 217 .IP "CURLE_SSL_CACERT_BADFILE (77)" | |
| 218 Problem with reading the SSL CA cert (path? access rights?) | |
| 219 .IP "CURLE_REMOTE_FILE_NOT_FOUND (78)" | |
| 220 The resource referenced in the URL does not exist. | |
| 221 .IP "CURLE_SSH (79)" | |
| 222 An unspecified error occurred during the SSH session. | |
| 223 .IP "CURLE_SSL_SHUTDOWN_FAILED (80)" | |
| 224 Failed to shut down the SSL connection. | |
| 225 .IP "CURLE_AGAIN (81)" | |
| 226 Socket is not ready for send/recv wait till it's ready and try again. This | |
| 227 return code is only returned from \fIcurl_easy_recv(3)\fP and | |
| 228 \fIcurl_easy_send(3)\fP (Added in 7.18.2) | |
| 229 .IP "CURLE_SSL_CRL_BADFILE (82)" | |
| 230 Failed to load CRL file (Added in 7.19.0) | |
| 231 .IP "CURLE_SSL_ISSUER_ERROR (83)" | |
| 232 Issuer check failed (Added in 7.19.0) | |
| 233 .IP "CURLE_FTP_PRET_FAILED (84)" | |
| 234 The FTP server does not understand the PRET command at all or does not support | |
| 235 the given argument. Be careful when using \fICURLOPT_CUSTOMREQUEST(3)\fP, a | |
| 236 custom LIST command will be sent with PRET CMD before PASV as well. (Added in | |
| 237 7.20.0) | |
| 238 .IP "CURLE_RTSP_CSEQ_ERROR (85)" | |
| 239 Mismatch of RTSP CSeq numbers. | |
| 240 .IP "CURLE_RTSP_SESSION_ERROR (86)" | |
| 241 Mismatch of RTSP Session Identifiers. | |
| 242 .IP "CURLE_FTP_BAD_FILE_LIST (87)" | |
| 243 Unable to parse FTP file list (during FTP wildcard downloading). | |
| 244 .IP "CURLE_CHUNK_FAILED (88)" | |
| 245 Chunk callback reported error. | |
| 246 .IP "CURLE_NO_CONNECTION_AVAILABLE (89)" | |
| 247 (For internal use only, will never be returned by libcurl) No connection | |
| 248 available, the session will be queued. (added in 7.30.0) | |
| 249 .IP "CURLE_SSL_PINNEDPUBKEYNOTMATCH (90)" | |
| 250 Failed to match the pinned key specified with \fICURLOPT_PINNEDPUBLICKEY(3)\fP. | |
| 251 .IP "CURLE_SSL_INVALIDCERTSTATUS (91)" | |
| 252 Status returned failure when asked with \fICURLOPT_SSL_VERIFYSTATUS(3)\fP. | |
| 253 .IP "CURLE_HTTP2_STREAM (92)" | |
| 254 Stream error in the HTTP/2 framing layer. | |
| 255 .IP "CURLE_RECURSIVE_API_CALL (93)" | |
| 256 An API function was called from inside a callback. | |
| 257 .IP "CURLE_AUTH_ERROR (94)" | |
| 258 An authentication function returned an error. | |
| 259 .IP "CURLE_OBSOLETE*" | |
| 260 These error codes will never be returned. They were used in an old libcurl | |
| 261 version and are currently unused. | |
| 262 .SH "CURLMcode" | |
| 263 This is the generic return code used by functions in the libcurl multi | |
| 264 interface. Also consider \fIcurl_multi_strerror(3)\fP. | |
| 265 .IP "CURLM_CALL_MULTI_PERFORM (-1)" | |
| 266 This is not really an error. It means you should call | |
| 267 \fIcurl_multi_perform(3)\fP again without doing select() or similar in | |
| 268 between. Before version 7.20.0 this could be returned by | |
| 269 \fIcurl_multi_perform(3)\fP, but in later versions this return code is never | |
| 270 used. | |
| 271 .IP "CURLM_OK (0)" | |
| 272 Things are fine. | |
| 273 .IP "CURLM_BAD_HANDLE (1)" | |
| 274 The passed-in handle is not a valid CURLM handle. | |
| 275 .IP "CURLM_BAD_EASY_HANDLE (2)" | |
| 276 An easy handle was not good/valid. It could mean that it isn't an easy handle | |
| 277 at all, or possibly that the handle already is in used by this or another | |
| 278 multi handle. | |
| 279 .IP "CURLM_OUT_OF_MEMORY (3)" | |
| 280 You are doomed. | |
| 281 .IP "CURLM_INTERNAL_ERROR (4)" | |
| 282 This can only be returned if libcurl bugs. Please report it to us! | |
| 283 .IP "CURLM_BAD_SOCKET (5)" | |
| 284 The passed-in socket is not a valid one that libcurl already knows about. | |
| 285 (Added in 7.15.4) | |
| 286 .IP "CURLM_UNKNOWN_OPTION (6)" | |
| 287 curl_multi_setopt() with unsupported option | |
| 288 (Added in 7.15.4) | |
| 289 .IP "CURLM_ADDED_ALREADY (7)" | |
| 290 An easy handle already added to a multi handle was attempted to get added a | |
| 291 second time. (Added in 7.32.1) | |
| 292 .IP "CURLM_RECURSIVE_API_CALL (8)" | |
| 293 An API function was called from inside a callback. | |
| 294 .SH "CURLSHcode" | |
| 295 The "share" interface will return a CURLSHcode to indicate when an error has | |
| 296 occurred. Also consider \fIcurl_share_strerror(3)\fP. | |
| 297 .IP "CURLSHE_OK (0)" | |
| 298 All fine. Proceed as usual. | |
| 299 .IP "CURLSHE_BAD_OPTION (1)" | |
| 300 An invalid option was passed to the function. | |
| 301 .IP "CURLSHE_IN_USE (2)" | |
| 302 The share object is currently in use. | |
| 303 .IP "CURLSHE_INVALID (3)" | |
| 304 An invalid share object was passed to the function. | |
| 305 .IP "CURLSHE_NOMEM (4)" | |
| 306 Not enough memory was available. | |
| 307 (Added in 7.12.0) | |
| 308 .IP "CURLSHE_NOT_BUILT_IN (5)" | |
| 309 The requested sharing could not be done because the library you use don't have | |
| 310 that particular feature enabled. (Added in 7.23.0) | |
| 311 .SH "CURLUcode" | |
| 312 .IP "CURLUE_BAD_HANDLE (1)" | |
| 313 An argument that should be a CURLU pointer was passed in as a NULL. | |
| 314 .IP "CURLUE_BAD_PARTPOINTER (2)" | |
| 315 A NULL pointer was passed to the 'part' argument of \fIcurl_url_get(3)\fP. | |
| 316 .IP "CURLUE_MALFORMED_INPUT (3)" | |
| 317 A malformed input was passed to a URL API function. | |
| 318 .IP "CURLUE_BAD_PORT_NUMBER (4)" | |
| 319 The port number was not a decimal number between 0 and 65535. | |
| 320 .IP "CURLUE_UNSUPPORTED_SCHEME (5)" | |
| 321 This libcurl build doesn't support the given URL scheme. | |
| 322 .IP "CURLUE_URLDECODE (6)" | |
| 323 URL decode error, most likely because of rubbish in the input. | |
| 324 .IP "CURLUE_OUT_OF_MEMORY (7)" | |
| 325 A memory function failed. | |
| 326 .IP "CURLUE_USER_NOT_ALLOWED (8)" | |
| 327 Credentials was passed in the URL when prohibited. | |
| 328 .IP "CURLUE_UNKNOWN_PART (9)" | |
| 329 An unknown part ID was passed to a URL API function. | |
| 330 .IP "CURLUE_NO_SCHEME (10)" | |
| 331 There is no scheme part in the URL. | |
| 332 .IP "CURLUE_NO_USER (11)" | |
| 333 There is no user part in the URL. | |
| 334 .IP "CURLUE_NO_PASSWORD (12)" | |
| 335 There is no password part in the URL. | |
| 336 .IP "CURLUE_NO_OPTIONS (13)" | |
| 337 There is no options part in the URL. | |
| 338 .IP "CURLUE_NO_HOST (14)" | |
| 339 There is no host part in the URL. | |
| 340 .IP "CURLUE_NO_PORT (15)" | |
| 341 There is no port part in the URL. | |
| 342 .IP "CURLUE_NO_QUERY (16)" | |
| 343 There is no query part in the URL. | |
| 344 .IP "CURLUE_NO_FRAGMENT (17)" | |
| 345 There is no fragment part in the URL. | |
| 346 .SH "SEE ALSO" | |
| 347 .BR curl_easy_strerror "(3), " curl_multi_strerror "(3), " | |
| 348 .BR curl_share_strerror "(3), " CURLOPT_ERRORBUFFER "(3), " | |
| 349 .BR CURLOPT_VERBOSE "(3), " CURLOPT_DEBUGFUNCTION "(3) " |
