Re: Fix an undefined behaviour in the BFD library's DWARF parser
authorAlan Modra <amodra@gmail.com>
Thu, 16 Dec 2021 00:20:58 +0000 (10:50 +1030)
committerAlan Modra <amodra@gmail.com>
Thu, 16 Dec 2021 04:08:47 +0000 (14:38 +1030)
commit05f62e0c9a0b14e211c6b2b6234095b50794b20b
treecd7584259707de4b6b561b12e3009cfdf09c5259
parent37260e0df0772dd8378afa91ec26fc0419e1ca94
Re: Fix an undefined behaviour in the BFD library's DWARF parser

Using an unsigned int cast (to 32 bits) on a pointer difference (of
possibly 64 bits) is wrong.  Even though it will work on all real
object files, the fuzzers will eventually find this hole.

PR 28687
* dwarf1.c (parse_die): Cast pointer difference to size_t.
Catch another possible pointer overflow.
bfd/dwarf1.c