|
using | properties_t = std::vector<std::unique_ptr<NoteGnuProperty::Property>> |
|
enum class | TYPE {
UNKNOWN = 0
, GNU_ABI_TAG
, GNU_HWCAP
, GNU_BUILD_ID
,
GNU_GOLD_VERSION
, GNU_PROPERTY_TYPE_0
, GNU_BUILD_ATTRIBUTE_OPEN
, GNU_BUILD_ATTRIBUTE_FUNC
,
CRASHPAD
, CORE_PRSTATUS
, CORE_FPREGSET
, CORE_PRPSINFO
,
CORE_TASKSTRUCT
, CORE_AUXV
, CORE_PSTATUS
, CORE_FPREGS
,
CORE_PSINFO
, CORE_LWPSTATUS
, CORE_LWPSINFO
, CORE_WIN32PSTATUS
,
CORE_FILE
, CORE_PRXFPREG
, CORE_SIGINFO
, CORE_ARM_VFP
,
CORE_ARM_TLS
, CORE_ARM_HW_BREAK
, CORE_ARM_HW_WATCH
, CORE_ARM_SYSTEM_CALL
,
CORE_ARM_SVE
, CORE_ARM_PAC_MASK
, CORE_ARM_PACA_KEYS
, CORE_ARM_PACG_KEYS
,
CORE_TAGGED_ADDR_CTRL
, CORE_PAC_ENABLED_KEYS
, CORE_X86_TLS
, CORE_X86_IOPERM
,
CORE_X86_XSTATE
, CORE_X86_CET
, ANDROID_IDENT
, ANDROID_MEMTAG
,
ANDROID_KUSER
, GO_BUILDID
, STAPSDT
, QNX_STACK
} |
| LIEF representation of the ELF NT_ values. More...
|
|
using | description_t = std::vector<uint8_t> |
| Container used to handle the description data.
|
|
template<class T > |
using | output_t = add_pointer_t<decay_t<T>> |
|
template<class T > |
using | output_const_t = add_pointer_t<add_const_t<decay_t<T>>> |
|
|
static bool | classof (const Note *note) |
|
static result< TYPE > | convert_type (Header::FILE_TYPE ftype, uint32_t type, const std::string &name) |
| Convert the raw integer note type into a TYPE according to the owner.
|
|
static result< const char * > | type_to_section (TYPE type) |
| Try to determine the ELF section name associated with the TYPE provided in parameter.
|
|
static result< std::string > | note_to_section (const Note ¬e) |
|
static result< const char * > | type_owner (TYPE type) |
| Try to determine the owner's name of the TYPE provided in parameter.
|
|
static std::unique_ptr< Note > | create (const std::string &name, uint32_t type, description_t description, std::string section_name, Header::FILE_TYPE ftype=Header::FILE_TYPE::NONE, ARCH arch=ARCH::NONE, Header::CLASS cls=Header::CLASS::NONE) |
| Create a new note from the given parameters. Additional information such as the architecture or the ELF class could be required for creating notes like Coredump notes.
|
|
static std::unique_ptr< Note > | create (const std::string &name, TYPE type, description_t description, std::string section_name, ARCH arch=ARCH::NONE, Header::CLASS cls=Header::CLASS::NONE) |
| Create a new note from the given parameters. Additional information such as the architecture or the ELF class could be required for creating notes like Coredump notes.
|
|
static std::unique_ptr< Note > | create (BinaryStream &stream, std::string section_name, Header::FILE_TYPE ftype=Header::FILE_TYPE::NONE, ARCH arch=ARCH::NONE, Header::CLASS cls=Header::CLASS::NONE) |
| Create a new note from the given stream. Additional information such as the architecture or the ELF class could be required for creating notes like Coredump notes.
|
|
Class that wraps the NT_GNU_PROPERTY_TYPE_0
note.