Nikita Popov
08027e85fa
Remove posix_getlogin_basic.phpt test
...
The premise of this test (that the getlogin user has to be the same
as the geteuid user) is incorrect.
2019-06-27 16:15:13 +02:00
Nikita Popov
40d6147dd0
Fix opcache blacklist leak
...
Don't recompute (and leak) the regex for every glob element, only
do this once at the end.
2019-06-27 16:11:58 +02:00
Nikita Popov
78375aa52f
Fix persistent XML memory leaks in SOAP
...
SOAP uses a horrible bailout based error handling approach -- avoid
leaking persistent XML memory by catching bailouts in a number of
places.
2019-06-27 14:20:10 +02:00
Christoph M. Becker
218c18530a
Show actual enchant version if possible
...
As of libenchant 1.6.0 there is enchant_get_version()[1], so we use it,
if available, to show the actual enchant version in the PHP info. We
also drop the fake ENCHANT_VERSION_STRING altogether, but stick with
showing version 1.5.x if at least HAVE_ENCHANT_BROKER_SET_PARAM is
defined.
Future scope: we may consider requiring enchant 1.6.0 (or later), since
this has been released in April 2010, and likely is available
everywhere.
[1] <https://www.abisource.com/projects/enchant/ >
2019-06-27 13:04:49 +02:00
Nikita Popov
2f0f895284
Fix persistent connection leak in mysqli
2019-06-27 09:45:32 +02:00
Nikita Popov
6bebe833a2
Fix use-after-free in stream freeing during shutdown
...
Streams will be freed in an unpredictable order during shutdown.
Ignore explicit calls to php_stream_close() entirely to avoid
use-after-free -- instead let the stream resource destructor
deal with it. We have to account for a few special cases:
* Enclosed streams should be freed, as the resource destructor
will forward to the enclosing stream.
* Stream cookies also directly free streams, because we delegate
to the cookie destruction if one exists.
* Mysqlnd also directly frees streams, because it explicitly
removes stream resources (because mysqlnd!)
2019-06-27 09:45:23 +02:00
Peter Kokot
2079b09854
Clean headers checks
...
Some headers were checked multiple times in the main configure.ac file
and in the bundled extensions or SAPIs themselves. Also many of these
checks are then used accross other extensions or SAPIs so a central
configure.ac makes most sense for these checks.
2019-06-27 02:45:09 +02:00
Peter Kokot
4ff44a9161
Fix concurrent testing of bug 61964
...
When tests are run concurrently using the -j option there might be a
change of failure and writing to the same directory from both tests.
Use test filenames for generated temp dirs
2019-06-27 00:27:10 +02:00
Peter Kokot
a29bf46b68
Fix posix_errno test without PCNTL dep
...
When PCNTL extension is not enabled, the SIGKILL constant is also not
available.
2019-06-27 00:24:37 +02:00
Nikita Popov
788a68900d
Fix xml doc leak in soap
2019-06-26 11:43:11 +02:00
Nikita Popov
80958d0f90
Use ldap_destroy instead of ldap_unbind_ext
2019-06-26 11:43:11 +02:00
Nikita Popov
0f3ca15bb7
FFI: Perform bitfield operations byte-wise
...
Otherwise we may perform reads/writes outside the allocation, as
already happens in 032.phpt.
2019-06-25 14:28:58 +02:00
Nikita Popov
8757f30cc7
Fix CURLINFO_COOKIELIST leak
2019-06-25 14:28:58 +02:00
Nikita Popov
8277acefbd
Fix leak on sqlite3 open error
...
sqlite3_open creates the database object even if the operation
fails.
2019-06-25 14:28:58 +02:00
Nikita Popov
6fcae63f61
Fix SSL_CTX leak in ftp extension
...
SSL_CTX is a refcounted structure, which will be held by the SSL
handle, so we can free it here.
2019-06-25 14:28:58 +02:00
Nikita Popov
b53bb3c15b
Fix UConverter leak
2019-06-25 14:28:58 +02:00
Nikita Popov
77f7ec5152
Fix TimeZone leak in intl MessageFormat
...
I'm just giving each format a distinct owned object here ... sharing
it looks complicated.
2019-06-25 14:28:58 +02:00
Nikita Popov
c7962207d7
Fix stream leak in phar cache_list
2019-06-25 14:28:58 +02:00
Christoph M. Becker
ead40e31e9
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #78202 : Opcache stats for cache hits are capped at 32bit NUM
2019-06-25 13:06:20 +02:00
Christoph M. Becker
18bba63f39
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix #78202 : Opcache stats for cache hits are capped at 32bit NUM
2019-06-25 13:04:28 +02:00
Christoph M. Becker
4366f22dfc
Fix #78202 : Opcache stats for cache hits are capped at 32bit NUM
...
We use the proper format specifiers now.
2019-06-25 13:00:28 +02:00
Dmitry Stogov
759f4ecd8b
Keep lowercased parent class name as second argument of DECLARE_CLASS to avoid extra work at run-time
2019-06-25 11:30:58 +03:00
Nikita Popov
43dd1ac570
Avoid confusing gotos in phar_split_cache_list
2019-06-25 10:25:44 +02:00
Nikita Popov
31123de0c8
Fix EVP_PKEY leak in phar
2019-06-25 10:25:44 +02:00
Nikita Popov
46bad1d679
Fix region leak in mb_ereg_replace
2019-06-25 10:25:44 +02:00
Dmitry Stogov
0f29fb5cd8
Fixed bug 78175 (Preloading must store default values of static variables and properties)
2019-06-24 20:32:27 +03:00
Nikita Popov
df27bfe58b
Add debugging code to time_sleep_until test
2019-06-22 10:19:49 +02:00
Derick Rethans
579562176b
Fixed bug #67348 : Reading $dbc->stat modifies $dbc->affected_rows
2019-06-21 16:51:52 +01:00
Christoph M. Becker
eec5d2a25f
Properly shut down font cache mutex
...
Since the font cache mutex in set up in MINIT, we have to shut it down
in MSHUTDOWN.
2019-06-21 16:00:47 +02:00
Andrey Hristov
1da15600ae
Merge branch 'PHP-7.3' into PHP-7.4
2019-06-21 16:33:01 +03:00
Andrey Hristov
8326f95fe3
Merge branch 'PHP-7.2' into PHP-7.3
2019-06-21 16:32:13 +03:00
Andrey Hristov
102c64e827
Add explicit cast to uint32_t.
...
It works even without it but explicit stuff is better. The compiler probably converts the 16-bit
uint16_t to uint32_t before doing the shift.
2019-06-21 16:31:56 +03:00
Nikita Popov
021bb35aec
Merge branch 'PHP-7.3' into PHP-7.4
2019-06-21 15:08:12 +02:00
Nikita Popov
66e4b78519
Merge branch 'PHP-7.2' into PHP-7.3
2019-06-21 15:07:59 +02:00
Nikita Popov
99f3e0f0ed
Fix PKCS12 leak in openssl
2019-06-21 15:07:37 +02:00
Nikita Popov
c939a67866
Fix d leak in ecc openssl_pkey_new
2019-06-21 15:07:32 +02:00
Nikita Popov
dfe6f0c1c6
Fix netscape spki leak in openssl
2019-06-21 15:07:26 +02:00
Nikita Popov
a0da2fb2b7
Fix X509 leak in openssl_pkcs7_verify()
2019-06-21 15:07:18 +02:00
Nikita Popov
e0bafc6da4
Fix CSR leaks in openssl
2019-06-21 15:07:10 +02:00
Nikita Popov
90cb3743be
Free cert in php_openssl_load_stream_cafile()
...
X509_STORE_add_cert() increments the refcount of the cert, so we
should free it here.
2019-06-21 15:07:00 +02:00
Nikita Popov
1de7c4b919
Fix memory leaks in browscap parsing
...
Also make the interning a bit more efficient, no need to check for
a "real" interned string every time, we can also store that in the
HT.
2019-06-21 12:56:37 +02:00
Nikita Popov
f781c8f110
Fix leak in bcpowmod
2019-06-21 12:56:28 +02:00
Nikita Popov
e7ef2b52db
Merge branch 'PHP-7.3' into PHP-7.4
2019-06-21 12:56:12 +02:00
Nikita Popov
414db07bdb
Merge branch 'PHP-7.2' into PHP-7.3
2019-06-21 12:55:12 +02:00
Niklas Keller
fea9f93166
Fix memory leak in TLS matches_san_list
2019-06-21 12:54:30 +02:00
Nikita Popov
8227e0f747
Avoid ub in shift overflow check
...
Also fix an off-by-one error. While 1 << 63 overflows, -1 << 63 does
not.
2019-06-21 10:24:27 +02:00
Christoph M. Becker
81fd113506
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.
2019-06-20 23:40:51 +02:00
Christoph M. Becker
2b4fc9eb9c
Merge branch 'PHP-7.3' into PHP-7.4
...
* PHP-7.3:
Fix #78189 : file cache strips last character of uname hash
2019-06-20 18:01:02 +02:00
Christoph M. Becker
a85254b898
Merge branch 'PHP-7.2' into PHP-7.3
...
* PHP-7.2:
Fix #78189 : file cache strips last character of uname hash
2019-06-20 17:59:59 +02:00
Christoph M. Becker
fcd6f2de60
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.
2019-06-20 17:58:32 +02:00