1
0
mirror of https://github.com/upx/upx synced 2025-10-05 19:20:23 +08:00
upx/src
John Reiser 067895fa5f Fix brk+munmap in folded stubs for main programs
qemu emulating a compressed ET_EXEC revealed an access to ElfXX_Phdr
on the discarded side of brk() during cleanup. qemu was more aggressive
than the Linux kernel implementation of brk().
        https://github.com/upx/upx/issues/683

	modified:   stub/src/i386-linux.elf-main.c
	modified:   stub/src/include/linux.h

	modified:   ../misc/testsuite/upx_testsuite_1-expected_sha256sums.sh

	modified:   stub/src/amd64-linux.elf-fold.S
	modified:   stub/src/arm.v4a-linux.elf-fold.S
	modified:   stub/src/arm64-linux.elf-fold.S
	modified:   stub/src/i386-linux.elf-fold.S
	modified:   stub/src/mipsel.r3000-linux.elf-fold.S
	modified:   stub/src/powerpc-linux.elf-fold.S
	modified:   stub/src/powerpc64le-linux.elf-fold.S

	modified:   stub/amd64-linux.elf-fold.h
	modified:   stub/arm.v4a-linux.elf-fold.h
	modified:   stub/arm.v5a-linux.elf-fold.h
	modified:   stub/arm64-linux.elf-fold.h
	modified:   stub/armeb.v4a-linux.elf-fold.h
	modified:   stub/i386-linux.elf-fold.h
	modified:   stub/mips.r3000-linux.elf-fold.h
	modified:   stub/mipsel.r3000-linux.elf-fold.h
	modified:   stub/powerpc-linux.elf-fold.h
	modified:   stub/powerpc64-linux.elf-fold.h
	modified:   stub/powerpc64le-linux.elf-fold.h

	modified:   stub/tmp/amd64-linux.elf-fold.map
	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/tmp/i386-linux.elf-fold.map
	modified:   stub/tmp/mips.r3000-linux.elf-fold.map
	modified:   stub/tmp/mipsel.r3000-linux.elf-fold.map
	modified:   stub/tmp/powerpc-linux.elf-fold.map
	modified:   stub/tmp/powerpc64-linux.elf-fold.map
	modified:   stub/tmp/powerpc64le-linux.elf-fold.map
2023-07-17 07:21:56 +02:00
..
check all: misc updates 2023-07-12 18:59:08 +02:00
compress all: misc and noexcept updates 2023-07-09 17:36:24 +02:00
console src/console: disable win32 screen driver when running under Wine 2023-07-06 10:09:38 +02:00
filter Merge branch 'devel' into devel4 2023-03-18 21:52:17 +01:00
stub Fix brk+munmap in folded stubs for main programs 2023-07-17 07:21:56 +02:00
util src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
bele_policy.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
bele.h CI: make sure that directories which contain whitespace do work 2023-06-28 18:18:36 +02:00
conf.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
except.cpp src: add assert_noexcept() 2023-07-08 12:06:27 +02:00
except.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
file.cpp src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
file.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
filter.cpp src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
filter.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
headers.h all: misc updates 2023-07-12 18:59:08 +02:00
help.cpp src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
lefile.cpp src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
lefile.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
linker.cpp all: misc updates 2023-06-13 16:42:14 +02:00
linker.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
main.cpp all: misc and noexcept updates 2023-07-09 17:36:24 +02:00
Makefile all: misc updates 2023-07-12 18:59:08 +02:00
miniacc.h src: new ACC version 2023-06-25 14:30:00 +02:00
msg.cpp src: add assert_noexcept() 2023-07-08 12:06:27 +02:00
options.cpp src: rework mem_clear() 2023-06-09 18:20:06 +02:00
options.h all: yet more minor updates 2023-06-09 14:12:05 +02:00
p_com.cpp all: minor updates 2023-05-10 20:20:39 +02:00
p_com.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_djgpp2.cpp src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_djgpp2.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_elf_enum.h Merge branch 'devel' into devel4 2023-04-18 17:15:57 +02:00
p_elf.h all: yet more cleanups 2023-04-18 17:02:13 +02:00
p_exe.cpp src: rework mem_clear() 2023-06-09 18:20:06 +02:00
p_exe.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_lx_elf.cpp all: clang-tidy updates 2023-07-08 09:59:41 +02:00
p_lx_elf.h all: clang-tidy updates 2023-07-08 09:59:41 +02:00
p_lx_exc.cpp src: cleanup linker.h 2023-04-19 23:19:45 +02:00
p_lx_exc.h all: welcome 2023 2023-01-01 19:49:30 +01:00
p_lx_interp.cpp Many changes for ELF shared libraries on Linux and Android 2023-03-04 17:37:25 -08:00
p_lx_interp.h all: welcome 2023 2023-01-01 19:49:30 +01:00
p_lx_sh.cpp Fix usage of _te32/_te64/_te16 for Elf classes 2023-04-17 13:19:06 -07:00
p_lx_sh.h all: welcome 2023 2023-01-01 19:49:30 +01:00
p_mach_enum.h all: welcome 2023 2023-01-01 19:49:30 +01:00
p_mach.cpp Fix usage of _te32/_te64/_te16 for Elf classes 2023-04-17 13:19:06 -07:00
p_mach.h all: yet more cleanups 2023-04-18 17:02:13 +02:00
p_ps1.cpp src: fix building under freebsd; updates 2023-06-27 12:59:24 +02:00
p_ps1.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_sys.cpp all: minor updates 2023-05-10 20:20:39 +02:00
p_sys.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_tmt.cpp src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_tmt.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_tos.cpp all: bump version; cleanups 2023-05-28 14:06:11 +02:00
p_tos.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_unix.cpp Fix checksum of non-compressible extents 2023-05-13 16:28:22 +02:00
p_unix.h Merge branch 'devel' into devel4 2023-04-18 17:15:57 +02:00
p_vmlinx.cpp src: some xspan cleanups 2023-01-30 11:03:11 +01:00
p_vmlinx.h all: yet more cleanups 2023-04-18 17:02:13 +02:00
p_vmlinz.cpp src: cleanup linker.h 2023-04-19 23:19:45 +02:00
p_vmlinz.h all: yet more cleanups 2023-04-18 17:02:13 +02:00
p_w32pe_i386.cpp all: misc and noexcept updates 2023-07-09 17:36:24 +02:00
p_w32pe_i386.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_w64pe_amd64.cpp all: misc and noexcept updates 2023-07-09 17:36:24 +02:00
p_w64pe_amd64.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_w64pe_arm64.cpp all: CI and misc updates 2023-06-06 23:16:28 +02:00
p_w64pe_arm64.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_wcle.cpp src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_wcle.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
p_wince_arm.cpp all: misc and noexcept updates 2023-07-09 17:36:24 +02:00
p_wince_arm.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
packer_c.cpp all: yet more minor updates 2023-06-09 14:12:05 +02:00
packer_f.cpp all: minor updates 2023-05-10 20:20:39 +02:00
packer_r.cpp all: misc updates 2023-06-13 16:42:14 +02:00
packer.cpp src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
packer.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
packhead.cpp all: cmake and noexcept updates 2023-06-23 14:13:08 +02:00
packmast.cpp src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
packmast.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
pefile.cpp src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
pefile.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
ui.cpp src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
ui.h src: add some "explicit"; cleanups 2023-07-16 07:37:31 +02:00
version.h all: bump version; cleanups 2023-05-28 14:06:11 +02:00
work.cpp src: add assert_noexcept() 2023-07-08 12:06:27 +02:00