ELF2: fix lzma on amd64-linux.elf-*

New -DWINDOWS_BACK so that amd64-win64.pe.h does not change.
This hides a real bug (unchecked), but would change anti-virus status.
	modified:   src/stub/src/amd64-expand.S
	modified:   src/stub/src/amd64-linux.elf-entry.S
	modified:   src/stub/src/amd64-linux.elf-fold.S
	modified:   src/stub/src/arch/amd64/lzma_d.S
	modified:   src/stub/Makefile
	modified:   misc/testsuite/upx_testsuite_1-expected_sha256sums.sh
           plus generated *.h, *.map, *.dump
This commit is contained in:
John Reiser
2024-06-22 13:25:22 -07:00
parent 743eb5cc26
commit c924c32d54
17 changed files with 3606 additions and 3501 deletions
+12 -8
View File
@@ -7,13 +7,13 @@ Idx Name Size VMA LMA File off Algn
2 NRV2E 0ba 0 0 0c6 2**0 CONTENTS
3 NRV2D 0a1 0 0 0180 2**0 CONTENTS
4 NRV2B 093 0 0 0221 2**0 CONTENTS
5 LZMA_ELF00 064 0 0 02b4 2**0 CONTENTS
6 LZMA_DEC10 09f7 0 0 0318 2**0 CONTENTS
7 LZMA_DEC20 09f7 0 0 0d0f 2**0 CONTENTS
8 LZMA_DEC30 018 0 0 01706 2**0 CONTENTS
9 NRV_TAIL 0 0 0 0171e 2**0 CONTENTS
10 MACHMAINY 011 0 0 0171e 2**0 CONTENTS
11 MACHMAINZ 0148 0 0 0172f 2**0 CONTENTS
5 LZMA_ELF00 065 0 0 02b4 2**0 CONTENTS
6 LZMA_DEC10 09f7 0 0 0319 2**0 CONTENTS
7 LZMA_DEC20 09f7 0 0 0d10 2**0 CONTENTS
8 LZMA_DEC30 01b 0 0 01707 2**0 CONTENTS
9 NRV_TAIL 0 0 0 01722 2**0 CONTENTS
10 MACHMAINY 011 0 0 01722 2**0 CONTENTS
11 MACHMAINZ 0148 0 0 01733 2**0 CONTENTS
SYMBOL TABLE:
0000000000000000 l d NRV_HEAD 0 NRV_HEAD
0000000000000000 l d LZMA_DEC30 0 LZMA_DEC30
@@ -51,7 +51,11 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [LZMA_ELF00]:
OFFSET TYPE VALUE
0000000000000006 R_X86_64_PC32 LZMA_DEC30+0x0000000000000012
0000000000000006 R_X86_64_PC32 LZMA_DEC30+0x0000000000000015
RELOCATION RECORDS FOR [LZMA_DEC30]:
OFFSET TYPE VALUE
0000000000000015 R_X86_64_PC32 MACHMAINY+0xfffffffffffffffc
RELOCATION RECORDS FOR [MACHMAINZ]:
OFFSET TYPE VALUE
+12 -8
View File
@@ -9,13 +9,13 @@ Idx Name Size VMA LMA File off Algn
4 NRV2E 0ba 0 0 0103 2**0 CONTENTS
5 NRV2D 0a1 0 0 01bd 2**0 CONTENTS
6 NRV2B 093 0 0 025e 2**0 CONTENTS
7 LZMA_ELF00 064 0 0 02f1 2**0 CONTENTS
8 LZMA_DEC10 09f7 0 0 0355 2**0 CONTENTS
9 LZMA_DEC20 09f7 0 0 0d4c 2**0 CONTENTS
10 LZMA_DEC30 018 0 0 01743 2**0 CONTENTS
11 NRV_TAIL 0 0 0 0175b 2**0 CONTENTS
12 MACHMAINY 011 0 0 0175b 2**0 CONTENTS
13 MACHMAINZ 0135 0 0 0176c 2**0 CONTENTS
7 LZMA_ELF00 065 0 0 02f1 2**0 CONTENTS
8 LZMA_DEC10 09f7 0 0 0356 2**0 CONTENTS
9 LZMA_DEC20 09f7 0 0 0d4d 2**0 CONTENTS
10 LZMA_DEC30 01b 0 0 01744 2**0 CONTENTS
11 NRV_TAIL 0 0 0 0175f 2**0 CONTENTS
12 MACHMAINY 011 0 0 0175f 2**0 CONTENTS
13 MACHMAINZ 0135 0 0 01770 2**0 CONTENTS
SYMBOL TABLE:
0000000000000000 l d NRV_HEAD 0 NRV_HEAD
0000000000000000 l d LZMA_DEC30 0 LZMA_DEC30
@@ -55,7 +55,11 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [LZMA_ELF00]:
OFFSET TYPE VALUE
0000000000000006 R_X86_64_PC32 LZMA_DEC30+0x0000000000000012
0000000000000006 R_X86_64_PC32 LZMA_DEC30+0x0000000000000015
RELOCATION RECORDS FOR [LZMA_DEC30]:
OFFSET TYPE VALUE
0000000000000015 R_X86_64_PC32 MACHMAINY+0xfffffffffffffffc
RELOCATION RECORDS FOR [MACHMAINZ]:
OFFSET TYPE VALUE
+13 -13
View File
@@ -16,18 +16,21 @@ Linker script and memory map
0x00000000000002b5 underlay
0x00000000000007d4 upx_main
EXP_HEAD 0x0000000000000000 0xe0
EXP_HEAD 0x0000000000000000 0xe0 tmp/amd64-expand.o
EXP_HEAD 0x0000000000000000 0xe1
EXP_HEAD 0x0000000000000000 0xe1 tmp/amd64-expand.o
0x0000000000000000 f_expand
NRV2E 0x0000000000000000 0xe5
NRV2E 0x0000000000000000 0xe5 tmp/amd64-expand.o
NRV2E 0x0000000000000000 0xe6
NRV2E 0x0000000000000000 0xe6 tmp/amd64-expand.o
NRV2D 0x0000000000000000 0xd7
NRV2D 0x0000000000000000 0xd7 tmp/amd64-expand.o
NRV2D 0x0000000000000000 0xd8
NRV2D 0x0000000000000000 0xd8 tmp/amd64-expand.o
NRV2B 0x0000000000000000 0xc1
NRV2B 0x0000000000000000 0xc1 tmp/amd64-expand.o
NRV2B 0x0000000000000000 0xc2
NRV2B 0x0000000000000000 0xc2 tmp/amd64-expand.o
LZMA_ELF00 0x0000000000000000 0x6f
LZMA_ELF00 0x0000000000000000 0x6f tmp/amd64-expand.o
.data 0x0000000000000000 0x0
.data 0x0000000000000000 0x0 tmp/amd64-linux.elf-fold.o
@@ -62,17 +65,14 @@ SYSCALLS 0x0000000000000000 0x8e
0x0000000000000082 mprotect
0x0000000000000076 close
LZMA_ELF00 0x0000000000000000 0x64
LZMA_ELF00 0x0000000000000000 0x64 tmp/amd64-expand.o
LZMA_DEC10 0x0000000000000000 0x9f7
LZMA_DEC10 0x0000000000000000 0x9f7 tmp/amd64-expand.o
LZMA_DEC20 0x0000000000000000 0x9f7
LZMA_DEC20 0x0000000000000000 0x9f7 tmp/amd64-expand.o
LZMA_DEC30 0x0000000000000000 0x18
LZMA_DEC30 0x0000000000000000 0x18 tmp/amd64-expand.o
LZMA_DEC30 0x0000000000000000 0x23
LZMA_DEC30 0x0000000000000000 0x23 tmp/amd64-expand.o
EXP_TAIL 0x0000000000000000 0xc
EXP_TAIL 0x0000000000000000 0xc tmp/amd64-expand.o
+25 -21
View File
@@ -3,18 +3,18 @@ file format elf64-x86-64
Sections:
Idx Name Size VMA LMA File off Algn Flags
0 SO_MAIN 0787 0 0 040 2**4 CONTENTS
1 EXP_HEAD 0e0 0 0 07c7 2**0 CONTENTS
2 NRV2E 0e5 0 0 08a7 2**0 CONTENTS
3 NRV2D 0d7 0 0 098c 2**0 CONTENTS
4 NRV2B 0c1 0 0 0a63 2**0 CONTENTS
5 SO_HEAD 02c 0 0 0b24 2**0 CONTENTS
6 ptr_NEXT 0 0 0 0b50 2**0 CONTENTS
7 SO_TAIL 098 0 0 0b50 2**0 CONTENTS
8 LZMA_ELF00 064 0 0 0be8 2**0 CONTENTS
9 LZMA_DEC10 09f7 0 0 0c4c 2**0 CONTENTS
10 LZMA_DEC20 09f7 0 0 01643 2**0 CONTENTS
11 LZMA_DEC30 018 0 0 0203a 2**0 CONTENTS
12 EXP_TAIL 0c 0 0 02052 2**0 CONTENTS
1 EXP_HEAD 0e1 0 0 07c7 2**0 CONTENTS
2 NRV2E 0e6 0 0 08a8 2**0 CONTENTS
3 NRV2D 0d8 0 0 098e 2**0 CONTENTS
4 NRV2B 0c2 0 0 0a66 2**0 CONTENTS
5 LZMA_ELF00 06f 0 0 0b28 2**0 CONTENTS
6 SO_HEAD 02c 0 0 0b97 2**0 CONTENTS
7 ptr_NEXT 0 0 0 0bc3 2**0 CONTENTS
8 SO_TAIL 098 0 0 0bc3 2**0 CONTENTS
9 LZMA_DEC10 09f7 0 0 0c5b 2**0 CONTENTS
10 LZMA_DEC20 09f7 0 0 01652 2**0 CONTENTS
11 LZMA_DEC30 023 0 0 02049 2**0 CONTENTS
12 EXP_TAIL 0c 0 0 0206c 2**0 CONTENTS
SYMBOL TABLE:
0000000000000000 l d EXP_HEAD 0 EXP_HEAD
0000000000000000 l d LZMA_DEC30 0 LZMA_DEC30
@@ -23,10 +23,10 @@ SYMBOL TABLE:
0000000000000000 l d NRV2E 0 NRV2E
0000000000000000 l d NRV2D 0 NRV2D
0000000000000000 l d NRV2B 0 NRV2B
0000000000000000 l d LZMA_ELF00 0 LZMA_ELF00
0000000000000000 l d SO_HEAD 0 SO_HEAD
0000000000000000 l d ptr_NEXT 0 ptr_NEXT
0000000000000000 l d SO_TAIL 0 SO_TAIL
0000000000000000 l d LZMA_ELF00 0 LZMA_ELF00
0000000000000000 l d LZMA_DEC10 0 LZMA_DEC10
0000000000000000 l d LZMA_DEC20 0 LZMA_DEC20
0000000000000031 g SO_TAIL 0 Pmap
@@ -92,23 +92,27 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [NRV2E]:
OFFSET TYPE VALUE
00000000000000da R_X86_64_PC32 EXP_HEAD+0x000000000000009f
0000000000000071 R_X86_64_PC32 EXP_TAIL+0xfffffffffffffffc
00000000000000db R_X86_64_PC32 EXP_HEAD+0x00000000000000a0
0000000000000072 R_X86_64_PC32 EXP_TAIL+0xfffffffffffffffc
RELOCATION RECORDS FOR [NRV2D]:
OFFSET TYPE VALUE
00000000000000cc R_X86_64_PC32 EXP_HEAD+0x000000000000009f
0000000000000071 R_X86_64_PC32 EXP_TAIL+0xfffffffffffffffc
00000000000000cd R_X86_64_PC32 EXP_HEAD+0x00000000000000a0
0000000000000072 R_X86_64_PC32 EXP_TAIL+0xfffffffffffffffc
RELOCATION RECORDS FOR [NRV2B]:
OFFSET TYPE VALUE
00000000000000b6 R_X86_64_PC32 EXP_HEAD+0x000000000000009f
000000000000005d R_X86_64_PC32 EXP_TAIL+0xfffffffffffffffc
00000000000000b7 R_X86_64_PC32 EXP_HEAD+0x00000000000000a0
000000000000005e R_X86_64_PC32 EXP_TAIL+0xfffffffffffffffc
RELOCATION RECORDS FOR [LZMA_ELF00]:
OFFSET TYPE VALUE
0000000000000010 R_X86_64_PC32 LZMA_DEC30+0x0000000000000015
RELOCATION RECORDS FOR [SO_HEAD]:
OFFSET TYPE VALUE
0000000000000013 R_X86_64_PC32 upx_so_main+0xfffffffffffffffc
RELOCATION RECORDS FOR [LZMA_ELF00]:
RELOCATION RECORDS FOR [LZMA_DEC30]:
OFFSET TYPE VALUE
0000000000000006 R_X86_64_PC32 LZMA_DEC30+0x0000000000000012
0000000000000015 R_X86_64_PC32 EXP_TAIL+0xfffffffffffffffc
+12 -8
View File
@@ -7,13 +7,13 @@ Idx Name Size VMA LMA File off Algn
2 NRV2E 0ba 0 0 0c2 2**0 CONTENTS
3 NRV2D 0a1 0 0 017c 2**0 CONTENTS
4 NRV2B 093 0 0 021d 2**0 CONTENTS
5 LZMA_ELF00 064 0 0 02b0 2**0 CONTENTS
6 LZMA_DEC10 09f7 0 0 0314 2**0 CONTENTS
7 LZMA_DEC20 09f7 0 0 0d0b 2**0 CONTENTS
8 LZMA_DEC30 018 0 0 01702 2**0 CONTENTS
9 NRV_TAIL 0 0 0 0171a 2**0 CONTENTS
10 ELFMAINY 03a 0 0 0171a 2**0 CONTENTS
11 ELFMAINZ 01b5 0 0 01754 2**0 CONTENTS
5 LZMA_ELF00 065 0 0 02b0 2**0 CONTENTS
6 LZMA_DEC10 09f7 0 0 0315 2**0 CONTENTS
7 LZMA_DEC20 09f7 0 0 0d0c 2**0 CONTENTS
8 LZMA_DEC30 01b 0 0 01703 2**0 CONTENTS
9 NRV_TAIL 0 0 0 0171e 2**0 CONTENTS
10 ELFMAINY 03a 0 0 0171e 2**0 CONTENTS
11 ELFMAINZ 01b5 0 0 01758 2**0 CONTENTS
SYMBOL TABLE:
0000000000000000 l d NRV_HEAD 0 NRV_HEAD
0000000000000000 l d LZMA_DEC30 0 LZMA_DEC30
@@ -50,7 +50,11 @@ OFFSET TYPE VALUE
RELOCATION RECORDS FOR [LZMA_ELF00]:
OFFSET TYPE VALUE
0000000000000006 R_X86_64_PC32 LZMA_DEC30+0x0000000000000012
0000000000000006 R_X86_64_PC32 LZMA_DEC30+0x0000000000000015
RELOCATION RECORDS FOR [LZMA_DEC30]:
OFFSET TYPE VALUE
0000000000000015 R_X86_64_PC32 ELFMAINY+0xfffffffffffffffc
RELOCATION RECORDS FOR [ELFMAINY]:
OFFSET TYPE VALUE