CHANGELOG
What's New in version 7.2.11:
Core:
- Fixed bug '76800 (foreach inconsistent if array modified during loop).
- Fixed bug '76901 (method_exists on SPL iterator passthrough method corrupts memory).
CURL:
- Fixed bug '76480 (Use curl_multi_wait() so that timeouts are respected).
iconv:
- Fixed bug '66828 (iconv_mime_encode Q-encoding longer than it should be).
Opcache:
- Fixed bug '76832 (ZendOPcache.MemoryBase periodically deleted by the OS).
- Fixed bug '76796 (Compile-time evaluation of disabled function in opcache causes segfault).
POSIX:
- Fixed bug '75696 (posix_getgrnam fails to print details of group).
Reflection:
- Fixed bug '74454 (Wrong exception being thrown when using ReflectionMethod).
Standard:
- Fixed bug '73457 (Wrong error message when fopen FTP wrapped fails to open data connection).
- Fixed bug '74764 (Bindto IPv6 works with file_get_contents but fails with stream_socket_client).
- Fixed bug '75533 (array_reduce is slow when $carry is large array).
XMLRPC:
- Fixed bug '76886 (Can't build xmlrpc with expat).
Zlib:
- Fixed bug '75273 (php_zlib_inflate_filter() may not update bytes_consumed).
What's New in version 5.5.11:
Core:
- Allow zero length comparison in substr_compare() (Tjerk)
- Fixed bug #60602 (proc_open() changes environment array) (Tjerk)
SPL:
- Added feature #65545 (SplFileObject::fread()) (Tjerk)
cURL:
- Fixed bug #66109 (Can't reset CURLOPT_CUSTOMREQUEST to default behaviour) (Tjerk)
- Fix compilation on libcurl versions between 7.10.5 and 7.12.2, inclusive. (Adam)
FPM:
- Added clear_env configuration directive to disable clearenv() call. (Github PR# 598, Paul Annesley)
Fileinfo:
- Fixed bug #66946 (fileinfo: extensive backtracking in awk rule regular expression). (CVE-2013-7345) (Remi)
GD:
- Fixed bug #66714 (imageconvolution breakage). (Brad Daily)
- Fixed bug #66869 (Invalid 2nd argument crashes imageaffinematrixget) (Pierre)
- Fixed bug #66887 (imagescale - poor quality of scaled image). (Remi)
- Fixed bug #66890 (imagescale segfault). (Remi)
- Fixed bug #66893 (imagescale ignore method argument). (Remi)
Hash:
- hash_pbkdf2() now works correctly if the $length argument is not specified. (Nikita)
Intl:
- Fixed bug #66873 (A reproductible crash in UConverter when given invalid encoding) (Stas)
Mail:
- Fixed bug #66535 (Don't add newline after X-PHP-Originating-Script) (Tjerk)
MySQLi:
- Fixed bug #66762 (Segfault in mysqli_stmt::bind_result() when link closed) (Remi)
OPCache:
- Added function opcache_is_script_cached(). (Danack)
- Added information about interned strings usage. (Terry, Julien, Dmitry)
Openssl:
- Fixed bug #66833 (Default disgest algo is still MD5, switch to SHA1). (Remi)
GMP:
- Fixed bug #66872 (invalid argument crashes gmp_testbit) (Pierre)
SQLite:
- Updated bundled libsqlite to 3.8.3.1 (Anatol)
What's new in version 5.5.10:
- Core: Fixed Request #66574i (Allow multiple paths in php_ini_scanned_path).
- Date: Fixed bug #45528 (Allow the DateTimeZone constructor to accept timezones per offset too).
- Fileinfo:
- Fixed bug #66731 (file: infinite recursion) (CVE-2014-1943).
- Fixed bug #66820 (out-of-bounds memory access in fileinfo).
- GD: Fixed bug #66815 (imagecrop(): insufficient fix for NULL defer CVE-2013-7327).
- JSON: Fixed bug #65753 (JsonSerializeable couldn't implement on module extension)
- LDAP: Implemented ldap_modify_batch (https://wiki.php.net/rfc/ldap_modify_batch). (Ondrej Hošek)
- Openssl: Fixed bug #66501 (Add EC key support to php_openssl_is_private_key). (Mark Zedwood)
- PCRE: Upgraded to PCRE 8.34.
- Pgsql: Added warning for dangerous client encoding and remove possible injections for pg_insert()/pg_update()/pg_delete()/pg_select().
What's new in version 5.5.9:
Core:
- Fixed bug #66509 (copy() arginfo has changed starting from 5.4). (willfitch)
GD:
- Fixed bug #66356 (Heap Overflow Vulnerability in imagecrop()). (Laruence, Remi)
OPCache:
- Fixed bug #66474 (Optimizer bug in constant string to boolean conversion). (Dmitry)
- FFixed bug #66461 (PHP crashes if opcache.interned_strings_buffer=0). (Dmitry)
- FFixed bug #66298 (ext/opcache/Optimizer/zend_optimizer.c has dos-style ^M as lineend). (Laruence)
PDO_pgsql:
- Fixed bug #62479 (PDO-psql cannot connect if password contains spaces) (willfitch, iliaa)
Readline:
- Fixed Bug #66412 (readline_clear_history() with libedit causes segfault after #65714). (Remi)
Session:
- Fixed bug #66469 (Session module is sending multiple set-cookie headers when session.use_strict_mode=1) (Yasuo)
- FFixed bug #66481 (Segfaults on session_name()). (cmcdermottroe at engineyard dot com, Yasuo)
Standard:
- Fixed bug #66395 (basename function doesn't remove drive letter). (Anatol)
Sockets:
- Fixed bug #66381 (__ss_family was changed on AIX 5.3). (Felipe)
Zend Engine:
- Fixed bug #66009 (Failed compilation of PHP extension with C++ std library using VS 2012). (Anatol)
What's New in version 5.5.7:
CLI server:
- Added some MIME types to the CLI web server (Chris Jones)
- Implemented FR #65917 (getallheaders() is not supported by the built-in web server) - also implements apache_response_headers() (Andrea Faulds)
Core:
- Fixed bug #66094 (unregister_tick_function tries to cast a Closure to a string). (Laruence)
OPCache
- Fixed bug #66176 (Invalid constant substitution). (Dmitry)
- Fixed bug #65915 (Inconsistent results with require return value). (Dmitry)
- Fixed bug #65559 (Opcache: cache not cleared if changes occur while running). (Dmitry)
OpenSSL:
- Fixed memory corruption in openssl_x509_parse() (CVE-2013-6420). (Stefan Esser).
readline
- Fixed Bug #65714 (PHP cli forces the tty to cooked mode). (Remi)
What's New in version 5.5.3:
- Openssl: Fixed UMR in fix for CVE-2013-4248.
What's New in version 5.5.1:
- Fixed bug #65254 (Exception not catchable when exception thrown in autoload with a namespace).
- Fixed bug #65088 (Generated configure script is malformed on OpenBSD). (Adam)
- Fixed bug #65108 (is_callable() triggers Fatal Error).
- Fixed bug #65035 (yield / exit segfault).
- Fixed bug #65161 (Generator + autoload + syntax error = segfault).
- hex2bin() raises E_WARNING for invalid hex string.
- Fixed bug #65226 (chroot() does not get enabled).
What's New in version 5.5.0:
- Added generators and coroutines.
- Added the finally keyword.
- Added a simplified password hashing API.
- Added support for constant array/string dereferencing.
- Added scalar class name resolution via ::class.
- Added support for using empty() on the result of function calls and other expressions.
- Added support for non-scalar Iterator keys in foreach.
- Added support for list() constructs in foreach statements.
- Added the Zend OPcache extension for opcode caching.
- The GD library has been upgraded to version 2.1 adding new functions and improving existing functionality.
- A lot more improvements and fixes.
What's New in version 5.3.10:
- Core: Fixed arbitrary remote code execution vulnerability reported by Stefan Esser, CVE-2012-0830. (Stas, Dmitry)
What's New in version 5.3.8:
Core:
- Fixed bug #55439 (crypt() returns only the salt for MD5). (Stas)
OpenSSL:
- Reverted a change in timeout handling restoring PHP 5.3.6 behavior, as the new behavior caused mysqlnd SSL connections to hang (#55283). (Pierre, Andrey, Johannes)
What's New in version 5.3.7:
Security Enhancements and Fixes in PHP 5.3.7:
- Updated crypt_blowfish to 1.2. (CVE-2011-2483)
- Fixed crash in error_log(). Reported by Mateusz Kocielski
- Fixed buffer overflow on overlog salt in crypt().
- Fixed bug #54939 (File path injection vulnerability in RFC1867 File upload filename). Reported by Krzysztof Kotowicz. (CVE-2011-2202)
- Fixed stack buffer overflow in socket_connect(). (CVE-2011-1938)
- Fixed bug #54238 (use-after-free in substr_replace()). (CVE-2011-1148)
Key enhancements in PHP 5.3.7 include:
- Upgraded bundled Sqlite3 to version 3.7.7.1
- Upgraded bundled PCRE to version 8.12
- Fixed bug #54910 (Crash when calling call_user_func with unknown function name)
- Fixed bug #54585 (track_errors causes segfault)
- Fixed bug #54262 (Crash when assigning value to a dimension in a non-array)
- Fixed a crash inside dtor for error handling
- Fixed bug #55339 (Segfault with allow_call_time_pass_reference = Off)
- Fixed bug #54935 php_win_err can lead to crash
- Fixed bug #54332 (Crash in zend_mm_check_ptr // Heap corruption)
- Fixed bug #54305 (Crash in gc_remove_zval_from_buffer)
- Fixed bug #54580 (get_browser() segmentation fault when browscap ini directive is set through php_admin_value)
- Fixed bug #54529 (SAPI crashes on apache_config.c:197)
- Fixed bug #54283 (new DatePeriod(NULL) causes crash).
- Fixed bug #54269 (Short exception message buffer causes crash)
- Fixed Bug #54221 (mysqli::get_warnings segfault when used in multi queries)
- Fixed bug #54395 (Phar::mount() crashes when calling with wrong parameters)
- Fixed bug #54384 (Dual iterators, GlobIterator, SplFileObject and SplTempFileObject crash when user-space classes don't call the parent constructor)
- Fixed bug #54292 (Wrong parameter causes crash in SplFileObject::__construct())
- Fixed bug #54291 (Crash iterating DirectoryIterator for dir name starting with \0)
- Fixed bug #54281 (Crash in non-initialized RecursiveIteratorIterator)
- Fixed bug #54623 (Segfault when writing to a persistent socket after closing a copy of the socket)
- Fixed bug #54681 (addGlob() crashes on invalid flags)
- Over 80 other bug fixes.
What's New in version 5.3.6:
- Upgraded bundled Sqlite3 to version 3.7.4. (Ilia)
- Upgraded bundled PCRE to version 8.11. (Ilia)
What's New in version 5.3.5:
- Fixed Bug #53632 (infinite loop with x87 fpu). (Scott, Rasmus)
What's New in version 5.3.4:
- Upgraded bundled Sqlite3 to version 3.7.3. (Ilia)
- Upgraded bundled PCRE to version 8.10. (Ilia)
Security enhancements:
- Fixed crash in zip extract method (possible CWE-170). (Maksymilian Arciemowicz, Pierre)
- Paths with NULL in them (foo\0bar.txt) are now considered as invalid. (Rasmus)
- Fixed a possible double free in imap extension (Identified by Mateusz Kocielski). (CVE-2010-4150). (Ilia)
- Fixed NULL pointer dereference in ZipArchive::getArchiveComment. (CVE-2010-3709). (Maksymilian Arciemowicz)
- Fixed possible flaw in open_basedir (CVE-2010-3436). (Pierre)
- Fixed MOPS-2010-24, fix string validation. (CVE-2010-2950). (Pierre)
- Fixed symbolic resolution support when the target is a DFS share. (Pierre)
- Fixed bug #52929 (Segfault in filter_var with FILTER_VALIDATE_EMAIL with large amount of data) (CVE-2010-3710). (Adam)
General improvements:
- Added stat support for zip stream. (Pierre)
- Added follow_location (enabled by default) option for the http stream support. (Pierre)
- Improved support for is_link and related functions on Windows. (Pierre)
- Added a 3rd parameter to get_html_translation_table. It now takes a charset hint, like htmlentities et al. (Gustavo)
Implemented feature requests:
- Implemented FR #52348, added new constant ZEND_MULTIBYTE to detect zend multibyte at runtime. (Kalle)
- Implemented FR #52173, added functions pcntl_get_last_error() and pcntl_strerror(). (nick dot telford at gmail dot com, Arnaud)
- Implemented symbolic links support for open_basedir checks. (Pierre)
- Implemented FR #51804, SplFileInfo::getLinkTarget on Windows. (Pierre)
- Implemented FR #50692, not uploaded files don't count towards max_file_uploads limit. As a side improvement, temporary files are not opened for empty uploads and, in debug mode, 0-length uploads. (Gustavo)