mirror of
https://github.com/curl/curl.git
synced 2024-12-27 06:59:43 +08:00
e3fe020089
Remove the PROTOCOLS section from the source files completely and instead generate them based on the header data in the curldown files. It also generates TLS backend information for options marked for TLS as protocol. Closes #13175
1.4 KiB
1.4 KiB
c | SPDX-License-Identifier | Title | Section | Source | See-also | Protocol | ||||
---|---|---|---|---|---|---|---|---|---|---|
Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al. | curl | CURLOPT_WS_OPTIONS | 3 | libcurl |
|
|
NAME
CURLOPT_WS_OPTIONS - WebSocket behavior options
SYNOPSIS
#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_WS_OPTIONS, long bitmask);
DESCRIPTION
Pass a long with a bitmask to tell libcurl about specific WebSocket behaviors.
To detach a WebSocket connection and use the curl_ws_send(3) and curl_ws_recv(3) functions after the HTTP upgrade procedure, set the CURLOPT_CONNECT_ONLY(3) option to 2L.
Available bits in the bitmask
CURLWS_RAW_MODE (1)
Deliver "raw" WebSocket traffic to the CURLOPT_WRITEFUNCTION(3) callback.
In raw mode, libcurl does not handle pings or any other frame for the application.
DEFAULT
0
EXAMPLE
int main(void)
{
CURL *curl = curl_easy_init();
if(curl) {
CURLcode res;
curl_easy_setopt(curl, CURLOPT_URL, "ws://example.com/");
/* tell curl we deal with all the WebSocket magic ourselves */
curl_easy_setopt(curl, CURLOPT_WS_OPTIONS, (long)CURLWS_RAW_MODE);
res = curl_easy_perform(curl);
curl_easy_cleanup(curl);
}
}
AVAILABILITY
Added in 7.86.0
RETURN VALUE
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.