Sortix main manual
This manual documents Sortix main. You can instead view this document in the latest official manual.
curl_multi_fdset(3) | libcurl Manual | curl_multi_fdset(3) |
NAME
curl_multi_fdset - extracts file descriptor information from a multi handleSYNOPSIS
#include <curl/curl.h>
CURLMcode curl_multi_fdset(CURLM *multi_handle,
fd_set *read_fd_set,
fd_set *write_fd_set,
fd_set *exc_fd_set,
int *max_fd);
DESCRIPTION
This function extracts file descriptor information from a given multi_handle. libcurl returns its fd_set sets. The application can use these to select() on, but be sure to FD_ZERO them before calling this function as curl_multi_fdset(3) only adds its own descriptors, it does not zero or otherwise remove any others. The curl_multi_perform(3) function should be called as soon as one of them is ready to be read from or written to.EXAMPLE
/* get file descriptors from the transfers */
mc = curl_multi_fdset(multi_handle, &fdread, &fdwrite, &fdexcep, &maxfd);
if(mc != CURLM_OK) {
fprintf(stderr, "curl_multi_fdset() failed, code %d.\n", mc);
break;
}
/* wait for activity on one of the sockets */
rc = select(maxfd + 1, &fdread, &fdwrite, &fdexcep, &timeout);
AVAILABILITY
Added in 7.9.6RETURN VALUE
CURLMcode type, general libcurl multi interface error code. See libcurl-errors(3)SEE ALSO
curl_multi_cleanup(3), curl_multi_init(3), curl_multi_wait(3), curl_multi_timeout(3), curl_multi_perform(3), select(2)May 17, 2022 | libcurl 7.84.0 |