Stub updates AT_PHDR for 32-bit libmusl, particularly -fPIE

https://github.com/upx/upx/issues/200
	modified:   stub/src/i386-linux.elf-main.c
	  also *.elf-fold.h, *.elf-fold.map for arm, armeb, i386, mips, mipsel, powerpc
	modified:   ../.github/travis_testsuite_1.sh
This commit is contained in:
John Reiser
2018-08-04 18:26:02 -07:00
parent 5ea3627cab
commit b97688d119
16 changed files with 760 additions and 757 deletions
+8 -8
View File
@@ -9,7 +9,7 @@ Linker script and memory map
TARGET(elf32-littlearm)
0x0000000000008080 . = ((0x8000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000008080 0x9b0
.text 0x0000000000008080 0x9c0
*(.text)
.text 0x0000000000008080 0x2dc tmp/arm.v4a-linux.elf-fold.o
0x00000000000082b0 munmap
@@ -29,18 +29,18 @@ TARGET(elf32-littlearm)
0x0000000000008300 div10
0x00000000000082b8 mprotect
0x0000000000008288 close
.text 0x000000000000835c 0x6d4 tmp/arm.v4a-linux.elf-main.o
.text 0x000000000000835c 0x6e4 tmp/arm.v4a-linux.elf-main.o
0x000000000000837c get_page_mask
0x00000000000088f0 upx_main
0x000000000000890c upx_main
*(.data)
.data 0x0000000000008a30 0x0 tmp/arm.v4a-linux.elf-fold.o
.data 0x0000000000008a30 0x0 tmp/arm.v4a-linux.elf-main.o
.data 0x0000000000008a40 0x0 tmp/arm.v4a-linux.elf-fold.o
.data 0x0000000000008a40 0x0 tmp/arm.v4a-linux.elf-main.o
.data
.bss 0x0000000000008a30 0x0
.bss 0x0000000000008a30 0x0 tmp/arm.v4a-linux.elf-fold.o
.bss 0x0000000000008a30 0x0 tmp/arm.v4a-linux.elf-main.o
.bss 0x0000000000008a40 0x0
.bss 0x0000000000008a40 0x0 tmp/arm.v4a-linux.elf-fold.o
.bss 0x0000000000008a40 0x0 tmp/arm.v4a-linux.elf-main.o
LOAD tmp/arm.v4a-linux.elf-fold.o
LOAD tmp/arm.v4a-linux.elf-main.o
OUTPUT(tmp/arm.v4a-linux.elf-fold.bin elf32-littlearm)
+8 -8
View File
@@ -9,7 +9,7 @@ Linker script and memory map
TARGET(elf32-littlearm)
0x0000000000008080 . = ((0x8000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000008080 0xa4c
.text 0x0000000000008080 0xa5c
*(.text)
.text 0x0000000000008080 0x37c tmp/arm.v5a-linux.elf-fold.o
0x000000000000831c munmap
@@ -29,18 +29,18 @@ TARGET(elf32-littlearm)
0x00000000000083a0 div10
0x0000000000008330 mprotect
0x00000000000082b8 close
.text 0x00000000000083fc 0x6d0 tmp/armel-linux.elf-main.o
.text 0x00000000000083fc 0x6e0 tmp/armel-linux.elf-main.o
0x000000000000841c get_page_mask
0x000000000000898c upx_main
0x00000000000089a8 upx_main
*(.data)
.data 0x0000000000008acc 0x0 tmp/arm.v5a-linux.elf-fold.o
.data 0x0000000000008acc 0x0 tmp/armel-linux.elf-main.o
.data 0x0000000000008adc 0x0 tmp/arm.v5a-linux.elf-fold.o
.data 0x0000000000008adc 0x0 tmp/armel-linux.elf-main.o
.data
.bss 0x0000000000008acc 0x0
.bss 0x0000000000008acc 0x0 tmp/arm.v5a-linux.elf-fold.o
.bss 0x0000000000008acc 0x0 tmp/armel-linux.elf-main.o
.bss 0x0000000000008adc 0x0
.bss 0x0000000000008adc 0x0 tmp/arm.v5a-linux.elf-fold.o
.bss 0x0000000000008adc 0x0 tmp/armel-linux.elf-main.o
LOAD tmp/arm.v5a-linux.elf-fold.o
LOAD tmp/armel-linux.elf-main.o
OUTPUT(tmp/arm.v5a-linux.elf-fold.bin elf32-littlearm)
+8 -8
View File
@@ -9,7 +9,7 @@ Linker script and memory map
TARGET(elf32-bigarm)
0x0000000000008080 . = ((0x8000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000008080 0x9b0
.text 0x0000000000008080 0x9c0
*(.text)
.text 0x0000000000008080 0x2dc tmp/armeb.v4a-linux.elf-fold.o
0x00000000000082b0 munmap
@@ -29,18 +29,18 @@ TARGET(elf32-bigarm)
0x0000000000008300 div10
0x00000000000082b8 mprotect
0x0000000000008288 close
.text 0x000000000000835c 0x6d4 tmp/armeb.v4a-linux.elf-main.o
.text 0x000000000000835c 0x6e4 tmp/armeb.v4a-linux.elf-main.o
0x000000000000837c get_page_mask
0x00000000000088f0 upx_main
0x000000000000890c upx_main
*(.data)
.data 0x0000000000008a30 0x0 tmp/armeb.v4a-linux.elf-fold.o
.data 0x0000000000008a30 0x0 tmp/armeb.v4a-linux.elf-main.o
.data 0x0000000000008a40 0x0 tmp/armeb.v4a-linux.elf-fold.o
.data 0x0000000000008a40 0x0 tmp/armeb.v4a-linux.elf-main.o
.data
.bss 0x0000000000008a30 0x0
.bss 0x0000000000008a30 0x0 tmp/armeb.v4a-linux.elf-fold.o
.bss 0x0000000000008a30 0x0 tmp/armeb.v4a-linux.elf-main.o
.bss 0x0000000000008a40 0x0
.bss 0x0000000000008a40 0x0 tmp/armeb.v4a-linux.elf-fold.o
.bss 0x0000000000008a40 0x0 tmp/armeb.v4a-linux.elf-main.o
LOAD tmp/armeb.v4a-linux.elf-fold.o
LOAD tmp/armeb.v4a-linux.elf-main.o
OUTPUT(tmp/armeb.v4a-linux.elf-fold.bin elf32-bigarm)
+9 -10
View File
@@ -9,25 +9,24 @@ Linker script and memory map
TARGET(elf32-i386)
0x0000000000c01080 . = ((0xc01000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000c01080 0x68c
.text 0x0000000000c01080 0x6ac
*(.text)
.text 0x0000000000c01080 0x14c tmp/i386-linux.elf-fold.o
0x0000000000c011a0 mmap
.text 0x0000000000c011cc 0x53e tmp/i386-linux.elf-main.o
.text 0x0000000000c011cc 0x560 tmp/i386-linux.elf-main.o
0x0000000000c012f4 get_page_mask
0x0000000000c015fb upx_main
0x0000000000c01622 upx_main
*(.data)
*fill* 0x0000000000c0170a 0x2 00
.data 0x0000000000c0170c 0x0 tmp/i386-linux.elf-fold.o
.data 0x0000000000c0170c 0x0 tmp/i386-linux.elf-main.o
.data 0x0000000000c0172c 0x0 tmp/i386-linux.elf-fold.o
.data 0x0000000000c0172c 0x0 tmp/i386-linux.elf-main.o
.data
.bss 0x0000000000c0170c 0x0
.bss 0x0000000000c0170c 0x0 tmp/i386-linux.elf-fold.o
.bss 0x0000000000c0170c 0x0 tmp/i386-linux.elf-main.o
.bss 0x0000000000c0172c 0x0
.bss 0x0000000000c0172c 0x0 tmp/i386-linux.elf-fold.o
.bss 0x0000000000c0172c 0x0 tmp/i386-linux.elf-main.o
.rel.dyn 0x0000000000c0170c 0x0
.rel.dyn 0x0000000000c0172c 0x0
.rel.text 0x0000000000000000 0x0 tmp/i386-linux.elf-fold.o
LOAD tmp/i386-linux.elf-fold.o
LOAD tmp/i386-linux.elf-main.o
+8 -8
View File
@@ -9,20 +9,20 @@ Linker script and memory map
TARGET(elf32-bigmips)
0x0000000000100080 . = ((0x100000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000100080 0x990
.text 0x0000000000100080 0x9b0
*(.text)
.text 0x0000000000100080 0x170 tmp/mips.r3000-linux.elf-fold.o
.text 0x00000000001001f0 0x820 tmp/mips.r3000-linux.elf-main.o
0x0000000000100870 upx_main
.text 0x00000000001001f0 0x840 tmp/mips.r3000-linux.elf-main.o
0x0000000000100894 upx_main
*(.data)
.data 0x0000000000100a10 0x0 tmp/mips.r3000-linux.elf-fold.o
.data 0x0000000000100a10 0x0 tmp/mips.r3000-linux.elf-main.o
.data 0x0000000000100a30 0x0 tmp/mips.r3000-linux.elf-fold.o
.data 0x0000000000100a30 0x0 tmp/mips.r3000-linux.elf-main.o
.data
.bss 0x0000000000100a10 0x0
.bss 0x0000000000100a10 0x0 tmp/mips.r3000-linux.elf-fold.o
.bss 0x0000000000100a10 0x0 tmp/mips.r3000-linux.elf-main.o
.bss 0x0000000000100a30 0x0
.bss 0x0000000000100a30 0x0 tmp/mips.r3000-linux.elf-fold.o
.bss 0x0000000000100a30 0x0 tmp/mips.r3000-linux.elf-main.o
LOAD tmp/mips.r3000-linux.elf-fold.o
LOAD tmp/mips.r3000-linux.elf-main.o
OUTPUT(tmp/mips.r3000-linux.elf-fold.bin elf32-bigmips)
+8 -8
View File
@@ -9,20 +9,20 @@ Linker script and memory map
TARGET(elf32-littlemips)
0x0000000000100080 . = ((0x100000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000100080 0x990
.text 0x0000000000100080 0x9b0
*(.text)
.text 0x0000000000100080 0x170 tmp/mipsel.r3000-linux.elf-fold.o
.text 0x00000000001001f0 0x820 tmp/mipsel.r3000-linux.elf-main.o
0x0000000000100870 upx_main
.text 0x00000000001001f0 0x840 tmp/mipsel.r3000-linux.elf-main.o
0x0000000000100894 upx_main
*(.data)
.data 0x0000000000100a10 0x0 tmp/mipsel.r3000-linux.elf-fold.o
.data 0x0000000000100a10 0x0 tmp/mipsel.r3000-linux.elf-main.o
.data 0x0000000000100a30 0x0 tmp/mipsel.r3000-linux.elf-fold.o
.data 0x0000000000100a30 0x0 tmp/mipsel.r3000-linux.elf-main.o
.data
.bss 0x0000000000100a10 0x0
.bss 0x0000000000100a10 0x0 tmp/mipsel.r3000-linux.elf-fold.o
.bss 0x0000000000100a10 0x0 tmp/mipsel.r3000-linux.elf-main.o
.bss 0x0000000000100a30 0x0
.bss 0x0000000000100a30 0x0 tmp/mipsel.r3000-linux.elf-fold.o
.bss 0x0000000000100a30 0x0 tmp/mipsel.r3000-linux.elf-main.o
LOAD tmp/mipsel.r3000-linux.elf-fold.o
LOAD tmp/mipsel.r3000-linux.elf-main.o
OUTPUT(tmp/mipsel.r3000-linux.elf-fold.bin elf32-littlemips)
+9 -9
View File
@@ -9,7 +9,7 @@ Linker script and memory map
TARGET(elf32-powerpc)
0x0000000000100080 . = ((0x100000 + SIZEOF_HEADERS) + 0xc)
.text 0x0000000000100080 0xfc8
.text 0x0000000000100080 0xfd8
*(.text)
.text 0x0000000000100080 0x250 tmp/powerpc-linux.elf-fold.o
0x0000000000100080 get_page_mask
@@ -24,19 +24,19 @@ TARGET(elf32-powerpc)
0x00000000001002a8 open
0x00000000001002b8 mprotect
0x00000000001002b0 close
.text 0x00000000001002d0 0xd78 tmp/powerpc-linux.elf-main.o
0x0000000000100e40 upx_main
.text 0x00000000001002d0 0xd88 tmp/powerpc-linux.elf-main.o
0x0000000000100e58 upx_main
*(.data)
.data 0x0000000000101048 0x0 tmp/powerpc-linux.elf-fold.o
.data 0x0000000000101048 0x0 tmp/powerpc-linux.elf-main.o
.data 0x0000000000101058 0x0 tmp/powerpc-linux.elf-fold.o
.data 0x0000000000101058 0x0 tmp/powerpc-linux.elf-main.o
.data
.bss 0x0000000000101048 0x0
.bss 0x0000000000101048 0x0 tmp/powerpc-linux.elf-fold.o
.bss 0x0000000000101048 0x0 tmp/powerpc-linux.elf-main.o
.bss 0x0000000000101058 0x0
.bss 0x0000000000101058 0x0 tmp/powerpc-linux.elf-fold.o
.bss 0x0000000000101058 0x0 tmp/powerpc-linux.elf-main.o
.rela.dyn 0x0000000000101048 0x0
.rela.dyn 0x0000000000101058 0x0
.rela.text 0x0000000000000000 0x0 tmp/powerpc-linux.elf-fold.o
LOAD tmp/powerpc-linux.elf-fold.o
LOAD tmp/powerpc-linux.elf-main.o