Commit Graph

75225 Commits

Author SHA1 Message Date
Anatol Belski
b6bcae5c10 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix dir separator in cve-2013-6420 test
2013-12-11 13:33:16 +01:00
Anatol Belski
ff89066b3d Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  fix dir separator in cve-2013-6420 test
2013-12-11 13:32:49 +01:00
Ard Biesheuvel
bec62af141 Merge branch 'PHP-5.4' into PHP-5.5 2013-12-11 08:50:53 +01:00
Ard Biesheuvel
8f1fee61e2 Zend: fix overflow handling bug in non-x86 fast_add_function()
The 'result' argument of fast_add_function() may alias with either
of its operands (or both). Take care not to write to 'result' before
reading op1 and op2.
2013-12-11 08:50:20 +01:00
Stanislav Malyshev
41cd533298 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  5.3.29-dev
  Fix CVE-2013-6420 - memory corruption in openssl_x509_parse
2013-12-10 11:35:26 -08:00
Stanislav Malyshev
b1b23abc86 Merge branch 'PHP-5.4' of git.php.net:php-src into PHP-5.4
* 'PHP-5.4' of git.php.net:php-src:
  Fixed Bug #66218 zend_register_functions breaks reflection
2013-12-10 11:34:45 -08:00
Stanislav Malyshev
71daf3229b Merge branch 'PHP-5.3' into PHP-5.4
* PHP-5.3:
  5.3.29-dev
  Fix CVE-2013-6420 - memory corruption in openssl_x509_parse

Conflicts:
	configure.in
	main/php_version.h
2013-12-10 11:34:35 -08:00
Remi Collet
bc8f7761f3 NEWS 2013-12-10 16:10:02 +01:00
Remi Collet
9f4d1ee51c Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed Bug #66218 zend_register_functions breaks reflection
2013-12-10 16:09:41 +01:00
Remi Collet
3e963f8eb4 Fixed Bug #66218 zend_register_functions breaks reflection
Functions registered using zend_register_functions instead of zend_module_entry.functions are not seen on reflection.

Ex: additional_functions from api_module_entry.
Ex: in CLI, dl, cli_set_process_title and cli_get_process_title

Note:
- also affects functions overrided in extension
  (should be be reported in extension, where overrided, not in original extension)
- also allow extension to call zend_register_functions for various list
  (instead of having a single bug list)
