Blame tests/run-getphdrnum.sh

Packit Service 97d2fb
#! /bin/sh
Packit Service 97d2fb
Packit Service 97d2fb
# testfile-phdrs.elf generated with python3 script
Packit Service 97d2fb
# import struct
Packit Service 97d2fb
# import sys
Packit Service 97d2fb
# 
Packit Service 97d2fb
# phnum = 66000
Packit Service 97d2fb
# 
Packit Service 97d2fb
# sys.stdout.buffer.write(
Packit Service 97d2fb
#     struct.pack(
Packit Service 97d2fb
#         "<16BHHIQQQIHHHHHH",
Packit Service 97d2fb
#         # EI_MAG
Packit Service 97d2fb
#         *b"\x7fELF",
Packit Service 97d2fb
#         # EI_CLASS = ELFCLASS64
Packit Service 97d2fb
#         2,
Packit Service 97d2fb
#         # EI_DATA = ELFDATA2LSB
Packit Service 97d2fb
#         1,
Packit Service 97d2fb
#         # EI_VERSION
Packit Service 97d2fb
#         1,
Packit Service 97d2fb
#         # EI_OSABI = ELFOSABI_SYSV
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#         # EI_ABIVERSION
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#         # EI_PAD
Packit Service 97d2fb
#         *bytes(7),
Packit Service 97d2fb
#         # e_type = ET_CORE
Packit Service 97d2fb
#         4,
Packit Service 97d2fb
#         # e_machine = EM_X86_64
Packit Service 97d2fb
#         62,
Packit Service 97d2fb
#         # e_version
Packit Service 97d2fb
#         1,
Packit Service 97d2fb
#         # e_entry
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#         # e_phoff = sizeof(Elf64_Ehdr) + sizeof(Elf64_Shdr)
Packit Service 97d2fb
#         128,
Packit Service 97d2fb
#         # e_shoff = sizeof(Elf64_Ehdr)
Packit Service 97d2fb
#         64,
Packit Service 97d2fb
#         # e_flags
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#         # e_ehsize
Packit Service 97d2fb
#         64,
Packit Service 97d2fb
#         # e_phentsize
Packit Service 97d2fb
#         56,
Packit Service 97d2fb
#         # e_phnum = PN_XNUM
Packit Service 97d2fb
#         0xFFFF,
Packit Service 97d2fb
#         # e_shentsize
Packit Service 97d2fb
#         64,
Packit Service 97d2fb
#         # e_shnum
Packit Service 97d2fb
#         1,
Packit Service 97d2fb
#         # e_shstrndx
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#     )
Packit Service 97d2fb
# )
Packit Service 97d2fb
# 
Packit Service 97d2fb
# sys.stdout.buffer.write(
Packit Service 97d2fb
#     struct.pack(
Packit Service 97d2fb
#         "
Packit Service 97d2fb
#         # sh_name
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#         # sh_type = SHT_NULL
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#         # sh_flags
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#         # sh_addr
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#         # sh_offset
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#         # sh_size
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#         # sh_link
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#         # sh_info
Packit Service 97d2fb
#         phnum,
Packit Service 97d2fb
#         # sh_addralign
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#         # sh_entsize
Packit Service 97d2fb
#         0,
Packit Service 97d2fb
#     )
Packit Service 97d2fb
# )
Packit Service 97d2fb
# 
Packit Service 97d2fb
# for i in range(phnum):
Packit Service 97d2fb
#     sys.stdout.buffer.write(
Packit Service 97d2fb
#         struct.pack(
Packit Service 97d2fb
#             "
Packit Service 97d2fb
#             # p_type = PT_LOAD
Packit Service 97d2fb
#             1,
Packit Service 97d2fb
#             # p_flags = PF_X|PF_W|PF_R
Packit Service 97d2fb
#             0x7,
Packit Service 97d2fb
#             # p_offset
Packit Service 97d2fb
#             0,
Packit Service 97d2fb
#             # p_vaddr
Packit Service 97d2fb
#             # i * 4096,
Packit Service 97d2fb
#             4096,
Packit Service 97d2fb
#             # p_paddr
Packit Service 97d2fb
#             0,
Packit Service 97d2fb
#             # p_filesz
Packit Service 97d2fb
#             0,
Packit Service 97d2fb
#             # p_memsz
Packit Service 97d2fb
#             4096,
Packit Service 97d2fb
#             # p_align
Packit Service 97d2fb
#             0,
Packit Service 97d2fb
#         )
Packit Service 97d2fb
#     )
Packit Service 97d2fb
Packit Service 97d2fb
. $srcdir/test-subr.sh
Packit Service 97d2fb
Packit Service 97d2fb
testfiles testfile-phdrs.elf
Packit Service 97d2fb
Packit Service 97d2fb
testrun_compare ${abs_top_builddir}/src/readelf -h testfile-phdrs.elf<<\EOF
Packit Service 97d2fb
ELF Header:
Packit Service 97d2fb
  Magic:   7f 45 4c 46 02 01 01 00 00 00 00 00 00 00 00 00
Packit Service 97d2fb
  Class:                             ELF64
Packit Service 97d2fb
  Data:                              2's complement, little endian
Packit Service 97d2fb
  Ident Version:                     1 (current)
Packit Service 97d2fb
  OS/ABI:                            UNIX - System V
Packit Service 97d2fb
  ABI Version:                       0
Packit Service 97d2fb
  Type:                              CORE (Core file)
Packit Service 97d2fb
  Machine:                           AMD x86-64
Packit Service 97d2fb
  Version:                           1 (current)
Packit Service 97d2fb
  Entry point address:               0
Packit Service 97d2fb
  Start of program headers:          128 (bytes into file)
Packit Service 97d2fb
  Start of section headers:          64 (bytes into file)
Packit Service 97d2fb
  Flags:                             
Packit Service 97d2fb
  Size of this header:               64 (bytes)
Packit Service 97d2fb
  Size of program header entries:    56 (bytes)
Packit Service 97d2fb
  Number of program headers entries: 65535 (66000 in [0].sh_info)
Packit Service 97d2fb
  Size of section header entries:    64 (bytes)
Packit Service 97d2fb
  Number of section headers entries: 1
Packit Service 97d2fb
  Section header string table index: 0
Packit Service 97d2fb
Packit Service 97d2fb
EOF
Packit Service 97d2fb
Packit Service 97d2fb
testrun_compare ${abs_builddir}/getphdrnum testfile-phdrs.elf<<\EOF
Packit Service 97d2fb
66000
Packit Service 97d2fb
EOF
Packit Service 97d2fb
Packit Service 97d2fb
exit 0