Commit graph

6819 commits

Author SHA1 Message Date
Daniel Stenberg
83c90e5047
VULN-DISCLOSURE-POLICY.md: the distros list wants <= 7 days embargo
Closes #17497
2025-05-31 18:00:58 +02:00
Daniel Stenberg
fe81a80ae7
spelling: call it null-terminate consistently
With a dash, using two Ls. Also for different forms of the word.

Use NULL in all uppercase if it means a zero pointer.

Follow-up to 307b7543ea

Closes #17489
2025-05-30 17:29:45 +02:00
Daniel Stenberg
bdb7d8b004
spelling: 'a' vs 'an'
Closes #17487
2025-05-30 11:38:35 +02:00
Daniel Stenberg
b13a7a3ec4
misc: we write *an* IPv6 address
Add it as a "bad word"

Closes #17484
2025-05-30 07:53:31 +02:00
Samuel Henrique
620401f193
docs: fix typos
After Gmail called out the typo I fixed on
532d89a866, I've decided to paste the
whole man page into Google docs and check what other issues it would
spot.

I know, it sounds silly, but I've just spent the last hour and a half
going over each one of them and fixing everything which was a true
finding and non-controversial.

Closes #17480
2025-05-29 10:21:52 +02:00
Daniel Stenberg
fa3f889752
tests: move test docs into /docs
In an attempt to make them easier to find.

The man pages runtests.md and testcurl.md are in /docs

The rest of the test documentation is in /docs/tests

Closes #17463
2025-05-28 15:00:03 +02:00
Daniel Stenberg
6eea7219a5
BUG-BOUNTY.md. mention the medium bounty amount in 2025
Closes #17470
2025-05-28 08:47:26 +02:00
Daniel Stenberg
950ef272fa
docs/THANKS: updated from the 8.14.0 release 2025-05-28 07:40:54 +02:00
Daniel Stenberg
c0d777c319
curl_url_get.md: don't call it normalized
Because that's not what it does.

Reported-by: Alberto Leiva Popper
Fixes #16829
Closes #17464
2025-05-27 09:25:32 +02:00
Samuel Henrique
532d89a866
docs: fix typo in retry.md
Closes #17443
2025-05-26 13:03:02 +02:00
Daniel Stenberg
783586b8fd
CURLOPT_FOLLOWLOCATION.md: switch to GET => no body
Clarify

URL: https://curl.se/mail/lib-2025-05/0026.html
Closes #17454
2025-05-26 13:00:38 +02:00
Daniel Stenberg
217c22f315
CURLOPT_READFUNCTION.md: mention the seek callback
Brought-up-by: Jeroen Ooms
URL: https://curl.se/mail/lib-2025-05/0030.html
Closes #17455
2025-05-26 12:59:43 +02:00
Daniel Stenberg
2b18866cd9
DEPRECATE.md: add version numbers to old deprecated items
For better tracking

Closes #17424
2025-05-23 11:01:13 +02:00
Viktor Szakats
4331e7087b
windows: fix builds targeting WinXP, test it in CI
- appveyor: make a job target Windows XP.

- examples/block_ip: force this specific example to target Vista to make
  it compile when building curl for Windows XP. Fixing:
  ```
  docs\examples\block_ip.c(157): warning C4013: 'inet_pton' undefined; assuming extern returning int
  docs\examples\block_ip.c(272): warning C4013: 'inet_ntop' undefined; assuming extern returning int
  ```
  Ref: https://ci.appveyor.com/project/curlorg/curl/builds/52102142/job/2ajdluhc20r4gmmw#L530

Cherry-picked from #17413
Closes #17415
2025-05-22 13:04:28 +02:00
Nigel Brittain
c19465ca55
http_aws_sigv4: improve sigv4 url encoding and canonicalization
Closes #17129
2025-05-21 08:07:18 +02:00
Daniel Stenberg
6422005a3b
DEPRECATE: restore the Windows CE text
Accidentally wiped out with 63e513b106
2025-05-20 23:11:23 +02:00
Viktor Szakats
1e4a59f8fd
DEPRECATE.md: fix typo
Bug: https://github.com/curl/curl/actions/runs/15112183952/job/42473983311

