Provided by: libcurl4-doc_7.35.0-1ubuntu2.20_all bug

NAME

       curl_multi_add_handle - add an easy handle to a multi session

SYNOPSIS

       #include <curl/curl.h>

       CURLMcode curl_multi_add_handle(CURLM *multi_handle, CURL *easy_handle);

DESCRIPTION

       Adds  a  standard  easy  handle  to  the  multi  stack.  This function call will make this
       multi_handle control the specified easy_handle.  Furthermore, libcurl  now  initiates  the
       connection associated with the specified easy_handle.

       When  an  easy  handle  has  been added to a multi stack, you can not and you must not use
       curl_easy_perform(3) on that handle!

       If the easy handle is not set  to  use  a  shared  (CURLOPT_SHARE)  or  global  DNS  cache
       (CURLOPT_DNS_USE_GLOBAL_CACHE),  it  will  be  made  to  use  the DNS cache that is shared
       between all easy handles within the multi handle when curl_multi_add_handle(3) is called.

       If you have CURLMOPT_TIMERFUNCTION set in the multi  handle  (and  you  really  should  if
       you're  working  event-based  with curl_multi_socket_action(3) and friends), that callback
       will be called from within this function to ask for an updated timer  so  that  your  main
       event loop will get the activity on this handle to get started.

       The    easy    handle    will    remain   added   until   you   remove   it   again   with
       curl_multi_remove_handle(3). You should remove the easy handle from the multi stack before
       you terminate first the easy handle and then the multi handle:

       1 - curl_multi_remove_handle(3)

       2 - curl_easy_cleanup(3)

       3 - curl_multi_cleanup(3)

RETURN VALUE

       CURLMcode type, general libcurl multi interface error code.

SEE ALSO

       curl_multi_cleanup(3),curl_multi_init(3)