2
0
mirror of https://codeberg.org/kiss-community/repo synced 2024-12-23 07:40:11 -07:00
repo/core/curl/files/CURLOPT_WS_OPTIONS.3
2024-08-02 20:52:59 -05:00

53 lines
1.4 KiB
Groff

.\" generated by cd2nroff 0.1 from CURLOPT_WS_OPTIONS.md
.TH CURLOPT_WS_OPTIONS 3 "2024-08-02" libcurl
.SH NAME
CURLOPT_WS_OPTIONS \- WebSocket behavior options
.SH SYNOPSIS
.nf
#include <curl/curl.h>
CURLcode curl_easy_setopt(CURL *handle, CURLOPT_WS_OPTIONS, long bitmask);
.fi
.SH DESCRIPTION
Pass a long with a bitmask to tell libcurl about specific WebSocket
behaviors.
To detach a WebSocket connection and use the \fIcurl_ws_send(3)\fP and
\fIcurl_ws_recv(3)\fP functions after the HTTP upgrade procedure, set the
\fICURLOPT_CONNECT_ONLY(3)\fP option to 2L.
Available bits in the bitmask
.IP "CURLWS_RAW_MODE (1)"
Deliver "raw" WebSocket traffic to the \fICURLOPT_WRITEFUNCTION(3)\fP
callback.
In raw mode, libcurl does not handle pings or any other frame for the
application.
.SH DEFAULT
0
.SH PROTOCOLS
This functionality affects ws only
.SH EXAMPLE
.nf
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);
}
}
.fi
.SH AVAILABILITY
Added in curl 7.86.0
.SH RETURN VALUE
Returns CURLE_OK if the option is supported, and CURLE_UNKNOWN_OPTION if not.
.SH SEE ALSO
.BR CURLOPT_CONNECT_ONLY (3),
.BR curl_ws_recv (3),
.BR curl_ws_send (3)