Skip to content

Expose oauth2_bearer and netrc_file - #689

Open
CarloTUM wants to merge 1 commit into
sagebind:mainfrom
CarloTUM:bearer-netrc-file
Open

CarloTUM wants to merge 1 commit into
sagebind:mainfrom
CarloTUM:bearer-netrc-file

Conversation

@CarloTUM

Copy link
Copy Markdown

Two small setopts libcurl has had for years:

  • Easy::oauth2_bearer(token) (CURLOPT_XOAUTH2_BEARER) together with the new Auth::bearer(true) (CURLAUTH_BEARER) makes libcurl send Authorization: Bearer <token> itself. Until now callers had to compose the header by hand, which also meant libcurl did not know it was authenticating.
  • Easy::netrc_file(path) (CURLOPT_NETRC_FILE) reads credentials from a file other than ~/.netrc, for tools with their own config directory and for tests that cannot change HOME.

Both on Easy and Easy2. The sys constant for the netrc file already existed; the bearer one was there as a comment. Two tests in tests/easy.rs check the Authorization header on the wire.

oauth2_bearer(token) plus Auth::bearer let libcurl send
"Authorization: Bearer" itself instead of callers composing the header;
netrc_file(path) points netrc at a file other than ~/.netrc, which is
what tests and tools with their own config directory need. Both were
already in libcurl; the sys constants existed (one commented out).
Tests check the header on the wire.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant