/curl/lib/ |
H A D | multi.c | 403 if(!multi) in Curl_multi_handle() 526 data->multi = multi; in curl_multi_add_handle() 794 if(data->multi != multi) in curl_multi_remove_handle() 916 return (multi && (multi->multiplexing)); in Curl_multiplex_wanted() 3027 struct Curl_multi *multi = data->multi; local 3123 struct Curl_multi *multi = mrc->multi; local 3178 mrc.multi = multi; 3441 if(!multi->timer_cb || multi->dead) 3492 rc = multi->timer_cb(multi, timeout_ms, multi->timer_userp); 3580 struct Curl_multi *multi = data->multi; local [all …]
|
H A D | multiif.h | 35 CURLMcode Curl_update_timer(struct Curl_multi *multi) WARN_UNUSED_RESULT; 39 bool Curl_multiplex_wanted(const struct Curl_multi *multi); 44 void Curl_multi_connchanged(struct Curl_multi *multi); 82 CURLMcode Curl_multi_pollset_ev(struct Curl_multi *multi, 90 CURLMcode Curl_multi_add_perform(struct Curl_multi *multi, 96 unsigned int Curl_multi_max_concurrent_streams(struct Curl_multi *multi); 150 struct Curl_easy *Curl_multi_get_handle(struct Curl_multi *multi,
|
/curl/tests/libtest/ |
H A D | lib1502.c | 46 CURLM *multi = NULL; in test() local 90 multi_init(multi); in test() 92 multi_add_handle(multi, easy); in test() 94 multi_perform(multi, &still_running); in test() 119 multi_perform(multi, &still_running); in test() 128 curl_multi_cleanup(multi); in test() 135 curl_multi_remove_handle(multi, easy); in test() 136 curl_multi_cleanup(multi); in test() 144 curl_multi_cleanup(multi); in test() 150 curl_multi_remove_handle(multi, easy); in test() [all …]
|
H A D | lib1500.c | 35 CURLM *multi = NULL; in test() local 45 multi_init(multi); in test() 52 multi_add_handle(multi, curls); in test() 54 multi_perform(multi, &still_running); in test() 61 mres = curl_multi_wait(multi, NULL, 0, TEST_HANG_TIMEOUT, &num); in test() 70 multi_perform(multi, &still_running); in test() 75 msg = curl_multi_info_read(multi, &still_running); in test() 85 curl_multi_cleanup(multi); in test()
|
H A D | lib1564.c | 35 CURLM *multi = NULL; in test() local 47 multi_init(multi); in test() 52 multi_poll(multi, NULL, 0, 1000, &numfds); in test() 66 res_multi_wakeup(multi); in test() 69 multi_poll(multi, NULL, 0, 1000, &numfds); in test() 84 multi_poll(multi, NULL, 0, 1000, &numfds); in test() 99 res_multi_wakeup(multi); in test() 102 multi_poll(multi, NULL, 0, 1000, &numfds); in test() 117 multi_poll(multi, NULL, 0, 1000, &numfds); in test() 131 curl_multi_cleanup(multi); in test()
|
H A D | lib1552.c | 35 CURLM *multi = NULL; in test() local 46 multi_init(multi); in test() 55 multi_add_handle(multi, curls); in test() 57 multi_perform(multi, &still_running); in test() 64 mres = curl_multi_wait(multi, NULL, 0, TEST_HANG_TIMEOUT, &num); in test() 73 multi_perform(multi, &still_running); in test() 78 msg = curl_multi_info_read(multi, &still_running); in test() 88 curl_multi_cleanup(multi); in test()
|
H A D | lib597.c | 46 CURLM *multi = NULL; in test() local 58 multi_init(multi); in test() 68 multi_add_handle(multi, easy); in test() 78 multi_perform(multi, &running); in test() 89 multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); in test() 93 multi_timeout(multi, &timeout); in test() 118 msg = curl_multi_info_read(multi, &msgs_left); in test() 122 multi_remove_handle(multi, easy); in test() 128 curl_multi_cleanup(multi); in test()
|
H A D | lib2405.c | 121 CURLM *multi = NULL; in test_run() local 149 multi_init(multi); in test_run() 155 multi_add_handle(multi, easy1); in test_run() 156 multi_add_handle(multi, easy2); in test_run() 212 curl_multi_remove_handle(multi, easy1); in test_run() 219 curl_multi_cleanup(multi); in test_run() 231 CURLM *multi = NULL; in empty_multi_test() local 239 multi_init(multi); in empty_multi_test() 262 multi_add_handle(multi, easy); in empty_multi_test() 278 curl_multi_remove_handle(multi, easy); in empty_multi_test() [all …]
|
H A D | lib507.c | 35 CURLM *multi = NULL; in test() local 45 multi_init(multi); in test() 52 multi_add_handle(multi, curls); in test() 54 multi_perform(multi, &still_running); in test() 71 multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); in test() 79 multi_perform(multi, &still_running); in test() 84 msg = curl_multi_info_read(multi, &still_running); in test() 94 curl_multi_cleanup(multi); in test()
|
H A D | lib1939.c | 31 CURLM *multi; in test() local 37 multi = curl_multi_init(); in test() 38 if(multi) { in test() 54 m = curl_multi_add_handle(multi, easy); in test() 59 m = curl_multi_perform(multi, &running_handles); in test() 68 curl_multi_cleanup(multi); /* double-free happens here */ in test()
|
H A D | lib1553.c | 49 CURLM *multi = NULL; in test() local 61 multi_init(multi); in test() 84 multi_add_handle(multi, curls); in test() 86 multi_perform(multi, &still_running); in test() 93 mres = curl_multi_wait(multi, NULL, 0, TEST_HANG_TIMEOUT, &num); in test() 102 multi_perform(multi, &still_running); in test() 110 curl_multi_remove_handle(multi, curls); in test() 111 curl_multi_cleanup(multi); in test()
|
H A D | lib591.c | 41 CURLM *multi = NULL; in test() local 85 multi_init(multi); in test() 87 multi_add_handle(multi, easy); in test() 97 multi_perform(multi, &running); in test() 108 multi_fdset(multi, &fdread, &fdwrite, &fdexcep, &maxfd); in test() 112 multi_timeout(multi, &timeout); in test() 136 msg = curl_multi_info_read(multi, &msgs_left); in test() 144 curl_multi_cleanup(multi); in test()
|
/curl/docs/examples/ |
H A D | multi-uv.c | 46 CURLM *multi; member 100 curl_multi_add_handle(multi, handle); in add_download() 170 static int cb_timeout(CURLM *multi, long timeout_ms, in cb_timeout() argument 173 (void)multi; in cb_timeout() 202 curl_multi_assign(uv->multi, s, (void *) curl_context); in cb_socket() 215 curl_multi_assign(uv->multi, s, NULL); in cb_socket() 238 uv.multi = curl_multi_init(); in main() 240 curl_multi_setopt(uv.multi, CURLMOPT_SOCKETDATA, &uv); in main() 242 curl_multi_setopt(uv.multi, CURLMOPT_TIMERDATA, &uv); in main() 245 add_download(argv[argc], argc, uv.multi); in main() [all …]
|
H A D | Makefile.inc | 74 imap-multi \ 85 multi-app \ 87 multi-double \ 88 multi-formadd \ 89 multi-legacy \ 90 multi-post \ 91 multi-single \ 98 pop3-multi \ 127 smtp-multi \ 150 multi-event.c \ [all …]
|
H A D | .gitignore | 53 imap-multi 64 multi-app 65 multi-debugcallback 66 multi-double 67 multi-formadd 68 multi-legacy 69 multi-poll 70 multi-post 71 multi-single 79 pop3-multi [all …]
|
H A D | http2-pushinmemory.c | 127 CURLM *multi; in main() local 134 multi = curl_multi_init(); in main() 142 curl_multi_add_handle(multi, easy); in main() 144 curl_multi_setopt(multi, CURLMOPT_PIPELINING, CURLPIPE_MULTIPLEX); in main() 145 curl_multi_setopt(multi, CURLMOPT_PUSHFUNCTION, server_push_callback); in main() 146 curl_multi_setopt(multi, CURLMOPT_PUSHDATA, &transfers); in main() 150 CURLMcode mcode = curl_multi_perform(multi, &still_running); in main() 154 mcode = curl_multi_wait(multi, NULL, 0, 1000, &rc); in main() 165 m = curl_multi_info_read(multi, &msgq); in main() 169 curl_multi_remove_handle(multi, e); in main() [all …]
|
H A D | hiperfifo.c | 86 CURLM *multi; member 145 (void)multi; in multi_timer_cb() 176 while((msg = curl_multi_info_read(g->multi, &msgs_left))) { in check_multi_info() 183 curl_multi_remove_handle(g->multi, easy); in check_multi_info() 227 rc = curl_multi_socket_action(g->multi, in timer_cb() 275 curl_multi_assign(g->multi, s, fdp); in addsock() 358 rc = curl_multi_add_handle(g->multi, conn->easy); in new_conn() 443 g.multi = curl_multi_init(); in main() 448 curl_multi_setopt(g.multi, CURLMOPT_SOCKETDATA, &g); in main() 450 curl_multi_setopt(g.multi, CURLMOPT_TIMERDATA, &g); in main() [all …]
|
H A D | ghiper.c | 74 CURLM *multi; member 129 while((msg = curl_multi_info_read(g->multi, &msgs_left))) { in check_multi_info() 136 curl_multi_remove_handle(g->multi, easy); in check_multi_info() 150 rc = curl_multi_socket_action(g->multi, in timer_cb() 243 curl_multi_assign(g->multi, s, fdp); in addsock() 323 rc = curl_multi_add_handle(g->multi, conn->easy); in new_conn() 426 g->multi = curl_multi_init(); in main() 427 curl_multi_setopt(g->multi, CURLMOPT_SOCKETFUNCTION, sock_cb); in main() 428 curl_multi_setopt(g->multi, CURLMOPT_SOCKETDATA, g); in main() 430 curl_multi_setopt(g->multi, CURLMOPT_TIMERDATA, g); in main() [all …]
|
/curl/docs/libcurl/ |
H A D | curl_multi_add_handle.md | 20 curl_multi_add_handle - add an easy handle to a multi session 36 handle from the multi stack again, it is perfectly fine to use it with the 41 the multi handle when curl_multi_add_handle(3) is called. 44 connection cache owned by the multi handle. Removing and adding new easy 48 If you have CURLMOPT_TIMERFUNCTION(3) set in the multi handle (as you 59 first the easy handle and then the multi handle: 74 /* init a multi stack */ 75 CURLM *multi = curl_multi_init(); 82 curl_multi_add_handle(multi, http_handle); 83 curl_multi_add_handle(multi, http_handle2); [all …]
|
H A D | curl_multi_init.md | 20 curl_multi_init - create a multi handle 33 all the other multi-functions, sometimes referred to as a multi handle in some 44 /* init a multi stack */ 45 CURLM *multi = curl_multi_init(); 50 curl_multi_add_handle(multi, curl); 51 curl_multi_add_handle(multi, curl2);
|
H A D | curl_multi_remove_handle.md | 18 curl_multi_remove_handle - remove an easy handle from a multi session 31 specified easy handle be removed from this multi handle's control. 33 When the easy handle has been removed from a multi stack, it is again 43 Removing an easy handle from the multi handle before the corresponding 47 multi handle, ready to get reused for a future transfer using this multi 57 CURLM *multi = curl_multi_init(); 61 CURLMsg *msg = curl_multi_info_read(multi, &queued); 66 curl_multi_remove_handle(multi, msg->easy_handle); 76 CURLMcode type, general libcurl multi interface error code.
|
H A D | curl_multi_cleanup.md | 19 curl_multi_cleanup - close down a multi session 32 whole multi stack. It does not free or touch any individual easy handles in 39 handle is no longer connected to the multi handle 56 CURLM *multi = curl_multi_init(); 58 /* when the multi transfer is done ... */ 61 curl_multi_cleanup(multi); 69 CURLMcode type, general libcurl multi interface error code. On success,
|
H A D | curl_multi_wakeup.md | 54 CURLM *multi; 58 curl_multi_add_handle(multi, easy); 65 mc = curl_multi_perform(multi, &still_running); 69 mc = curl_multi_poll(multi, NULL, 0, 10000, &numfds); 77 curl_multi_remove_handle(multi, easy); 85 curl_multi_wakeup(multi); 94 CURLMcode type, general libcurl multi interface error code.
|
H A D | curl_multi_wait.md | 18 curl_multi_wait - poll on all easy handles in a multi handle 35 handles contained in the given multi handle set. It blocks until activity is 37 Alternatively, if the multi handle has a pending internal timeout that has a 55 multi interface to allow applications to easier circumvent the common problem 91 CURLM *multi = curl_multi_init(); 95 curl_multi_add_handle(multi, easy); 101 mc = curl_multi_perform(multi, &still_running); 105 mc = curl_multi_wait(multi, NULL, 0, 1000, &numfds); 115 curl_multi_remove_handle(multi, easy); 123 CURLMcode type, general libcurl multi interface error code. See
|
/curl/tests/unit/ |
H A D | unit1609.c | 105 struct Curl_multi *multi = NULL; variable 127 multi = curl_multi_init(); 128 if(!multi) 130 curl_multi_add_handle(multi, easy); 203 curl_multi_cleanup(multi); 204 multi = NULL; 216 curl_multi_cleanup(multi);
|