* The value of the HTTP header.
*
* @public
- * @var
+ * @var mixed
*/
public $value = NULL;
/**
}
/**
* The http\Client\Curl namespace holds option value constants specific to the curl driver of the http\Client.
+ *
+ * Head down for the [list of available request options](http/Client/Curl#Options:) as well as the
+ * [list of available client configuration options](http/Client/Curl#Configuration:).
*/
namespace http\Client\Curl;
/**
* e.g. "libcurl/7.50.0 OpenSSL/1.0.2h zlib/1.2.8 libidn/1.32 nghttp2/1.12.0".
* See http\Client\Curl\Versions namespace.
*/
-const VERSIONS = 'libcurl/7.64.0 OpenSSL/1.1.1a zlib/1.2.11 libidn2/2.1.1 libpsl/0.20.2 (+libidn2/2.1.1) libssh2/1.8.0 nghttp2/1.36.0';
+const VERSIONS = 'libcurl/7.64.0 OpenSSL/1.1.1d zlib/1.2.11 libidn2/2.0.5 libpsl/0.20.2 (+libidn2/2.0.5) libssh2/1.8.0 nghttp2/1.36.0 librtmp/2.3';
/**
* Use HTTP/1.0 protocol version.
*/
*/
const HTTP_VERSION_2_0 = 3;
/**
- * Attempt to use version 2 for HTTPS, version 1.1 for HTTP. Available if libcurl is v7.47.0 or more recent and was built with nghttp2 support.
+ * Attempt to use version 2 for HTTPS, version 1.1 for HTTP. Available if libcurl is v7.47.0 or more recent and was built with http2 support.
*/
const HTTP_VERSION_2TLS = 4;
+/**
+ * Declare prior knowledge that the server supports plain (non-TLS) HTTP/2. Available if libcurl is v7.49.0 or more recent and was built with http2 support.
+ */
+const HTTP_VERSION_2_PRIOR_KNOWLEDGE = NULL;
+/**
+ * Force usage of HTTP/3. See also http\Client\Curl::$altsvc. Available if libcurl is v7.66.0 or more recent.
+ */
+const HTTP_VERSION_3 = NULL;
/**
* Use any HTTP protocol version.
*/
const HTTP_VERSION_ANY = 0;
/**
- * Use TLS v1.0 encryption.
+ * Use TLS v1.0 encryption. Available if libcurl is v7.34.0 or more recent.
*/
const SSL_VERSION_TLSv1_0 = 4;
/**
- * Use TLS v1.1 encryption.
+ * Use TLS v1.1 encryption. Available if libcurl is v7.34.0 or more recent.
*/
const SSL_VERSION_TLSv1_1 = 5;
/**
- * Use TLS v1.2 encryption.
+ * Use TLS v1.2 encryption. Available if libcurl is v7.34.0 or more recent.
*/
const SSL_VERSION_TLSv1_2 = 6;
+/**
+ * Use TLS v1.3 encryption. Available if libcurl is v7.52.0 or more recent.
+ */
+const SSL_VERSION_TLSv1_3 = NULL;
/**
* Use any TLS v1 encryption.
*/
* Use any encryption.
*/
const SSL_VERSION_ANY = 0;
+/**
+ * Use max default encryption. To be bitwise ORed to a http\Client\Curl\SSL_VERSION_ constant. Available if libcurl is v7.54.0 or more recent.
+ */
+const SSL_VERSION_MAX_DEFAULT = NULL;
+/**
+ * Use upt to TLS v1.0 encryption. To be bitwise ORed to a http\Client\Curl\SSL_VERSION_ constant. Available if libcurl is v7.54.0 or more recent.
+ */
+const SSL_VERSION_MAX_TLSv1_0 = NULL;
+/**
+ * Use up to TLS v1.1 encryption. To be bitwise ORed to a http\Client\Curl\SSL_VERSION_ constant. Available if libcurl is v7.54.0 or more recent.
+ */
+const SSL_VERSION_MAX_TLSv1_1 = NULL;
+/**
+ * Use up to TLS v1.2 encryption. To be bitwise ORed to a http\Client\Curl\SSL_VERSION_ constant. Available if libcurl is v7.54.0 or more recent.
+ */
+const SSL_VERSION_MAX_TLSv1_2 = NULL;
+/**
+ * Use up to TLS v1.3 encryption. To be bitwise ORed to a http\Client\Curl\SSL_VERSION_ constant. Available if libcurl is v7.54.0 or more recent.
+ */
+const SSL_VERSION_MAX_TLSv1_3 = NULL;
/**
* Use TLS SRP authentication. Available if libcurl is v7.21.4 or more recent and was built with gnutls or openssl with TLS-SRP support.
*/
* Use any resolver.
*/
const IPRESOLVE_ANY = 0;
+/**
+ * Don't use authentication.
+ */
+const AUTH_NONE = NULL;
/**
* Use Basic authentication.
*/
* Use HTTP Netgotiate authentication (SPNEGO, RFC4559). Available if libcurl is v7.38.0 or more recent.
*/
const AUTH_SPNEGO = 4;
+/**
+ * Bearer authentication. Set bearer with http\Client\Curl::$xoauth2_bearer request option. Available if libcurl is v7.61.0 or more recent.
+ */
+const AUTH_BEARER = NULL;
+/**
+ * Use AWS SIGv4 authentication. Available if libcurl is v7.75.0 or more recent.
+ */
+const AUTH_AWS_SIGV4 = NULL;
/**
* Use any authentication.
*/
* Keep POSTing on any redirect. Available if libcurl is v7.19.1 or more recent.
*/
const POSTREDIR_ALL = 7;
+/**
+ * Do only read from but not write to the Alt-Svc cache file. Available if libcurl is v7.64.1 or more recent.
+ */
+const ALTSVC_READONLYFILE = NULL;
+/**
+ * Accept alternative services offered over HTTP/1.1. Available if libcurl is v7.64.1 or more recent.
+ */
+const ALTSVC_H1 = NULL;
+/**
+ * Accept alternative services offered over HTTP/2. Available if libcurl is v7.64.1 or more recent.
+ */
+const ALTSVC_H2 = NULL;
+/**
+ * Accept alternative services offered over HTTP/3. Available if libcurl is v7.64.1 or more recent.
+ */
+const ALTSVC_H3 = NULL;
+/**
+ * Enable the cache. Available if libcurl is v7.74.0 or more recent.
+ */
+const HSTS_ENABLE = NULL;
+/**
+ * Do only read from but not write to the HSTS cache file. Available if libcurl is v7.74.0 or more recent.
+ */
+const HSTS_READONLYFILE = NULL;
namespace http\Client;
/**
* The http\Client\Request class provides an HTTP message implementation tailored to represent a request message to be sent by the client.
const UNIX_SOCKETS = 524288;
/**
* CURL version constants.
- *
- * > ***NOTE:***
- * > These constants have been added in v2.6.0, resp. v3.1.0.
*/
namespace http\Client\Curl\Versions;
/**
/**
* Version string of the SSL/TLS library, e.g. "OpenSSL/1.0.2h".
*/
-const SSL = 'OpenSSL/1.1.1a';
+const SSL = 'OpenSSL/1.1.1d';
/**
* Version string of the zlib compression library, e.g. "1.2.8".
*/
* Version string of the IDN library, e.g. "1.32".
*/
const IDN = NULL;
+/**
+ * Version string of the iconv library. Added in v4.1.0.
+ */
+const ICONV = NULL;
+/**
+ * Version string of the brotli library. Added in v4.1.0. Available if libcurl is v7.57.0 or more recent.
+ */
+const BROTLI = NULL;
+/**
+ * Version string of nghttp2. Added in v4.1.0. Available if libcurl is v7.66.0 or more recent.
+ */
+const NGHTTP2 = NULL;
+/**
+ * Version string of quiche/nghttp3. Added in v4.1.0. Available if libcurl is v7.66.0 or more recent.
+ */
+const QUIC = NULL;
+/**
+ * Default path to the certificate bundle file. Added in v4.1.0. Available if libcurl is v7.70.0 or more recent.
+ */
+const CAINFO = NULL;
+/**
+ * Default path to the certificate bundle directory. Added in v4.1.0. Available if libcurl is v7.70.0 or more recent.
+ */
+const CAPATH = NULL;
+/**
+ * Version string of the zstd library. Added in v4.1.0. Available if libcurl is v7.72.0 or more recent.
+ */
+const ZSTD = NULL;
+/**
+ * Version string of the hyper library. Added in v4.1.0. Available if libcurl is v7.75.0 or more recent.
+ */
+const HYPER = NULL;
namespace http\Encoding;
/**
* Base class for encoding stream implementations.
/**
* Default compression level.
*/
- const LEVEL_DEF = 4;
+ const LEVEL_DEF = NULL;
/**
* Least compression level.
*/
- const LEVEL_MIN = 1;
+ const LEVEL_MIN = NULL;
/**
* Greatest compression level.
*/
- const LEVEL_MAX = 11;
+ const LEVEL_MAX = NULL;
/**
* Default window bits.
*/
- const WBITS_DEF = 352;
+ const WBITS_DEF = NULL;
/**
* Minimum window bits.
*/
- const WBITS_MIN = 160;
+ const WBITS_MIN = NULL;
/**
* Maximum window bits.
*/
- const WBITS_MAX = 384;
+ const WBITS_MAX = NULL;
/**
* Default compression mode.
*/
- const MODE_GENERIC = 0;
+ const MODE_GENERIC = NULL;
/**
* Compression mode for UTF-8 formatted text.
*/
- const MODE_TEXT = 4096;
+ const MODE_TEXT = NULL;
/**
* Compression mode used in WOFF 2.0.
*/
- const MODE_FONT = 8192;
+ const MODE_FONT = NULL;
/**
* Encode data with brotli encoding.
*