Commit Graph

1505 Commits

Author SHA1 Message Date
Nikita Popov
c9d4696f76 Merge branch 'PHP-7.4' 2019-10-07 16:32:42 +02:00
Nikita Popov
f085bddb51 Fix number of required arguments in arginfo
* pack() only requires one argument
* stream_context_set_option() only requires two arguments
* ReflectionMethod::getClosure() accepts no args for static methods
* DOMDocument::createProcessingInstruction() only requires one arg
* DOMImplementation::createDocument() only requires two arguments
* DOMDocument::importNode() only requires one arg
* mysql_get_client_version() doesn't accept any args,
  despite what the docs say...
2019-10-07 16:32:11 +02:00
theodorejb
ef9736e062 Convert string function arginfo to PHP stubs 2019-10-07 11:13:16 +02:00
Nikita Popov
647b1c7fcf Remove most uses of ZEND_PARSE_PARAMETERS_END_EX()
As ZPP now throws, it makes no sense to specify an explicit return
value.
2019-10-07 10:02:18 +02:00
Nikita Popov
1cde9e8528 Merge branch 'PHP-7.4' 2019-09-30 10:30:20 +02:00
Nikita Popov
1806ce9cb0 Add max_depth option to unserialize()
Add a max_depth option to unserialize and an unserialize_max_depth
ini setting, which can be used to control the depth limit. The
default value is 4096.

This option is intended to prevent stack overflows during the
unserialization of deeply nested structures.

This fixes bug #78549 and addresses oss-fuzz #17581, #17589, #17664,
and #17788.
2019-09-30 10:28:24 +02:00
Gabriel Caruso
5d6e923d46
Remove mention of PHP major version in Copyright headers
Closes GH-4732.
2019-09-25 14:51:43 +02:00
Nikita Popov
96840a280f Add debugging code to usleep()
To see if intermittent CI failures are caused by a signal interrupt.
2019-09-18 10:13:35 +02:00
Burak Çakırel
d2210dc2ea Add assert arginfo stubs
Closes GH-4619.
2019-08-26 15:41:31 +02:00
Theodore Brown
d5f42d68c8 Convert remaining array function arginfo to PHP stubs 2019-08-26 12:53:00 +02:00
Olumide Samson
b9c961e160 Add some header and html function stub 2019-08-25 15:27:58 +02:00
inem0o
baeb10d736 Add sha1 arginfo stubs 2019-08-19 12:35:53 +02:00
inem0o
8150c65ae4 Add pageinfo arginfo stubs 2019-08-19 11:29:22 +02:00
inem0o
b7c4d8e846 Add metaphone arginfo stubs 2019-08-19 11:18:44 +02:00
inem0o
ff7900f551 Add md5 arginfo stubs 2019-08-19 09:41:46 +02:00
inem0o
f795bdfd30 Add lcg arginfo stubs 2019-08-16 12:56:07 +02:00
inem0o
f1eca42825 Add ftok arginfo stubs 2019-08-16 12:53:11 +02:00
Theodore Brown
e2b0fb946b Add hrtime arginfo stubs 2019-08-14 16:46:10 +02:00
jason-liew
ffffaf12cf add some stubs for array func in basic_functions 2019-08-14 15:27:58 +02:00
Nikita Popov
8c927442b4 Merge branch 'PHP-7.4' 2019-08-13 14:54:57 +02:00
Islam Israfilov
1dc88ff67e Add inet_ntop and inet_pton stubs 2019-08-13 14:52:14 +02:00
Nikita Popov
fdfc7ea932 Don't return persistent string from get_cfg_var()
This is not thread-safe.
2019-08-13 14:50:01 +02:00
inem0o
ccf79547af Add crypt() function's stub
Closes GH-4515.
2019-08-13 11:28:32 +02:00
inem0o
fb363f7f00 add syslog arginfo stubs 2019-08-13 09:58:26 +02:00
inem0o
1376f61aed Add crc32 stub 2019-08-11 18:33:58 +02:00
inem0o
b98bc5bd92 Add base64_encode / base64_decode stubs
Closes GH-4504.
2019-08-10 17:40:10 +02:00
Nikita Popov
d9e2d18505 Add some basic_functions stubs 2019-08-10 12:34:29 +02:00
Nikita Popov
33886f710c Generate arginfo from PHP stub files
Signature stubs for internal functions are specified in xyz.stub.php,
from which we generate actual arginfo structures in xyz_arginfo.h.
This file then needs to be included in the implementation appropriately.

