This warning was about a possible loss of data due to the downcast of `php_socket_t` to `int`. The former maps to a platform specific type, hence, it might downcast from a 64 bit integer to a 32 bit intger.
Fixed possibly overflowing vars
Due to the change from `int` to `php_socket_t` some variables might overflow now. Changed all variables that might be affected.
Revert "Fixed possibly overflowing vars"
This reverts commit bf64fd5984.
Use aliased PHP socket type
Using the alias protects us from changes to the underlying type.
Removed ignored nfds argument
The `nfds` argument to the Win32 `select` function is always ignored, regardless of its actual value. Hence, we should not pass it in the first place. See https://msdn.microsoft.com/en-us/library/windows/desktop/ms740141(v=vs.85).aspx for reference.
Target value is not a pointer
Avoid overflow in loop
FPM must be configured as a user.
Normally it defaults to the current user,
but if that's root it'll fail to startup
unless the --run-as-root option is provided.
Extend that logic into the test runner so that
we don't fail for stupid reasons.
If you're running `make test` as root and you want
FPM tests to run anyway, set TEST_FPM_RUN_AS_ROOT=1
in your environment.
* hybrid-vm:
Cleanup
Fixed zend_vm_call_opcode_handler(). Make phpdbg work with HYBRID VM.
Added missing ZEND_VM_HOT define
Implemented HYBRID VM instruction dispatch method that takes advantages of both CALL and GOTO VMs.
* Correctly identify unused speculative preconnections from browsers
like Chrome and Firefox
* Add a new message to the debug level that is emitted when a TCP
connection is closed without sending any request (a preconnection)
* Fix an issue where the existing debug messages were not being
displayed even when debug mode was enabled
https://bugs.php.net/bug.php?id=74166
A host system with no/limited IPv6 support will fail at binding
the IPv6 ANYADDR address (::) as the address family is unsupported.
Deal with this by handling failure to implicitly bind to ::
as a soft failure, falling back to 0.0.0.0.
If binding to :: failed for some other reason (e.g. port in use)
then binding to 0.0.0.0 will likely fail as well, but we'll
get appropriate warnings for that.
Hereby, interned strings are supported in thread safe PHP. The patch
implements two types of interned strings
- interning per process, strings are not freed till process end
- interning per request, strings are freed at request end
There is no runtime interning.
With Opcache, all the permanent iterned strings are copied into SHM on
startup, additional copying into SHM might happen on demand.