Skip to content

Commit c70e1a7

Browse files
committed
Fix NotImplementedException for 32b elfs
1 parent bf73964 commit c70e1a7

File tree

1 file changed

+9
-1
lines changed

1 file changed

+9
-1
lines changed

src/LibObjectFile/Elf/Sections/ElfDynamicLinkingTable.cs

Lines changed: 9 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,15 @@ internal override unsafe void InitializeEntrySizeFromRead(DiagnosticBag diagnost
142142
_is32 = is32;
143143

144144
if (is32)
145-
throw new NotImplementedException();
145+
{
146+
if (entrySize != (ulong)sizeof(ElfNative.Elf32_Dyn))
147+
diagnostics.Error(DiagnosticId.ELF_ERR_InvalidSectionEntrySize, $"Invalid size [{entrySize}] for dynamic entry. Expecting to be equal to [{sizeof(ElfNative.Elf32_Dyn)}] bytes.");
148+
else
149+
{
150+
BaseTableEntrySize = (uint)sizeof(ElfNative.Elf32_Dyn);
151+
AdditionalTableEntrySize = (uint)(entrySize - AdditionalTableEntrySize);
152+
}
153+
}
146154
else
147155
{
148156
if (entrySize != (ulong)sizeof(ElfNative.Elf64_Dyn))

0 commit comments

Comments
 (0)