Closes #17391
2025-05-20 00:40:31 +02:00
Viktor Szakats
e785e898a6
checksrc: avoid extra runs in CI, enable more check locally, fix fallouts
To avoid redundant work in CI and to avoid a single checksrc issue make
all autotools jobs fail. After this patch checksrc issues make fail
the checksrc job, the `dist / verify-out-of-tree-autotools-debug`,
`dist / maketgz-and-verify-in-tree`  jobs and the fuzzer job (if run).
Of these, the `dist` jobs replicate local builds, also testing the build
logic.

Also add a script to check the complete local repository, optionally
with the build tree to verify generated C files.

Also:
- automatically run checksrc in subdirectories having a `checksrc`
  target. (examples, OS400, tests http/client, unit and tunit)
- tests/libtest: make sure to run `checksrc` on generated `lib1521.c`.
  (requires in-tree autotools build.)
- tests: run `checksrc` on targets also for non-`DEBUGBUILD`
  builds. It ensures to check `lib1521.c` in CI via job
  `dist / maketgz-and-verify-in-tree`.
- src: drop redundant `$(builddir)` in autotools builds.
- scripts: add `checksrc-all.sh` script to check all C sources and
  the build directory as an option.
- use the above from CI, also make it verify all generated sources.
- silence `checksrc` issues in generated C sources.
- checksrc: add `-v` option to enable verbose mode.
- checksrc: make verbose mode show checked filename and fix to only
  return error on failure.
- make sure that generated C files pass `checksrc`.

Assisted-by: Daniel Stenberg

Closes #17376
2025-05-19 18:59:50 +02:00
Daniel Stenberg
63e513b106
DEPRECATE.md: drop support for VS2008
Closes #17380
2025-05-19 13:48:41 +02:00
Daniel Stenberg
8491e6574c
DEPRECATE.md: drop Windows CE support
Closes #17379
2025-05-19 13:32:26 +02:00
Daniel Stenberg
b4310c0fb9
docs/libcurl: mention sensitive data/headers
In the CURLOPT_DEBUGFUNCTION and CURLOPT_VERBOSE documentation.

Mentioned-by: Gordon Parke
Fixes #17353
Closes #17355
2025-05-15 19:42:32 +02:00
Daniel Stenberg
a9aafbea95
CONTRIBUTE: add project guidelines for AI use
Feedback-by: Daniel Fosco
Feedback-by: Jimmy Sjölund
Feedback-by: Christoph Jabs
Feedback-by: Manuel Strehl
Feedback-by: Dan Fandrich
Feedback-by: Sarah Gooding

Closes #17325
2025-05-15 14:07:39 +02:00
Daniel Stenberg
f0f6c610a9
_SEEALSO.md: remove spaces around command and man page section
Follows traditions better

Closes #17348
2025-05-14 23:34:28 +02:00
Viktor Szakats
828f998493
spacecheck.pl: drop more exceptions
- replace ß (scharfes S) with links.
- replace § (section sign) with links.
- replace 🙏 emoji with `🙏`.
 Supported by GitHub, Forgejo/Gitea and most likely GitLab.
- docs/libcurl/curl_mprintf.md: replace Unicode ± with `{+|-}`.
- docs/CIPHERS.md: URL encode Unicode in URLs.
- lib1560: use hex encoding in `räksmörgås.se`.
- unit1307: use hex encoding in `Lindmätarv`.
- drop LATIN SMALL LETTER A WITH ACUTE exception.
  No longer appears in tests.

This leaves the single character exception: `ö`
And file exceptions holding contributor names.

Follow-up to 9243ed59b3 #17329
Follow-up to 838dc53bb7 #17247