Arginfo from stubs can be regenerated using scripts/dev/gen_stub.php.
However, this should also automatically happen when the stub file is
modified.
2019-08-09 14:51:25 +02:00
Nikita Popov
36db71df47 Merge branch 'PHP-7.4' 2019-07-22 12:28:40 +02:00
Nikita Popov
964de035a7 Deprecate restore_include_path() 2019-07-22 11:39:52 +02:00
Nikita Popov
b3668aabf7 Deprecate convert_cyr_string() 2019-07-22 11:39:52 +02:00
Nikita Popov
4e190691e2 Deprecate is_real() function 2019-07-22 11:39:52 +02:00
Nikita Popov
b1cdf06673 Deprecate money_format() 2019-07-22 11:39:52 +02:00
Nikita Popov
4e4d8a4a6c Deprecate hebrevc() 2019-07-22 11:39:52 +02:00
Nikita Popov
e9e2fa4ad4 Deprecate ezmlm_hash() 2019-07-22 11:39:52 +02:00
Nikita Popov
b2ea507bea Deprecate get_magic_quotes_gpc() and get_magic_quotes_runtime() 2019-07-22 11:39:52 +02:00
Nikita Popov
3faa903d47 Merge branch 'PHP-7.4' 2019-07-16 16:44:46 +02:00
Nikita Popov
49bac9b77b Introduce zend_stream_init_filename()
Avoid more ad-hoc initialization of zend_file_handle structures.
2019-07-16 16:44:37 +02:00
Peter Kokot
7f994990ea Merge branch 'PHP-7.4'
* PHP-7.4:
  Remove HAVE_STRCOLL check
2019-06-28 00:13:25 +02:00
Peter Kokot
638c21765c Remove HAVE_STRCOLL check
The strcoll function is defined in the C89 standard and should be
on today's systems always available via the <string.h> header.

https://port70.net/~nsz/c/c89/c89-draft.html#4.11.4.3

- Remove also SKIPIF strcoll check in test
2019-06-28 00:05:55 +02:00
Joe Watkins
3d759e11a0
Merge branch 'PHP-7.4'
* PHP-7.4:
  Use uint64_t for time_sleep_until calculations
2019-06-16 19:20:37 +02:00
Nikita Popov
4befe320e3
Use uint64_t for time_sleep_until calculations 2019-06-16 19:20:08 +02:00
Nikita Popov
d3ed9d8192 Make sure array_splice() always returns an array
Return an array even if the return value isn't used. This allows us
to add the arginfo return type.
2019-06-05 14:56:32 +02:00
Nikita Popov
7686b0b889 Merge branch 'PHP-7.4' 2019-06-05 14:53:50 +02:00
Nikita Popov
a31f46421d Allow exceptions in __toString()
RFC: https://wiki.php.net/rfc/tostring_exceptions

And convert some object to string conversion related recoverable
fatal errors into Error exceptions.

Improve exception safety of internal code performing string
conversions.
2019-06-05 14:25:07 +02:00
Gabriel Caruso
192170a39a Add return type to some array_* functions 2019-06-05 00:13:52 -03:00
Gabriel Caruso
7393777da9 Add return type for string functions 2019-06-01 11:52:06 -03:00
Gabriel Caruso
f3f159a779 Add double return type for math functions 2019-06-01 11:52:06 -03:00
Gabriel Caruso
edd7fb2a16 Add boolean return type for is_* functions 2019-05-30 13:55:36 -03:00
Nikita Popov
d95c15e371 Update MAY_BE_NULL for parts of ext/standard
Also update proto comments to be more accurate.
2019-05-28 12:11:32 +02:00