This fixes few more -Wundef warnings in ext/fileinfo. The
PHP_FILEINFO_UNCOMPRESS seems to be present to be defined at some point
but is currently unused in all build systems. Leaving this intact for
now.
Follow up of GH-5526 (-Wundef)
* Update libmagic to 5.45
This also cleans up magicdata.patch: changes that are already in upstream file
were removed from that patch file.
There are five (expected) test output changes.
All these were also checked with the file command.
- bug77961.phpt changes because there's now an early error-return in the
`if (ts == FILE_BADSIZE) {` branch.
- cve-2014-1943.phpt and cve-2014-1943-mb.phpt change because now the crafted
data is recognised as a simh file.
- bug71434.phpt now properly recognises it as a Python file.
- ext/fileinfo/tests/finfo_file_basic.phpt more specific mime type.
* Adjust memory requirement for s390x fileinfo run
The larger database causes a higher memory usage.
Similar to 962c082a5b.
* [ci skip] NEWS
For the time being, the new args passing pre-compiled regex are cut out.
On the PHP side, PCRE patterns are cached and thus a duplicated
mechanism isn't necessary.
There might be still advantages to carry pre-compiled patterns for
libmagic separately, but reusing this mechanism needs a better
consideration, as it might require to retain from the PHP internal pattern
caching mechanism.
Signed-off-by: Anatol Belski <ab@php.net>
Some functions in libmagic (distributed with fileinfo extension) perform this sequence of calls:
func() {
setlocale(LC_TYPE, "C")
.. do some work ..
setlocale(LC_TYPE, "")
}
It effectively resets LC_TYPE if it that was set before the function call.
To avoid manipulations with current locale at all, the problematic functions
were modified to use locale-independent functions.
This simplifies the libmagic patch:
- in upstream the HAVE_STRERROR check has been removed
- in upstream library the HAVE_SIGNAL_H has been removed
- indentations syncs with the upstream library
- some irrelevant changes removed from the patch (log comment), upstream
has this correctly logged already so no need to patch the comment.
Closes GH-4298
yet unfinished port to libmagic 5.28
catch with missing libmagic port pieces
regenerate data file with magic from 5.28
test magic files from 5.28
missing files
fix path
pure c99 is still not supported
move right to 5.29, yet some bugs present
more sync with orig lib
more ZMM usage
use unpatched data for now
partial revert according to bug #67705
Revert "more ZMM usage"
This reverts commit 5e3c9b851034b455942b219b18bdc49c8315c3ee.
several fixes, so it's now closer to the clean port
This fixes further issues on win64 with casts from the streams.
Sockets/descriptors handling was unitized. This has an impact only on
win64, php_socket_t otherwise can be feed back to int datatype.