curl-curl/docs/internals
Viktor Szakats ad26a6cb99
tidy-up: avoid using the reserved macro namespace
To avoid hitting `-Wreserved-macro-identifier` where possible.

- amigaos: introduce local macro instead of reusing `__request()`.
- easy_lock: avoid redefining `__has_builtin()`.
  Follow-up to 33fd57b8ff #9062
- rand: drop interim macro `_random()`.
- windows: rename local macro `_tcsdup()` to `Curl_tcsdup()`.
  To avoid using the reserved macro namespace and to avoid
  colliding with `_tcsdup()` as defined by Windows headers.
- checksrc: ban `_tcsdup()` in favor of `Curl_tcsdup()`.
- tool_doswin: avoid redefining `_use_lfn()` (MS-DOS).
- tool_findfile: limit `__NO_NET_API` hack to AmigaOS.
  Syncing this pattern with `lib/netrc.c`.
  Follow-up to 784a8ec2c1 #16279
- examples/http2-upload: avoid reserved namespace for local macro.

More cases will be removed when dropping WinCE support via #17927.

Cases remain when defining external macros out of curl's control.

Ref: #18477
Closes #18482
2025-09-20 02:27:06 +02:00
..
BUFQ.md bufq: remove the unused Curl_bufq_unwrite function 2025-06-24 10:56:54 +02:00
BUFREF.md docs/internals: new subdirectory 2024-08-16 08:59:25 +02:00
CHECKSRC.md docs/internals: new subdirectory 2024-08-16 08:59:25 +02:00
CLIENT-READERS.md spelling: 'a' vs 'an' 2025-05-30 11:38:35 +02:00
CLIENT-WRITERS.md docs/internals: new subdirectory 2024-08-16 08:59:25 +02:00
CODE_STYLE.md tidy-up: avoid using the reserved macro namespace 2025-09-20 02:27:06 +02:00
CONNECTION-FILTERS.md spelling: 'a' vs 'an' 2025-05-30 11:38:35 +02:00
CURLX.md curlx: move the docs to docs/internals/ 2025-05-13 10:30:02 +02:00
DYNBUF.md curlx: move into to curlx/ 2025-05-07 11:01:15 +02:00
HASH.md lib: add meta_hash to connection, eliminate hash_offt 2025-04-22 15:57:18 +02:00
LLIST.md docs: use lowercase curl and libcurl 2025-01-02 17:15:54 +01:00
MID.md multi: do transfer book keeping using mid 2025-04-17 17:28:38 +02:00
MQTT.md mqtt: send ping at upkeep interval 2025-04-16 09:36:19 +02:00
MULTI-EV.md multi: event based rework 2025-02-22 14:47:40 +01:00
NEW-PROTOCOL.md GHA: silence proselint warnings and an error 2024-10-15 16:44:17 +02:00
PORTING.md docs/internals/PORTING.md: new document 2025-03-29 14:10:10 +01:00
README.md docs/internals: new subdirectory 2024-08-16 08:59:25 +02:00
SCORECARD.md pytest: use dante-server in CI 2025-07-29 15:02:30 +02:00
SPLAY.md internals/SPLAY.md: internal API documentation 2024-08-16 17:13:37 +02:00
STRPARSE.md spelling: call it null-terminate consistently 2025-05-30 17:29:45 +02:00
TLS-SESSIONS.md spelling: file system 2025-08-22 15:53:41 +02:00
UINT_SETS.md lib: add meta_hash to connection, eliminate hash_offt 2025-04-22 15:57:18 +02:00
WEBSOCKET.md websocket: add option to disable auto-pong reply 2025-04-19 00:01:28 +02:00

Internals

This directory contains documentation covering libcurl internals; APIs and concepts that are useful for contributors and maintainers.

Public APIs are documented in the public documentation, not here.