#include "snapshot/elf/elf_symbol_table_reader.h"
#include <elf.h>
#include "snapshot/elf/elf_image_reader.h"
namespace crashpad {
namespace {
uint8_t GetBinding(const Elf32_Sym& sym) { … }
uint8_t GetBinding(const Elf64_Sym& sym) { … }
uint8_t GetType(const Elf32_Sym& sym) { … }
uint8_t GetType(const Elf64_Sym& sym) { … }
uint8_t GetVisibility(const Elf32_Sym& sym) { … }
uint8_t GetVisibility(const Elf64_Sym& sym) { … }
}
ElfSymbolTableReader::ElfSymbolTableReader(const ProcessMemoryRange* memory,
ElfImageReader* elf_reader,
VMAddress address,
VMSize num_entries)
: … { … }
ElfSymbolTableReader::~ElfSymbolTableReader() { … }
bool ElfSymbolTableReader::GetSymbol(const std::string& name,
SymbolInformation* info) { … }
template <typename SymEnt>
bool ElfSymbolTableReader::ScanSymbolTable(const std::string& name,
SymbolInformation* info_out) { … }
}