dotnet / symstore

Implements API for retrieval of symbols and other debug artifacts from symbol store.
MIT License
143 stars 50 forks source link

The symbol downloaders fail with core dumps created with gdb #47

Open mikem8361 opened 6 years ago

mikem8361 commented 6 years ago

Coredumps created with gdb have garbage for the ELF module headers. It seems fairly random because some native modules and some don't. lldb and gdb don't have a problem loading these dumps without any problems.

Detecting this and display a warning or error message that this dump was created with gdb would be good.

This can be fixed in the file format for ELF core dumps by creating a special derived ELF file class that uses the core dumps header info by returning the proper bitness, endianess and module type.

This makes distinguishing ELF modules from the PE modules in the core dump more difficult. The signature check for PE's would have to be first.

mikem8361 commented 6 years ago

Looks like there is the same issue with gcore generated dumps.