1 # namespace http\Client\Curl
3 The http\Client\Curl namespace holds option value constants specific to the curl driver of the http\Client.
7 ### HTTP Protocol Version
10 Use HTTP/1.0 protocol version.
12 Use HTTP/1.1 protocol version.
14 Use any HTTP protocol version.
16 ### SSL Protocol Version
36 ### Authentication Type
39 Use Basic authentication.
41 Use Digest authentication.
43 Use IE (lower v7) quirks with Digest authentication. Available if libcurl is v7.19.3 or more recent.
45 Use NTLM authentication.
47 Use GSS-Negotiate authentication.
49 Use any authentication.
51 ### Proxy Protocol Version
54 Use SOCKSv4 proxy protocol.
56 Use SOCKSv4a proxy protocol.
57 * PROXY_SOCKS5_HOSTNAME
58 Use SOCKS5h proxy protocol.
60 Use SOCKS5 proxy protoccol.
62 Use HTTP/1.1 proxy protocol.
64 Use HTTP/1.0 proxy protocol. Available if libcurl is v7.19.4 or more recent.
66 ### POST Redirection Behavior
69 Keep POSTing on 301 redirects. Available if libcurl is v7.19.1 or more recent.
71 Keep POSTing on 302 redirects. Available if libcurl is v7.19.1 or more recent.
73 Keep POSTing on any redirect. Available if libcurl is v7.19.1 or more recent.
81 The HTTP protocol version. See http\Client\Curl::HTTP_VERSION_* constants.
86 The hostname of the proxy.
88 See http\Client\Curl::PROXY_* constants.
90 The port number of the proxy.
94 See http\Client\Curl::AUTH_* constants.
96 Tunnel all operations through the proxy.
98 Comma separated list of hosts where no proxy should be used. Available if libcurl is v7.19.4 or more recent.
102 * int $dns_cache_timeout
103 Resolved hosts will be kept fot this number of seconds.
105 See http\Client\Curl::IPRESOLVE_* constants.
107 A list of HOST:PORT:ADDRESS mappings which pre-populate the DNS cache. Available if libcurl is v7.21.3 or more recent.
108 * string $dns_servers
109 Comma separated list of custom DNS servers of the form HOST[:PORT]. Available if libcurl is v7.24.0 or more recent.
113 * int $low_speed_limit
114 Minimum speed in bytes per second.
115 * int $low_speed_time
116 Maximum time in seconds the transfer can be below $low_speed_limit before cancelling.
118 Maximum download size.
120 ### Connection handling
122 * bool $fresh_connect
123 Force a new connection.
125 Force closing the connection.
130 Outgoing interface name.
132 A tuple of min/max ports.
134 Override the URL's port.
136 RFC4007 zone_id. Available if libcurl is v7.19.0 or more recent.
137 * bool $tcp_keepalive
138 Whether to use TCP keepalive. Available if libcurl is v7.25.0 or more recent.
140 Seconds to wait before sending keepalive probes. Available if libcurl is v7.25.0 or more recent.
142 Interval in seconds to wait between sending keepalive probes. Available if libcurl is v7.25.0 or more recent.
149 See http\Client\Curl::AUTH_* constants.
154 How many redirects to follow.
155 * bool $unrestricted_auth
156 Whether to keep sending authentication credentials on redirects to different hosts.
158 See http\Client\Curl::POSTREDIR_* constants. Available if libcurl is v7.19.1 or more recent.
165 Pause this number of seconds between retries.
170 Custom Referer header.
172 Whether to automatically send referers.
174 Custom User-Agent header.
178 Whether to request compressed content (through Accept-Encoding).
180 Custom If-(Un)Modified since time. If less than zero, the current time will be added.
185 Resume from this byte offset.
187 Fetch specific ranges (if server supports byte ranges).
191 * bool $encodecookies
192 Whether to URLencode cookies.
194 List of custom cookies in the form ["name" => "value"].
195 * bool $cookiesession
196 Ignore previous session cookies to be loaded from $cookiestore.
197 * string $cookiestore
198 Path to a Netscape cookie file, from which cookies will be loaded resp. to which cookies will be written.
203 Seconds the complete transfer may take.
204 * float $connecttimeout
205 Seconds the connect may take.
210 Subarray of SSL related options:
212 SSL certificate file.
214 Certificate type (DER, PEM). (Secure Transport additionally supports P12).
218 PK type (PEM, DER, ENG).
220 The password for the private key.
222 Crypto engine to use for the private key.
224 See http\Client\Curl::SSL_VERSION_* constants.
226 Whether to apply peer verification.
228 Whether to apply host verification.
229 * string $cipher_list
230 One or more cipher strings separated by colons.
232 CA bundle to verify the peer with.
234 Directory with prepared CA certs to verify the peer with.
235 * string $random_file
236 A file used to read from to seed the random engine.
238 A Entropy Gathering Daemon socket.
240 CA PEM cert for peer verification. Available if libcurl is v7.19.0 or more recent.
242 File with the concatenation of CRL in PEM format. Available if libcurl was built with OpenSSL support.
244 Enable gathering of SSL certificate chain information. Available if libcurl is v7.19.1 or more recent.