#
962097b8 |
| 09-Oct-2024 |
Stefan Eissing |
TLS: TLSv1.3 earlydata support for curl Based on #14135, implement TLSv1.3 earlydata support for the curl command line, libcurl and its implementation in GnuTLS. If a known TLS
TLS: TLSv1.3 earlydata support for curl Based on #14135, implement TLSv1.3 earlydata support for the curl command line, libcurl and its implementation in GnuTLS. If a known TLS session announces early data support, and the feature is enabled *and* it is not a "connect-only" transfer, delay the TLS handshake until the first request is being sent. - Add --tls-earldata as new boolean command line option for curl. - Add CURLSSLOPT_EARLYDATA to libcurl to enable use of the feature. - Add CURLINFO_EARLYDATA_SENT_T to libcurl, reporting the amount of bytes sent and accepted/rejected by the server. Implementation details: - store the ALPN protocol selected at the SSL session. - When reusing the session and enabling earlydata, use exactly that ALPN protocol for negoptiation with the server. When the sessions ALPN does not match the connections ALPN, earlydata will not be enabled. - Check that the server selected the correct ALPN protocol for an earlydata connect. If the server does not confirm or reports something different, the connect fails. - HTTP/2: delay sending the initial SETTINGS frames during connect, if not connect-only. Verification: - add test_02_32 to verify earlydata GET with nghttpx. - add test_07_70 to verify earlydata PUT with nghttpx. - add support in 'hx-download', 'hx-upload' clients for the feature Assisted-by: ad-chaos on github Closes #15211
show more ...
|
#
5a488251 |
| 18-Jul-2024 |
Daniel Stenberg |
curldown: fixups - make DEFAULT sections less repetitive - make historic mentions use HISTORY - generate the protocols section on `# %PROTOCOLS%` instead of guessing
curldown: fixups - make DEFAULT sections less repetitive - make historic mentions use HISTORY - generate the protocols section on `# %PROTOCOLS%` instead of guessing where to put it - generate the availability section on `# %AVAILABILITY%` instead of guessing where to put it - make the protocols section more verbose Closes #14227
show more ...
|
#
8c1d9378 |
| 17-Jul-2024 |
Daniel Stenberg |
curldown: make 'added-in:' a mandatory header field - generate AVAILABILITY manpage sections automatically - for consistent wording - allows us to double-check against other d
curldown: make 'added-in:' a mandatory header field - generate AVAILABILITY manpage sections automatically - for consistent wording - allows us to double-check against other documumentation (symbols-in-versions etc) - enables proper automation/scripting based on this data - lots of them were wrong or missing in the manpages - several of them repeated (sometimes mismatching) backend support info Add test 1488 to verify "added-in" version numbers against symbols-in-versions. Closes #14217
show more ...
|
#
e3fe0200 |
| 22-Mar-2024 |
Daniel Stenberg |
docs/libcurl: generate PROTOCOLS from meta-data Remove the PROTOCOLS section from the source files completely and instead generate them based on the header data in the curldown files.
docs/libcurl: generate PROTOCOLS from meta-data Remove the PROTOCOLS section from the source files completely and instead generate them based on the header data in the curldown files. It also generates TLS backend information for options marked for TLS as protocol. Closes #13175
show more ...
|
#
c5775007 |
| 21-Mar-2024 |
Daniel Stenberg |
docs/libcurl: add TLS backend info for all TLS options All man pages that are listed to be for TLS now must also specify exactly what TLS backends the option works for, or use All if the
docs/libcurl: add TLS backend info for all TLS options All man pages that are listed to be for TLS now must also specify exactly what TLS backends the option works for, or use All if they all work. cd2nroff makes sure this is done and that the listed backends exist. Closes #13168
show more ...
|
#
b935fd4a |
| 21-Mar-2024 |
Daniel Stenberg |
docs: make each libcurl man specify protocol(s) The mandatory header now has a mandatory list of protocols for which the manpage is relevant. Most man pages already has a "PROTO
docs: make each libcurl man specify protocol(s) The mandatory header now has a mandatory list of protocols for which the manpage is relevant. Most man pages already has a "PROTOCOLS" section, but this introduces a stricter way to specify the relevant protocols. cd2nroff verifies that at least one protocol is mentioned (which can be `*`). This information is not used just yet, but A) the PROTOCOLS section can now instead get generated and get a unified wording across all manpages and B) this allows us to more reliably filter/search for protocol specific manpages/options. Closes #13166
show more ...
|
#
8d67c61c |
| 28-Feb-2024 |
Daniel Gustafsson |
curldown: Fix email address in Copyright The curldown conversion accidentally replaced daniel@haxx.se with just daniel.se. This reverts back to the proper email address in the curld
curldown: Fix email address in Copyright The curldown conversion accidentally replaced daniel@haxx.se with just daniel.se. This reverts back to the proper email address in the curldown docs as well as in a few other stray places where it was incorrect (while unrelated to curldown). Reviewed-by: Daniel Stenberg <daniel@haxx.se> Closes: #12997
show more ...
|
#
eefcc1bd |
| 17-Jan-2024 |
Daniel Stenberg |
docs: introduce "curldown" for libcurl man page format curldown is this new file format for libcurl man pages. It is markdown inspired with differences: - Each file has a set of
docs: introduce "curldown" for libcurl man page format curldown is this new file format for libcurl man pages. It is markdown inspired with differences: - Each file has a set of leading headers with meta-data - Supports a small subset of markdown - Uses .md file extensions for editors/IDE/GitHub to treat them nicely - Generates man pages very similar to the previous ones - Generates man pages that still convert nicely to HTML on the website - Detects and highlights mentions of curl symbols automatically (when their man page section is specified) tools: - cd2nroff: converts from curldown to nroff man page - nroff2cd: convert an (old) nroff man page to curldown - cdall: convert many nroff pages to curldown versions - cd2cd: verifies and updates a curldown to latest curldown This setup generates .3 versions of all the curldown versions at build time. CI: Since the documentation is now technically markdown in the eyes of many things, the CI runs many more tests and checks on this documentation, including proselint, link checkers and tests that make sure we capitalize the first letter after a period... Closes #12730
show more ...
|