diff options
| -rw-r--r-- | Zend/zend_execute_API.c | 21 | ||||
| -rw-r--r-- | Zend/zend_ini_parser.y | 3 | ||||
| -rw-r--r-- | Zend/zend_variables.c | 8 | ||||
| -rw-r--r-- | ext/curl/interface.c | 210 | ||||
| -rw-r--r-- | ext/curl/multi.c | 7 | ||||
| -rw-r--r-- | ext/curl/tests/check_win_config.phpt | 3 | ||||
| -rw-r--r-- | ext/reflection/php_reflection.c | 4 | ||||
| -rw-r--r-- | ext/standard/basic_functions.c | 3 |
8 files changed, 207 insertions, 52 deletions
diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index 6bb833fd99..794c7f0fc9 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -608,21 +608,8 @@ ZEND_API int zval_update_constant_ex(zval *p, zend_class_entry *scope) /* {{{ */ Z_TYPE_FLAGS_P(p) = IS_TYPE_REFCOUNTED | IS_TYPE_COPYABLE; } } - if (actual[0] == '\\') { - if (inline_change) { - memmove(Z_STRVAL_P(p), Z_STRVAL_P(p)+1, Z_STRLEN_P(p)); - --Z_STRLEN_P(p); - } else { - ++actual; - } - --actual_len; - } if ((Z_CONST_FLAGS_P(p) & IS_CONSTANT_UNQUALIFIED) == 0) { - if (ZSTR_VAL(save)[0] == '\\') { - zend_throw_error(NULL, "Undefined constant '%s'", ZSTR_VAL(save) + 1); - } else { - zend_throw_error(NULL, "Undefined constant '%s'", ZSTR_VAL(save)); - } + zend_throw_error(NULL, "Undefined constant '%s'", ZSTR_VAL(save)); if (inline_change) { zend_string_release(save); } @@ -646,12 +633,6 @@ ZEND_API int zval_update_constant_ex(zval *p, zend_class_entry *scope) /* {{{ */ zend_string_release(Z_STR_P(p)); } ZVAL_COPY_VALUE(p, const_value); - if (Z_OPT_CONSTANT_P(p)) { - if (UNEXPECTED(zval_update_constant_ex(p, scope) != SUCCESS)) { - RESET_CONSTANT_VISITED(p); - return FAILURE; - } - } zval_opt_copy_ctor(p); } } else if (Z_TYPE_P(p) == IS_CONSTANT_AST) { diff --git a/Zend/zend_ini_parser.y b/Zend/zend_ini_parser.y index 315455bf88..1078259f22 100644 --- a/Zend/zend_ini_parser.y +++ b/Zend/zend_ini_parser.y @@ -132,11 +132,10 @@ static void zend_ini_get_constant(zval *result, zval *name) if (!memchr(Z_STRVAL_P(name), ':', Z_STRLEN_P(name)) && (c = zend_get_constant(Z_STR_P(name))) != 0) { if (Z_TYPE_P(c) != IS_STRING) { - ZVAL_COPY_VALUE(&tmp, c); + ZVAL_DUP(&tmp, c); if (Z_OPT_CONSTANT(tmp)) { zval_update_constant_ex(&tmp, NULL); } - zval_opt_copy_ctor(&tmp); convert_to_string(&tmp); c = &tmp; } diff --git a/Zend/zend_variables.c b/Zend/zend_variables.c index 6f2dd0421c..01b68c25a4 100644 --- a/Zend/zend_variables.c +++ b/Zend/zend_variables.c @@ -224,12 +224,8 @@ ZEND_API void ZEND_FASTCALL _zval_copy_ctor_func(zval *zvalue ZEND_FILE_LINE_DC) CHECK_ZVAL_STRING_REL(Z_STR_P(zvalue)); Z_STR_P(zvalue) = zend_string_dup(Z_STR_P(zvalue), 0); } else if (EXPECTED(Z_TYPE_P(zvalue) == IS_CONSTANT_AST)) { - zend_ast_ref *ast = emalloc(sizeof(zend_ast_ref)); - - GC_REFCOUNT(ast) = 1; - GC_TYPE_INFO(ast) = IS_CONSTANT_AST; - ast->ast = zend_ast_copy(Z_ASTVAL_P(zvalue)); - Z_AST_P(zvalue) = ast; + zend_ast *copy = zend_ast_copy(Z_ASTVAL_P(zvalue)); + ZVAL_NEW_AST(zvalue, copy); } } diff --git a/ext/curl/interface.c b/ext/curl/interface.c index 53d76a076c..90e2e30987 100644 --- a/ext/curl/interface.c +++ b/ext/curl/interface.c @@ -568,6 +568,13 @@ PHP_MINFO_FUNCTION(curl) #if LIBCURL_VERSION_NUM >= 0x072600 /* 7.38.0 */ {"GSSAPI", CURL_VERSION_GSSAPI}, #endif +#if LIBCURL_VERSION_NUM >= 0x072800 /* 7.40.0 */ + {"KERBEROS5", CURL_VERSION_KERBEROS5}, + {"UNIX_SOCKETS", CURL_VERSION_UNIX_SOCKETS}, +#endif +#if LIBCURL_VERSION_NUM >= 0x072f00 /* 7.47.0 */ + {"PSL", CURL_VERSION_PSL}, +#endif {NULL, 0} }; @@ -719,9 +726,6 @@ PHP_MINIT_FUNCTION(curl) REGISTER_CURL_CONSTANT(CURLOPT_SSL_CIPHER_LIST); REGISTER_CURL_CONSTANT(CURLOPT_SSL_VERIFYHOST); REGISTER_CURL_CONSTANT(CURLOPT_SSL_VERIFYPEER); -#if LIBCURL_VERSION_NUM >= 0x072900 /* 7.41.0 */ - REGISTER_CURL_CONSTANT(CURLOPT_SSL_VERIFYSTATUS); -#endif REGISTER_CURL_CONSTANT(CURLOPT_STDERR); REGISTER_CURL_CONSTANT(CURLOPT_TELNETOPTIONS); REGISTER_CURL_CONSTANT(CURLOPT_TIMECONDITION); @@ -850,11 +854,6 @@ PHP_MINIT_FUNCTION(curl) REGISTER_CURL_CONSTANT(CURLPROXY_SOCKS4); REGISTER_CURL_CONSTANT(CURLPROXY_SOCKS5); -#if LIBCURL_VERSION_NUM >= 0x071200 /* Available since 7.18.0 */ - REGISTER_CURL_CONSTANT(CURLPROXY_SOCKS4A); - REGISTER_CURL_CONSTANT(CURLPROXY_SOCKS5_HOSTNAME); -#endif - /* Curl Share constants */ REGISTER_CURL_CONSTANT(CURLSHOPT_NONE); REGISTER_CURL_CONSTANT(CURLSHOPT_SHARE); @@ -863,9 +862,6 @@ PHP_MINIT_FUNCTION(curl) /* Curl Http Version constants (CURLOPT_HTTP_VERSION) */ REGISTER_CURL_CONSTANT(CURL_HTTP_VERSION_1_0); REGISTER_CURL_CONSTANT(CURL_HTTP_VERSION_1_1); -#if LIBCURL_VERSION_NUM >= 0x072100 /* 7.33.0 */ - REGISTER_CURL_CONSTANT(CURL_HTTP_VERSION_2_0); -#endif REGISTER_CURL_CONSTANT(CURL_HTTP_VERSION_NONE); /* Curl Lock constants */ @@ -895,9 +891,6 @@ PHP_MINIT_FUNCTION(curl) REGISTER_CURL_CONSTANT(CURL_VERSION_KERBEROS4); REGISTER_CURL_CONSTANT(CURL_VERSION_LIBZ); REGISTER_CURL_CONSTANT(CURL_VERSION_SSL); -#if LIBCURL_VERSION_NUM >= 0x072100 /* 7.33.0 */ - REGISTER_CURL_CONSTANT(CURL_VERSION_HTTP2); -#endif #if LIBCURL_VERSION_NUM >= 0x070a06 /* Available since 7.10.6 */ REGISTER_CURL_CONSTANT(CURLOPT_HTTPAUTH); @@ -1060,6 +1053,9 @@ PHP_MINIT_FUNCTION(curl) REGISTER_CURL_CONSTANT(CURLPAUSE_SEND_CONT); REGISTER_CURL_CONSTANT(CURL_READFUNC_PAUSE); REGISTER_CURL_CONSTANT(CURL_WRITEFUNC_PAUSE); + + REGISTER_CURL_CONSTANT(CURLPROXY_SOCKS4A); + REGISTER_CURL_CONSTANT(CURLPROXY_SOCKS5_HOSTNAME); #endif #if LIBCURL_VERSION_NUM >= 0x071202 /* Available since 7.18.2 */ @@ -1092,6 +1088,9 @@ PHP_MINIT_FUNCTION(curl) REGISTER_CURL_CONSTANT(CURLOPT_PROXYPASSWORD); REGISTER_CURL_CONSTANT(CURLOPT_PROXYUSERNAME); REGISTER_CURL_CONSTANT(CURLOPT_USERNAME); + REGISTER_CURL_CONSTANT(CURL_REDIR_POST_301); + REGISTER_CURL_CONSTANT(CURL_REDIR_POST_302); + REGISTER_CURL_CONSTANT(CURL_REDIR_POST_ALL); #endif #if LIBCURL_VERSION_NUM >= 0x071303 /* Available since 7.19.3 */ @@ -1121,6 +1120,12 @@ PHP_MINIT_FUNCTION(curl) REGISTER_CURL_CONSTANT(CURLPROTO_SFTP); REGISTER_CURL_CONSTANT(CURLPROTO_TELNET); REGISTER_CURL_CONSTANT(CURLPROTO_TFTP); + + REGISTER_CURL_CONSTANT(CURLPROXY_HTTP_1_0); + + REGISTER_CURL_CONSTANT(CURLFTP_CREATE_DIR); + REGISTER_CURL_CONSTANT(CURLFTP_CREATE_DIR_NONE); + REGISTER_CURL_CONSTANT(CURLFTP_CREATE_DIR_RETRY); #endif #if LIBCURL_VERSION_NUM >= 0x071306 /* Available since 7.19.6 */ @@ -1156,8 +1161,8 @@ PHP_MINIT_FUNCTION(curl) REGISTER_CURL_CONSTANT(CURL_RTSPREQ_PLAY); REGISTER_CURL_CONSTANT(CURL_RTSPREQ_RECEIVE); REGISTER_CURL_CONSTANT(CURL_RTSPREQ_RECORD); - REGISTER_CURL_CONSTANT(CURL_RTSPREQ_SETUP); REGISTER_CURL_CONSTANT(CURL_RTSPREQ_SET_PARAMETER); + REGISTER_CURL_CONSTANT(CURL_RTSPREQ_SETUP); REGISTER_CURL_CONSTANT(CURL_RTSPREQ_TEARDOWN); #endif @@ -1200,6 +1205,7 @@ PHP_MINIT_FUNCTION(curl) #endif #if LIBCURL_VERSION_NUM >= 0x071600 /* Available since 7.22.0 */ + REGISTER_CURL_CONSTANT(CURLAUTH_NTLM_WB); REGISTER_CURL_CONSTANT(CURLGSSAPI_DELEGATION_FLAG); REGISTER_CURL_CONSTANT(CURLGSSAPI_DELEGATION_POLICY_FLAG); REGISTER_CURL_CONSTANT(CURLOPT_GSSAPI_DELEGATION); @@ -1219,18 +1225,119 @@ PHP_MINIT_FUNCTION(curl) REGISTER_CURL_CONSTANT(CURLSSLOPT_ALLOW_BEAST); #endif +#if LIBCURL_VERSION_NUM >= 0x071901 /* Available since 7.25.1 */ + REGISTER_CURL_CONSTANT(CURL_REDIR_POST_303); +#endif + +#if LIBCURL_VERSION_NUM >= 0x071c00 /* Available since 7.28.0 */ + REGISTER_CURL_CONSTANT(CURLSSH_AUTH_AGENT); +#endif + +#if LIBCURL_VERSION_NUM >= 0x071e00 /* Available since 7.30.0 */ + REGISTER_CURL_CONSTANT(CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE); + REGISTER_CURL_CONSTANT(CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE); + REGISTER_CURL_CONSTANT(CURLMOPT_MAX_HOST_CONNECTIONS); + REGISTER_CURL_CONSTANT(CURLMOPT_MAX_PIPELINE_LENGTH); + REGISTER_CURL_CONSTANT(CURLMOPT_MAX_TOTAL_CONNECTIONS); +#endif + +#if LIBCURL_VERSION_NUM >= 0x071f00 /* Available since 7.31.0 */ + REGISTER_CURL_CONSTANT(CURLOPT_SASL_IR); +#endif + +#if LIBCURL_VERSION_NUM >= 0x072100 /* Available since 7.33.0 */ + REGISTER_CURL_CONSTANT(CURLOPT_DNS_INTERFACE); + REGISTER_CURL_CONSTANT(CURLOPT_DNS_LOCAL_IP4); + REGISTER_CURL_CONSTANT(CURLOPT_DNS_LOCAL_IP6); + REGISTER_CURL_CONSTANT(CURLOPT_XOAUTH2_BEARER); + + REGISTER_CURL_CONSTANT(CURL_HTTP_VERSION_2_0); + REGISTER_CURL_CONSTANT(CURL_VERSION_HTTP2); +#endif + #if LIBCURL_VERSION_NUM >= 0x072200 /* Available since 7.34.0 */ + REGISTER_CURL_CONSTANT(CURLOPT_LOGIN_OPTIONS); + REGISTER_CURL_CONSTANT(CURL_SSLVERSION_TLSv1_0); REGISTER_CURL_CONSTANT(CURL_SSLVERSION_TLSv1_1); REGISTER_CURL_CONSTANT(CURL_SSLVERSION_TLSv1_2); #endif -#if LIBCURL_VERSION_NUM >= 0x072B00 /* Available since 7.43.0 */ +#if LIBCURL_VERSION_NUM >= 0x072400 /* Available since 7.36.0 */ + REGISTER_CURL_CONSTANT(CURLOPT_EXPECT_100_TIMEOUT_MS); + REGISTER_CURL_CONSTANT(CURLOPT_SSL_ENABLE_ALPN); + REGISTER_CURL_CONSTANT(CURLOPT_SSL_ENABLE_NPN); +#endif + +#if LIBCURL_VERSION_NUM >= 0x072500 /* Available since 7.37.0 */ + REGISTER_CURL_CONSTANT(CURLHEADER_SEPARATE); + REGISTER_CURL_CONSTANT(CURLHEADER_UNIFIED); + REGISTER_CURL_CONSTANT(CURLOPT_HEADEROPT); + REGISTER_CURL_CONSTANT(CURLOPT_PROXYHEADER); +#endif + +#if LIBCURL_VERSION_NUM >= 0x072600 /* Available since 7.38.0 */ + REGISTER_CURL_CONSTANT(CURLAUTH_NEGOTIATE); +#endif + +#if LIBCURL_VERSION_NUM >= 0x072700 /* Available since 7.39.0 */ + REGISTER_CURL_CONSTANT(CURLOPT_PINNEDPUBLICKEY); +#endif + +#if LIBCURL_VERSION_NUM >= 0x072800 /* Available since 7.40.0 */ + REGISTER_CURL_CONSTANT(CURLOPT_UNIX_SOCKET_PATH); + + REGISTER_CURL_CONSTANT(CURLPROTO_SMB); + REGISTER_CURL_CONSTANT(CURLPROTO_SMBS); +#endif + +#if LIBCURL_VERSION_NUM >= 0x072900 /* Available since 7.41.0 */ + REGISTER_CURL_CONSTANT(CURLOPT_SSL_VERIFYSTATUS); +#endif + +#if LIBCURL_VERSION_NUM >= 0x072a00 /* Available since 7.42.0 */ + REGISTER_CURL_CONSTANT(CURLOPT_PATH_AS_IS); + REGISTER_CURL_CONSTANT(CURLOPT_SSL_FALSESTART); +#endif + +#if LIBCURL_VERSION_NUM >= 0x072b00 /* Available since 7.43.0 */ + REGISTER_CURL_CONSTANT(CURL_HTTP_VERSION_2); + + REGISTER_CURL_CONSTANT(CURLOPT_PIPEWAIT); + REGISTER_CURL_CONSTANT(CURLOPT_PROXY_SERVICE_NAME); + REGISTER_CURL_CONSTANT(CURLOPT_SERVICE_NAME); + REGISTER_CURL_CONSTANT(CURLPIPE_NOTHING); REGISTER_CURL_CONSTANT(CURLPIPE_HTTP1); REGISTER_CURL_CONSTANT(CURLPIPE_MULTIPLEX); #endif +#if LIBCURL_VERSION_NUM >= 0x072c00 /* Available since 7.44.0 */ + REGISTER_CURL_CONSTANT(CURLSSLOPT_NO_REVOKE); +#endif + +#if LIBCURL_VERSION_NUM >= 0x072d00 /* Available since 7.45.0 */ + REGISTER_CURL_CONSTANT(CURLOPT_DEFAULT_PROTOCOL); +#endif + +#if LIBCURL_VERSION_NUM >= 0x072e00 /* Available since 7.46.0 */ + REGISTER_CURL_CONSTANT(CURLOPT_STREAM_WEIGHT); +#endif + +#if LIBCURL_VERSION_NUM >= 0x072f00 /* Available since 7.47.0 */ + REGISTER_CURL_CONSTANT(CURL_HTTP_VERSION_2TLS); +#endif + +#if LIBCURL_VERSION_NUM >= 0x073000 /* Available since 7.48.0 */ + REGISTER_CURL_CONSTANT(CURLOPT_TFTP_NO_OPTIONS); +#endif + +#if LIBCURL_VERSION_NUM >= 0x073100 /* Available since 7.49.0 */ + REGISTER_CURL_CONSTANT(CURL_HTTP_VERSION_2_PRIOR_KNOWLEDGE); + REGISTER_CURL_CONSTANT(CURLOPT_CONNECT_TO); + REGISTER_CURL_CONSTANT(CURLOPT_TCP_FASTOPEN); +#endif + #if CURLOPT_FTPASCII != 0 REGISTER_CURL_CONSTANT(CURLOPT_FTPASCII); #endif @@ -2065,9 +2172,6 @@ static int _php_curl_setopt(php_curl *ch, zend_long option, zval *zvalue) /* {{{ case CURLOPT_RESUME_FROM: case CURLOPT_SSLVERSION: case CURLOPT_SSL_VERIFYPEER: -#if LIBCURL_VERSION_NUM >= 0x072900 /* 7.41.0 */ - case CURLOPT_SSL_VERIFYSTATUS: -#endif case CURLOPT_TIMECONDITION: case CURLOPT_TIMEOUT: case CURLOPT_TIMEVALUE: @@ -2175,6 +2279,36 @@ static int _php_curl_setopt(php_curl *ch, zend_long option, zval *zvalue) /* {{{ case CURLOPT_TCP_KEEPIDLE: case CURLOPT_TCP_KEEPINTVL: #endif +#if LIBCURL_VERSION_NUM >= 0x071f00 /* Available since 7.31.0 */ + case CURLOPT_SASL_IR: +#endif +#if LIBCURL_VERSION_NUM >= 0x072400 /* Available since 7.36.0 */ + case CURLOPT_EXPECT_100_TIMEOUT_MS: + case CURLOPT_SSL_ENABLE_ALPN: + case CURLOPT_SSL_ENABLE_NPN: +#endif +#if LIBCURL_VERSION_NUM >= 0x072500 /* Available since 7.37.0 */ + case CURLOPT_HEADEROPT: +#endif +#if LIBCURL_VERSION_NUM >= 0x072900 /* Available since 7.41.0 */ + case CURLOPT_SSL_VERIFYSTATUS: +#endif +#if LIBCURL_VERSION_NUM >= 0x072a00 /* Available since 7.42.0 */ + case CURLOPT_PATH_AS_IS: + case CURLOPT_SSL_FALSESTART: +#endif +#if LIBCURL_VERSION_NUM >= 0x072b00 /* Available since 7.43.0 */ + case CURLOPT_PIPEWAIT: +#endif +#if LIBCURL_VERSION_NUM >= 0x072e00 /* Available since 7.46.0 */ + case CURLOPT_STREAM_WEIGHT: +#endif +#if LIBCURL_VERSION_NUM >= 0x073000 /* Available since 7.48.0 */ + case CURLOPT_TFTP_NO_OPTIONS: +#endif +#if LIBCURL_VERSION_NUM >= 0x073100 /* Available since 7.49.0 */ + case CURLOPT_TCP_FASTOPEN: +#endif #if CURLOPT_MUTE != 0 case CURLOPT_MUTE: #endif @@ -2260,6 +2394,19 @@ static int _php_curl_setopt(php_curl *ch, zend_long option, zval *zvalue) /* {{{ #if LIBCURL_VERSION_NUM >= 0x071900 /* Available since 7.25.0 */ case CURLOPT_MAIL_AUTH: #endif +#if LIBCURL_VERSION_NUM >= 0x072200 /* Available since 7.34.0 */ + case CURLOPT_LOGIN_OPTIONS: +#endif +#if LIBCURL_VERSION_NUM >= 0x072700 /* Available since 7.39.0 */ + case CURLOPT_PINNEDPUBLICKEY: +#endif +#if LIBCURL_VERSION_NUM >= 0x072b00 /* Available since 7.43.0 */ + case CURLOPT_PROXY_SERVICE_NAME: + case CURLOPT_SERVICE_NAME: +#endif +#if LIBCURL_VERSION_NUM >= 0x072d00 /* Available since 7.45.0 */ + case CURLOPT_DEFAULT_PROTOCOL: +#endif { zend_string *str = zval_get_string(zvalue); int ret = php_curl_option_str(ch, option, ZSTR_VAL(str), ZSTR_LEN(str), 0); @@ -2277,6 +2424,15 @@ static int _php_curl_setopt(php_curl *ch, zend_long option, zval *zvalue) /* {{{ #if LIBCURL_VERSION_NUM >= 0x071400 /* Available since 7.20.0 */ case CURLOPT_RTSP_SESSION_ID: #endif +#if LIBCURL_VERSION_NUM >= 0x072100 /* Available since 7.33.0 */ + case CURLOPT_DNS_INTERFACE: + case CURLOPT_DNS_LOCAL_IP4: + case CURLOPT_DNS_LOCAL_IP6: + case CURLOPT_XOAUTH2_BEARER: +#endif +#if LIBCURL_VERSION_NUM >= 0x072800 /* Available since 7.40.0 */ + case CURLOPT_UNIX_SOCKET_PATH: +#endif #if LIBCURL_VERSION_NUM >= 0x071004 /* Available since 7.16.4 */ case CURLOPT_KRBLEVEL: #else @@ -2422,6 +2578,12 @@ static int _php_curl_setopt(php_curl *ch, zend_long option, zval *zvalue) /* {{{ #if LIBCURL_VERSION_NUM >= 0x071503 /* Available since 7.21.3 */ case CURLOPT_RESOLVE: #endif +#if LIBCURL_VERSION_NUM >= 0x072500 /* Available since 7.37.0 */ + case CURLOPT_PROXYHEADER: +#endif +#if LIBCURL_VERSION_NUM >= 0x073100 /* Available since 7.49.0 */ + case CURLOPT_CONNECT_TO: +#endif { zval *current; HashTable *ph; @@ -2460,6 +2622,16 @@ static int _php_curl_setopt(php_curl *ch, zend_long option, zval *zvalue) /* {{{ name = "CURLOPT_RESOLVE"; break; #endif +#if LIBCURL_VERSION_NUM >= 0x072500 /* Available since 7.37.0 */ + case CURLOPT_PROXYHEADER: + name = "CURLOPT_PROXYHEADER"; + break; +#endif +#if LIBCURL_VERSION_NUM >= 0x073100 /* Available since 7.49.0 */ + case CURLOPT_CONNECT_TO: + name = "CURLOPT_CONNECT_TO"; + break; +#endif } php_error_docref(NULL, E_WARNING, "You must pass either an object or an array with the %s argument", name); return FAILURE; diff --git a/ext/curl/multi.c b/ext/curl/multi.c index 641d20f903..ab6d56c438 100644 --- a/ext/curl/multi.c +++ b/ext/curl/multi.c @@ -417,6 +417,13 @@ static int _php_curl_multi_setopt(php_curlm *mh, zend_long option, zval *zvalue, #if LIBCURL_VERSION_NUM >= 0x071003 /* 7.16.3 */ case CURLMOPT_MAXCONNECTS: #endif +#if LIBCURL_VERSION_NUM >= 0x071e00 /* 7.30.0 */ + case CURLMOPT_CHUNK_LENGTH_PENALTY_SIZE: + case CURLMOPT_CONTENT_LENGTH_PENALTY_SIZE: + case CURLMOPT_MAX_HOST_CONNECTIONS: + case CURLMOPT_MAX_PIPELINE_LENGTH: + case CURLMOPT_MAX_TOTAL_CONNECTIONS: +#endif error = curl_multi_setopt(mh->multi, option, zval_get_long(zvalue)); break; diff --git a/ext/curl/tests/check_win_config.phpt b/ext/curl/tests/check_win_config.phpt index 3d13638f90..fc1c66609a 100644 --- a/ext/curl/tests/check_win_config.phpt +++ b/ext/curl/tests/check_win_config.phpt @@ -42,6 +42,9 @@ SSPI => Yes TLS-SRP => No
HTTP2 => No
GSSAPI => No
+KERBEROS5 => Yes
+UNIX_SOCKETS => No
+PSL => No
Protocols => dict, file, ftp, ftps, gopher, http, https, imap, imaps, ldap, pop3, pop3s, rtsp, scp, sftp, smtp, smtps, telnet, tftp
Host => %s-pc-win32
SSL Version => OpenSSL/%s
diff --git a/ext/reflection/php_reflection.c b/ext/reflection/php_reflection.c index b4bd65182a..5b8569e9f2 100644 --- a/ext/reflection/php_reflection.c +++ b/ext/reflection/php_reflection.c @@ -2884,11 +2884,9 @@ ZEND_METHOD(reflection_parameter, getDefaultValue) return; } - ZVAL_COPY_VALUE(return_value, RT_CONSTANT(¶m->fptr->op_array, precv->op2)); + ZVAL_DUP(return_value, RT_CONSTANT(¶m->fptr->op_array, precv->op2)); if (Z_CONSTANT_P(return_value)) { zval_update_constant_ex(return_value, param->fptr->common.scope); - } else { - zval_copy_ctor(return_value); } } /* }}} */ diff --git a/ext/standard/basic_functions.c b/ext/standard/basic_functions.c index 0481e41a6e..f887903f26 100644 --- a/ext/standard/basic_functions.c +++ b/ext/standard/basic_functions.c @@ -3843,13 +3843,12 @@ PHP_FUNCTION(constant) scope = zend_get_executed_scope(); c = zend_get_constant_ex(const_name, scope, ZEND_FETCH_CLASS_SILENT); if (c) { - ZVAL_COPY_VALUE(return_value, c); + ZVAL_DUP(return_value, c); if (Z_CONSTANT_P(return_value)) { if (UNEXPECTED(zval_update_constant_ex(return_value, scope) != SUCCESS)) { return; } } - zval_copy_ctor(return_value); } else { php_error_docref(NULL, E_WARNING, "Couldn't find constant %s", ZSTR_VAL(const_name)); RETURN_NULL(); |
