diff options
author | Daniel Stenberg <daniel@haxx.se> | 2022-09-09 15:11:14 +0200 |
---|---|---|
committer | Daniel Stenberg <daniel@haxx.se> | 2022-09-09 15:11:14 +0200 |
commit | 664249d095275ec532f55dd1752d80c8c1093a77 (patch) | |
tree | f8e3add4b66fb64271d22178743f3dc2f1758dcd /lib/setopt.c | |
parent | 60a3b25dbf1f211f6ba5216f2d774cfb26cb3e29 (diff) | |
download | curl-664249d095275ec532f55dd1752d80c8c1093a77.tar.gz |
ws: initial websockets support
Closes #8995
Diffstat (limited to 'lib/setopt.c')
-rw-r--r-- | lib/setopt.c | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/lib/setopt.c b/lib/setopt.c index 795c8f450..afc44013c 100644 --- a/lib/setopt.c +++ b/lib/setopt.c @@ -2430,9 +2430,14 @@ CURLcode Curl_vsetopt(struct Curl_easy *data, CURLoption option, va_list param) case CURLOPT_CONNECT_ONLY: /* - * No data transfer, set up connection and let application use the socket + * No data transfer. + * (1) - only do connection + * (2) - do first get request but get no content */ - data->set.connect_only = (0 != va_arg(param, long)) ? TRUE : FALSE; + arg = va_arg(param, long); + if(arg > 2) + return CURLE_BAD_FUNCTION_ARGUMENT; + data->set.connect_only = (unsigned char)arg; break; case CURLOPT_SOCKOPTFUNCTION: @@ -3127,6 +3132,15 @@ CURLcode Curl_vsetopt(struct Curl_easy *data, CURLoption option, va_list param) case CURLOPT_PREREQDATA: data->set.prereq_userp = va_arg(param, void *); break; +#ifdef USE_WEBSOCKETS + case CURLOPT_WS_OPTIONS: { + bool raw; + arg = va_arg(param, long); + raw = (arg & CURLWS_RAW_MODE); + data->set.ws_raw_mode = raw; + break; + } +#endif default: /* unknown tag and its companion, just ignore: */ result = CURLE_UNKNOWN_OPTION; |