]>
granicus.if.org Git - php/log
Christoph M. Becker [Thu, 20 Jun 2019 21:40:51 +0000 (23:40 +0200)]
Support TGA reading
We add PHP bindings for libgd's features to read TGA files, which are
available as of libgd 2.1.0.
As PHP's bundled libgd doesn't yet include the respective features of the
external libgd, we add these.
Since TGA has no easily recognizable file signature, we don't add TGA
support for imagecreatefromstring() or getimagesize() and friends.
Christoph M. Becker [Thu, 20 Jun 2019 16:01:02 +0000 (18:01 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #78189: file cache strips last character of uname hash
Christoph M. Becker [Thu, 20 Jun 2019 15:59:07 +0000 (17:59 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fix #78189: file cache strips last character of uname hash
Christoph M. Becker [Thu, 20 Jun 2019 15:53:10 +0000 (17:53 +0200)]
Fix #78189: file cache strips last character of uname hash
We must not forget to increase `len` by one to cater to the directory
separator.
Nikita Popov [Thu, 20 Jun 2019 14:46:26 +0000 (16:46 +0200)]
Remove leftover check
This is checked below now in a way that handles misaligned pointers.
Nikita Popov [Thu, 20 Jun 2019 14:13:16 +0000 (16:13 +0200)]
Handle misaligned ifreq on macos
Nikita Popov [Thu, 20 Jun 2019 14:06:54 +0000 (16:06 +0200)]
Handle gr_mem misalignment on macos
Christoph M. Becker [Thu, 20 Jun 2019 15:00:33 +0000 (17:00 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Update NEWS
Christoph M. Becker [Thu, 20 Jun 2019 14:59:39 +0000 (16:59 +0200)]
Update NEWS
Christoph M. Becker [Thu, 20 Jun 2019 14:54:17 +0000 (16:54 +0200)]
Rename test file to reflect the appropriate ticket number
Nikita Popov [Thu, 20 Jun 2019 13:48:48 +0000 (15:48 +0200)]
Check for dlsym as well
For some reason, when using GCC with address sanitizer, dlopen
is available without -ldl, but dlsym still needs it. Explicitly check
dlsym so we add the library.
Nikita Popov [Thu, 20 Jun 2019 12:14:46 +0000 (14:14 +0200)]
Handle gethostbyname misalignment on macos
Nikita Popov [Thu, 20 Jun 2019 13:03:44 +0000 (15:03 +0200)]
SOAP: Avoid indexing into null pointer
Nikita Popov [Thu, 20 Jun 2019 12:52:12 +0000 (14:52 +0200)]
FFI: Use signed arithmetic for pointer offset
offset can be negative here, using signed arithmetic avoids ubsan
warnings.
Nikita Popov [Thu, 20 Jun 2019 12:09:18 +0000 (14:09 +0200)]
In php_needle_char() use well-defined double->integer cast
...by going through zval_get_long(). Generally out of range double
casts are undefined.
Nikita Popov [Thu, 20 Jun 2019 11:06:56 +0000 (13:06 +0200)]
Avoid address calculation overflow
Nikita Popov [Thu, 20 Jun 2019 10:18:54 +0000 (12:18 +0200)]
Bail out earlier in zend_memnrstr
To avoid decrementing a null pointer lateron. As we need to check
for NULL here anayway, we should take the chance to bail out right
away.
Nikita Popov [Thu, 20 Jun 2019 10:11:30 +0000 (12:11 +0200)]
Disable float division by zero sanitizer for div_function
We intentionally divide by zero here and want to get IEEE-754
semantics.
Nikita Popov [Thu, 20 Jun 2019 08:52:18 +0000 (10:52 +0200)]
Change indexing scheme for symtable_cache
symtable_cache_ptr now points to the first unused symtable_cache
entry, rahter than the last used one. This avoids taking a pointer
to the minus first element of the array, which is UB. Instead we
take a pointer to the end plus one, which is not UB.
Remi Collet [Thu, 20 Jun 2019 09:59:04 +0000 (11:59 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
fix test for Windows and for parallel run
Remi Collet [Thu, 20 Jun 2019 09:58:49 +0000 (11:58 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
fix test for Windows and for parallel run
Remi Collet [Thu, 20 Jun 2019 09:58:32 +0000 (11:58 +0200)]
fix test for Windows and for parallel run
Remi Collet [Thu, 20 Jun 2019 09:52:25 +0000 (11:52 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
improve test clean section
move NEWS entry
Remi Collet [Thu, 20 Jun 2019 09:51:51 +0000 (11:51 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
improve test clean section
Remi Collet [Thu, 20 Jun 2019 09:51:18 +0000 (11:51 +0200)]
improve test clean section
Remi Collet [Thu, 20 Jun 2019 08:41:21 +0000 (10:41 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
move NEWS entry
Remi Collet [Thu, 20 Jun 2019 08:40:52 +0000 (10:40 +0200)]
move NEWS entry
Nikita Popov [Thu, 20 Jun 2019 08:35:22 +0000 (10:35 +0200)]
Fix maybe uninit warning
Remi Collet [Thu, 20 Jun 2019 08:28:26 +0000 (10:28 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
add test for #78185
Remi Collet [Thu, 20 Jun 2019 08:28:00 +0000 (10:28 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
add test for #78185
Remi Collet [Thu, 20 Jun 2019 08:27:33 +0000 (10:27 +0200)]
add test for #78185
Nikita Popov [Thu, 20 Jun 2019 08:09:54 +0000 (10:09 +0200)]
imagecolorallocate(): Check that RGB components are in-range
Instead of letting them bleed over into other components.
Nikita Popov [Thu, 20 Jun 2019 07:57:55 +0000 (09:57 +0200)]
Avoid overflow in mul range calculation
By using ZEND_SIGNED_MULTIPLY_LONG, which already implemented
efficient overflow checking logic.
Nikita Popov [Wed, 19 Jun 2019 09:58:42 +0000 (11:58 +0200)]
Backport "Avoid UB in overflow checks"
Cherry-pick of
bb940d9969e08853d92a09f7a02adc3228cf1c2c without
the JIT parts.
Nikita Popov [Thu, 20 Jun 2019 07:49:07 +0000 (09:49 +0200)]
Avoid memset/memcpy null ub in block pass
The arena allocator has no problem with zero-size allocations (and
will just return the same pointer for each in this case), so just
do that to avoid null pointers.
Dmitry Stogov [Thu, 20 Jun 2019 06:07:39 +0000 (09:07 +0300)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fixed bug #78185 (File cache no longer works)
Dmitry Stogov [Thu, 20 Jun 2019 06:05:50 +0000 (09:05 +0300)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fixed bug #78185 (File cache no longer works)
Dmitry Stogov [Thu, 20 Jun 2019 06:04:14 +0000 (09:04 +0300)]
Fixed bug #78185 (File cache no longer works)
Nikita Popov [Wed, 19 Jun 2019 15:25:20 +0000 (17:25 +0200)]
Avoid signed shift ub in php_sdl
Nikita Popov [Wed, 19 Jun 2019 14:53:42 +0000 (16:53 +0200)]
Fix various instances of memcpy null ub
Nikita Popov [Wed, 19 Jun 2019 15:02:54 +0000 (17:02 +0200)]
Remove copy argument from php_glob_stream_get_path/pattern
This is unused, and shouldn't be part of the API.
Nikita Popov [Wed, 19 Jun 2019 14:42:17 +0000 (16:42 +0200)]
Suppress shift UB in gd_itofx()
There doesn't seem to be a corresponding upstream fix for this.
Andrey Hristov [Wed, 19 Jun 2019 15:17:35 +0000 (18:17 +0300)]
Merge branch 'PHP-7.4' of https://git.php.net/push/php-src into PHP-7.4
Nikita Popov [Wed, 19 Jun 2019 14:35:12 +0000 (16:35 +0200)]
Fixed bug #78182
Nikita Popov [Wed, 19 Jun 2019 13:57:57 +0000 (15:57 +0200)]
Suppress overflow UB in zend_strtod
Nikita Popov [Wed, 19 Jun 2019 13:55:56 +0000 (15:55 +0200)]
Fix shift UB in hash_snefru
Nikita Popov [Wed, 19 Jun 2019 13:50:52 +0000 (15:50 +0200)]
imageloadfont: Perform overflow check before calculation
Instead of afterwards...
Andrey Hristov [Wed, 19 Jun 2019 13:43:15 +0000 (16:43 +0300)]
Merge branch 'PHP-7.3' into PHP-7.4
Andrey Hristov [Wed, 19 Jun 2019 13:43:06 +0000 (16:43 +0300)]
Merge branch 'PHP-7.2' into PHP-7.3
Andrey Hristov [Wed, 19 Jun 2019 13:42:43 +0000 (16:42 +0300)]
Fix version comparison
Nikita Popov [Wed, 19 Jun 2019 13:41:45 +0000 (15:41 +0200)]
Fix buffer underflow in gd_gif_in.c
This has been fixed upstream in
https://github.com/libgd/libgd/commit/
939d49a3a9d1cbcd2a37cea9eac9f9e5e9f9de78 .
Nikita Popov [Wed, 19 Jun 2019 13:34:51 +0000 (15:34 +0200)]
Fix uninitialized variable
I mistakenly moved len1 initialization into the conditional as well.
Nikita Popov [Wed, 19 Jun 2019 13:06:48 +0000 (15:06 +0200)]
Fix shift UB in gd_io.c
This has already been fixed upstream in
https://github.com/libgd/libgd/commit/
24d352576c024769d18113a28f3be03d54fa1e66
and
https://github.com/libgd/libgd/commit/
772d0107a6b00a0d6d7191383fe984f8c018b48c .
Nikita Popov [Wed, 19 Jun 2019 13:03:22 +0000 (15:03 +0200)]
Fix shift UB in php_ifd_get32s
Nikita Popov [Wed, 19 Jun 2019 12:56:11 +0000 (14:56 +0200)]
Phar: Avoid negative zip dates
The zip date/time encoding format is incredibly stupid.
Nikita Popov [Wed, 19 Jun 2019 12:38:29 +0000 (14:38 +0200)]
Fix memcpy null UB in phar
Nikita Popov [Wed, 19 Jun 2019 12:35:44 +0000 (14:35 +0200)]
Fix shift UB in mbfilter_utf32.c
Nikita Popov [Wed, 19 Jun 2019 12:27:13 +0000 (14:27 +0200)]
Fix shift UB in sint4korr()
Nikita Popov [Wed, 19 Jun 2019 12:22:05 +0000 (14:22 +0200)]
Fix incorrect shift in mysqlnd_wireprotocol
This one looks like a genuine bug: We're shifting a uint16_t by
16 bits. On x86 that likely results in no shift happening.
Nikita Popov [Wed, 19 Jun 2019 12:12:54 +0000 (14:12 +0200)]
Fix overflow UB in range()
Nikita Popov [Wed, 19 Jun 2019 12:04:54 +0000 (14:04 +0200)]
Avoid memcpy UB in streams
Nikita Popov [Wed, 19 Jun 2019 12:03:34 +0000 (14:03 +0200)]
Avoid more UB in round()
Nikita Popov [Wed, 19 Jun 2019 11:48:20 +0000 (13:48 +0200)]
Use unsigned char in _crypt_extended_r
Avoid signed shift UB.
Nikita Popov [Wed, 19 Jun 2019 11:23:02 +0000 (13:23 +0200)]
Use unsigned chars in php_uuencode()
Avoid shift UB on signed integers.
Nikita Popov [Wed, 19 Jun 2019 11:18:23 +0000 (13:18 +0200)]
Fix _php_math_round UB
php_intlog10abs() is ill-defined for a zero value. Avoid calling it
altogether as there's nothing to round with a zero value.
Nikita Popov [Wed, 19 Jun 2019 11:11:07 +0000 (13:11 +0200)]
Fix memcpy null arg UB
Nikita Popov [Wed, 19 Jun 2019 10:59:18 +0000 (12:59 +0200)]
Fix signed shift UB
Nikita Popov [Wed, 19 Jun 2019 10:53:10 +0000 (12:53 +0200)]
Avoid overflow UB in is_numeric_string
We intentionally overflow the signed space here, so make this an
unsigned variable and only cast to signed at the end.
Nikita Popov [Wed, 19 Jun 2019 10:47:56 +0000 (12:47 +0200)]
Fix shift UB in constants
We were shifting out the top bit of a signed integer.
Joe Watkins [Wed, 19 Jun 2019 10:43:17 +0000 (12:43 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
fix setcookie Max-Age to use php_time
Joe Watkins [Wed, 19 Jun 2019 10:42:25 +0000 (12:42 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
fix setcookie Max-Age to use php_time
Joe Watkins [Wed, 19 Jun 2019 10:42:00 +0000 (12:42 +0200)]
fix setcookie Max-Age to use php_time
Joe Watkins [Wed, 19 Jun 2019 10:40:54 +0000 (12:40 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
export php_time
Joe Watkins [Wed, 19 Jun 2019 10:40:23 +0000 (12:40 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
export php_time
Joe Watkins [Wed, 19 Jun 2019 10:39:51 +0000 (12:39 +0200)]
export php_time
Joe Watkins [Wed, 19 Jun 2019 09:41:24 +0000 (11:41 +0200)]
refactor a little more to add some more useful error messages and raise the limits on waiting for slow machines
Joe Watkins [Wed, 19 Jun 2019 09:09:26 +0000 (11:09 +0200)]
Separate check for process creation and ability to accept connections
Christoph M. Becker [Wed, 19 Jun 2019 07:45:15 +0000 (09:45 +0200)]
Document removal of uint and ulong typedefs
Joe Watkins [Wed, 19 Jun 2019 07:00:00 +0000 (09:00 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Resolve discrepencies between second value yielded by gettimeofday and time, fixes #69044
Joe Watkins [Wed, 19 Jun 2019 06:58:28 +0000 (08:58 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Resolve discrepencies between second value yielded by gettimeofday and time, fixes #69044
Joe Watkins [Tue, 18 Jun 2019 09:06:00 +0000 (11:06 +0200)]
Resolve discrepencies between second value yielded by gettimeofday and time, fixes #69044
Christoph M. Becker [Tue, 18 Jun 2019 15:09:49 +0000 (17:09 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Fix #78173: XML-RPC mutates immutable objects during encoding
Christoph M. Becker [Tue, 18 Jun 2019 15:08:58 +0000 (17:08 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
Fix #78173: XML-RPC mutates immutable objects during encoding
Asher Baker [Tue, 18 Jun 2019 14:05:38 +0000 (15:05 +0100)]
Fix #78173: XML-RPC mutates immutable objects during encoding
With opcache.protect_memory=1 enabled, the XML-RPC extension causes a
segfault on PHP 7.2 as it is modifying the recursion counter of objects
it touches, without first checking if they are immutable or not.
This doesn't affect 7.3+
Dmitry Stogov [Tue, 18 Jun 2019 14:18:49 +0000 (17:18 +0300)]
Fixed bug #78175 (Preloading segfaults at preload time and at runtime)
Christoph M. Becker [Mon, 17 Jun 2019 16:43:05 +0000 (18:43 +0200)]
Turn system_id into a true global
The system_id is identical for all threads and can be computed during
module startup, so there is no need to calculate and store it for each
thread.
Christoph M. Becker [Tue, 18 Jun 2019 07:34:24 +0000 (09:34 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
Update NEWS
Christoph M. Becker [Tue, 18 Jun 2019 07:33:35 +0000 (09:33 +0200)]
Update NEWS
Joe Watkins [Tue, 18 Jun 2019 06:28:57 +0000 (08:28 +0200)]
fix flaky socket test
Remi Collet [Tue, 18 Jun 2019 05:51:17 +0000 (07:51 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3:
move NEWS entry
Remi Collet [Tue, 18 Jun 2019 05:51:05 +0000 (07:51 +0200)]
Merge branch 'PHP-7.2' into PHP-7.3
* PHP-7.2:
move NEWS entry
Remi Collet [Tue, 18 Jun 2019 05:50:44 +0000 (07:50 +0200)]
move NEWS entry
BohwaZ [Mon, 17 Jun 2019 21:28:30 +0000 (23:28 +0200)]
Implement SQLite3 backup API
Nikita Popov [Mon, 17 Jun 2019 15:25:43 +0000 (17:25 +0200)]
Fix file clash in fgetcsv test
Christoph M. Becker [Mon, 17 Jun 2019 14:44:49 +0000 (16:44 +0200)]
Improve create_verify_dir() diagnostics
If create_verify_dir() fails[1], we need more info why that happened.
[1] <https://ci.appveyor.com/project/cmb69/php-src/builds/
25324138 /job/dm1n12gqhdqa3ln5#L5753>
Nikita Popov [Mon, 17 Jun 2019 13:08:52 +0000 (15:08 +0200)]
Fix file conflicts in SplFileObject fputcsv tests
Dmitry Stogov [Mon, 17 Jun 2019 11:56:28 +0000 (14:56 +0300)]
Remove XFAIL mark
Dmitry Stogov [Mon, 17 Jun 2019 11:53:44 +0000 (14:53 +0300)]
Avoid uninitilized field access
Dmitry Stogov [Mon, 17 Jun 2019 11:40:19 +0000 (14:40 +0300)]
Fixed memory leaks in ext/ffi/tests/100.phpt on Mac OSX
Nikita Popov [Mon, 17 Jun 2019 11:31:04 +0000 (13:31 +0200)]
Merge branch 'PHP-7.3' into PHP-7.4