diff options
| author | Sunil Nimmagadda <sunil@nimmagadda.net> | 2026-10-09 22:25:52 +0530 |
|---|---|---|
| committer | Sunil Nimmagadda <sunil@nimmagadda.net> | 2026-10-09 22:25:52 +0530 |
| commit | d5fabbf2fe963db5096f156da7ab04568ea1ef06 (patch) | |
| tree | 34178fef9a1a6e2f907c954ff59585882a0d64f1 /mkelf.lua | |
| parent | 3f3efc9e40ee07e6cf777f1e135e2219a24d0701 (diff) | |
Fixup rest of the ElfHeader fields.
Diffstat (limited to 'mkelf.lua')
| -rw-r--r-- | mkelf.lua | 48 |
1 files changed, 35 insertions, 13 deletions
@@ -63,29 +63,51 @@ local Machine <const> = { ---@field magic ElfMagic ---@field class Class ---@field data Endian ----@field version integer +---@field ident_version integer ---@field osabi Osabi ---@field abiversion integer ---@field type Type ---@field machine Machine +---@field version integer +---@field entry integer +---@field phoff integer +---@field shoff integer +---@field flags integer +---@field ehsize integer +---@field phentsize integer +---@field phnum integer +---@field shentsize integer +---@field shnum integer +---@field shstrndx integer ---@type ElfHeader local header <const> = { magic = { 0x7f, 0x45, 0x4c, 0x46 }, class = Class.bit32, data = Endian.big, - version = version, + ident_version = version, osabi = Osabi.netbsd, abiversion = 0, type = Type.exec, machine = Machine.x86, + version = version, + entry = 0, + phoff = 0x34, + shoff = 0xff, + flags = 0, + ehsize = 52, + phentsize = 0x20, + phnum = 0, + shentsize = 0x28, + shnum = 0, + shstrndx = 0, pack = function(self) local ident = string.pack("BBBBBBBBBxxxxxxx", self.magic[1], self.magic[2], self.magic[3], self.magic[4], self.class, self.data, - self.version, + self.ident_version, self.osabi, self.abiversion) local e = (self.data == Endian.big) and ">" or "<" @@ -96,16 +118,16 @@ local header <const> = { self.type, self.machine, self.version, - 0, - 0x34, - 0xff, - 0, - 52, - 0x20, - 0, - 0x28, - 0, - 0) + self.entry, + self.phoff, + self.shoff, + self.flags, + self.ehsize, + self.phentsize, + self.phnum, + self.shentsize, + self.shnum, + self.shstrndx) return ident .. hdr end } |
