curl-curl/docs/examples/.gitignore
Stefan Eissing 37cecfc7b9
websocket: support CURLOPT_READFUNCTION
Add support for CURLOPT_READFUNCTION with WebSocket urls when *not* in
connect-only mode, e.g. when using curl_multi_perform.

Install the callback function and set CURLOPT_UPLOAD. Return
CURL_READFUNC_PAUSE when having nothing more to send and unpause the
transfer when more data is ready.

This will send the read bytes in a WebSocket BINARY frame.

Add support for this mode in the pytest "ws_data" client and have all
tests run in 'curl_ws_send/recv' and 'peform' mode as well.

Add `curl_ws_start_frame()`. Document, cover in libcurl-ws.md and
explain the READFUNCTION mode for websockets.

Add example `websocket-updown` for this.

Closes #17683
2025-08-11 23:28:54 +02:00

135 lines
1.5 KiB
Plaintext

# Copyright (C) Daniel Stenberg, <daniel@haxx.se>, et al.
#
# SPDX-License-Identifier: curl
10-at-a-time
address-scope
altsvc
anyauthput
block_ip
cacertinmem
certinfo
chkspeed
connect-to
cookie_interface
crawler
debug
default-scheme
ephiperfifo
evhiperfifo
externalsocket
fileupload
ftp-delete
ftp-wildcard
ftpget
ftpgetinfo
ftpgetresp
ftpsget
ftpupload
ftpuploadfrommem
ftpuploadresume
getinfo
getinmemory
getredirect
getreferrer
ghiper
headerapi
hiperfifo
href_extractor
hsts-preload
htmltidy
http-options
http-post
http2-download
http2-pushinmemory
http2-serverpush
http2-upload
http3
http3-present
httpcustomheader
httpput
httpput-postfields
https
imap-append
imap-authzid
imap-copy
imap-create
imap-delete
imap-examine
imap-fetch
imap-list
imap-lsub
imap-multi
imap-noop
imap-search
imap-ssl
imap-store
imap-tls
interface
ipv6
keepalive
localport
maxconnects
multi-app
multi-debugcallback
multi-double
multi-event
multi-formadd
multi-legacy
multi-post
multi-single
multi-uv
multithread
netrc
parseurl
persistent
pop3-authzid
pop3-dele
pop3-list
pop3-multi
pop3-noop
pop3-retr
pop3-ssl
pop3-stat
pop3-tls
pop3-top
pop3-uidl
post-callback
postinmemory
postit2
postit2-formadd
progressfunc
protofeats
range
resolve
rtsp-options
sendrecv
sepheaders
sessioninfo
sftpget
sftpuploadresume
shared-connection-cache
simple
simplepost
simplessl
smooth-gtk-thread
smtp-authzid
smtp-expn
smtp-mail
smtp-mime
smtp-multi
smtp-ssl
smtp-tls
smtp-vrfy
sslbackend
synctime
threaded-ssl
unixsocket
url2file
urlapi
usercertinmem
websocket
websocket-cb
websocket-updown
xmlstream