Elf64_Rela for shlib DT_INIT_ARRAY
Also allow PT_PHDR in shlibs.
Also page align lo end of mmap, like mprotect.
https://github.com/upx/upx/issues/664
modified: p_lx_elf.cpp
modified: stub/src/amd64-linux.elf-so_main.c
modified: stub/src/i386-linux.elf-so_main.c
modified: stub/src/amd64-linux.elf-so_fold.S
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: stub/src/arm.v4a-linux.elf-so_fold.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/arm64-linux.elf-so_fold.S
modified: stub/src/i386-linux.elf-so_fold.S
modified: stub/amd64-linux.elf-so_fold.h
modified: stub/arm.v4a-linux.elf-fold.h
modified: stub/arm.v4a-linux.elf-so_fold.h
modified: stub/arm.v5a-linux.elf-fold.h
modified: stub/arm.v5a-linux.elf-so_fold.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/arm64-linux.elf-so_fold.h
modified: stub/armeb.v4a-linux.elf-fold.h
modified: stub/i386-linux.elf-so_fold.h
modified: stub/tmp/amd64-linux.elf-so_fold.bin.dump
modified: stub/tmp/arm.v4a-linux.elf-fold.map
modified: stub/tmp/arm.v5a-linux.elf-fold.map
modified: stub/tmp/arm64-linux.elf-fold.map
modified: stub/tmp/armeb.v4a-linux.elf-fold.map
modified: stub/src/arch/mips/r3000/macros.ash
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
This commit is contained in:
+1
-1
@@ -695,7 +695,7 @@ off_t PackLinuxElf64::pack3(OutputFile *fo, Filter &ft)
|
||||
fo->seek((char *)user_init_rp - (char *)&file_image[0], SEEK_SET);
|
||||
Elf64_Rela rela(*(Elf64_Rela const *)user_init_rp);
|
||||
//u64_t r_info = get_te64(&((Elf64_Rela const *)user_init_rp)->r_info);
|
||||
u32_t r_type = (Elf64_Ehdr::EM_AARCH64 == e_machine) ? R_AARCH64_RELATIVE
|
||||
u32_t r_type = (Elf64_Ehdr::EM_AARCH64 == e_machine) ? R_AARCH64_RELATIVE
|
||||
: (Elf64_Ehdr::EM_X86_64 == e_machine) ? R_X86_64_RELATIVE
|
||||
: (Elf64_Ehdr::EM_PPC64 == e_machine) ? R_PPC64_RELATIVE
|
||||
: 0;
|
||||
|
||||
Reference in New Issue
Block a user