John Reiser
4cdf77e16f
Stupid MSVC 14.2, 14.3; obtuse clang 14.0.5 (and MemBuffer vs alignment)
...
MSVC: cannot say "if (0)" to get "check symtax+semantics, but do not emit code"
clang+MemBuffer: must fight too much to get pointer to wider-than-char
modified: src/p_lx_elf.cpp
2022-12-11 14:41:38 -08:00
John Reiser
d89813e911
Implement de-compress of --android-shlib
...
64-bit (arm64, aarch64) only for now. NYI: 32-bit (armv7).
(Also: implied catch-up with all changes by Markus in the meantime.)
https://github.com/upx/upx/issues/599
modified: src/p_lx_elf.cpp
modified: src/p_lx_elf.h
2022-12-11 13:46:44 -08:00
Markus F.X.J. Oberhumer
7c57b10cae
all: minor cleanups
2022-12-02 16:46:16 +01:00
Markus F.X.J. Oberhumer
65a2da4b40
src: more clang-format
2022-11-27 22:03:20 +01:00
Markus F.X.J. Oberhumer
02f6786b2a
src: new ACC version
2022-11-27 21:56:30 +01:00
Markus F.X.J. Oberhumer
9da4f7a6dc
src: clang-format more files; cleanups; NFCI
2022-11-27 12:34:15 +01:00
John Reiser
510505a85c
p_tmt: more sanity of input, cleanup MemBuffer usage
...
https://github.com/upx/upx/issues/632
modified: src/p_tmt.cpp
2022-11-24 10:28:03 -08:00
Markus F.X.J. Oberhumer
9f5d67e27c
src: clang-format various packers
2022-11-26 17:45:25 +01:00
Markus F.X.J. Oberhumer
93c6496ba8
src: add a xspan check to p_tmt.cpp and clang-format
2022-11-24 09:11:25 +01:00
John Reiser
779b648c5f
invert_pt_dynamic: fix thinko; PackLinuxElf64help1 insist on ELF
...
https://github.com/upx/upx/issues/631
modified: src/p_lx_elf.cpp
2022-11-23 19:49:28 -08:00
Markus F.X.J. Oberhumer
b221c44466
src: re-add non-working PackMachPPC32 to PackMaster
2022-11-22 21:24:33 +01:00
Markus F.X.J. Oberhumer
665296f7cf
src/util: minor xspan improvements
2022-11-22 21:21:26 +01:00
Markus F.X.J. Oberhumer
0af9bbb623
all: post-release version bump
2022-11-22 20:51:56 +01:00
Markus F.X.J. Oberhumer
fdec47a83d
all: prepare for release
2022-11-16 23:15:38 +01:00
Markus F.X.J. Oberhumer
7ff913bbd2
src: remove non-working PackMachPPC32 from PackMaster
2022-11-16 22:24:39 +01:00
Markus F.X.J. Oberhumer
94775bef9f
src: remove non-working PackMachPPC64 from PackMaster; see issue #626
2022-11-16 20:41:31 +01:00
Markus F.X.J. Oberhumer
3cf102334f
src: add option '--force-overwrite'
2022-11-16 12:52:53 +01:00
Markus F.X.J. Oberhumer
627e733a30
src: minor compress_lzma.cpp cleanups
2022-11-15 11:59:22 +01:00
Markus F.X.J. Oberhumer
eb231b65f3
src: clang-format compress_*.cpp; minor cleanup
2022-11-14 11:35:13 +01:00
John Reiser
4199a44bef
armeb stub: b_method as arg5 is 32-bit unsigned
...
https://github.com/upx/upx/issues/618
modified: src/stub/src/arch/arm/v4a/lzma_d.S
modified: .github/travis_testsuite_1-expected_sha256sums.sh
also src/stub/arm*-linux*.h, src/stub/tmp/*.bin.dump
2022-11-10 08:04:35 -08:00
Markus F.X.J. Oberhumer
777392c0fe
src: add some compress doctest checks
2022-11-10 16:26:36 +01:00
Markus F.X.J. Oberhumer
16de3e78a5
src: try to fix canUnpack() confusion - see packer.h
2022-11-10 06:00:53 +01:00
Markus F.X.J. Oberhumer
d7508d8c09
src: pefile.cpp: replace "membuffer + x - y" with "membuffer + (x - y)"
...
This is needed because "membuffer + x" is now bounds-checked, and
the temporary addition would trigger an exception.
2022-11-10 00:40:41 +01:00
John Reiser
2a136c1c1d
End users wish to avoid "double packing".
...
https://github.com/upx/upx/issues/622
modified: src/p_lx_elf.cpp
2022-11-09 15:39:16 -08:00
Markus F.X.J. Oberhumer
2578102be9
src: misc cleanups
2022-11-09 22:15:11 +01:00
Markus F.X.J. Oberhumer
28f0bb4e11
src: fix pefile.cpp otls allocation not accounting for alignment. Closes #621 .
2022-11-09 19:29:16 +01:00
Markus F.X.J. Oberhumer
824c8a8efb
src: introduce raw_index_bytes()
2022-11-08 23:05:34 +01:00
John Reiser
37f27a1262
"gcc -Werror=format-security" is small-minded
...
... and does not perform constant propagation
modified: src/p_vmlinx.cpp
2022-11-08 13:36:28 -08:00
Markus F.X.J. Oberhumer
2b8a7a492a
src/util: fix compilation when not using xspan
2022-11-08 20:38:52 +01:00
Markus F.X.J. Oberhumer
db56bbb11b
src/util: forward memset() in xspan_fwd.h
2022-11-08 20:34:44 +01:00
John Reiser
82d26f04a4
p_vmlinx was too eager
...
https://github.com/upx/upx/issues/622
modified: src/p_vmlinx.cpp
2022-11-08 10:30:48 -08:00
Markus F.X.J. Oberhumer
2d74298001
make: update Makefiles
2022-11-08 03:52:43 +01:00
Markus F.X.J. Oberhumer
ce21254ed2
all: misc cleanups
2022-11-06 08:35:00 +01:00
John Reiser
c8a3acbba8
Static executable with 4 PT_LOAD has only ELF headers in first PT_LOAD
...
https://github.com/upx/upx/issues/615
2022-11-02 10:03:25 -07:00
Markus F.X.J. Oberhumer
81e11987a2
all: add UPX_VERSION_GIT_DESCRIBE
2022-11-02 10:35:40 +01:00
Markus F.X.J. Oberhumer
668cefec2f
src: mention UPX_CONFIG_DISABLE_GITREV build config
2022-11-02 02:52:20 +01:00
John Reiser
2b9e83256d
SELinux execmod requires no PROT_EXEC when PROT_WRITE
...
modified: src/stub/src/amd64-linux.elf-main.c
modified: src/stub/amd64-linux.elf-fold.h
modified: src/stub/arm64-linux.elf-fold.h
modified: src/stub/powerpc64-linux.elf-fold.h
modified: src/stub/powerpc64le-linux.elf-fold.h
modified: src/stub/tmp/amd64-linux.elf-fold.map
modified: src/stub/tmp/arm64-linux.elf-fold.map
modified: src/stub/tmp/powerpc64-linux.elf-fold.map
modified: src/stub/tmp/powerpc64le-linux.elf-fold.map
2022-10-28 13:04:17 -07:00
Markus F.X.J. Oberhumer
bce109ab54
all: post-release version bump
2022-10-28 17:10:52 +02:00
Markus F.X.J. Oberhumer
69ca635c4c
all: prepare for 4.0.0 release
2022-10-28 10:38:03 +02:00
Markus F.X.J. Oberhumer
e0bf460993
src: rename membuffer "Uncompression" to "Decompression"
2022-10-28 10:34:31 +02:00
John Reiser
50a6698715
Each PROT_WRITE segment has implicit .bss on end of last page (64-bit only for now);
...
Also workaround kernel bug invoking the escape hatch on arm64 (aarch64).
https://github.com/upx/upx/issues/611
2022-10-27 11:01:37 -07:00
Markus F.X.J. Oberhumer
7dd2cdea1e
src: deprecate util/bptr.h
2022-10-27 17:52:15 +02:00
Markus F.X.J. Oberhumer
295889023f
all: set next version back to 4.0.0, bump tentative release date, update
...
docs
2022-10-27 17:36:02 +02:00
Markus F.X.J. Oberhumer
feef2e38cf
all: final tweaks for release
2022-10-27 16:53:16 +02:00
Markus F.X.J. Oberhumer
e910a9dc3e
all: change version back to 3.99; docs: warn about know regressions and
...
clarify GPLv2+ COPYING
2022-10-27 16:00:25 +02:00
Markus F.X.J. Oberhumer
e5c0d998b7
src: fully deprecate src/Makefile; minor doc and CI cleanups
2022-10-25 01:48:45 +02:00
Markus F.X.J. Oberhumer
63f6fef964
all: don't use egrep or fgrep
2022-10-25 01:47:42 +02:00
Markus F.X.J. Oberhumer
983eb6d676
src: improve error message when using doctest options like '--dt-help'; add
...
doctest info to help.cpp
2022-10-25 01:47:38 +02:00
Markus F.X.J. Oberhumer
75a769759d
src/stub: sync stubs
2022-10-24 12:56:49 +02:00
John Reiser
2354b01bad
Adapt to libbfd: "no Shdrs" requires 0==.e_shentsize and 0==.e_shnum
...
modified: p_lx_elf.cpp
2022-10-24 12:56:49 +02:00