Re: PE objdump -x
authorAlan Modra <amodra@gmail.com>
Wed, 3 Aug 2022 05:36:15 +0000 (15:06 +0930)
committerAlan Modra <amodra@gmail.com>
Wed, 3 Aug 2022 07:30:17 +0000 (17:00 +0930)
commitecfc6ddb8074aff8882155b5900958725094f508
tree4027cb09f5e8cb7dba10215a9b100fd91a354562
parent5844ccaac7d7e628b8c3feea725d87fd4bafbdf6
Re: PE objdump -x

All of these buffer overrun tests are better written as a comparison
against size remaining, due to ISO C 9899 standard 6.5.2 para 8
regarding adding a constant to a pointer:

"If both the pointer operand and the result point to elements of the
same array object, or one past the last element of the array object,
the evaluation shall not produce an overflow; otherwise, the behavior
is undefined."

So "ex_dta + 4" might be undefined behaviour, if you interpret "the
array object" in this case to be the malloc'd section contents!

* pei-x86_64.c (pex64_get_unwind_info): Tidy sanity checks.
(pex64_xdata_print_uwd_codes): Likewise.
bfd/pei-x86_64.c