mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-07-24 08:27:50 +00:00
added ELF header and parser
This commit is contained in:
@@ -0,0 +1,29 @@
|
||||
// Copyright (c) 2025 Epic Games Tools
|
||||
// Licensed under the MIT license (https://opensource.org/license/mit/)
|
||||
|
||||
#ifndef ELF_PARSE_H
|
||||
#define ELF_PARSE_H
|
||||
|
||||
////////////////////////////////
|
||||
|
||||
typedef struct ELF_BinInfo
|
||||
{
|
||||
ELF_Hdr64 hdr;
|
||||
Rng1U64 sh_name_range;
|
||||
} ELF_BinInfo;
|
||||
|
||||
typedef struct ELF_Shdr64Array
|
||||
{
|
||||
U64 count;
|
||||
ELF_Shdr64 *v;
|
||||
} ELF_Shdr64Array;
|
||||
|
||||
////////////////////////////////
|
||||
|
||||
internal B32 elf_check_magic(String8 data);
|
||||
internal ELF_BinInfo elf_bin_from_data(String8 data);
|
||||
|
||||
internal ELF_Shdr64Array elf_shdr64_array_from_bin(Arena *arena, String8 raw_data, ELF_Hdr64 *hdr);
|
||||
internal String8 elf_name_from_shdr64(String8 raw_data, ELF_Hdr64 *hdr, Rng1U64 sh_name_range, ELF_Shdr64 *shdr);
|
||||
|
||||
#endif // ELF_PARSE_H
|
||||
Reference in New Issue
Block a user