curl/docs/internals
Stefan Eissing 8f71d0fde5
creds: hold credentials
Authorizdation credentials are kept in `struct Curl_creds`. This contains:

* `user`: the username, maybe the empty string
* `passwd`: the password, maybe the empty string
* `sasl_authzid`: the SASL authz value, maybe the empty string
* `oauth_bearer`: the OAUTH bearer token, maybe the empty string
* `source`: where the credentials from from
* `refcount`: a reference counter to link/unkink creds

A `creds` with all values empty is equivalent to NULL, e.g. no `creds`
instance. With reference counting, `creds` can be linked/unlinked
in several places.

See docs/internals/CREDENTIALS.md for use.

Closes #21548
2026-05-12 16:05:15 +02:00
..
BUFQ.md
BUFREF.md
CHECKSRC.md
CLIENT-READERS.md
CLIENT-WRITERS.md
CODE_STYLE.md
CONNECTION-FILTERS.md
CREDENTIALS.md creds: hold credentials 2026-05-12 16:05:15 +02:00
CURLX.md
DYNBUF.md
HASH.md
LLIST.md
MID.md
MQTT.md
MULTI-EV.md
NEW-PROTOCOL.md
PEERS.md
PORTING.md
RATELIMITS.md
README.md
SCORECARD.md
SPLAY.md
STRPARSE.md
THRDPOOL-AND-QUEUE.md
TIME-KEEPING.md
TLS-SESSIONS.md
UINT_SETS.md
WEBSOCKET.md

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.