| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556 |
- .\" generated by cd2nroff 0.1 from CURLOPT_STREAM_DEPENDS.md
- .TH CURLOPT_STREAM_DEPENDS 3 "2025-01-17" libcurl
- .SH NAME
- CURLOPT_STREAM_DEPENDS \- stream this transfer depends on
- .SH SYNOPSIS
- .nf
- #include <curl/curl.h>
- CURLcode curl_easy_setopt(CURL *handle, CURLOPT_STREAM_DEPENDS,
- CURL *dephandle);
- .fi
- .SH DESCRIPTION
- Pass a CURL pointer in \fIdephandle\fP to identify the stream within the same
- connection that this stream is depending upon. This option clears the
- exclusive bit and is mutually exclusive to the \fICURLOPT_STREAM_DEPENDS_E(3)\fP
- option.
- The spec says "Including a dependency expresses a preference to allocate
- resources to the identified stream rather than to the dependent stream."
- This option can be set during transfer.
- \fIdephandle\fP must not be the same as \fIhandle\fP, that makes this function return
- an error. It must be another easy handle, and it also needs to be a handle of
- a transfer that is about to be sent over the same HTTP/2 connection for this
- option to have an actual effect.
- .SH DEFAULT
- NULL
- .SH PROTOCOLS
- This functionality affects http only
- .SH EXAMPLE
- .nf
- int main(void)
- {
- CURL *curl = curl_easy_init();
- CURL *curl2 = curl_easy_init(); /* a second handle */
- if(curl) {
- curl_easy_setopt(curl, CURLOPT_URL, "https://example.com/one");
- /* the second depends on the first */
- curl_easy_setopt(curl2, CURLOPT_URL, "https://example.com/two");
- curl_easy_setopt(curl2, CURLOPT_STREAM_DEPENDS, curl);
- /* then add both to a multi handle and transfer them! */
- }
- }
- .fi
- .SH AVAILABILITY
- Added in curl 7.46.0
- .SH RETURN VALUE
- Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
- .SH SEE ALSO
- .BR CURLMOPT_PIPELINING (3),
- .BR CURLOPT_HTTP_VERSION (3),
- .BR CURLOPT_STREAM_DEPENDS_E (3),
- .BR CURLOPT_STREAM_WEIGHT (3)
|