[llvm] d8472ac - [JITLink][ELF] Check that ELF buffer has at least ELF::EI_NIDENT bytes.
Lang Hames via llvm-commits
llvm-commits at lists.llvm.org
Mon Apr 17 11:42:32 PDT 2023
Author: Lang Hames
Date: 2023-04-17T11:42:27-07:00
New Revision: d8472ac238dfd2f3bae61a56903de5ef5df6360a
URL: https://github.com/llvm/llvm-project/commit/d8472ac238dfd2f3bae61a56903de5ef5df6360a
DIFF: https://github.com/llvm/llvm-project/commit/d8472ac238dfd2f3bae61a56903de5ef5df6360a.diff
LOG: [JITLink][ELF] Check that ELF buffer has at least ELF::EI_NIDENT bytes.
This allows the subsequent code to access the E_IDENT fields, which will be
used in the upcoming JITLink ppc64 backend (https://reviews.llvm.org/D148192).
Added:
Modified:
llvm/lib/ExecutionEngine/JITLink/ELF.cpp
Removed:
################################################################################
diff --git a/llvm/lib/ExecutionEngine/JITLink/ELF.cpp b/llvm/lib/ExecutionEngine/JITLink/ELF.cpp
index 340a0ce134475..e35f8a3d8a2a4 100644
--- a/llvm/lib/ExecutionEngine/JITLink/ELF.cpp
+++ b/llvm/lib/ExecutionEngine/JITLink/ELF.cpp
@@ -57,7 +57,7 @@ Expected<uint16_t> readTargetMachineArch(StringRef Buffer) {
Expected<std::unique_ptr<LinkGraph>>
createLinkGraphFromELFObject(MemoryBufferRef ObjectBuffer) {
StringRef Buffer = ObjectBuffer.getBuffer();
- if (Buffer.size() < ELF::EI_MAG3 + 1)
+ if (Buffer.size() < ELF::EI_NIDENT)
return make_error<JITLinkError>("Truncated ELF buffer");
if (memcmp(Buffer.data(), ELF::ElfMagic, strlen(ELF::ElfMagic)) != 0)
More information about the llvm-commits
mailing list