2013-12-10 16:07:16 +01:00
Dmitry Stogov
552e8b2b4c Fixed bug #66112 (Use after free condition in SOAP extension). (martin dot koegler at brz dot gv dot at) 2013-12-10 17:57:05 +04:00
Dmitry Stogov
a46f644b3a Revered func_get_args() changes, because they were not completly transparent and broke some tricky PHP code that worked because of luck before php-5.5.6 (see Bug #66107). The changes are going to be kept in PHP-5.6. 2013-12-10 16:02:59 +04:00
Dmitry Stogov
a6516653b7 Arguments passed to user function have to be properly allocated on heap 2013-12-10 13:00:45 +04:00
Stanislav Malyshev
744f35d2ab Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Replace invalid code with a proper #error
2013-12-08 15:52:56 -08:00
Lior Kaplan
c062c18d42 Replace invalid code with a proper #error
This code creates a nasty error as mentioned in bugs #31131, #37062
Patch taken from Debian's PHP package: 044-strtod_arm_fix
2013-12-08 15:49:22 -08:00
Adam Harvey
a0955f351c Switch to using freetype-config for freetype detection.
This fixes GD compilation against libfreetype 2.5.1 and later after they made
the rather interesting decision to change their include directory layout in a
point release.

The original suggestion in the bug was to use pkg-config, but my inclination is
to use freetype-config instead: we should be able to get the same configuration
information without actually needing pkg-config installed, since pkg-config is
by no means guaranteed to exist on many Unices and distros, whereas
freetype-config should always be present if a libfreetype build environment is
installed. Let's try it out and see what happens.

Fixes bug #64405 (Use freetype-config for determining freetype2 dir(s)).
2013-12-07 19:39:40 -08:00
Michael Wallner
51f01a43a7 BFN 2013-12-06 10:39:02 +01:00
Michael Wallner
a48d82d238 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed bug #61645 (fopen and O_NONBLOCK)
  fix possibly uninitialized value
2013-12-06 10:33:10 +01:00
Michael Wallner
b5f5bff965 Fixed bug #61645 (fopen and O_NONBLOCK)
if a mode like "rn" was passed to fopen(), then
php_stream_parse_fopen_modes() would assign O_WRONLY to
flags, because O_NONBLOCK tainted flags for the r/w/+ check
2013-12-06 10:29:24 +01:00
Michael Wallner
098d2a5d0f fix possibly uninitialized value 2013-12-06 10:27:33 +01:00
Sara Golemon
32a4cc8353 Use 'user@example.com' rather than 'user@company.com' in tests
Using some arbitrary 3rd party's domain name is clowny,
even if it never tries to send.
2013-12-04 07:49:16 -08:00
Andrey Hristov
ceb1b7e20f Merge branch 'PHP-5.4' into PHP-5.5 2013-12-04 12:07:18 +02:00
Andrey Hristov
86aad97979 Fix loss of precision 2013-12-04 12:06:59 +02:00
Sara Golemon
00a7b1ff7f Fix php_module_startup() when loading more than one additional module
Dereferencing addition_modules within php_module_startup would
point to a vector entirely on the stack (which is of course, wrong).

Use a specialized helper to keep BC with the current php_module_startup()
calling semantics.

Fixes 63159
Thanks to @a-j-k
2013-12-03 18:20:19 -08:00
Adam Harvey
6f52f566f3 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Remove 128.0.0.0/16 and 191.255.0.0/16 from the reserved list.
2013-12-03 14:51:03 -08:00
Adam Harvey
d1314893fd Remove 128.0.0.0/16 and 191.255.0.0/16 from the reserved list.
These were returned to the general allocation pool by RFC 3330, and hence
shouldn't cause an IP address validation failure due to being reserved. At
least 128.0.0.0/16 is in use on the public Internet today.

Fixes bug #66229 (128.0.0.0/16 isn't reserved any longer).
2013-12-03 14:46:15 -08:00
Michael Wallner
ffbb56685f BFN 2013-12-02 17:02:01 +01:00
Michael Wallner
9c0a70c1de Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fix bug #65196
2013-12-02 17:01:25 +01:00
Michael Wallner
22fa3fbc5f Fix bug #65196
Passing DOMDocumentFragment to DOMDocument::saveHTML()
produces invalid markup, because a DocumentFragment is just a container
for child nodes and not a real node itself.
2013-12-02 17:00:13 +01:00
Michael Wallner
6eae927413 BFN 2013-12-02 12:14:26 +01:00
Michael Wallner
e4b310d2a9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  fix bug #49634x
2013-12-02 12:10:59 +01:00
Michael Wallner
6408a1a59e fix bug #49634x 2013-12-02 12:10:00 +01:00
Dmitry Stogov
2f5ab04c5f Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed tests
2013-12-02 12:04:07 +04:00
Dmitry Stogov
edbefd1d5c Fixed tests 2013-12-02 11:53:35 +04:00
Dmitry Stogov
7efcbecda9 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Fixed ability to build non-specialized GOTO VM

Conflicts:
	Zend/zend_vm_gen.php
2013-12-02 11:02:40 +04:00
Dmitry Stogov
9ed605892d Fixed ability to build non-specialized GOTO VM 2013-12-02 10:59:32 +04:00
Nikita Popov
02dca18b90 Fix bug #65764
I'm not exactly sure whether this is the right way to fix it. The
question is whether Generator::throw() on a newborn generator (i.e.
a generator that is not yet at yield expression) should first advance to
the first yield and throw the exception there or whether it should
instead throw the exception in the caller's context.

The old behavior was to throw it at the start of the function (i.e.
the very first opcode), which causes issues like the one in #65764.
Effectively it's impossible to properly handle the exceptions in this
case.

For now I choose the variant where the generator advances to the
first yield before throwing, as that's consistent with how all other
methods on the Generator object currently behave. This does not
necessarily match the behavior in other languages, e.g. Python would throw
the exception in the caller's context. But then our send() method already
has this kind of deviation, so it stays internally consistent at least.
2013-12-01 13:37:56 +01:00
Felipe Pena
af60886962 - BFN 2013-11-30 12:05:51 -02:00
Felipe Pena
dbc477374c Merge branch 'PHP-5.5' of git.php.net:/php-src into PHP-5.5 2013-11-30 11:44:08 -02:00
Felipe Pena
78f69a2b4f - Fixed bug #65923 (ext/socket assumes AI_V4MAPPED is defined) 2013-11-30 11:39:57 -02:00
Nikita Popov
b4f00be6c4 Cleanup generator closing code a bit
All code dealing with unfinished execution cleanup is now in a separate
function (previously most of it was run even when execution was properly
finished.

Furthermore some code dealing with unclean shutdowns has been removed,
which is no longer necessary, because we no longer try to clean up in
this case.
2013-11-30 13:38:21 +01:00
Nikita Popov
9589cae8cb Fixed bug #66041: list() fails to unpack yielded ArrayAccess object
Yield return values now use IS_VAR rather than IS_TMP_VAR. This
fixes the issue with list() and should also be faster as it avoids
doing a zval copy.
2013-11-30 13:08:31 +01:00
nikita2206
5f09944662 Fixed bug #65768: DateTimeImmutable::diff does not work
This commit also prevents user classes from directly implementing
DateTimeInterface, because ext/date relies on classes implementing
it to support certain internal structures.
2013-11-29 23:31:07 +01:00
Dmitry Stogov
967abd6153 Merge branch 'PHP-5.4' into PHP-5.5
* PHP-5.4:
  Added validation of class names in the autoload process
2013-11-29 12:54:22 +04:00
Dmitry Stogov
2d31eadbbf Added validation of class names in the autoload process 2013-11-29 12:53:02 +04:00
Derick Rethans
b0d24d3d20 Merge branch 'PHP-5.4' into PHP-5.5 2013-11-28 16:33:08 +00:00
Derick Rethans
d22cc5c816 Fixed bug #65199 (Wrong Day of Week) and fixed bug #63391 (Incorrect/inconsistent day of week prior to the year 1600) 2013-11-28 16:32:11 +00:00
Derick Rethans
88067b6e60 Merge branch 'PHP-5.4' into PHP-5.5
Conflicts:
	ext/date/php_date.c
2013-11-28 14:30:08 +00:00
Derick Rethans
c1eb219aad Merge branch 'date-time-dst-rfc' into PHP-5.4
This is a partial resolve of some DST issues, plenty of things to do, but as
this *does* fix a few issues it's worth merging it already.
2013-11-28 14:26:01 +00:00
Derick Rethans
aab0b2ce3b Marking those two as XFAIL for now. 2013-11-28 14:24:39 +00:00