move magic check to PE layer

This commit is contained in:
Nikita Smith
2025-02-25 14:41:15 -08:00
parent 33326a8fa6
commit 8d9f85bfcc
5 changed files with 17 additions and 11 deletions
+1 -9
View File
@@ -214,14 +214,6 @@ rd_format_line_from_voff(Arena *arena, RDI_Parsed *rdi, U64 voff, PathStyle path
return result;
}
internal B32
rd_is_pe(String8 raw_data)
{
PE_DosHeader header = {0};
str8_deserial_read_struct(raw_data, 0, &header);
return header.magic == PE_DOS_MAGIC;
}
internal B32
rd_is_rdi(String8 raw_data)
{
@@ -316,7 +308,7 @@ rd_format_preamble(Arena *arena, String8List *out, String8 indent, String8 input
input_type_string = "Big Obj";
} else if (coff_is_obj(raw_data)) {
input_type_string = "Obj";
} else if (rd_is_pe(raw_data)) {
} else if (pe_check_magic(raw_data)) {
input_type_string = "COFF/PE";
} else if (rd_is_rdi(raw_data)) {
input_type_string = "RDI";
-1
View File
@@ -140,7 +140,6 @@ typedef struct RD_Line
// raddump
internal B32 rd_is_pe (String8 raw_data);
internal B32 rd_is_rdi(String8 raw_data);
internal String8 rd_string_from_flags(Arena *arena, String8List list, U64 remaining_flags);
+1 -1
View File
@@ -269,7 +269,7 @@ entry_point(CmdLine *cmdline)
coff_print_big_obj(arena, out, indent, raw_data, opts);
} else if (coff_is_obj(raw_data)) {
coff_print_obj(arena, out, indent, raw_data, opts);
} else if (rd_is_pe(raw_data)) {
} else if (pe_check_magic(raw_data)) {
RDI_Parsed *rdi = 0;
if (!(opts & RD_Option_NoRdi)) {
rdi = rd_rdi_from_pe(arena, file_path, raw_data);