Mercurial > hgrepos > Python2 > PyMuPDF
comparison mupdf-source/thirdparty/curl/lib/multiif.h @ 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 #ifndef HEADER_CURL_MULTIIF_H | |
| 2 #define HEADER_CURL_MULTIIF_H | |
| 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 | |
| 25 /* | |
| 26 * Prototypes for library-wide functions provided by multi.c | |
| 27 */ | |
| 28 | |
| 29 void Curl_updatesocket(struct Curl_easy *data); | |
| 30 void Curl_expire(struct Curl_easy *data, timediff_t milli, expire_id); | |
| 31 void Curl_expire_clear(struct Curl_easy *data); | |
| 32 void Curl_expire_done(struct Curl_easy *data, expire_id id); | |
| 33 void Curl_update_timer(struct Curl_multi *multi); | |
| 34 void Curl_attach_connnection(struct Curl_easy *data, | |
| 35 struct connectdata *conn); | |
| 36 bool Curl_multiplex_wanted(const struct Curl_multi *multi); | |
| 37 void Curl_set_in_callback(struct Curl_easy *data, bool value); | |
| 38 bool Curl_is_in_callback(struct Curl_easy *easy); | |
| 39 | |
| 40 /* Internal version of curl_multi_init() accepts size parameters for the | |
| 41 socket and connection hashes */ | |
| 42 struct Curl_multi *Curl_multi_handle(int hashsize, int chashsize); | |
| 43 | |
| 44 /* the write bits start at bit 16 for the *getsock() bitmap */ | |
| 45 #define GETSOCK_WRITEBITSTART 16 | |
| 46 | |
| 47 #define GETSOCK_BLANK 0 /* no bits set */ | |
| 48 | |
| 49 /* set the bit for the given sock number to make the bitmap for writable */ | |
| 50 #define GETSOCK_WRITESOCK(x) (1 << (GETSOCK_WRITEBITSTART + (x))) | |
| 51 | |
| 52 /* set the bit for the given sock number to make the bitmap for readable */ | |
| 53 #define GETSOCK_READSOCK(x) (1 << (x)) | |
| 54 | |
| 55 #ifdef DEBUGBUILD | |
| 56 /* | |
| 57 * Curl_multi_dump is not a stable public function, this is only meant to | |
| 58 * allow easier tracking of the internal handle's state and what sockets | |
| 59 * they use. Only for research and development DEBUGBUILD enabled builds. | |
| 60 */ | |
| 61 void Curl_multi_dump(struct Curl_multi *multi); | |
| 62 #endif | |
| 63 | |
| 64 /* Return the value of the CURLMOPT_MAX_HOST_CONNECTIONS option */ | |
| 65 size_t Curl_multi_max_host_connections(struct Curl_multi *multi); | |
| 66 | |
| 67 /* Return the value of the CURLMOPT_MAX_TOTAL_CONNECTIONS option */ | |
| 68 size_t Curl_multi_max_total_connections(struct Curl_multi *multi); | |
| 69 | |
| 70 void Curl_multiuse_state(struct connectdata *conn, | |
| 71 int bundlestate); /* use BUNDLE_* defines */ | |
| 72 | |
| 73 /* | |
| 74 * Curl_multi_closed() | |
| 75 * | |
| 76 * Used by the connect code to tell the multi_socket code that one of the | |
| 77 * sockets we were using is about to be closed. This function will then | |
| 78 * remove it from the sockethash for this handle to make the multi_socket API | |
| 79 * behave properly, especially for the case when libcurl will create another | |
| 80 * socket again and it gets the same file descriptor number. | |
| 81 */ | |
| 82 | |
| 83 void Curl_multi_closed(struct Curl_easy *data, curl_socket_t s); | |
| 84 | |
| 85 /* | |
| 86 * Add a handle and move it into PERFORM state at once. For pushed streams. | |
| 87 */ | |
| 88 CURLMcode Curl_multi_add_perform(struct Curl_multi *multi, | |
| 89 struct Curl_easy *data, | |
| 90 struct connectdata *conn); | |
| 91 | |
| 92 #endif /* HEADER_CURL_MULTIIF_H */ |
