| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
| |
for static Thread Local Storage)
|
|\
| |
| |
| |
| | |
* PHP-7.4:
Fix #51903: simplexml_load_file() doesn't use HTTP headers
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The `encoding` attribute of the XML declaration is optional; it is good
practice to use external encoding information where available if it is
missing. Thus, we check for `charset` info of `Content-Type` headers,
and see whether the encoding is supported.
We cater to trailing parameters and quoted-strings, but not to escaped
backslashes and quotes in quoted-strings, since no known character
encoding contains these anyway.
Co-authored-by: Michael Wallner <mike@php.net>
Closes GH-6747.
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Fix #80838: HTTP wrapper waits for HTTP 1 response after HTTP 101
|
| |
| |
| |
| |
| |
| | |
Don't wait for further responses after a HTTP 101 (Switching Protocols) response
Closes GH-6730.
|
| |
| |
| |
| |
| |
| | |
applied in addition.
Closes GH-6738.
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Print error code if CreateMutex() fails
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This issue came up recently in a bug report[1]; without the error code,
users can barely guess why the function failed.
[1] <https://bugs.php.net/80812>
Closes GH-6745.
|
| |
| |
| |
| | |
passed as argument 2 of memcpy(), which is declared to never be null)
|
| |
| |
| |
| |
| | |
`HAVE_METHOD_SUPPORTED` should have been defined after we updated to
libzip 1.7.1 months ago.
|
| | |
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Fix #78719: http wrapper silently ignores long Location headers
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
When opening HTTP streams, and reading the headers, we currently
discard header lines longer than `HTTP_HEADER_BLOCK_SIZE` (1024 bytes).
While this is not generally forbidden by RFC 7230, section 3.2.5, it
is not generally allowed either, since that may change the "message
framing or response semantics".
We thus fix this by allowing arbitrarily long header lines.
Closes GH-6720.
|
| | |
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Fix #80751: Comma in recipient name breaks email delivery
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
So far, `SendText()` simply separates potential email address lists at
any comma, disregarding that commas inside a quoted-string do not
delimit addresses. We fix that by introducing an own variant of
`strtok_r()` which caters to quoted-strings.
We also make `FormatEmailAddress()` aware of quoted strings.
We do not cater to email address comments, and potentially other quirks
of RFC 5322 email addresses, but catering to quoted-strings is supposed
to solve almost all practical use cases.
Co-authored-by: Nikita Popov <nikita.ppv@gmail.com>
Closes GH-6735.
|
| |
| |
| |
| |
| |
| | |
Handle missing result_var in binary_op_result_type.
(cherry picked from commit 8446e2827585c37d0739f8d44fa8d359cbbb6551)
|
| |
| |
| |
| |
| |
| |
| |
| | |
This also affected imap_reopen().
Add a supplementary test that the CL_EXPUNGE flag does have
the intended effect.
Closes GH-6732
|
|\ \
| |/ |
|
| |
| |
| |
| | |
calling __construct after instantiation
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
skip test with openssl < 1.1.0
|
| |
| |
| |
| |
| | |
The test fails, but without any crash
(this test is designed to catch a crash)
|
| |
| |
| |
| | |
Closes GH-6725.
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
mysqlnd pam fix test error message
|
| |
| |
| |
| | |
Closes GH-6727.
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Fix potential file collision in dom tests
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
Don't use r0 as temporary register in math_double_long if it is
already used for a memory result.
This was already done in one branch, but not the other.
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Fix #75776: Flushing streams with compression filter is broken
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
First, the `bzip2.compress` filter has the same issue as `zlib.deflate`
so we port the respective fix[1] to ext/bz2.
Second, there is still an issue, if a stream with an attached
compression filter is flushed before it is closed, without any writes
in between. In that case, the compression is never finalized. We fix
this by enforcing a `_php_stream_flush()` with the `closing` flag set
in `_php_stream_free()`, whenever a write filter is attached. This
call is superfluous for most write filters, but does not hurt, even
when it is unnecessary.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=20e75329f2adb11dd231852c061926d0e4080929>
Closes GH-6703.
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Fix #80771: phpinfo(INFO_CREDITS) displays nothing in CLI
|
| |
| |
| |
| |
| |
| |
| | |
There is no good reason not to show the credits in text based SAPIs,
except for brevity. Thus, we suppress the credits from `php -i`.
Closes GH-6710.
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Fix #80774: session_name() problem with backslash
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Since we do no longer URL decode cookie names[1], we must not URL
encode the session name. We need to prevent broken Set-Cookie headers,
by rejecting names which contain invalid characters.
[1] <http://git.php.net/?p=php-src.git;a=commit;h=6559fe912661ca5ce5f0eeeb591d928451428ed0>
Closes GH-6711.
|
| |
| |
| |
| |
| |
| |
| | |
Perform negation after the (size_t) cast rather than before,
so as to avoid a signed integer overflow for PHP_INT_MIN.
Fixes oss-fuzz #31069.
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Fix #80763: msgfmt_format() does not accept DateTime references
|
| |
| |
| |
| |
| |
| | |
`intl_zval_to_millis()` needs to cater to references.
Closes GH-6707.
|
| |
| |
| |
| | |
code involving bitshifts)
|
| | |
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Handle incomplete result set metadata more gracefully
|
| |
| |
| |
| |
| |
| |
| |
| | |
Rather than segfaulting because sname is missing lateron, report
a FAIL here. As this indicates a server bug, the errors is reported
as an out of band warning, rather than a client error.
This fixes the PHP side of bug #80713.
|
| |
| |
| |
| |
| |
| |
| | |
As these hold on to some internal resource, there can't be two
"equal" objects with different identity. Make sure the lack of
public properties doesn't result in these being treated as always
equal.
|
| |
| |
| |
| |
| | |
This fixes the issue just for the Socket class. Presumably we'll
want to do the same for other "resource" objects.
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Suppress OpenSSL error on missing optional config
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
openssl_pkey_new() fetches various options from the config file --
most of these are optional, and not specifying them is not an error
condition from the perspective of the user. Unfortunately, the
CONF_get_string() API pushes an error when accessing a key that
doesn't exist (_CONF_get_string does not, but that is presumably a
private API). This commit adds a helper php_openssl_conf_get_string()
that automatically clears the error in this case. I've found that
OpenSSL occasionally does the same thing internally:
https://github.com/openssl/openssl/blob/22040fb790c854cefb04bed98ed38ea6357daf83/apps/req.c#L515-L517
Closes GH-6699.
|
| |
| |
| |
| |
| |
| |
| | |
libcurl 7.75.0 finally adds support for `gophers://`, i.e. gopher over
TLS. The protocol is neither standardized, nor is the protocol
registered with IANA, but well, it is there and the test case should
cater to that.
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Fixed bug #80747
|
| |
| |
| |
| | |
If RSA key generation fails, actually report that failure.
|
|\ \
| |/
| |
| |
| | |
* PHP-7.4:
Fix #78680: mysqlnd pam plugin missing terminating null
|