INNER CODE UNIT · Python
new_filesize
stablyai/agent-slack · scripts/strip-macho-signature.py:54
new_filesize = old_filesize - sig_datasize
struct.pack_into("<Q", data, fs_off, new_filesize)
# vmsize must cover filesize (page-aligned); round up to 16 KiB.
page = 0x4000
struct.pack_into("<Q", data, vs_off, (new_filesize + page - 1) & ~(page - 1))
# Second pass: rebuild load commands without LC_CODE_SIGNATURE.
offset = hdr_size
keep = bytearray()
for _ in range(ncmds):
cmd, cmdsize = struct.unpack_from("<II", data, offset)
if cmd != LC_CODE_SIGNATURE:
keep.extend(data[offset : offset + cmdsize])
offset += cmdsize
# Rewrite load commands and zero leftover gap.
data[hdr_size : hdr_size + len(keep)] = keep
gap_start = hdr_size + len(keep)