retdec
elf_detector.h
Go to the documentation of this file.
1 
7 #ifndef FILEINFO_FILE_DETECTOR_ELF_DETECTOR_H
8 #define FILEINFO_FILE_DETECTOR_ELF_DETECTOR_H
9 
12 
13 namespace retdec {
14 namespace fileinfo {
15 
19 class ElfDetector : public FileDetector
20 {
21  private:
22  std::shared_ptr<ElfWrapper> elfParser;
23 
26  void getFileVersion();
27  void getFileHeaderInfo();
28  void getOsAbiInfoNote();
29  void getOsAbiInfo();
30  void getFlags();
31  void getSegments();
32  void getSymbolTable();
33  void getRelocationTable(const ELFIO::section *sec);
34  void getSections();
36  void getNotes();
37  void getCoreInfo();
39  protected:
42  virtual void detectFileClass() override;
43  virtual void detectArchitecture() override;
44  virtual void detectFileType() override;
45  virtual void getAdditionalInfo() override;
48  public:
50  std::string pathToInputFile,
51  FileInformation &finfo,
54 };
55 
56 } // namespace fileinfo
57 } // namespace retdec
58 
59 #endif
Definition: cpdetect.h:24
Definition: elf_detector.h:20
void getCoreInfo()
Definition: elf_detector.cpp:1193
void getDynamicSectionsSegments()
Definition: elf_detector.cpp:1001
virtual retdec::cpdetect::CompilerDetector * createCompilerDetector() const override
Definition: elf_detector.cpp:1971
virtual void getAdditionalInfo() override
Definition: elf_detector.cpp:1952
void getFileHeaderInfo()
Definition: elf_detector.cpp:797
void getSegments()
Definition: elf_detector.cpp:815
void getOsAbiInfo()
Definition: elf_detector.cpp:1221
void getNotes()
Definition: elf_detector.cpp:1134
ElfDetector(std::string pathToInputFile, FileInformation &finfo, retdec::cpdetect::DetectParams &searchPar, retdec::fileformat::LoadFlags loadFlags)
Definition: elf_detector.cpp:775
virtual void detectArchitecture() override
Definition: elf_detector.cpp:1378
std::shared_ptr< ElfWrapper > elfParser
file parser
Definition: elf_detector.h:22
void getFlags()
Definition: elf_detector.cpp:806
void getSections()
Definition: elf_detector.cpp:1052
void getFileVersion()
Definition: elf_detector.cpp:789
void getOsAbiInfoNote()
Definition: elf_detector.cpp:1294
virtual void detectFileType() override
Definition: elf_detector.cpp:1918
void getSymbolTable()
Definition: elf_detector.cpp:870
void getRelocationTable(const ELFIO::section *sec)
Definition: elf_detector.cpp:928
virtual void detectFileClass() override
Definition: elf_detector.cpp:1364
Definition: file_detector.h:21
retdec::fileformat::LoadFlags loadFlags
load flags for configurable running
Definition: file_detector.h:47
Definition: file_information.h:25
Definition of ElfWrapper class.
Definition of FileDetector class.
LoadFlags
Definition: fftypes.h:69
Definition: archive_wrapper.h:19
Definition: cptypes.h:110