binfmt-detector-cli: rewrite to support PE32+ binaries (#38)

Rewrite with hard-coded offsets into the PE file format to discern
if a binary is PE32 or PE32+, and then to determine if it contains
a "CLR Data Directory" entry that looks valid.

Tested with PE32 and PE32+ compiled Mono binaries, PE32 and PE32+ native
binaries, and a random assortment of garbage files.

Former-commit-id: 9e7ac86ec84f653a2f79b87183efd5b0ebda001b
This commit is contained in:
Pat Tullmann
2023-10-16 11:16:47 -07:00
committed by GitHub
parent bb231c5b06
commit 0cb742dafb
4772 changed files with 11391249 additions and 2669 deletions

2696
external/rx/Ix/NET/Enumerable.cs vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1 +0,0 @@
1888acd95c9f1c0c058760f12f2feef70cebb473

File diff suppressed because it is too large Load Diff

View File

@@ -1 +0,0 @@
20f7ec88f47bf2dab80accd7eb20f37a19b645b0

File diff suppressed because it is too large Load Diff

View File

@@ -1 +0,0 @@
be068fd2273e68c3136c1e99abe77f7d2e422a92

Binary file not shown.

After

Width:  |  Height:  |  Size: 293 KiB

View File

@@ -1 +0,0 @@
2808c273d4909a467690748ced3b025f8d55c5f4

Binary file not shown.

View File

@@ -1 +0,0 @@
0d0a7de171e6c2f5acd81b81198bd9868d78feca

Binary file not shown.

View File

@@ -1 +0,0 @@
d5e88fca0881e8ab45db66f1733d48c987bf4d10

Binary file not shown.

View File

@@ -1 +0,0 @@
6bb68f67cc29d6bfcfb0e72006a30dbb3a523855

Binary file not shown.

View File

@@ -1 +0,0 @@
03a41c3a699a1430c0e2576ba6823878845d4387

Binary file not shown.

View File

@@ -1 +0,0 @@
338fe7ac4ac1a4517d3d4d7789a8e1404195ff3b

1631
external/rx/Rx/NET/Source/Rx.sln vendored Normal file

File diff suppressed because it is too large Load Diff

View File

@@ -1 +0,0 @@
a5ac01640accbdfb4da572e5226d2ca21cd3227e

Some files were not shown because too many files have changed in this diff Show More