Closes #17335
2025-05-13 16:01:07 +02:00
Daniel Stenberg
65444f1dc3
curlx: move the docs to docs/internals/
Closes #17333
2025-05-13 10:30:02 +02:00
Dan Fandrich
fca1fdc988 docs: update distros links 2025-05-12 13:51:38 -07:00
Daniel Stenberg
cf511e7726
TODO: Retry SOCKS handshake
Closes #17222
Closes #17326
2025-05-12 16:34:28 +02:00
Jay Satiro
b794264408 curl_version_info.md: clarify ssl_version for MultiSSL
- Clarify that the ssl_version in MultiSSL builds contains all SSL
  backend names with the inactive backend names in parentheses.

Closes https://github.com/curl/curl/pull/17308
2025-05-11 12:23:36 -04:00
Daniel Stenberg
cd7904f5a9
CURLMOPT_TIMERFUNCTION.md: correct the example
Fixes #17301
Reported-by: Dirk Feytons
Closes #17303
2025-05-09 17:04:40 +02:00
Daniel Stenberg
bc46ff2d2b
RELEASE-PROCEDURE: update the coming release dates 2025-05-07 14:39:18 +02:00
Daniel Stenberg
255aac56f9
curlx: move into to curlx/
Move curlx_ functions into its own subdir.

The idea is to use the curlx_ prefix proper on these functions, and use
these same function names both in tool, lib and test suite source code.
Stop the previous special #define setup for curlx_ names.

The printf defines are now done for the library alone. Tests no longer
use the printf defines. The tool code sets its own defines. The printf
functions are not curlx, they are publicly available.

The strcase defines are not curlx_ functions and should not be used by
tool or server code.

dynbuf, warnless, base64, strparse, timeval, timediff are now proper
curlx functions.

When libcurl is built statically, the functions from the library can be
used as-is. The key is then that the functions must work as-is, without
having to be recompiled for use in tool/tests. This avoids symbol
collisions - when libcurl is built statically, we use those functions
directly when building the tool/tests. When libcurl is shared, we
build/link them separately for the tool/tests.

Assisted-by: Jay Satiro

Closes #17253
2025-05-07 11:01:15 +02:00
sftcd
de881a92eb
ECH: reference the OpenSSL ECH feature branch
rather than the defo-project fork.

Closes #17251
2025-05-06 09:02:24 +02:00
Andrei Florea
a638828c88
TLS: add CURLOPT_SSL_SIGNATURE_ALGORITHMS and --sigalgs
Fixes #12982
Closes #16964
2025-04-30 17:47:22 +02:00
NeimadTL
f9daa75a3b
TODO: remove "nicer lacking perl message"
The document has been updated by removing point 20.2 as it was done
some time ago.

Closes #17233
2025-04-30 08:25:14 +02:00
Daniel Stenberg
b1eebdf46a
docs/libcurl: fix type and prototype problems in examples
Found by enabling the typechecks when compiling them with
verify-examples.pl

Closes #17231
2025-04-29 22:44:05 +02:00
Daniel Stenberg
d33b449271
CURLOPT_XFERINFOFUNCTION.md: fix the callback return type in example
Fixes #17228
Reported-by: gkarracer on github
Closes #17229
2025-04-29 22:16:40 +02:00
Daniel Stenberg
9f57c2ea95
VULN-DISCLOSURE-POLICY: use of weak algos
Not necessarily security problems.

Closes #17220
2025-04-29 13:11:07 +02:00
Daniel Stenberg
cf1b709dff
etag-save.md: mention how using both options is a good idea
Ref: https://curl.se/mail/archive-2025-04/0011.html

Closes #17217
2025-04-29 10:58:19 +02:00
Daniel Stenberg
f2ce6c46b9
openssl: enable builds for *both* engines and providers
OpenSSL3 can in fact have both enabled at once. Load the provider and
key/cert appropriately. When loading a provider, the user can now also
set an associated "property string".

Work on this was sponsored by Valantic.

Closes #17165
2025-04-29 10:44:21 +02:00
Daniel Stenberg
7b52906dd0
HTTPSRR.md: clarify somewhat
Closes #17204
2025-04-28 09:11:48 +02:00
sftcd
460ead61b6
tests: add basic ECH tests
Test 4000 and 4001

