47 std::unique_ptr<Impl> impl_;
Owns a POOL of libcurl easy handles (up to TlsConfig::max_concurrent_requests) whose cookie jar,...
Definition http_curl.hpp:29
static Transport make_transport(TlsConfig cfg)
Build a Transport (std::function) that forwards to a shared CurlTransport, so the cookie engine and T...
CurlTransport(TlsConfig cfg)
CurlTransport & operator=(const CurlTransport &)=delete
HttpResponse perform(const HttpRequest &req)
Perform one HTTP exchange.
CurlTransport(const CurlTransport &)=delete
Definition authenticator.hpp:40
std::function< HttpResponse(const HttpRequest &)> Transport
The transport seam. Injectable; defaults to the libcurl implementation.
Definition transport.hpp:56
void ensure_curl_global_init()
Process-wide libcurl init/cleanup guard (idempotent).
An outgoing HTTP request produced by the client's request builder.
Definition transport.hpp:32
An HTTP response, or a transport failure.
Definition transport.hpp:42
Immutable TLS / mTLS material handed to the libcurl transport factory.
Definition transport.hpp:61