curl-curl/docs/internals
Viktor Szakats 3d80d37cf0
curlx: add and use curlx_freopen()
To complement the existing `curlx_fopen()` internal API.
It's used by the curl's `--stderr` option.

`curlx_freopen()` adds two features to the bare `freopen()`:
- tracing for debug-enabled builds.
- Unicode and long-filename support for Windows builds.

In effect this adds long-filename and enables Unicode support for
the `--stderr <filename>` curl command-line option on Windows.

Also add to checksrc.

Follow-up to 2f17a9b654 #10673

Closes #19598
2025-11-19 22:04:53 +01:00
..
BUFQ.md bufq: remove the unused Curl_bufq_unwrite function 2025-06-24 10:56:54 +02:00
BUFREF.md
CHECKSRC.md curlx: add and use curlx_freopen() 2025-11-19 22:04:53 +01:00
CLIENT-READERS.md spelling: 'a' vs 'an' 2025-05-30 11:38:35 +02:00
CLIENT-WRITERS.md
CODE_STYLE.md checksrc: reduce directory-specific exceptions 2025-10-04 00:48:58 +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
SCORECARD.md scorecard: add perf support on linux 2025-10-14 16:24:35 +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.