curl-curl/scripts
Viktor Szakats bf7375ecc5
build: avoid overriding system symbols for socket functions
Before this patch `accept4()`, `socket()`, `socketpair()`, `send()` and
`recv()` system symbols were remapped via macros, using the same name,
to local curl debug wrappers. This patch replaces these overrides by
introducing curl-namespaced macros that map either to the system symbols
or to their curl debug wrappers in `CURLDEBUG` (TrackMemory) builds.

This follows a patch that implemented the same for `accept()`.

The old method required tricks to make these redefines work in unity
builds, and avoid them interfering with system headers. These tricks
did not work for system symbols implemented as macros.

The new method allows to setup these mappings once, without interfering
with system headers, upstream macros, or unity builds. It makes builds
more robust.

Also:
- checksrc: ban all mapped functions.
- docs/examples: tidy up checksrc rules.

Follow-up to 9863599d69 #18502
Follow-up to 3bb5e58c10 #17827

Closes #18503
2025-09-20 13:44:59 +02:00
..
cd2cd scripts: enable strict warnings in Perl where missing, fix fallouts 2025-07-27 22:35:18 +02:00
cd2nroff misc: fix typos 2025-07-12 08:59:44 +02:00
cdall scripts: enable strict warnings in Perl where missing, fix fallouts 2025-07-27 22:35:18 +02:00
checksrc-all.pl checksrc-all: rewrite in Perl, remove checksrc.bat 2025-07-11 12:28:46 +02:00
checksrc.pl build: avoid overriding system symbols for socket functions 2025-09-20 13:44:59 +02:00
ciconfig.pl scripts: enable strict warnings in Perl where missing, fix fallouts 2025-07-27 22:35:18 +02:00
cijobs.pl scripts: enable strict warnings in Perl where missing, fix fallouts 2025-07-27 22:35:18 +02:00
cmakelint.sh GHA: minor tidy-ups 2025-07-13 11:52:08 +02:00
CMakeLists.txt cmake: install shell completions for cross-builds 2025-04-24 10:04:17 +02:00
completion.pl tidy-up: whitespace (more in Perl) 2025-07-12 08:59:44 +02:00
contributors.sh contributors.sh: lowercase 'github' for consistency 2025-02-24 08:05:06 +01:00
contrithanks.sh contrithanks: fix for BSD sed tool 2025-07-28 17:29:26 +02:00
coverage.sh GHA: add shellcheck job and fix warnings, shell tidy-ups 2024-04-08 09:37:24 +00:00
delta delta: fix counters 2025-07-29 09:45:07 +02:00
dmaketgz dmaketgz: use --no-cache when building docker image 2024-12-05 15:41:53 +01:00
extract-unit-protos scripts: enable strict warnings in Perl where missing, fix fallouts 2025-07-27 22:35:18 +02:00
firefox-db2pem.sh firefox-db2pem: avoid use of eval in script 2025-06-28 21:12:27 -07:00
installcheck.sh GHA: add shellcheck job and fix warnings, shell tidy-ups 2024-04-08 09:37:24 +00:00
Makefile.am configure: if no perl, disable unity and shell completion, related tidy ups 2025-08-04 14:55:10 +02:00
maketgz Makefile.dist: delete 2025-01-27 20:59:47 +01:00
managen managen: render better manpage references/links 2025-09-17 15:49:15 +02:00
mdlinkcheck mdlinkcheck: handle links with a leading slash properly 2025-08-23 23:07:13 +02:00
mk-ca-bundle.pl tidy-up: whitespace (more in Perl) 2025-07-12 08:59:44 +02:00
mk-unity.pl cmake: replace the way clang-tidy verifies tests, fix issues found 2025-06-22 23:08:46 +02:00
nroff2cd scripts: enable strict warnings in Perl where missing, fix fallouts 2025-07-27 22:35:18 +02:00
pythonlint.sh scripts: move the ruff linter command into a script 2025-05-13 16:41:32 -07:00
randdisable spelling: file system 2025-08-22 15:53:41 +02:00
release-notes.pl release-notes: fix warning 2025-08-01 16:02:54 +02:00
release-tools.sh maketgz: fix RELEASE-TOOLS.md for daily tarballs 2024-09-07 09:33:09 -07:00
schemetable.c tidy-up: prefer ifdef/ifndef for single checks 2025-07-27 22:35:17 +02:00
singleuse.pl multi: limit-rate revisited 2025-09-03 15:53:41 +02:00
top-complexity top-complexity: set threshold to 70 2025-09-04 10:06:13 +02:00
verify-release configure: fail if PSL is not disabled but not found 2024-08-05 08:33:58 +02:00
wcurl wcurl: update to v2025.05.26 2025-05-27 09:29:43 +02:00