summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ext/curl/interface.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/ext/curl/interface.c b/ext/curl/interface.c
index 0a8c0e35c0..9065e5ae27 100644
--- a/ext/curl/interface.c
+++ b/ext/curl/interface.c
@@ -734,6 +734,24 @@ PHP_MINIT_FUNCTION(curl)
REGISTER_CURL_CONSTANT(CURLE_SSH);
#endif
+#if LIBCURL_VERSION_NUM >= 0x071304
+ REGISTER_CURL_CONSTANT(CURLOPT_REDIR_PROTOCOLS);
+ REGISTER_CURL_CONSTANT(CURLOPT_PROTOCOLS);
+ REGISTER_CURL_CONSTANT(CURLPROTO_HTTP);
+ REGISTER_CURL_CONSTANT(CURLPROTO_HTTPS);
+ REGISTER_CURL_CONSTANT(CURLPROTO_FTP);
+ REGISTER_CURL_CONSTANT(CURLPROTO_FTPS);
+ REGISTER_CURL_CONSTANT(CURLPROTO_SCP);
+ REGISTER_CURL_CONSTANT(CURLPROTO_SFTP);
+ REGISTER_CURL_CONSTANT(CURLPROTO_TELNET);
+ REGISTER_CURL_CONSTANT(CURLPROTO_LDAP);
+ REGISTER_CURL_CONSTANT(CURLPROTO_LDAPS);
+ REGISTER_CURL_CONSTANT(CURLPROTO_DICT);
+ REGISTER_CURL_CONSTANT(CURLPROTO_FILE);
+ REGISTER_CURL_CONSTANT(CURLPROTO_TFTP);
+ REGISTER_CURL_CONSTANT(CURLPROTO_ALL);
+#endif
+
#ifdef PHP_CURL_NEED_OPENSSL_TSL
if (!CRYPTO_get_id_callback()) {
int i, c = CRYPTO_num_locks();
@@ -1407,6 +1425,10 @@ static int _php_curl_setopt(php_curl *ch, long option, zval **zvalue, zval *retu
#if LIBCURL_VERSION_NUM > 0x070b01 /* CURLOPT_TCP_NODELAY is available since curl 7.11.2 */
case CURLOPT_TCP_NODELAY:
#endif
+#if LIBCURL_VERSION_NUM >= 0x71304
+ case CURLOPT_REDIR_PROTOCOLS:
+ case CURLOPT_PROTOCOLS:
+#endif
convert_to_long_ex(zvalue);
error = curl_easy_setopt(ch->cp, option, Z_LVAL_PP(zvalue));
break;