setopt: refactor out the booleans from setopt_long to setopt_bool
—
$ git checkout -f 3407bee8c8f145557fc9f8baa97a71154e9911b7
Previous HEAD position was cd586149d5 tests: constify command-line arguments
HEAD is now at 3407bee8c8 setopt: refactor out the booleans from setopt_long to setopt_bool
$ git clean -fdx
Removing Makefile
Removing Makefile.in
Removing aclocal.m4
Removing autom4te.cache/
Removing buildinfo.txt
Removing compile
Removing config.guess
Removing config.log
Removing config.status
Removing config.sub
Removing configure
Removing curl-config
Removing depcomp
Removing docs/Makefile
Removing docs/Makefile.in
Removing docs/cmdline-opts/Makefile
Removing docs/cmdline-opts/Makefile.in
Removing docs/examples/.deps/
Removing docs/examples/Makefile
Removing docs/examples/Makefile.in
Removing docs/libcurl/Makefile
Removing docs/libcurl/Makefile.in
Removing docs/libcurl/opts/Makefile
Removing docs/libcurl/opts/Makefile.in
Removing include/Makefile
Removing include/Makefile.in
Removing include/curl/Makefile
Removing include/curl/Makefile.in
Removing install-sh
Removing lib/.deps/
Removing lib/.libs/
Removing lib/Makefile
Removing lib/Makefile.in
Removing lib/curl_config.h
Removing lib/curl_config.h.in
Removing lib/curlx/.deps/
Removing lib/curlx/.dirstamp
Removing lib/curlx/libcurl_la-base64.lo
Removing lib/curlx/libcurl_la-base64.o
Removing lib/curlx/libcurl_la-dynbuf.lo
Removing lib/curlx/libcurl_la-dynbuf.o
Removing lib/curlx/libcurl_la-inet_ntop.lo
Removing lib/curlx/libcurl_la-inet_ntop.o
Removing lib/curlx/libcurl_la-inet_pton.lo
Removing lib/curlx/libcurl_la-inet_pton.o
Removing lib/curlx/libcurl_la-multibyte.lo
Removing lib/curlx/libcurl_la-multibyte.o
Removing lib/curlx/libcurl_la-nonblock.lo
Removing lib/curlx/libcurl_la-nonblock.o
Removing lib/curlx/libcurl_la-strparse.lo
Removing lib/curlx/libcurl_la-strparse.o
Removing lib/curlx/libcurl_la-timediff.lo
Removing lib/curlx/libcurl_la-timediff.o
Removing lib/curlx/libcurl_la-timeval.lo
Removing lib/curlx/libcurl_la-timeval.o
Removing lib/curlx/libcurl_la-version_win32.lo
Removing lib/curlx/libcurl_la-version_win32.o
Removing lib/curlx/libcurl_la-wait.lo
Removing lib/curlx/libcurl_la-wait.o
Removing lib/curlx/libcurl_la-warnless.lo
Removing lib/curlx/libcurl_la-warnless.o
Removing lib/curlx/libcurl_la-winapi.lo
Removing lib/curlx/libcurl_la-winapi.o
Removing lib/curlx/libcurlu_la-base64.lo
Removing lib/curlx/libcurlu_la-base64.o
Removing lib/curlx/libcurlu_la-dynbuf.lo
Removing lib/curlx/libcurlu_la-dynbuf.o
Removing lib/curlx/libcurlu_la-inet_ntop.lo
Removing lib/curlx/libcurlu_la-inet_ntop.o
Removing lib/curlx/libcurlu_la-inet_pton.lo
Removing lib/curlx/libcurlu_la-inet_pton.o
Removing lib/curlx/libcurlu_la-multibyte.lo
Removing lib/curlx/libcurlu_la-multibyte.o
Removing lib/curlx/libcurlu_la-nonblock.lo
Removing lib/curlx/libcurlu_la-nonblock.o
Removing lib/curlx/libcurlu_la-strparse.lo
Removing lib/curlx/libcurlu_la-strparse.o
Removing lib/curlx/libcurlu_la-timediff.lo
Removing lib/curlx/libcurlu_la-timediff.o
Removing lib/curlx/libcurlu_la-timeval.lo
Removing lib/curlx/libcurlu_la-timeval.o
Removing lib/curlx/libcurlu_la-version_win32.lo
Removing lib/curlx/libcurlu_la-version_win32.o
Removing lib/curlx/libcurlu_la-wait.lo
Removing lib/curlx/libcurlu_la-wait.o
Removing lib/curlx/libcurlu_la-warnless.lo
Removing lib/curlx/libcurlu_la-warnless.o
Removing lib/curlx/libcurlu_la-winapi.lo
Removing lib/curlx/libcurlu_la-winapi.o
Removing lib/libcurl.la
Removing lib/libcurl.vers
Removing lib/libcurl_la-altsvc.lo
Removing lib/libcurl_la-altsvc.o
Removing lib/libcurl_la-amigaos.lo
Removing lib/libcurl_la-amigaos.o
Removing lib/libcurl_la-asyn-ares.lo
Removing lib/libcurl_la-asyn-ares.o
Removing lib/libcurl_la-asyn-base.lo
Removing lib/libcurl_la-asyn-base.o
Removing lib/libcurl_la-asyn-thrdd.lo
Removing lib/libcurl_la-asyn-thrdd.o
Removing lib/libcurl_la-bufq.lo
Removing lib/libcurl_la-bufq.o
Removing lib/libcurl_la-bufref.lo
Removing lib/libcurl_la-bufref.o
Removing lib/libcurl_la-cf-h1-proxy.lo
Removing lib/libcurl_la-cf-h1-proxy.o
Removing lib/libcurl_la-cf-h2-proxy.lo
Removing lib/libcurl_la-cf-h2-proxy.o
Removing lib/libcurl_la-cf-haproxy.lo
Removing lib/libcurl_la-cf-haproxy.o
Removing lib/libcurl_la-cf-https-connect.lo
Removing lib/libcurl_la-cf-https-connect.o
Removing lib/libcurl_la-cf-socket.lo
Removing lib/libcurl_la-cf-socket.o
Removing lib/libcurl_la-cfilters.lo
Removing lib/libcurl_la-cfilters.o
Removing lib/libcurl_la-conncache.lo
Removing lib/libcurl_la-conncache.o
Removing lib/libcurl_la-connect.lo
Removing lib/libcurl_la-connect.o
Removing lib/libcurl_la-content_encoding.lo
Removing lib/libcurl_la-content_encoding.o
Removing lib/libcurl_la-cookie.lo
Removing lib/libcurl_la-cookie.o
Removing lib/libcurl_la-cshutdn.lo
Removing lib/libcurl_la-cshutdn.o
Removing lib/libcurl_la-curl_addrinfo.lo
Removing lib/libcurl_la-curl_addrinfo.o
Removing lib/libcurl_la-curl_des.lo
Removing lib/libcurl_la-curl_des.o
Removing lib/libcurl_la-curl_endian.lo
Removing lib/libcurl_la-curl_endian.o
Removing lib/libcurl_la-curl_fnmatch.lo
Removing lib/libcurl_la-curl_fnmatch.o
Removing lib/libcurl_la-curl_get_line.lo
Removing lib/libcurl_la-curl_get_line.o
Removing lib/libcurl_la-curl_gethostname.lo
Removing lib/libcurl_la-curl_gethostname.o
Removing lib/libcurl_la-curl_gssapi.lo
Removing lib/libcurl_la-curl_gssapi.o
Removing lib/libcurl_la-curl_memrchr.lo
Removing lib/libcurl_la-curl_memrchr.o
Removing lib/libcurl_la-curl_ntlm_core.lo
Removing lib/libcurl_la-curl_ntlm_core.o
Removing lib/libcurl_la-curl_range.lo
Removing lib/libcurl_la-curl_range.o
Removing lib/libcurl_la-curl_rtmp.lo
Removing lib/libcurl_la-curl_rtmp.o
Removing lib/libcurl_la-curl_sasl.lo
Removing lib/libcurl_la-curl_sasl.o
Removing lib/libcurl_la-curl_sha512_256.lo
Removing lib/libcurl_la-curl_sha512_256.o
Removing lib/libcurl_la-curl_sspi.lo
Removing lib/libcurl_la-curl_sspi.o
Removing lib/libcurl_la-curl_threads.lo
Removing lib/libcurl_la-curl_threads.o
Removing lib/libcurl_la-curl_trc.lo
Removing lib/libcurl_la-curl_trc.o
Removing lib/libcurl_la-cw-out.lo
Removing lib/libcurl_la-cw-out.o
Removing lib/libcurl_la-cw-pause.lo
Removing lib/libcurl_la-cw-pause.o
Removing lib/libcurl_la-dict.lo
Removing lib/libcurl_la-dict.o
Removing lib/libcurl_la-doh.lo
Removing lib/libcurl_la-doh.o
Removing lib/libcurl_la-dynhds.lo
Removing lib/libcurl_la-dynhds.o
Removing lib/libcurl_la-easy.lo
Removing lib/libcurl_la-easy.o
Removing lib/libcurl_la-easygetopt.lo
Removing lib/libcurl_la-easygetopt.o
Removing lib/libcurl_la-easyoptions.lo
Removing lib/libcurl_la-easyoptions.o
Removing lib/libcurl_la-escape.lo
Removing lib/libcurl_la-escape.o
Removing lib/libcurl_la-fake_addrinfo.lo
Removing lib/libcurl_la-fake_addrinfo.o
Removing lib/libcurl_la-file.lo
Removing lib/libcurl_la-file.o
Removing lib/libcurl_la-fileinfo.lo
Removing lib/libcurl_la-fileinfo.o
Removing lib/libcurl_la-fopen.lo
Removing lib/libcurl_la-fopen.o
Removing lib/libcurl_la-formdata.lo
Removing lib/libcurl_la-formdata.o
Removing lib/libcurl_la-ftp.lo
Removing lib/libcurl_la-ftp.o
Removing lib/libcurl_la-ftplistparser.lo
Removing lib/libcurl_la-ftplistparser.o
Removing lib/libcurl_la-getenv.lo
Removing lib/libcurl_la-getenv.o
Removing lib/libcurl_la-getinfo.lo
Removing lib/libcurl_la-getinfo.o
Removing lib/libcurl_la-gopher.lo
Removing lib/libcurl_la-gopher.o
Removing lib/libcurl_la-hash.lo
Removing lib/libcurl_la-hash.o
Removing lib/libcurl_la-headers.lo
Removing lib/libcurl_la-headers.o
Removing lib/libcurl_la-hmac.lo
Removing lib/libcurl_la-hmac.o
Removing lib/libcurl_la-hostip.lo
Removing lib/libcurl_la-hostip.o
Removing lib/libcurl_la-hostip4.lo
Removing lib/libcurl_la-hostip4.o
Removing lib/libcurl_la-hostip6.lo
Removing lib/libcurl_la-hostip6.o
Removing lib/libcurl_la-hsts.lo
Removing lib/libcurl_la-hsts.o
Removing lib/libcurl_la-http.lo
Removing lib/libcurl_la-http.o
Removing lib/libcurl_la-http1.lo
Removing lib/libcurl_la-http1.o
Removing lib/libcurl_la-http2.lo
Removing lib/libcurl_la-http2.o
Removing lib/libcurl_la-http_aws_sigv4.lo
Removing lib/libcurl_la-http_aws_sigv4.o
Removing lib/libcurl_la-http_chunks.lo
Removing lib/libcurl_la-http_chunks.o
Removing lib/libcurl_la-http_digest.lo
Removing lib/libcurl_la-http_digest.o
Removing lib/libcurl_la-http_negotiate.lo
Removing lib/libcurl_la-http_negotiate.o
Removing lib/libcurl_la-http_ntlm.lo
Removing lib/libcurl_la-http_ntlm.o
Removing lib/libcurl_la-http_proxy.lo
Removing lib/libcurl_la-http_proxy.o
Removing lib/libcurl_la-httpsrr.lo
Removing lib/libcurl_la-httpsrr.o
Removing lib/libcurl_la-idn.lo
Removing lib/libcurl_la-idn.o
Removing lib/libcurl_la-if2ip.lo
Removing lib/libcurl_la-if2ip.o
Removing lib/libcurl_la-imap.lo
Removing lib/libcurl_la-imap.o
Removing lib/libcurl_la-krb5.lo
Removing lib/libcurl_la-krb5.o
Removing lib/libcurl_la-ldap.lo
Removing lib/libcurl_la-ldap.o
Removing lib/libcurl_la-llist.lo
Removing lib/libcurl_la-llist.o
Removing lib/libcurl_la-macos.lo
Removing lib/libcurl_la-macos.o
Removing lib/libcurl_la-md4.lo
Removing lib/libcurl_la-md4.o
Removing lib/libcurl_la-md5.lo
Removing lib/libcurl_la-md5.o
Removing lib/libcurl_la-memdebug.lo
Removing lib/libcurl_la-memdebug.o
Removing lib/libcurl_la-mime.lo
Removing lib/libcurl_la-mime.o
Removing lib/libcurl_la-mprintf.lo
Removing lib/libcurl_la-mprintf.o
Removing lib/libcurl_la-mqtt.lo
Removing lib/libcurl_la-mqtt.o
Removing lib/libcurl_la-multi.lo
Removing lib/libcurl_la-multi.o
Removing lib/libcurl_la-multi_ev.lo
Removing lib/libcurl_la-multi_ev.o
Removing lib/libcurl_la-netrc.lo
Removing lib/libcurl_la-netrc.o
Removing lib/libcurl_la-noproxy.lo
Removing lib/libcurl_la-noproxy.o
Removing lib/libcurl_la-openldap.lo
Removing lib/libcurl_la-openldap.o
Removing lib/libcurl_la-parsedate.lo
Removing lib/libcurl_la-parsedate.o
Removing lib/libcurl_la-pingpong.lo
Removing lib/libcurl_la-pingpong.o
Removing lib/libcurl_la-pop3.lo
Removing lib/libcurl_la-pop3.o
Removing lib/libcurl_la-progress.lo
Removing lib/libcurl_la-progress.o
Removing lib/libcurl_la-psl.lo
Removing lib/libcurl_la-psl.o
Removing lib/libcurl_la-rand.lo
Removing lib/libcurl_la-rand.o
Removing lib/libcurl_la-rename.lo
Removing lib/libcurl_la-rename.o
Removing lib/libcurl_la-request.lo
Removing lib/libcurl_la-request.o
Removing lib/libcurl_la-rtsp.lo
Removing lib/libcurl_la-rtsp.o
Removing lib/libcurl_la-select.lo
Removing lib/libcurl_la-select.o
Removing lib/libcurl_la-sendf.lo
Removing lib/libcurl_la-sendf.o
Removing lib/libcurl_la-setopt.lo
Removing lib/libcurl_la-setopt.o
Removing lib/libcurl_la-sha256.lo
Removing lib/libcurl_la-sha256.o
Removing lib/libcurl_la-share.lo
Removing lib/libcurl_la-share.o
Removing lib/libcurl_la-slist.lo
Removing lib/libcurl_la-slist.o
Removing lib/libcurl_la-smb.lo
Removing lib/libcurl_la-smb.o
Removing lib/libcurl_la-smtp.lo
Removing lib/libcurl_la-smtp.o
Removing lib/libcurl_la-socketpair.lo
Removing lib/libcurl_la-socketpair.o
Removing lib/libcurl_la-socks.lo
Removing lib/libcurl_la-socks.o
Removing lib/libcurl_la-socks_gssapi.lo
Removing lib/libcurl_la-socks_gssapi.o
Removing lib/libcurl_la-socks_sspi.lo
Removing lib/libcurl_la-socks_sspi.o
Removing lib/libcurl_la-speedcheck.lo
Removing lib/libcurl_la-speedcheck.o
Removing lib/libcurl_la-splay.lo
Removing lib/libcurl_la-splay.o
Removing lib/libcurl_la-strcase.lo
Removing lib/libcurl_la-strcase.o
Removing lib/libcurl_la-strdup.lo
Removing lib/libcurl_la-strdup.o
Removing lib/libcurl_la-strequal.lo
Removing lib/libcurl_la-strequal.o
Removing lib/libcurl_la-strerror.lo
Removing lib/libcurl_la-strerror.o
Removing lib/libcurl_la-system_win32.lo
Removing lib/libcurl_la-system_win32.o
Removing lib/libcurl_la-telnet.lo
Removing lib/libcurl_la-telnet.o
Removing lib/libcurl_la-tftp.lo
Removing lib/libcurl_la-tftp.o
Removing lib/libcurl_la-transfer.lo
Removing lib/libcurl_la-transfer.o
Removing lib/libcurl_la-uint-bset.lo
Removing lib/libcurl_la-uint-bset.o
Removing lib/libcurl_la-uint-hash.lo
Removing lib/libcurl_la-uint-hash.o
Removing lib/libcurl_la-uint-spbset.lo
Removing lib/libcurl_la-uint-spbset.o
Removing lib/libcurl_la-uint-table.lo
Removing lib/libcurl_la-uint-table.o
Removing lib/libcurl_la-url.lo
Removing lib/libcurl_la-url.o
Removing lib/libcurl_la-urlapi.lo
Removing lib/libcurl_la-urlapi.o
Removing lib/libcurl_la-version.lo
Removing lib/libcurl_la-version.o
Removing lib/libcurl_la-ws.lo
Removing lib/libcurl_la-ws.o
Removing lib/libcurlu.la
Removing lib/libcurlu_la-altsvc.lo
Removing lib/libcurlu_la-altsvc.o
Removing lib/libcurlu_la-amigaos.lo
Removing lib/libcurlu_la-amigaos.o
Removing lib/libcurlu_la-asyn-ares.lo
Removing lib/libcurlu_la-asyn-ares.o
Removing lib/libcurlu_la-asyn-base.lo
Removing lib/libcurlu_la-asyn-base.o
Removing lib/libcurlu_la-asyn-thrdd.lo
Removing lib/libcurlu_la-asyn-thrdd.o
Removing lib/libcurlu_la-bufq.lo
Removing lib/libcurlu_la-bufq.o
Removing lib/libcurlu_la-bufref.lo
Removing lib/libcurlu_la-bufref.o
Removing lib/libcurlu_la-cf-h1-proxy.lo
Removing lib/libcurlu_la-cf-h1-proxy.o
Removing lib/libcurlu_la-cf-h2-proxy.lo
Removing lib/libcurlu_la-cf-h2-proxy.o
Removing lib/libcurlu_la-cf-haproxy.lo
Removing lib/libcurlu_la-cf-haproxy.o
Removing lib/libcurlu_la-cf-https-connect.lo
Removing lib/libcurlu_la-cf-https-connect.o
Removing lib/libcurlu_la-cf-socket.lo
Removing lib/libcurlu_la-cf-socket.o
Removing lib/libcurlu_la-cfilters.lo
Removing lib/libcurlu_la-cfilters.o
Removing lib/libcurlu_la-conncache.lo
Removing lib/libcurlu_la-conncache.o
Removing lib/libcurlu_la-connect.lo
Removing lib/libcurlu_la-connect.o
Removing lib/libcurlu_la-content_encoding.lo
Removing lib/libcurlu_la-content_encoding.o
Removing lib/libcurlu_la-cookie.lo
Removing lib/libcurlu_la-cookie.o
Removing lib/libcurlu_la-cshutdn.lo
Removing lib/libcurlu_la-cshutdn.o
Removing lib/libcurlu_la-curl_addrinfo.lo
Removing lib/libcurlu_la-curl_addrinfo.o
Removing lib/libcurlu_la-curl_des.lo
Removing lib/libcurlu_la-curl_des.o
Removing lib/libcurlu_la-curl_endian.lo
Removing lib/libcurlu_la-curl_endian.o
Removing lib/libcurlu_la-curl_fnmatch.lo
Removing lib/libcurlu_la-curl_fnmatch.o
Removing lib/libcurlu_la-curl_get_line.lo
Removing lib/libcurlu_la-curl_get_line.o
Removing lib/libcurlu_la-curl_gethostname.lo
Removing lib/libcurlu_la-curl_gethostname.o
Removing lib/libcurlu_la-curl_gssapi.lo
Removing lib/libcurlu_la-curl_gssapi.o
Removing lib/libcurlu_la-curl_memrchr.lo
Removing lib/libcurlu_la-curl_memrchr.o
Removing lib/libcurlu_la-curl_ntlm_core.lo
Removing lib/libcurlu_la-curl_ntlm_core.o
Removing lib/libcurlu_la-curl_range.lo
Removing lib/libcurlu_la-curl_range.o
Removing lib/libcurlu_la-curl_rtmp.lo
Removing lib/libcurlu_la-curl_rtmp.o
Removing lib/libcurlu_la-curl_sasl.lo
Removing lib/libcurlu_la-curl_sasl.o
Removing lib/libcurlu_la-curl_sha512_256.lo
Removing lib/libcurlu_la-curl_sha512_256.o
Removing lib/libcurlu_la-curl_sspi.lo
Removing lib/libcurlu_la-curl_sspi.o
Removing lib/libcurlu_la-curl_threads.lo
Removing lib/libcurlu_la-curl_threads.o
Removing lib/libcurlu_la-curl_trc.lo
Removing lib/libcurlu_la-curl_trc.o
Removing lib/libcurlu_la-cw-out.lo
Removing lib/libcurlu_la-cw-out.o
Removing lib/libcurlu_la-cw-pause.lo
Removing lib/libcurlu_la-cw-pause.o
Removing lib/libcurlu_la-dict.lo
Removing lib/libcurlu_la-dict.o
Removing lib/libcurlu_la-doh.lo
Removing lib/libcurlu_la-doh.o
Removing lib/libcurlu_la-dynhds.lo
Removing lib/libcurlu_la-dynhds.o
Removing lib/libcurlu_la-easy.lo
Removing lib/libcurlu_la-easy.o
Removing lib/libcurlu_la-easygetopt.lo
Removing lib/libcurlu_la-easygetopt.o
Removing lib/libcurlu_la-easyoptions.lo
Removing lib/libcurlu_la-easyoptions.o
Removing lib/libcurlu_la-escape.lo
Removing lib/libcurlu_la-escape.o
Removing lib/libcurlu_la-fake_addrinfo.lo
Removing lib/libcurlu_la-fake_addrinfo.o
Removing lib/libcurlu_la-file.lo
Removing lib/libcurlu_la-file.o
Removing lib/libcurlu_la-fileinfo.lo
Removing lib/libcurlu_la-fileinfo.o
Removing lib/libcurlu_la-fopen.lo
Removing lib/libcurlu_la-fopen.o
Removing lib/libcurlu_la-formdata.lo
Removing lib/libcurlu_la-formdata.o
Removing lib/libcurlu_la-ftp.lo
Removing lib/libcurlu_la-ftp.o
Removing lib/libcurlu_la-ftplistparser.lo
Removing lib/libcurlu_la-ftplistparser.o
Removing lib/libcurlu_la-getenv.lo
Removing lib/libcurlu_la-getenv.o
Removing lib/libcurlu_la-getinfo.lo
Removing lib/libcurlu_la-getinfo.o
Removing lib/libcurlu_la-gopher.lo
Removing lib/libcurlu_la-gopher.o
Removing lib/libcurlu_la-hash.lo
Removing lib/libcurlu_la-hash.o
Removing lib/libcurlu_la-headers.lo
Removing lib/libcurlu_la-headers.o
Removing lib/libcurlu_la-hmac.lo
Removing lib/libcurlu_la-hmac.o
Removing lib/libcurlu_la-hostip.lo
Removing lib/libcurlu_la-hostip.o
Removing lib/libcurlu_la-hostip4.lo
Removing lib/libcurlu_la-hostip4.o
Removing lib/libcurlu_la-hostip6.lo
Removing lib/libcurlu_la-hostip6.o
Removing lib/libcurlu_la-hsts.lo
Removing lib/libcurlu_la-hsts.o
Removing lib/libcurlu_la-http.lo
Removing lib/libcurlu_la-http.o
Removing lib/libcurlu_la-http1.lo
Removing lib/libcurlu_la-http1.o
Removing lib/libcurlu_la-http2.lo
Removing lib/libcurlu_la-http2.o
Removing lib/libcurlu_la-http_aws_sigv4.lo
Removing lib/libcurlu_la-http_aws_sigv4.o
Removing lib/libcurlu_la-http_chunks.lo
Removing lib/libcurlu_la-http_chunks.o
Removing lib/libcurlu_la-http_digest.lo
Removing lib/libcurlu_la-http_digest.o
Removing lib/libcurlu_la-http_negotiate.lo
Removing lib/libcurlu_la-http_negotiate.o
Removing lib/libcurlu_la-http_ntlm.lo
Removing lib/libcurlu_la-http_ntlm.o
Removing lib/libcurlu_la-http_proxy.lo
Removing lib/libcurlu_la-http_proxy.o
Removing lib/libcurlu_la-httpsrr.lo
Removing lib/libcurlu_la-httpsrr.o
Removing lib/libcurlu_la-idn.lo
Removing lib/libcurlu_la-idn.o
Removing lib/libcurlu_la-if2ip.lo
Removing lib/libcurlu_la-if2ip.o
Removing lib/libcurlu_la-imap.lo
Removing lib/libcurlu_la-imap.o
Removing lib/libcurlu_la-krb5.lo
Removing lib/libcurlu_la-krb5.o
Removing lib/libcurlu_la-ldap.lo
Removing lib/libcurlu_la-ldap.o
Removing lib/libcurlu_la-llist.lo
Removing lib/libcurlu_la-llist.o
Removing lib/libcurlu_la-macos.lo
Removing lib/libcurlu_la-macos.o
Removing lib/libcurlu_la-md4.lo
Removing lib/libcurlu_la-md4.o
Removing lib/libcurlu_la-md5.lo
Removing lib/libcurlu_la-md5.o
Removing lib/libcurlu_la-memdebug.lo
Removing lib/libcurlu_la-memdebug.o
Removing lib/libcurlu_la-mime.lo
Removing lib/libcurlu_la-mime.o
Removing lib/libcurlu_la-mprintf.lo
Removing lib/libcurlu_la-mprintf.o
Removing lib/libcurlu_la-mqtt.lo
Removing lib/libcurlu_la-mqtt.o
Removing lib/libcurlu_la-multi.lo
Removing lib/libcurlu_la-multi.o
Removing lib/libcurlu_la-multi_ev.lo
Removing lib/libcurlu_la-multi_ev.o
Removing lib/libcurlu_la-netrc.lo
Removing lib/libcurlu_la-netrc.o
Removing lib/libcurlu_la-noproxy.lo
Removing lib/libcurlu_la-noproxy.o
Removing lib/libcurlu_la-openldap.lo
Removing lib/libcurlu_la-openldap.o
Removing lib/libcurlu_la-parsedate.lo
Removing lib/libcurlu_la-parsedate.o
Removing lib/libcurlu_la-pingpong.lo
Removing lib/libcurlu_la-pingpong.o
Removing lib/libcurlu_la-pop3.lo
Removing lib/libcurlu_la-pop3.o
Removing lib/libcurlu_la-progress.lo
Removing lib/libcurlu_la-progress.o
Removing lib/libcurlu_la-psl.lo
Removing lib/libcurlu_la-psl.o
Removing lib/libcurlu_la-rand.lo
Removing lib/libcurlu_la-rand.o
Removing lib/libcurlu_la-rename.lo
Removing lib/libcurlu_la-rename.o
Removing lib/libcurlu_la-request.lo
Removing lib/libcurlu_la-request.o
Removing lib/libcurlu_la-rtsp.lo
Removing lib/libcurlu_la-rtsp.o
Removing lib/libcurlu_la-select.lo
Removing lib/libcurlu_la-select.o
Removing lib/libcurlu_la-sendf.lo
Removing lib/libcurlu_la-sendf.o
Removing lib/libcurlu_la-setopt.lo
Removing lib/libcurlu_la-setopt.o
Removing lib/libcurlu_la-sha256.lo
Removing lib/libcurlu_la-sha256.o
Removing lib/libcurlu_la-share.lo
Removing lib/libcurlu_la-share.o
Removing lib/libcurlu_la-slist.lo
Removing lib/libcurlu_la-slist.o
Removing lib/libcurlu_la-smb.lo
Removing lib/libcurlu_la-smb.o
Removing lib/libcurlu_la-smtp.lo
Removing lib/libcurlu_la-smtp.o
Removing lib/libcurlu_la-socketpair.lo
Removing lib/libcurlu_la-socketpair.o
Removing lib/libcurlu_la-socks.lo
Removing lib/libcurlu_la-socks.o
Removing lib/libcurlu_la-socks_gssapi.lo
Removing lib/libcurlu_la-socks_gssapi.o
Removing lib/libcurlu_la-socks_sspi.lo
Removing lib/libcurlu_la-socks_sspi.o
Removing lib/libcurlu_la-speedcheck.lo
Removing lib/libcurlu_la-speedcheck.o
Removing lib/libcurlu_la-splay.lo
Removing lib/libcurlu_la-splay.o
Removing lib/libcurlu_la-strcase.lo
Removing lib/libcurlu_la-strcase.o
Removing lib/libcurlu_la-strdup.lo
Removing lib/libcurlu_la-strdup.o
Removing lib/libcurlu_la-strequal.lo
Removing lib/libcurlu_la-strequal.o
Removing lib/libcurlu_la-strerror.lo
Removing lib/libcurlu_la-strerror.o
Removing lib/libcurlu_la-system_win32.lo
Removing lib/libcurlu_la-system_win32.o
Removing lib/libcurlu_la-telnet.lo
Removing lib/libcurlu_la-telnet.o
Removing lib/libcurlu_la-tftp.lo
Removing lib/libcurlu_la-tftp.o
Removing lib/libcurlu_la-transfer.lo
Removing lib/libcurlu_la-transfer.o
Removing lib/libcurlu_la-uint-bset.lo
Removing lib/libcurlu_la-uint-bset.o
Removing lib/libcurlu_la-uint-hash.lo
Removing lib/libcurlu_la-uint-hash.o
Removing lib/libcurlu_la-uint-spbset.lo
Removing lib/libcurlu_la-uint-spbset.o
Removing lib/libcurlu_la-uint-table.lo
Removing lib/libcurlu_la-uint-table.o
Removing lib/libcurlu_la-url.lo
Removing lib/libcurlu_la-url.o
Removing lib/libcurlu_la-urlapi.lo
Removing lib/libcurlu_la-urlapi.o
Removing lib/libcurlu_la-version.lo
Removing lib/libcurlu_la-version.o
Removing lib/libcurlu_la-ws.lo
Removing lib/libcurlu_la-ws.o
Removing lib/stamp-h1
Removing lib/unitprotos.h
Removing lib/vauth/.deps/
Removing lib/vauth/.dirstamp
Removing lib/vauth/libcurl_la-cleartext.lo
Removing lib/vauth/libcurl_la-cleartext.o
Removing lib/vauth/libcurl_la-cram.lo
Removing lib/vauth/libcurl_la-cram.o
Removing lib/vauth/libcurl_la-digest.lo
Removing lib/vauth/libcurl_la-digest.o
Removing lib/vauth/libcurl_la-digest_sspi.lo
Removing lib/vauth/libcurl_la-digest_sspi.o
Removing lib/vauth/libcurl_la-gsasl.lo
Removing lib/vauth/libcurl_la-gsasl.o
Removing lib/vauth/libcurl_la-krb5_gssapi.lo
Removing lib/vauth/libcurl_la-krb5_gssapi.o
Removing lib/vauth/libcurl_la-krb5_sspi.lo
Removing lib/vauth/libcurl_la-krb5_sspi.o
Removing lib/vauth/libcurl_la-ntlm.lo
Removing lib/vauth/libcurl_la-ntlm.o
Removing lib/vauth/libcurl_la-ntlm_sspi.lo
Removing lib/vauth/libcurl_la-ntlm_sspi.o
Removing lib/vauth/libcurl_la-oauth2.lo
Removing lib/vauth/libcurl_la-oauth2.o
Removing lib/vauth/libcurl_la-spnego_gssapi.lo
Removing lib/vauth/libcurl_la-spnego_gssapi.o
Removing lib/vauth/libcurl_la-spnego_sspi.lo
Removing lib/vauth/libcurl_la-spnego_sspi.o
Removing lib/vauth/libcurl_la-vauth.lo
Removing lib/vauth/libcurl_la-vauth.o
Removing lib/vauth/libcurlu_la-cleartext.lo
Removing lib/vauth/libcurlu_la-cleartext.o
Removing lib/vauth/libcurlu_la-cram.lo
Removing lib/vauth/libcurlu_la-cram.o
Removing lib/vauth/libcurlu_la-digest.lo
Removing lib/vauth/libcurlu_la-digest.o
Removing lib/vauth/libcurlu_la-digest_sspi.lo
Removing lib/vauth/libcurlu_la-digest_sspi.o
Removing lib/vauth/libcurlu_la-gsasl.lo
Removing lib/vauth/libcurlu_la-gsasl.o
Removing lib/vauth/libcurlu_la-krb5_gssapi.lo
Removing lib/vauth/libcurlu_la-krb5_gssapi.o
Removing lib/vauth/libcurlu_la-krb5_sspi.lo
Removing lib/vauth/libcurlu_la-krb5_sspi.o
Removing lib/vauth/libcurlu_la-ntlm.lo
Removing lib/vauth/libcurlu_la-ntlm.o
Removing lib/vauth/libcurlu_la-ntlm_sspi.lo
Removing lib/vauth/libcurlu_la-ntlm_sspi.o
Removing lib/vauth/libcurlu_la-oauth2.lo
Removing lib/vauth/libcurlu_la-oauth2.o
Removing lib/vauth/libcurlu_la-spnego_gssapi.lo
Removing lib/vauth/libcurlu_la-spnego_gssapi.o
Removing lib/vauth/libcurlu_la-spnego_sspi.lo
Removing lib/vauth/libcurlu_la-spnego_sspi.o
Removing lib/vauth/libcurlu_la-vauth.lo
Removing lib/vauth/libcurlu_la-vauth.o
Removing lib/vquic/.deps/
Removing lib/vquic/.dirstamp
Removing lib/vquic/libcurl_la-curl_ngtcp2.lo
Removing lib/vquic/libcurl_la-curl_ngtcp2.o
Removing lib/vquic/libcurl_la-curl_osslq.lo
Removing lib/vquic/libcurl_la-curl_osslq.o
Removing lib/vquic/libcurl_la-curl_quiche.lo
Removing lib/vquic/libcurl_la-curl_quiche.o
Removing lib/vquic/libcurl_la-vquic-tls.lo
Removing lib/vquic/libcurl_la-vquic-tls.o
Removing lib/vquic/libcurl_la-vquic.lo
Removing lib/vquic/libcurl_la-vquic.o
Removing lib/vquic/libcurlu_la-curl_ngtcp2.lo
Removing lib/vquic/libcurlu_la-curl_ngtcp2.o
Removing lib/vquic/libcurlu_la-curl_osslq.lo
Removing lib/vquic/libcurlu_la-curl_osslq.o
Removing lib/vquic/libcurlu_la-curl_quiche.lo
Removing lib/vquic/libcurlu_la-curl_quiche.o
Removing lib/vquic/libcurlu_la-vquic-tls.lo
Removing lib/vquic/libcurlu_la-vquic-tls.o
Removing lib/vquic/libcurlu_la-vquic.lo
Removing lib/vquic/libcurlu_la-vquic.o
Removing lib/vssh/.deps/
Removing lib/vssh/.dirstamp
Removing lib/vssh/libcurl_la-curl_path.lo
Removing lib/vssh/libcurl_la-curl_path.o
Removing lib/vssh/libcurl_la-libssh.lo
Removing lib/vssh/libcurl_la-libssh.o
Removing lib/vssh/libcurl_la-libssh2.lo
Removing lib/vssh/libcurl_la-libssh2.o
Removing lib/vssh/libcurl_la-wolfssh.lo
Removing lib/vssh/libcurl_la-wolfssh.o
Removing lib/vssh/libcurlu_la-curl_path.lo
Removing lib/vssh/libcurlu_la-curl_path.o
Removing lib/vssh/libcurlu_la-libssh.lo
Removing lib/vssh/libcurlu_la-libssh.o
Removing lib/vssh/libcurlu_la-libssh2.lo
Removing lib/vssh/libcurlu_la-libssh2.o
Removing lib/vssh/libcurlu_la-wolfssh.lo
Removing lib/vssh/libcurlu_la-wolfssh.o
Removing lib/vtls/.deps/
Removing lib/vtls/.dirstamp
Removing lib/vtls/libcurl_la-cipher_suite.lo
Removing lib/vtls/libcurl_la-cipher_suite.o
Removing lib/vtls/libcurl_la-gtls.lo
Removing lib/vtls/libcurl_la-gtls.o
Removing lib/vtls/libcurl_la-hostcheck.lo
Removing lib/vtls/libcurl_la-hostcheck.o
Removing lib/vtls/libcurl_la-keylog.lo
Removing lib/vtls/libcurl_la-keylog.o
Removing lib/vtls/libcurl_la-mbedtls.lo
Removing lib/vtls/libcurl_la-mbedtls.o
Removing lib/vtls/libcurl_la-mbedtls_threadlock.lo
Removing lib/vtls/libcurl_la-mbedtls_threadlock.o
Removing lib/vtls/libcurl_la-openssl.lo
Removing lib/vtls/libcurl_la-openssl.o
Removing lib/vtls/libcurl_la-rustls.lo
Removing lib/vtls/libcurl_la-rustls.o
Removing lib/vtls/libcurl_la-schannel.lo
Removing lib/vtls/libcurl_la-schannel.o
Removing lib/vtls/libcurl_la-schannel_verify.lo
Removing lib/vtls/libcurl_la-schannel_verify.o
Removing lib/vtls/libcurl_la-vtls.lo
Removing lib/vtls/libcurl_la-vtls.o
Removing lib/vtls/libcurl_la-vtls_scache.lo
Removing lib/vtls/libcurl_la-vtls_scache.o
Removing lib/vtls/libcurl_la-vtls_spack.lo
Removing lib/vtls/libcurl_la-vtls_spack.o
Removing lib/vtls/libcurl_la-wolfssl.lo
Removing lib/vtls/libcurl_la-wolfssl.o
Removing lib/vtls/libcurl_la-x509asn1.lo
Removing lib/vtls/libcurl_la-x509asn1.o
Removing lib/vtls/libcurlu_la-cipher_suite.lo
Removing lib/vtls/libcurlu_la-cipher_suite.o
Removing lib/vtls/libcurlu_la-gtls.lo
Removing lib/vtls/libcurlu_la-gtls.o
Removing lib/vtls/libcurlu_la-hostcheck.lo
Removing lib/vtls/libcurlu_la-hostcheck.o
Removing lib/vtls/libcurlu_la-keylog.lo
Removing lib/vtls/libcurlu_la-keylog.o
Removing lib/vtls/libcurlu_la-mbedtls.lo
Removing lib/vtls/libcurlu_la-mbedtls.o
Removing lib/vtls/libcurlu_la-mbedtls_threadlock.lo
Removing lib/vtls/libcurlu_la-mbedtls_threadlock.o
Removing lib/vtls/libcurlu_la-openssl.lo
Removing lib/vtls/libcurlu_la-openssl.o
Removing lib/vtls/libcurlu_la-rustls.lo
Removing lib/vtls/libcurlu_la-rustls.o
Removing lib/vtls/libcurlu_la-schannel.lo
Removing lib/vtls/libcurlu_la-schannel.o
Removing lib/vtls/libcurlu_la-schannel_verify.lo
Removing lib/vtls/libcurlu_la-schannel_verify.o
Removing lib/vtls/libcurlu_la-vtls.lo
Removing lib/vtls/libcurlu_la-vtls.o
Removing lib/vtls/libcurlu_la-vtls_scache.lo
Removing lib/vtls/libcurlu_la-vtls_scache.o
Removing lib/vtls/libcurlu_la-vtls_spack.lo
Removing lib/vtls/libcurlu_la-vtls_spack.o
Removing lib/vtls/libcurlu_la-wolfssl.lo
Removing lib/vtls/libcurlu_la-wolfssl.o
Removing lib/vtls/libcurlu_la-x509asn1.lo
Removing lib/vtls/libcurlu_la-x509asn1.o
Removing libcurl.pc
Removing libtool
Removing ltmain.sh
Removing m4/libtool.m4
Removing m4/ltoptions.m4
Removing m4/ltsugar.m4
Removing m4/ltversion.m4
Removing m4/lt~obsolete.m4
Removing missing
Removing packages/Makefile
Removing packages/Makefile.in
Removing packages/vms/Makefile
Removing packages/vms/Makefile.in
Removing scripts/Makefile
Removing scripts/Makefile.in
Removing src/.deps/
Removing src/.libs/
Removing src/Makefile
Removing src/Makefile.in
Removing src/curl
Removing src/curl-config2setopts.o
Removing src/curl-slist_wc.o
Removing src/curl-terminal.o
Removing src/curl-tool_bname.o
Removing src/curl-tool_ca_embed.o
Removing src/curl-tool_cb_dbg.o
Removing src/curl-tool_cb_hdr.o
Removing src/curl-tool_cb_prg.o
Removing src/curl-tool_cb_rea.o
Removing src/curl-tool_cb_see.o
Removing src/curl-tool_cb_soc.o
Removing src/curl-tool_cb_wrt.o
Removing src/curl-tool_cfgable.o
Removing src/curl-tool_dirhie.o
Removing src/curl-tool_doswin.o
Removing src/curl-tool_easysrc.o
Removing src/curl-tool_filetime.o
Removing src/curl-tool_findfile.o
Removing src/curl-tool_formparse.o
Removing src/curl-tool_getparam.o
Removing src/curl-tool_getpass.o
Removing src/curl-tool_help.o
Removing src/curl-tool_helpers.o
Removing src/curl-tool_hugehelp.o
Removing src/curl-tool_ipfs.o
Removing src/curl-tool_libinfo.o
Removing src/curl-tool_listhelp.o
Removing src/curl-tool_main.o
Removing src/curl-tool_msgs.o
Removing src/curl-tool_operate.o
Removing src/curl-tool_operhlp.o
Removing src/curl-tool_paramhlp.o
Removing src/curl-tool_parsecfg.o
Removing src/curl-tool_progress.o
Removing src/curl-tool_setopt.o
Removing src/curl-tool_ssls.o
Removing src/curl-tool_stderr.o
Removing src/curl-tool_strdup.o
Removing src/curl-tool_urlglob.o
Removing src/curl-tool_util.o
Removing src/curl-tool_vms.o
Removing src/curl-tool_writeout.o
Removing src/curl-tool_writeout_json.o
Removing src/curl-tool_xattr.o
Removing src/curl-var.o
Removing src/curlinfo
Removing src/curlinfo.o
Removing src/libcurltool.la
Removing src/libcurltool_la-config2setopts.lo
Removing src/libcurltool_la-config2setopts.o
Removing src/libcurltool_la-slist_wc.lo
Removing src/libcurltool_la-slist_wc.o
Removing src/libcurltool_la-terminal.lo
Removing src/libcurltool_la-terminal.o
Removing src/libcurltool_la-tool_bname.lo
Removing src/libcurltool_la-tool_bname.o
Removing src/libcurltool_la-tool_cb_dbg.lo
Removing src/libcurltool_la-tool_cb_dbg.o
Removing src/libcurltool_la-tool_cb_hdr.lo
Removing src/libcurltool_la-tool_cb_hdr.o
Removing src/libcurltool_la-tool_cb_prg.lo
Removing src/libcurltool_la-tool_cb_prg.o
Removing src/libcurltool_la-tool_cb_rea.lo
Removing src/libcurltool_la-tool_cb_rea.o
Removing src/libcurltool_la-tool_cb_see.lo
Removing src/libcurltool_la-tool_cb_see.o
Removing src/libcurltool_la-tool_cb_soc.lo
Removing src/libcurltool_la-tool_cb_soc.o
Removing src/libcurltool_la-tool_cb_wrt.lo
Removing src/libcurltool_la-tool_cb_wrt.o
Removing src/libcurltool_la-tool_cfgable.lo
Removing src/libcurltool_la-tool_cfgable.o
Removing src/libcurltool_la-tool_dirhie.lo
Removing src/libcurltool_la-tool_dirhie.o
Removing src/libcurltool_la-tool_doswin.lo
Removing src/libcurltool_la-tool_doswin.o
Removing src/libcurltool_la-tool_easysrc.lo
Removing src/libcurltool_la-tool_easysrc.o
Removing src/libcurltool_la-tool_filetime.lo
Removing src/libcurltool_la-tool_filetime.o
Removing src/libcurltool_la-tool_findfile.lo
Removing src/libcurltool_la-tool_findfile.o
Removing src/libcurltool_la-tool_formparse.lo
Removing src/libcurltool_la-tool_formparse.o
Removing src/libcurltool_la-tool_getparam.lo
Removing src/libcurltool_la-tool_getparam.o
Removing src/libcurltool_la-tool_getpass.lo
Removing src/libcurltool_la-tool_getpass.o
Removing src/libcurltool_la-tool_help.lo
Removing src/libcurltool_la-tool_help.o
Removing src/libcurltool_la-tool_helpers.lo
Removing src/libcurltool_la-tool_helpers.o
Removing src/libcurltool_la-tool_ipfs.lo
Removing src/libcurltool_la-tool_ipfs.o
Removing src/libcurltool_la-tool_libinfo.lo
Removing src/libcurltool_la-tool_libinfo.o
Removing src/libcurltool_la-tool_listhelp.lo
Removing src/libcurltool_la-tool_listhelp.o
Removing src/libcurltool_la-tool_main.lo
Removing src/libcurltool_la-tool_main.o
Removing src/libcurltool_la-tool_msgs.lo
Removing src/libcurltool_la-tool_msgs.o
Removing src/libcurltool_la-tool_operate.lo
Removing src/libcurltool_la-tool_operate.o
Removing src/libcurltool_la-tool_operhlp.lo
Removing src/libcurltool_la-tool_operhlp.o
Removing src/libcurltool_la-tool_paramhlp.lo
Removing src/libcurltool_la-tool_paramhlp.o
Removing src/libcurltool_la-tool_parsecfg.lo
Removing src/libcurltool_la-tool_parsecfg.o
Removing src/libcurltool_la-tool_progress.lo
Removing src/libcurltool_la-tool_progress.o
Removing src/libcurltool_la-tool_setopt.lo
Removing src/libcurltool_la-tool_setopt.o
Removing src/libcurltool_la-tool_ssls.lo
Removing src/libcurltool_la-tool_ssls.o
Removing src/libcurltool_la-tool_stderr.lo
Removing src/libcurltool_la-tool_stderr.o
Removing src/libcurltool_la-tool_strdup.lo
Removing src/libcurltool_la-tool_strdup.o
Removing src/libcurltool_la-tool_urlglob.lo
Removing src/libcurltool_la-tool_urlglob.o
Removing src/libcurltool_la-tool_util.lo
Removing src/libcurltool_la-tool_util.o
Removing src/libcurltool_la-tool_vms.lo
Removing src/libcurltool_la-tool_vms.o
Removing src/libcurltool_la-tool_writeout.lo
Removing src/libcurltool_la-tool_writeout.o
Removing src/libcurltool_la-tool_writeout_json.lo
Removing src/libcurltool_la-tool_writeout_json.o
Removing src/libcurltool_la-tool_xattr.lo
Removing src/libcurltool_la-tool_xattr.o
Removing src/libcurltool_la-var.lo
Removing src/libcurltool_la-var.o
Removing src/tool_ca_embed.c
Removing src/tool_hugehelp.c
Removing tests/Makefile
Removing tests/Makefile.in
Removing tests/certs/Makefile
Removing tests/certs/Makefile.in
Removing tests/client/.deps/
Removing tests/client/Makefile
Removing tests/client/Makefile.in
Removing tests/config
Removing tests/configurehelp.pm
Removing tests/data/Makefile
Removing tests/data/Makefile.in
Removing tests/http/Makefile
Removing tests/http/Makefile.in
Removing tests/http/config.ini
Removing tests/libtest/.deps/
Removing tests/libtest/Makefile
Removing tests/libtest/Makefile.in
Removing tests/server/.deps/
Removing tests/server/Makefile
Removing tests/server/Makefile.in
Removing tests/tunit/.deps/
Removing tests/tunit/Makefile
Removing tests/tunit/Makefile.in
Removing tests/unit/.deps/
Removing tests/unit/Makefile
Removing tests/unit/Makefile.in
$ autoreconf -fi
libtoolize: putting auxiliary files in '.'.
libtoolize: copying file './ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIRS, 'm4'.
libtoolize: copying file 'm4/libtool.m4'
libtoolize: copying file 'm4/ltoptions.m4'
libtoolize: copying file 'm4/ltsugar.m4'
libtoolize: copying file 'm4/ltversion.m4'
libtoolize: copying file 'm4/lt~obsolete.m4'
libtoolize: Remember to add 'LT_INIT' to configure.ac.
configure.ac:128: installing './compile'
configure.ac:448: installing './config.guess'
configure.ac:448: installing './config.sub'
configure.ac:128: installing './install-sh'
configure.ac:134: installing './missing'
docs/examples/Makefile.am: installing './depcomp'
$ bash -c find . -name config.guess -exec cp /usr/share/misc/config.guess {} \;
$ bash -c find . -name config.sub -exec cp /usr/share/misc/config.sub {} \;
$ chmod +x configure
$ ./configure --disable-shared --without-ssl --disable-docs
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether make supports nested variables... yes
checking whether to enable debug build options... no
checking whether to enable compiler optimizer... (assumed) yes
checking whether to enable strict compiler warnings... no
checking whether to enable compiler warnings as errors... no
checking whether to enable curl debug memory tracking... no
checking whether to enable hiding of library internal symbols... yes
checking whether to enable c-ares for DNS lookups... no
checking whether to disable dependency on -lrt... (assumed no)
checking whether to enable HTTPSRR support... no
checking whether to enable ECH support... no
checking whether to enable SSL session export support... no
checking for path separator... :
checking for sed... /usr/bin/sed
checking for grep... /usr/bin/grep
checking that grep -E works... yes
checking for ar... /usr/bin/ar
checking for a BSD-compatible install... /usr/bin/install -c
checking for gcc... ccache gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether ccache gcc accepts -g... yes
checking for ccache gcc option to enable C11 features... none needed
checking whether ccache gcc understands -c and -o together... yes
checking how to run the C preprocessor... ccache gcc -E
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for stdatomic.h... yes
checking if _Atomic is available... yes
checking for a sed that does not truncate output... (cached) /usr/bin/sed
checking for code coverage support... no
checking whether build environment is sane... yes
checking for a race-free mkdir -p... /usr/bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports the include directive... yes (GNU style)
checking dependency style of ccache gcc... gcc3
checking curl version... 8.16.0-DEV
checking for httpd... no
checking for apache2... no
checking for apxs... no
configure: httpd/apache2 not in PATH, http tests disabled
configure: apxs not in PATH, http tests disabled
checking for sockd... no
checking for sockd... no
checking for nghttpx... no
checking for caddy... no
checking build system type... x86_64-pc-linux-gnu
checking host system type... x86_64-pc-linux-gnu
checking for grep that handles long lines and -e... (cached) /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking if OS is AIX (to define _ALL_SOURCE)... no
checking if _THREAD_SAFE is already defined... no
checking if _THREAD_SAFE is actually needed... no
checking if _THREAD_SAFE is onwards defined... no
checking if _REENTRANT is already defined... no
checking if _REENTRANT is actually needed... no
checking if _REENTRANT is onwards defined... no
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking how to print strings... printf
checking for a sed that does not truncate output... (cached) /usr/bin/sed
checking for fgrep... /usr/bin/grep -F
checking for ld used by ccache gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking how to convert x86_64-pc-linux-gnu file names to x86_64-pc-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-pc-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from ccache gcc object... ok
checking for sysroot... no
checking for a working dd... /usr/bin/dd
checking how to truncate binary pipes... /usr/bin/dd bs=4096 count=1
checking for mt... mt
checking if mt is a manifest tool... no
checking for dlfcn.h... yes
checking for objdir... .libs
checking if ccache gcc supports -fno-rtti -fno-exceptions... no
checking for ccache gcc option to produce PIC... -fPIC -DPIC
checking if ccache gcc PIC flag -fPIC -DPIC works... yes
checking if ccache gcc static flag -static works... yes
checking if ccache gcc supports -c -o file.o... yes
checking if ccache gcc supports -c -o file.o... (cached) yes
checking whether the ccache gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... no
checking whether to build static libraries... yes
checking whether to build shared libraries with -version-info... yes
checking whether to build shared libraries with -no-undefined... no
checking whether to build shared libraries with -mimpure-text... no
checking whether to build shared libraries with PIC... yes
checking whether to build static libraries with PIC... yes
checking whether to build shared libraries only... no
checking whether to build static libraries only... yes
checking for windres... no
checking if cpp -P is needed... yes
checking if cpp -P works... yes
checking if compiler is DEC/Compaq/HP C... no
checking if compiler is HP-UX C... no
checking if compiler is IBM C... no
checking if compiler is Intel C... no
checking if compiler is clang... no
checking if compiler is GNU C... yes
checking compiler version... gcc '1100' (raw: '11')
checking if compiler is SunPro C... no
checking if compiler is Tiny C... no
checking whether build target is a native Windows one... no
checking if compiler accepts some basic options... yes
configure: compiler options added: -Werror-implicit-function-declaration
checking if compiler optimizer assumed setting might be used... yes
checking if compiler accepts optimizer enabling options... yes
configure: compiler options added: -O2
checking if compiler accepts strict warning options... yes
configure: compiler options added: -Wno-system-headers
checking if compiler halts on compilation errors... yes
checking if compiler halts on negative sized arrays... yes
checking if compiler halts on function prototype mismatch... yes
checking if compiler supports hiding library internal symbols... yes
checking whether build target supports Win32 crypto API... no
checking whether to build libcurl and curl in "unity" mode... no
checking whether to support http... yes
checking whether to support ftp... yes
checking whether to support file... yes
checking whether to support IPFS... yes
checking whether to support ldap... yes
checking whether to support ldaps... yes
checking whether to support rtsp... yes
checking whether to support proxies... yes
checking whether to support dict... yes
checking whether to support telnet... yes
checking whether to support tftp... yes
checking whether to support pop3... yes
checking whether to support imap... yes
checking whether to support smb... yes
checking whether to support smtp... yes
checking whether to support gopher... yes
checking whether to support mqtt... no
checking whether to provide built-in manual... yes
checking whether to build documentation... no
checking whether to enable generation of C code... yes
checking whether to use libgcc... no
checking if X/Open network library is required... no
checking for gethostbyname... yes
checking whether build target is a native Windows one... (cached) no
checking for proto/bsdsocket.h... no
checking for connect in libraries... yes
checking for sys/types.h... (cached) yes
checking for monotonic clock_gettime... yes
checking for clock_gettime in libraries... no additional lib required
checking if monotonic clock_gettime works... yes
checking for sys/types.h... (cached) yes
checking for raw monotonic clock_gettime... yes
checking for pkg-config... /usr/bin/pkg-config
checking for zlib options with pkg-config... found
checking for zlib.h... yes
configure: found both libz and libz.h header
checking for BrotliDecoderDecompress in -lbrotlidec... no
checking for brotli/decode.h... no
checking for ZSTD_createDStream in -lzstd... no
checking for zstd.h... no
checking whether to enable IPv6... yes
checking if struct sockaddr_in6 has sin6_scope_id member... yes
checking if argv can be written to... yes
checking if GSS-API support is requested... no
checking whether to enable Windows native SSL/TLS... no
checking whether to enable Amiga native SSL/TLS (AmiSSL v5)... no
checking for pkg-config... (cached) /usr/bin/pkg-config
checking for libpsl options with pkg-config... found
checking for psl_builtin in -lpsl... yes
checking for libpsl.h... yes
checking for library containing gsasl_init... no
checking for lber.h... no
checking for ldap.h... no
checking for ldap_ssl.h... no
checking for LDAP libraries... cannot find LDAP libraries
checking for RTMP_Init in -lrtmp... no
checking whether versioned symbols are wanted... no
checking whether to build with libidn2... (assumed) yes
checking for pkg-config... (cached) /usr/bin/pkg-config
checking for libidn2 options with pkg-config... no
configure: IDN_LIBS: "-lidn2"
configure: IDN_LDFLAGS: ""
configure: IDN_CPPFLAGS: ""
configure: IDN_DIR: ""
checking if idn2_lookup_ul can be linked... no
checking for idn2.h... no
checking for pkg-config... (cached) /usr/bin/pkg-config
checking for libnghttp2 options with pkg-config... no
checking for nghttp2_session_get_stream_local_window_size in -lnghttp2... no
checking for sys/types.h... (cached) yes
checking for sys/select.h... yes
checking for sys/ioctl.h... yes
checking for unistd.h... (cached) yes
checking for arpa/inet.h... yes
checking for net/if.h... yes
checking for netinet/in.h... yes
checking for netinet/in6.h... no
checking for sys/un.h... yes
checking for linux/tcp.h... yes
checking for netinet/tcp.h... yes
checking for netinet/udp.h... yes
checking for netdb.h... yes
checking for sys/sockio.h... no
checking for sys/param.h... yes
checking for termios.h... yes
checking for termio.h... yes
checking for fcntl.h... yes
checking for io.h... no
checking for pwd.h... yes
checking for utime.h... yes
checking for sys/utime.h... no
checking for sys/poll.h... yes
checking for poll.h... yes
checking for sys/resource.h... yes
checking for libgen.h... yes
checking for locale.h... yes
checking for stdbool.h... yes
checking for stdint.h... (cached) yes
checking for sys/filio.h... no
checking for sys/eventfd.h... yes
checking for an ANSI C-conforming const... yes
checking for size_t... yes
checking for sys/types.h... (cached) yes
checking for struct timeval... yes
checking run-time libs availability... fine
checking size of size_t... 8
checking size of long... 8
checking size of int... 4
checking size of time_t... 8
checking size of off_t... 8
checking size of curl_off_t... 8
checking size of curl_socket_t... 4
checking for long long... yes
checking for ssize_t... yes
checking for bool... yes
checking for sa_family_t... yes
checking for suseconds_t... yes
checking if time_t is unsigned... no
checking for struct sockaddr_storage... yes
checking for sys/select.h... (cached) yes
checking for select... yes
checking for sys/types.h... (cached) yes
checking for recv... yes
checking for sys/types.h... (cached) yes
checking for send... yes
checking for sys/types.h... (cached) yes
checking for MSG_NOSIGNAL... yes
checking for sys/types.h... (cached) yes
checking for unistd.h... (cached) yes
checking if alarm can be linked... yes
checking if alarm is prototyped... yes
checking if alarm is compilable... yes
checking if alarm usage allowed... yes
checking if alarm might be used... yes
checking for sys/types.h... (cached) yes
checking for strings.h... (cached) yes
checking for sys/types.h... (cached) yes
checking for libgen.h... (cached) yes
checking if basename can be linked... yes
checking if basename is prototyped... yes
checking if basename is compilable... yes
checking if basename usage allowed... yes
checking if basename might be used... yes
checking if closesocket can be linked... no
checking if closesocket might be used... no
checking for sys/types.h... (cached) yes
checking if CloseSocket can be linked... no
checking if CloseSocket might be used... no
checking for sys/types.h... (cached) yes
checking for unistd.h... (cached) yes
checking for fcntl.h... (cached) yes
checking if fcntl can be linked... yes
checking if fcntl is prototyped... yes
checking if fcntl is compilable... yes
checking if fcntl usage allowed... yes
checking if fcntl might be used... yes
checking if fcntl O_NONBLOCK is compilable... yes
checking if fcntl O_NONBLOCK usage allowed... yes
checking if fcntl O_NONBLOCK might be used... yes
checking whether build target is a native Windows one... (cached) no
checking for sys/types.h... (cached) yes
checking for netdb.h... (cached) yes
checking if freeaddrinfo can be linked... yes
checking if freeaddrinfo is prototyped... yes
checking if freeaddrinfo is compilable... yes
checking if freeaddrinfo usage allowed... yes
checking if freeaddrinfo might be used... yes
checking for sys/types.h... (cached) yes
checking for sys/xattr.h... yes
checking if fsetxattr can be linked... yes
checking if fsetxattr is prototyped... yes
checking if fsetxattr takes 5 args.... yes
checking if fsetxattr is compilable... yes
checking if fsetxattr usage allowed... yes
checking if fsetxattr might be used... yes
checking if ftruncate can be linked... yes
checking if ftruncate is prototyped... yes
checking if ftruncate is compilable... yes
checking if ftruncate usage allowed... yes
checking if ftruncate might be used... yes
checking for sys/types.h... (cached) yes
checking if getaddrinfo can be linked... yes
checking if getaddrinfo is prototyped... yes
checking if getaddrinfo is compilable... yes
checking if getaddrinfo seems to work... yes
checking if getaddrinfo usage allowed... yes
checking if getaddrinfo might be used... yes
checking if getaddrinfo is threadsafe... yes
checking if gethostbyname_r can be linked... yes
checking if gethostbyname_r is prototyped... yes
checking if gethostbyname_r takes 3 args.... no
checking if gethostbyname_r takes 5 args.... no
checking if gethostbyname_r takes 6 args.... yes
checking if gethostbyname_r is compilable... yes
checking if gethostbyname_r usage allowed... yes
checking if gethostbyname_r might be used... yes
checking if gethostname can be linked... yes
checking if gethostname is prototyped... yes
checking if gethostname is compilable... yes
checking for gethostname arg 2 data type... size_t
checking if gethostname usage allowed... yes
checking if gethostname might be used... yes
checking for sys/types.h... (cached) yes
checking for netinet/in.h... (cached) yes
checking for ifaddrs.h... yes
checking if getifaddrs can be linked... yes
checking if getifaddrs is prototyped... yes
checking if getifaddrs is compilable... yes
checking if getifaddrs seems to work... yes
checking if getifaddrs usage allowed... yes
checking if getifaddrs might be used... yes
checking if getpeername can be linked... yes
checking if getpeername is prototyped... yes
checking if getpeername is compilable... yes
checking if getpeername usage allowed... yes
checking if getpeername might be used... yes
checking if getsockname can be linked... yes
checking if getsockname is prototyped... yes
checking if getsockname is compilable... yes
checking if getsockname usage allowed... yes
checking if getsockname might be used... yes
checking for sys/types.h... (cached) yes
checking if gmtime_r can be linked... yes
checking if gmtime_r is prototyped... yes
checking if gmtime_r is compilable... yes
checking if gmtime_r seems to work... yes
checking if gmtime_r usage allowed... yes
checking if gmtime_r might be used... yes
checking for sys/types.h... (cached) yes
checking for unistd.h... (cached) yes
checking for sys/ioctl.h... (cached) yes
checking for stropts.h... no
checking if ioctl can be linked... yes
checking if ioctl is prototyped... yes
checking if ioctl is compilable... yes
checking if ioctl usage allowed... yes
checking if ioctl might be used... yes
checking if ioctl FIONBIO is compilable... yes
checking if ioctl FIONBIO usage allowed... yes
checking if ioctl FIONBIO might be used... yes
checking if ioctl SIOCGIFADDR is compilable... yes
checking if ioctl SIOCGIFADDR usage allowed... yes
checking if ioctl SIOCGIFADDR might be used... yes
checking if ioctlsocket can be linked... no
checking if ioctlsocket might be used... no
checking if IoctlSocket can be linked... no
checking if IoctlSocket might be used... no
checking if memrchr can be linked... yes
checking if memrchr is prototyped... yes
checking if memrchr is compilable... yes
checking if memrchr usage allowed... yes
checking if memrchr might be used... yes
checking for sys/types.h... (cached) yes
checking if sigaction can be linked... yes
checking if sigaction is prototyped... yes
checking if sigaction is compilable... yes
checking if sigaction usage allowed... yes
checking if sigaction might be used... yes
checking if siginterrupt can be linked... yes
checking if siginterrupt is prototyped... yes
checking if siginterrupt is compilable... yes
checking if siginterrupt usage allowed... yes
checking if siginterrupt might be used... yes
checking if signal can be linked... yes
checking if signal is prototyped... yes
checking if signal is compilable... yes
checking if signal usage allowed... yes
checking if signal might be used... yes
checking for sys/types.h... (cached) yes
checking if sigsetjmp can be linked... no
checking if sigsetjmp seems a macro... yes
checking if sigsetjmp is compilable... yes
checking if sigsetjmp usage allowed... yes
checking if sigsetjmp might be used... yes
checking if socket can be linked... yes
checking if socket is prototyped... yes
checking if socket is compilable... yes
checking if socket usage allowed... yes
checking if socket might be used... yes
checking if socketpair can be linked... yes
checking if socketpair is prototyped... yes
checking if socketpair is compilable... yes
checking if socketpair usage allowed... yes
checking if socketpair might be used... yes
checking if strdup can be linked... yes
checking if strdup is prototyped... yes
checking if strdup is compilable... yes
checking if strdup usage allowed... yes
checking if strdup might be used... yes
checking if strerror_r can be linked... yes
checking if strerror_r is prototyped... yes
checking if strerror_r is compilable... yes
checking if strerror_r is glibc like... yes
checking if strerror_r seems to work... yes
checking if strerror_r usage allowed... yes
checking if strerror_r might be used... yes
checking for accept4... yes
checking for eventfd... yes
checking for fnmatch... yes
checking for geteuid... yes
checking for getpass_r... no
checking for getppid... yes
checking for getpwuid... yes
checking for getpwuid_r... yes
checking for getrlimit... yes
checking for gettimeofday... yes
checking for mach_absolute_time... no
checking for pipe... yes
checking for pipe2... yes
checking for poll... yes
checking for sendmmsg... yes
checking for sendmsg... yes
checking for setlocale... yes
checking for setrlimit... yes
checking for snprintf... yes
checking for utime... yes
checking for utimes... yes
checking for if_nametoindex... yes
checking for realpath... yes
checking for sched_yield... yes
checking for sys/types.h... (cached) yes
checking for netinet/in.h... (cached) yes
checking for arpa/inet.h... (cached) yes
checking if inet_ntop can be linked... yes
checking if inet_ntop is prototyped... yes
checking if inet_ntop is compilable... yes
checking if inet_ntop seems to work... yes
checking if inet_ntop usage allowed... yes
checking if inet_ntop might be used... yes
checking if inet_pton can be linked... yes
checking if inet_pton is prototyped... yes
checking if inet_pton is compilable... yes
checking if inet_pton seems to work... yes
checking if inet_pton usage allowed... yes
checking if inet_pton might be used... yes
checking if strcasecmp can be linked... yes
checking if strcasecmp is prototyped... yes
checking if strcasecmp is compilable... yes
checking if strcasecmp usage allowed... yes
checking if strcasecmp might be used... yes
checking if strcmpi can be linked... no
checking if strcmpi might be used... no
checking if stricmp can be linked... no
checking if stricmp might be used... no
checking for setmode... no
checking for arc4random... no
checking for fseeko... yes
checking for ccache gcc options needed to detect all undeclared functions... none needed
checking whether fseeko is declared... yes
checking how to set a socket into non-blocking mode... fcntl O_NONBLOCK
checking for perl... /usr/bin/perl
checking whether to enable the threaded resolver... yes
checking for pthread.h... yes
checking for pthread_create... yes
checking for dirent.h... yes
checking for opendir... yes
checking convert -I options to -isystem... yes
checking whether to enable verbose strings... yes
checking whether to enable SSPI support (Windows native builds only)... no
checking whether to enable basic authentication method... yes
checking whether to enable bearer authentication method... yes
checking whether to enable digest authentication method... yes
checking whether to enable kerberos authentication method... yes
checking whether to enable negotiate authentication method... yes
checking whether to enable aws sig methods... yes
checking whether to support NTLM... yes
checking whether to enable TLS-SRP authentication... yes
checking whether to enable Unix domain sockets... auto
checking for struct sockaddr_un.sun_path... yes
checking whether to support cookies... yes
checking whether to support socketpair... yes
checking whether to support HTTP authentication... yes
checking whether to support DoH... yes
checking whether to support the MIME API... yes
checking whether to support binding connections locally... yes
checking whether to support the form API... yes
checking whether to support date parsing... yes
checking whether to support netrc parsing... yes
checking whether to support progress-meter... yes
checking whether to support the SHA-512/256 hash algorithm... yes
checking whether to support DNS shuffling... yes
checking whether to support curl_easy_option*... yes
checking whether to support alt-svc... yes
checking whether to support headers-api... yes
configure: disables HSTS due to lack of SSL
checking whether to enable HTTPS-RR support... no
checking whether to support WebSockets... yes
checking whether hiding of library internal symbols will actually happen... yes
checking if this build supports HTTPS-proxy... no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating docs/Makefile
config.status: creating docs/examples/Makefile
config.status: creating docs/libcurl/Makefile
config.status: creating docs/libcurl/opts/Makefile
config.status: creating docs/cmdline-opts/Makefile
config.status: creating include/Makefile
config.status: creating include/curl/Makefile
config.status: creating src/Makefile
config.status: creating lib/Makefile
config.status: creating scripts/Makefile
config.status: creating lib/libcurl.vers
config.status: creating tests/Makefile
config.status: creating tests/config
config.status: creating tests/configurehelp.pm
config.status: creating tests/certs/Makefile
config.status: creating tests/data/Makefile
config.status: creating tests/server/Makefile
config.status: creating tests/libtest/Makefile
config.status: creating tests/unit/Makefile
config.status: creating tests/tunit/Makefile
config.status: creating tests/client/Makefile
config.status: creating tests/http/config.ini
config.status: creating tests/http/Makefile
config.status: creating packages/Makefile
config.status: creating packages/vms/Makefile
config.status: creating curl-config
config.status: creating libcurl.pc
config.status: creating lib/curl_config.h
config.status: executing depfiles commands
config.status: executing libtool commands
configure: Configured to build curl/libcurl:
Host setup: x86_64-pc-linux-gnu
Install prefix: /usr/local
Compiler: ccache gcc
CFLAGS: -Werror-implicit-function-declaration -O2 -Wno-system-headers
CFLAGS extras:
CPPFLAGS: -D_GNU_SOURCE
LDFLAGS:
curl-config:
LIBS: -lpsl -lz
curl version: 8.16.0-DEV
SSL: no (--with-{openssl,gnutls,mbedtls,wolfssl,schannel,amissl,rustls} )
SSH: no (--with-{libssh,libssh2})
zlib: enabled
brotli: no (--with-brotli)
zstd: no (--with-zstd)
GSS-API: no (--with-gssapi)
GSASL: no (libgsasl not found)
TLS-SRP: no (--enable-tls-srp)
resolver: POSIX threaded
IPv6: enabled
Unix sockets: enabled
IDN: no (--with-{libidn2,winidn})
Build docs: no
Build libcurl: Shared=no, Static=yes
Built-in manual: no (--enable-manual)
--libcurl option: enabled (--disable-libcurl-option)
Verbose errors: enabled (--disable-verbose)
Code coverage: disabled
SSPI: no (--enable-sspi)
ca cert bundle: no
ca cert path:
ca cert embed: no
ca fallback:
LDAP: no (--enable-ldap / --with-ldap-lib / --with-lber-lib)
LDAPS: no (--enable-ldaps)
IPFS/IPNS: enabled
RTSP: enabled
RTMP: no (--with-librtmp)
PSL: enabled
Alt-svc: enabled (--disable-alt-svc)
Headers API: enabled (--disable-headers-api)
HSTS: no (--enable-hsts)
HTTP1: enabled (internal)
HTTP2: no (--with-nghttp2)
HTTP3: no (--with-ngtcp2 --with-nghttp3, --with-quiche, --with-openssl-quic)
ECH: no (--enable-ech)
HTTPS RR: no (--enable-httpsrr)
SSLS-EXPORT: no (--enable-ssls-export)
Protocols: dict file ftp gopher http imap ipfs ipns mqtt pop3 rtsp smtp telnet tftp ws
Features: alt-svc AsynchDNS IPv6 Largefile libz PSL threadsafe UnixSockets
configure: WARNING: libgsasl was not found
configure: WARNING: Cannot find libraries for LDAP support: LDAP disabled
configure: WARNING: Cannot find libidn2
$ make -j3
Making all in lib
make[1]: Entering directory '/root/asi_db/builds/curl/_worktrees/w0/lib'
make all-am
make[2]: Entering directory '/root/asi_db/builds/curl/_worktrees/w0/lib'
CC libcurl_la-altsvc.lo
CC libcurl_la-amigaos.lo
CC libcurl_la-asyn-ares.lo
CC libcurl_la-asyn-base.lo
CC libcurl_la-asyn-thrdd.lo
CC libcurl_la-bufq.lo
CC libcurl_la-bufref.lo
CC libcurl_la-cf-h1-proxy.lo
CC libcurl_la-cf-h2-proxy.lo
CC libcurl_la-cf-haproxy.lo
CC libcurl_la-cf-https-connect.lo
CC libcurl_la-cf-socket.lo
CC libcurl_la-cfilters.lo
CC libcurl_la-conncache.lo
CC libcurl_la-connect.lo
CC libcurl_la-content_encoding.lo
CC libcurl_la-cookie.lo
CC libcurl_la-cshutdn.lo
CC libcurl_la-curl_addrinfo.lo
CC libcurl_la-curl_des.lo
CC libcurl_la-curl_endian.lo
CC libcurl_la-curl_fnmatch.lo
CC libcurl_la-curl_get_line.lo
CC libcurl_la-curl_gethostname.lo
CC libcurl_la-curl_gssapi.lo
CC libcurl_la-curl_memrchr.lo
CC libcurl_la-curl_ntlm_core.lo
CC libcurl_la-curl_range.lo
CC libcurl_la-curl_rtmp.lo
CC libcurl_la-curl_sasl.lo
CC libcurl_la-curl_sha512_256.lo
CC libcurl_la-curl_sspi.lo
CC libcurl_la-curl_threads.lo
CC libcurl_la-curl_trc.lo
CC libcurl_la-cw-out.lo
CC libcurl_la-cw-pause.lo
CC libcurl_la-dict.lo
CC libcurl_la-doh.lo
CC libcurl_la-dynhds.lo
CC libcurl_la-easy.lo
CC libcurl_la-easygetopt.lo
CC libcurl_la-easyoptions.lo
CC libcurl_la-escape.lo
CC libcurl_la-fake_addrinfo.lo
CC libcurl_la-file.lo
CC libcurl_la-fileinfo.lo
CC libcurl_la-fopen.lo
CC libcurl_la-formdata.lo
CC libcurl_la-ftp.lo
CC libcurl_la-ftplistparser.lo
CC libcurl_la-getenv.lo
CC libcurl_la-getinfo.lo
CC libcurl_la-gopher.lo
CC libcurl_la-hash.lo
CC libcurl_la-headers.lo
CC libcurl_la-hmac.lo
CC libcurl_la-hostip.lo
CC libcurl_la-hostip4.lo
CC libcurl_la-hostip6.lo
CC libcurl_la-hsts.lo
CC libcurl_la-http.lo
CC libcurl_la-http1.lo
CC libcurl_la-http2.lo
CC libcurl_la-http_aws_sigv4.lo
CC libcurl_la-http_chunks.lo
CC libcurl_la-http_digest.lo
CC libcurl_la-http_negotiate.lo
CC libcurl_la-http_ntlm.lo
CC libcurl_la-http_proxy.lo
CC libcurl_la-httpsrr.lo
CC libcurl_la-idn.lo
CC libcurl_la-if2ip.lo
CC libcurl_la-imap.lo
CC libcurl_la-krb5.lo
CC libcurl_la-ldap.lo
CC libcurl_la-llist.lo
CC libcurl_la-macos.lo
CC libcurl_la-md4.lo
CC libcurl_la-md5.lo
CC libcurl_la-memdebug.lo
CC libcurl_la-mime.lo
CC libcurl_la-mprintf.lo
CC libcurl_la-mqtt.lo
CC libcurl_la-multi.lo
CC libcurl_la-multi_ev.lo
CC libcurl_la-netrc.lo
CC libcurl_la-noproxy.lo
CC libcurl_la-openldap.lo
CC libcurl_la-parsedate.lo
CC libcurl_la-pingpong.lo
CC libcurl_la-pop3.lo
CC libcurl_la-progress.lo
CC libcurl_la-psl.lo
CC libcurl_la-rand.lo
CC libcurl_la-rename.lo
CC libcurl_la-request.lo
CC libcurl_la-rtsp.lo
CC libcurl_la-select.lo
CC libcurl_la-sendf.lo
CC libcurl_la-setopt.lo
CC libcurl_la-sha256.lo
CC libcurl_la-share.lo
CC libcurl_la-slist.lo
CC libcurl_la-smb.lo
CC libcurl_la-smtp.lo
CC libcurl_la-socketpair.lo
CC libcurl_la-socks.lo
CC libcurl_la-socks_gssapi.lo
CC libcurl_la-socks_sspi.lo
CC libcurl_la-speedcheck.lo
CC libcurl_la-splay.lo
CC libcurl_la-strcase.lo
CC libcurl_la-strdup.lo
CC libcurl_la-strequal.lo
CC libcurl_la-strerror.lo
CC libcurl_la-system_win32.lo
CC libcurl_la-telnet.lo
CC libcurl_la-tftp.lo
CC libcurl_la-transfer.lo
CC libcurl_la-uint-bset.lo
CC libcurl_la-uint-hash.lo
CC libcurl_la-uint-spbset.lo
CC libcurl_la-uint-table.lo
CC libcurl_la-url.lo
CC libcurl_la-urlapi.lo
CC libcurl_la-version.lo
CC libcurl_la-ws.lo
CC libcurlu_la-altsvc.lo
CC libcurlu_la-amigaos.lo
CC libcurlu_la-asyn-ares.lo
CC libcurlu_la-asyn-base.lo
CC libcurlu_la-asyn-thrdd.lo
CC libcurlu_la-bufq.lo
CC libcurlu_la-bufref.lo
CC libcurlu_la-cf-h1-proxy.lo
CC libcurlu_la-cf-h2-proxy.lo
CC libcurlu_la-cf-https-connect.lo
CC libcurlu_la-cf-haproxy.lo
CC libcurlu_la-cf-socket.lo
CC libcurlu_la-cfilters.lo
CC libcurlu_la-conncache.lo
CC libcurlu_la-connect.lo
CC libcurlu_la-content_encoding.lo
CC libcurlu_la-cookie.lo
CC libcurlu_la-cshutdn.lo
CC libcurlu_la-curl_addrinfo.lo
CC libcurlu_la-curl_des.lo
CC libcurlu_la-curl_endian.lo
CC libcurlu_la-curl_fnmatch.lo
CC libcurlu_la-curl_get_line.lo
CC libcurlu_la-curl_gethostname.lo
CC libcurlu_la-curl_gssapi.lo
CC libcurlu_la-curl_memrchr.lo
CC libcurlu_la-curl_ntlm_core.lo
CC libcurlu_la-curl_range.lo
CC libcurlu_la-curl_rtmp.lo
CC libcurlu_la-curl_sasl.lo
CC libcurlu_la-curl_sha512_256.lo
CC libcurlu_la-curl_sspi.lo
CC libcurlu_la-curl_threads.lo
CC libcurlu_la-curl_trc.lo
CC libcurlu_la-cw-out.lo
CC libcurlu_la-cw-pause.lo
CC libcurlu_la-dict.lo
CC libcurlu_la-doh.lo
CC libcurlu_la-dynhds.lo
CC libcurlu_la-easy.lo
CC libcurlu_la-easygetopt.lo
CC libcurlu_la-easyoptions.lo
CC libcurlu_la-escape.lo
CC libcurlu_la-fake_addrinfo.lo
CC libcurlu_la-file.lo
CC libcurlu_la-fileinfo.lo
CC libcurlu_la-fopen.lo
CC libcurlu_la-formdata.lo
CC libcurlu_la-ftp.lo
CC libcurlu_la-ftplistparser.lo
CC libcurlu_la-getenv.lo
CC libcurlu_la-getinfo.lo
CC libcurlu_la-gopher.lo
CC libcurlu_la-hash.lo
CC libcurlu_la-headers.lo
CC libcurlu_la-hmac.lo
CC libcurlu_la-hostip.lo
CC libcurlu_la-hostip4.lo
CC libcurlu_la-hostip6.lo
CC libcurlu_la-hsts.lo
CC libcurlu_la-http.lo
CC libcurlu_la-http1.lo
CC libcurlu_la-http2.lo
CC libcurlu_la-http_aws_sigv4.lo
CC libcurlu_la-http_chunks.lo
CC libcurlu_la-http_digest.lo
CC libcurlu_la-http_negotiate.lo
CC libcurlu_la-http_ntlm.lo
CC libcurlu_la-http_proxy.lo
CC libcurlu_la-httpsrr.lo
CC libcurlu_la-idn.lo
CC libcurlu_la-if2ip.lo
CC libcurlu_la-imap.lo
CC libcurlu_la-krb5.lo
CC libcurlu_la-ldap.lo
CC libcurlu_la-llist.lo
CC libcurlu_la-macos.lo
CC libcurlu_la-md4.lo
CC libcurlu_la-md5.lo
CC libcurlu_la-memdebug.lo
CC libcurlu_la-mime.lo
CC libcurlu_la-mprintf.lo
CC libcurlu_la-mqtt.lo
CC libcurlu_la-multi.lo
CC libcurlu_la-multi_ev.lo
CC libcurlu_la-netrc.lo
CC libcurlu_la-noproxy.lo
CC libcurlu_la-openldap.lo
CC libcurlu_la-parsedate.lo
CC libcurlu_la-pingpong.lo
CC libcurlu_la-pop3.lo
CC libcurlu_la-progress.lo
CC libcurlu_la-psl.lo
CC libcurlu_la-rand.lo
CC libcurlu_la-rename.lo
CC libcurlu_la-request.lo
CC libcurlu_la-rtsp.lo
CC libcurlu_la-select.lo
CC libcurlu_la-sendf.lo
CC libcurlu_la-setopt.lo
CC libcurlu_la-sha256.lo
CC libcurlu_la-share.lo
CC libcurlu_la-slist.lo
CC libcurlu_la-smb.lo
CC libcurlu_la-smtp.lo
CC libcurlu_la-socketpair.lo
CC libcurlu_la-socks.lo
CC libcurlu_la-socks_gssapi.lo
CC libcurlu_la-socks_sspi.lo
CC libcurlu_la-speedcheck.lo
CC libcurlu_la-splay.lo
CC libcurlu_la-strcase.lo
CC libcurlu_la-strdup.lo
CC libcurlu_la-strequal.lo
CC libcurlu_la-strerror.lo
CC libcurlu_la-system_win32.lo
CC libcurlu_la-telnet.lo
CC libcurlu_la-tftp.lo
CC libcurlu_la-transfer.lo
CC libcurlu_la-uint-bset.lo
CC libcurlu_la-uint-hash.lo
CC libcurlu_la-uint-spbset.lo
CC libcurlu_la-uint-table.lo
CC libcurlu_la-url.lo
CC libcurlu_la-urlapi.lo
CC libcurlu_la-version.lo
CC libcurlu_la-ws.lo
CC vauth/libcurlu_la-cleartext.lo
CC vauth/libcurlu_la-cram.lo
CC vauth/libcurlu_la-digest.lo
CC vauth/libcurlu_la-digest_sspi.lo
CC vauth/libcurlu_la-gsasl.lo
CC vauth/libcurlu_la-krb5_gssapi.lo
CC vauth/libcurlu_la-krb5_sspi.lo
CC vauth/libcurlu_la-ntlm.lo
CC vauth/libcurlu_la-ntlm_sspi.lo
CC vauth/libcurlu_la-oauth2.lo
CC vauth/libcurlu_la-spnego_gssapi.lo
CC vauth/libcurlu_la-spnego_sspi.lo
CC vauth/libcurlu_la-vauth.lo
CC vtls/libcurlu_la-cipher_suite.lo
CC vtls/libcurlu_la-gtls.lo
CC vtls/libcurlu_la-hostcheck.lo
CC vtls/libcurlu_la-keylog.lo
CC vtls/libcurlu_la-mbedtls.lo
CC vtls/libcurlu_la-mbedtls_threadlock.lo
CC vtls/libcurlu_la-openssl.lo
CC vtls/libcurlu_la-rustls.lo
CC vtls/libcurlu_la-schannel_verify.lo
CC vtls/libcurlu_la-schannel.lo
CC vtls/libcurlu_la-vtls.lo
CC vtls/libcurlu_la-vtls_scache.lo
CC vtls/libcurlu_la-vtls_spack.lo
CC vtls/libcurlu_la-wolfssl.lo
CC vtls/libcurlu_la-x509asn1.lo
CC vquic/libcurlu_la-curl_ngtcp2.lo
CC vquic/libcurlu_la-curl_osslq.lo
CC vquic/libcurlu_la-curl_quiche.lo
CC vquic/libcurlu_la-vquic.lo
CC vquic/libcurlu_la-vquic-tls.lo
CC vssh/libcurlu_la-libssh.lo
CC vssh/libcurlu_la-libssh2.lo
CC vssh/libcurlu_la-curl_path.lo
CC vssh/libcurlu_la-wolfssh.lo
CC curlx/libcurlu_la-base64.lo
CC curlx/libcurlu_la-dynbuf.lo
CC curlx/libcurlu_la-inet_ntop.lo
CC curlx/libcurlu_la-inet_pton.lo
CC curlx/libcurlu_la-multibyte.lo
CC curlx/libcurlu_la-nonblock.lo
CC curlx/libcurlu_la-timediff.lo
CC curlx/libcurlu_la-strparse.lo
CC curlx/libcurlu_la-timeval.lo
CC curlx/libcurlu_la-version_win32.lo
CC curlx/libcurlu_la-wait.lo
CC curlx/libcurlu_la-warnless.lo
CC curlx/libcurlu_la-winapi.lo
UNITPR unitprotos.h
CC vauth/libcurl_la-cleartext.lo
CC vauth/libcurl_la-cram.lo
CC vauth/libcurl_la-digest.lo
CC vauth/libcurl_la-digest_sspi.lo
CC vauth/libcurl_la-gsasl.lo
CC vauth/libcurl_la-krb5_gssapi.lo
CC vauth/libcurl_la-krb5_sspi.lo
CC vauth/libcurl_la-ntlm.lo
CC vauth/libcurl_la-ntlm_sspi.lo
CC vauth/libcurl_la-oauth2.lo
CC vauth/libcurl_la-spnego_gssapi.lo
CC vauth/libcurl_la-spnego_sspi.lo
CC vauth/libcurl_la-vauth.lo
CC vtls/libcurl_la-cipher_suite.lo
CC vtls/libcurl_la-gtls.lo
CC vtls/libcurl_la-hostcheck.lo
CC vtls/libcurl_la-keylog.lo
CC vtls/libcurl_la-mbedtls.lo
CC vtls/libcurl_la-mbedtls_threadlock.lo
CC vtls/libcurl_la-openssl.lo
CC vtls/libcurl_la-rustls.lo
CC vtls/libcurl_la-schannel.lo
CC vtls/libcurl_la-schannel_verify.lo
CC vtls/libcurl_la-vtls.lo
CC vtls/libcurl_la-vtls_scache.lo
CC vtls/libcurl_la-vtls_spack.lo
CC vtls/libcurl_la-wolfssl.lo
CC vtls/libcurl_la-x509asn1.lo
CC vquic/libcurl_la-curl_ngtcp2.lo
CC vquic/libcurl_la-curl_osslq.lo
CC vquic/libcurl_la-curl_quiche.lo
CC vquic/libcurl_la-vquic.lo
CC vquic/libcurl_la-vquic-tls.lo
CC vssh/libcurl_la-libssh.lo
CC vssh/libcurl_la-libssh2.lo
CC vssh/libcurl_la-curl_path.lo
CC vssh/libcurl_la-wolfssh.lo
CC curlx/libcurl_la-base64.lo
CC curlx/libcurl_la-dynbuf.lo
CC curlx/libcurl_la-inet_ntop.lo
CC curlx/libcurl_la-inet_pton.lo
CC curlx/libcurl_la-multibyte.lo
CC curlx/libcurl_la-nonblock.lo
CC curlx/libcurl_la-strparse.lo
CC curlx/libcurl_la-timediff.lo
CC curlx/libcurl_la-timeval.lo
CC curlx/libcurl_la-version_win32.lo
CC curlx/libcurl_la-wait.lo
CC curlx/libcurl_la-warnless.lo
CC curlx/libcurl_la-winapi.lo
CCLD libcurlu.la
CCLD libcurl.la
make[2]: Leaving directory '/root/asi_db/builds/curl/_worktrees/w0/lib'
make[1]: Leaving directory '/root/asi_db/builds/curl/_worktrees/w0/lib'
Making all in docs
make[1]: Entering directory '/root/asi_db/builds/curl/_worktrees/w0/docs'
Making all in .
make[2]: Entering directory '/root/asi_db/builds/curl/_worktrees/w0/docs'
make[2]: Nothing to be done for 'all-am'.
make[2]: Leaving directory '/root/asi_db/builds/curl/_worktrees/w0/docs'
Making all in cmdline-opts
make[2]: Entering directory '/root/asi_db/builds/curl/_worktrees/w0/docs/cmdline-opts'
make[2]: Nothing to be done for 'all'.
make[2]: Leaving directory '/root/asi_db/builds/curl/_worktrees/w0/docs/cmdline-opts'
Making all in libcurl
make[2]: Entering directory '/root/asi_db/builds/curl/_worktrees/w0/docs/libcurl'
Making all in opts
make[3]: Entering directory '/root/asi_db/builds/curl/_worktrees/w0/docs/libcurl/opts'
make[3]: Nothing to be done for 'all'.
make[3]: Leaving directory '/root/asi_db/builds/curl/_worktrees/w0/docs/libcurl/opts'
make[3]: Entering directory '/root/asi_db/builds/curl/_worktrees/w0/docs/libcurl'
make[3]: Nothing to be done for 'all-am'.
make[3]: Leaving directory '/root/asi_db/builds/curl/_worktrees/w0/docs/libcurl'
make[2]: Leaving directory '/root/asi_db/builds/curl/_worktrees/w0/docs/libcurl'
make[1]: Leaving directory '/root/asi_db/builds/curl/_worktrees/w0/docs'
Making all in src
make[1]: Entering directory '/root/asi_db/builds/curl/_worktrees/w0/src'
CC curl-config2setopts.o
CC curl-slist_wc.o
CC curl-terminal.o
CC curl-tool_cb_dbg.o
CC curl-tool_bname.o
CC curl-tool_cb_hdr.o
CC curl-tool_cb_prg.o
CC curl-tool_cb_rea.o
CC curl-tool_cb_see.o
CC curl-tool_cb_soc.o
CC curl-tool_cb_wrt.o
CC curl-tool_cfgable.o
CC curl-tool_dirhie.o
CC curl-tool_doswin.o
CC curl-tool_easysrc.o
CC curl-tool_filetime.o
CC curl-tool_findfile.o
CC curl-tool_formparse.o
CC curl-tool_getparam.o
CC curl-tool_getpass.o
CC curl-tool_help.o
CC curl-tool_helpers.o
CC curl-tool_libinfo.o
CC curl-tool_ipfs.o
CC curl-tool_listhelp.o
CC curl-tool_main.o
CC curl-tool_msgs.o
CC curl-tool_operate.o
CC curl-tool_operhlp.o
CC curl-tool_paramhlp.o
CC curl-tool_parsecfg.o
CC curl-tool_progress.o
CC curl-tool_setopt.o
CC curl-tool_ssls.o
CC curl-tool_stderr.o
CC curl-tool_strdup.o
CC curl-tool_urlglob.o
CC curl-tool_util.o
CC curl-tool_vms.o
CC curl-tool_writeout.o
CC curl-tool_writeout_json.o
CC curl-tool_xattr.o
CC curl-var.o
echo '/* !checksrc! disable COPYRIGHT all */' > tool_hugehelp.c; \
echo '#include "tool_hugehelp.h"' >> tool_hugehelp.c
echo '/* !checksrc! disable COPYRIGHT all */' > tool_ca_embed.c
echo 'extern const void *curl_ca_embed; const void *curl_ca_embed;' >> tool_ca_embed.c
CC curlinfo.o
CC libcurltool_la-config2setopts.lo
CC libcurltool_la-slist_wc.lo
CC libcurltool_la-terminal.lo
CC libcurltool_la-tool_bname.lo
CC libcurltool_la-tool_cb_dbg.lo
CC libcurltool_la-tool_cb_hdr.lo
CC libcurltool_la-tool_cb_prg.lo
CC libcurltool_la-tool_cb_rea.lo
CC libcurltool_la-tool_cb_see.lo
CC libcurltool_la-tool_cb_soc.lo
CC libcurltool_la-tool_cb_wrt.lo
CC libcurltool_la-tool_cfgable.lo
CC libcurltool_la-tool_dirhie.lo
CC libcurltool_la-tool_doswin.lo
CC libcurltool_la-tool_easysrc.lo
CC libcurltool_la-tool_filetime.lo
CC libcurltool_la-tool_findfile.lo
CC libcurltool_la-tool_formparse.lo
CC libcurltool_la-tool_getparam.lo
CC libcurltool_la-tool_getpass.lo
CC libcurltool_la-tool_help.lo
CC libcurltool_la-tool_helpers.lo
CC libcurltool_la-tool_ipfs.lo
CC libcurltool_la-tool_libinfo.lo
CC libcurltool_la-tool_listhelp.lo
CC libcurltool_la-tool_main.lo
CC libcurltool_la-tool_msgs.lo
CC libcurltool_la-tool_operate.lo
CC libcurltool_la-tool_operhlp.lo
CC libcurltool_la-tool_paramhlp.lo
CC libcurltool_la-tool_parsecfg.lo
CC libcurltool_la-tool_progress.lo
CC libcurltool_la-tool_setopt.lo
CC libcurltool_la-tool_ssls.lo
CC libcurltool_la-tool_stderr.lo
CC libcurltool_la-tool_strdup.lo
CC libcurltool_la-tool_urlglob.lo
CC libcurltool_la-tool_util.lo
CC libcurltool_la-tool_vms.lo
CC libcurltool_la-tool_writeout.lo
CC libcurltool_la-tool_writeout_json.lo
CC libcurltool_la-tool_xattr.lo
CC libcurltool_la-var.lo
CC curl-tool_hugehelp.o
CC curl-tool_ca_embed.o
CCLD curlinfo
CCLD curl
CCLD libcurltool.la
make[1]: Leaving directory '/root/asi_db/builds/curl/_worktrees/w0/src'
Making all in scripts
make[1]: Entering directory '/root/asi_db/builds/curl/_worktrees/w0/scripts'
make[1]: Nothing to be done for 'all'.
make[1]: Leaving directory '/root/asi_db/builds/curl/_worktrees/w0/scripts'
make[1]: Entering directory '/root/asi_db/builds/curl/_worktrees/w0'
make[1]: Nothing to be done for 'all-am'.
make[1]: Leaving directory '/root/asi_db/builds/curl/_worktrees/w0'
| @@ -440,67 +440,38 @@ static void set_ssl_options(struct ssl_config_data *ssl, | |
| } | |
| #endif | |
| - | static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, |
| - | long arg) |
| + | static CURLcode setopt_bool(struct Curl_easy *data, CURLoption option, |
| + | long arg, bool *set) |
| { | |
| bool enabled = !!arg; | |
| - | unsigned long uarg = (unsigned long)arg; |
| + | struct UserDefined *s = &data->set; |
| switch(option) { | |
| - | case CURLOPT_DNS_CACHE_TIMEOUT: |
| - | if(arg < -1) |
| - | return CURLE_BAD_FUNCTION_ARGUMENT; |
| - | else if(arg > INT_MAX) |
| - | arg = INT_MAX; |
| - | |
| - | data->set.dns_cache_timeout = (int)arg; |
| - | break; |
| - | case CURLOPT_CA_CACHE_TIMEOUT: |
| - | if(Curl_ssl_supports(data, SSLSUPP_CA_CACHE)) { |
| - | if(arg < -1) |
| - | return CURLE_BAD_FUNCTION_ARGUMENT; |
| - | else if(arg > INT_MAX) |
| - | arg = INT_MAX; |
| - | |
| - | data->set.general_ssl.ca_cache_timeout = (int)arg; |
| - | } |
| - | else |
| - | return CURLE_NOT_BUILT_IN; |
| - | break; |
| - | case CURLOPT_MAXCONNECTS: |
| - | /* |
| - | * Set the absolute number of maximum simultaneous alive connection that |
| - | * libcurl is allowed to have. |
| - | */ |
| - | if(uarg > UINT_MAX) |
| - | return CURLE_BAD_FUNCTION_ARGUMENT; |
| - | data->set.maxconnects = (unsigned int)uarg; |
| - | break; |
| case CURLOPT_FORBID_REUSE: | |
| /* | |
| * When this transfer is done, it must not be left to be reused by a | |
| * subsequent transfer but shall be closed immediately. | |
| */ | |
| - | data->set.reuse_forbid = enabled; |
| + | s->reuse_forbid = enabled; |
| break; | |
| case CURLOPT_FRESH_CONNECT: | |
| /* | |
| * This transfer shall not use a previously cached connection but | |
| * should be made with a fresh new connect! | |
| */ | |
| - | data->set.reuse_fresh = enabled; |
| + | s->reuse_fresh = enabled; |
| break; | |
| case CURLOPT_VERBOSE: | |
| /* | |
| * Verbose means infof() calls that give a lot of information about | |
| * the connection and transfer procedures as well as internal choices. | |
| */ | |
| - | data->set.verbose = enabled; |
| + | s->verbose = enabled; |
| break; | |
| case CURLOPT_HEADER: | |
| /* | |
| * Set to include the header in the general data output stream. | |
| */ | |
| - | data->set.include_header = enabled; |
| + | s->include_header = enabled; |
| break; | |
| case CURLOPT_NOPROGRESS: | |
| /* | |
| @@ -512,13 +483,13 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Do not include the body part in the output data stream. | |
| */ | |
| - | data->set.opt_no_body = enabled; |
| + | s->opt_no_body = enabled; |
| #ifndef CURL_DISABLE_HTTP | |
| - | if(data->set.opt_no_body) |
| + | if(s->opt_no_body) |
| /* in HTTP lingo, no body means using the HEAD request... */ | |
| - | data->set.method = HTTPREQ_HEAD; |
| - | else if(data->set.method == HTTPREQ_HEAD) |
| - | data->set.method = HTTPREQ_GET; |
| + | s->method = HTTPREQ_HEAD; |
| + | else if(s->method == HTTPREQ_HEAD) |
| + | s->method = HTTPREQ_GET; |
| #endif | |
| break; | |
| case CURLOPT_FAILONERROR: | |
| @@ -526,10 +497,10 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| * Do not output the >=400 error code HTML-page, but instead only | |
| * return error. | |
| */ | |
| - | data->set.http_fail_on_error = enabled; |
| + | s->http_fail_on_error = enabled; |
| break; | |
| case CURLOPT_KEEP_SENDING_ON_ERROR: | |
| - | data->set.http_keep_sending_on_error = enabled; |
| + | s->http_keep_sending_on_error = enabled; |
| break; | |
| case CURLOPT_UPLOAD: | |
| case CURLOPT_PUT: | |
| @@ -537,36 +508,182 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| * We want to sent data to the remote host. If this is HTTP, that equals | |
| * using the PUT request. | |
| */ | |
| - | if(arg) { |
| + | if(enabled) { |
| /* If this is HTTP, PUT is what's needed to "upload" */ | |
| - | data->set.method = HTTPREQ_PUT; |
| - | data->set.opt_no_body = FALSE; /* this is implied */ |
| + | s->method = HTTPREQ_PUT; |
| + | s->opt_no_body = FALSE; /* this is implied */ |
| } | |
| else | |
| /* In HTTP, the opposite of upload is GET (unless NOBODY is true as | |
| then this can be changed to HEAD later on) */ | |
| - | data->set.method = HTTPREQ_GET; |
| + | s->method = HTTPREQ_GET; |
| break; | |
| case CURLOPT_FILETIME: | |
| /* | |
| * Try to get the file time of the remote document. The time will | |
| * later (possibly) become available using curl_easy_getinfo(). | |
| */ | |
| - | data->set.get_filetime = enabled; |
| + | s->get_filetime = enabled; |
| break; | |
| - | case CURLOPT_SERVER_RESPONSE_TIMEOUT: |
| + | #ifndef CURL_DISABLE_HTTP |
| + | case CURLOPT_HTTP09_ALLOWED: |
| + | s->http09_allowed = enabled; |
| + | break; |
| + | #if !defined(CURL_DISABLE_COOKIES) |
| + | case CURLOPT_COOKIESESSION: |
| /* | |
| - | * Option that specifies how quickly a server response must be obtained |
| - | * before it is considered failure. For pingpong protocols. |
| + | * Set this option to TRUE to start a new "cookie session". It will |
| + | * prevent the forthcoming read-cookies-from-file actions to accept |
| + | * cookies that are marked as being session cookies, as they belong to a |
| + | * previous session. |
| + | */ |
| + | s->cookiesession = enabled; |
| + | break; |
| + | #endif |
| + | case CURLOPT_AUTOREFERER: |
| + | /* |
| + | * Switch on automatic referer that gets set if curl follows locations. |
| */ | |
| - | return setopt_set_timeout_sec(&data->set.server_response_timeout, arg); |
| + | s->http_auto_referer = enabled; |
| + | break; |
| - | case CURLOPT_SERVER_RESPONSE_TIMEOUT_MS: |
| + | case CURLOPT_TRANSFER_ENCODING: |
| + | s->http_transfer_encoding = enabled; |
| + | break; |
| + | case CURLOPT_UNRESTRICTED_AUTH: |
| /* | |
| - | * Option that specifies how quickly a server response must be obtained |
| - | * before it is considered failure. For pingpong protocols. |
| + | * Send authentication (user+password) when following locations, even when |
| + | * hostname changed. |
| + | */ |
| + | s->allow_auth_to_other_hosts = enabled; |
| + | break; |
| + | |
| + | case CURLOPT_HTTP_TRANSFER_DECODING: |
| + | /* |
| + | * disable libcurl transfer encoding is used |
| + | */ |
| + | s->http_te_skip = !enabled; /* reversed */ |
| + | break; |
| + | |
| + | case CURLOPT_HTTP_CONTENT_DECODING: |
| + | /* |
| + | * raw data passed to the application when content encoding is used |
| + | */ |
| + | s->http_ce_skip = !enabled; /* reversed */ |
| + | break; |
| + | |
| + | case CURLOPT_HTTPGET: |
| + | /* |
| + | * Set to force us do HTTP GET |
| + | */ |
| + | if(enabled) { |
| + | s->method = HTTPREQ_GET; |
| + | s->opt_no_body = FALSE; /* this is implied */ |
| + | } |
| + | break; |
| + | case CURLOPT_POST: |
| + | /* Does this option serve a purpose anymore? Yes it does, when |
| + | CURLOPT_POSTFIELDS is not used and the POST data is read off the |
| + | callback! */ |
| + | if(enabled) { |
| + | s->method = HTTPREQ_POST; |
| + | s->opt_no_body = FALSE; /* this is implied */ |
| + | } |
| + | else |
| + | s->method = HTTPREQ_GET; |
| + | break; |
| + | #endif /* ! CURL_DISABLE_HTTP */ |
| + | #ifndef CURL_DISABLE_PROXY |
| + | case CURLOPT_HTTPPROXYTUNNEL: |
| + | /* |
| + | * Tunnel operations through the proxy instead of normal proxy use |
| + | */ |
| + | s->tunnel_thru_httpproxy = enabled; |
| + | break; |
| + | case CURLOPT_HAPROXYPROTOCOL: |
| + | /* |
| + | * Set to send the HAProxy Proxy Protocol header |
| + | */ |
| + | s->haproxyprotocol = enabled; |
| + | break; |
| + | case CURLOPT_PROXY_SSL_VERIFYPEER: |
| + | /* |
| + | * Enable peer SSL verifying for proxy. |
| + | */ |
| + | s->proxy_ssl.primary.verifypeer = enabled; |
| + | |
| + | /* Update the current connection proxy_ssl_config. */ |
| + | Curl_ssl_conn_config_update(data, TRUE); |
| + | break; |
| + | case CURLOPT_PROXY_SSL_VERIFYHOST: |
| + | /* |
| + | * Enable verification of the hostname in the peer certificate for proxy |
| + | */ |
| + | s->proxy_ssl.primary.verifyhost = enabled; |
| + | |
| + | /* Update the current connection proxy_ssl_config. */ |
| + | Curl_ssl_conn_config_update(data, TRUE); |
| + | break; |
| + | case CURLOPT_PROXY_TRANSFER_MODE: |
| + | /* |
| + | * set transfer mode (;type=<a|i>) when doing FTP via an HTTP proxy |
| + | */ |
| + | s->proxy_transfer_mode = enabled; |
| + | break; |
| + | #endif /* ! CURL_DISABLE_PROXY */ |
| + | #if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI) |
| + | case CURLOPT_SOCKS5_GSSAPI_NEC: |
| + | /* |
| + | * Set flag for NEC SOCK5 support |
| + | */ |
| + | s->socks5_gssapi_nec = enabled; |
| + | break; |
| + | #endif |
| + | #ifdef CURL_LIST_ONLY_PROTOCOL |
| + | case CURLOPT_DIRLISTONLY: |
| + | /* |
| + | * An option that changes the command to one that asks for a list only, no |
| + | * file info details. Used for FTP, POP3 and SFTP. |
| + | */ |
| + | s->list_only = enabled; |
| + | break; |
| + | #endif |
| + | case CURLOPT_APPEND: |
| + | /* |
| + | * We want to upload and append to an existing file. Used for FTP and |
| + | * SFTP. |
| + | */ |
| + | s->remote_append = enabled; |
| + | break; |
| + | #ifndef CURL_DISABLE_FTP |
| + | case CURLOPT_FTP_USE_EPRT: |
| + | s->ftp_use_eprt = enabled; |
| + | break; |
| + | |
| + | case CURLOPT_FTP_USE_EPSV: |
| + | s->ftp_use_epsv = enabled; |
| + | break; |
| + | |
| + | case CURLOPT_FTP_USE_PRET: |
| + | s->ftp_use_pret = enabled; |
| + | break; |
| + | case CURLOPT_FTP_SKIP_PASV_IP: |
| + | /* |
| + | * Enable or disable FTP_SKIP_PASV_IP, which will disable/enable the |
| + | * bypass of the IP address in PASV responses. |
| */ | |
| - | return setopt_set_timeout_ms(&data->set.server_response_timeout, arg); |
| + | s->ftp_skip_ip = enabled; |
| + | break; |
| + | case CURLOPT_WILDCARDMATCH: |
| + | s->wildcard_enabled = enabled; |
| + | break; |
| + | #endif |
| + | case CURLOPT_CRLF: |
| + | /* |
| + | * Kludgy option to enable CRLF conversions. Subject for removal. |
| + | */ |
| + | s->crlf = enabled; |
| + | break; |
| #ifndef CURL_DISABLE_TFTP | |
| case CURLOPT_TFTP_NO_OPTIONS: | |
| @@ -574,8 +691,224 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| * Option that prevents libcurl from sending TFTP option requests to the | |
| * server. | |
| */ | |
| - | data->set.tftp_no_options = enabled; |
| + | s->tftp_no_options = enabled; |
| + | break; |
| + | #endif /* ! CURL_DISABLE_TFTP */ |
| + | case CURLOPT_TRANSFERTEXT: |
| + | /* |
| + | * This option was previously named 'FTPASCII'. Renamed to work with |
| + | * more protocols than merely FTP. |
| + | * |
| + | * Transfer using ASCII (instead of BINARY). |
| + | */ |
| + | s->prefer_ascii = enabled; |
| + | break; |
| + | case CURLOPT_SSL_VERIFYPEER: |
| + | /* |
| + | * Enable peer SSL verifying. |
| + | */ |
| + | s->ssl.primary.verifypeer = enabled; |
| + | |
| + | /* Update the current connection ssl_config. */ |
| + | Curl_ssl_conn_config_update(data, FALSE); |
| + | break; |
| + | #ifndef CURL_DISABLE_DOH |
| + | case CURLOPT_DOH_SSL_VERIFYPEER: |
| + | /* |
| + | * Enable peer SSL verifying for DoH. |
| + | */ |
| + | s->doh_verifypeer = enabled; |
| + | break; |
| + | case CURLOPT_DOH_SSL_VERIFYHOST: |
| + | /* |
| + | * Enable verification of the hostname in the peer certificate for DoH |
| + | */ |
| + | s->doh_verifyhost = enabled; |
| + | break; |
| + | case CURLOPT_DOH_SSL_VERIFYSTATUS: |
| + | /* |
| + | * Enable certificate status verifying for DoH. |
| + | */ |
| + | if(!Curl_ssl_cert_status_request()) |
| + | return CURLE_NOT_BUILT_IN; |
| + | |
| + | s->doh_verifystatus = enabled; |
| + | break; |
| + | #endif /* ! CURL_DISABLE_DOH */ |
| + | case CURLOPT_SSL_VERIFYHOST: |
| + | /* |
| + | * Enable verification of the hostname in the peer certificate |
| + | */ |
| + | |
| + | /* Obviously people are not reading documentation and too many thought |
| + | this argument took a boolean when it was not and misused it. |
| + | Treat 1 and 2 the same */ |
| + | s->ssl.primary.verifyhost = enabled; |
| + | |
| + | /* Update the current connection ssl_config. */ |
| + | Curl_ssl_conn_config_update(data, FALSE); |
| + | break; |
| + | case CURLOPT_SSL_VERIFYSTATUS: |
| + | /* |
| + | * Enable certificate status verifying. |
| + | */ |
| + | if(!Curl_ssl_cert_status_request()) |
| + | return CURLE_NOT_BUILT_IN; |
| + | |
| + | s->ssl.primary.verifystatus = enabled; |
| + | |
| + | /* Update the current connection ssl_config. */ |
| + | Curl_ssl_conn_config_update(data, FALSE); |
| + | break; |
| + | case CURLOPT_CERTINFO: |
| + | #ifdef USE_SSL |
| + | if(Curl_ssl_supports(data, SSLSUPP_CERTINFO)) |
| + | s->ssl.certinfo = enabled; |
| + | else |
| + | #endif |
| + | return CURLE_NOT_BUILT_IN; |
| + | break; |
| + | case CURLOPT_NOSIGNAL: |
| + | /* |
| + | * The application asks not to set any signal() or alarm() handlers, |
| + | * even when using a timeout. |
| + | */ |
| + | s->no_signal = enabled; |
| + | break; |
| + | case CURLOPT_TCP_NODELAY: |
| + | /* |
| + | * Enable or disable TCP_NODELAY, which will disable/enable the Nagle |
| + | * algorithm |
| + | */ |
| + | s->tcp_nodelay = enabled; |
| + | break; |
| + | |
| + | case CURLOPT_IGNORE_CONTENT_LENGTH: |
| + | s->ignorecl = enabled; |
| + | break; |
| + | case CURLOPT_SSL_SESSIONID_CACHE: |
| + | s->ssl.primary.cache_session = enabled; |
| + | #ifndef CURL_DISABLE_PROXY |
| + | s->proxy_ssl.primary.cache_session = |
| + | s->ssl.primary.cache_session; |
| + | #endif |
| + | break; |
| + | #ifdef USE_SSH |
| + | case CURLOPT_SSH_COMPRESSION: |
| + | s->ssh_compression = enabled; |
| + | break; |
| + | #endif /* ! USE_SSH */ |
| + | #ifndef CURL_DISABLE_SMTP |
| + | case CURLOPT_MAIL_RCPT_ALLOWFAILS: |
| + | /* allow RCPT TO command to fail for some recipients */ |
| + | s->mail_rcpt_allowfails = enabled; |
| + | break; |
| + | #endif /* !CURL_DISABLE_SMTP */ |
| + | case CURLOPT_SASL_IR: |
| + | /* Enable/disable SASL initial response */ |
| + | s->sasl_ir = enabled; |
| + | break; |
| + | case CURLOPT_TCP_KEEPALIVE: |
| + | s->tcp_keepalive = enabled; |
| + | break; |
| + | case CURLOPT_TCP_FASTOPEN: |
| + | #if defined(CONNECT_DATA_IDEMPOTENT) || defined(MSG_FASTOPEN) || \ |
| + | defined(TCP_FASTOPEN_CONNECT) |
| + | s->tcp_fastopen = enabled; |
| + | #else |
| + | return CURLE_NOT_BUILT_IN; |
| + | #endif |
| + | break; |
| + | case CURLOPT_SSL_ENABLE_ALPN: |
| + | s->ssl_enable_alpn = enabled; |
| + | break; |
| + | case CURLOPT_PATH_AS_IS: |
| + | s->path_as_is = enabled; |
| + | break; |
| + | case CURLOPT_PIPEWAIT: |
| + | s->pipewait = enabled; |
| + | break; |
| + | case CURLOPT_SUPPRESS_CONNECT_HEADERS: |
| + | s->suppress_connect_headers = enabled; |
| + | break; |
| + | #ifndef CURL_DISABLE_SHUFFLE_DNS |
| + | case CURLOPT_DNS_SHUFFLE_ADDRESSES: |
| + | s->dns_shuffle_addresses = enabled; |
| + | break; |
| + | #endif |
| + | case CURLOPT_DISALLOW_USERNAME_IN_URL: |
| + | s->disallow_username_in_url = enabled; |
| + | break; |
| + | case CURLOPT_QUICK_EXIT: |
| + | s->quick_exit = enabled; |
| + | break; |
| + | default: |
| + | return CURLE_OK; |
| + | } |
| + | if((arg > 1) || (arg < 0)) |
| + | /* reserve other values for future use */ |
| + | infof(data, "boolean setopt(%d) got unsupported argument %ld," |
| + | " treated as %d", option, arg, enabled); |
| + | |
| + | *set = TRUE; |
| + | return CURLE_OK; |
| + | } |
| + | |
| + | static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, |
| + | long arg) |
| + | { |
| + | unsigned long uarg = (unsigned long)arg; |
| + | bool set = FALSE; |
| + | CURLcode result = setopt_bool(data, option, arg, &set); |
| + | struct UserDefined *s = &data->set; |
| + | if(set || result) |
| + | return result; |
| + | |
| + | switch(option) { |
| + | case CURLOPT_DNS_CACHE_TIMEOUT: |
| + | if(arg < -1) |
| + | return CURLE_BAD_FUNCTION_ARGUMENT; |
| + | else if(arg > INT_MAX) |
| + | arg = INT_MAX; |
| + | |
| + | s->dns_cache_timeout = (int)arg; |
| + | break; |
| + | case CURLOPT_CA_CACHE_TIMEOUT: |
| + | if(Curl_ssl_supports(data, SSLSUPP_CA_CACHE)) { |
| + | if(arg < -1) |
| + | return CURLE_BAD_FUNCTION_ARGUMENT; |
| + | else if(arg > INT_MAX) |
| + | arg = INT_MAX; |
| + | |
| + | s->general_ssl.ca_cache_timeout = (int)arg; |
| + | } |
| + | else |
| + | return CURLE_NOT_BUILT_IN; |
| + | break; |
| + | case CURLOPT_MAXCONNECTS: |
| + | /* |
| + | * Set the absolute number of maximum simultaneous alive connection that |
| + | * libcurl is allowed to have. |
| + | */ |
| + | if(uarg > UINT_MAX) |
| + | return CURLE_BAD_FUNCTION_ARGUMENT; |
| + | s->maxconnects = (unsigned int)uarg; |
| break; | |
| + | case CURLOPT_SERVER_RESPONSE_TIMEOUT: |
| + | /* |
| + | * Option that specifies how quickly a server response must be obtained |
| + | * before it is considered failure. For pingpong protocols. |
| + | */ |
| + | return setopt_set_timeout_sec(&s->server_response_timeout, arg); |
| + | |
| + | case CURLOPT_SERVER_RESPONSE_TIMEOUT_MS: |
| + | /* |
| + | * Option that specifies how quickly a server response must be obtained |
| + | * before it is considered failure. For pingpong protocols. |
| + | */ |
| + | return setopt_set_timeout_ms(&s->server_response_timeout, arg); |
| + | |
| + | #ifndef CURL_DISABLE_TFTP |
| case CURLOPT_TFTP_BLKSIZE: | |
| /* | |
| * TFTP option that specifies the block size to use for data transmission. | |
| @@ -584,7 +917,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| arg = 512; | |
| else if(arg > TFTP_BLKSIZE_MAX) | |
| arg = TFTP_BLKSIZE_MAX; | |
| - | data->set.tftp_blksize = arg; |
| + | s->tftp_blksize = arg; |
| break; | |
| #endif | |
| #ifndef CURL_DISABLE_NETRC | |
| @@ -594,18 +927,9 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if((arg < CURL_NETRC_IGNORED) || (arg >= CURL_NETRC_LAST)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.use_netrc = (unsigned char)arg; |
| + | s->use_netrc = (unsigned char)arg; |
| break; | |
| #endif | |
| - | case CURLOPT_TRANSFERTEXT: |
| - | /* |
| - | * This option was previously named 'FTPASCII'. Renamed to work with |
| - | * more protocols than merely FTP. |
| - | * |
| - | * Transfer using ASCII (instead of BINARY). |
| - | */ |
| - | data->set.prefer_ascii = enabled; |
| - | break; |
| case CURLOPT_TIMECONDITION: | |
| /* | |
| * Set HTTP time condition. This must be one of the defines in the | |
| @@ -613,14 +937,14 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if((arg < CURL_TIMECOND_NONE) || (arg >= CURL_TIMECOND_LAST)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.timecondition = (unsigned char)arg; |
| + | s->timecondition = (unsigned char)arg; |
| break; | |
| case CURLOPT_TIMEVALUE: | |
| /* | |
| * This is the value to compare with the remote document with the | |
| * method set with CURLOPT_TIMECONDITION | |
| */ | |
| - | data->set.timevalue = (time_t)arg; |
| + | s->timevalue = (time_t)arg; |
| break; | |
| case CURLOPT_SSLVERSION: | |
| #ifndef CURL_DISABLE_PROXY | |
| @@ -636,53 +960,23 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| if(arg < -1) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | if(data->set.postfieldsize < arg && |
| - | data->set.postfields == data->set.str[STRING_COPYPOSTFIELDS]) { |
| + | if(s->postfieldsize < arg && |
| + | s->postfields == s->str[STRING_COPYPOSTFIELDS]) { |
| /* Previous CURLOPT_COPYPOSTFIELDS is no longer valid. */ | |
| - | Curl_safefree(data->set.str[STRING_COPYPOSTFIELDS]); |
| - | data->set.postfields = NULL; |
| + | Curl_safefree(s->str[STRING_COPYPOSTFIELDS]); |
| + | s->postfields = NULL; |
| } | |
| - | data->set.postfieldsize = arg; |
| + | s->postfieldsize = arg; |
| break; | |
| #ifndef CURL_DISABLE_HTTP | |
| - | #ifndef CURL_DISABLE_COOKIES |
| - | case CURLOPT_COOKIESESSION: |
| - | /* |
| - | * Set this option to TRUE to start a new "cookie session". It will |
| - | * prevent the forthcoming read-cookies-from-file actions to accept |
| - | * cookies that are marked as being session cookies, as they belong to a |
| - | * previous session. |
| - | */ |
| - | data->set.cookiesession = enabled; |
| - | break; |
| - | #endif |
| - | case CURLOPT_AUTOREFERER: |
| - | /* |
| - | * Switch on automatic referer that gets set if curl follows locations. |
| - | */ |
| - | data->set.http_auto_referer = enabled; |
| - | break; |
| - | |
| - | case CURLOPT_TRANSFER_ENCODING: |
| - | data->set.http_transfer_encoding = enabled; |
| - | break; |
| - | |
| case CURLOPT_FOLLOWLOCATION: | |
| /* | |
| * Follow Location: header hints on an HTTP-server. | |
| */ | |
| if(uarg > 3) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.http_follow_mode = (unsigned char)uarg; |
| - | break; |
| - | |
| - | case CURLOPT_UNRESTRICTED_AUTH: |
| - | /* |
| - | * Send authentication (user+password) when following locations, even when |
| - | * hostname changed. |
| - | */ |
| - | data->set.allow_auth_to_other_hosts = enabled; |
| + | s->http_follow_mode = (unsigned char)uarg; |
| break; | |
| case CURLOPT_MAXREDIRS: | |
| @@ -692,7 +986,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if(arg < -1) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.maxredirs = arg; |
| + | s->maxredirs = arg; |
| break; | |
| case CURLOPT_POSTREDIR: | |
| @@ -709,39 +1003,18 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| /* no return error on too high numbers since the bitmask could be | |
| extended in a future */ | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.keep_post = arg & CURL_REDIR_POST_ALL; |
| + | s->keep_post = arg & CURL_REDIR_POST_ALL; |
| break; | |
| - | case CURLOPT_POST: |
| - | /* Does this option serve a purpose anymore? Yes it does, when |
| - | CURLOPT_POSTFIELDS is not used and the POST data is read off the |
| - | callback! */ |
| - | if(arg) { |
| - | data->set.method = HTTPREQ_POST; |
| - | data->set.opt_no_body = FALSE; /* this is implied */ |
| - | } |
| - | else |
| - | data->set.method = HTTPREQ_GET; |
| - | break; |
| case CURLOPT_HEADEROPT: | |
| /* | |
| * Set header option. | |
| */ | |
| - | data->set.sep_headers = !!(arg & CURLHEADER_SEPARATE); |
| + | s->sep_headers = !!(arg & CURLHEADER_SEPARATE); |
| break; | |
| case CURLOPT_HTTPAUTH: | |
| return httpauth(data, FALSE, uarg); | |
| - | case CURLOPT_HTTPGET: |
| - | /* |
| - | * Set to force us do HTTP GET |
| - | */ |
| - | if(enabled) { |
| - | data->set.method = HTTPREQ_GET; |
| - | data->set.opt_no_body = FALSE; /* this is implied */ |
| - | } |
| - | break; |
| - | |
| case CURLOPT_HTTP_VERSION: | |
| return setopt_HTTP_VERSION(data, arg); | |
| @@ -752,34 +1025,24 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if(arg < 0) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.expect_100_timeout = arg; |
| + | s->expect_100_timeout = arg; |
| break; | |
| - | case CURLOPT_HTTP09_ALLOWED: |
| - | data->set.http09_allowed = enabled; |
| - | break; |
| #endif /* ! CURL_DISABLE_HTTP */ | |
| #ifndef CURL_DISABLE_MIME | |
| case CURLOPT_MIME_OPTIONS: | |
| - | data->set.mime_formescape = !!(arg & CURLMIMEOPT_FORMESCAPE); |
| + | s->mime_formescape = !!(arg & CURLMIMEOPT_FORMESCAPE); |
| break; | |
| #endif | |
| #ifndef CURL_DISABLE_PROXY | |
| - | case CURLOPT_HTTPPROXYTUNNEL: |
| - | /* |
| - | * Tunnel operations through the proxy instead of normal proxy use |
| - | */ |
| - | data->set.tunnel_thru_httpproxy = enabled; |
| - | break; |
| - | |
| case CURLOPT_PROXYPORT: | |
| /* | |
| * Explicitly set HTTP proxy port number. | |
| */ | |
| if((arg < 0) || (arg > 65535)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.proxyport = (unsigned short)arg; |
| + | s->proxyport = (unsigned short)arg; |
| break; | |
| case CURLOPT_PROXYAUTH: | |
| @@ -791,74 +1054,16 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if((arg < CURLPROXY_HTTP) || (arg > CURLPROXY_SOCKS5_HOSTNAME)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.proxytype = (unsigned char)arg; |
| + | s->proxytype = (unsigned char)arg; |
| break; | |
| - | case CURLOPT_PROXY_TRANSFER_MODE: |
| - | /* |
| - | * set transfer mode (;type=<a|i>) when doing FTP via an HTTP proxy |
| - | */ |
| - | if(uarg > 1) |
| - | /* reserve other values for future use */ |
| - | return CURLE_BAD_FUNCTION_ARGUMENT; |
| - | data->set.proxy_transfer_mode = (bool)uarg; |
| - | break; |
| case CURLOPT_SOCKS5_AUTH: | |
| if(uarg & ~(CURLAUTH_BASIC | CURLAUTH_GSSAPI)) | |
| return CURLE_NOT_BUILT_IN; | |
| - | data->set.socks5auth = (unsigned char)uarg; |
| - | break; |
| - | case CURLOPT_HAPROXYPROTOCOL: |
| - | /* |
| - | * Set to send the HAProxy Proxy Protocol header |
| - | */ |
| - | data->set.haproxyprotocol = enabled; |
| - | break; |
| - | case CURLOPT_PROXY_SSL_VERIFYPEER: |
| - | /* |
| - | * Enable peer SSL verifying for proxy. |
| - | */ |
| - | data->set.proxy_ssl.primary.verifypeer = enabled; |
| - | |
| - | /* Update the current connection proxy_ssl_config. */ |
| - | Curl_ssl_conn_config_update(data, TRUE); |
| - | break; |
| - | case CURLOPT_PROXY_SSL_VERIFYHOST: |
| - | /* |
| - | * Enable verification of the hostname in the peer certificate for proxy |
| - | */ |
| - | data->set.proxy_ssl.primary.verifyhost = enabled; |
| - | |
| - | /* Update the current connection proxy_ssl_config. */ |
| - | Curl_ssl_conn_config_update(data, TRUE); |
| + | s->socks5auth = (unsigned char)uarg; |
| break; | |
| #endif /* ! CURL_DISABLE_PROXY */ | |
| - | #if defined(HAVE_GSSAPI) || defined(USE_WINDOWS_SSPI) |
| - | case CURLOPT_SOCKS5_GSSAPI_NEC: |
| - | /* |
| - | * Set flag for NEC SOCK5 support |
| - | */ |
| - | data->set.socks5_gssapi_nec = enabled; |
| - | break; |
| - | #endif |
| - | #ifdef CURL_LIST_ONLY_PROTOCOL |
| - | case CURLOPT_DIRLISTONLY: |
| - | /* |
| - | * An option that changes the command to one that asks for a list only, no |
| - | * file info details. Used for FTP, POP3 and SFTP. |
| - | */ |
| - | data->set.list_only = enabled; |
| - | break; |
| - | #endif |
| - | case CURLOPT_APPEND: |
| - | /* |
| - | * We want to upload and append to an existing file. Used for FTP and |
| - | * SFTP. |
| - | */ |
| - | data->set.remote_append = enabled; |
| - | break; |
| - | |
| #ifndef CURL_DISABLE_FTP | |
| case CURLOPT_FTP_FILEMETHOD: | |
| /* | |
| @@ -866,32 +1071,12 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if((arg < CURLFTPMETHOD_DEFAULT) || (arg >= CURLFTPMETHOD_LAST)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.ftp_filemethod = (unsigned char)arg; |
| - | break; |
| - | case CURLOPT_FTP_USE_EPRT: |
| - | data->set.ftp_use_eprt = enabled; |
| - | break; |
| - | |
| - | case CURLOPT_FTP_USE_EPSV: |
| - | data->set.ftp_use_epsv = enabled; |
| + | s->ftp_filemethod = (unsigned char)arg; |
| break; | |
| - | |
| - | case CURLOPT_FTP_USE_PRET: |
| - | data->set.ftp_use_pret = enabled; |
| - | break; |
| - | |
| case CURLOPT_FTP_SSL_CCC: | |
| if((arg < CURLFTPSSL_CCC_NONE) || (arg >= CURLFTPSSL_CCC_LAST)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.ftp_ccc = (unsigned char)arg; |
| - | break; |
| - | |
| - | case CURLOPT_FTP_SKIP_PASV_IP: |
| - | /* |
| - | * Enable or disable FTP_SKIP_PASV_IP, which will disable/enable the |
| - | * bypass of the IP address in PASV responses. |
| - | */ |
| - | data->set.ftp_skip_ip = enabled; |
| + | s->ftp_ccc = (unsigned char)arg; |
| break; | |
| case CURLOPT_FTPSSLAUTH: | |
| @@ -900,17 +1085,13 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if((arg < CURLFTPAUTH_DEFAULT) || (arg >= CURLFTPAUTH_LAST)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.ftpsslauth = (unsigned char)arg; |
| + | s->ftpsslauth = (unsigned char)arg; |
| break; | |
| case CURLOPT_ACCEPTTIMEOUT_MS: | |
| /* | |
| * The maximum time for curl to wait for FTP server connect | |
| */ | |
| - | return setopt_set_timeout_ms(&data->set.accepttimeout, arg); |
| - | |
| - | case CURLOPT_WILDCARDMATCH: |
| - | data->set.wildcard_enabled = enabled; |
| - | break; |
| + | return setopt_set_timeout_ms(&s->accepttimeout, arg); |
| #endif /* ! CURL_DISABLE_FTP */ | |
| #if !defined(CURL_DISABLE_FTP) || defined(USE_SSH) | |
| case CURLOPT_FTP_CREATE_MISSING_DIRS: | |
| @@ -921,7 +1102,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| /* reserve other values for future use */ | |
| if((arg < CURLFTP_CREATE_DIR_NONE) || (arg > CURLFTP_CREATE_DIR_RETRY)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.ftp_create_missing_dirs = (unsigned char)arg; |
| + | s->ftp_create_missing_dirs = (unsigned char)arg; |
| break; | |
| #endif /* ! CURL_DISABLE_FTP || USE_SSH */ | |
| case CURLOPT_INFILESIZE: | |
| @@ -931,7 +1112,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if(arg < -1) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.filesize = arg; |
| + | s->filesize = arg; |
| break; | |
| case CURLOPT_LOW_SPEED_LIMIT: | |
| /* | |
| @@ -940,7 +1121,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if(arg < 0) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.low_speed_limit = arg; |
| + | s->low_speed_limit = arg; |
| break; | |
| case CURLOPT_LOW_SPEED_TIME: | |
| /* | |
| @@ -949,7 +1130,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if(arg < 0) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.low_speed_time = arg; |
| + | s->low_speed_time = arg; |
| break; | |
| case CURLOPT_PORT: | |
| /* | |
| @@ -957,26 +1138,26 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if((arg < 0) || (arg > 65535)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.use_port = (unsigned short)arg; |
| + | s->use_port = (unsigned short)arg; |
| break; | |
| case CURLOPT_TIMEOUT: | |
| /* | |
| * The maximum time you allow curl to use for a single transfer | |
| * operation. | |
| */ | |
| - | return setopt_set_timeout_sec(&data->set.timeout, arg); |
| + | return setopt_set_timeout_sec(&s->timeout, arg); |
| case CURLOPT_TIMEOUT_MS: | |
| - | return setopt_set_timeout_ms(&data->set.timeout, arg); |
| + | return setopt_set_timeout_ms(&s->timeout, arg); |
| case CURLOPT_CONNECTTIMEOUT: | |
| /* | |
| * The maximum time you allow curl to use to connect. | |
| */ | |
| - | return setopt_set_timeout_sec(&data->set.connecttimeout, arg); |
| + | return setopt_set_timeout_sec(&s->connecttimeout, arg); |
| case CURLOPT_CONNECTTIMEOUT_MS: | |
| - | return setopt_set_timeout_ms(&data->set.connecttimeout, arg); |
| + | return setopt_set_timeout_ms(&s->connecttimeout, arg); |
| case CURLOPT_RESUME_FROM: | |
| /* | |
| @@ -984,14 +1165,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if(arg < -1) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.set_resume_from = arg; |
| - | break; |
| - | |
| - | case CURLOPT_CRLF: |
| - | /* |
| - | * Kludgy option to enable CRLF conversions. Subject for removal. |
| - | */ |
| - | data->set.crlf = enabled; |
| + | s->set_resume_from = arg; |
| break; | |
| #ifndef CURL_DISABLE_BINDLOCAL | |
| @@ -1001,7 +1175,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if((arg < 0) || (arg > 65535)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.localport = curlx_sltous(arg); |
| + | s->localport = curlx_sltous(arg); |
| break; | |
| case CURLOPT_LOCALPORTRANGE: | |
| /* | |
| @@ -1009,7 +1183,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if((arg < 0) || (arg > 65535)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.localportrange = curlx_sltous(arg); |
| + | s->localportrange = curlx_sltous(arg); |
| break; | |
| #endif | |
| @@ -1018,80 +1192,16 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * GSS-API credential delegation bitmask | |
| */ | |
| - | data->set.gssapi_delegation = (unsigned char)uarg& |
| + | s->gssapi_delegation = (unsigned char)uarg& |
| (CURLGSSAPI_DELEGATION_POLICY_FLAG|CURLGSSAPI_DELEGATION_FLAG); | |
| break; | |
| #endif | |
| - | case CURLOPT_SSL_VERIFYPEER: |
| - | /* |
| - | * Enable peer SSL verifying. |
| - | */ |
| - | data->set.ssl.primary.verifypeer = enabled; |
| - | |
| - | /* Update the current connection ssl_config. */ |
| - | Curl_ssl_conn_config_update(data, FALSE); |
| - | break; |
| - | #ifndef CURL_DISABLE_DOH |
| - | case CURLOPT_DOH_SSL_VERIFYPEER: |
| - | /* |
| - | * Enable peer SSL verifying for DoH. |
| - | */ |
| - | data->set.doh_verifypeer = enabled; |
| - | break; |
| - | case CURLOPT_DOH_SSL_VERIFYHOST: |
| - | /* |
| - | * Enable verification of the hostname in the peer certificate for DoH |
| - | */ |
| - | data->set.doh_verifyhost = enabled; |
| - | break; |
| - | case CURLOPT_DOH_SSL_VERIFYSTATUS: |
| - | /* |
| - | * Enable certificate status verifying for DoH. |
| - | */ |
| - | if(!Curl_ssl_cert_status_request()) |
| - | return CURLE_NOT_BUILT_IN; |
| - | |
| - | data->set.doh_verifystatus = enabled; |
| - | break; |
| - | #endif /* ! CURL_DISABLE_DOH */ |
| - | case CURLOPT_SSL_VERIFYHOST: |
| - | /* |
| - | * Enable verification of the hostname in the peer certificate |
| - | */ |
| - | |
| - | /* Obviously people are not reading documentation and too many thought |
| - | this argument took a boolean when it was not and misused it. |
| - | Treat 1 and 2 the same */ |
| - | data->set.ssl.primary.verifyhost = enabled; |
| - | |
| - | /* Update the current connection ssl_config. */ |
| - | Curl_ssl_conn_config_update(data, FALSE); |
| - | break; |
| - | case CURLOPT_SSL_VERIFYSTATUS: |
| - | /* |
| - | * Enable certificate status verifying. |
| - | */ |
| - | if(!Curl_ssl_cert_status_request()) |
| - | return CURLE_NOT_BUILT_IN; |
| - | data->set.ssl.primary.verifystatus = enabled; |
| - | |
| - | /* Update the current connection ssl_config. */ |
| - | Curl_ssl_conn_config_update(data, FALSE); |
| - | break; |
| case CURLOPT_SSL_FALSESTART: | |
| /* | |
| * No TLS backends support false start anymore. | |
| */ | |
| return CURLE_NOT_BUILT_IN; | |
| - | case CURLOPT_CERTINFO: |
| - | #ifdef USE_SSL |
| - | if(Curl_ssl_supports(data, SSLSUPP_CERTINFO)) |
| - | data->set.ssl.certinfo = enabled; |
| - | else |
| - | #endif |
| - | return CURLE_NOT_BUILT_IN; |
| - | break; |
| case CURLOPT_BUFFERSIZE: | |
| /* | |
| * The application kindly asks for a differently sized receive buffer. | |
| @@ -1104,7 +1214,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| else if(arg < READBUFFER_MIN) | |
| arg = READBUFFER_MIN; | |
| - | data->set.buffer_size = (unsigned int)arg; |
| + | s->buffer_size = (unsigned int)arg; |
| break; | |
| case CURLOPT_UPLOAD_BUFFERSIZE: | |
| @@ -1117,23 +1227,16 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| else if(arg < UPLOADBUFFER_MIN) | |
| arg = UPLOADBUFFER_MIN; | |
| - | data->set.upload_buffer_size = (unsigned int)arg; |
| + | s->upload_buffer_size = (unsigned int)arg; |
| break; | |
| - | case CURLOPT_NOSIGNAL: |
| - | /* |
| - | * The application asks not to set any signal() or alarm() handlers, |
| - | * even when using a timeout. |
| - | */ |
| - | data->set.no_signal = enabled; |
| - | break; |
| case CURLOPT_MAXFILESIZE: | |
| /* | |
| * Set the maximum size of a file to download. | |
| */ | |
| if(arg < 0) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.max_filesize = arg; |
| + | s->max_filesize = arg; |
| break; | |
| #ifdef USE_SSL | |
| @@ -1143,15 +1246,15 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if((arg < CURLUSESSL_NONE) || (arg >= CURLUSESSL_LAST)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.use_ssl = (unsigned char)arg; |
| + | s->use_ssl = (unsigned char)arg; |
| break; | |
| case CURLOPT_SSL_OPTIONS: | |
| - | set_ssl_options(&data->set.ssl, &data->set.ssl.primary, arg); |
| + | set_ssl_options(&s->ssl, &s->ssl.primary, arg); |
| break; | |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_SSL_OPTIONS: | |
| - | set_ssl_options(&data->set.proxy_ssl, &data->set.proxy_ssl.primary, arg); |
| + | set_ssl_options(&s->proxy_ssl, &s->proxy_ssl.primary, arg); |
| break; | |
| #endif | |
| @@ -1159,18 +1262,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| case CURLOPT_IPRESOLVE: | |
| if((arg < CURL_IPRESOLVE_WHATEVER) || (arg > CURL_IPRESOLVE_V6)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.ipver = (unsigned char) arg; |
| - | break; |
| - | case CURLOPT_TCP_NODELAY: |
| - | /* |
| - | * Enable or disable TCP_NODELAY, which will disable/enable the Nagle |
| - | * algorithm |
| - | */ |
| - | data->set.tcp_nodelay = enabled; |
| - | break; |
| - | |
| - | case CURLOPT_IGNORE_CONTENT_LENGTH: |
| - | data->set.ignorecl = enabled; |
| + | s->ipver = (unsigned char) arg; |
| break; | |
| case CURLOPT_CONNECT_ONLY: | |
| @@ -1181,42 +1273,18 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if(arg > 2) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.connect_only = !!arg; |
| - | data->set.connect_only_ws = (arg == 2); |
| + | s->connect_only = !!arg; |
| + | s->connect_only_ws = (arg == 2); |
| break; | |
| - | case CURLOPT_SSL_SESSIONID_CACHE: |
| - | data->set.ssl.primary.cache_session = enabled; |
| - | #ifndef CURL_DISABLE_PROXY |
| - | data->set.proxy_ssl.primary.cache_session = |
| - | data->set.ssl.primary.cache_session; |
| - | #endif |
| - | break; |
| #ifdef USE_SSH | |
| /* we only include SSH options if explicitly built to support SSH */ | |
| case CURLOPT_SSH_AUTH_TYPES: | |
| - | data->set.ssh_auth_types = (int)arg; |
| - | break; |
| - | case CURLOPT_SSH_COMPRESSION: |
| - | data->set.ssh_compression = enabled; |
| + | s->ssh_auth_types = (int)arg; |
| break; | |
| #endif | |
| - | case CURLOPT_HTTP_TRANSFER_DECODING: |
| - | /* |
| - | * disable libcurl transfer encoding is used |
| - | */ |
| - | data->set.http_te_skip = !enabled; /* reversed */ |
| - | break; |
| - | |
| - | case CURLOPT_HTTP_CONTENT_DECODING: |
| - | /* |
| - | * raw data passed to the application when content encoding is used |
| - | */ |
| - | data->set.http_ce_skip = !enabled; /* reversed */ |
| - | break; |
| - | |
| #if !defined(CURL_DISABLE_FTP) || defined(USE_SSH) | |
| case CURLOPT_NEW_FILE_PERMS: | |
| /* | |
| @@ -1224,7 +1292,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if((arg < 0) || (arg > 0777)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.new_file_perms = (unsigned int)arg; |
| + | s->new_file_perms = (unsigned int)arg; |
| break; | |
| #endif | |
| #ifdef USE_SSH | |
| @@ -1234,7 +1302,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if((arg < 0) || (arg > 0777)) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.new_directory_perms = (unsigned int)arg; |
| + | s->new_directory_perms = (unsigned int)arg; |
| break; | |
| #endif | |
| #ifdef USE_IPV6 | |
| @@ -1248,7 +1316,7 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| if(uarg > UINT_MAX) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| #endif | |
| - | data->set.scope_id = (unsigned int)uarg; |
| + | s->scope_id = (unsigned int)uarg; |
| break; | |
| #endif | |
| case CURLOPT_PROTOCOLS: | |
| @@ -1256,26 +1324,16 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| transfer, which thus helps the app which takes URLs from users or other | |
| external inputs and want to restrict what protocol(s) to deal with. | |
| Defaults to CURLPROTO_ALL. */ | |
| - | data->set.allowed_protocols = (curl_prot_t)arg; |
| + | s->allowed_protocols = (curl_prot_t)arg; |
| break; | |
| case CURLOPT_REDIR_PROTOCOLS: | |
| /* set the bitmask for the protocols that libcurl is allowed to follow to, | |
| as a subset of the CURLOPT_PROTOCOLS ones. That means the protocol | |
| needs to be set in both bitmasks to be allowed to get redirected to. */ | |
| - | data->set.redir_protocols = (curl_prot_t)arg; |
| + | s->redir_protocols = (curl_prot_t)arg; |
| break; | |
| - | #ifndef CURL_DISABLE_SMTP |
| - | case CURLOPT_MAIL_RCPT_ALLOWFAILS: |
| - | /* allow RCPT TO command to fail for some recipients */ |
| - | data->set.mail_rcpt_allowfails = enabled; |
| - | break; |
| - | #endif /* !CURL_DISABLE_SMTP */ |
| - | case CURLOPT_SASL_IR: |
| - | /* Enable/disable SASL initial response */ |
| - | data->set.sasl_ir = enabled; |
| - | break; |
| #ifndef CURL_DISABLE_RTSP | |
| case CURLOPT_RTSP_REQUEST: | |
| return setopt_RTSP_REQUEST(data, arg); | |
| @@ -1295,82 +1353,50 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| #endif /* ! CURL_DISABLE_RTSP */ | |
| - | case CURLOPT_TCP_KEEPALIVE: |
| - | data->set.tcp_keepalive = enabled; |
| - | break; |
| case CURLOPT_TCP_KEEPIDLE: | |
| if(arg < 0) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| else if(arg > INT_MAX) | |
| arg = INT_MAX; | |
| - | data->set.tcp_keepidle = (int)arg; |
| + | s->tcp_keepidle = (int)arg; |
| break; | |
| case CURLOPT_TCP_KEEPINTVL: | |
| if(arg < 0) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| else if(arg > INT_MAX) | |
| arg = INT_MAX; | |
| - | data->set.tcp_keepintvl = (int)arg; |
| + | s->tcp_keepintvl = (int)arg; |
| break; | |
| case CURLOPT_TCP_KEEPCNT: | |
| if(arg < 0) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| else if(arg > INT_MAX) | |
| arg = INT_MAX; | |
| - | data->set.tcp_keepcnt = (int)arg; |
| - | break; |
| - | case CURLOPT_TCP_FASTOPEN: |
| - | #if defined(CONNECT_DATA_IDEMPOTENT) || defined(MSG_FASTOPEN) || \ |
| - | defined(TCP_FASTOPEN_CONNECT) |
| - | data->set.tcp_fastopen = enabled; |
| - | #else |
| - | return CURLE_NOT_BUILT_IN; |
| - | #endif |
| + | s->tcp_keepcnt = (int)arg; |
| break; | |
| case CURLOPT_SSL_ENABLE_NPN: | |
| break; | |
| - | case CURLOPT_SSL_ENABLE_ALPN: |
| - | data->set.ssl_enable_alpn = enabled; |
| - | break; |
| - | case CURLOPT_PATH_AS_IS: |
| - | data->set.path_as_is = enabled; |
| - | break; |
| - | case CURLOPT_PIPEWAIT: |
| - | data->set.pipewait = enabled; |
| - | break; |
| case CURLOPT_STREAM_WEIGHT: | |
| #if defined(USE_HTTP2) || defined(USE_HTTP3) | |
| if((arg >= 1) && (arg <= 256)) | |
| - | data->set.priority.weight = (int)arg; |
| + | s->priority.weight = (int)arg; |
| break; | |
| #else | |
| return CURLE_NOT_BUILT_IN; | |
| #endif | |
| - | case CURLOPT_SUPPRESS_CONNECT_HEADERS: |
| - | data->set.suppress_connect_headers = enabled; |
| - | break; |
| case CURLOPT_HAPPY_EYEBALLS_TIMEOUT_MS: | |
| - | return setopt_set_timeout_ms(&data->set.happy_eyeballs_timeout, arg); |
| - | |
| - | #ifndef CURL_DISABLE_SHUFFLE_DNS |
| - | case CURLOPT_DNS_SHUFFLE_ADDRESSES: |
| - | data->set.dns_shuffle_addresses = enabled; |
| - | break; |
| - | #endif |
| - | case CURLOPT_DISALLOW_USERNAME_IN_URL: |
| - | data->set.disallow_username_in_url = enabled; |
| - | break; |
| + | return setopt_set_timeout_ms(&s->happy_eyeballs_timeout, arg); |
| case CURLOPT_UPKEEP_INTERVAL_MS: | |
| if(arg < 0) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.upkeep_interval_ms = arg; |
| + | s->upkeep_interval_ms = arg; |
| break; | |
| case CURLOPT_MAXAGE_CONN: | |
| - | return setopt_set_timeout_sec(&data->set.conn_max_idle_ms, arg); |
| + | return setopt_set_timeout_sec(&s->conn_max_idle_ms, arg); |
| case CURLOPT_MAXLIFETIME_CONN: | |
| - | return setopt_set_timeout_sec(&data->set.conn_max_age_ms, arg); |
| + | return setopt_set_timeout_sec(&s->conn_max_age_ms, arg); |
| #ifndef CURL_DISABLE_HSTS | |
| case CURLOPT_HSTS_CTRL: | |
| @@ -1400,13 +1426,10 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| #endif /* ! CURL_DISABLE_ALTSVC */ | |
| #ifndef CURL_DISABLE_WEBSOCKETS | |
| case CURLOPT_WS_OPTIONS: | |
| - | data->set.ws_raw_mode = (bool)(arg & CURLWS_RAW_MODE); |
| - | data->set.ws_no_auto_pong = (bool)(arg & CURLWS_NOAUTOPONG); |
| + | s->ws_raw_mode = (bool)(arg & CURLWS_RAW_MODE); |
| + | s->ws_no_auto_pong = (bool)(arg & CURLWS_NOAUTOPONG); |
| break; | |
| #endif | |
| - | case CURLOPT_QUICK_EXIT: |
| - | data->set.quick_exit = enabled; |
| - | break; |
| case CURLOPT_DNS_USE_GLOBAL_CACHE: | |
| /* deprecated */ | |
| break; | |
| @@ -1414,10 +1437,10 @@ static CURLcode setopt_long(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * flag to set engine as default. | |
| */ | |
| - | Curl_safefree(data->set.str[STRING_SSL_ENGINE]); |
| + | Curl_safefree(s->str[STRING_SSL_ENGINE]); |
| return Curl_ssl_set_engine_default(data); | |
| case CURLOPT_UPLOAD_FLAGS: | |
| - | data->set.upload_flags = (unsigned char)arg; |
| + | s->upload_flags = (unsigned char)arg; |
| break; | |
| default: | |
| /* unknown option */ | |
| @@ -1430,6 +1453,7 @@ static CURLcode setopt_slist(struct Curl_easy *data, CURLoption option, | |
| struct curl_slist *slist) | |
| { | |
| CURLcode result = CURLE_OK; | |
| + | struct UserDefined *s = &data->set; |
| switch(option) { | |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXYHEADER: | |
| @@ -1443,7 +1467,7 @@ static CURLcode setopt_slist(struct Curl_easy *data, CURLoption option, | |
| * | |
| * Set this option to NULL to restore the previous behavior. | |
| */ | |
| - | data->set.proxyheaders = slist; |
| + | s->proxyheaders = slist; |
| break; | |
| #endif | |
| #ifndef CURL_DISABLE_HTTP | |
| @@ -1451,7 +1475,7 @@ static CURLcode setopt_slist(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Set a list of aliases for HTTP 200 in response header | |
| */ | |
| - | data->set.http200aliases = slist; |
| + | s->http200aliases = slist; |
| break; | |
| #endif | |
| #if !defined(CURL_DISABLE_FTP) || defined(USE_SSH) | |
| @@ -1459,19 +1483,19 @@ static CURLcode setopt_slist(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * List of RAW FTP commands to use after a transfer | |
| */ | |
| - | data->set.postquote = slist; |
| + | s->postquote = slist; |
| break; | |
| case CURLOPT_PREQUOTE: | |
| /* | |
| * List of RAW FTP commands to use prior to RETR (Wesley Laxton) | |
| */ | |
| - | data->set.prequote = slist; |
| + | s->prequote = slist; |
| break; | |
| case CURLOPT_QUOTE: | |
| /* | |
| * List of RAW FTP commands to use before a transfer | |
| */ | |
| - | data->set.quote = slist; |
| + | s->quote = slist; |
| break; | |
| #endif | |
| case CURLOPT_RESOLVE: | |
| @@ -1488,15 +1512,15 @@ static CURLcode setopt_slist(struct Curl_easy *data, CURLoption option, | |
| * This API can remove any entry from the DNS cache, but only entries | |
| * that are not actually in use right now will be pruned immediately. | |
| */ | |
| - | data->set.resolve = slist; |
| - | data->state.resolve = data->set.resolve; |
| + | s->resolve = slist; |
| + | data->state.resolve = s->resolve; |
| break; | |
| #if !defined(CURL_DISABLE_HTTP) || !defined(CURL_DISABLE_MIME) | |
| case CURLOPT_HTTPHEADER: | |
| /* | |
| * Set a list with HTTP headers to use (or replace internals with) | |
| */ | |
| - | data->set.headers = slist; |
| + | s->headers = slist; |
| break; | |
| #endif | |
| #ifndef CURL_DISABLE_TELNET | |
| @@ -1504,17 +1528,17 @@ static CURLcode setopt_slist(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Set a linked list of telnet options | |
| */ | |
| - | data->set.telnet_options = slist; |
| + | s->telnet_options = slist; |
| break; | |
| #endif | |
| #ifndef CURL_DISABLE_SMTP | |
| case CURLOPT_MAIL_RCPT: | |
| /* Set the list of mail recipients */ | |
| - | data->set.mail_rcpt = slist; |
| + | s->mail_rcpt = slist; |
| break; | |
| #endif | |
| case CURLOPT_CONNECT_TO: | |
| - | data->set.connect_to = slist; |
| + | s->connect_to = slist; |
| break; | |
| default: | |
| return CURLE_UNKNOWN_OPTION; | |
| @@ -1527,6 +1551,7 @@ static CURLcode setopt_pointers(struct Curl_easy *data, CURLoption option, | |
| va_list param) | |
| { | |
| CURLcode result = CURLE_OK; | |
| + | struct UserDefined *s = &data->set; |
| switch(option) { | |
| #ifndef CURL_DISABLE_HTTP | |
| #ifndef CURL_DISABLE_FORM_API | |
| @@ -1534,9 +1559,9 @@ static CURLcode setopt_pointers(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Set to make us do HTTP POST. Legacy API-style. | |
| */ | |
| - | data->set.httppost = va_arg(param, struct curl_httppost *); |
| - | data->set.method = HTTPREQ_POST_FORM; |
| - | data->set.opt_no_body = FALSE; /* this is implied */ |
| + | s->httppost = va_arg(param, struct curl_httppost *); |
| + | s->method = HTTPREQ_POST_FORM; |
| + | s->opt_no_body = FALSE; /* this is implied */ |
| Curl_mime_cleanpart(data->state.formp); | |
| Curl_safefree(data->state.formp); | |
| data->state.mimepost = NULL; | |
| @@ -1550,12 +1575,12 @@ static CURLcode setopt_pointers(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Set to make us do MIME POST | |
| */ | |
| - | result = Curl_mime_set_subparts(&data->set.mimepost, |
| + | result = Curl_mime_set_subparts(&s->mimepost, |
| va_arg(param, curl_mime *), | |
| FALSE); | |
| if(!result) { | |
| - | data->set.method = HTTPREQ_POST_MIME; |
| - | data->set.opt_no_body = FALSE; /* this is implied */ |
| + | s->method = HTTPREQ_POST_MIME; |
| + | s->opt_no_body = FALSE; /* this is implied */ |
| #ifndef CURL_DISABLE_FORM_API | |
| Curl_mime_cleanpart(data->state.formp); | |
| Curl_safefree(data->state.formp); | |
| @@ -1570,9 +1595,9 @@ static CURLcode setopt_pointers(struct Curl_easy *data, CURLoption option, | |
| * Set to a FILE * that should receive all error writes. This | |
| * defaults to stderr for normal operations. | |
| */ | |
| - | data->set.err = va_arg(param, FILE *); |
| - | if(!data->set.err) |
| - | data->set.err = stderr; |
| + | s->err = va_arg(param, FILE *); |
| + | if(!s->err) |
| + | s->err = stderr; |
| break; | |
| case CURLOPT_SHARE: | |
| { | |
| @@ -1663,18 +1688,19 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| char *ptr) | |
| { | |
| CURLcode result = CURLE_OK; | |
| + | struct UserDefined *s = &data->set; |
| switch(option) { | |
| case CURLOPT_SSL_CIPHER_LIST: | |
| if(Curl_ssl_supports(data, SSLSUPP_CIPHER_LIST)) | |
| /* set a list of cipher we want to use in the SSL connection */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_CIPHER_LIST], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSL_CIPHER_LIST], ptr); |
| else | |
| return CURLE_NOT_BUILT_IN; | |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_SSL_CIPHER_LIST: | |
| if(Curl_ssl_supports(data, SSLSUPP_CIPHER_LIST)) { | |
| /* set a list of cipher we want to use in the SSL connection for proxy */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_CIPHER_LIST_PROXY], |
| + | return Curl_setstropt(&s->str[STRING_SSL_CIPHER_LIST_PROXY], |
| ptr); | |
| } | |
| else | |
| @@ -1683,7 +1709,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| case CURLOPT_TLS13_CIPHERS: | |
| if(Curl_ssl_supports(data, SSLSUPP_TLS13_CIPHERSUITES)) { | |
| /* set preferred list of TLS 1.3 cipher suites */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_CIPHER13_LIST], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSL_CIPHER13_LIST], ptr); |
| } | |
| else | |
| return CURLE_NOT_BUILT_IN; | |
| @@ -1691,7 +1717,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| case CURLOPT_PROXY_TLS13_CIPHERS: | |
| if(Curl_ssl_supports(data, SSLSUPP_TLS13_CIPHERSUITES)) | |
| /* set preferred list of TLS 1.3 cipher suites for proxy */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_CIPHER13_LIST_PROXY], |
| + | return Curl_setstropt(&s->str[STRING_SSL_CIPHER13_LIST_PROXY], |
| ptr); | |
| else | |
| return CURLE_NOT_BUILT_IN; | |
| @@ -1701,13 +1727,13 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| case CURLOPT_EGDSOCKET: | |
| break; | |
| case CURLOPT_REQUEST_TARGET: | |
| - | return Curl_setstropt(&data->set.str[STRING_TARGET], ptr); |
| + | return Curl_setstropt(&s->str[STRING_TARGET], ptr); |
| #ifndef CURL_DISABLE_NETRC | |
| case CURLOPT_NETRC_FILE: | |
| /* | |
| * Use this file instead of the $HOME/.netrc file | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_NETRC_FILE], ptr); |
| + | return Curl_setstropt(&s->str[STRING_NETRC_FILE], ptr); |
| #endif | |
| #if !defined(CURL_DISABLE_HTTP) || !defined(CURL_DISABLE_MQTT) | |
| @@ -1717,16 +1743,16 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * If needed, CURLOPT_POSTFIELDSIZE must have been set prior to | |
| * CURLOPT_COPYPOSTFIELDS and not altered later. | |
| */ | |
| - | if(!ptr || data->set.postfieldsize == -1) |
| - | result = Curl_setstropt(&data->set.str[STRING_COPYPOSTFIELDS], ptr); |
| + | if(!ptr || s->postfieldsize == -1) |
| + | result = Curl_setstropt(&s->str[STRING_COPYPOSTFIELDS], ptr); |
| else { | |
| - | if(data->set.postfieldsize < 0) |
| + | if(s->postfieldsize < 0) |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| #if SIZEOF_CURL_OFF_T > SIZEOF_SIZE_T | |
| /* | |
| * Check that requested length does not overflow the size_t type. | |
| */ | |
| - | else if(data->set.postfieldsize > SIZE_T_MAX) |
| + | else if(s->postfieldsize > SIZE_T_MAX) |
| return CURLE_OUT_OF_MEMORY; | |
| #endif | |
| else { | |
| @@ -1735,28 +1761,28 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| mark that postfields is used rather than read function or form | |
| data. | |
| */ | |
| - | char *p = Curl_memdup0(ptr, (size_t)data->set.postfieldsize); |
| + | char *p = Curl_memdup0(ptr, (size_t)s->postfieldsize); |
| if(!p) | |
| return CURLE_OUT_OF_MEMORY; | |
| else { | |
| - | free(data->set.str[STRING_COPYPOSTFIELDS]); |
| - | data->set.str[STRING_COPYPOSTFIELDS] = p; |
| + | free(s->str[STRING_COPYPOSTFIELDS]); |
| + | s->str[STRING_COPYPOSTFIELDS] = p; |
| } | |
| } | |
| } | |
| - | data->set.postfields = data->set.str[STRING_COPYPOSTFIELDS]; |
| - | data->set.method = HTTPREQ_POST; |
| + | s->postfields = s->str[STRING_COPYPOSTFIELDS]; |
| + | s->method = HTTPREQ_POST; |
| break; | |
| case CURLOPT_POSTFIELDS: | |
| /* | |
| * Like above, but use static data instead of copying it. | |
| */ | |
| - | data->set.postfields = ptr; |
| + | s->postfields = ptr; |
| /* Release old copied data. */ | |
| - | Curl_safefree(data->set.str[STRING_COPYPOSTFIELDS]); |
| - | data->set.method = HTTPREQ_POST; |
| + | Curl_safefree(s->str[STRING_COPYPOSTFIELDS]); |
| + | s->method = HTTPREQ_POST; |
| break; | |
| #endif /* ! CURL_DISABLE_HTTP || ! CURL_DISABLE_MQTT */ | |
| @@ -1774,9 +1800,9 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| if(ptr && !*ptr) { | |
| char all[256]; | |
| Curl_all_content_encodings(all, sizeof(all)); | |
| - | return Curl_setstropt(&data->set.str[STRING_ENCODING], all); |
| + | return Curl_setstropt(&s->str[STRING_ENCODING], all); |
| } | |
| - | return Curl_setstropt(&data->set.str[STRING_ENCODING], ptr); |
| + | return Curl_setstropt(&s->str[STRING_ENCODING], ptr); |
| #ifndef CURL_DISABLE_AWS | |
| case CURLOPT_AWS_SIGV4: | |
| @@ -1784,12 +1810,12 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * String that is merged to some authentication | |
| * parameters are used by the algorithm. | |
| */ | |
| - | result = Curl_setstropt(&data->set.str[STRING_AWS_SIGV4], ptr); |
| + | result = Curl_setstropt(&s->str[STRING_AWS_SIGV4], ptr); |
| /* | |
| * Basic been set by default it need to be unset here | |
| */ | |
| - | if(data->set.str[STRING_AWS_SIGV4]) |
| - | data->set.httpauth = CURLAUTH_AWS_SIGV4; |
| + | if(s->str[STRING_AWS_SIGV4]) |
| + | s->httpauth = CURLAUTH_AWS_SIGV4; |
| break; | |
| #endif | |
| case CURLOPT_REFERER: | |
| @@ -1800,22 +1826,22 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| Curl_safefree(data->state.referer); | |
| data->state.referer_alloc = FALSE; | |
| } | |
| - | result = Curl_setstropt(&data->set.str[STRING_SET_REFERER], ptr); |
| - | data->state.referer = data->set.str[STRING_SET_REFERER]; |
| + | result = Curl_setstropt(&s->str[STRING_SET_REFERER], ptr); |
| + | data->state.referer = s->str[STRING_SET_REFERER]; |
| break; | |
| case CURLOPT_USERAGENT: | |
| /* | |
| * String to use in the HTTP User-Agent field | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_USERAGENT], ptr); |
| + | return Curl_setstropt(&s->str[STRING_USERAGENT], ptr); |
| #ifndef CURL_DISABLE_COOKIES | |
| case CURLOPT_COOKIE: | |
| /* | |
| * Cookie string to send to the remote server in the request. | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_COOKIE], ptr); |
| + | return Curl_setstropt(&s->str[STRING_COOKIE], ptr); |
| case CURLOPT_COOKIEFILE: | |
| /* | |
| @@ -1856,14 +1882,14 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Set cookie filename to dump all cookies to when we are done. | |
| */ | |
| - | result = Curl_setstropt(&data->set.str[STRING_COOKIEJAR], ptr); |
| + | result = Curl_setstropt(&s->str[STRING_COOKIEJAR], ptr); |
| if(!result) { | |
| /* | |
| * Activate the cookie parser. This may or may not already | |
| * have been made. | |
| */ | |
| struct CookieInfo *newcookies = | |
| - | Curl_cookie_init(data, NULL, data->cookies, data->set.cookiesession); |
| + | Curl_cookie_init(data, NULL, data->cookies, s->cookiesession); |
| if(!newcookies) | |
| result = CURLE_OUT_OF_MEMORY; | |
| data->cookies = newcookies; | |
| @@ -1927,10 +1953,10 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Set a custom string to use as request | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_CUSTOMREQUEST], ptr); |
| + | return Curl_setstropt(&s->str[STRING_CUSTOMREQUEST], ptr); |
| /* we do not set | |
| - | data->set.method = HTTPREQ_CUSTOM; |
| + | s->method = HTTPREQ_CUSTOM; |
| here, we continue as if we were using the already set type | |
| and this just changes the actual request keyword */ | |
| @@ -1946,7 +1972,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * Setting it to NULL, means no proxy but allows the environment variables | |
| * to decide for us (if CURLOPT_SOCKS_PROXY setting it to NULL). | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_PROXY], ptr); |
| case CURLOPT_PRE_PROXY: | |
| /* | |
| @@ -1955,7 +1981,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * If the proxy is set to "" or NULL we explicitly say that we do not want | |
| * to use the socks proxy. | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_PRE_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_PRE_PROXY], ptr); |
| #endif /* CURL_DISABLE_PROXY */ | |
| #ifndef CURL_DISABLE_PROXY | |
| @@ -1964,58 +1990,58 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Set proxy authentication service name for Kerberos 5 and SPNEGO | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_PROXY_SERVICE_NAME], ptr); |
| + | return Curl_setstropt(&s->str[STRING_PROXY_SERVICE_NAME], ptr); |
| #endif | |
| case CURLOPT_SERVICE_NAME: | |
| /* | |
| * Set authentication service name for DIGEST-MD5, Kerberos 5 and SPNEGO | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SERVICE_NAME], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SERVICE_NAME], ptr); |
| case CURLOPT_HEADERDATA: | |
| /* | |
| * Custom pointer to pass the header write callback function | |
| */ | |
| - | data->set.writeheader = ptr; |
| + | s->writeheader = ptr; |
| break; | |
| case CURLOPT_READDATA: | |
| /* | |
| * FILE pointer to read the file to be uploaded from. Or possibly used as | |
| * argument to the read callback. | |
| */ | |
| - | data->set.in_set = ptr; |
| + | s->in_set = ptr; |
| break; | |
| case CURLOPT_WRITEDATA: | |
| /* | |
| * FILE pointer to write to. Or possibly used as argument to the write | |
| * callback. | |
| */ | |
| - | data->set.out = ptr; |
| + | s->out = ptr; |
| break; | |
| case CURLOPT_DEBUGDATA: | |
| /* | |
| * Set to a void * that should receive all error writes. This | |
| * defaults to CURLOPT_STDERR for normal operations. | |
| */ | |
| - | data->set.debugdata = ptr; |
| + | s->debugdata = ptr; |
| break; | |
| case CURLOPT_PROGRESSDATA: | |
| /* | |
| * Custom client data to pass to the progress callback | |
| */ | |
| - | data->set.progress_client = ptr; |
| + | s->progress_client = ptr; |
| break; | |
| case CURLOPT_SEEKDATA: | |
| /* | |
| * Seek control callback. Might be NULL. | |
| */ | |
| - | data->set.seek_client = ptr; |
| + | s->seek_client = ptr; |
| break; | |
| case CURLOPT_IOCTLDATA: | |
| /* | |
| * I/O control data pointer. Might be NULL. | |
| */ | |
| - | data->set.ioctl_client = ptr; |
| + | s->ioctl_client = ptr; |
| break; | |
| case CURLOPT_SSL_CTX_DATA: | |
| /* | |
| @@ -2023,7 +2049,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| */ | |
| #ifdef USE_SSL | |
| if(Curl_ssl_supports(data, SSLSUPP_SSL_CTX)) { | |
| - | data->set.ssl.fsslctxp = ptr; |
| + | s->ssl.fsslctxp = ptr; |
| break; | |
| } | |
| else | |
| @@ -2033,33 +2059,33 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * socket callback data pointer. Might be NULL. | |
| */ | |
| - | data->set.sockopt_client = ptr; |
| + | s->sockopt_client = ptr; |
| break; | |
| case CURLOPT_OPENSOCKETDATA: | |
| /* | |
| * socket callback data pointer. Might be NULL. | |
| */ | |
| - | data->set.opensocket_client = ptr; |
| + | s->opensocket_client = ptr; |
| break; | |
| case CURLOPT_RESOLVER_START_DATA: | |
| /* | |
| * resolver start callback data pointer. Might be NULL. | |
| */ | |
| - | data->set.resolver_start_client = ptr; |
| + | s->resolver_start_client = ptr; |
| break; | |
| case CURLOPT_CLOSESOCKETDATA: | |
| /* | |
| * socket callback data pointer. Might be NULL. | |
| */ | |
| - | data->set.closesocket_client = ptr; |
| + | s->closesocket_client = ptr; |
| break; | |
| case CURLOPT_TRAILERDATA: | |
| #ifndef CURL_DISABLE_HTTP | |
| - | data->set.trailer_data = ptr; |
| + | s->trailer_data = ptr; |
| #endif | |
| break; | |
| case CURLOPT_PREREQDATA: | |
| - | data->set.prereq_userp = ptr; |
| + | s->prereq_userp = ptr; |
| break; | |
| case CURLOPT_ERRORBUFFER: | |
| @@ -2067,7 +2093,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * Error buffer provided by the caller to get the human readable error | |
| * string in. | |
| */ | |
| - | data->set.errorbuffer = ptr; |
| + | s->errorbuffer = ptr; |
| break; | |
| #ifndef CURL_DISABLE_FTP | |
| @@ -2075,23 +2101,23 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Use FTP PORT, this also specifies which IP address to use | |
| */ | |
| - | result = Curl_setstropt(&data->set.str[STRING_FTPPORT], ptr); |
| - | data->set.ftp_use_port = !!(data->set.str[STRING_FTPPORT]); |
| + | result = Curl_setstropt(&s->str[STRING_FTPPORT], ptr); |
| + | s->ftp_use_port = !!(s->str[STRING_FTPPORT]); |
| break; | |
| case CURLOPT_FTP_ACCOUNT: | |
| - | return Curl_setstropt(&data->set.str[STRING_FTP_ACCOUNT], ptr); |
| + | return Curl_setstropt(&s->str[STRING_FTP_ACCOUNT], ptr); |
| case CURLOPT_FTP_ALTERNATIVE_TO_USER: | |
| - | return Curl_setstropt(&data->set.str[STRING_FTP_ALTERNATIVE_TO_USER], ptr); |
| + | return Curl_setstropt(&s->str[STRING_FTP_ALTERNATIVE_TO_USER], ptr); |
| #ifdef HAVE_GSSAPI | |
| case CURLOPT_KRBLEVEL: | |
| /* | |
| * A string that defines the kerberos security level. | |
| */ | |
| - | result = Curl_setstropt(&data->set.str[STRING_KRB_LEVEL], ptr); |
| - | data->set.krb = !!(data->set.str[STRING_KRB_LEVEL]); |
| + | result = Curl_setstropt(&s->str[STRING_KRB_LEVEL], ptr); |
| + | s->krb = !!(s->str[STRING_KRB_LEVEL]); |
| break; | |
| #endif | |
| #endif | |
| @@ -2103,40 +2129,40 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| Curl_safefree(data->state.url); | |
| data->state.url_alloc = FALSE; | |
| } | |
| - | result = Curl_setstropt(&data->set.str[STRING_SET_URL], ptr); |
| - | data->state.url = data->set.str[STRING_SET_URL]; |
| + | result = Curl_setstropt(&s->str[STRING_SET_URL], ptr); |
| + | data->state.url = s->str[STRING_SET_URL]; |
| break; | |
| case CURLOPT_USERPWD: | |
| /* | |
| * user:password to use in the operation | |
| */ | |
| - | return setstropt_userpwd(ptr, &data->set.str[STRING_USERNAME], |
| - | &data->set.str[STRING_PASSWORD]); |
| + | return setstropt_userpwd(ptr, &s->str[STRING_USERNAME], |
| + | &s->str[STRING_PASSWORD]); |
| case CURLOPT_USERNAME: | |
| /* | |
| * authentication username to use in the operation | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_USERNAME], ptr); |
| + | return Curl_setstropt(&s->str[STRING_USERNAME], ptr); |
| case CURLOPT_PASSWORD: | |
| /* | |
| * authentication password to use in the operation | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_PASSWORD], ptr); |
| + | return Curl_setstropt(&s->str[STRING_PASSWORD], ptr); |
| case CURLOPT_LOGIN_OPTIONS: | |
| /* | |
| * authentication options to use in the operation | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_OPTIONS], ptr); |
| + | return Curl_setstropt(&s->str[STRING_OPTIONS], ptr); |
| case CURLOPT_XOAUTH2_BEARER: | |
| /* | |
| * OAuth 2.0 bearer token to use in the operation | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_BEARER], ptr); |
| + | return Curl_setstropt(&s->str[STRING_BEARER], ptr); |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXYUSERPWD: { | |
| @@ -2149,13 +2175,13 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| /* URL decode the components */ | |
| if(!result && u) { | |
| - | Curl_safefree(data->set.str[STRING_PROXYUSERNAME]); |
| - | result = Curl_urldecode(u, 0, &data->set.str[STRING_PROXYUSERNAME], NULL, |
| + | Curl_safefree(s->str[STRING_PROXYUSERNAME]); |
| + | result = Curl_urldecode(u, 0, &s->str[STRING_PROXYUSERNAME], NULL, |
| REJECT_ZERO); | |
| } | |
| if(!result && p) { | |
| - | Curl_safefree(data->set.str[STRING_PROXYPASSWORD]); |
| - | result = Curl_urldecode(p, 0, &data->set.str[STRING_PROXYPASSWORD], NULL, |
| + | Curl_safefree(s->str[STRING_PROXYPASSWORD]); |
| + | result = Curl_urldecode(p, 0, &s->str[STRING_PROXYPASSWORD], NULL, |
| REJECT_ZERO); | |
| } | |
| free(u); | |
| @@ -2166,26 +2192,26 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * authentication username to use in the operation | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_PROXYUSERNAME], ptr); |
| + | return Curl_setstropt(&s->str[STRING_PROXYUSERNAME], ptr); |
| case CURLOPT_PROXYPASSWORD: | |
| /* | |
| * authentication password to use in the operation | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_PROXYPASSWORD], ptr); |
| + | return Curl_setstropt(&s->str[STRING_PROXYPASSWORD], ptr); |
| case CURLOPT_NOPROXY: | |
| /* | |
| * proxy exception list | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_NOPROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_NOPROXY], ptr); |
| #endif /* ! CURL_DISABLE_PROXY */ | |
| case CURLOPT_RANGE: | |
| /* | |
| * What range of the file you want to transfer | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SET_RANGE], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SET_RANGE], ptr); |
| case CURLOPT_CURLU: | |
| /* | |
| @@ -2197,77 +2223,77 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| } | |
| else | |
| data->state.url = NULL; | |
| - | Curl_safefree(data->set.str[STRING_SET_URL]); |
| - | data->set.uh = (CURLU *)ptr; |
| + | Curl_safefree(s->str[STRING_SET_URL]); |
| + | s->uh = (CURLU *)ptr; |
| break; | |
| case CURLOPT_SSLCERT: | |
| /* | |
| * String that holds filename of the SSL certificate to use | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_CERT], ptr); |
| + | return Curl_setstropt(&s->str[STRING_CERT], ptr); |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_SSLCERT: | |
| /* | |
| * String that holds filename of the SSL certificate to use for proxy | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_CERT_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_CERT_PROXY], ptr); |
| #endif | |
| case CURLOPT_SSLCERTTYPE: | |
| /* | |
| * String that holds file type of the SSL certificate to use | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_CERT_TYPE], ptr); |
| + | return Curl_setstropt(&s->str[STRING_CERT_TYPE], ptr); |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_SSLCERTTYPE: | |
| /* | |
| * String that holds file type of the SSL certificate to use for proxy | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_CERT_TYPE_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_CERT_TYPE_PROXY], ptr); |
| #endif | |
| case CURLOPT_SSLKEY: | |
| /* | |
| * String that holds filename of the SSL key to use | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_KEY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_KEY], ptr); |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_SSLKEY: | |
| /* | |
| * String that holds filename of the SSL key to use for proxy | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_KEY_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_KEY_PROXY], ptr); |
| #endif | |
| case CURLOPT_SSLKEYTYPE: | |
| /* | |
| * String that holds file type of the SSL key to use | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_KEY_TYPE], ptr); |
| + | return Curl_setstropt(&s->str[STRING_KEY_TYPE], ptr); |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_SSLKEYTYPE: | |
| /* | |
| * String that holds file type of the SSL key to use for proxy | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_KEY_TYPE_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_KEY_TYPE_PROXY], ptr); |
| #endif | |
| case CURLOPT_KEYPASSWD: | |
| /* | |
| * String that holds the SSL or SSH private key password. | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_KEY_PASSWD], ptr); |
| + | return Curl_setstropt(&s->str[STRING_KEY_PASSWD], ptr); |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_KEYPASSWD: | |
| /* | |
| * String that holds the SSL private key password for proxy. | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_KEY_PASSWD_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_KEY_PASSWD_PROXY], ptr); |
| #endif | |
| case CURLOPT_SSLENGINE: | |
| @@ -2275,7 +2301,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * String that holds the SSL crypto engine. | |
| */ | |
| if(ptr && ptr[0]) { | |
| - | result = Curl_setstropt(&data->set.str[STRING_SSL_ENGINE], ptr); |
| + | result = Curl_setstropt(&s->str[STRING_SSL_ENGINE], ptr); |
| if(!result) { | |
| result = Curl_ssl_set_engine(data, ptr); | |
| } | |
| @@ -2287,9 +2313,9 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Set the client IP to send through HAProxy PROXY protocol | |
| */ | |
| - | result = Curl_setstropt(&data->set.str[STRING_HAPROXY_CLIENT_IP], ptr); |
| + | result = Curl_setstropt(&s->str[STRING_HAPROXY_CLIENT_IP], ptr); |
| /* enable the HAProxy protocol */ | |
| - | data->set.haproxyprotocol = TRUE; |
| + | s->haproxyprotocol = TRUE; |
| break; | |
| #endif | |
| @@ -2299,9 +2325,9 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * performing an operation and thus what from-IP your connection will use. | |
| */ | |
| return setstropt_interface(ptr, | |
| - | &data->set.str[STRING_DEVICE], |
| - | &data->set.str[STRING_INTERFACE], |
| - | &data->set.str[STRING_BINDHOST]); |
| + | &s->str[STRING_DEVICE], |
| + | &s->str[STRING_INTERFACE], |
| + | &s->str[STRING_BINDHOST]); |
| case CURLOPT_PINNEDPUBLICKEY: | |
| /* | |
| @@ -2310,7 +2336,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| */ | |
| #ifdef USE_SSL | |
| if(Curl_ssl_supports(data, SSLSUPP_PINNEDPUBKEY)) | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_PINNEDPUBLICKEY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSL_PINNEDPUBLICKEY], ptr); |
| #endif | |
| return CURLE_NOT_BUILT_IN; | |
| @@ -2322,7 +2348,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| */ | |
| #ifdef USE_SSL | |
| if(Curl_ssl_supports(data, SSLSUPP_PINNEDPUBKEY)) | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_PINNEDPUBLICKEY_PROXY], |
| + | return Curl_setstropt(&s->str[STRING_SSL_PINNEDPUBLICKEY_PROXY], |
| ptr); | |
| #endif | |
| return CURLE_NOT_BUILT_IN; | |
| @@ -2331,7 +2357,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Set CA info for SSL connection. Specify filename of the CA certificate | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_CAFILE], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSL_CAFILE], ptr); |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_CAINFO: | |
| @@ -2339,7 +2365,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * Set CA info SSL connection for proxy. Specify filename of the | |
| * CA certificate | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_CAFILE_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSL_CAFILE_PROXY], ptr); |
| #endif | |
| case CURLOPT_CAPATH: | |
| @@ -2350,7 +2376,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| #ifdef USE_SSL | |
| if(Curl_ssl_supports(data, SSLSUPP_CA_PATH)) | |
| /* This does not work on Windows. */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_CAPATH], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSL_CAPATH], ptr); |
| #endif | |
| return CURLE_NOT_BUILT_IN; | |
| #ifndef CURL_DISABLE_PROXY | |
| @@ -2362,7 +2388,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| #ifdef USE_SSL | |
| if(Curl_ssl_supports(data, SSLSUPP_CA_PATH)) | |
| /* This does not work on Windows. */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_CAPATH_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSL_CAPATH_PROXY], ptr); |
| #endif | |
| return CURLE_NOT_BUILT_IN; | |
| #endif | |
| @@ -2371,7 +2397,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * Set CRL file info for SSL connection. Specify filename of the CRL | |
| * to check certificates revocation | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_CRLFILE], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSL_CRLFILE], ptr); |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_CRLFILE: | |
| @@ -2379,7 +2405,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * Set CRL file info for SSL connection for proxy. Specify filename of the | |
| * CRL to check certificates revocation | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_CRLFILE_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSL_CRLFILE_PROXY], ptr); |
| #endif | |
| case CURLOPT_ISSUERCERT: | |
| @@ -2387,7 +2413,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * Set Issuer certificate file | |
| * to check certificates issuer | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_ISSUERCERT], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSL_ISSUERCERT], ptr); |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_ISSUERCERT: | |
| @@ -2395,14 +2421,14 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * Set Issuer certificate file | |
| * to check certificates issuer | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_ISSUERCERT_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSL_ISSUERCERT_PROXY], ptr); |
| #endif | |
| case CURLOPT_PRIVATE: | |
| /* | |
| * Set private data pointer. | |
| */ | |
| - | data->set.private_data = ptr; |
| + | s->private_data = ptr; |
| break; | |
| #ifdef USE_SSL | |
| @@ -2411,7 +2437,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * Set accepted curves in SSL connection setup. | |
| * Specify colon-delimited list of curve algorithm names. | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_EC_CURVES], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSL_EC_CURVES], ptr); |
| case CURLOPT_SSL_SIGNATURE_ALGORITHMS: | |
| /* | |
| @@ -2419,7 +2445,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * Specify colon-delimited list of signature scheme names. | |
| */ | |
| if(Curl_ssl_supports(data, SSLSUPP_SIGNATURE_ALGORITHMS)) | |
| - | return Curl_setstropt(&data->set.str[STRING_SSL_SIGNATURE_ALGORITHMS], |
| + | return Curl_setstropt(&s->str[STRING_SSL_SIGNATURE_ALGORITHMS], |
| ptr); | |
| return CURLE_NOT_BUILT_IN; | |
| #endif | |
| @@ -2428,13 +2454,13 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Use this file instead of the $HOME/.ssh/id_dsa.pub file | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSH_PUBLIC_KEY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSH_PUBLIC_KEY], ptr); |
| case CURLOPT_SSH_PRIVATE_KEYFILE: | |
| /* | |
| * Use this file instead of the $HOME/.ssh/id_dsa file | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSH_PRIVATE_KEY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSH_PRIVATE_KEY], ptr); |
| #if defined(USE_LIBSSH2) || defined(USE_LIBSSH) | |
| case CURLOPT_SSH_HOST_PUBLIC_KEY_MD5: | |
| @@ -2442,19 +2468,19 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * Option to allow for the MD5 of the host public key to be checked | |
| * for validation purposes. | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSH_HOST_PUBLIC_KEY_MD5], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSH_HOST_PUBLIC_KEY_MD5], ptr); |
| case CURLOPT_SSH_KNOWNHOSTS: | |
| /* | |
| * Store the filename to read known hosts from. | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSH_KNOWNHOSTS], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SSH_KNOWNHOSTS], ptr); |
| #endif | |
| case CURLOPT_SSH_KEYDATA: | |
| /* | |
| * Custom client data to pass to the SSH keyfunc callback | |
| */ | |
| - | data->set.ssh_keyfunc_userp = ptr; |
| + | s->ssh_keyfunc_userp = ptr; |
| break; | |
| #ifdef USE_LIBSSH2 | |
| case CURLOPT_SSH_HOST_PUBLIC_KEY_SHA256: | |
| @@ -2462,47 +2488,47 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * Option to allow for the SHA256 of the host public key to be checked | |
| * for validation purposes. | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SSH_HOST_PUBLIC_KEY_SHA256], |
| + | return Curl_setstropt(&s->str[STRING_SSH_HOST_PUBLIC_KEY_SHA256], |
| ptr); | |
| case CURLOPT_SSH_HOSTKEYDATA: | |
| /* | |
| * Custom client data to pass to the SSH keyfunc callback | |
| */ | |
| - | data->set.ssh_hostkeyfunc_userp = ptr; |
| + | s->ssh_hostkeyfunc_userp = ptr; |
| break; | |
| #endif /* USE_LIBSSH2 */ | |
| #endif /* USE_SSH */ | |
| case CURLOPT_PROTOCOLS_STR: | |
| if(ptr) | |
| - | return protocol2num(ptr, &data->set.allowed_protocols); |
| + | return protocol2num(ptr, &s->allowed_protocols); |
| /* make a NULL argument reset to default */ | |
| - | data->set.allowed_protocols = (curl_prot_t) CURLPROTO_ALL; |
| + | s->allowed_protocols = (curl_prot_t) CURLPROTO_ALL; |
| break; | |
| case CURLOPT_REDIR_PROTOCOLS_STR: | |
| if(ptr) | |
| - | return protocol2num(ptr, &data->set.redir_protocols); |
| + | return protocol2num(ptr, &s->redir_protocols); |
| /* make a NULL argument reset to default */ | |
| - | data->set.redir_protocols = (curl_prot_t) CURLPROTO_REDIR; |
| + | s->redir_protocols = (curl_prot_t) CURLPROTO_REDIR; |
| break; | |
| case CURLOPT_DEFAULT_PROTOCOL: | |
| /* Set the protocol to use when the URL does not include any protocol */ | |
| - | return Curl_setstropt(&data->set.str[STRING_DEFAULT_PROTOCOL], ptr); |
| + | return Curl_setstropt(&s->str[STRING_DEFAULT_PROTOCOL], ptr); |
| #ifndef CURL_DISABLE_SMTP | |
| case CURLOPT_MAIL_FROM: | |
| /* Set the SMTP mail originator */ | |
| - | return Curl_setstropt(&data->set.str[STRING_MAIL_FROM], ptr); |
| + | return Curl_setstropt(&s->str[STRING_MAIL_FROM], ptr); |
| case CURLOPT_MAIL_AUTH: | |
| /* Set the SMTP auth originator */ | |
| - | return Curl_setstropt(&data->set.str[STRING_MAIL_AUTH], ptr); |
| + | return Curl_setstropt(&s->str[STRING_MAIL_AUTH], ptr); |
| #endif | |
| case CURLOPT_SASL_AUTHZID: | |
| /* Authorization identity (identity to act as) */ | |
| - | return Curl_setstropt(&data->set.str[STRING_SASL_AUTHZID], ptr); |
| + | return Curl_setstropt(&s->str[STRING_SASL_AUTHZID], ptr); |
| #ifndef CURL_DISABLE_RTSP | |
| case CURLOPT_RTSP_SESSION_ID: | |
| @@ -2510,48 +2536,48 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| * Set the RTSP Session ID manually. Useful if the application is | |
| * resuming a previously established RTSP session | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_RTSP_SESSION_ID], ptr); |
| + | return Curl_setstropt(&s->str[STRING_RTSP_SESSION_ID], ptr); |
| case CURLOPT_RTSP_STREAM_URI: | |
| /* | |
| * Set the Stream URI for the RTSP request. Unless the request is | |
| * for generic server options, the application will need to set this. | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_RTSP_STREAM_URI], ptr); |
| + | return Curl_setstropt(&s->str[STRING_RTSP_STREAM_URI], ptr); |
| case CURLOPT_RTSP_TRANSPORT: | |
| /* | |
| * The content of the Transport: header for the RTSP request | |
| */ | |
| - | return Curl_setstropt(&data->set.str[STRING_RTSP_TRANSPORT], ptr); |
| + | return Curl_setstropt(&s->str[STRING_RTSP_TRANSPORT], ptr); |
| case CURLOPT_INTERLEAVEDATA: | |
| - | data->set.rtp_out = ptr; |
| + | s->rtp_out = ptr; |
| break; | |
| #endif /* ! CURL_DISABLE_RTSP */ | |
| #ifndef CURL_DISABLE_FTP | |
| case CURLOPT_CHUNK_DATA: | |
| - | data->set.wildcardptr = ptr; |
| + | s->wildcardptr = ptr; |
| break; | |
| case CURLOPT_FNMATCH_DATA: | |
| - | data->set.fnmatch_data = ptr; |
| + | s->fnmatch_data = ptr; |
| break; | |
| #endif | |
| #ifdef USE_TLS_SRP | |
| case CURLOPT_TLSAUTH_USERNAME: | |
| - | return Curl_setstropt(&data->set.str[STRING_TLSAUTH_USERNAME], ptr); |
| + | return Curl_setstropt(&s->str[STRING_TLSAUTH_USERNAME], ptr); |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_TLSAUTH_USERNAME: | |
| - | return Curl_setstropt(&data->set.str[STRING_TLSAUTH_USERNAME_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_TLSAUTH_USERNAME_PROXY], ptr); |
| #endif | |
| case CURLOPT_TLSAUTH_PASSWORD: | |
| - | return Curl_setstropt(&data->set.str[STRING_TLSAUTH_PASSWORD], ptr); |
| + | return Curl_setstropt(&s->str[STRING_TLSAUTH_PASSWORD], ptr); |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_TLSAUTH_PASSWORD: | |
| - | return Curl_setstropt(&data->set.str[STRING_TLSAUTH_PASSWORD_PROXY], ptr); |
| + | return Curl_setstropt(&s->str[STRING_TLSAUTH_PASSWORD_PROXY], ptr); |
| #endif | |
| case CURLOPT_TLSAUTH_TYPE: | |
| if(ptr && !curl_strequal(ptr, "SRP")) | |
| @@ -2566,25 +2592,25 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| #endif | |
| #ifdef CURLRES_ARES | |
| case CURLOPT_DNS_SERVERS: | |
| - | result = Curl_setstropt(&data->set.str[STRING_DNS_SERVERS], ptr); |
| + | result = Curl_setstropt(&s->str[STRING_DNS_SERVERS], ptr); |
| if(result) | |
| return result; | |
| return Curl_async_ares_set_dns_servers(data); | |
| case CURLOPT_DNS_INTERFACE: | |
| - | result = Curl_setstropt(&data->set.str[STRING_DNS_INTERFACE], ptr); |
| + | result = Curl_setstropt(&s->str[STRING_DNS_INTERFACE], ptr); |
| if(result) | |
| return result; | |
| return Curl_async_ares_set_dns_interface(data); | |
| case CURLOPT_DNS_LOCAL_IP4: | |
| - | result = Curl_setstropt(&data->set.str[STRING_DNS_LOCAL_IP4], ptr); |
| + | result = Curl_setstropt(&s->str[STRING_DNS_LOCAL_IP4], ptr); |
| if(result) | |
| return result; | |
| return Curl_async_ares_set_dns_local_ip4(data); | |
| case CURLOPT_DNS_LOCAL_IP6: | |
| - | result = Curl_setstropt(&data->set.str[STRING_DNS_LOCAL_IP6], ptr); |
| + | result = Curl_setstropt(&s->str[STRING_DNS_LOCAL_IP6], ptr); |
| if(result) | |
| return result; | |
| return Curl_async_ares_set_dns_local_ip6(data); | |
| @@ -2592,27 +2618,27 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| #endif | |
| #ifdef USE_UNIX_SOCKETS | |
| case CURLOPT_UNIX_SOCKET_PATH: | |
| - | data->set.abstract_unix_socket = FALSE; |
| - | return Curl_setstropt(&data->set.str[STRING_UNIX_SOCKET_PATH], ptr); |
| + | s->abstract_unix_socket = FALSE; |
| + | return Curl_setstropt(&s->str[STRING_UNIX_SOCKET_PATH], ptr); |
| case CURLOPT_ABSTRACT_UNIX_SOCKET: | |
| - | data->set.abstract_unix_socket = TRUE; |
| - | return Curl_setstropt(&data->set.str[STRING_UNIX_SOCKET_PATH], ptr); |
| + | s->abstract_unix_socket = TRUE; |
| + | return Curl_setstropt(&s->str[STRING_UNIX_SOCKET_PATH], ptr); |
| #endif | |
| #ifndef CURL_DISABLE_DOH | |
| case CURLOPT_DOH_URL: | |
| - | result = Curl_setstropt(&data->set.str[STRING_DOH], ptr); |
| - | data->set.doh = !!(data->set.str[STRING_DOH]); |
| + | result = Curl_setstropt(&s->str[STRING_DOH], ptr); |
| + | s->doh = !!(s->str[STRING_DOH]); |
| break; | |
| #endif | |
| #ifndef CURL_DISABLE_HSTS | |
| case CURLOPT_HSTSREADDATA: | |
| - | data->set.hsts_read_userp = ptr; |
| + | s->hsts_read_userp = ptr; |
| break; | |
| case CURLOPT_HSTSWRITEDATA: | |
| - | data->set.hsts_write_userp = ptr; |
| + | s->hsts_write_userp = ptr; |
| break; | |
| case CURLOPT_HSTS: { | |
| struct curl_slist *h; | |
| @@ -2622,7 +2648,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| return CURLE_OUT_OF_MEMORY; | |
| } | |
| if(ptr) { | |
| - | result = Curl_setstropt(&data->set.str[STRING_HSTS], ptr); |
| + | result = Curl_setstropt(&s->str[STRING_HSTS], ptr); |
| if(result) | |
| return result; | |
| /* this needs to build a list of filenames to read from, so that it can | |
| @@ -2654,7 +2680,7 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| if(!data->asi) | |
| return CURLE_OUT_OF_MEMORY; | |
| } | |
| - | result = Curl_setstropt(&data->set.str[STRING_ALTSVC], ptr); |
| + | result = Curl_setstropt(&s->str[STRING_ALTSVC], ptr); |
| if(result) | |
| return result; | |
| if(ptr) | |
| @@ -2666,35 +2692,35 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| size_t plen = 0; | |
| if(!ptr) { | |
| - | data->set.tls_ech = CURLECH_DISABLE; |
| + | s->tls_ech = CURLECH_DISABLE; |
| return CURLE_OK; | |
| } | |
| plen = strlen(ptr); | |
| if(plen > CURL_MAX_INPUT_LENGTH) { | |
| - | data->set.tls_ech = CURLECH_DISABLE; |
| + | s->tls_ech = CURLECH_DISABLE; |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| } | |
| /* set tls_ech flag value, preserving CLA_CFG bit */ | |
| if(!strcmp(ptr, "false")) | |
| - | data->set.tls_ech = CURLECH_DISABLE | |
| - | (data->set.tls_ech & CURLECH_CLA_CFG); |
| + | s->tls_ech = CURLECH_DISABLE | |
| + | (s->tls_ech & CURLECH_CLA_CFG); |
| else if(!strcmp(ptr, "grease")) | |
| - | data->set.tls_ech = CURLECH_GREASE | |
| - | (data->set.tls_ech & CURLECH_CLA_CFG); |
| + | s->tls_ech = CURLECH_GREASE | |
| + | (s->tls_ech & CURLECH_CLA_CFG); |
| else if(!strcmp(ptr, "true")) | |
| - | data->set.tls_ech = CURLECH_ENABLE | |
| - | (data->set.tls_ech & CURLECH_CLA_CFG); |
| + | s->tls_ech = CURLECH_ENABLE | |
| + | (s->tls_ech & CURLECH_CLA_CFG); |
| else if(!strcmp(ptr, "hard")) | |
| - | data->set.tls_ech = CURLECH_HARD | |
| - | (data->set.tls_ech & CURLECH_CLA_CFG); |
| + | s->tls_ech = CURLECH_HARD | |
| + | (s->tls_ech & CURLECH_CLA_CFG); |
| else if(plen > 5 && !strncmp(ptr, "ecl:", 4)) { | |
| - | result = Curl_setstropt(&data->set.str[STRING_ECH_CONFIG], ptr + 4); |
| + | result = Curl_setstropt(&s->str[STRING_ECH_CONFIG], ptr + 4); |
| if(result) | |
| return result; | |
| - | data->set.tls_ech |= CURLECH_CLA_CFG; |
| + | s->tls_ech |= CURLECH_CLA_CFG; |
| } | |
| else if(plen > 4 && !strncmp(ptr, "pn:", 3)) { | |
| - | result = Curl_setstropt(&data->set.str[STRING_ECH_PUBLIC], ptr + 3); |
| + | result = Curl_setstropt(&s->str[STRING_ECH_PUBLIC], ptr + 3); |
| if(result) | |
| return result; | |
| } | |
| @@ -2710,13 +2736,14 @@ static CURLcode setopt_cptr(struct Curl_easy *data, CURLoption option, | |
| static CURLcode setopt_func(struct Curl_easy *data, CURLoption option, | |
| va_list param) | |
| { | |
| + | struct UserDefined *s = &data->set; |
| switch(option) { | |
| case CURLOPT_PROGRESSFUNCTION: | |
| /* | |
| * Progress callback function | |
| */ | |
| - | data->set.fprogress = va_arg(param, curl_progress_callback); |
| - | if(data->set.fprogress) |
| + | s->fprogress = va_arg(param, curl_progress_callback); |
| + | if(s->fprogress) |
| data->progress.callback = TRUE; /* no longer internal */ | |
| else | |
| data->progress.callback = FALSE; /* NULL enforces internal */ | |
| @@ -2726,8 +2753,8 @@ static CURLcode setopt_func(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Transfer info callback function | |
| */ | |
| - | data->set.fxferinfo = va_arg(param, curl_xferinfo_callback); |
| - | if(data->set.fxferinfo) |
| + | s->fxferinfo = va_arg(param, curl_xferinfo_callback); |
| + | if(s->fxferinfo) |
| data->progress.callback = TRUE; /* no longer internal */ | |
| else | |
| data->progress.callback = FALSE; /* NULL enforces internal */ | |
| @@ -2737,7 +2764,7 @@ static CURLcode setopt_func(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * stderr write callback. | |
| */ | |
| - | data->set.fdebug = va_arg(param, curl_debug_callback); |
| + | s->fdebug = va_arg(param, curl_debug_callback); |
| /* | |
| * if the callback provided is NULL, it will use the default callback | |
| */ | |
| @@ -2746,41 +2773,41 @@ static CURLcode setopt_func(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * Set header write callback | |
| */ | |
| - | data->set.fwrite_header = va_arg(param, curl_write_callback); |
| + | s->fwrite_header = va_arg(param, curl_write_callback); |
| break; | |
| case CURLOPT_WRITEFUNCTION: | |
| /* | |
| * Set data write callback | |
| */ | |
| - | data->set.fwrite_func = va_arg(param, curl_write_callback); |
| - | if(!data->set.fwrite_func) |
| + | s->fwrite_func = va_arg(param, curl_write_callback); |
| + | if(!s->fwrite_func) |
| /* When set to NULL, reset to our internal default function */ | |
| - | data->set.fwrite_func = (curl_write_callback)fwrite; |
| + | s->fwrite_func = (curl_write_callback)fwrite; |
| break; | |
| case CURLOPT_READFUNCTION: | |
| /* | |
| * Read data callback | |
| */ | |
| - | data->set.fread_func_set = va_arg(param, curl_read_callback); |
| - | if(!data->set.fread_func_set) { |
| - | data->set.is_fread_set = 0; |
| + | s->fread_func_set = va_arg(param, curl_read_callback); |
| + | if(!s->fread_func_set) { |
| + | s->is_fread_set = 0; |
| /* When set to NULL, reset to our internal default function */ | |
| - | data->set.fread_func_set = (curl_read_callback)fread; |
| + | s->fread_func_set = (curl_read_callback)fread; |
| } | |
| else | |
| - | data->set.is_fread_set = 1; |
| + | s->is_fread_set = 1; |
| break; | |
| case CURLOPT_SEEKFUNCTION: | |
| /* | |
| * Seek callback. Might be NULL. | |
| */ | |
| - | data->set.seek_func = va_arg(param, curl_seek_callback); |
| + | s->seek_func = va_arg(param, curl_seek_callback); |
| break; | |
| case CURLOPT_IOCTLFUNCTION: | |
| /* | |
| * I/O control callback. Might be NULL. | |
| */ | |
| - | data->set.ioctl_func = va_arg(param, curl_ioctl_callback); |
| + | s->ioctl_func = va_arg(param, curl_ioctl_callback); |
| break; | |
| case CURLOPT_SSL_CTX_FUNCTION: | |
| /* | |
| @@ -2788,7 +2815,7 @@ static CURLcode setopt_func(struct Curl_easy *data, CURLoption option, | |
| */ | |
| #ifdef USE_SSL | |
| if(Curl_ssl_supports(data, SSLSUPP_SSL_CTX)) { | |
| - | data->set.ssl.fsslctx = va_arg(param, curl_ssl_ctx_callback); |
| + | s->ssl.fsslctx = va_arg(param, curl_ssl_ctx_callback); |
| break; | |
| } | |
| else | |
| @@ -2799,7 +2826,7 @@ static CURLcode setopt_func(struct Curl_easy *data, CURLoption option, | |
| /* | |
| * socket callback function: called after socket() but before connect() | |
| */ | |
| - | data->set.fsockopt = va_arg(param, curl_sockopt_callback); |
| + | s->fsockopt = va_arg(param, curl_sockopt_callback); |
| break; | |
| case CURLOPT_OPENSOCKETFUNCTION: | |
| @@ -2807,7 +2834,7 @@ static CURLcode setopt_func(struct Curl_easy *data, CURLoption option, | |
| * open/create socket callback function: called instead of socket(), | |
| * before connect() | |
| */ | |
| - | data->set.fopensocket = va_arg(param, curl_opensocket_callback); |
| + | s->fopensocket = va_arg(param, curl_opensocket_callback); |
| break; | |
| case CURLOPT_CLOSESOCKETFUNCTION: | |
| @@ -2815,7 +2842,7 @@ static CURLcode setopt_func(struct Curl_easy *data, CURLoption option, | |
| * close socket callback function: called instead of close() | |
| * when shutting down a connection | |
| */ | |
| - | data->set.fclosesocket = va_arg(param, curl_closesocket_callback); |
| + | s->fclosesocket = va_arg(param, curl_closesocket_callback); |
| break; | |
| case CURLOPT_RESOLVER_START_FUNCTION: | |
| @@ -2823,21 +2850,21 @@ static CURLcode setopt_func(struct Curl_easy *data, CURLoption option, | |
| * resolver start callback function: called before a new resolver request | |
| * is started | |
| */ | |
| - | data->set.resolver_start = va_arg(param, curl_resolver_start_callback); |
| + | s->resolver_start = va_arg(param, curl_resolver_start_callback); |
| break; | |
| #ifdef USE_SSH | |
| #ifdef USE_LIBSSH2 | |
| case CURLOPT_SSH_HOSTKEYFUNCTION: | |
| /* the callback to check the hostkey without the knownhost file */ | |
| - | data->set.ssh_hostkeyfunc = va_arg(param, curl_sshhostkeycallback); |
| + | s->ssh_hostkeyfunc = va_arg(param, curl_sshhostkeycallback); |
| break; | |
| #endif | |
| case CURLOPT_SSH_KEYFUNCTION: | |
| /* setting to NULL is fine since the ssh.c functions themselves will | |
| then revert to use the internal default */ | |
| - | data->set.ssh_keyfunc = va_arg(param, curl_sshkeycallback); |
| + | s->ssh_keyfunc = va_arg(param, curl_sshkeycallback); |
| break; | |
| #endif /* USE_SSH */ | |
| @@ -2845,35 +2872,35 @@ static CURLcode setopt_func(struct Curl_easy *data, CURLoption option, | |
| #ifndef CURL_DISABLE_RTSP | |
| case CURLOPT_INTERLEAVEFUNCTION: | |
| /* Set the user defined RTP write function */ | |
| - | data->set.fwrite_rtp = va_arg(param, curl_write_callback); |
| + | s->fwrite_rtp = va_arg(param, curl_write_callback); |
| break; | |
| #endif | |
| #ifndef CURL_DISABLE_FTP | |
| case CURLOPT_CHUNK_BGN_FUNCTION: | |
| - | data->set.chunk_bgn = va_arg(param, curl_chunk_bgn_callback); |
| + | s->chunk_bgn = va_arg(param, curl_chunk_bgn_callback); |
| break; | |
| case CURLOPT_CHUNK_END_FUNCTION: | |
| - | data->set.chunk_end = va_arg(param, curl_chunk_end_callback); |
| + | s->chunk_end = va_arg(param, curl_chunk_end_callback); |
| break; | |
| case CURLOPT_FNMATCH_FUNCTION: | |
| - | data->set.fnmatch = va_arg(param, curl_fnmatch_callback); |
| + | s->fnmatch = va_arg(param, curl_fnmatch_callback); |
| break; | |
| #endif | |
| #ifndef CURL_DISABLE_HTTP | |
| case CURLOPT_TRAILERFUNCTION: | |
| - | data->set.trailer_callback = va_arg(param, curl_trailer_callback); |
| + | s->trailer_callback = va_arg(param, curl_trailer_callback); |
| break; | |
| #endif | |
| #ifndef CURL_DISABLE_HSTS | |
| case CURLOPT_HSTSREADFUNCTION: | |
| - | data->set.hsts_read = va_arg(param, curl_hstsread_callback); |
| + | s->hsts_read = va_arg(param, curl_hstsread_callback); |
| break; | |
| case CURLOPT_HSTSWRITEFUNCTION: | |
| - | data->set.hsts_write = va_arg(param, curl_hstswrite_callback); |
| + | s->hsts_write = va_arg(param, curl_hstswrite_callback); |
| break; | |
| #endif | |
| case CURLOPT_PREREQFUNCTION: | |
| - | data->set.fprereq = va_arg(param, curl_prereq_callback); |
| + | s->fprereq = va_arg(param, curl_prereq_callback); |
| break; | |
| default: | |
| return CURLE_UNKNOWN_OPTION; | |
| @@ -2884,13 +2911,14 @@ static CURLcode setopt_func(struct Curl_easy *data, CURLoption option, | |
| static CURLcode setopt_offt(struct Curl_easy *data, CURLoption option, | |
| curl_off_t offt) | |
| { | |
| + | struct UserDefined *s = &data->set; |
| switch(option) { | |
| case CURLOPT_TIMEVALUE_LARGE: | |
| /* | |
| * This is the value to compare with the remote document with the | |
| * method set with CURLOPT_TIMECONDITION | |
| */ | |
| - | data->set.timevalue = (time_t)offt; |
| + | s->timevalue = (time_t)offt; |
| break; | |
| /* MQTT "borrows" some of the HTTP options */ | |
| @@ -2902,13 +2930,13 @@ static CURLcode setopt_offt(struct Curl_easy *data, CURLoption option, | |
| if(offt < -1) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | if(data->set.postfieldsize < offt && |
| - | data->set.postfields == data->set.str[STRING_COPYPOSTFIELDS]) { |
| + | if(s->postfieldsize < offt && |
| + | s->postfields == s->str[STRING_COPYPOSTFIELDS]) { |
| /* Previous CURLOPT_COPYPOSTFIELDS is no longer valid. */ | |
| - | Curl_safefree(data->set.str[STRING_COPYPOSTFIELDS]); |
| - | data->set.postfields = NULL; |
| + | Curl_safefree(s->str[STRING_COPYPOSTFIELDS]); |
| + | s->postfields = NULL; |
| } | |
| - | data->set.postfieldsize = offt; |
| + | s->postfieldsize = offt; |
| break; | |
| case CURLOPT_INFILESIZE_LARGE: | |
| /* | |
| @@ -2917,7 +2945,7 @@ static CURLcode setopt_offt(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if(offt < -1) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.filesize = offt; |
| + | s->filesize = offt; |
| break; | |
| case CURLOPT_MAX_SEND_SPEED_LARGE: | |
| /* | |
| @@ -2926,7 +2954,7 @@ static CURLcode setopt_offt(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if(offt < 0) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.max_send_speed = offt; |
| + | s->max_send_speed = offt; |
| break; | |
| case CURLOPT_MAX_RECV_SPEED_LARGE: | |
| /* | |
| @@ -2935,7 +2963,7 @@ static CURLcode setopt_offt(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if(offt < 0) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.max_recv_speed = offt; |
| + | s->max_recv_speed = offt; |
| break; | |
| case CURLOPT_RESUME_FROM_LARGE: | |
| /* | |
| @@ -2943,7 +2971,7 @@ static CURLcode setopt_offt(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if(offt < -1) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.set_resume_from = offt; |
| + | s->set_resume_from = offt; |
| break; | |
| case CURLOPT_MAXFILESIZE_LARGE: | |
| /* | |
| @@ -2951,7 +2979,7 @@ static CURLcode setopt_offt(struct Curl_easy *data, CURLoption option, | |
| */ | |
| if(offt < 0) | |
| return CURLE_BAD_FUNCTION_ARGUMENT; | |
| - | data->set.max_filesize = offt; |
| + | s->max_filesize = offt; |
| break; | |
| default: | |
| @@ -2963,23 +2991,24 @@ static CURLcode setopt_offt(struct Curl_easy *data, CURLoption option, | |
| static CURLcode setopt_blob(struct Curl_easy *data, CURLoption option, | |
| struct curl_blob *blob) | |
| { | |
| + | struct UserDefined *s = &data->set; |
| switch(option) { | |
| case CURLOPT_SSLCERT_BLOB: | |
| /* | |
| * Blob that holds file content of the SSL certificate to use | |
| */ | |
| - | return Curl_setblobopt(&data->set.blobs[BLOB_CERT], blob); |
| + | return Curl_setblobopt(&s->blobs[BLOB_CERT], blob); |
| #ifndef CURL_DISABLE_PROXY | |
| case CURLOPT_PROXY_SSLCERT_BLOB: | |
| /* | |
| * Blob that holds file content of the SSL certificate to use for proxy | |
| */ | |
| - | return Curl_setblobopt(&data->set.blobs[BLOB_CERT_PROXY], blob); |
| + | return Curl_setblobopt(&s->blobs[BLOB_CERT_PROXY], blob); |
| case CURLOPT_PROXY_SSLKEY_BLOB: | |
| /* | |
| * Blob that holds file content of the SSL key to use for proxy | |
| */ | |
| - | return Curl_setblobopt(&data->set.blobs[BLOB_KEY_PROXY], blob); |
| + | return Curl_setblobopt(&s->blobs[BLOB_KEY_PROXY], blob); |
| case CURLOPT_PROXY_CAINFO_BLOB: | |
| /* | |
| * Blob that holds CA info for SSL connection proxy. | |
| @@ -2987,21 +3016,21 @@ static CURLcode setopt_blob(struct Curl_easy *data, CURLoption option, | |
| */ | |
| #ifdef USE_SSL | |
| if(Curl_ssl_supports(data, SSLSUPP_CAINFO_BLOB)) | |
| - | return Curl_setblobopt(&data->set.blobs[BLOB_CAINFO_PROXY], blob); |
| + | return Curl_setblobopt(&s->blobs[BLOB_CAINFO_PROXY], blob); |
| #endif | |
| return CURLE_NOT_BUILT_IN; | |
| case CURLOPT_PROXY_ISSUERCERT_BLOB: | |
| /* | |
| * Blob that holds Issuer certificate to check certificates issuer | |
| */ | |
| - | return Curl_setblobopt(&data->set.blobs[BLOB_SSL_ISSUERCERT_PROXY], |
| + | return Curl_setblobopt(&s->blobs[BLOB_SSL_ISSUERCERT_PROXY], |
| blob); | |
| #endif | |
| case CURLOPT_SSLKEY_BLOB: | |
| /* | |
| * Blob that holds file content of the SSL key to use | |
| */ | |
| - | return Curl_setblobopt(&data->set.blobs[BLOB_KEY], blob); |
| + | return Curl_setblobopt(&s->blobs[BLOB_KEY], blob); |
| case CURLOPT_CAINFO_BLOB: | |
| /* | |
| * Blob that holds CA info for SSL connection. | |
| @@ -3009,14 +3038,14 @@ static CURLcode setopt_blob(struct Curl_easy *data, CURLoption option, | |
| */ | |
| #ifdef USE_SSL | |
| if(Curl_ssl_supports(data, SSLSUPP_CAINFO_BLOB)) | |
| - | return Curl_setblobopt(&data->set.blobs[BLOB_CAINFO], blob); |
| + | return Curl_setblobopt(&s->blobs[BLOB_CAINFO], blob); |
| #endif | |
| return CURLE_NOT_BUILT_IN; | |
| case CURLOPT_ISSUERCERT_BLOB: | |
| /* | |
| * Blob that holds Issuer certificate to check certificates issuer | |
| */ | |
| - | return Curl_setblobopt(&data->set.blobs[BLOB_SSL_ISSUERCERT], blob); |
| + | return Curl_setblobopt(&s->blobs[BLOB_SSL_ISSUERCERT], blob); |
| default: | |
| return CURLE_UNKNOWN_OPTION; | |