php-src/ext
Niels Dossche b81ce297a1 Fix GH-9397: exif read : warnings and errors : Potentially invalid endianess, Illegal IFD size and Undefined index
Don't misinterpret DJI info maker note as DJI maker note.

The DJI and DJI info maker note both share the "DJI" make string.
This caused the current code to try to interpret the DJI info maker note
as a DJI maker note. However, the DJI info maker note requires custom
parsing. Therefore, the misinterpretation actually caused the current
code to believe that there was an unrecoverable error in the IFD for the
maker note by returning false in the maker note parser. This in turn
caused the inability to parse other EXIF metadata.

This patch adds the identification of the DJI info maker note so that it
cannot be misinterpreted. Since we don't implement custom parsing, it
achieves this by setting the tag list to a special marker value (in this
case the NULL pointer). When this marker value is detected, the function
will just skip parsing the maker note and return true. Therefore, the
other code will believe that the IFD is not corrupt.

This approach is similar to handing an unrecognised maker note type
(see the loop on top of exif_process_IFD_in_MAKERNOTE() which also
returns true and treats it as a string). The end result of this patch
is that the DJI info maker note is considered as unknown to the caller of
exif_process_IFD_in_MAKERNOTE(), and therefore that the other EXIF
metadata can be parsed successfully.

Also fix debug output typos in exif.

