callframe.py: fix DW_EH_PE_absptr decoding (#295)
authorPierre-Marie de Rodat <pmderodat@kawie.fr>
Tue, 10 Mar 2020 13:12:11 +0000 (14:12 +0100)
committerGitHub <noreply@github.com>
Tue, 10 Mar 2020 13:12:11 +0000 (06:12 -0700)
commita70ccd3e163d2ee04bed68212654f8843b90300d
treea6128a913b366f634c4df9e6d2e3af56831a27a9
parentecc5a2d7981fd1c9550f58ae2c9edf553ae08a44
callframe.py: fix DW_EH_PE_absptr decoding (#295)

* Handle type2/type3 relocation fields for ELF64 MIPS binaries

* dwarf/callframe.py: fix field read using the DW_EH_PE_absptr encoding

This encoding represents target addresses, so it is the virtual address
space determines its size, not the DWARF format.

Fixes #288
elftools/dwarf/callframe.py
elftools/elf/structs.py
scripts/readelf.py
test/testfiles_for_readelf/angr-eh_frame.elf [new file with mode: 0644]