| 1 | #ifndef HEADER_CURL_URL_H | 
|---|
| 2 | #define | 
|---|
| 3 | /*************************************************************************** | 
|---|
| 4 | *                                  _   _ ____  _ | 
|---|
| 5 | *  Project                     ___| | | |  _ \| | | 
|---|
| 6 | *                             / __| | | | |_) | | | 
|---|
| 7 | *                            | (__| |_| |  _ <| |___ | 
|---|
| 8 | *                             \___|\___/|_| \_\_____| | 
|---|
| 9 | * | 
|---|
| 10 | * Copyright (C) 1998 - 2019, Daniel Stenberg, <daniel@haxx.se>, et al. | 
|---|
| 11 | * | 
|---|
| 12 | * This software is licensed as described in the file COPYING, which | 
|---|
| 13 | * you should have received as part of this distribution. The terms | 
|---|
| 14 | * are also available at https://curl.haxx.se/docs/copyright.html. | 
|---|
| 15 | * | 
|---|
| 16 | * You may opt to use, copy, modify, merge, publish, distribute and/or sell | 
|---|
| 17 | * copies of the Software, and permit persons to whom the Software is | 
|---|
| 18 | * furnished to do so, under the terms of the COPYING file. | 
|---|
| 19 | * | 
|---|
| 20 | * This software is distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY | 
|---|
| 21 | * KIND, either express or implied. | 
|---|
| 22 | * | 
|---|
| 23 | ***************************************************************************/ | 
|---|
| 24 | #include "curl_setup.h" | 
|---|
| 25 |  | 
|---|
| 26 | #define READBUFFER_SIZE CURL_MAX_WRITE_SIZE | 
|---|
| 27 | #define READBUFFER_MAX  CURL_MAX_READ_SIZE | 
|---|
| 28 | #define READBUFFER_MIN  1024 | 
|---|
| 29 |  | 
|---|
| 30 | /* The default upload buffer size, should not be smaller than | 
|---|
| 31 | CURL_MAX_WRITE_SIZE, as it needs to hold a full buffer as could be sent in | 
|---|
| 32 | a write callback. | 
|---|
| 33 |  | 
|---|
| 34 | The size was 16KB for many years but was bumped to 64KB because it makes | 
|---|
| 35 | libcurl able to do significantly faster uploads in some circumstances. Even | 
|---|
| 36 | larger buffers can help further, but this is deemed a fair memory/speed | 
|---|
| 37 | compromise. */ | 
|---|
| 38 | #define UPLOADBUFFER_DEFAULT 65536 | 
|---|
| 39 | #define UPLOADBUFFER_MAX (2*1024*1024) | 
|---|
| 40 | #define UPLOADBUFFER_MIN CURL_MAX_WRITE_SIZE | 
|---|
| 41 |  | 
|---|
| 42 | /* | 
|---|
| 43 | * Prototypes for library-wide functions provided by url.c | 
|---|
| 44 | */ | 
|---|
| 45 |  | 
|---|
| 46 | CURLcode Curl_init_do(struct Curl_easy *data, struct connectdata *conn); | 
|---|
| 47 | CURLcode Curl_open(struct Curl_easy **curl); | 
|---|
| 48 | CURLcode Curl_init_userdefined(struct Curl_easy *data); | 
|---|
| 49 |  | 
|---|
| 50 | void Curl_freeset(struct Curl_easy * data); | 
|---|
| 51 | CURLcode Curl_uc_to_curlcode(CURLUcode uc); | 
|---|
| 52 | CURLcode Curl_close(struct Curl_easy **datap); /* opposite of curl_open() */ | 
|---|
| 53 | CURLcode Curl_connect(struct Curl_easy *, bool *async, bool *protocol_connect); | 
|---|
| 54 | CURLcode Curl_disconnect(struct Curl_easy *data, | 
|---|
| 55 | struct connectdata *, bool dead_connection); | 
|---|
| 56 | CURLcode Curl_setup_conn(struct connectdata *conn, | 
|---|
| 57 | bool *protocol_done); | 
|---|
| 58 | void Curl_free_request_state(struct Curl_easy *data); | 
|---|
| 59 | CURLcode Curl_parse_login_details(const char *login, const size_t len, | 
|---|
| 60 | char **userptr, char **passwdptr, | 
|---|
| 61 | char **optionsptr); | 
|---|
| 62 |  | 
|---|
| 63 | const struct Curl_handler *Curl_builtin_scheme(const char *scheme); | 
|---|
| 64 |  | 
|---|
| 65 | #define CURL_DEFAULT_PROXY_PORT 1080 /* default proxy port unless specified */ | 
|---|
| 66 | #define CURL_DEFAULT_HTTPS_PROXY_PORT 443 /* default https proxy port unless | 
|---|
| 67 | specified */ | 
|---|
| 68 |  | 
|---|
| 69 | #ifdef CURL_DISABLE_VERBOSE_STRINGS | 
|---|
| 70 | #define Curl_verboseconnect(x)  Curl_nop_stmt | 
|---|
| 71 | #else | 
|---|
| 72 | void Curl_verboseconnect(struct connectdata *conn); | 
|---|
| 73 | #endif | 
|---|
| 74 |  | 
|---|
| 75 | #define CONNECT_PROXY_SSL()\ | 
|---|
| 76 | (conn->http_proxy.proxytype == CURLPROXY_HTTPS &&\ | 
|---|
| 77 | !conn->bits.proxy_ssl_connected[sockindex]) | 
|---|
| 78 |  | 
|---|
| 79 | #define CONNECT_FIRSTSOCKET_PROXY_SSL()\ | 
|---|
| 80 | (conn->http_proxy.proxytype == CURLPROXY_HTTPS &&\ | 
|---|
| 81 | !conn->bits.proxy_ssl_connected[FIRSTSOCKET]) | 
|---|
| 82 |  | 
|---|
| 83 | #define CONNECT_SECONDARYSOCKET_PROXY_SSL()\ | 
|---|
| 84 | (conn->http_proxy.proxytype == CURLPROXY_HTTPS &&\ | 
|---|
| 85 | !conn->bits.proxy_ssl_connected[SECONDARYSOCKET]) | 
|---|
| 86 |  | 
|---|
| 87 | #endif /* HEADER_CURL_URL_H */ | 
|---|
| 88 |  | 
|---|