Closes GH-10470.
2023-04-05 21:35:19 +02:00
..
bcmath Generate optimizer func info from stubs for a few extensions - part 2 (#7401) 2021-08-25 15:29:46 +02:00
bz2 Merge branch 'PHP-8.0' into PHP-8.1 2022-06-25 07:39:55 +01:00
calendar Add more specific array return type hints for various extensions - part 1 2021-11-07 08:46:25 +01:00
com_dotnet Merge branch 'PHP-8.0' into PHP-8.1 2022-06-18 11:50:14 +02:00
ctype
curl Fix GH-10928: PHP Build Failed - Test curl_version() basic functionality [ext/curl/tests/curl_version_basic_001.phpt] 2023-03-25 18:15:20 +01:00
date Updated to version 2023.3 (2023c) 2023-03-29 10:06:00 +01:00
dba Merge branch 'PHP-8.0' into PHP-8.1 2022-07-27 12:13:32 +02:00
dl_test Fix unregistering ini entries of dynamically loaded extension (#8435) 2022-05-06 15:25:44 +02:00
dom Fix incorrect error handling in dom_zvals_to_fragment() 2023-04-03 21:21:35 +02:00
enchant Add more specific array return type hints for various extensions - part 1 2021-11-07 08:46:25 +01:00
exif Fix GH-9397: exif read : warnings and errors : Potentially invalid endianess, Illegal IFD size and Undefined index 2023-04-05 21:35:19 +02:00
ffi Reset EG(trampoline).op_array.last_var that FFI may modify 2023-03-27 22:59:00 +02:00
fileinfo fileinfo: tests: Disable times sensitive tests on debug build 2022-09-25 20:43:31 +02:00
filter Add missing EXTENSION section to tests 2022-10-27 14:39:43 +01:00
ftp Fix GH-10521: ftp_get/ftp_nb_get resumepos offset is maximum 10GB 2023-03-20 23:20:21 +01:00
gd Add Windows GitHub actions build 2023-03-01 23:02:03 +01:00
gettext Generate optimizer func info from stubs for a few extensions - part 2 (#7401) 2021-08-25 15:29:46 +02:00
gmp Merge branch 'PHP-8.0' into PHP-8.1 2022-09-13 11:33:09 +01:00
hash Handle exceptions from __toString in XXH3's initialization 2023-01-17 14:14:12 +00:00
iconv Merge branch 'PHP-8.0' into PHP-8.1 2022-04-25 14:29:44 +02:00
imap ext/imap/config.m4: -Werror=implicit-function-declaration compatibility. 2023-03-28 15:18:18 +01:00
intl Fix GH-10647: Spoofchecker isSuspicious/areConfusable methods 2023-02-21 21:00:49 +00:00
json Fix php_json_scanner_defs.h target in ext/json/Makefile.frag 2023-02-17 16:37:14 +00:00
ldap Fix GH-10112: LDAP\Connection::__construct() refers to ldap_create() 2022-12-16 14:36:30 +01:00
libxml Merge branch 'PHP-8.0' into PHP-8.1 2022-08-25 15:11:41 +02:00
mbstring Fix phpGH-10648: add check function pointer into mbfl_encoding 2023-03-25 09:52:10 +02:00
mysqli Unparallelize IO heavy tests 2023-03-27 16:33:36 +02:00
mysqlnd Fix GH-8979: Possible Memory Leak with SSL-enabled MySQL connections 2023-03-24 18:03:29 +01:00
oci8 Unparallelize IO heavy tests 2023-03-27 16:33:36 +02:00
odbc Merge branch 'PHP-8.0' into PHP-8.1 2022-06-13 14:43:51 +02:00
opcache Tracing JIT: Fixed incorrect code generation fofr SEND-ing of result of ASSIGN to typed reference 2023-04-03 18:15:41 +03:00
openssl Add missing error check on PEM_write_bio_PKCS7() 2023-03-05 22:07:43 +01:00
pcntl fix: support for timeouts with ZTS on Linux (#10141) 2023-03-03 11:35:06 +01:00
pcre Fix incorrect zval type_flags in preg_replace_callback_array() for immutable arrays 2023-03-31 14:41:41 +02:00
pdo Improve fix for bug #81740 2022-12-18 23:20:29 -07:00
pdo_dblib Merge branch 'PHP-8.0' into PHP-8.1 2022-08-26 14:59:08 +02:00
pdo_firebird Fix GH-10908: Bus error with PDO Firebird on RPI with 64 bit kernel and 32 bit userland 2023-03-27 21:01:06 +02:00
pdo_mysql ext/pdo_mysql: mysql_handle_closer nullify some freed data. 2023-03-25 17:41:21 +00:00
pdo_oci Unparallelize IO heavy tests 2023-03-27 16:33:36 +02:00
pdo_odbc Fix missing and inconsistent error check on SQLAllocHandle 2023-03-15 21:36:50 +01:00
pdo_pgsql Merge branch 'PHP-8.0' into PHP-8.1 2022-09-05 17:26:13 +02:00
pdo_sqlite Force extension loading for new test 2022-12-19 16:14:00 +01:00
pgsql ext/psql: pg_meta_data, extended mode, fix typo for pseudo typtype. 2023-03-18 07:09:13 +00:00
phar Fix undefined behaviour when writing 32-bit values in phar/tar.c 2023-03-26 16:06:29 +02:00
posix Fix GH-10202: posix_getgr(gid|nam)_basic.phpt fail 2023-01-02 16:54:47 +00:00
pspell Add more specific array return type hints for various extensions - part 4 (#7469) 2021-09-06 17:14:52 +02:00
readline Add more specific array return type hints for various extensions - part 4 (#7469) 2021-09-06 17:14:52 +02:00
reflection remove assert raising strange behavior with GCC 10 2023-03-15 09:05:44 +01:00
session Propagate errors correctly in ps_files_cleanup_dir() 2023-02-21 16:09:22 +00:00
shmop Use --EXTENSIONS-- section for new test 2021-09-02 23:49:05 +02:00
simplexml Fix the value param of SimpleXMLElement::addAttribute() 2021-12-22 12:35:59 +01:00
skeleton Ignore generated files by tests in extension skeleton 2021-09-29 11:59:05 +02:00
snmp Fix bug #81598: Use C.UTF-8 as LC_CTYPE locale by default 2021-12-05 21:03:27 +01:00
soap Merge branch 'PHP-8.0' into PHP-8.1 2022-10-13 16:00:36 +02:00
sockets Fix uninitialized variable accesses in sockets/conversions 2023-03-29 19:44:30 +02:00
sodium Remove extra space before return type 2021-10-18 14:28:46 +02:00
spl By-ref modification of typed and readonly props through ArrayIterator 2023-03-25 16:14:19 +01:00
sqlite3 Fix #81742: open_basedir bypass in SQLite3 by using file URI 2022-12-06 15:59:52 +01:00
standard Fix GH-10990: mail() throws TypeError after iterating over $additional_headers array by reference 2023-04-01 19:44:43 +02:00
sysvmsg Merge branch 'PHP-8.0' 2021-08-18 16:39:36 +02:00
sysvsem Not serializable flag permeation 2021-07-20 12:28:35 +02:00
sysvshm Add Windows GitHub actions build 2023-03-01 23:02:03 +01:00
tidy Unparallelize IO heavy tests 2023-03-27 16:33:36 +02:00
tokenizer Add missing EXTENSION section to tests 2022-10-27 14:39:43 +01:00
xml The userland constants do not start with PHP_ 2023-02-26 14:18:12 +00:00
xmlreader Merge branch 'PHP-8.0' into PHP-8.1 2023-02-12 21:33:39 -07:00
xmlwriter Fix missing check for xmlTextWriterEndElement 2023-01-15 15:34:43 +00:00
xsl
zend_test Add test, fix x86 JIT 2023-03-13 12:36:59 +01:00
zip Merge branch 'PHP-8.0' into PHP-8.1 2022-06-15 15:39:00 +02:00
zlib Fix incorrect string length for output_handler in zlib ini code 2023-02-23 18:47:26 +00:00
ext_skel.php Fix path printing in ext_skel (#7387) 2021-08-19 09:43:32 +02:00