Closes #17192
2025-04-27 17:38:27 +02:00
Daniel Stenberg
de8622b858
RELEASE-PROCEDURE.md: release candidate git tagging explained
To help anyone wanting to build/reproduce release candidates, this is
the set git tag naming scheme to use. Similar to, but different, than
the "normal" release tags to not be possible to mixup.

Closes #17177
2025-04-26 23:38:49 +02:00
Daniel Stenberg
15839450be
urlapi: redirecting to "" is considered fine
If the CURLU handle already holds a proper URL, otherwise it is an
error.

Verified by test 1560

Fixes #17188
Reported-by: zopsicle on github
Closes #17189
2025-04-25 22:38:04 +02:00
Viktor Szakats
ae0ff69f7a
build: tidy up internal feature detection variables for wolfSSL
Sync them with the function name they detect, and sync them between
cmake and autotools.

- rename `HAVE_WOLFSSL_BIO` to `HAVE_WOLFSSL_BIO_NEW`.
- rename `HAVE_WOLFSSL_FULL_BIO` to `HAVE_WOLFSSL_BIO_SET_SHUTDOWN`.
- autotools: rename `WOLFSSL_NTLM` to `HAVE_WOLFSSL_DES_ECB_ENCRYPT`
  (to sync with cmake).
- autotools: rename `WOLFSSL_BIO` to `HAVE_WOLFSSL_BIO_NEW`
  (to sync with cmake).
- autotools: simplify `HAVE_WOLFSSL_DES_ECB_ENCRYPT` detection.

Cherry-picked from #17082

Closes #17175
2025-04-24 23:44:33 +02:00
Viktor Szakats
4bfc379b90
cmake: tidy up and document feature detections in dependencies
- update text on dependency feature detection variables, and move it
  to its own section in `docs/INSTALL-CMAKE.md`.
  Ref: #17032 (Discussion)

- tidy up descriptions/comments, alpha-sort.

- move comment to its own section in `docs/INSTALL-CMAKE.md`.

- split `HAVE_SSL_SET_QUIC_USE_LEGACY_CODEPOINT` to distinct names for
  each TLS backend API. To make the names more stable and to sync them
  with autotools.
  Follow-up to 07cc50f8eb #17018
  Follow-up to 342a654ef3 #15873

- drop redundant condition while detecting QUICTLS API.
  Follow-up to 07cc50f8eb #17018

- add config-comparison exception for `HAVE_SSL_SET_QUIC_TLS_CBS`.
  Follow-up to 5eefdd71a3 #17027

- detect `wolfSSL_get_peer_certificate` like autotools does.

- detect `wolfSSL_UseALPN` like autotools does.

Closes #17082
2025-04-24 19:46:27 +02:00
Daniel Stenberg
f9f1a15699
lib/src/docs/test: improve curl_easy_setopt() calls
Fix invokes where the argument was not the correct type.

Closes #17160
2025-04-23 23:44:55 +02:00
Daniel Stenberg
9c59a6ac55
libcurl-tutorial.md: fix read callback explanation
Fixes #17138
Reported-by: Thomas Klausner
Closes #17154
2025-04-23 23:23:59 +02:00
Stefan Eissing
657aae79c0
lib: add meta_hash to connection, eliminate hash_offt
With a meta_hash at each connection (similar to easy handle, let
multi_ev.c store its pollsets as meta data, no longer needing its own
hashes.

This eliminates the last use of Curl_hash_offt. Remove it.

Closes #17095
2025-04-22 15:57:18 +02:00
Max Eliaser
7b375b8b91
CURLOPT_ERRORBUFFER.md: the buffer is read only after curl takes ownership
Clarifies #17100
Closes #17105
2025-04-22 08:40:42 +02:00
Daniel Stenberg
23bed347b3
wcurl: import v2025.04.20 script + docs
Build/install the man page. Install the script.

This an "import" rather than just adding the script into the release tarball
with maketgz to make sure the tarball build is completely reproducible.

wcurl development, issues etc is still to be done at
https://github.com/curl/wcurl

Assisted-by: Viktor Szakats
Assisted-by: Samuel Henrique

Closes #17035
2025-04-21 11:06:44 +02:00