platform_system_core/libunwindstack/include/unwindstack
Christopher Ferris 5acf069a7a Be permissive about badly formed elf files.
Here is the allowable issues with an elf file that will not result in an error:
- The program headers/section headers offset points to unreadable memory.
- Allow missing program header and/or section headers.
- Allow a symbol table section header to point to invalid symbol table values.

There is no real reason to require the elf file be perfect. Everything in
the code has sane defaults, so any missing information won't cause any
problems.

This gets rid of the warning that occurs any time an elf is loaded
from memory. In memory elf files never contain all of the section headers,
and do not contain the symbol table data.

Update tests to test these new cases.

Test: Builds and unit tests all pass.
Change-Id: Iaefe2cd6b6c965a01ed425a112d6afae339f3b78
2018-08-03 22:02:05 +00:00
..
DexFiles.h Load dex files from ART-specific data structure. 2018-02-02 15:03:00 -08:00
DwarfError.h Add error propagation into Unwinder/Elf objects. 2018-01-24 17:50:46 -08:00
DwarfLocation.h Cache DWARF location rules for a given pc. 2018-03-29 14:47:13 +00:00
DwarfMemory.h Make the library usable as a library. 2017-07-14 12:20:23 -07:00
DwarfSection.h Refactor the DwarfSection classes. 2018-06-27 14:52:21 -07:00
DwarfStructs.h Make the library usable as a library. 2017-07-14 12:20:23 -07:00
Elf.h Fix bug when doing signal handler lookup. 2018-05-17 18:58:42 -07:00
ElfInterface.h Be permissive about badly formed elf files. 2018-08-03 22:02:05 +00:00
Error.h Add error propagation into Unwinder/Elf objects. 2018-01-24 17:50:46 -08:00
JitDebug.h Add ability to read jit gdb data. 2018-01-12 11:18:42 -08:00
LocalUnwinder.h Add a specialized LocalUnwinder object. 2018-05-23 20:02:30 -07:00
Log.h Make the library usable as a library. 2017-07-14 12:20:23 -07:00
MachineArm.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
MachineArm64.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
MachineMips.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
MachineMips64.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
MachineX86.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
MachineX86_64.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
MapInfo.h libprocinfo: add functions reading process map file. 2018-05-14 14:00:18 -07:00
Maps.h Add a specialized LocalUnwinder object. 2018-05-23 20:02:30 -07:00
Memory.h Remove Memory::ReadField. 2018-07-12 12:45:31 -07:00
Regs.h libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
RegsArm.h libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
RegsArm64.h libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
RegsGetLocal.h Always set the sp reg to the cfa for DWARF. 2018-03-16 23:38:07 -07:00
RegsMips.h libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
RegsMips64.h libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
RegsX86.h libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
RegsX86_64.h libunwindstack: add Regs::Clone. 2018-04-20 13:23:20 -07:00
UcontextArm.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
UcontextArm64.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
UcontextMips.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
UcontextMips64.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
UcontextX86.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
UcontextX86_64.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
Unwinder.h Change the GetAdjustedRelPc to GetPcAdjustment. 2018-02-21 20:16:39 -08:00
UserArm.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
UserArm64.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
UserMips.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
UserMips64.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
UserX86.h Expose per arch headers. 2018-02-08 19:29:08 -08:00
UserX86_64.h Expose per arch headers. 2018-02-08 19:29:08 -08:00