com php-src: Merge branch 'PHP-5.6': UPGRADING ext/openssl/xp _ssl.c main/php_ini.c

From: Date: Wed, 29 Jan 2014 13:32:02 +0000
Subject: com php-src: Merge branch 'PHP-5.6': UPGRADING ext/openssl/xp _ssl.c main/php_ini.c
Groups: php.cvs 
Request: Send a blank email to php-cvs+get-75850@lists.php.net to get a copy of this message
Commit: 1c7f54d4f7fe58f1d2c7ed00ca80d93dddc265ab Author: Andrey Hristov <andrey@php.net> Wed, 29 Jan 2014 15:32:02 +0200 Parents: fb5c7cda5d776a84730c5133f27e72cb427f22ae 253a66c8d56e72b166b2d8ebfbc4b368eed4a9fb Branches: master Link: http://git.php.net/?p=php-src..git;a=commitdiff;h=1c7f54d4f7fe58f1d2c7ed00ca80d93dddc265ab Log: Merge branch 'PHP-5.6' Conflicts: NEWS ext/openssl/xp_ssl..c Changed paths: MM UPGRADING MM ext/openssl/xp_ssl.c MM main/php_ini.c Diff: diff --cc UPGRADING index f5e36fe,6758615..79f7875 --- a/UPGRADING +++ b/UPGRADING @@@ -20,10 -20,25 +20,21 @@@ PHP X.Y UPGRADE NOTE 1. Backward Incompatible Changes ======================================== -- JSON: - json_decode() no longer accepts non-lowercase variants of lone JSON true, - false or null values. For example, True or FALSE will now cause json_decode to - return NULL and set an error value you can fetch with json_last_error(). - This affects JSON texts consisting solely of true, false or null. Text - containing non-lowercase values inside JSON arrays or objects has never been - accepted. +- DBA + . dba_delete() now returns false if the key was not found for the inifile + handler, too. + - openssl: + To prevent Man-in-the-Middle attacks against encrypted transfers client + streams now verify peer certificates by default. Previous versions + required users to manually enable peer verification. As a result of this + change, existing code using ssl:// or tls:// stream wrappers (e.g. + file_get_contents(), fsockopen(), stream_socket_client()) may no longer + connect successfully without manually disabling peer verification via the + stream context's "verify_peer" setting. Encrypted transfers delegate to + operating system certificate stores by default, so many/most users *should* + be unaffected by this transparent security enhancement. + ======================================== 2. New Features ======================================== diff --cc ext/openssl/xp_ssl.c index 244f04d,cc8ea8a..61ba027 --- a/ext/openssl/xp_ssl.c +++ b/ext/openssl/xp_ssl.c @@@ -920,21 -920,9 +920,21 @@@ static int get_crypto_method(php_stream return STREAM_CRYPTO_METHOD_SSLv23_CLIENT; } - static char * get_sni(php_stream_context *ctx, const char *resourcename, size_t resourcenamelen, int is_persistent TSRMLS_DC) { + static char * get_url_name(const char *resourcename, size_t resourcenamelen, int is_persistent TSRMLS_DC) { php_url *url; + if (ctx) { + zval **val = NULL; + + if (php_stream_context_get_option(ctx, "ssl", "SNI_enabled", &val) == SUCCESS && !zend_is_true(*val TSRMLS_CC)) { + return NULL; + } + if (php_stream_context_get_option(ctx, "ssl", "SNI_server_name", &val) == SUCCESS) { + convert_to_string_ex(val); + return pestrdup(Z_STRVAL_PP(val), is_persistent); + } + } + if (!resourcename) { return NULL; }

« previous php.cvs (#75850) next »