diff options
author | Alan Modra <amodra@gmail.com> | 2017-10-17 21:57:29 +1030 |
---|---|---|
committer | Alan Modra <amodra@gmail.com> | 2017-10-17 22:12:45 +1030 |
commit | cf54ebff3b7361989712fd9c0128a9b255578163 (patch) | |
tree | 02ff552d81ce251c1ff0eddc51003b932bddee55 /gdb/regcache.c | |
parent | 7b7009999ab8daac9db776c850b7df6e1f586334 (diff) | |
download | gdb-cf54ebff3b7361989712fd9c0128a9b255578163.zip gdb-cf54ebff3b7361989712fd9c0128a9b255578163.tar.gz gdb-cf54ebff3b7361989712fd9c0128a9b255578163.tar.bz2 |
PR22307, Heap out of bounds read in _bfd_elf_parse_gnu_properties
When adding an unbounded increment to a pointer, you can't just check
against the end of the buffer but also must check that overflow
doesn't result in "negative" pointer movement. Pointer comparisons
are signed. Better, check the increment against the space left using
an unsigned comparison.
PR 22307
* elf-properties.c (_bfd_elf_parse_gnu_properties): Compare datasz
against size left rather than comparing pointers. Reorganise loop.
Diffstat (limited to 'gdb/regcache.c')
0 files changed, 0 insertions, 0 deletions