| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
Related to GH-6701
|
|
|
|
| |
Closes GH-6691
|
|
|
|
|
|
|
| |
We're starting to see a mix between uses of zend_bool and bool.
Replace all usages with the standard bool type everywhere.
Of course, zend_bool is retained as an alias.
|
|
|
|
|
|
|
|
|
| |
This testing mode executes the test multiple times in the same
process (but in different requests). It is primarily intended to
catch tracing JIT bugs, but also catches state leaks across
requests.
Closes GH-6365.
|
| |
|
|
|
|
| |
Closes GH-6278.
|
|
|
|
|
| |
This should fix most of the remaining issues with tabs and spaces
being mixed in tests.
|
|
|
|
|
|
|
|
|
| |
Voidification of Zend API which always succeeded
Use bool argument types instead of int for boolean arguments
Use bool return type for functions which return true/false (1/0)
Use zend_result return type for functions which return SUCCESS/FAILURE as they don't follow normal boolean semantics
Closes GH-6002
|
|
|
|
| |
Closes GH-6004
|
| |
|
| |
|
|
|
|
| |
Closes GH-5958
|
|
|
|
| |
Closes GH-5950
|
|\
| |
| |
| |
| |
| | |
* PHP-7.4:
Check ps -p availability in process title test
Add privilege check in pcntl_unshare test
|
| |
| |
| |
| | |
Privileges for CLONE_NEWPID were not checked.
|
|\ \
| |/
| |
| |
| |
| |
| |
| | |
* PHP-7.4:
Check ps -p availability in proc_nice test
Set AI_CANONNAME flag in socket_addrinfo test
Add ipv6 skipif to test
Improve privilege check in pcntl_setpriority() test
|
| |
| |
| |
| |
| | |
We need CAP_SYS_NICE privileges, which might not be available
just because we're running as root (Docker...)
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Closes GH-5758
|
| |
| |
| |
| | |
Closes GH-5779
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The hash is used to check whether the arginfo file needs to be
regenerated. PHP-Parser will only be downloaded if this is actually
necessary.
This ensures that release artifacts will never try to regenerate
stubs and thus fetch PHP-Parser, as long as you do not modify any
files.
Closes GH-5739.
|
| |
| |
| |
| | |
In ext/ffi, ext/intl, ext/mysqli, and ext/pcntl
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
A time limit can be set on PHP script execution via `set_time_limit` (or .ini file).
When the time limit is reached, the OS will notify PHP and `timed_out` and `vm_interrupt`
flags are set. While these flags are regularly checked when executing PHP code, once the
end of the script is reached, they are not checked while invoking shutdown functions
(registered via `register_shutdown_function`).
Of course, if the shutdown functions are implemented *in* PHP, then the interrupt flag
will be checked while the VM is running PHP bytecode and the timeout will take effect.
But if the shutdown functions are built-in (implemented in C), it will not.
Since the shutdown functions are invoked through `zend_call_function`, add a check of the
`vm_interrupt` flag there. Then, the script time limit will be respected when *entering*
each shutdown function. The fact still remains that if a shutdown function is built-in and
runs for a long time, script execution will not time out until it finishes and the
interpreter tries to invoke the next one.
Still, the behavior of scripts with execution time limits will be more consistent after
this patch. To make the execution time-out feature work even more precisely, it would
be necessary to scrutinize all the built-in functions and add checks of the `vm_interrupt`
flag in any which can run for a long time. That might not be worth the effort, though.
It should be mentioned that this patch does not solely affect shutdown functions, neither
does it solely allow for interruption of running code due to script execution timeout.
Anything else which causes `vm_interrupt` to be set, such as the PHP interpreter receiving
a signal, will take effect when exiting from an internal function. And not just internal
functions which are called because they were registered to run at shutdown; there are
other cases where a series of internal functions might run in the midst of a script. In
all such cases, it will be possible to interrupt the interpreter now.
Closes GH-5543.
|
| |
| |
| |
| |
| | |
Converts ext/pcntl, ext/simplexml, ext/snmp, ext/soap, ext/sqlite3.
Closes GH-5421
|
| |
| |
| |
| | |
By casting to void*. I don't want to deal with this right now.
|
| |
| |
| |
| |
| |
| |
| | |
Closes GH-5353. From now on, PHP will have reflection information
about default values of parameters of internal functions.
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
|
| | |
|
| |
| |
| |
| | |
Closes GH-5187
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
Instead add RETURN_COPY(_VALUE) macros will the expected behavior.
RETURN_ZVAL doesn't make any sense since PHP 7, but has stuck
around, probably because the alternative was to write directly to
the return_value variable.
|
| | |
|
| | |
|
| | |
|
| |
| |
| |
| | |
Except for some bigger ones: reflection, sodium, spl
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Fix #78402: pcntl_signal() misleading error message
|
| |\
| | |
| | |
| | |
| | | |
* PHP-7.3:
Fix #78402: pcntl_signal() misleading error message
|
| | |
| | |
| | |
| | |
| | | |
An error message can be misleading when a handler
passed to pcntl_signal() is not callable.
|
| | | |
|
| | | |
|
| | | |
|
|\ \ \
| |/ /
| | |
| | |
| | |
| | |
| | |
| | | |
* PHP-7.4:
Skip large ftruncate test if large files not supported
Don't test "blocks" in lstat_stat_variation7.phpt
Increase FD used in php://fd test
Use posix_getuid() to check for root in pcntl_setpriority() test
|
| | |
| | |
| | |
| | |
| | | |
Using SUDO_USER doesn't seem to work on Travis ARM CI -- I guess
that sudo might be in use without the target being root.
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | |
| | | |
If no explicit restart_syscalls is passed, default to
restart_syscalls=0 for SIGALRM only, to reduce BC impact.
|
| | |
| | |
| | |
| | | |
Closes GH-4732.
|
| | | |
|
| | |
| | |
| | |
| | | |
Fix some indentation issues and make sure zpp is used consistently.
|