Markus F.X.J. Oberhumer
8779113131
all: prepare for release
2023-08-08 10:38:12 +02:00
Markus F.X.J. Oberhumer
26cfd0a616
all: minor cleanups
2023-08-08 10:34:12 +02:00
John Reiser
75e153dd99
More care in ::forward_Shdrs() and ::pack4()
...
Also, de-compressing arm64 shlib restores .init_array[0],
although supposedly *_RELATIVE relocation should overwrite.
https://github.com/upx/upx/issues/693
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2023-08-04 11:52:58 -07:00
Markus F.X.J. Oberhumer
fa364d6ea3
all: final cleanups in preparation for release
2023-08-03 14:20:35 +02:00
Markus F.X.J. Oberhumer
13e5c13695
Fix functional change in commit 905bfacf44
2023-08-02 17:45:17 +02:00
John Reiser
43b3b54197
spell check typos
...
modified: p_lx_exc.cpp
modified: p_mach.cpp
modified: stub/src/amd64-linux.elf-so_main.c
modified: stub/src/i386-linux.elf-so_main.c
modified: stub/src/arch/mips/r3000/bits.ash
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: stub/src/arm.v4a-linux.shlib-init.S
modified: stub/src/arm64-linux.shlib-init.S
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/mipsel.r3000-linux.elf-entry.S
2023-07-31 09:05:32 -07:00
John Reiser
3a16d4a12e
Spell check; No-Functional-Change
...
modified: p_lx_elf.cpp
2023-07-31 06:06:31 -07:00
Markus F.X.J. Oberhumer
50fc9235de
misc: update podman test-qemu
2023-08-01 07:24:10 +02:00
Markus F.X.J. Oberhumer
70287d3c49
clang-tidy
2023-07-31 14:49:48 +02:00
John Reiser
41e9f7985f
forward_Shdrs: elfout for main, lowmem for shlib
...
Especially Android.
https://github.com/upx/upx/issues/680
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2023-07-29 13:43:33 -07:00
John Reiser
c3327977da
Pwrite:
...
modified: stub/src/amd64-linux.elf-so_fold.S
modified: stub/amd64-linux.elf-so_fold.h
modified: stub/tmp/amd64-linux.elf-so_fold.bin.dump
2023-07-29 13:42:20 -07:00
John Reiser
905bfacf44
Pacify clang-tidy
2023-07-26 17:21:39 -07:00
Markus F.X.J. Oberhumer
053e95033f
all: improve C++ static analyzers
2023-07-26 22:28:47 +02:00
Markus F.X.J. Oberhumer
5a1203be0d
submodules: update for new versions
2023-07-26 18:13:25 +02:00
John Reiser
745fef7425
fpad4, fpad8, and _Shdr hacking should guard against (!fo)
...
Also pacify some clang scan-build complaints.
modified: p_lx_elf.cpp
2023-07-26 07:27:12 -07:00
John Reiser
c9d625a237
Use 'elfout' for changing ElfXX_Ehdr
...
https://github.com/upx/upx/issues/688
modified: p_lx_elf.cpp
2023-07-26 07:15:22 +02:00
John Reiser
334731f56b
Sync stubs for powerpc64le-linux.elf/upx-3.95
...
How did this mismatch happen?
modified: ../misc/testsuite/upx_testsuite_1-expected_sha256sums.sh
modified: stub/arm64-linux.elf-so_entry.h
modified: stub/powerpc64-linux.elf-fold.h
modified: stub/powerpc64le-linux.elf-fold.h
2023-07-26 07:15:22 +02:00
John Reiser
d5e7672a45
De-activate "bkpt" at entry
...
modified: arm64-linux.elf-so_entry.S
2023-07-26 07:15:22 +02:00
Markus F.X.J. Oberhumer
e702aa0252
Review
2023-07-26 07:15:22 +02:00
John Reiser
2684e815e0
Fix use of memfd_create for shlib stubs, espcially Android
...
Also relocation of init_array[0] for Elf32 shlib.
https://github.com/upx/upx/issues/220
https://github.com/upx/upx/issues/609
https://github.com/upx/upx/issues/680
modified: stub/src/amd64-linux.elf-so_main.c
modified: stub/src/i386-linux.elf-so_main.c
modified: p_lx_elf.cpp
modified: stub/src/arm.v4a-linux.elf-so_fold.S
modified: stub/src/arm64-linux.elf-so_entry.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-so_fold.h
modified: stub/arm.v5a-linux.elf-so_fold.h
modified: stub/arm64-linux.elf-so_entry.h
modified: stub/arm64-linux.elf-so_fold.h
modified: stub/i386-linux.elf-so_fold.h
modified: stub/tmp/amd64-linux.elf-so_fold.bin.dump
2023-07-26 07:15:22 +02:00
John Reiser
efbc93229a
Un-debug amd64-linux.elf-so_main.c
...
modified: stub/src/amd64-linux.elf-so_main.c
modified: stub/amd64-linux.elf-so_fold.h
modified: stub/arm64-linux.elf-so_fold.h
modified: stub/tmp/amd64-linux.elf-so_fold.bin.dump
2023-07-26 07:15:22 +02:00
John Reiser
05539ad5b6
Fix stubs for shlib with only 2 PT_LOAD
2023-07-26 07:15:22 +02:00
John Reiser
670aae2e11
Check /proc/self/auxv exists
...
modified: stub/src/amd64-linux.elf-so_main.c
modified: stub/src/i386-linux.elf-so_main.c
modified: stub/amd64-linux.elf-so_fold.h
modified: stub/arm.v4a-linux.elf-so_fold.h
modified: stub/arm.v5a-linux.elf-so_fold.h
modified: stub/arm64-linux.elf-so_fold.h
modified: stub/tmp/amd64-linux.elf-so_fold.bin.dump
2023-07-26 07:15:22 +02:00
John Reiser
e6ff68dc2c
Turn on DEBUG for 64-bit shlib
...
modified: src/stub/src/amd64-linux.elf-so_main.c
modified: src/stub/amd64-linux.elf-so_fold.h
modified: src/stub/arm64-linux.elf-so_fold.h
modified: src/stub/tmp/amd64-linux.elf-so_fold.bin.dump
2023-07-26 07:15:22 +02:00
Markus F.X.J. Oberhumer
641b116f04
Update .gitattributes.
2023-07-25 12:18:33 +02:00
Markus F.X.J. Oberhumer
f81f7194ed
submodules: update for new versions
2023-07-25 12:05:14 +02:00
Markus F.X.J. Oberhumer
161d20e614
CI: update
2023-07-24 14:47:32 +02:00
Markus F.X.J. Oberhumer
fc4dcd46db
CI and build updates
2023-07-22 16:12:13 +02:00
Markus F.X.J. Oberhumer
891dc87064
misc: upx_testsuite; move podman directories into subdirectory
2023-07-22 00:19:11 +02:00
Markus F.X.J. Oberhumer
b866631448
misc: improve upx_testsuite; cmake update
2023-07-19 20:12:20 +02:00
John Reiser
672d69c68a
Fix unpacking of upx-3.94-armeb_linux/upx
...
Getting past the code of the stub must deal with variances
between released versions.
modified: p_lx_elf.cpp
2023-07-18 16:56:39 -07:00
Markus F.X.J. Oberhumer
507c31ec14
CI and cmake updates
2023-07-18 07:21:51 +02:00
John Reiser
65cc40bdda
Align escape hatch in powerpc64 main program
...
modified: stub/src/amd64-linux.elf-main.c
modified: ../misc/testsuite/upx_testsuite_1-expected_sha256sums.sh
modified: stub/powerpc64-linux.elf-fold.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/tmp/powerpc64-linux.elf-fold.map
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2023-07-17 15:58:01 -07:00
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
Markus F.X.J. Oberhumer
3f7f26c74b
CI: update
2023-07-16 21:28:26 +02:00
Markus F.X.J. Oberhumer
9a6b5940cf
CI: update
2023-07-16 15:14:19 +02:00
Markus F.X.J. Oberhumer
828f4a63bf
src: add some "explicit"; cleanups
2023-07-16 07:37:31 +02:00
John Reiser
707fb55625
A fuzzer attacked i386-dos32.watcom.le
2023-07-06 20:25:14 -07:00
Markus F.X.J. Oberhumer
8d41ae09c8
all: misc updates
2023-07-12 18:59:08 +02:00
Markus F.X.J. Oberhumer
7ec0faca1e
all: misc and noexcept updates
2023-07-09 17:36:24 +02:00
Markus F.X.J. Oberhumer
300fa29446
CI: update
2023-07-08 21:28:29 +02:00
Markus F.X.J. Oberhumer
6981f7b3ae
misc: add misc/test-qemu-with-podman
2023-07-08 18:14:41 +02:00
Markus F.X.J. Oberhumer
682a1e97e4
src: add assert_noexcept()
2023-07-08 12:06:27 +02:00
Markus F.X.J. Oberhumer
1d71dd3851
all: clang-tidy updates
2023-07-08 10:51:02 +02:00
Markus F.X.J. Oberhumer
5edfda46e5
all: clang-tidy updates
2023-07-08 09:59:41 +02:00
Markus F.X.J. Oberhumer
d7754a97c7
all: add support for clang-tidy
2023-07-07 23:13:08 +02:00
Markus F.X.J. Oberhumer
c79aa6ad8a
all: cosmetic updates
2023-07-06 18:03:37 +02:00
Markus F.X.J. Oberhumer
525e091472
src/console: disable win32 screen driver when running under Wine
2023-07-06 10:09:38 +02:00
Markus F.X.J. Oberhumer
16f6de677d
misc: podman updates
2023-07-06 10:09:38 +02:00
John Reiser
12c36bab6c
Linux EINVAL for zero-length mmap: mmap(, 0, ,,,)
...
https://github.com/upx/upx/issues/681
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/i386-bsd.elf-main.c
modified: stub/src/i386-openbsd.elf-main.c
modified: ../misc/testsuite/upx_testsuite_1-expected_sha256sums.sh
modified: stub/amd64-linux.elf-fold.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/i386-bsd.elf-fold.h
modified: stub/i386-linux.elf-fold.h
modified: stub/i386-netbsd.elf-fold.h
modified: stub/i386-openbsd.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/arm64-linux.elf-fold.map
modified: stub/tmp/i386-bsd.elf-fold.map
modified: stub/tmp/i386-linux.elf-fold.map
modified: stub/tmp/i386-netbsd.elf-fold.map
modified: stub/tmp/i386-openbsd.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-06 10:09:07 +02:00
John Reiser
c429859cbf
Placate Android dlopen() some more.
...
https://github.com/upx/upx/issues/680
modified: p_lx_elf.cpp
2023-07-06 10:08:41 +02:00
John Reiser
dc76b2af97
info(Android_penalty)
...
modified: p_lx_elf.cpp
2023-06-26 09:09:47 -07:00
Markus F.X.J. Oberhumer
b75e7687f4
all: CI and misc updates
2023-06-30 01:20:48 +02:00
Markus F.X.J. Oberhumer
ece5af2895
CI: make sure that directories which contain whitespace do work
2023-06-28 18:18:36 +02:00
Markus F.X.J. Oberhumer
1aaa33552e
all: move testsuite to misc/testsuite; CI updates
2023-06-27 14:27:19 +02:00
Markus F.X.J. Oberhumer
f622871eb0
src: fix building under freebsd; updates
2023-06-27 12:59:24 +02:00
Markus F.X.J. Oberhumer
060b01260d
CI: yet more updates
2023-06-25 19:40:09 +02:00
Markus F.X.J. Oberhumer
871f8a4793
src: new ACC version
2023-06-25 14:30:00 +02:00
Markus F.X.J. Oberhumer
c54e03d0f2
CI: ongoing cleanups
2023-06-25 03:27:51 +02:00
Markus F.X.J. Oberhumer
aaf3f75990
CI and cmake updates
2023-06-25 01:55:06 +02:00
Markus F.X.J. Oberhumer
512a26cee4
CI: update
2023-06-24 10:16:43 +02:00
John Reiser
b4a793ed26
Make ::forward_Shdrs more friendly to Android dlopen()
...
https://github.com/upx/upx/issues/220
https://github.com/upx/upx/issues/609
2023-06-22 10:16:25 -07:00
Markus F.X.J. Oberhumer
5d2c74008e
all: cmake and noexcept updates
2023-06-23 14:13:08 +02:00
Markus F.X.J. Oberhumer
7fafc68940
CI: update
2023-06-19 14:28:12 +02:00
Markus F.X.J. Oberhumer
d1af2af499
all: yet more misc updates
2023-06-15 19:42:54 +02:00
Markus F.X.J. Oberhumer
a5206eb696
CI: cleanups
2023-06-14 07:40:14 +02:00
Markus F.X.J. Oberhumer
1ff0d137ab
all: misc updates
2023-06-13 16:42:14 +02:00
John Reiser
07aa65b55e
Sync stubs
...
Dependency processing does not propagate this one:
src/stub/src/arm.v5a-darwin.macho-main.c:
#include "amd64-darwin.macho-main.c"
modified: arm.v5a-darwin.macho-fold.h
modified: tmp/arm.v5a-darwin.macho-fold.map
2023-06-13 16:29:13 +02:00
John Reiser
0fadddec65
Force 'bkpt' on arm.v5a and below
...
fixup https://github.com/upx/upx/issues/612
modified: stub/src/amd64-darwin.macho-main.c
2023-06-13 16:29:13 +02:00
John Reiser
1bebe53cef
Allow more bytes for Mach_headers in /usr/lib/dyld on MacOS 13
...
Fixes initial complaint (HelloUPX4) in https://github.com/upx/upx/issues/612
modified: stub/amd64-darwin.macho-fold.h
modified: stub/arm64-darwin.macho-fold.h
modified: stub/src/amd64-darwin.macho-fold.S
modified: stub/src/amd64-darwin.macho-main.c
modified: stub/tmp/amd64-darwin.macho-fold.map
modified: stub/tmp/arm64-darwin.macho-fold.map
2023-06-13 16:29:13 +02:00
John Reiser
43019c744c
Document requirement for 'homebrew' when developing on MacOS
...
... else testsuite fails for "readlink -en" and 'sha256sum'
https://github.com/upx/upx/issues/676
modified: README.SRC
2023-06-13 16:29:13 +02:00
Markus F.X.J. Oberhumer
c585774162
CI: disable self-test on macos-13
2023-06-10 11:02:19 +02:00
Markus F.X.J. Oberhumer
75e87a58da
src: rework mem_clear()
2023-06-09 18:20:06 +02:00
Markus F.X.J. Oberhumer
19e84fea62
all: yet more minor updates
2023-06-09 14:12:05 +02:00
Markus F.X.J. Oberhumer
db39f9c4dc
all: CI and misc updates
2023-06-06 23:16:28 +02:00
Markus F.X.J. Oberhumer
dae45ae0d4
all: bump version; cleanups
2023-05-28 14:06:11 +02:00
Markus F.X.J. Oberhumer
efeffc6e01
submodules: update for new versions
2023-05-28 13:58:27 +02:00
Markus F.X.J. Oberhumer
ebf0f2f68a
all: more minor cleanups
2023-05-27 22:58:07 +02:00
Markus F.X.J. Oberhumer
09bd1d8c40
all: misc updates
2023-05-19 13:21:26 +02:00
Markus F.X.J. Oberhumer
40653e40a4
all: minor cleanups
2023-05-14 09:36:10 +02:00
Markus F.X.J. Oberhumer
b3e4efbabe
all: misc updates
2023-05-13 16:28:44 +02:00
John Reiser
279101d464
Fix checksum of non-compressible extents
...
https://github.com/upx/upx/issues/673
modified: src/p_unix.cpp
2023-05-13 16:28:22 +02:00
Markus F.X.J. Oberhumer
f571feee72
CI: use gcc -static for macos builds
2023-05-10 20:42:26 +02:00
Markus F.X.J. Oberhumer
900afd1c8c
all: minor updates
2023-05-10 20:20:39 +02:00
Markus F.X.J. Oberhumer
08a72d5251
Fix whitespace.
2023-05-10 20:19:22 +02:00
John Reiser
736a6cd955
Catch amd64 ET_EXEC with .e_entry < 0x400000
...
https://github.com/upx/upx/issues/673
modified: p_lx_elf.cpp
2023-05-10 20:17:22 +02:00
John Reiser
75ce5e5df3
Fix SIGSEGV due to name confusion in ::forward_Shdrs
...
https://github.com/upx/upx/issues/671
modified: p_lx_elf.cpp
2023-05-10 20:17:22 +02:00
Markus F.X.J. Oberhumer
eaf2143162
CI: add macos-13
2023-05-03 10:06:22 +02:00
Markus F.X.J. Oberhumer
f0bdb8dea1
submodules: update for new versions
2023-05-03 09:49:20 +02:00
John Reiser
60093cfff6
Merge branch 'devel4' of https://github.com/upx/upx into devel4
2023-04-30 15:19:44 -07:00
John Reiser
56bb7b53cb
Synch *.h stub headers and testcase checksums
...
Shared libraries for amd64, i386, arm64, and arm should be
compatible with SELinux: no complaints of execmod or execmem.
https://github.com/upx/upx/issues/609
https://github.com/upx/upx/issues/220
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
modified: stub/amd64-linux.elf-so_entry.h
modified: stub/amd64-linux.elf-so_fold.h
modified: stub/arm.v4a-linux.elf-so_entry.h
modified: stub/arm.v4a-linux.elf-so_fold.h
modified: stub/arm.v5a-linux.elf-entry.h
modified: stub/arm.v5a-linux.elf-fold.h
modified: stub/arm.v5a-linux.elf-so_entry.h
modified: stub/arm.v5a-linux.elf-so_fold.h
modified: stub/arm64-linux.elf-so_entry.h
modified: stub/arm64-linux.elf-so_fold.h
modified: stub/i386-linux.elf-so_entry.h
modified: stub/i386-linux.elf-so_fold.h
modified: stub/tmp/amd64-linux.elf-so_entry.bin.dump
modified: stub/tmp/amd64-linux.elf-so_fold.bin.dump
modified: stub/tmp/arm.v5a-linux.elf-entry.bin.dump
modified: stub/tmp/arm.v5a-linux.elf-fold.map
2023-04-30 15:12:29 -07:00
John Reiser
0cffeca102
arm32 shlib works with SELinux
...
modified: stub/src/arch/arm/v4a/macros.S
modified: stub/src/arm.v4a-linux.elf-so_entry.S
modified: stub/src/arm.v4a-linux.elf-so_fold.S
modified: stub/src/arm64-linux.elf-so_entry.S
modified: stub/src/i386-linux.elf-so_main.c
2023-04-28 13:52:26 -07:00
John Reiser
937d4462ca
SELinux for i386 shlib stub
...
modified: stub/src/i386-linux.elf-so_entry.S
modified: stub/src/i386-linux.elf-so_fold.S
modified: stub/src/i386-linux.elf-so_main.c
modified: stub/src/include/linux.h
2023-04-27 18:49:35 -07:00
John Reiser
db5a39572c
Change stub for arm64 shlib to work with SELinux
...
modified: stub/src/arm64-linux.elf-so_entry.S
modified: stub/src/arm64-linux.elf-so_fold.S
2023-04-27 10:44:13 -07:00
John Reiser
ecc9c67e1f
Check return value from syscalls; leave debugging hint if error
...
modified: stub/src/amd64-linux.elf-so_entry.S
2023-04-27 10:42:56 -07:00
John Reiser
0901ce1b68
amd64-linux.elf shlib now fully-SELinux compliant
...
modified: stub/src/amd64-linux.elf-so_entry.S
modified: stub/src/amd64-linux.elf-so_fold.S
2023-04-26 13:06:48 -07:00
John Reiser
be6e77379a
SELinux forces memfd_create for .so on amd64, arm64
...
More coming for .so: so_entry.S, powerpc64, 32-bit
modified: stub/src/amd64-linux.elf-so_main.c
modified: stub/src/arm64-linux.elf-so_entry.S
modified: stub/src/arm64-linux.elf-so_fold.S
2023-04-26 08:30:55 -07:00
Markus F.X.J. Oberhumer
726f5de778
src: minor cleanups
2023-04-26 08:13:32 +02:00
John Reiser
98b835e0a7
WIP: SELinux is expensive: +2KB in stub
...
Needs make_hatch()
modified: stub/src/amd64-linux.elf-so_main.c
modified: stub/src/amd64-linux.elf-so_fold.S
modified: stub/amd64-linux.elf-so_fold.h
modified: stub/arm64-linux.elf-so_fold.h
modified: stub/src/arm.v4a-linux.elf-so_fold.S
modified: stub/tmp/amd64-linux.elf-so_fold.bin.dump
2023-04-24 19:40:57 -07:00
John Reiser
04ffb641a6
Compilers generate junk .sh_info
...
modified: p_lx_elf.cpp
2023-04-24 19:37:25 -07:00
John Reiser
1b7233b673
whitespace
...
modified: stub/src/amd64-expand.S
2023-04-24 19:35:52 -07:00
John Reiser
eaa0f33473
Fix call to unfilter from amd64-expand
...
modified: stub/src/amd64-expand.S
modified: stub/amd64-linux.elf-fold.h
modified: stub/amd64-linux.elf-so_fold.h
modified: stub/tmp/amd64-linux.elf-fold.map
modified: stub/tmp/amd64-linux.elf-so_fold.bin.dump
2023-04-21 08:57:10 -07:00
Markus F.X.J. Oberhumer
c03b382d61
src: some more "noexcept"
2023-04-20 20:58:19 +02:00
Markus F.X.J. Oberhumer
e633694255
cmake: use MSVC_FRONTEND
2023-04-20 20:10:12 +02:00
Markus F.X.J. Oberhumer
278b25bad2
cmake: check CMAKE_C_COMPILER_FRONTEND_VARIANT
2023-04-20 14:54:14 +02:00
Markus F.X.J. Oberhumer
f89f0838dc
src: change UPX_CONFIG logic to permissive defaults
2023-04-20 14:13:36 +02:00
Markus F.X.J. Oberhumer
b1729e3bcf
src: cleanup MAX_ELF_HDR
2023-04-19 23:23:46 +02:00
Markus F.X.J. Oberhumer
d1ab85a1a6
src: cleanup linker.h
2023-04-19 23:19:45 +02:00
John Reiser
7f5b64c91a
Merge branch 'devel4' of https://github.com/upx/upx into devel4
2023-04-19 14:00:43 -07:00
John Reiser
78b68283c4
Fix .e_entry for PowerPC64
...
https://github.com/upx/upx/issues/668
modified: p_lx_elf.cpp
2023-04-19 13:58:52 -07:00
Markus F.X.J. Oberhumer
9e3b1c9f8a
src: enable TE checks in packer.h; add some "noexcept"
2023-04-18 17:56:28 +02:00
Markus F.X.J. Oberhumer
5dc54c7adc
Merge branch 'devel' into devel4
2023-04-18 17:15:57 +02:00
Markus F.X.J. Oberhumer
320e5b850f
all: yet more cleanups
...
Changes include:
- use standard names for PE constants
- add some more "noexcept"
- improve upx_is_integral type-trait
- introduce is_same_all and is_same_any type-traits
- prepare TE-size checks in packer.h
- CI updates
2023-04-18 17:02:13 +02:00
John Reiser
d8395d8c42
Fix usage of _te32/_te64/_te16 for Elf classes
...
How did it ever work? UPX_RSIZE_MAX_MEM of 768MiB, Elf32_Off of only
32-bits, and preponderance of little-endian and small positive integers
hides many mis-uses of _te64/_te32.
ELF does not help: e_phnum, e_shnum, Elf32_Section, Elf64_Section are all
16-bit, but sh_info and sh_link are 32-bit.
Templatizing p_elf.h (following the example of p_mach.h) failed
because of complexity. (Plus too many special cases of ELF where 32-bit
and 64-bit are not parallel.)
modified: p_lx_elf.cpp
modified: p_lx_sh.cpp
modified: p_mach.cpp
2023-04-17 13:19:06 -07:00
John Reiser
a20c5a1e7f
Align 64-bit forward_Shdr
...
//github.com/upx/upx/issues/220
modified: p_lx_elf.cpp
2023-04-12 14:54:49 -07:00
John Reiser
3bdfcaa541
Try to placate Android crapware, which cannot deal with null strings
...
From https://github.com/upx/upx/issues/220 :
Phone:
04-10 16:07:52.862 E/AndroidRuntime( 5178): java.lang.UnsatisfiedLinkError: dlopen failed: \
"/data/app/~~Nwb-iR6LHpHyrT37xe8HNg==/com.android.support-y0YbcwLn1b4sBRD09JGVAw==/lib/arm64/libMyLibName.so" \
has unsupported e_shentsize: 0x0 (expected 0x40)
Emulator:
04-10 09:57:38.746 E/AndroidRuntime( 6403): java.lang.UnsatisfiedLinkError: dlopen failed: \
"/data/app/~~sBBMDvh36TxwO4muxOJ3Bg==/com.android.support-8Lc6r2dLzTIW7SEHXLI0XQ==/lib/arm64/libMyLibName.so" \
has no section headers
modified: p_lx_elf.cpp
2023-04-11 13:41:54 -07:00
John Reiser
7b2faf2016
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
2023-04-11 11:00:48 -07:00
John Reiser
42902dabac
64-bit shlib with DT_INIT_ARRAY but no DT_INIT
...
https://github.com/upx/upx/issues/664
modified: p_elf_enum.h
modified: p_lx_elf.cpp
2023-04-10 18:01:39 -07:00
John Reiser
14521eb6dd
Allow pre-linking when compressing shared libraries
...
Such as Wine kernel32.dll etc.
https://github.com/upx/upx/issues/660
modified: stub/amd64-linux.elf-so_fold.h
modified: stub/arm.v4a-linux.elf-so_fold.h
modified: stub/arm.v5a-linux.elf-so_fold.h
modified: stub/arm64-linux.elf-so_fold.h
modified: stub/i386-linux.elf-so_fold.h
modified: stub/src/amd64-linux.elf-so_main.c
modified: stub/src/i386-linux.elf-so_main.c
modified: stub/tmp/amd64-linux.elf-so_fold.bin.dump
2023-04-03 13:18:21 -07:00
John Reiser
b9533f409c
Sync testsuite checksums
...
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
2023-03-29 16:11:08 -07:00
John Reiser
4df68aafd2
Pprotect: mprotect but enlarge the interval to start on page boundary
...
https://github.com/upx/upx/issues/609
modified: src/stub/src/amd64-linux.elf-fold.S
modified: src/stub/src/amd64-linux.elf-main.c
modified: src/stub/src/amd64-linux.elf-so_fold.S
modified: src/stub/src/amd64-linux.elf-so_main.c
modified: src/stub/src/arm.v4a-linux.elf-fold.S
modified: src/stub/src/arm.v4a-linux.elf-so_fold.S
modified: src/stub/src/arm64-linux.elf-fold.S
modified: src/stub/src/arm64-linux.elf-so_fold.S
modified: src/stub/src/i386-linux.elf-fold.S
modified: src/stub/src/i386-linux.elf-main.c
modified: src/stub/src/i386-linux.elf-so_fold.S
modified: src/stub/src/i386-linux.elf-so_main.c
modified: src/stub/src/mipsel.r3000-linux.elf-fold.S
modified: src/stub/src/powerpc-linux.elf-fold.S
modified: src/stub/src/powerpc64le-linux.elf-fold.S
modified: src/stub/amd64-linux.elf-fold.h
modified: src/stub/amd64-linux.elf-so_fold.h
modified: src/stub/arm.v4a-linux.elf-fold.h
modified: src/stub/arm.v4a-linux.elf-so_fold.h
modified: src/stub/arm.v5a-linux.elf-fold.h
modified: src/stub/arm.v5a-linux.elf-so_fold.h
modified: src/stub/arm64-linux.elf-fold.h
modified: src/stub/arm64-linux.elf-so_fold.h
modified: src/stub/armeb.v4a-linux.elf-fold.h
modified: src/stub/i386-linux.elf-fold.h
modified: src/stub/i386-linux.elf-so_fold.h
modified: src/stub/mips.r3000-linux.elf-fold.h
modified: src/stub/mipsel.r3000-linux.elf-fold.h
modified: src/stub/powerpc-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/amd64-linux.elf-so_fold.bin.dump
modified: src/stub/tmp/arm.v4a-linux.elf-fold.map
modified: src/stub/tmp/arm.v5a-linux.elf-fold.map
modified: src/stub/tmp/arm64-linux.elf-fold.map
modified: src/stub/tmp/armeb.v4a-linux.elf-fold.map
modified: src/stub/tmp/i386-linux.elf-fold.map
modified: src/stub/tmp/mips.r3000-linux.elf-fold.map
modified: src/stub/tmp/mipsel.r3000-linux.elf-fold.map
modified: src/stub/tmp/powerpc-linux.elf-fold.map
modified: src/stub/tmp/powerpc64-linux.elf-fold.map
modified: src/stub/tmp/powerpc64le-linux.elf-fold.map
2023-03-29 15:46:58 -07:00
John Reiser
c72ceaa979
MSVC
...
modified: p_lx_elf.cpp
2023-03-26 11:29:19 -07:00
John Reiser
8ac79ca0ad
whitespce
...
modified: p_lx_elf.cpp
2023-03-26 11:16:36 -07:00
John Reiser
e0bfaf1028
Merge branch 'devel4' of https://github.com/upx/upx into devel4
2023-03-26 11:06:22 -07:00
John Reiser
b361b91ec7
Try to appease Android runtime loader; _Shdr vs _Phdr offsets
...
JNI FalalError called: Unable to load library:
[dlopen failed: "/lib/arm/libunity.so"
.dynamic section has invalid offset: 0x6d3e58,
expected to match PT_DYNAMIC offset: 0x441e58]
https://github.com/upx/upx/issues/609
modified: p_elf_enum.h
modified: p_lx_elf.cpp
2023-03-26 10:53:30 -07:00
John Reiser
b5d1eba4c1
mprotect() requires page-aligned address
...
modified: stub/amd64-linux.elf-so_fold.h
modified: stub/arm.v4a-linux.elf-so_fold.h
modified: stub/arm.v5a-linux.elf-so_fold.h
modified: stub/arm64-linux.elf-so_fold.h
modified: stub/i386-linux.elf-so_fold.h
modified: stub/src/amd64-linux.elf-so_fold.S
modified: stub/src/arm.v4a-linux.elf-so_entry.S
modified: stub/src/arm.v4a-linux.elf-so_fold.S
modified: stub/src/arm64-linux.elf-so_fold.S
modified: stub/src/i386-linux.elf-so_fold.S
modified: stub/tmp/amd64-linux.elf-so_fold.bin.dump
2023-03-26 07:26:53 -07:00
John Reiser
ba447344d6
New strategy for de-compression stub for shared libraries
...
modified: stub/src/amd64-linux.elf-so_main.c
modified: stub/src/i386-linux.elf-so_main.c
2023-03-26 07:25:32 -07:00
John Reiser
7b68aa7bdc
Fix de-comression of shared libraries
...
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2023-03-26 07:23:08 -07:00
John Reiser
5d15e57294
De-compression for 32-bit shared libraries on i686, ARM
...
https://github.com/upx/upx/issues/609
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2023-03-23 16:29:25 -07:00
John Reiser
0bf8ff151e
Un-debug stubs for 32-bit shared libraries
...
modified: stub/arm.v4a-linux.elf-so_fold.h
modified: stub/arm.v5a-linux.elf-so_fold.h
modified: stub/i386-linux.elf-so_fold.h
modified: stub/src/arm.v4a-linux.elf-so_entry.S
2023-03-23 16:27:44 -07:00
John Reiser
06fae05910
32-bit ARM Android shlib: DT_INIT_ARRAY without DT_INIT
...
De-compressor needs to catch up.
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: stub/src/i386-linux.elf-so_main.c
2023-03-22 10:44:17 -07:00
Markus F.X.J. Oberhumer
f68ac8155b
Merge branch 'devel' into devel4
2023-03-18 21:52:17 +01:00
Markus F.X.J. Oberhumer
15484aa296
all: more cleanups
...
Changes include:
- extract headers.h from conf.h
- use "byte" in some more places
- unify "const" coding style
- pefile.cpp: make sort order deterministic
- simplify some other pefile.cpp code
- CI updates
2023-03-18 21:27:34 +01:00
John Reiser
5b113a5041
Merge branch 'devel4' of https://github.com/upx/upx into devel4
2023-03-16 08:51:29 -07:00
John Reiser
1320e3efdb
PackLinuxElf32::canPackOSABI() isolates canPack() from OSABI weirdness
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2023-03-16 08:30:06 -07:00
Markus F.X.J. Oberhumer
d32f447bda
Merge branch 'devel' into devel4
2023-03-15 22:34:05 +01:00
John Reiser
b74c4e4ac1
Picky, picky static analyzer
...
https://github.com/upx/upx/actions/runs/4422867763/jobs/7755057541
modified: p_lx_elf.cpp
2023-03-15 09:05:02 -07:00
John Reiser
35333403ef
Zero ElfXX_Ehdr.e_sh* info when removing ElfXX_Shdr
...
The aim is less confusion by static linkers: the _Shdr are gone!
https://github.com/upx/upx/issues/659
modified: p_lx_elf.cpp
2023-03-15 08:44:59 -07:00
Markus F.X.J. Oberhumer
a627648249
all: assorted cleanups and updates
...
Changes include:
- add a bunch of "noexcept", mostly to operators and forceinline
- use "uchar"
- use "charptr"
- rename options_t to Options
- add ptr_check_no_overlap()
- rewrite p_exe.cpp, NFCI
- clang-format help.cpp
- spelling fixes
2023-03-15 00:19:55 +01:00
Markus F.X.J. Oberhumer
127fd095e7
CI: add spell-check.yml
2023-03-11 03:11:19 +01:00
John Reiser
f8934c09ff
F*ck MSVC
...
warning C4245: 'return': conversion from 'int' to 'unsigned int', signed/unsigned mismatch
return ~0; // in function declared as returning 'unsigned'. The bits are the same!
modified: p_lx_elf.cpp
2023-03-09 12:00:56 -08:00
John Reiser
7a09c88e30
CI convention sucks
...
renamed: MAX_ELF_HDR.cpp -> MAX_ELF_HDR.h
modified: p_lx_elf.cpp
2023-03-09 11:44:22 -08:00
John Reiser
17526d1132
Make it easier to change MAX_ELF_HDR consistently
...
https://github.com/upx/upx/issues/655
new file: MAX_ELF_HDR.cpp
new file: stub/src/MAX_ELF_HDR.S
new file: stub/src/MAX_ELF_HDR.c
modified: p_lx_elf.cpp
modified: stub/arm.v4a-linux.elf-fold.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/amd64-linux.elf-so_main.c
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-bsd.elf-fold.S
modified: stub/src/i386-bsd.elf-main.c
modified: stub/src/i386-linux.elf-fold.S
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/i386-linux.elf-so_main.c
modified: stub/src/i386-linux.elf.interp-fold.S
modified: stub/src/i386-linux.elf.interp-main.c
modified: stub/src/i386-linux.elf.shell-fold.S
modified: stub/src/i386-linux.elf.shell-main.c
modified: stub/src/i386-openbsd.elf-fold.S
modified: stub/src/i386-openbsd.elf-main.c
modified: stub/src/mipsel.r3000-linux.elf-fold.S
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
2023-03-09 10:06:13 -08:00
John Reiser
ff7939c1c0
invert_pt_dynamic, sort_DTxx_offsets, elf_find_table_size
...
https://github.com/upx/upx/issues/655
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2023-03-09 09:24:35 -08:00
John Reiser
96c196b1be
Final ph.u_len and ph.c_len reflect multiple compressed extents
...
https://github.com/upx/upx/issues/655
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
modified: p_lx_elf.cpp
2023-03-09 09:06:06 -08:00
John Reiser
adb0ca8250
Many changes for ELF shared libraries on Linux and Android
...
Handling more than 2 PT_LOAD (and thus more than 1 executable PT_LOAD)
required extensive changes. But the bonus is the infrastructure
to support a different (de-)compression algorithm for each PT_LOAD.
https://github.com/upx/upx/issues/341 i386 .so decompression
https://github.com/upx/upx/issues/609 armv7 .so on Android
https://github.com/upx/upx/issues/625 amd64 .so execution
https://github.com/upx/upx/issues/654 armv7 .exe
Not yet: .so on MIPS, PowerPC, PowerPC64
2023-03-04 17:37:25 -08:00
Markus F.X.J. Oberhumer
fa56a1d9cd
submodules: update for new versions
2023-02-24 10:59:32 +01:00
Markus F.X.J. Oberhumer
3d691645a4
src: pefile: add checkMachine()
2023-02-21 20:33:40 +01:00
Markus F.X.J. Oberhumer
e1edc5f50a
src: use 'byte' instead of 'upx_byte'; NFCI
2023-02-21 19:27:23 +01:00
Markus F.X.J. Oberhumer
4a8efd2e2f
src: rework optimizeReloc handling; cleanups
2023-02-21 15:19:24 +01:00
Markus F.X.J. Oberhumer
8d364c82e2
CI: add build for windows arm64ec
2023-02-12 19:27:56 +01:00
Markus F.X.J. Oberhumer
c5059231dc
all: rename win32/arm back to wince/arm
2023-02-12 18:58:11 +01:00
Markus F.X.J. Oberhumer
f584c91386
all: canonicalize win32 and win64 file names
2023-02-10 09:49:29 +01:00
Markus F.X.J. Oberhumer
b8d9c2b755
all: assorted updates and cleanups
2023-02-05 17:20:32 +01:00
Markus F.X.J. Oberhumer
163377d1a0
testsuite: update checksums caused by version bump
2023-01-30 13:44:18 +01:00
Markus F.X.J. Oberhumer
8944e90175
all: post-release version bump
2023-01-30 13:39:49 +01:00
Markus F.X.J. Oberhumer
33cdcb0e82
all: prepare for release
2023-01-30 11:18:06 +01:00
Markus F.X.J. Oberhumer
ec870a5aeb
submodules: update for new versions
2023-01-30 11:10:36 +01:00
Markus F.X.J. Oberhumer
0653bb5a72
src: some xspan cleanups
2023-01-30 11:03:11 +01:00
Markus F.X.J. Oberhumer
43b6ff29e3
all: bump tentative release date
2023-01-29 15:39:35 +01:00
Markus F.X.J. Oberhumer
a444a8a704
src: pefile: fix overly tricky canUnpack0 logic
2023-01-29 12:40:00 +01:00
Markus F.X.J. Oberhumer
3fa18c1799
src: clang-format pefile
2023-01-29 12:34:05 +01:00
Markus F.X.J. Oberhumer
19147963b9
src: pefile: try to work-around a scan-build warning
2023-01-29 12:21:15 +01:00
Markus F.X.J. Oberhumer
5056215a1f
all: more assorted cleanups
2023-01-29 11:39:57 +01:00
Markus F.X.J. Oberhumer
340b7614e2
submodules: update for new versions
2023-01-26 18:49:14 +01:00
Markus F.X.J. Oberhumer
8a1bd67a20
src: more valgrind integration
2023-01-26 08:50:30 +01:00
Markus F.X.J. Oberhumer
a094df7b55
all: more cleanups; NFCI
2023-01-24 21:52:10 +01:00
Markus F.X.J. Oberhumer
cc893dfc11
CI: add zigcc and scan-build
2023-01-22 22:07:35 +01:00
Markus F.X.J. Oberhumer
8ef17da082
all: cleanups
2023-01-22 18:44:31 +01:00
Markus F.X.J. Oberhumer
7993e619cd
src: even more outstanding util/xspan renaming; NFC
2023-01-21 19:15:38 +01:00
Markus F.X.J. Oberhumer
1ab8d5fb3f
src: remove currently unused submodules
2023-01-21 18:57:23 +01:00
Markus F.X.J. Oberhumer
213ac3ac73
all: better support for clang Static Analyzer (scan-build)
2023-01-19 19:17:26 +01:00
Markus F.X.J. Oberhumer
0a8876443a
submodules: update for new versions
2023-01-19 19:16:11 +01:00
Markus F.X.J. Oberhumer
f37a3bb9bb
src: new ACC version
2023-01-19 06:26:06 +01:00
Markus F.X.J. Oberhumer
2632342f44
all: remove currently unused submodules
2023-01-19 03:32:49 +01:00
Markus F.X.J. Oberhumer
8efcf6f099
src: move console files into a subdir; NFC
2023-01-18 14:19:15 +01:00
Markus F.X.J. Oberhumer
58343fc78d
src: more outstanding util/xspan renaming; NFC
2023-01-18 10:11:29 +01:00
Markus F.X.J. Oberhumer
6c41a4c9c8
src: move compress files into a subdir; clang-format some more files; NFC
2023-01-18 09:28:12 +01:00
Markus F.X.J. Oberhumer
334be287fc
CI: add minimal-ci
2023-01-17 23:43:24 +01:00
Markus F.X.J. Oberhumer
aa050e0001
cmake: compile compression libs with -O2 even in Debug mode
2023-01-16 09:47:39 +01:00
Markus F.X.J. Oberhumer
cc994326a0
all: cleanups
2023-01-15 13:49:27 +01:00
Markus F.X.J. Oberhumer
58de07629e
submodules: add vendor/rangeless
2023-01-15 03:23:22 +01:00
Markus F.X.J. Oberhumer
9f830e0c41
all: add zstd compression library
2023-01-13 22:25:15 +01:00
Markus F.X.J. Oberhumer
c52d302f07
submodules: add vendor/zstd
2023-01-13 22:25:15 +01:00
Markus F.X.J. Oberhumer
44049ecf30
all: enable WITH_VALGRIND by default
2023-01-13 22:25:15 +01:00
Markus F.X.J. Oberhumer
e1b5904196
submodules: add vendor/valgrind
2023-01-13 22:25:15 +01:00
Markus F.X.J. Oberhumer
88e692791a
submodules: update for new version
2023-01-13 13:02:38 +01:00
Markus F.X.J. Oberhumer
f00667ad7d
all: minor cleanups, update some comments
2023-01-13 05:37:28 +01:00
Markus F.X.J. Oberhumer
696d0eec64
misc: update podman images
2023-01-06 01:48:32 +01:00
Markus F.X.J. Oberhumer
513b00a30e
cmake: update for MSVC_IDE
2023-01-05 14:26:17 +01:00
Markus F.X.J. Oberhumer
0cb0dbf6d8
src: cleanup conf.h
2023-01-05 14:26:12 +01:00
Markus F.X.J. Oberhumer
9f00515da4
CI: fix windows build
2023-01-05 02:29:12 +01:00
Markus F.X.J. Oberhumer
72f31787f6
submodules: update for new versions
2023-01-05 02:02:31 +01:00
Markus F.X.J. Oberhumer
cd686cb1d9
src: add boost-pfr
2023-01-05 00:57:05 +01:00
Markus F.X.J. Oberhumer
d9657e9831
cmake and make: minor updates
2023-01-05 00:57:01 +01:00
Markus F.X.J. Oberhumer
72f3e9b25a
all: require C++17
2023-01-03 15:11:11 +01:00
John Reiser
811b15a5b3
Fix crash with TLS init in i386 dll
...
https://github.com/upx/upx/issues/643
modified: .github/travis_testsuite_1-expected_sha256sums.sh
modified: src/stub/i386-win32.pe.h
modified: src/stub/src/i386-win32.pe.S
modified: src/stub/tmp/i386-win32.pe.bin.dump
2023-01-12 18:35:04 -08:00
John Reiser
ab00825f37
i386 shared library TLS init
...
https://github.com/upx/upx/issues/643
modified: .github/travis_testsuite_1-expected_sha256sums.sh
modified: src/p_w32pe.cpp
modified: src/stub/i386-win32.pe.h
modified: src/stub/src/i386-win32.pe.S
modified: src/stub/tmp/i386-win32.pe.bin.dump
2023-01-12 14:34:06 -08:00
John Reiser
e86d9179aa
Sync testsuite
...
modified: .github/travis_testsuite_1-expected_sha256sums.sh
modified: src/p_lx_elf.cpp
2023-01-09 10:51:47 -08:00
John Reiser
26d8e9c4c5
amd64-linux revamp for compressing shared libraries
...
Major changes: p_lx_elf.cpp and stub/src/amd64-linux.elf-so*.
(Includes run-time infrastructure for multiple de-compressors.)
modified: linker.cpp
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_unix.cpp
modified: p_unix.h
modified: stub/Makefile
modified: stub/src/amd64-darwin.dylib-entry.S
modified: stub/src/amd64-darwin.macho-entry.S
new file: stub/src/amd64-expand.S
modified: stub/src/amd64-linux.elf-entry.S
new file: stub/src/amd64-linux.elf-so_entry.S
new file: stub/src/amd64-linux.elf-so_fold.S
new file: stub/src/amd64-linux.elf-so_fold.lds
new file: stub/src/amd64-linux.elf-so_main.c
modified: stub/src/amd64-linux.shlib-init.S
modified: stub/src/amd64-win64.pep.S
modified: stub/src/arch/amd64/nrv2b_d.S
modified: stub/src/arch/amd64/nrv2d_d.S
modified: stub/src/arch/amd64/nrv2e_d.S
plus many generated stub/*.h and stub/tmp/*.bin.dump
2023-01-09 09:39:25 -08:00
John Reiser
5f3ebc8a7f
clang-format
...
modified: linker.cpp
2023-01-09 09:33:34 -08:00
John Reiser
425b1b44bc
Initialize output_capacity for loader
...
modified: pefile.cpp
2023-01-09 09:20:43 -08:00
John Reiser
39442e6282
initLoader() 4th parameter allows larger output size
...
modified: packer.cpp
modified: packer.h
2023-01-05 15:28:12 -08:00
John Reiser
99575e1010
ElfLinker::output_capacity
...
modified: linker.cpp
modified: linker.h
2023-01-05 15:25:34 -08:00
John Reiser
64aa7540e2
Sync copyright year 2023
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_unix.cpp
modified: p_unix.h
2023-01-02 08:28:41 -08:00
Markus F.X.J. Oberhumer
3ff5dbd179
testsuite: update testsuite caused by version year change
2023-01-01 19:56:14 +01:00
Markus F.X.J. Oberhumer
e25d04fb12
all: bump version date
2023-01-01 19:53:28 +01:00
Markus F.X.J. Oberhumer
dd1d5a92d2
all: welcome 2023
2023-01-01 19:49:30 +01:00
Markus F.X.J. Oberhumer
c6e0aad40b
make: move extra builds to "build/extra/" subdirectories
2023-01-01 19:43:57 +01:00
Markus F.X.J. Oberhumer
99b795ceaa
cmake: update for MinGW
2023-01-01 13:54:39 +01:00
Markus F.X.J. Oberhumer
33dc60df26
all: minor cleanups
2022-12-31 21:08:58 +01:00
John Reiser
619aeb54ff
Pesky "upx -t" mode
...
https://github.com/upx/upx/issues/599
modified: p_lx_elf.cpp
2022-12-30 10:29:25 -08:00
John Reiser
77ba43328b
Use my_page_size, which is 0x4000 (16KiB) on arm64
...
https://github.com/upx/upx/issues/628
modified: p_mach.cpp
2022-12-31 20:55:34 +01:00
John Reiser
01a30752c7
Mach-O: allow 256 ncmds and 32768 sizeofcmds
...
https://github.com/upx/upx/issues/642
modified: p_mach.cpp
modified: stub/src/i386-darwin.macho-upxmain.c
modified: stub/src/powerpc-darwin.macho-upxmain.c
2022-12-29 14:02:42 -08:00
John Reiser
e56b748435
WIP fixing "upx -t" of shared library
...
modified: p_lx_elf.cpp
2022-12-23 11:23:41 -08:00
Markus F.X.J. Oberhumer
bb4cbdff44
src: fix m68k-atari build, prepare for std::atomic, port John's MemBuffer debug
2022-12-22 16:06:25 +01:00
Markus F.X.J. Oberhumer
0b47e474a7
make: update src/Makefile
2022-12-22 15:52:50 +01:00
Markus F.X.J. Oberhumer
8e85680eb4
all: minor updates
2022-12-21 22:09:05 +01:00
John Reiser
fefce0d5c4
Cleanup "PT_LOAD gap recovery" during upx -d
...
https://github.com/upx/upx/issues/635
modified: p_lx_elf.cpp
2022-12-21 06:53:37 -08:00
Markus F.X.J. Oberhumer
0ac3cb2329
CI: update CI
2022-12-21 10:08:21 +01:00
Markus F.X.J. Oberhumer
708ab1dcd7
src: p_xxx_enum.h: trailing commas in enums are allowed since C++11
2022-12-20 23:34:36 +01:00
Markus F.X.J. Oberhumer
9b87ddb621
CI: run test-suite; remove obsolete scripts
2022-12-20 23:33:58 +01:00
Markus F.X.J. Oberhumer
5dc4eb4b03
CI: also test linux gcc-m32 builds
2022-12-20 12:10:39 +01:00
Markus F.X.J. Oberhumer
a203c72281
make: update Makefile
2022-12-20 11:40:48 +01:00
Markus F.X.J. Oberhumer
6cf85cee6e
src: minor compatibility fix
2022-12-20 11:40:22 +01:00
Markus F.X.J. Oberhumer
1eb6a40fdd
src: restore lseek() error check in file.cpp
2022-12-20 11:51:31 +01:00
John Reiser
1bed77e4d3
'sizeof' returns size_t, which on i386 is not as wide as off_t
...
https://github.com/upx/upx/issues/629
https://github.com/upx/upx/issues/635
modified: p_lx_elf.cpp
2022-12-20 07:21:02 -08:00
John Reiser
f2a68023fa
MSVC error C4146: unary minus operator applied to unsigned type, result still unsigned
...
modified: p_lx_elf.cpp
2022-12-19 16:14:48 -08:00
John Reiser
8ccffc40e3
A real typo that caused an error in "upx -d" de-compressing
...
modified: p_lx_elf.cpp
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
2022-12-19 15:45:27 -08:00
John Reiser
dd8c1d0441
clang alignment
...
modified: p_lx_elf.cpp
2022-12-19 14:31:26 -08:00
John Reiser
f9f28ff176
More work on "upx -d" de-compression
...
https://github.com/upx/upx/issues/629
https://github.com/upx/upx/issues/635
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_unix.cpp
2022-12-19 13:49:43 -08:00
John Reiser
3649041195
Return value of FileBase::seek(, SEEK_CUR) was not FileBase::tell()
...
modified: file.cpp
2022-12-19 13:37:24 -08:00
Markus F.X.J. Oberhumer
c23c7a9379
all: minor updates
2022-12-15 16:20:22 +01:00
Markus F.X.J. Oberhumer
9934e33b99
src: pacify a clang scan-build warning in p_mach.cpp
2022-12-12 21:27:34 +01:00
Markus F.X.J. Oberhumer
9e75fdda66
src: pacify a -Wcast-align warning
2022-12-12 20:07:27 +01:00
Markus F.X.J. Oberhumer
d873a26f41
all: clang-format-15.0.6
2022-12-12 19:25:31 +01:00
Markus F.X.J. Oberhumer
91aa5b55ab
all: upgrade to upx-stubtools v20221212
2022-12-12 19:25:28 +01:00
Markus F.X.J. Oberhumer
3f460a76ce
src: fix typo in options.cpp
2022-12-12 05:38:51 +01:00
Markus F.X.J. Oberhumer
7256ea3b32
make: update Makefile
2022-12-12 05:32:04 +01:00
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
8d1a98e03b
misc: update podman images, add build-all script
2022-11-27 23:50:22 +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
741cb3a136
misc: update podman images
2022-11-26 19:12:26 +01: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
9d5e06232d
testsuite: update checksums caused by version bump
2022-11-22 21:36:32 +01: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
39778d5f47
cmake: default to relaxed options when building from source tarball
2022-11-22 20:54:12 +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
d31b80da5b
cmake: improve tests
2022-11-14 13:21:07 +01:00
Markus F.X.J. Oberhumer
eb231b65f3
src: clang-format compress_*.cpp; minor cleanup
2022-11-14 11:35:13 +01:00
Markus F.X.J. Oberhumer
59e3b1f98d
all: cosmetic cleanups in NEWS and doc/Makefile
2022-11-11 05:32:59 +01:00
Markus F.X.J. Oberhumer
8b174bb272
submodules: update for new version
2022-11-10 17:34:02 +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
ede1fec5e7
submodules: update for new version
2022-11-10 16:25:33 +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
dadee7acfb
doc: update NEWS to mention a user visible change
2022-11-09 21:47:28 +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
5045f7eb42
submodules: update for new versions
2022-11-08 17:33:56 +01:00
Markus F.X.J. Oberhumer
82a6ccac4d
misc: add misc/cross-compile-upx-with-podman
2022-11-08 03:54:30 +01: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
Markus F.X.J. Oberhumer
874250fe49
submodules: update for new versions
2022-11-06 08:34:06 +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
Markus F.X.J. Oberhumer
212bc04257
cmake: run tests sequentially
2022-11-02 02:50:02 +01:00
Markus F.X.J. Oberhumer
db401fd05e
cmake: improve "make test"
2022-10-31 18:53:38 +01:00
Markus F.X.J. Oberhumer
bebe72481c
testsuite: update checksums
2022-10-29 19:16:57 +02: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
5763518cce
misc: add misc/rebuild-stubs-with-podman to add upx-4.0.0
2022-10-28 20:03:30 +02:00
Markus F.X.J. Oberhumer
3e4c5bab72
testsuite: update checksums caused by version bump
2022-10-28 17:30:56 +02: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
Markus F.X.J. Oberhumer
29762a8a96
CI: small update
2022-10-28 07:51:00 +02:00
Markus F.X.J. Oberhumer
c7ef08dc2d
testsuite: update
2022-10-27 22:35:45 +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
af87f7f2bf
doc: add missing NEWS entries
2022-10-27 18:10:29 +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
80d30aab32
testsuite: update checksums caused by version change
2022-10-27 16:03:08 +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
504224696c
misc: update misc/rebuild-stubs-with-podman to install previous UPX versions
2022-10-27 15:35:59 +02:00
Markus F.X.J. Oberhumer
e2acd666df
CI: remove some obsolete stuff
2022-10-25 02:53:49 +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
98fedef1a1
testsuite: update checksums
2022-10-24 12:56:49 +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
John Reiser
c331b9f1e2
Zero the tail of last RW page, even when variable page size
...
https://github.com/upx/upx/issues/611
modified: stub/src/amd64-linux.elf-main.c
2022-10-24 12:56:49 +02:00
John Reiser
afeaeeddec
munmap(, Phdr[C_TEXT=1].p_memsz); // not .p_vaddr
...
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-fold.S
2022-10-24 12:56:49 +02:00
John Reiser
ab7ef9f511
Document the value of "brk #0 " instruction
...
modified: stub/src/arm64-linux.elf-entry.S
2022-10-24 12:56:49 +02:00
John Reiser
d3ad6d25d8
PackLinuxElf64::asl_pack2_Shdrs() for better fit in logical flow
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2022-10-24 12:56:49 +02:00
John Reiser
2e29f9fa5f
pack2() fixes for --android-shlib
...
WIP for https://github.com/upx/upx/issues/599
modified: p_lx_elf.cpp
2022-10-24 12:56:49 +02:00
John Reiser
5d9f71bb13
asl_pack1_Shdrs()
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2022-10-24 12:56:49 +02:00
John Reiser
82ed25bb44
Major fix 64-bit un_shlib_1() and unpack(), but not --android-shlib
...
Also canUnpack() is really a 'bool' which sets overlay_offset
when 'true'; confusing!
https://github.com/upx/upx/issues/599 (partial)
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_unix.h
2022-10-24 12:56:49 +02:00
Markus F.X.J. Oberhumer
f57393c0e8
all: simplify include path handling; update src/Makefile
2022-10-24 12:56:35 +02:00
Markus F.X.J. Oberhumer
b54cced19c
src: add some tests for compress_zlib
2022-10-24 12:18:25 +02:00
Markus F.X.J. Oberhumer
60a0544314
all: bump tentative release date
2022-10-23 23:15:00 +02:00
Markus F.X.J. Oberhumer
283c1cf931
src: add --version-short option; support doctest --dt-XXX options; cleanups
2022-10-23 23:09:13 +02:00
Markus F.X.J. Oberhumer
fff53efc05
src: add some more xspan tests
2022-10-20 14:06:20 +02:00
Markus F.X.J. Oberhumer
07d368adca
all: misc cleanups
2022-10-20 02:09:05 +02:00
Markus F.X.J. Oberhumer
13276d93fa
all: bump tentative release date
2022-10-18 21:07:48 +02:00
Markus F.X.J. Oberhumer
79b1b1a586
submodules: update for new version
2022-10-18 20:32:03 +02:00
Markus F.X.J. Oberhumer
2f083f3e56
submodules: update for new version
2022-10-14 11:21:19 +02:00
Markus F.X.J. Oberhumer
73b0b4db9d
submodules: update for new version
2022-10-12 17:26:11 +02:00
Markus F.X.J. Oberhumer
ca0e614b56
CI: update for new GitHub Actions deprecated set-output commands
2022-10-12 16:29:20 +02:00
John Reiser
72613d06a5
Look for PackHeader in the right place.
...
https://github.com/upx/upx/issues/606
modified: p_mach.cpp
2022-10-11 08:08:55 -07:00
John Reiser
48ad5513ff
un_shlib_1() allows test mode ("-t") which has (nullptr == fo)
...
modified: p_lx_elf.cpp
2022-10-07 12:52:21 -07:00
John Reiser
201d9f1346
Fix length when stub unmaps compressed input for main program
...
https://github.com/upx/upx/issues/606
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
modified: stub/amd64-linux.elf-fold.h
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/tmp/amd64-linux.elf-fold.map
2022-10-07 09:53:29 +02:00
John Reiser
1e8f1f49d0
is_bad_linker_command() ignores LC_REQ_DYLD
...
https://github.com/upx/upx/issues/606
modified: p_mach.cpp
2022-10-06 10:15:10 -07:00
Markus F.X.J. Oberhumer
65707900bc
src: remove more traces of fictional powerpc64le-darwin
2022-10-06 15:53:50 +02:00
Markus F.X.J. Oberhumer
39c5be43aa
CI: add Visual Studio 2022 builds; updates
2022-10-06 15:35:51 +02:00
Markus F.X.J. Oberhumer
c4437cb293
all: add support for a basic "make test"
2022-10-06 14:10:35 +02:00
Markus F.X.J. Oberhumer
e2b86a49db
src: fix recently introduced bug in unoptimzeReloc
2022-10-06 14:09:45 +02:00
Markus F.X.J. Oberhumer
8fe83be87f
misc: update misc/rebuild-stubs-with-podman so that we can build
...
the full upx program in a container
2022-10-05 16:07:12 +02:00
Markus F.X.J. Oberhumer
17167d4905
CI: update macos-12 build
2022-10-05 02:05:20 +02:00
John Reiser
05ff7e35a1
Warn for big shell scripts, and send them to --force-execve.
...
Also propagte error code when execve() fails for compressed shell,
to avoid confusion of `hlt` ==> SIGSEGV.
https://github.com/upx/upx/issues/604
2022-10-05 01:30:32 +02:00
Markus F.X.J. Oberhumer
f67cec4752
submodules: update for new version
2022-10-04 15:33:27 +02:00
Markus F.X.J. Oberhumer
fd4882abcf
CI: run close-stale-issues.yml once per week
2022-10-04 13:28:51 +02:00
Markus F.X.J. Oberhumer
0f42579e68
src: fix djgpp and musl builds
2022-10-02 20:00:30 +02:00
Markus F.X.J. Oberhumer
7398d8f68f
src: enable -Wsuggest-override in src/conf.h
2022-09-27 18:17:28 +02:00
John Reiser
ec33109b22
clang-10 requires the use of 'override'
...
Discovered during gitlab auto-build for https://github.com/upx/upx/issues/595
modified: Makefile
modified: p_armpe.h
modified: p_djgpp2.h
modified: p_lx_elf.h
modified: p_lx_exc.h
modified: p_lx_interp.h
modified: p_lx_sh.h
modified: p_mach.h
modified: p_ps1.h
modified: p_tmt.h
modified: p_unix.h
modified: p_vmlinx.h
modified: p_vmlinz.h
modified: p_w32pe.h
modified: p_w64pep.h
modified: pefile.h
2022-09-27 18:15:48 +02:00
Markus F.X.J. Oberhumer
2cfa4c1eb7
CI: update testsuite checksums caused by getVersion() bump
2022-09-27 18:15:48 +02:00
John Reiser
a13b4d10d9
After upx-3.96, the de-compressing stub for ELF moved
...
... so unpack() of newly-compressed ELF by upx-3.96 now says
"CantUnpackException: need a newer version of UPX"
https://github.com/upx/upx/issues/595
modified: p_lx_elf.h
modified: packer.h
2022-09-27 18:09:20 +02:00
Markus F.X.J. Oberhumer
36e94e58d0
stub: add mising powerpc64-darwin tmp dump files
2022-09-27 18:09:20 +02:00
John Reiser
d0a52bd483
More cleanup of stubs for powerpc64le-darwin* which does not exist.
...
Only powerpc64-darwin (BigEndian, no suffix) exists.
https://github.com/upx/upx/issues/596
2022-09-27 15:58:35 +02:00
dependabot[bot]
38a1d3179b
build(deps): bump actions/stale from 5 to 6
...
Bumps [actions/stale](https://github.com/actions/stale ) from 5 to 6.
- [Release notes](https://github.com/actions/stale/releases )
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md )
- [Commits](https://github.com/actions/stale/compare/v5...v6 )
---
updated-dependencies:
- dependency-name: actions/stale
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2022-09-22 17:07:26 +00:00
Markus F.X.J. Oberhumer
0d639d6386
CI: add macos job
2022-09-21 21:55:07 +02:00
Markus F.X.J. Oberhumer
4256057c27
src: add a mem_size() call hinted by GitHub CodeQL
2022-09-21 19:28:46 +02:00
Markus F.X.J. Oberhumer
b720b47c12
CI: update testsuite caused by previous commit
2022-09-21 19:22:39 +02:00
John Reiser
55e4a4f086
Assembler local symbol ("1:") clobbered by code in .macro
...
https://github.com/upx/upx/issues/534
modified: stub/arm64-darwin.macho-entry.h
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.shlib-init.h
modified: stub/src/arch/arm64/v8/lzma_d.S
modified: stub/src/arch/arm64/v8/macros.S
2022-09-20 13:08:14 -07:00
Markus F.X.J. Oberhumer
b4cb9f8b2f
src: silence some bogus GitHub CodeQL warnings; add MemBuffer "+" overload
2022-09-17 07:53:14 +02:00
Markus F.X.J. Oberhumer
63298ebd6d
src: silence clang-15 compiler warnings
2022-09-16 16:31:34 +02:00
Markus F.X.J. Oberhumer
73c816e468
doc: work on improving docs; add generated files to Git repo
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
0492e650ef
submodules: update for new versions
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
b8b94ee89e
src: more cleanups; NFCI
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
81176716d5
src: linker: fix a minor printf format issue detected by codeql
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
26e7ae00e9
CI: create codeql-analysis.yml
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
c75d7a685d
src: major cleanups, introduce new eXtended Span class
...
- initial minimally invasive eXtended Span implementation
- rename ptr_diff to ptr_diff_bytes
- move some files to util subdir
- lots of cleanups
- start using the new checked pointers - this needs some real-world testing
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
4318cc22ee
src: cleanup option handling, add testcases; fixes #587
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
575cb720c6
doc: work on README
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
5db34fbf92
src: new ACC version
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
7cfef2f6bf
CI: update testsuite checksums caused by version date bump
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
4603f1df4b
src: bump tentative release date
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
c69fcfff9d
src: doctest: start work on using doctest
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
70f14101ed
doc: update README.SRC, mention misc/rebuild-stubs-with-podman
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
a9803459ed
doc: move BUGS into doc subdirectory
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
43034e8e92
doc: remove outdated README.1ST
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
ef547034f6
misc: add misc/rebuild-stubs-with-podman files
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
e87fc60391
misc: update clang-format files
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
45e6e73d85
misc: move some scripts from src/stub/scripts to misc/scripts
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
be30c26dbb
make: update src/Makefile
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
79e9b0762c
CI: work on new cmake-based CI; updates
2022-09-16 13:26:10 +02:00
Markus F.X.J. Oberhumer
a9a806c418
CI: remove obsolete travis_deploy.sh - superseded by GitHub Actions
2022-09-11 13:26:32 +02:00
Markus F.X.J. Oberhumer
c7d8b6fed1
make: add new top-level Makefile, now using CMake
2022-09-11 13:26:32 +02:00
Markus F.X.J. Oberhumer
a723efd225
make: remove top-level Makefile
2022-09-11 13:26:32 +02:00
Markus F.X.J. Oberhumer
cf429dfce4
cmake: add CMakeLists.txt for building with CMake
2022-09-11 13:26:32 +02:00
Markus F.X.J. Oberhumer
3fcd64a0c0
misc: update files
2022-09-11 13:26:32 +02:00
Markus F.X.J. Oberhumer
83cb38022b
misc: add compile_flags.txt to support editors using clangd LSP
2022-09-11 13:26:32 +02:00
Markus F.X.J. Oberhumer
93c04d1f66
misc: add .gitattributes for GitHub linguist
2022-09-11 13:26:32 +02:00
Markus F.X.J. Oberhumer
3c47898cf4
make: adjust for new vendor/lzma-sdk location
2022-09-11 13:26:32 +02:00
Markus F.X.J. Oberhumer
61e1366122
submodules: add new upx-vendor submodules in directory "vendor"
2022-09-11 13:26:29 +02:00
Markus F.X.J. Oberhumer
a20636fd63
submodules: remove submodule src/lzma-sdk
2022-09-04 04:24:39 +02:00
Markus F.X.J. Oberhumer
aa8cdca0a9
src: consistently use TESTING for internal development tests
2022-09-04 04:24:39 +02:00
Markus F.X.J. Oberhumer
6931a3aa70
src: enable -Wzero-as-null-pointer-constant when using clang
2022-09-04 04:24:39 +02:00
Markus F.X.J. Oberhumer
d001a63bce
Welcome 2022.
2022-09-04 04:24:39 +02:00
Markus F.X.J. Oberhumer
0d3377f48b
src: p_mach.cpp: disable -Wcast-align warning
2022-08-17 19:54:44 +02:00
John Reiser
aeb04d97c8
powerpc64-darwin.macho (not powerpc64le-darwin.macho)
...
All Apple PowerPC are BigEndian only.
https://github.com/upx/upx/issues/596
modified: p_mach.cpp
modified: p_mach.h
modified: packmast.cpp
2022-09-03 12:39:50 -07:00
John Reiser
eb68ab91cd
PackDjgpp2::canPack() allows "loose" (non-contiguous) text,data,bss
...
Hack: grow text to eliminate gap; don't complain unless bss overlaps data
https://github.com/upx/upx/issues/45
modified: p_djgpp2.cpp
2022-08-29 11:37:46 +02:00
Markus F.X.J. Oberhumer
ee242ba987
CI: improve workflows/close-stale-issues.yml
2022-08-27 21:04:56 +02:00
cui fliter
44a53736ff
fix some typos
...
Signed-off-by: cui fliter <imcusg@gmail.com >
2022-08-23 19:20:21 +02:00
Markus F.X.J. Oberhumer
1b21fef081
CI: improve workflows/close-stale-issues.yml
2022-08-12 17:59:32 +02:00
Markus F.X.J. Oberhumer
5f9c50cd3e
clang-format
2022-08-10 23:29:43 +02:00
Markus F.X.J. Oberhumer
793d8c1d2e
Fix compilation with C++20.
2022-07-17 21:16:11 +02:00
Markus F.X.J. Oberhumer
81f868a0c6
Add .github/workflows/close-stale-issues.yml
2022-08-10 23:12:09 +02:00
John Reiser
dadbbbdc64
Avoid trouble: disallow empty name of export directory
...
https://github.com/upx/upx/issues/425
modified: pefile.cpp
2022-08-13 12:25:30 -07:00
John Reiser
bfd2153f2b
Delete trailing space characters
...
https://github.com/upx/upx/pull/589
modified: pefile.cpp
2022-07-26 20:09:16 -07:00
S01den
077793fa5e
Update pefile.cpp
...
I found a bug by participating to the Binary Golf Grand Prix 3 (https://tmpout.sh/bggp/3/ ) : upx text.exe segfaults when NumberOfSections in the IMAGE_FILE_HEADER is NULL, so
if (memcmp(isection[0].name,"UPX",3) == 0) triggers a NULL pointer dereference causing a crash.
To fix it, just have to check if isection is NULL (which means NumberOfSections = 0) or not.
2022-07-27 01:54:01 +02:00
John Reiser
acad3c3000
DT_INIT_ARRAY noes not pertain to DT_* for symbol table info
...
https://github.com/upx/upx/issues/586
modified: p_lx_elf.cpp
2022-07-02 20:52:18 -07:00
John Reiser
3b4627e17e
Add filename to infoWarning("file coruupted")
...
modified: p_mach.cpp
2022-06-01 08:34:23 -07:00
John Reiser
05976ee1a7
Try harder to de-compress corrupted Mach-o file.
...
https://github.com/upx/upx/issues/579
modified: p_mach.cpp
2022-05-31 11:52:10 -07:00
John Reiser
c1311c78a3
Extra space to force "git commit" to force rebuild for tagging Issue
...
https://github.com/upx/upx/issues/577
modified: p_lx_elf.cpp
2022-05-30 15:19:18 -07:00
John Reiser
717150b7f3
Stupid MSVC: bad C4706: assignment within conditional expression
...
- for (unsigned j=0; (k = dt_names[j]); ++j) {
+ for (unsigned j=0; ((k = dt_names[j]), k); ++j) {
The complaint was:
p_lx_elf.cpp(5710) : warning C4706: assignment within conditional expression
which is INCORRECT, as shown in the change which is 100% equivalent.
The assignment occurs BEFORE the conditional expression.
modified: p_lx_elf.cpp
2022-05-30 15:09:34 -07:00
John Reiser
a68c62d938
More placate compilers
...
https://github.com/upx/upx/issues/577
modified: p_lx_elf.cpp
2022-05-30 15:02:53 -07:00
John Reiser
c11f8a569a
Placate 'clang' -Wcast-align
...
https://github.com/upx/upx/issues/577
modified: p_lx_elf.cpp
2022-05-30 14:55:39 -07:00
John Reiser
03436d2415
Bug in handling DT_GNU_HASH table.
...
Fix includes a more-general and stronger heuristic to find the end of
GNU_HASH table when there is no ElfXX_Shdr for it. 64-bit only for now.
(This is needed to help prevent SIGSEGV when processing tampered .exe.)
https://github.com/upx/upx/issues/577
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2022-05-30 14:24:21 -07:00
John Reiser
4ae75375e0
LC_BUILD_VERSION etc for XCode 13+
...
https://github.com/upx/upx/issues/578
modified: p_mach.cpp
modified: p_mach_enum.h
2022-05-30 01:05:09 -07:00
John Reiser
2721ef0636
ElfLinker::init() allows symbols and relocations (but not Sections) to be empty
...
modified: linker.cpp
modified: linker.h
2022-05-04 13:29:36 -07:00
John Reiser
7a232cb330
Allow qemu on host with smaller PAGE_SIZE. Sync stubs.
...
https://github.com/upx/upx/issues/571
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
modified: stub/arm64-linux.elf-fold.h
modified: stub/powerpc64-linux.elf-fold.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/src/amd64-linux.elf-main.c
modified: stub/tmp/arm64-linux.elf-fold.map
modified: stub/tmp/powerpc64-linux.elf-fold.map
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2022-03-25 09:13:10 -07:00
John Reiser
52f19ae330
Cleanup powerpc64le-linux.elf-*.S (forgotten when powerpc-linux.elf*.S)
...
https://github.com/upx/upx/issues/571
modified: stub/powerpc64-linux.elf-entry.h
modified: stub/powerpc64-linux.elf-fold.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/tmp/powerpc64-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc64-linux.elf-fold.map
modified: stub/tmp/powerpc64le-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2022-03-24 19:14:56 -07:00
John Reiser
275477f914
ElfLinker::addSection omits "ABS*" and "UND*" sections
...
modified: linker.cpp
2022-03-24 19:09:09 -07:00
John Reiser
2ed6755d5d
Sync stubs
...
https://github.com/upx/upx/issues/570
modified: .github/travis_testsuite_1-expected_sha256sums.sh
2022-03-22 19:27:27 -07:00
John Reiser
78c555b4a6
Handle old-style compressed main programs when de-compressing
...
modified: p_lx_elf.cpp
2022-03-22 19:20:09 -07:00
John Reiser
a127125707
Comment the breakpoint instructions for faster analysis by 'grep'
...
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: stub/src/arm.v5a-darwin.macho-entry.S
modified: stub/src/arm.v5a-darwin.macho-fold.S
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/mipsel.r3000-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
2022-03-22 19:18:19 -07:00
John Reiser
f853f91c5b
Placate clang re: missing 'override'
...
modified: file.h
2022-03-22 19:16:15 -07:00
John Reiser
e7ca5c54ff
Fix --brute for p_lx_elf.cpp, which compresses multiple pieces
...
Force all pieces to use the same de-compressor.
(Future: allow each PT_LOAD to choose its own.)
Has minor wobbles due to page alignment, and size of de-compressor.
64-bit only for now.
https://github.com/upx/upx/issues/570
https://github.com/upx/upx/issues/297
modified: p_lx_elf.cpp
modified: p_unix.cpp
modified: packer.cpp
modified: packer.h
2022-03-22 11:46:25 -07:00
John Reiser
663d6b466b
WIP: clarify compressWithFilters; reduce size of obuf for PackLinuxElf64
...
modified: p_lx_elf.cpp
modified: packer.cpp
modified: packer.h
2022-03-21 13:49:46 -07:00
John Reiser
0e2a9de2b2
Empty commit to force re-build Action
...
https://github.com/upx/upx/issues/568
2022-03-14 15:51:09 -07:00
John Reiser
34df0d6ef1
More empty HASH and/or GNU_HASH when Rust-musl
...
https://github.com/upx/upx/issues/568
modified: p_lx_elf.cpp
2022-03-12 14:21:51 -08:00
John Reiser
540164849b
whitespace
...
https://github.com/upx/upx/issues/446
modified: macho-snip.c
2022-03-01 16:05:37 -08:00
John Reiser
252143d0bb
WIP: smallest executable on Apple M1 (aarch64 or arm64)
...
Requirements for success after snipping a loader_command:
"codesign -s - my_app" must succeed.
"lldb my_app; process launch -s; continue" must succeed.
Optional loader_commands (macho-snip can remove these successfully):
LC_UUID, LC_BUILD_VERSION, LC_SOURCE_VERISON,
LC_DATA_IN_CODE (when 0==datasize)
Apple "strip -N" clears out LC_SYMTAB and LC_DYSYMTAB, but leaves
LC_DYLD_INFO_ONLY.export_size. Perhaps this could be zero if
constructed that way; snipping seems tedious because codesign
requires that __LINKEDIT must have no gaps.
LC_FUNCTION_STARTS seems to be required by codesign.
codesign wants offsets that point into __LINKEDIT to be in order:
LC_DYLD_INFO_ONLY, LC_FUNCTION_STARTS, LC_DATA_IN_CODE, LC_SYMTAB
MacOS seesm to require LC_LOAD_DYLINKER (else "zsh: Kiled"),
which seems to require LD_LOAD_DYLIB (else SIGABRT).
https://github.com/upx/upx/issues/446
----
modified: macho-snip.c
modified: udf.s
2022-03-01 15:06:58 -08:00
John Reiser
480ab51650
Evade poratbility constraints of UPX build system
...
when building a tool to investigate "minimal" Mach-O executable
on Apple MacOS Big Sur using Apple M1 hardware (aarch64).
https://github.com/upx/upx/issues/567
modified: stub/tools/macho-snip/Makefile
modified: stub/tools/macho-snip/macho-snip.c
modified: stub/tools/macho-snip/udf.s
2022-03-01 11:12:19 -08:00
John Reiser
972c76eb42
Tool for snipping loader_commands in Mach-O on Apple M1 (aarch64) on BigSur.
...
experimental!
https://github.com/upx/upx/issues/424
new file: macho-snip/Makefile
new file: macho-snip/macho-snip.c
new file: macho-snip/udf.s
2022-02-28 19:53:25 -08:00
John Reiser
e5aeea9ed2
Check more carefully in invert_pt_dynamic()
...
https://github.com/upx/upx/issues/566
modified: p_lx_elf.cpp
2022-02-28 07:55:49 -08:00
John Reiser
f204670008
Mach unpack checks for bad load_command in compressed input
...
https://github.com/upx/upx/issues/564
modified: p_mach.cpp
2022-02-25 10:17:04 -08:00
John Reiser
651155c64d
Check Mach_header.ncmds at unpack
...
https://github.com/upx/upx/issues/563
modified: p_mach.cpp
2022-02-25 09:32:29 -08:00
John Reiser
660aee6d22
More checking for unpack of tampered Elf_Phdr
...
https://github.com/upx/upx/issues/562
modified: p_elf_enum.h
modified: p_lx_elf.cpp
2022-02-25 09:23:55 -08:00
John Reiser
a646231630
aligned_sotls, per Laszlo
...
https://github.com/upx/upx/issues/556
modified: pefile.cpp
2022-02-07 08:39:13 -08:00
John Reiser
1050de5171
Native alignment for the "load config" table
...
https://github.com/upx/upx/issues/556
modified: pefile.cpp
2022-01-15 06:45:47 -08:00
John Reiser
b7a5b9437a
Fix checking of sh_name versus shstrsec->sh_size
...
https://github.com/upx/upx/issues/509
modified: p_vmlinx.cpp
2022-01-01 14:20:18 -08:00
Kornel Pal
620955a724
PE: Fix has_oxrelocs (TLS always has oxrelocs)
2021-12-31 20:45:28 +01:00
John Reiser
2e64a277f8
Fix headway during optimizeReloc()
...
Later: "Assertion `(soxrelocs == 0) == !has_oxrelocs' failed."
https://github.com/upx/upx/issues/552
modified: packer.cpp
modified: packer.h
modified: pefile.cpp
2021-12-31 10:27:58 -08:00
John Reiser
ea567a8b14
Check when optimizeRelocs()
...
https://github.com/upx/upx/issues/513
modified: packer.h
modified: packer.cpp
modified: pefile.cpp
modified: p_wcle.cpp
modified: p_tmt.cpp
2021-12-29 16:57:52 -08:00
John Reiser
be23f93ee6
upx_uint8_t
...
https://github.com/upx/upx/issues/545
modified: p_mach.h
2021-12-27 08:49:05 -08:00
John Reiser
fcdf0e92c1
Use upx_uint32_t, upx_uint64_t
...
Avoid complaints from x86_64-w64-mingw32-gcc (GCC) 9.3-win32 20200320
https://github.com/upx/upx/issues/545
modified: p_mach.h
2021-12-27 08:33:54 -08:00
John Reiser
2d6987252e
is_bad_linker_command()
...
https://github.com/upx/upx/issues/545
modified: p_mach.cpp
2021-12-27 08:14:19 -08:00
John Reiser
4a9c46253e
Validate input LC_ commands in order to defend against fuzzers
...
TODO: validate in ::unpack(), too
https://github.com/upx/upx/issues/545
modified: p_mach.cpp
modified: p_mach.h
modified: p_mach_enum.h
2021-12-26 19:40:34 -08:00
John Reiser
5bcf9dd8af
Do not complain for minimal DT_GNU_HASH as by Rust.
...
Also: .p_type is 32 bits only!
https://github.com/upx/upx/issues/525
modified: p_lx_elf.cpp
2021-12-25 12:39:31 -08:00
John Reiser
284adb203f
Better checking of DT_HASH.nbuckets
...
https://github.com/upx/upx/issues/507
modified: p_lx_elf.cpp
2021-12-24 15:52:16 -08:00
John Reiser
adafa841f7
Some PT_LOAD must have (p_flags & PF_X)
...
https://github.com/upx/upx/issues/511
modified: p_lx_elf.cpp
2021-12-24 15:32:19 -08:00
John Reiser
fdc5d25d03
Require DT_STRSZ
...
https://github.com/upx/upx/issues/512
modified: p_lx_elf.cpp
2021-12-24 15:08:22 -08:00
John Reiser
294a7077de
Announce support for EFI files (PE x86)
...
modified: NEWS
2021-12-24 15:05:53 -08:00
Kornel Pal
990d0ec543
PE: Remove duplicate oxrelocs write
2021-12-22 05:07:54 +01:00
John Reiser
bb90c4dff4
Sync PE stubs
...
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
2021-12-24 07:34:06 -08:00
Kornel Pal
00e3d992e8
Sync stubs
2021-12-22 03:05:53 +01:00
Kornel Pal
937bfa4e49
PE: Add support for EFI images
2021-12-22 03:05:24 +01:00
Kornel Pal
1d9c211eed
PE: Make imports in decompressor stub optional
2021-12-22 03:00:17 +01:00
Kornel Pal
76ddf6b8da
PE: Add position independent decompressor stub for i386
2021-12-22 02:58:09 +01:00
Kornel Pal
7f1f29b0d8
PE: Remove empty non-compressed section
2021-12-22 02:57:10 +01:00
Kornel Pal
222471744f
PE: Remove file alignment restriction
2021-12-22 02:56:09 +01:00
Kornel Pal
cc100be26e
PE: Fix stripped relocation handling
2021-12-22 02:55:33 +01:00
Kornel Pal
966b571b7c
PE: Use no red zone on AMD64
2021-12-16 06:59:26 +01:00
Kornel Pal
f3e710394a
PE: Set header size on 64-bit too
2021-12-16 06:57:39 +01:00
Kornel Pal
bfd1f1fbfa
PE: Fix relocation parsing and validation
2021-12-16 06:56:01 +01:00
Efreak
a09146b5e0
unreferenced variable breaks build
2021-12-02 14:00:40 -08:00
John Reiser
bbf2b08f48
Update testsuite with new signatures for i386-linux.elf
...
https://github.com/upx/upx/issues/540
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
2021-12-03 08:53:08 -08:00
John Reiser
e2dbc661f1
Sync stub
...
modified: stub/i386-linux.elf-entry.h
2021-12-03 08:38:26 -08:00
John Reiser
7626e09f66
Fix jl ==> jb (unsigned compare)
...
modified: stub/src/i386-linux.elf-entry.S
2021-12-03 08:27:23 -08:00
Kirill A. Korinsky
248a6980cf
Revert -std=c++14
...
This commit reverts 648fa30f22 which was removed by d60c46371d which is fixed https://github.com/upx/upx/issues/440
2021-11-27 13:22:54 +01:00
John Reiser
f956bfc797
Allow slack for non-GLIBC tool chains versus -Wzero-as-null-pointer-constant
...
https://github.com/upx/upx/pull/531
modified: conf.h
2021-11-27 06:58:38 -08:00
bitraid
6da79783ea
PE: Handle empty imports
2021-05-15 21:41:31 +03:00
a1346054
22329e0ab2
trim excess whitespace
2021-08-22 11:23:41 +00:00
a1346054
a94b0329c9
update codestyle in travis scripts to conform to guidelines
...
* adds and fixes indentation in a few places
* removes redundant quotes
* adds quotes around some arguments to silence shellcheck warnings
* fixes spelling
2021-08-22 11:21:28 +00:00
a1346054
be8601f8cc
use grep -E instead of egrep
...
egrep will go away at some point, and grep -E is standardized
2021-08-22 11:19:38 +00:00
John Reiser
bd441e83ae
WIP: de-compression of old-style shlib
...
modified: p_lx_elf.cpp
2021-09-06 08:43:20 -07:00
John Reiser
02bd9cc403
IMAGE_SUBSYSTEM_EFI_APPLICATION
...
Beginning of support for compressing EFI files; lacks run-time decompressor.
https://github.com/upx/upx/issues/518
modified: p_armpe.cpp
modified: p_w32pe.cpp
modified: p_w64pep.cpp
modified: pefile.cpp
modified: pefile.h
2021-09-06 08:38:51 -07:00
John Reiser
c9f6a3583c
WIP 64-bit shlib
...
modified: p_lx_elf.cpp
2021-08-07 06:45:01 -07:00
John Reiser
076aaf829a
WIP: Elf64 shlib compress+decompress seems to work
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_unix.cpp
2021-07-05 13:47:19 -07:00
John Reiser
85f0c5a445
WIP: Elf64 shlib cleanup
...
modified: file.cpp
modified: file.h
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2021-07-02 18:33:38 -07:00
John Reiser
d5263a56ce
WIP: handling shared library
...
modified: p_lx_elf.cpp
modified: p_unix.cpp
modified: p_unix.h
2021-05-22 16:03:53 -07:00
John Reiser
ef5b55b4d1
sync stubs
...
https://github.com/upx/upx/issues/441
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
2021-05-16 10:14:03 -07:00
Markus F.X.J. Oberhumer
d65e65b2b1
Update CI.
2021-05-15 07:24:16 +02:00
Markus F.X.J. Oberhumer
6aa641e5aa
Update submodules.
2021-05-15 06:03:48 +02:00
John Reiser
504839951a
arm64 clear_cache at end of de-compress
...
https://github.com/upx/upx/issues/441
modified: stub/src/arch/arm64/v8/macros.S
modified: stub/src/arch/arm64/v8/lzma_d.S
modified: stub/src/arch/arm64/v8/nrv2b_d32.S
modified: stub/src/arch/arm64/v8/nrv2d_d32.S
modified: stub/src/arch/arm64/v8/nrv2e_d32.S
modified: stub/arm64-darwin.macho-entry.h
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.shlib-init.h
modified: stub/tmp/arm64-darwin.macho-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
modified: stub/tmp/arm64-linux.shlib-init.bin.dump
2021-05-16 09:53:03 -07:00
bitraid
d55746f62d
PE: disable CFG and compress with --force
2021-05-01 18:05:27 +03:00
bitraid
144010295e
Improve --strip-relocs
...
- Remove .reloc section
- Enable for 64-bit images
- Abort if explicitly set on unsupported image
- Use with --force to remove ASLR / apply when imagebase < default
2021-04-25 20:15:07 +03:00
John Reiser
181c752488
WIP: un_shlib_1
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2021-05-08 11:14:31 -07:00
John Reiser
bd4aca5c12
generated stub files
...
https://github.com/upx/upx/issues/473
modified: stub/mips.r3000-linux.shlib-init.h
modified: stub/mipsel.r3000-linux.shlib-init.h
modified: stub/tmp/mips.r3000-linux.shlib-init.bin.dump
modified: stub/tmp/mipsel.r3000-linux.shlib-init.bin.dump
2021-05-07 11:15:41 -07:00
John Reiser
ad6d73c875
/proc/self/auxv for AT_PAGESZ because musl calls _init with no args
...
https://github.com/upx/upx/issues/473
modified: mipsel.r3000-linux.shlib-init.S
2021-05-07 09:36:07 -07:00
bitraid
c5cc83d424
Fix unoptimizeReloc() to process all relocs
2021-04-21 23:06:55 +03:00
bitraid
fe949bdf67
Build: Enable wildcard argument expansion for msvc
2021-04-12 11:20:13 +03:00
John Reiser
766fe466d6
PAGE_SIZE varies: Apple M1 uses 16K
...
modified: p_mach.cpp
modified: p_mach.h
modified: p_mach_enum.h
2021-04-11 15:19:24 -07:00
John Reiser
333a288248
shlib: Don't compress below xct_off (except Elf headers)
...
modified: p_lx_elf.cpp
2021-04-11 15:16:34 -07:00
John Reiser
613df414ed
Fix off-by-1 in invert_pt_dynamic; SHT_NOBITS occupies no space
...
modified: p_lx_elf.cpp
2021-04-11 15:09:55 -07:00
John Reiser
be050693f2
PackLinuxElf::canUnpack must checkEhdr() for ELF input
...
https://github.com/upx/upx/issues/485
modified: p_lx_elf.cpp
2021-04-10 10:11:48 -07:00
goushibee
bf957f435e
fix issue 486
2021-04-07 15:40:13 +08:00
John Reiser
3a6f688265
Sync testsuite checksums for PE: fix SizeOfHeaders
...
https://github.com/upx/upx/pull/483
modified: .github/travis_testsuite_1-expected_sha256sums.sh
2021-04-10 08:51:27 -07:00
Sebastien Rosset (serosset)
1084a7896c
Add default goal
2021-04-03 13:08:01 -07:00
bitraid
9ea2b31541
PE: fix SectionHeadersSize of SizeOfHeaders value
2021-04-06 22:49:31 +03:00
Sebastien Rosset (serosset)
09da986742
build instructions
2021-04-03 11:57:05 -07:00
John Reiser
cb70a5fef5
Enable usual grep for function definition
...
Developer convenience: no space between function name and left paren
modified: compress.cpp
2021-04-03 12:46:20 -07:00
John Reiser
4fa6a6aeef
Sync testsuite checksums for PE: fix SizeOfHeaders
...
https://github.com/upx/upx/pull/477
modified: .github/travis_testsuite_1-expected_sha256sums.sh
2021-04-02 19:37:29 -07:00
Markus F.X.J. Oberhumer
ab31e8dde9
testsuite: change exit code to 98 for FATAL decompression checksum mismatchs.
2021-03-28 22:06:42 +02:00
Markus F.X.J. Oberhumer
53d7b5449f
testsuite: change exit code to 99 for checksum mismatchs.
2021-03-28 21:49:32 +02:00
Markus F.X.J. Oberhumer
d33a34f016
Revert some changes from previous commit to pacify clang
...
-Winconsistent-missing-override warnings.
2021-03-28 21:40:13 +02:00
Markus F.X.J. Oberhumer
f6ff5a2805
Cleanups: start working on -Wsuggest-override, add some "final". NFCI.
2021-03-28 21:19:29 +02:00
bitraid
1518e5bc98
PE: fix SizeOfHeaders value of Optional Header field
2021-03-25 21:41:49 +02:00
John Reiser
78f48d65d5
Allow 0==nbucket for DT_HASH, DT_GNU_HASH
...
static linked 'Rust' program with no symbols
https://github.com/upx/upx/issues/476
2021-03-25 07:22:01 -07:00
John Reiser
b81ec224b7
Fix headway argument to invert_pt_dynamic()
...
https://github.com/upx/upx/issues/473
modified: p_lx_elf.cpp
2021-03-25 07:10:40 -07:00
John Reiser
4be6cfebcd
get_te32() when checking DT_GNU_HASH chains (MIPS .so)
...
https://github.com/upx/upx/issues/473
modified: p_lx_elf.cpp
2021-03-23 18:21:45 -07:00
John Reiser
98973dd8b9
get_te32() when checking DT_HASH chains (MIPS .so)
...
https://github.com/upx/upx/issues/473
modified: p_lx_elf.cpp
2021-03-23 06:45:01 -07:00
John Reiser
1218b6ff2a
Check more in invert_pt_dynamic
...
https://github.com/upx/upx/issues/471
modified: p_lx_elf.cpp
2021-03-16 18:46:11 -07:00
John Reiser
ba5c77c9e5
Reject if MZ and PE headers overlap
...
Overlap ('leanify', etc.) causes headaches.
https://github.com/upx/upx/issues/231
modified: p_w32pe.cpp
modified: p_w64pep.cpp
modified: pefile.cpp
2021-03-14 15:20:15 -07:00
jsm174
cbaedffce2
ci: make artifacts for all builds
2021-03-09 09:36:08 -05:00
John Reiser
cb60603950
Turn off BUILD_TYPE_DEBUG to enable CI build amd64-win64-gcc-9 to pass.
...
modified: Makefile
2021-03-07 09:33:16 -08:00
John Reiser
0a69e7803b
Fix errors detected by "make run-testsuite".
...
total_out does not matter when option -t writes no output file.
Subtle error in generateElfHdr() [noted by address sanitizer].
New member function is_LOAD32() to avoid confusion with (1+ LO_PROC).
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2021-03-06 15:31:56 -08:00
John Reiser
baa9090198
Change back to lzma-sdk d5bed9963d051c9e5690b12199eab6884a592c43
...
modified: lzma-sdk
2021-03-06 12:05:23 -08:00
John Reiser
e78a08b8fc
change lzma-sdk to latest commit 44db23cc6d6b607986dace07b17fece1af925558 on its master
2021-03-06 10:46:40 -08:00
John Reiser
7e5e6012df
PackMachFat::canPack handles case PackMachFat::CPU_TYPE_ARM64
...
modified: p_mach.cpp
2021-03-06 09:59:51 -08:00
John Reiser
0a1d24d1d9
Remove nit from PackLinuxElf64::generateElfHdr [address sanitizer]
...
modified: p_lx_elf.cpp
2021-03-05 16:33:25 -08:00
John Reiser
35555bfb8a
WIP: PackLinuxElf64::unpack working for shared libraries (non-Android)
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_unix.cpp
2021-03-05 16:20:36 -08:00
John Reiser
c9cb42df40
WIP: hacking un_shlib_1
...
modified: p_lx_elf.cpp
2021-02-28 17:12:20 -08:00
John Reiser
2be03028f4
WIP: un_shlib_1
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2021-02-27 19:27:12 -08:00
John Reiser
214dd0a522
4 fewer bytes of code?
...
modified: arm64-linux.elf-fold.h
modified: tmp/arm64-linux.elf-fold.map
2021-02-23 02:24:24 -08:00
John Reiser
182e0796df
Split PackLinuxElf64::unpack for main program vs shared library
...
modified: p_lx_elf.cpp
2021-02-22 16:15:03 -08:00
John Reiser
fb844a8ed1
total_in, total_out move to PackUnix
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_lx_interp.cpp
modified: p_mach.cpp
modified: p_unix.cpp
modified: p_unix.h
2021-02-22 16:13:40 -08:00
John Reiser
6be3e747ca
Remove unrelated debugging
...
modified: stub/src/arm64-linux.elf-fold.S
2021-02-15 11:40:04 -08:00
John Reiser
23f63e4196
WIP unpacking ELF shared library
...
modified: Makefile
modified: lzma-sdk
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_mach.cpp
modified: p_unix.cpp
modified: p_unix.h
modified: packer.cpp
modified: packer.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/tmp/arm64-linux.elf-fold.map
2021-01-15 14:11:09 -08:00
John Reiser
fd6837b267
Another checkAlreadyPacked()
...
https://github.com/upx/upx/issues/463
modified: Makefile
modified: p_mach.cpp
2021-02-26 15:15:28 -08:00
John Reiser
1c29f921e0
getSizeForCompression worst cases
...
https://github.com/upx/upx/issues/463
modified: Makefile
modified: mem.cpp
2021-02-25 20:04:16 -08:00
John Reiser
1ab6e01de2
MacOS BigSur wants no MH_DYLDLINK for our MH_EXECUTE
...
https://github.com/upx/upx/issues/434
modified: p_mach.cpp
2021-02-14 13:23:19 -08:00
Markus F.X.J. Oberhumer
801618740c
CI: fix current Ubuntu problem.
2021-02-01 13:06:49 +01:00
John Reiser
2469563b26
Mach_ARM64_thread_state padded to (0 mod 8)
...
https://github.com/upx/upx/issues/446 (partial)
modified: p_mach.cpp
modified: p_mach.h
modified: p_mach_enum.h
2021-01-30 16:11:32 -08:00
John Reiser
00139caf43
More robust PackWcle::decodeFixups()
...
https://github.com/upx/upx/issues/455
modified: p_wcle.cpp
2021-01-23 15:37:52 -08:00
John Reiser
21d102c84f
Better checking of Mach_header.ncmds, .sizeofcmds
...
Improves earlier fix.
https://github.com/upx/upx/issues/447
modified: p_mach.cpp
2021-01-23 13:52:54 -08:00
John Reiser
f17d9967c2
Clarify comment in previous commit
...
modified: main.cpp
2021-01-20 05:54:53 -08:00
Liam Murphy
0569ef37ba
add comment explaining code as per PR review
2021-01-20 02:29:08 +00:00
Liam Murphy
984334c9a1
reset done_output_name counter upx_main()
2021-01-18 00:16:49 +00:00
John Reiser
34a25e61c7
"%zx" for ptrdiff_t in hex printf
...
modified: p_wcle.cpp
2021-01-17 19:36:36 -08:00
John Reiser
ed3f45953e
Try not to run off the end of selfrel_fixups.
...
https://github.com/upx/upx/issues/455
modified: p_wcle.cpp
modified: packer.cpp
2021-01-17 19:21:32 -08:00
John Reiser
80de11bc5b
Detect Mach_header.sizeofcmds==0
...
https://github.com/upx/upx/issues/448
modified: p_mach.cpp
2021-01-17 17:09:35 -08:00
Darío Hereñú
c9fe84c9aa
Typo fixed (line 61)
2021-01-09 14:04:47 -03:00
John Reiser
5f98bb0ab0
De-compress allows old-style LC_UNIXTHREAD with one LC_SEGMENT
...
https://github.com/upx/upx/issues/447
modified: p_mach.cpp
2021-01-15 15:03:26 -08:00
Markus F.X.J. Oberhumer
d86d5314ba
Modernize libc usage: more cleanups.
2021-01-05 22:03:29 +01:00
Markus F.X.J. Oberhumer
700c8730cf
Modernize libc usage: stop using off_t, use modern printf.
...
C++ 14 is here, and old versions of MSVC and MSVCRT have
haunted us long enough.
2021-01-05 18:52:05 +01:00
Markus F.X.J. Oberhumer
b4429e1a42
CI: add sanitizer builds.
2021-01-04 22:03:23 +01:00
Markus F.X.J. Oberhumer
a8fa3ca5cf
Use correct native types with "alignas(1)".
2021-01-04 21:13:49 +01:00
Markus F.X.J. Oberhumer
9aef7b0d6f
Use C++ 14 alignas(), init some struct fields just because of good practice.
2021-01-04 21:02:07 +01:00
Markus F.X.J. Oberhumer
2575eef3c0
clang-format more files.
...
"Gofmt's style is nobody's favourite, but gofmt is everybody's favourite."
- Rob Pike
2021-01-04 20:26:31 +01:00
Markus F.X.J. Oberhumer
8236276a90
Add and use .clang-format file.
2021-01-04 19:07:17 +01:00
Markus F.X.J. Oberhumer
fdc68812c5
clang-format-10.0.1 files.
2021-01-04 17:27:48 +01:00
Markus F.X.J. Oberhumer
9db6d18d11
Now using upx-stubtools 20210104 with new clang-format-10.0.1.
2021-01-04 17:23:57 +01:00
Markus F.X.J. Oberhumer
f962afe146
Various cosmetic updates and refactors. NFCI.
2021-01-04 17:20:57 +01:00
Markus F.X.J. Oberhumer
adcd569852
Makefile: update default sanitizer flags.
2021-01-04 17:20:06 +01:00
Markus F.X.J. Oberhumer
d045b7f223
Update bele.h to better work with modern compilers.
2021-01-02 16:45:58 +01:00
Markus F.X.J. Oberhumer
57cb6a7530
CI: add mingw64 build.
2021-01-02 01:03:24 +01:00
Markus F.X.J. Oberhumer
baa1ed9be3
Update CI to use lastest zlib. Update Makefile.
2021-01-01 23:24:31 +01:00
Markus F.X.J. Oberhumer
16af6e1a29
Update testsuite checksums caused by version bump.
2021-01-01 20:52:07 +01:00
Markus F.X.J. Oberhumer
0af8998be6
Bump version date.
2021-01-01 20:45:11 +01:00
Markus F.X.J. Oberhumer
c32f517fa5
Remove obsolete PROJECTS file.
2021-01-01 20:43:34 +01:00
Markus F.X.J. Oberhumer
9131d5216f
Welcome 2021.
2021-01-01 20:39:22 +01:00
Markus F.X.J. Oberhumer
fb14a7991d
Fix Makefile breakage in previous commit.
2020-12-15 02:15:34 +01:00
Markus F.X.J. Oberhumer
ff53862dab
Extract upx_main() for compilation with -DWITH_GUI.
2020-12-14 22:10:07 +01:00
Markus F.X.J. Oberhumer
49245a20c5
Update Makefile and compiler checks so that users don't inadvertently
...
change mandatory compiler flags.
2020-12-14 20:53:54 +01:00
John Reiser
13bc031163
Check DT_REL/DT_RELA, DT_RELSZ/DT_RELASZ
...
https://github.com/upx/upx/issues/421
modified: p_lx_elf.cpp
2020-12-11 13:38:18 -08:00
John Reiser
0c18c1c35c
Include --lzma as a compression tuning option in --help.
...
modified: help.cpp
2020-12-11 12:34:38 -08:00
John Reiser
63dc19ce25
-std=c++14
...
modified: Makefile
2020-12-11 11:38:38 -08:00
John Reiser
6871c2fc0a
Tweak unoptimizeReloc again
...
modified: packer.cpp
2020-12-10 19:56:02 -08:00
Markus F.X.J. Oberhumer
4ae3a8b2b0
Revert useless "fast exit" check from b2c00aa637.
2020-12-08 07:13:11 +01:00
Markus F.X.J. Oberhumer
f2e562b5de
Update CI.
2020-12-08 06:22:10 +01:00
Markus F.X.J. Oberhumer
f7e2266c3f
Start using some C++ 14 features.
2020-12-08 05:40:17 +01:00
Markus F.X.J. Oberhumer
361a3056cb
Update submodules.
2020-12-08 05:40:07 +01:00
Markus F.X.J. Oberhumer
ca0437556d
Start using "noexcept".
2020-12-08 00:45:41 +01:00
Markus F.X.J. Oberhumer
51899957a9
Require C++ 14. Finally!
...
This is the default for gcc >= 6, clang >= 6 and MSVC >= 2019.
2020-12-07 23:05:13 +01:00
Markus F.X.J. Oberhumer
7b0b760d78
src/Makefile: add -Wsign-compare to warning flags to better match MSVC.
2020-12-07 23:04:37 +01:00
Markus F.X.J. Oberhumer
4f5866b5a7
Remove AppVeyor CI.
2020-12-07 23:04:01 +01:00
John Reiser
a6b5033cf1
Fix overlap detection for PE unoptimizeReloc()
...
https://github.com/upx/upx/issues/438
modified: packer.cpp
2020-12-10 19:31:56 -08:00
John Reiser
a6296ecd67
Avoid complaint from "gcc -Wsign-conversion"
...
modified: compress_lzma.cpp
modified: compress_zlib.cpp
2020-12-06 15:22:58 -08:00
John Reiser
bb1df15958
Use 'mb_' prefix on instances of MemBuffer
...
modified: pefile.cpp
modified: pefile.h
2020-12-05 13:53:14 -08:00
Liam Murphy
249431f45f
tweak formatting to reduce diff
2020-11-26 03:00:21 +00:00
Liam Murphy
cbe129795e
migrate to MemBuffer class from New() to remove leak
2020-11-26 00:14:00 +00:00
John Reiser
2a135e245b
Prefer MemBuffer instead of New()+delete
...
https://github.com/upx/upx/issues/428
modified: pefile.cpp
modified: pefile.h
2020-12-05 13:44:19 -08:00
Markus F.X.J. Oberhumer
05a0b3557a
Update CI.
2020-12-05 14:04:46 +01:00
Markus F.X.J. Oberhumer
c7cfe8b608
Remove Travis CI.
2020-12-05 06:29:57 +01:00
Markus F.X.J. Oberhumer
8d3e1d28a7
Update GitHub CI.
2020-12-05 04:37:30 +01:00
John Reiser
7841e15583
Prefer MemBuffer instead of New()+delete
...
https://github.com/upx/upx/issues/428
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2020-12-05 10:31:55 -08:00
Markus F.X.J. Oberhumer
dd164fbc86
Undo Makefile change in 9b0f523d00.
2020-12-03 18:16:11 +01:00
Markus F.X.J. Oberhumer
23fe02e84a
Add GitHub Actions CI.
2020-12-03 13:58:38 +01:00
Markus F.X.J. Oberhumer
94e72238f2
Fix some warnings.
2020-12-03 03:10:12 +01:00
Markus F.X.J. Oberhumer
8f7ac520eb
Run clang-format.
2020-12-03 02:15:14 +01:00
Markus F.X.J. Oberhumer
bd193201b2
Avoid a clang-11 warning.
2020-12-03 02:14:47 +01:00
Markus F.X.J. Oberhumer
8ced672d24
docs: add a note about security considerations.
2020-12-03 02:10:05 +01:00
Markus F.X.J. Oberhumer
f218812858
Fix spelling of some constants.
2020-12-03 01:46:30 +01:00
Markus F.X.J. Oberhumer
8a7b980fc0
Avoid a MSVC warning.
2020-12-03 01:44:09 +01:00
Markus F.X.J. Oberhumer
385c9877f8
Update submodules.
2020-12-03 01:27:05 +01:00
John Reiser
10df93536e
Yet another attempt to suppress MSVC C4245
...
https://github.com/upx/upx/issues/435
modified: pefile.cpp
2020-11-29 00:01:22 -08:00
John Reiser
6cad27896f
Another attempt to suppress MSVC C4245
...
https://github.com/upx/upx/issues/435
modified: pefile.cpp
2020-11-28 23:53:49 -08:00
John Reiser
052392d97b
Attempt workaround for MSVC C4245 signed/unsigned mismatch in template 'argument'
...
https://github.com/upx/upx/issues/435
modified: pefile.cpp
2020-11-28 20:23:01 -08:00
John Reiser
ce6b5a0688
Fix MSVC warning C4245: signed/unsigned mismatch in prototype matching
...
The type of the return value must match exactly the function prototype.
MSVC warning C4245: 'argument': conversion from 'int' to 'unsigned int', signed/unsigned mismatch
https://github.com/upx/upx/issues/435
modified: bele_policy.h
2020-11-28 19:45:54 -08:00
John Reiser
1879185e42
Check Mach_command.cmdsize
...
https://github.com/upx/upx/issues/426
Also use MemBuffer to avoid leaks that result from throw()
modified: p_mach.cpp
modified: p_mach.h
2020-11-28 10:56:28 -08:00
John Reiser
a928a08f9d
ptrTEXT in PackMachBase<T>::canUnpack()
...
https://github.com/upx/upx/issues/417
modified: p_mach.cpp
2020-11-06 19:14:18 -08:00
John Reiser
1805cb6857
headway vs size
...
https://github.com/upx/upx/issues/414
modified: packhead.cpp
2020-11-06 14:25:36 -08:00
Liam Murphy
6ce625b535
fix build
2020-11-05 22:21:19 +00:00
Liam Murphy
4702f12818
tweaks: some extra checks on lengths
2020-11-05 04:43:40 +00:00
Matthijs Lavrijsen
4f3054f07d
PE: only add a TLS relocation if tls_handler_offset_reloc != 0
2020-09-08 11:44:56 +02:00
bitraid
0d7bd52e21
Only pack w/ -f PE files that force integrity check
2020-10-31 19:53:33 +02:00
John Reiser
c3466f579c
fillPackHeader: revise and add yet more checks
...
https://github.com/upx/upx/issues/414
https://github.com/upx/upx/pull/415 revised
modified: packhead.cpp
2020-11-06 13:53:29 -08:00
John Reiser
7c105d7af5
omemmove exactly as much
...
Fix 14992260c60b8d6677a677a9cdfae98b11353df7; revealed by testsuite
modified: pefile.cpp
2020-11-05 15:05:52 -08:00
John Reiser
924b229afb
fillPackHeader more checks
...
https://github.com/upx/upx/issues/414
modified: packhead.cpp
2020-11-03 01:58:39 -08:00
John Reiser
890d66ecf0
Avoid overlap when rebuild relocs.
...
Based on a hint from a little bird.
modified: packer.cpp
2020-09-20 15:08:39 -07:00
John Reiser
143049922b
Beware overlap when rebuildImports
...
Based on a hint from a little bird.
modified: pefile.cpp
2020-09-20 14:10:24 -07:00
John Reiser
e6ccef2cf1
MSVC strikes again
...
modified: p_lx_elf.cpp
2020-09-05 19:19:11 -07:00
John Reiser
be61e9f584
Fix 64-bit ET_EXEC
...
https://github.com/upx/upx/issues/405
modified: p_lx_elf.cpp
modified: stub/src/amd64-linux.elf-main.c
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
modified: stub/amd64-linux.elf-fold.h
modified: stub/arm64-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/arm64-linux.elf-fold.map
modified: stub/tmp/powerpc64-linux.elf-fold.map
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2020-09-04 10:21:14 -07:00
Mattiwatti
89d0fda9fa
Make PE load config directory address dword aligned
2020-01-21 16:03:40 +01:00
bitraid
6a85bab5da
Don't pack Cotrol Flow Guard PE files
2020-07-28 17:36:13 +03:00
John Reiser
c1a55b063e
0==e_shnum obviates testing of e_shoff
...
modified: p_lx_elf.cpp
2020-07-26 20:00:05 -07:00
John Reiser
77c914bce5
Check de-compressed SHT_SYMTAB
...
https://github.com/upx/upx/issues/396
modified: p_lx_elf.cpp
2020-07-25 09:28:02 -07:00
John Reiser
cc60f03b2e
Check Shdr more
...
https://github.com/upx/upx/issues/395
modified: p_lx_elf.cpp
2020-07-25 08:19:45 -07:00
John Reiser
cc9ccdbbd1
Check .sh_offset and .sh_size in SHT_DYNAMIC and SHT_STRNDX
...
https://github.com/upx/upx/issues/394
modified: p_lx_elf.cpp
2020-07-25 07:41:43 -07:00
John Reiser
9dfc8f573c
Avoid 0==nbucket
...
https://github.com/upx/upx/issues/393
modified: p_lx_elf.cpp
2020-07-23 05:44:18 -07:00
John Reiser
4e2fdb464a
Defend against bad PT_DYNAMIC
...
https://github.com/upx/upx/issues/391
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2020-07-23 05:09:52 -07:00
John Reiser
73b854874e
Defend against junk PT_DYNAMIC
...
https://github.com/upx/upx/issues/390
modified: p_lx_elf.cpp
2020-07-23 04:14:34 -07:00
John Reiser
0016512df1
Unpack: Phdrs must be within expansion of first compressed block
...
https://github.com/upx/upx/issues/388
modified: p_lx_elf.cpp
2020-07-22 19:34:27 -07:00
John Reiser
527139978a
DT_HASH chains might be trimmed (64-bit, too)
...
https://github.com/upx/upx/issues/383
modified: p_lx_elf.cpp
2020-06-08 12:37:53 -07:00
John Reiser
47bc68fa6b
DT_HASH chains might be trimmed
...
https://github.com/upx/upx/issues/383
modified: p_lx_elf.cpp
2020-06-07 19:35:49 -07:00
John Reiser
972b670a64
Set .b_extra for hdr, especially for Mach-o for 'go'.
...
https://github.com/upx/upx/issues/222
modified: p_unix.cpp
2020-06-06 17:11:32 -07:00
John Reiser
d7c416f243
More DPRINTF debugging
...
modified: stub/src/amd64-darwin.macho-main.c
2020-06-06 17:10:53 -07:00
John Reiser
3ace7a0468
Documentation only
...
modified: stub/src/amd64-darwin.macho-main.c
2020-06-06 15:32:45 -07:00
John Reiser
d305023f5e
Sync testsuite checksums for "ELF pageholes" feature
...
modified: .github/travis_testsuite_1-expected_sha256sums.sh
2020-05-30 13:56:12 -07:00
John Reiser
963392a5ae
De-compress (upx -d) for ELF pageholes
...
modified: p_lx_elf.cpp
2020-05-30 13:54:11 -07:00
John Reiser
2f453acf5d
use UPX_RSIZE_MAX_MEM
...
modified: p_mach.cpp
2020-05-28 15:45:07 -07:00
John Reiser
4ae1576726
Mach-o LC_SEGMENTs not monotonic in file (__DWARF for 'go')
...
https://github.com/upx/upx/issues/222 go-1.14 (but not go-1.14.3 ?)
modified: ../p_mach.cpp
modified: ../p_mach.h
modified: ../p_unix.cpp
modified: ../p_unix.h
modified: ../stub/src/amd64-darwin.macho-main.c
modified: ../stub/amd64-darwin.macho-fold.h
modified: ../stub/arm.v5a-darwin.macho-fold.h
modified: ../stub/arm64-darwin.macho-fold.h
modified: ../stub/tmp/amd64-darwin.macho-fold.map
modified: ../stub/tmp/arm.v5a-darwin.macho-fold.map
modified: ../stub/tmp/arm64-darwin.macho-fold.map
2020-05-30 02:54:09 -07:00
bitraid
17bd0b3248
Don't use --strip-reloc with -d
...
Always restore the relocation section of Portable Executables on
unpacking, if it exists in the compressed image.
2020-04-13 21:38:22 +03:00
Markus F.X.J. Oberhumer
a1ad1aee99
Use "python2" instead of "python".
2020-05-23 20:07:23 +02:00
John Reiser
a817ed0692
uintptr_t for MSVC
...
modified: p_lx_elf.cpp
2020-05-23 11:02:46 -07:00
John Reiser
828a6cf07b
invert_pt_dynamic() more checking
...
https://github.com/upx/upx/issues/378
https://github.com/upx/upx/issues/379
modified: p_lx_elf.cpp
2020-05-23 10:51:03 -07:00
John Reiser
962c35aa08
More checking of DT_GNU_HASH and DT_HASH tables
...
https://github.com/upx/upx/issues/381
modified: p_lx_elf.cpp
2020-05-23 10:04:38 -07:00
John Reiser
b327645e64
More checking of DT_GNU_HASH and DT_HASH tables
...
https://github.com/upx/upx/issues/380
modified: p_lx_elf.cpp
2020-05-23 09:41:41 -07:00
John Reiser
e1b42616a2
workaround: MIPS.r3000 early uClibc forgot memset(,0,) of local array
...
ldso/ldso/ldso.c: _dl_get_ready_to_run()
_dl_memset(app_tpnt, 0, sizeof(*app_tpnt));
modified: stub/src/mipsel.r3000-linux.elf-fold.S
modified: stub/mips.r3000-linux.elf-fold.h
modified: stub/mipsel.r3000-linux.elf-fold.h
2020-05-26 14:49:25 -07:00
John Reiser
f96638c42a
MIPS32 works: ELF layout for page holes
...
modified: stub/src/include/linux.h
modified: stub/src/mipsel.r3000-linux.elf-entry.S
modified: stub/src/mipsel.r3000-linux.elf-fold.S
modified: stub/mips.r3000-linux.elf-entry.h
modified: stub/mips.r3000-linux.elf-fold.h
modified: stub/mipsel.r3000-linux.elf-entry.h
modified: stub/mipsel.r3000-linux.elf-fold.h
modified: stub/tmp/mips.r3000-linux.elf-entry.bin.dump
modified: stub/tmp/mips.r3000-linux.elf-fold.map
modified: stub/tmp/mipsel.r3000-linux.elf-entry.bin.dump
modified: stub/tmp/mipsel.r3000-linux.elf-fold.map
2020-05-25 14:13:01 -07:00
John Reiser
6272152dfe
phdr[C_BASE].p_memsz for ET_EXEC
...
modified: p_lx_elf.cpp
2020-05-25 14:11:46 -07:00
John Reiser
030a200c08
clarity; no functional change
...
modified: stub/src/powerpc-linux.elf-entry.S
2020-05-25 14:07:58 -07:00
John Reiser
994da63b4d
DPRINTF the munmap
...
modified: stub/src/i386-linux.elf-main.c
2020-05-25 14:05:58 -07:00
John Reiser
2315bff280
powerpc64 works: ELF layout for page holes
...
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/powerpc64-linux.elf-entry.h
modified: stub/powerpc64-linux.elf-fold.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/tmp/powerpc64-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc64-linux.elf-fold.map
modified: stub/tmp/powerpc64le-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2020-05-23 11:18:32 -07:00
John Reiser
98dddf93d8
powerpc32 works: ELF layout for page holes
...
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/powerpc-linux.elf-entry.h
modified: stub/powerpc-linux.elf-fold.h
modified: stub/tmp/powerpc-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc-linux.elf-fold.map
2020-05-23 08:00:35 -07:00
John Reiser
fd2939e18d
i386 works: ELF layout for page holes
...
modified: stub/src/i386-linux.elf-entry.S
modified: stub/src/i386-linux.elf-fold.S
modified: stub/src/i386-linux.elf-main.c
modified: stub/arm.v4a-linux.elf-fold.h
modified: stub/arm.v5a-linux.elf-fold.h
modified: stub/armeb.v4a-linux.elf-fold.h
modified: stub/i386-linux.elf-entry.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/src/include/linux.h
modified: stub/tmp/arm.v4a-linux.elf-fold.map
modified: stub/tmp/arm.v5a-linux.elf-fold.map
modified: stub/tmp/armeb.v4a-linux.elf-fold.map
modified: stub/tmp/i386-linux.elf-entry.bin.dump
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
2020-05-15 16:05:26 -07:00
John Reiser
80c27e0822
arm.v4a works: ELF layout for page holes
...
modified: p_lx_elf.cpp
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: stub/arm.v4a-linux.elf-entry.h
modified: stub/arm.v4a-linux.elf-fold.h
modified: stub/arm.v5a-linux.elf-entry.h
modified: stub/arm.v5a-linux.elf-fold.h
modified: stub/armeb.v4a-linux.elf-entry.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/tmp/arm.v4a-linux.elf-entry.bin.dump
modified: stub/tmp/arm.v4a-linux.elf-fold.map
modified: stub/tmp/arm.v5a-linux.elf-entry.bin.dump
modified: stub/tmp/arm.v5a-linux.elf-fold.map
modified: stub/tmp/armeb.v4a-linux.elf-entry.bin.dump
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
2020-05-14 15:10:40 -07:00
John Reiser
b463f24eda
arm64 works: ELF layout for page holes
...
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-fold.map
2020-05-10 09:18:06 -07:00
John Reiser
2a849444db
un-debug
...
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/amd64-linux.elf-fold.h
modified: stub/tmp/amd64-linux.elf-fold.map
2020-05-09 09:46:51 -07:00
John Reiser
69e106c0c5
unmap C_TEXT
...
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/amd64-linux.elf-fold.h
modified: stub/tmp/amd64-linux.elf-fold.map
2020-05-09 09:45:02 -07:00
John Reiser
926481dace
ELF layout for page holes when runtime PAGE_SIZE < .p_align
...
amd64 works
modified: p_lx_elf.cpp
modified: stub/src/amd64-linux.elf-entry.S
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/src/amd64-linux.elf-main.c
modified: Makefile
modified: stub/amd64-linux.elf-entry.h
modified: stub/amd64-linux.elf-fold.h
modified: stub/amd64-linux.shlib-init.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/powerpc64-linux.elf-fold.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/src/amd64-linux.shlib-init.S
modified: stub/tmp/amd64-linux.elf-entry.bin.dump
modified: stub/tmp/amd64-linux.elf-fold.map
modified: stub/tmp/amd64-linux.shlib-init.bin.dump
modified: stub/tmp/arm64-linux.elf-fold.map
modified: stub/tmp/powerpc64-linux.elf-fold.map
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2020-05-09 08:05:05 -07:00
John Reiser
a3b2cde58d
max_bucket versus symbias
...
modified: p_lx_elf.cpp
2020-04-17 17:09:47 -07:00
John Reiser
30f37d2cc6
DT_GNU_HASH check the buckets
...
https://github.com/upx/upx/issues/365
modified: p_lx_elf.cpp
2020-04-17 16:49:54 -07:00
John Reiser
c4d61dd9fe
--preserve-build-id for ET_EXEC
...
https://github.com/upx/upx/issues/371
modified: p_lx_elf.cpp
2020-04-17 16:17:29 -07:00
John Reiser
210870f840
invert_pt_dynamic() DT_GNU_HASH trims hash array for Rust and Android
...
https://github.com/upx/upx/issues/369
modified: p_lx_elf.cpp
2020-04-15 17:29:03 -07:00
John Reiser
4cb4bd38eb
check_pt_dynamic() checks PT_DYNAMIC.p_memsz
...
https://github.com/upx/upx/issues/368
modified: p_lx_elf.cpp
2020-04-15 14:24:05 -07:00
John Reiser
58c6d19f7c
unpack() checks PT_DYNAMIC.p_filesz
...
https://github.com/upx/upx/issues/367
modified: p_lx_elf.cpp
2020-04-15 14:12:06 -07:00
John Reiser
f99ae94747
More checking .e_shstrndx
...
https://github.com/upx/upx/issues/366
modified: p_vmlinx.cpp
2020-04-15 13:44:35 -07:00
John Reiser
6868ca7953
getElfSections concentrates on _Shdr[.e_shstrndx]
...
https://github.com/upx/upx/issues/363
modified: p_vmlinx.cpp
2020-04-15 13:29:01 -07:00
John Reiser
87a5a4ef32
WIP but should concentrate on section .e_shstrndx instead.
...
modified: p_vmlinx.cpp
2020-04-15 13:13:45 -07:00
John Reiser
c67a5d677c
More bounds checking for DT_INIT (etc.) in shlib
...
https://github.com/upx/upx/issues/364
modified: p_lx_elf.cpp
2020-04-13 17:08:49 -07:00
bitraid
1ce6f0e6f4
Fix unpacking of ASLR enabled PE files
2020-04-12 03:19:57 +03:00
John Reiser
740b4ff865
ELF shared lib: PT_DYNAMIC might be below xct_off, such as MIPS
...
https://github.com/upx/upx/issues/298
modified: p_lx_elf.cpp
2020-02-15 15:04:44 -08:00
John Reiser
1059f62566
MIPS stub mprotect() suffered from [non-]inlining.
...
https://github.com/upx/upx/issues/342
https://github.com/upx/upx/issues/339
modified: src/stub/src/include/linux.h
consequences:
modified: .github/travis_testsuite_1-expected_sha256sums.sh
modified: src/stub/mips.r3000-linux.elf-fold.h
modified: src/stub/mipsel.r3000-linux.elf-fold.h
modified: src/stub/tmp/mips.r3000-linux.elf-fold.map
modified: src/stub/tmp/mipsel.r3000-linux.elf-fold.map
2020-02-08 19:55:08 -08:00
Markus F.X.J. Oberhumer
df3193c1ee
Use new ASCII art logo.
2020-01-23 00:21:44 +01:00
Jonas Zeitler
67860e3704
fix kerning on ascii art logo
2019-01-11 17:22:56 +01:00
Markus F.X.J. Oberhumer
35fbb1ecb6
Update testsuite checksums caused by version bump.
2020-01-22 23:26:41 +01:00
Markus F.X.J. Oberhumer
c63a71ad42
Prepare for switch to semantic versioning.
2020-01-22 23:24:00 +01:00
Markus F.X.J. Oberhumer
f33645f739
Post-release version bump.
2020-01-22 23:11:13 +01:00
Markus F.X.J. Oberhumer
d7ba31cab8
Bump release date.
2020-01-22 22:29:58 +01:00
John Reiser
342b1b7d6c
EM_PPC64 forgot get_te16(&...) for ehdri.e_machine
...
So compression on big-endian host was not correct.
https://github.com/upx/upx/issues/334
modified: p_lx_elf.cpp
2020-01-19 18:48:50 -08:00
John Reiser
936013f60c
Decompression escape hatch for ELF can require a new page.
...
If not enough room on last page of .text, and ElfXX_Ehdr not PF_X,
then the escape hatch must use a new page.
https://github.com/upx/upx/issues/308
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/i386-linux.elf-main.c
Plus stub/*-linux.elf-fold.h and stub/tmp/*-linux.elf-fold.map
2020-01-19 13:25:55 -08:00
Markus F.X.J. Oberhumer
fdf2eddc73
Update Travis.
2020-01-16 13:38:30 +01:00
Markus F.X.J. Oberhumer
4409753014
Update Travis.
2020-01-16 01:54:41 +01:00
Markus F.X.J. Oberhumer
9172ae3d19
New ACC version.
2020-01-16 01:53:55 +01:00
John Reiser
e2f60adc95
Detect 0==DT_SYMTAB in invert_pt_dynamic()
...
https://github.com/upx/upx/issues/333
modified: p_lx_elf.cpp
2020-01-14 18:45:52 -08:00
John Reiser
1bb93d4fce
Detect bad e_shstrtab better.
...
https://github.com/upx/upx/issues/332
modified: p_lx_elf.cpp
2020-01-13 17:26:31 -08:00
John Reiser
eb90eab632
Detect bogus DT_SYMENT.
...
https://github.com/upx/upx/issues/331
modified: p_lx_elf.cpp
2020-01-13 17:10:02 -08:00
Markus F.X.J. Oberhumer
0f4975fd7f
Update Travis.
2020-01-08 17:30:03 +01:00
Markus F.X.J. Oberhumer
b5b1f06a11
Avoid some compilation warnings.
2020-01-08 06:04:21 +01:00
Markus F.X.J. Oberhumer
86f8eb0930
Fix shadowing global symbols.
2020-01-08 05:44:06 +01:00
Markus F.X.J. Oberhumer
91ad0e7572
Revert "Cleanup legacy symbols: basename, index"
...
This reverts commit 47ddace96a .
2020-01-08 05:41:56 +01:00
Markus F.X.J. Oberhumer
b034ee98fe
Revert "Mention --assume-execute-permission"
...
This reverts commit 29fa358077 .
2020-01-08 05:40:40 +01:00
Markus F.X.J. Oberhumer
ded07f8781
Revert "MSVC lacks S_IXUSR"
...
This reverts commit 62a07df45e .
2020-01-08 05:38:44 +01:00
Markus F.X.J. Oberhumer
849bdd87e1
Revert "Option --assume-execute-permission"
...
This reverts commit 4484acf9d6 .
2020-01-08 05:38:19 +01:00
Markus F.X.J. Oberhumer
643e48efd7
Update Travis.
2020-01-08 05:18:43 +01:00
Markus F.X.J. Oberhumer
92f072cf70
Silence some compiler warnings.
2020-01-08 04:49:27 +01:00
Markus F.X.J. Oberhumer
95bf2e2e41
Update testsuite checksums caused by version date bump.
2020-01-08 04:37:59 +01:00
Markus F.X.J. Oberhumer
6a6c6d84eb
Rebuild stubs.
2020-01-08 04:30:08 +01:00
Markus F.X.J. Oberhumer
08a689c81e
Bump tentative release date.
2020-01-08 04:21:30 +01:00
Markus F.X.J. Oberhumer
d1174385ef
Welcome 2020.
2020-01-08 04:13:28 +01:00
John Reiser
cb5f590e10
More hacking Android shlib.
...
https://github.com/upx/upx/issues/318
modified: p_elf_enum.h
modified: p_lx_elf.cpp
2019-12-12 20:23:33 -08:00
John Reiser
5ed9c66ed9
Hack Android shared libraries on arm64.
...
https://github.com/upx/upx/issues/318
modified: p_lx_elf.cpp
2019-12-12 17:05:50 -08:00
John Reiser
b8f52d14f4
user_init_va on AARCH64
...
https://github.com/upx/upx/issues/318 (work-in-progress)
modified: p_elf_enum.h
modified: p_lx_elf.cpp
2019-12-04 14:26:46 -08:00
John Reiser
5d295c24f0
DT_NEEDED can be duplicated
...
modified: p_lx_elf.cpp
2019-11-26 19:33:27 -08:00
John Reiser
8be9da8280
Avoid bogus values in PT_DYNAMIC segment.
...
Detect duplicate DT_*.
Detect out-of-bounds hashtab and gashtab.
Detect missing DT_REL, DT_RELA.
Detect out-of-bounds d_val.
https://github.com/upx/upx/issues/317
modified: p_lx_elf.cpp
2019-11-23 20:06:14 -08:00
John Reiser
819c33fee2
Detect malformed Mach-o file in ::canUnpack()
...
https://github.com/upx/upx/issues/314
https://github.com/upx/upx/issues/315
modified: p_mach.cpp
2019-11-15 21:32:06 -08:00
John Reiser
75a2cc4ecb
Sync testsuite (amd64, 32-bit ARM, 64-bit ARM)
...
modified: ../.github/travis_testsuite_1-expected_sha256sums.sh
modified: Makefile
2019-10-27 21:56:30 -07:00
John Reiser
e2833cf303
Message when /proc/self/exe lacks Read permission
...
Done: amd64, 32-bit ARM, 64-bit ARM. TODO: mips, PowerpC
https://github.com/upx/upx/issues/302
modified: stub/amd64-linux.elf-entry.h
modified: stub/arm.v4a-linux.elf-entry.h
modified: stub/arm.v5a-linux.elf-entry.h
modified: stub/arm64-linux.elf-entry.h
modified: stub/armeb.v4a-linux.elf-entry.h
modified: stub/src/amd64-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/tmp/amd64-linux.elf-entry.bin.dump
modified: stub/tmp/arm.v4a-linux.elf-entry.bin.dump
modified: stub/tmp/arm.v5a-linux.elf-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
modified: stub/tmp/armeb.v4a-linux.elf-entry.bin.dump
2019-10-27 21:30:41 -07:00
John Reiser
801de73dbe
random assembler?
...
modified: ../stub/arm64-linux.elf-entry.h
2019-10-27 21:15:15 -07:00
John Reiser
6a53c0b3d4
[Append to previous commit message.]
...
https://github.com/upx/upx/issues/286
modified: p_vmlinx.cpp
2019-07-21 10:51:59 -07:00
John Reiser
58b122d97d
Better checking for malformed input
...
https://github.com/upx/upx/issues
modified: p_vmlinx.cpp
2019-07-21 10:48:50 -07:00
John Reiser
276b748aa6
Ignore malformed ElfXX_Shdr in search for .text or .note
...
https://github.com/upx/upx/issues/287
modified: p_vmlinx.cpp
2019-07-21 07:40:21 -07:00
John Reiser
23570097cf
MSVC barfs on {unsigned == long int) [because sizeof() is the same!]
...
https://github.com/upx/upx/issues/283
modified: p_lx_elf.cpp
2019-07-14 13:39:09 -07:00
John Reiser
62a07df45e
MSVC lacks S_IXUSR
...
modified: p_unix.cpp
2019-07-14 13:38:51 -07:00
John Reiser
593a69ce25
PT_LOAD[0] with ElfXX.Ehdr only
...
https://github.com/upx/upx/issues/283
modified: p_lx_elf.cpp
2019-07-14 13:08:56 -07:00
John Reiser
c33603e324
'bound' register was clobbered
...
modified: stub/src/arch/arm64/v8/lzma_d-arm.S
2019-07-14 13:05:52 -07:00
John Reiser
29fa358077
Mention --assume-execute-permission
...
for MSYS2 and other permission-poor OS.
modified: NEWS
2019-05-10 07:03:51 -07:00
John Reiser
49766388bc
Fix compression and de-compression of Android shared libraries
...
Handle relocation (and DT_INIT_ARRAY[0]==NULL) when !DT_INIT.
Warn about missing --android-shlib if (ET_DYN && !DF_1_PIE && Arm*).
modified: p_lx_elf.cpp
modified: p_lx_elf.h
https://github.com/upx/upx/issues/265
https://github.com/upx/upx/issues/262
https://github.com/upx/upx/issues/259
https://github.com/upx/upx/issues/243
https://github.com/upx/upx/issues/229
https://github.com/upx/upx/issues/220
2019-04-14 19:59:08 -07:00
John Reiser
f23267bddd
Fix rotate+lop of PT_INTERP in shared library
...
Found while working on https://github.com/upx/upx/issues/262
but probably does not help that bug.
modified: p_lx_elf.cpp
2019-04-01 21:35:53 -07:00
John Reiser
4484acf9d6
Option --assume-execute-permission
...
modified: main.cpp
modified: options.h
modified: p_unix.cpp
https://github.com/upx/upx/issues/256
2019-03-31 10:25:06 -07:00
John Reiser
47ddace96a
Cleanup legacy symbols: basename, index
...
modified: conf.h
https://github.com/upx/upx/issues/257
2019-03-31 10:12:41 -07:00
John Reiser
8aadbcd786
Enable standalone compiling, to investigate size of compiled code
...
modified: stub/src/arch/arm64/v8/lzma_d-arm.S
modified: stub/src/arch/arm64/v8/lzma_d.S
modified: stub/src/arch/arm64/v8/nrv2b_d32.S
modified: stub/src/arch/arm64/v8/nrv2d_d32.S
modified: stub/src/arch/arm64/v8/nrv2e_d32.S
2019-03-03 14:27:33 -08:00
John Reiser
517bc9db0b
PR_SET_MM (previous commit had typo) is from 7 years ago: 2012
...
modified: stub/src/include/linux.h
2019-03-03 14:26:20 -08:00
John Reiser
16bfa7b846
PT_SET_MM since 2012
...
modified: stub/src/include/linux.h
2019-03-02 16:12:14 -08:00
John Reiser
570b2d0e88
arm64-linux.elf changed when PT_LOAD[1] no longer forces 4KB alignment
...
modified: travis_testsuite_1-expected_sha256sums.sh
2019-03-02 16:10:37 -08:00
John Reiser
2653a0749a
de-tabify
...
modified: stub/src/arch/i386/bxx.S
2019-03-02 15:48:44 -08:00
John Reiser
3de0008543
i386-darwin.macho re-implementation, especially for MacOS <= 10.8.x (Mountain Lion)
...
[i386 will not be supported by new MacOS beginning fall 2019.]
https://github.com/upx/upx/issues/246
modified: p_mach.cpp
modified: stub/i386-darwin.macho-entry.h
modified: stub/i386-darwin.macho-fold.h
modified: stub/i386-darwin.macho-upxmain.exe
modified: stub/i386-darwin.macho-upxmain.h
new file: stub/src/arch/i386/bxx.S
new file: stub/src/arch/i386/nrv2b_d32-easy.S
new file: stub/src/arch/i386/nrv2d_d32-easy.S
new file: stub/src/arch/i386/nrv2e_d32-easy.S
modified: stub/src/i386-darwin.macho-entry.S
modified: stub/src/i386-darwin.macho-fold.S
modified: stub/src/i386-darwin.macho-main.c
modified: stub/src/i386-darwin.macho-upxmain.c
modified: stub/tmp/i386-darwin.macho-entry.bin.dump
modified: stub/tmp/i386-darwin.macho-fold.map
2019-03-02 15:39:30 -08:00
John Reiser
d4e2d7e8a8
arm64 (aarch64) and PAGE_SIZE > 4KiB
...
Future: use prctl(PR_SET_MM, PR_SET_MM_START_BRK, addr)
https://github.com/upx/upx/issues/254
modified: p_lx_elf.cpp
modified: stub/src/amd64-linux.elf-main.c
2019-03-01 20:31:41 -08:00
John Reiser
a9c08c6f52
__MSYS2__ acts like UNIX but cannot handle --x permission
...
https://github.com/upx/upx/issues/256
modified: p_unix.cpp
2019-03-01 16:46:49 -08:00
Markus F.X.J. Oberhumer
c2aa5c35f7
Silence a gcc-4.6 compiler warning.
2019-02-25 13:41:54 +01:00
John Reiser
423f1a8758
pack4() "__TEXT".nsects can differ from prototype to actual
...
modified: p_mach.cpp
2019-02-18 14:41:43 -08:00
Markus F.X.J. Oberhumer
cc5f684e33
Update testsuite checksums caused by version date bump.
2019-02-15 11:14:18 +01:00
Markus F.X.J. Oberhumer
b6646d319a
Bump tentative release date.
2019-02-15 11:12:07 +01:00
Markus F.X.J. Oberhumer
3667fa4e44
Welcome 2019.
2019-02-15 11:04:09 +01:00
John Reiser
d1c80154f6
SHT_NOTE with ~SHF_ALLOC; as for 'gold' linker version
...
https://github.com/upx/upx/issues/243
modified: p_lx_elf.cpp
2019-02-12 21:13:24 -08:00
John Reiser
3c2bfc742e
g++ -Wsign-compare is not as picky as MSVC warning C4018: '<': signed/unsigned mismatch
...
https://github.com/upx/upx/issues/247
modified: p_lx_elf.cpp
2019-02-09 08:04:58 -08:00
John Reiser
d60fef753f
check_pt_load(); u32_t, u64_t; (off_t) is not unsigned!
...
https://github.com/upx/upx/issues/247
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2019-02-01 19:31:57 -08:00
John Reiser
70ed2d0d03
Allow Load Configuration directory > 256, with info().
...
https://github.com/upx/upx/issues/245
modified: pefile.cpp
2019-01-26 07:51:16 -08:00
John Reiser
716d203a78
Testsuite checksums
...
amd64-linux.elf
commit 6b500bc83b
Date: Wed Aug 22 14:39:14 2018 -0700
arm-linux.elf, armeb-linux.elf:
commit 75c31dff1d
Date: Thu Dec 13 20:10:57 2018 -0800
modified: .github/travis_testsuite_1-expected_sha256sums.sh
2018-12-31 11:08:53 -08:00
John Reiser
9719a7dd56
MSVC pettiness
...
https://github.com/upx/upx/issues/238
modified: p_lx_elf.cpp
2018-12-26 18:38:30 -08:00
John Reiser
c097233bf3
Stronger checks for DT_HASH, DT_GNU_HASH
...
https://github.com/upx/upx/issues/238
modified: p_lx_elf.cpp
2018-12-26 13:00:20 -08:00
John Reiser
69a583281f
MemBuffer::subref() for 64-bit offsets; better diagnosis for bad .e_shoff
...
https://github.com/upx/upx/issues/235 (POC14)
modified: mem.cpp
modified: mem.h
modified: p_lx_elf.cpp
2018-12-16 16:00:15 -08:00
John Reiser
8e90c9af2b
Corner cases for e_shnum vs e_shstrndx
...
modified: p_lx_elf.cpp
2018-12-16 15:36:51 -08:00
John Reiser
a784284b7f
Check user_init_off. Also remove '\n' from error messages.
...
https://github.com/upx/upx/issues/235 POC11
modified: p_lx_elf.cpp
2018-12-16 12:14:22 -08:00
John Reiser
0509edf08d
ElfXX_Sym.st_name is always 32 bits
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2018-12-16 11:32:58 -08:00
John Reiser
7ca20f424f
Typos
...
modified: p_lx_elf.cpp
2018-12-15 21:17:26 -08:00
John Reiser
b74d51c2a8
More checking of e_shstrndx
...
https://github.com/upx/upx/issues/235 POC6
modified: p_lx_elf.cpp
2018-12-15 21:12:15 -08:00
John Reiser
58061cd121
Check .p_offset
...
https://github.com/upx/upx/issues/235 POC13
modified: p_lx_elf.cpp
2018-12-15 20:59:45 -08:00
John Reiser
b8f6be5389
More checking of DT_HASH and DT_GNU_HASH
...
https://github.com/upx/upx/issues/235 POC12
modified: p_lx_elf.cpp
2018-12-15 20:43:33 -08:00
John Reiser
7c766b3313
Check e_shstrndx and Shdr.st_name
...
https://github.com/upx/upx/issues/235 POC10
modified: p_lx_elf.cpp
2018-12-15 20:27:20 -08:00
John Reiser
91b81b587b
Abandon when outrageous Elf64_Dyn.d_tag
...
https://github.com/upx/upx/issues/235 POC8
modified: p_lx_elf.cpp
2018-12-15 19:35:13 -08:00
John Reiser
780a4347b8
Check DT_HASH and DT_GNU_HASH.
...
https://github.com/upx/upx/issues/235 POC2,POC4
Also cleanup checking of symbol number and .st_name
in POC1,POC3,POC5,POC7,POC9,POC11
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2018-12-15 19:16:14 -08:00
John Reiser
606ad08dd1
Check symbol number and .st_name
...
https://github.com/upx/upx/issues/235 POC1,POC3,POC7,POC9
modified: p_elf_enum.h
modified: p_lx_elf.h
modified: p_lx_elf.cpp
2018-12-14 21:32:49 -08:00
John Reiser
75c31dff1d
Use THUMB 'ret' when in THUMB mode.
...
https://github.com/upx/upx/issues/236
https://github.com/upx/upx/issues/229
modified: src/arm.v4t-linux.shlib-init.S
modified: arm.v5t-linux.shlib-init.h
modified: tmp/arm.v5t-linux.shlib-init.bin.dump
2018-12-13 20:14:14 -08:00
John Reiser
473b90419f
Mach-o for 'rust' has intermixed LC_SEGMENT64 "__DWARF" with 0==.vmsize
...
https://github.com/upx/upx/issues/222
modified: p_mach.cpp
modified: stub/src/amd64-darwin.macho-main.c
modified: stub/src/amd64-darwin.macho-upxmain.c
also *-darwin.macho-fold.{h,map}
2018-10-13 21:06:37 -07:00
John Reiser
f88b85e126
MSVC error C4146: unary minus operator applied to unsigned type, result still unsigned
...
modified: p_lx_elf.cpp
2018-10-09 20:27:19 -07:00
John Reiser
b122f8e9d0
Optimize /proc/self/exe. Sync stubs.
...
See also commit 78b1da5c00 earlier today
for https://github.com/upx/upx/issues/225 .
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-fold.S
also *.h, *.map, *.bin.dump
2018-10-09 20:11:34 -07:00
John Reiser
cb8b1595a1
Pay more attention to 0==.e_shnum
...
modified: p_lx_elf.cpp
2018-10-09 19:38:43 -07:00
John Reiser
1bee919276
cosmetic: developer quality-of-life
...
modified: packer.cpp
2018-10-09 19:35:03 -07:00
John Reiser
78b1da5c00
Avoid dcache==>icache trouble with mflg_data; heuristic cache_flush for 32-bit ARM
...
modified: arm.v4a-linux.elf-entry.S
modified: arm.v4a-linux.elf-fold.S
2018-10-09 19:24:50 -07:00
John Reiser
bb8239ccda
more DPRINTF
...
modified: amd64-linux.elf-main.c
2018-10-09 19:23:06 -07:00
John Reiser
2a594ad0a7
Better return value when de-compression method mismatches.
...
modified: arch/amd64/lzma_d.S
modified: arch/amd64/nrv2b_d.S
modified: arch/amd64/nrv2d_d.S
modified: arch/amd64/nrv2e_d.S
2018-10-07 10:15:48 -07:00
John Reiser
b05073550c
"pop %rcx", not %ecx
...
modified: amd64-darwin.macho-entry.S
modified: amd64-linux.elf-entry.S
2018-10-07 10:11:45 -07:00
John Reiser
37d6a34e58
MSVC is a nimrod. (All verions 10.0 through 14.1)
...
"(4074): error C4146: unary minus operator applied to unsigned type, result still unsigned"
So what? Many programmers are much better than the typical Microsoft coder.
The C standard GUARANTEES that unsigned arithmetic uses two's complement,
ignores overflow, and the result is what the hardware adder produces.
modified: p_lx_elf.cpp
2018-09-23 20:45:07 -07:00
John Reiser
4f0cba9bb6
/proc/self/exe mapping had wrong offset in stub for 32-bit ARM
...
https://github.com/upx/upx/issues/221
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-fold.S
also arm*.*-linux.elf-*.{h,map}
2018-09-23 20:32:37 -07:00
John Reiser
4d1c754af9
Preserve Mach_segment_header.flags; fix non-PIE main programs on MacOS.
...
https://github.com/upx/upx/issues/222
modified: p_mach.cpp
modified: p_mach.h
modified: stub/src/amd64-darwin.macho-entry.S
also *.macho-*.h, *.macho-fold.map, amd64-darwin.macho-entry.bin.dump
2018-09-22 18:50:37 -07:00
John Reiser
c1cfde21d7
Map when .vmsize (not .filesize). More debugging DPRINTF;
...
modified: stub/src/amd64-darwin.macho-main.c
also *.macho-fold.h, *.macho-fold.map
2018-09-22 13:06:45 -07:00
John Reiser
bb1f9cdecd
Propagate pagezero_vmsize; fix overlay_offset.
...
modified: p_mach.cpp
2018-09-22 12:11:51 -07:00
John Reiser
b259b0ca28
Print failed syscalls to stderr
...
modified: stub/src/amd64-darwin.macho-fold.S
2018-09-22 12:09:22 -07:00
John Reiser
0051dfc84f
--android-shlib: Relocate ABS _edata etc.
...
https://github.com/upx/upx/issues/220
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2018-09-16 15:10:40 -07:00
John Reiser
9f294e6ce5
Fix "upx -d" de-compression when input is compressed Android shlib.
...
https://github.com/upx/upx/issues/220
modified: p_lx_elf.cpp
2018-09-16 13:09:43 -07:00
John Reiser
153ea8be03
MSVC signed/unsigned
...
modified: p_mach.cpp
2018-09-11 21:13:27 -07:00
John Reiser
f3f7f97f8d
MSVC signed/unsigned
...
modified: p_mach.cpp
2018-09-09 15:58:24 -07:00
John Reiser
9bb6854e64
Fix stub for MacOS El Capitan, which has "pre-linked" /usr/bin/dyld
...
https://github.com/upx/upx/issues/218
https://github.com/Homebrew/homebrew-core/pull/31846
modified: src/amd64-darwin.macho-main.c
also *-darwin.mach-fold.{h,map}
2018-09-09 15:37:54 -07:00
John Reiser
4bba1e6cb7
Merge branch 'devel' of https://github.com/upx/upx into devel
2018-09-08 11:43:41 -07:00
John Reiser
597e8fe407
Fix de-compression for Mach-O files (MacOS)
...
https://github.com/upx/upx/issues/219
modified: p_mach.cpp
modified: p_mach.h
2018-09-08 11:41:38 -07:00
Markus F.X.J. Oberhumer
556c541ffb
Sync with latest upx-testsuite changes.
2018-09-06 13:57:15 +02:00
John Reiser
5963f18f7c
Merge branch 'devel' of https://github.com/upx/upx into devel
2018-09-04 20:54:21 -07:00
John Reiser
0dac6b7be3
MacOS de-compression (upx -d)
...
https://github.com/upx/upx/issues/218
modified: p_mach.cpp
2018-09-04 20:52:17 -07:00
Markus F.X.J. Oberhumer
296ede780b
Update Travis.
2018-08-29 15:13:46 +02:00
Markus F.X.J. Oberhumer
faaa19331a
Update Travis.
2018-08-27 16:43:21 +02:00
Markus F.X.J. Oberhumer
88cb5886f3
Update Travis.
2018-08-26 06:42:46 +02:00
Markus F.X.J. Oberhumer
2fcc3f86c0
Introduce environment variable UPX_DISABLE_GITREV_WARNING.
2018-08-26 06:29:58 +02:00
Markus F.X.J. Oberhumer
9362fde9eb
Update testsuite checksums caused by version bump.
2018-08-26 06:15:54 +02:00
Markus F.X.J. Oberhumer
56f4d781c1
Post-release version bump.
2018-08-26 06:08:40 +02:00
Markus F.X.J. Oberhumer
7a3637ff5a
Update NEWS.
2018-08-26 04:58:09 +02:00
John Reiser
2923c0968e
Merge branch 'devel' of https://github.com/upx/upx into devel
...
Fix Conflicts:
.github/travis_testsuite_1.sh
2018-08-22 14:58:36 -07:00
John Reiser
98cfe99d65
sync testsuite
...
modified: .github/travis_testsuite_1.sh
2018-08-22 14:52:00 -07:00
John Reiser
bdd97fe0b2
build stubs
...
modified: amd64-linux.elf-fold.h
modified: arm64-linux.elf-fold.h
modified: i386-bsd.elf-fold.h
modified: i386-linux.elf.interp-fold.h
modified: i386-netbsd.elf-fold.h
modified: i386-openbsd.elf-fold.h
modified: powerpc64-linux.elf-fold.h
modified: powerpc64le-linux.elf-fold.h
modified: tmp/amd64-linux.elf-fold.map
modified: tmp/arm64-linux.elf-fold.map
modified: tmp/i386-bsd.elf-fold.map
modified: tmp/i386-linux.elf.interp-fold.map
modified: tmp/i386-netbsd.elf-fold.map
modified: tmp/i386-openbsd.elf-fold.map
modified: tmp/powerpc64-linux.elf-fold.map
modified: tmp/powerpc64le-linux.elf-fold.map
2018-08-22 14:48:15 -07:00
John Reiser
6b500bc83b
auxv_up() quit at AT_NULL, especially when AT_BASE has been omitted.
...
Based on contribution from Brian Geffon 'bgaff'
https://github.com/upx/upx/pull/215 ; bgaff
modified: amd64-linux.elf-main.c
modified: i386-bsd.elf-main.c
modified: i386-linux.elf.interp-main.c
modified: i386-openbsd.elf-main.c
2018-08-22 14:39:14 -07:00
Markus F.X.J. Oberhumer
92a12a2ec1
Update testsuite checksums caused by version date bump.
2018-08-22 13:16:39 +02:00
Markus F.X.J. Oberhumer
04d79040f9
Bump tentative release date.
2018-08-22 13:15:50 +02:00
Markus F.X.J. Oberhumer
3201ddc680
Update .editorconfig.
2018-08-22 13:06:39 +02:00
Markus F.X.J. Oberhumer
2f06de54c5
Cosmetic update.
2018-08-22 12:43:23 +02:00
John Reiser
6489ec9bba
Fix PT_LOAD for ELF shared library.
...
modified: p_lx_elf.cpp
2018-08-20 19:36:27 -07:00
John Reiser
1a5ba22fe7
Highlight changes for upx-3.95.
...
modified: NEWS
2018-08-20 17:10:00 -07:00
John Reiser
8f9713ed53
Appease MSVC warning C4018: s/igned/unsigned mismatch
...
modified: p_lx_elf.cpp
2018-08-13 18:47:42 -07:00
John Reiser
90eb68b3b9
Adapt to 4 PT_LOAD in binutils-2.31 and gcc-8.2.1 (Fedora 29)
...
0: PF_R: .gnu.hash .dynsym .dynstr
1: PF_X | PF_R: .plt .plt.sec .text
2: PF_R: .rodata .hash
3: PF_W | PF_R: .data.rel.ro .dynamic .got .got.plt .data .bss
modified: p_lx_elf.cpp
https://github.com/upx/upx/issues/212 (partial, Fedora 29)
2018-08-13 17:36:56 -07:00
John Reiser
95fcbcb4f2
::PackLinuxElf64amd() sets lg2_page back to 12.
...
https://github.com/upx/upx/issues/212 (partial, Fedora 29)
modified: p_lx_elf.cpp
2018-08-10 20:28:40 -07:00
John Reiser
b97688d119
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
2018-08-04 18:26:02 -07:00
John Reiser
5ea3627cab
--android-shlib, --force-pie
...
modified: NEWS
2018-05-19 06:30:23 -07:00
John Reiser
d9288213ec
More checking of PT_DYNAMIC and its contents.
...
https://github.com/upx/upx/issues/206
modified: p_lx_elf.cpp
2018-05-17 21:48:26 -07:00
John Reiser
614c86fb7d
--force-pie inhibits treating as shared library (for 'rust', etc.)
...
https://github.com/upx/upx/issues/200
modified: main.cpp
modified: options.h
modified: p_lx_elf.cpp
2018-04-26 13:44:17 -07:00
John Reiser
9f651ee40f
Ignore ElfXX_Shdr if not CMD_COMPRESS; beware unpack when PT_DYNAMIC in other PT_LOAD
...
https://github.com/upx/upx/issues/200
modified: p_lx_elf.cpp
2018-04-26 08:34:58 -07:00
John Reiser
774c8c3fd4
Fix forgotten get_teXX() in canPack() and invert_pt_dynamic()
...
https://github.com/upx/upx/issues/200
modified: p_lx_elf.cpp
2018-04-25 23:05:17 -07:00
John Reiser
b711d2f750
TLS callbacks: one entry only
...
https://github.com/upx/upx/issues/186 [partial, incomplete]
(Laszlo hints there is more, but meanwhile this does fix some.)
modified: pefile.cpp
2018-04-06 13:44:24 -07:00
John Reiser
8a793d5942
ELF shlib when no DT_INIT (especially --android-shlib)
...
https://github.com/upx/upx/issues/191
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2018-04-04 09:15:18 -07:00
John Reiser
99f52c60ed
Merge branch 'Mattiwatti-offset-to-rva-fix' into devel
...
https://github.com/upx/upx/pull/193
2018-04-02 09:08:57 -07:00
Mattiwatti
2c2e108301
PE: fix comparison against a constant value
...
... due to size always being assigned to right before this comparison,
and instead check against the RVA and size of the export directory
from the header. (note: this is still stricter than the Windows loader
which ignores all of these except the directory RVA, but if the name RVA
is invalid the PE was probably tampered with).
Change 'offset' to 'RVA' in exception message; this field is always an RVA
Author: Mattiwatti <mattiwatti@gmail.com >
modified: pefile.cpp
2018-04-02 09:07:29 -07:00
John Reiser
563165e6ae
Defensive patches from hints by Sean Williams <rootkit@google.com>
...
modified: pefile.cpp
2018-03-29 16:55:21 -07:00
John Reiser
f1a31b4793
ELf32::unpack; Elf64 parity with Elf32 for shlib with no DT_INIT
...
https://github.com/upx/upx/issues/191 [partial, not finished]
modified: p_lx_elf.cpp
2018-03-27 19:15:47 -07:00
John Reiser
5e9b6bd69d
more ELF shlib when no DT_INIT (especially Android): hook DT_INIT_ARRAY[0]
...
https://github.com/upx/upx/issues/191 [partial, not finished]
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: stub/src/arm.v4a-linux.shlib-init.S
modified: stub/src/arm.v4t-linux.shlib-init.S
2018-03-26 16:30:52 -07:00
John Reiser
9b990c4eae
clarity
...
modified: p_lx_elf.cpp
2018-03-24 13:52:29 -07:00
John Reiser
7a625a449a
ELF shlib without DT_INIT: steal a DT_NULL from PT_DYNAMIC
...
https://github.com/upx/upx/issues/191 [partial, not finished]
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2018-03-24 09:41:58 -07:00
John Reiser
c2b62359d5
arm32 stubs on linux: allow 0==user_DT_INIT as nop; somewhat expensive
...
modified: stub/arm.v5a-linux.shlib-init.h
modified: stub/arm.v5t-linux.shlib-init.h
modified: stub/src/arm.v4a-linux.shlib-init.S
modified: stub/src/arm.v4t-linux.shlib-init.S
modified: stub/tmp/arm.v5a-linux.shlib-init.bin.dump
modified: stub/tmp/arm.v5t-linux.shlib-init.bin.dump
2018-03-24 08:55:04 -07:00
John Reiser
6722e8972e
cleanup dead variables: is_big, all_pages
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2018-03-23 08:06:31 -07:00
John Reiser
fefe7a3452
Fix segTEXT.vmsize and data for entry to shlib.
...
https://github.com/upx/upx/issues/57
modified: p_mach.cpp
2018-03-19 14:59:20 -07:00
John Reiser
90a1322929
Also check for wrap-around when checking oversize involving e_shoff and e_shnum.
...
raised by https://github.com/upx/upx/pull/190
modified: p_lx_elf.cpp
2018-03-15 21:25:20 -07:00
John Reiser
d698eb69e2
Fix decompression stub for arm64 --lzma
...
https://github.com/upx/upx/issues/181
modified: stub/src/arch/arm64/v8/lzma_d.S
2018-02-24 13:04:15 -08:00
John Reiser
0ef00e9b82
Fix --lzma (and so --ultra-brute) for 32-bit ARM
...
https://github.com/upx/upx/issues/167 (comment #14 )
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: ../.github/travis_testsuite_1.sh
2018-02-03 15:44:00 -08:00
John Reiser
95cedb6640
upgrade ::unpack for --android-shlib
...
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: stub/src/arm64-linux.shlib-init.S
modified: stub/src/arm.v4t-linux.shlib-init.S
2018-02-02 14:50:56 -08:00
John Reiser
d736da4208
Elf32, not shared lib: leave alone the hole between .text and .data
...
In theory Linux might put pages there (and that would be a problem),
but postpone closing the gap until more experience.
modified: p_lx_elf.cpp
2018-01-28 13:30:10 -08:00
John Reiser
be83788666
--android-shlib for 32-bit ARM
...
Includes better handling of asl_delta in execution stub.
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: stub/src/arm.v4t-linux.shlib-init.S
modified: stub/src/arm64-linux.shlib-init.S
2018-01-27 22:00:16 -08:00
John Reiser
5a28a51abc
android shlib: better handling of asl_delta in execution stub
...
modified: p_lx_elf.cpp
modified: stub/src/arm64-linux.shlib-init.S
2018-01-26 12:35:06 -08:00
John Reiser
8a84df752c
Compiler nit: ptr->ENUM is not always considered a constant
...
modified: p_lx_elf.cpp
2018-01-26 11:54:33 -08:00
John Reiser
85f53b210d
de-compression of arm64 --android-shlib
...
modified: src/p_lx_elf.cpp
modified: src/p_lx_elf.h
modified: src/stub/src/arm64-linux.shlib-init.S
2018-01-24 15:39:46 -08:00
John Reiser
5d13c6cd01
elfout is unset for shlib in PackLinuxElf64::updateLoader
...
modified: p_lx_elf.cpp
2018-01-22 16:15:53 -08:00
John Reiser
98a0d381e9
Merge branch 'devel' into jreiser-android
...
modified: p_lx_elf.cpp
2018-01-22 13:55:45 -08:00
John Reiser
e1d20fd0b5
Fix wobble in PackLinuxElf64::pack2
...
modified: p_lx_elf.cpp
2018-01-22 13:48:26 -08:00
John Reiser
d1035ecd8f
Fix PLT for --android-shlib
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2018-01-22 13:05:18 -08:00
John Reiser
0e651facdd
Fix PLT for --android-shlib
...
NYI: unpack of PLT, DT_INIT etc. Also e_entry.
modified: p_lx_elf.cpp
2018-01-22 13:01:20 -08:00
John Reiser
9fdddfc332
work in progress: de-compression of --android-shlib
...
OK except for asl_delta not removed from DT_INIT, DT_INIT_ARRAY,
DT_FINI_ARRAY, DT_PREINIT_ARRAY
modified: ../p_lx_elf.cpp
2018-01-21 18:59:21 -08:00
John Reiser
7d2913709c
MemBuffer lowmem; for shlib, especially android
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2018-01-21 14:03:52 -08:00
John Reiser
3623199e8d
Merge branch 'devel' into jreiser-android
2018-01-21 10:55:56 -08:00
John Reiser
e4b23f7a47
Merge branch 'devel' of https://github.com/upx/upx into devel
2018-01-21 10:30:42 -08:00
John Reiser
f056ecdcd5
pefile: Allow overlap of MZ header and PE header (h.nexepos==0x10)
...
https://github.com/upx/upx/issues/169
This means .codebase is aliased to .nexepos, with both equal to 0x10.
modified: pefile.cpp
2018-01-21 10:29:17 -08:00
John Reiser
857a03a074
fix sh_offset for new Shdr[e_shstrndx]
...
modified: p_lx_elf.cpp
2018-01-20 16:41:32 -08:00
John Reiser
a34deee4f5
work in progress for --android-shlib
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2018-01-20 16:34:52 -08:00
John Reiser
fc9c8ae482
fix updating of DT_INIT
...
modified: p_lx_elf.cpp
2018-01-20 09:48:28 -08:00
John Reiser
08c63f06eb
p_lx_elf.h: phdro for --android-shlib
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2018-01-19 22:01:56 -08:00
John Reiser
bbff510ef1
Merge branch 'devel' into jreiser-android
...
Conflicts:
src/p_lx_elf.cpp
src/p_lx_elf.h
modified: ../.github/travis_testsuite_1.sh
modified: p_exe.cpp
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: pefile.cpp
2018-01-19 21:51:49 -08:00
Markus F.X.J. Oberhumer
f747435952
For consistency, add missing "virtual".
2018-01-19 20:21:18 +01:00
Markus F.X.J. Oberhumer
e6edad8f46
Clean up OptVar handling.
2018-01-19 19:50:28 +01:00
Markus F.X.J. Oberhumer
05e44b9644
Fix powerpc64 cross build.
2018-01-19 15:05:43 +01:00
Markus F.X.J. Oberhumer
16bb7ab841
clang-format files.
2018-01-19 14:18:47 +01:00
Markus F.X.J. Oberhumer
9248f02557
Silence some gcc-8-snapshot compiler warnings.
2018-01-19 14:13:58 +01:00
Markus F.X.J. Oberhumer
9485a56af1
Update Travis.
2018-01-19 11:30:34 +01:00
Markus F.X.J. Oberhumer
021c8db58a
Welcome 2018.
2018-01-19 10:55:32 +01:00
John Reiser
8ab180edf8
MS-DOS .exe (not PE): default to file_size when ih.m512 and ih.p512 are zero
...
https://github.com/upx/upx/issues/169
modified: p_exe.cpp
2018-01-18 12:00:38 -08:00
John Reiser
ab35b685d4
Fix pefile.cpp bad range checking for reloc type 3 and 10
...
modified: pefile.cpp
2018-01-18 11:11:19 -08:00
John Reiser
86745721ee
MSVC strikes again
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2018-01-15 16:27:00 -08:00
John Reiser
c34fe09a79
Revamp --android-shlib
...
Android "Oreo" wants to deal with ElfXX_Shdr[]. So splice 4KiB into PT_LOAD[0]
with an "extra" copy of them. This requires careful relocation processing.
It also costs a page at run time, and an average of a page in the file
(depending on fragmentation at the boundary between r-x and rw- .)
https://github.com/upx/upx/issues/124
https://github.com/upx/upx/issues/139
https://github.com/upx/upx/issues/142
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: stub/src/arm.v4a-linux.shlib-init.S
modified: stub/src/arm.v4t-linux.shlib-init.S
modified: stub/src/arm64-linux.shlib-init.S
modified: stub/arm.v5a-linux.shlib-init.h
modified: stub/arm.v5t-linux.shlib-init.h
modified: stub/arm64-linux.shlib-init.h
modified: ../.github/travis_testsuite_1.sh
2018-01-15 16:08:34 -08:00
John Reiser
1fa9ff2c05
--android-shlib handles implicit relocation in PLT
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2018-01-15 15:45:37 -08:00
John Reiser
e8ef0cf63f
Merge branch 'devel' into jreiser-android
2018-01-13 09:25:55 -08:00
John Reiser
8c84efb8fb
--android-shlib for Android "Oreo"
...
Android "Oreo" wants to deal with ElfXX_Shdr[]. So splice 4KiB into PT_LOAD[0]
with an "extra" copy of them. This requires careful relocation processing.
It also costs a page at run time.
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: stub/src/arm.v4a-linux.shlib-init.S
modified: stub/src/arm.v4t-linux.shlib-init.S
modified: stub/src/arm64-linux.shlib-init.S
2018-01-13 09:20:04 -08:00
John Reiser
f3a7620ae8
ARM: recognize R_ARM_CALL and R_ARM_JUMP24 as equivalent to R_ARM_PC24
...
modified: linker.cpp
2018-01-12 08:42:34 -08:00
John Reiser
c7969ed5a5
work in progress for --android-shlib
...
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: stub/src/arm.v4a-linux.shlib-init.S
modified: stub/src/arm.v4t-linux.shlib-init.S
2018-01-12 08:32:24 -08:00
Markus F.X.J. Oberhumer
900926c0ed
Avoid a MSVC warning.
2018-01-12 10:19:14 +01:00
John Reiser
df94f4288a
picky, picky
...
modified: p_lx_elf.cpp
2018-01-11 12:09:43 -08:00
John Reiser
969efe687d
MSVC pecadillos
...
modified: p_lx_elf.cpp
modified: pefile.cpp
2018-01-11 12:01:00 -08:00
John Reiser
ee3f1292d0
fix editing rot for mach-o .dylib
...
https://github.com/upx/upx/issues/57
modified: p_mach.cpp
2018-01-11 11:33:15 -08:00
John Reiser
cacb239040
work in progress for --android-shlib
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: stub/src/arm64-linux.shlib-init.S
2018-01-11 09:39:26 -08:00
John Reiser
28d1789783
work in progress for --android-shlib
...
modified: p_lx_elf.cpp
2018-01-08 14:04:38 -08:00
John Reiser
633eb98e34
Merge branch 'devel' into jreiser-android
2018-01-06 09:53:43 -08:00
John Reiser
4854c03096
uint64_t ==> upx_uint64_t
...
MSVC error C2065: 'uint64_t' : undeclared identifier
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_mach.cpp
2018-01-06 09:33:04 -08:00
John Reiser
e853119c77
canonicalize bool in OR
...
MSVC error C4805: '|' : unsafe mix of type 'bool' and type 'unsigned int' in operation
modified: p_lx_elf.cpp
2018-01-06 09:20:46 -08:00
John Reiser
161a58bafb
work in progress for --android-shlib
...
modified: p_elf_enum.h
modified: p_lx_elf.cpp
2018-01-06 09:18:17 -08:00
John Reiser
f5fd94e815
Android shlib: work in progress
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2017-12-31 22:40:57 -08:00
John Reiser
edde6210f1
amd64 linux stack align
...
forgotten as part of 4a35bf32ea
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/amd64-linux.elf-fold.h
modified: stub/tmp/amd64-linux.elf-fold.map
modified: ../.github/travis_testsuite_1.sh
2017-12-31 10:36:14 -08:00
John Reiser
507e19945e
more checking of PT_DYNAMIC
...
https://github.com/upx/upx/issues/166
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2017-12-30 22:31:50 -08:00
John Reiser
4a35bf32ea
static uClibc on amd64 passes entry.%rdx to 'atexit'
...
https://github.com/upx/upx/issues/166
modified: ../.github/travis_testsuite_1.sh
modified: stub/src/amd64-linux.elf-entry.S
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/src/amd64-linux.elf-main.c
2017-12-30 17:20:01 -08:00
John Reiser
e04bf9e4bc
more checking of PT_DYNAMIC
...
https://github.com/upx/upx/issues/164
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2017-12-28 17:40:04 -08:00
John Reiser
c384d224c0
Mach-o stubs turn off DEBUG
...
Branch jreiser-macho has DEBUG 1
modified: stub/src/amd64-darwin.macho-main.c
modified: stub/src/arm.v5a-darwin.macho-entry.S
modified: stub/src/arm.v5a-darwin.macho-fold.S
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/src/arm64-darwin.macho-fold.S
2017-12-27 10:23:19 -08:00
John Reiser
35427f998e
Mach-o stubs turn off SIMULATE_ON_LINUX_EABI4
...
modified: stub/src/amd64-darwin.macho-main.c
modified: stub/src/arm.v5a-darwin.macho-entry.S
modified: stub/src/arm.v5a-darwin.macho-fold.S
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/src/arm64-darwin.macho-fold.S
2017-12-27 09:12:38 -08:00
John Reiser
1174da2bc3
arm64 stubs use NBPW in TRACE etc
...
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/src/arm64-darwin.macho-fold.S
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/arm64-linux.shlib-init.S
2017-12-26 16:39:51 -08:00
John Reiser
11e8a47030
DEBUG and TRACE for arm*-darwin.macho-* stubs
...
modified: stub/src/amd64-darwin.macho-main.c
modified: stub/src/arm.v5a-darwin.macho-entry.S
modified: stub/src/arm.v5a-darwin.macho-fold.S
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/src/arm64-darwin.macho-fold.S
2017-12-26 15:44:54 -08:00
John Reiser
8c4e9bcf0d
typo
...
modified: stub/src/arm.v4a-linux.elf-entry.S
2017-12-26 15:43:58 -08:00
John Reiser
9dfd624901
fix TRACE macro
...
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
2017-12-26 15:43:01 -08:00
John Reiser
79e65503a9
Merge branch 'devel' into jreiser-macho
2017-12-26 10:41:26 -08:00
John Reiser
59f18b9d9f
stash work-in-progress
...
modified: stub/src/amd64-darwin.macho-main.c
modified: stub/src/arm.v5a-darwin.macho-entry.S
modified: stub/src/arm.v5a-darwin.macho-fold.S
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/src/arm64-darwin.macho-fold.S
2017-12-22 23:07:03 -08:00
John Reiser
fb3699fb89
stash work-in-progress
...
modified: stub/src/amd64-darwin.macho-main.c
modified: stub/src/amd64-darwin.macho-upxmain.c
modified: stub/src/arm.v5a-darwin.macho-entry.S
modified: stub/src/arm.v5a-darwin.macho-fold.S
modified: stub/src/arm.v5a-darwin.macho-main.c
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/src/arm64-darwin.macho-fold.S
modified: stub/src/i386-darwin.macho-upxmain.c
2017-12-22 10:20:32 -08:00
John Reiser
9d2d59b5d2
stash work-in-progress
...
modified: stub/src/amd64-darwin.macho-main.c
modified: stub/src/arm64-darwin.macho-fold.S
2017-12-19 21:19:53 -08:00
John Reiser
aefb2fa3c3
bad logic for throwCantUnpack("cmdsize") [simple]
...
https://github.com/upx/upx/issues/161
modified: p_mach.cpp
2017-12-19 17:36:22 -08:00
John Reiser
e8aa80f904
stash work-in-progress
...
modified: linker.cpp
modified: p_mach.cpp
modified: p_mach.h
modified: packmast.cpp
modified: stub/Makefile
modified: stub/src/amd64-darwin.macho-main.c
modified: stub/src/arm.v5a-darwin.macho-entry.S
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/src/arm64-darwin.macho-fold.S
modified: stub/src/arm64-darwin.macho-main.c
2017-12-19 17:32:15 -08:00
John Reiser
990988f920
More checking of input Phdr and Shdr
...
https://github.com/upx/upx/issues/157
modified: p_lx_elf.cpp
2017-12-18 10:36:43 -08:00
John Reiser
576d9a4e7e
stash work-in-progress
...
modified: stub/src/amd64-darwin.macho-entry.S
modified: stub/src/arm.v5a-darwin.macho-entry.S
modified: stub/src/arm64-darwin.macho-entry.S
2017-12-17 15:02:57 -08:00
John Reiser
1d462ee424
MIPS shlib --lzma stub coding error: wrong register
...
https://github.com/upx/upx/issues/139 (part2)
modified: stub/src/mipsel.r3000-linux.shlib-init.S
2017-12-14 11:17:01 -08:00
John Reiser
c9b09555c4
MH_PIE ASLR (Address-Space Layout Randomization)
...
modified: stub/src/amd64-darwin.macho-main.c
2017-12-13 11:15:10 -08:00
John Reiser
860b5bf967
MH_EXECUTE diagnose syscall failure
...
modified: stub/src/amd64-darwin.macho-fold.S
2017-12-13 10:53:22 -08:00
John Reiser
5063480a38
MH_EXECUTE runs under lldb, fails under shell
...
mmap addr=0x100000000 len=0x3003 prot=0x3 flags=0x1012 fd=-1 off=0x0 reloc=0x0
maddr=0xffffffffffffffff addr=0x100000000
modified: p_mach.cpp
modified: p_mach_enum.h
modified: stub/src/amd64-darwin.macho-entry.S
modified: stub/src/amd64-darwin.macho-fold.S
modified: stub/src/amd64-darwin.macho-main.c
2017-12-13 09:54:44 -08:00
John Reiser
3400ae9dbe
MH_EXECUTE leave space for thread state command
...
modified: p_mach.cpp
2017-12-12 10:53:19 -08:00
John Reiser
3385264eb2
new DPRINTF
...
modified: stub/src/amd64-darwin.macho-main.c
2017-12-12 10:52:47 -08:00
John Reiser
34646f1c6a
fix braces in comment after #elif
...
modified: stub/src/amd64-linux.elf-main.c
2017-12-12 10:51:38 -08:00
John Reiser
50aa63a5a0
declare write()
...
modified: stub/src/include/darwin.h
2017-12-12 10:50:50 -08:00
John Reiser
64557bee43
Mach-o MH_EXECUTE rewrite; work-in-progress
...
The stub for amd64 gets to upx_main()
modified: stub/src/amd64-darwin.macho-entry.S
modified: stub/src/amd64-darwin.macho-fold.S
plus .h .bin.dump .map
2017-12-09 20:18:39 -08:00
John Reiser
7c21c4513e
Android 64-bit ARM shared library stub: use 4Ki page size until more is known
...
https://github.com/upx/upx/issues/124
modified: p_lx_elf.cpp
modified: stub/arm64-linux.shlib-init.h
modified: stub/src/arm64-linux.shlib-init.S
modified: stub/tmp/arm64-linux.shlib-init.bin.dump
2017-12-08 20:05:21 -08:00
John Reiser
c6d6378005
Mach-o MH_EXECUTE rewrite; work-in-progress
...
The stub for amd64 gets into the de-compressed folded code.
modified: p_mach.cpp
modified: stub/amd64-darwin.macho-entry.h
modified: stub/src/amd64-darwin.macho-entry.S
modified: stub/src/amd64-darwin.macho-upxmain.c
modified: stub/tmp/amd64-darwin.macho-entry.bin.dump
2017-12-06 17:04:47 -08:00
John Reiser
4f6979967d
Mach-o MH_EXECUTE rewrite; work-in-progress
...
On amd64, otool and lldb accept the results.
The entry point points to the unfilter and uncompress routines.
Somehow _start has been lost.
modified: p_mach.cpp
modified: p_mach.h
modified: p_mach_enum.h
modified: stub/amd64-darwin.macho-entry.h
modified: stub/src/amd64-darwin.macho-entry.S
modified: stub/src/amd64-darwin.macho-upxmain.c
modified: stub/src/i386-darwin.macho-upxmain.c
modified: stub/src/powerpc-darwin.macho-upxmain.c
modified: stub/tmp/amd64-darwin.macho-entry.bin.dump
2017-12-03 23:17:55 -08:00
John Reiser
e633c51b50
off_t_upx_stub typedef enables easier use of native #include
...
... but requires #define __WORDSIZE
modified: p_mach.h
modified: stub/amd64-darwin.macho-fold.h
modified: stub/src/amd64-darwin.macho-main.c
modified: stub/src/arm.v5a-darwin.macho-main.c
modified: stub/src/arm64-darwin.macho-main.c
modified: stub/src/i386-darwin.macho-main.c
modified: stub/src/include/darwin.h
modified: stub/src/powerpc-darwin.macho-main.c
modified: stub/src/powerpc64le-darwin.macho-main.c
modified: stub/tmp/amd64-darwin.macho-fold.map
2017-11-28 14:49:46 -08:00
John Reiser
143f0accef
PeFile check MZ offset to PE header
...
modified: pefile.cpp
2017-11-21 13:07:42 -08:00
John Reiser
b413f3da26
ELF shared library: PT_NOTE can prevent packing
...
Android build environment post-processing is adding a PT_NOTE
("Android", 21, "r16-beta1") at the high end of PT_LOAD[0],
above the stub; the runtime linker looks there before de-compression.
https://github.com/upx/upx/issues/124
modified: p_lx_elf.cpp
2017-11-20 10:08:24 -08:00
John Reiser
6eafa552bb
Mach-o defend against bad crafted input
...
https://github.com/upx/upx/issues/146
modified: p_mach.cpp
2017-11-15 13:38:54 -08:00
John Reiser
7a0514d9b4
PeFile more checks for Section table
...
modified: pefile.cpp
2017-11-12 21:47:47 -08:00
John Reiser
7e7565299e
PeFile check Section table
...
https://github.com/upx/upx/issues/132
modified: pefile.cpp
2017-11-12 21:02:52 -08:00
László Molnár
ed34a089c6
minor update for a memory derefencing check
2017-11-12 16:19:40 +01:00
John Reiser
d14a2c5282
PeFile fix the recently-added interval checking.
...
https://github.com/upx/upx/issues/143
modified: pefile.cpp
2017-11-09 21:58:25 -08:00
John Reiser
f014406b65
MemBuffer.subref(errfmt, skip, take) checks that a subinterval is inside
...
modified: mem.cpp
modified: mem.h
2017-11-09 21:55:41 -08:00
John Reiser
58771ecca6
PeFile: better checking for import descriptors
...
modified: pefile.cpp
2017-11-08 12:38:54 -08:00
John Reiser
5d9dcb634b
PeFile: Defend against bad crafted import descriptors
...
https://github.com/upx/upx/issues/143
modified: pefile.cpp
modified: pefile.h
2017-11-08 11:07:46 -08:00
John Reiser
19c2c1edcf
Android 8.0 (Oreo) wants 0!=.e_shstrndx in a shared library
...
https://github.com/upx/upx/issues/142
It should not matter what the .sh_name is; only the .sh_type matters.
modified: p_lx_elf.cpp
2017-11-07 11:12:23 -08:00
John Reiser
0430e7931e
PowerPC64 stub: on syscall, real Linux trashes r13 and below
...
(except r1, r2, and input args!) So, r12 .e_entry for musl
must copy from a saved register. [qemu-ppc64 doesn't trash registers!]
modified: ../.github/travis_testsuite_1.sh
modified: p_lx_elf.cpp
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/powerpc64le-linux.elf-fold.S
also .h .fold.map
2017-10-27 20:07:32 -07:00
John Reiser
bb8e607442
PowerPC64 musl 1.1.16 wants r12= .e_entry
...
modified: stub/src/powerpc64le-linux.elf-fold.S
also .h .fold.map
2017-10-27 13:19:03 -07:00
John Reiser
e61ada944d
debug info for shared library on stderr under "-D"
...
modified: p_lx_elf.cpp
2017-10-25 21:32:17 -07:00
John Reiser
46730315e3
stub arm64-linux.shlib-init.S saves 1 instr and checks for assembly errors
...
modified: arm64-linux.shlib-init.S
also .h .bin.dump
2017-10-24 12:50:29 -07:00
John Reiser
4869142034
arm64 stub for shared library uses AT_PAGESZ
...
modified: stub/src/arm64-linux.shlib-init.S
also .h .bin.dump
2017-10-23 18:55:28 -07:00
John Reiser
8e42e17bbf
typo
...
modified: stub/src/amd64-linux.elf-entry.S
2017-10-23 18:53:42 -07:00
John Reiser
38c8b84a26
Align hatch_off.
...
modified: p_lx_elf.cpp
2017-10-20 17:23:55 -07:00
John Reiser
c652626a37
32-bit shared libs reduce Phdr[1].p_align to 4096, like 64-bit.
...
This saves space when PAGE_SIZE is larger than 4096: MIPS, etc.
modified: p_lx_elf.cpp
2017-10-20 16:35:27 -07:00
John Reiser
06f6e47ebf
Fix stub for MIPS shared libraries
...
https://github.com/upx/upx/issues/135
modified: p_lx_elf.cpp
modified: stub/src/mipsel.r3000-linux.shlib-init.S
also .h .bin.dump
2017-10-20 16:16:35 -07:00
John Reiser
403b180b1d
Compress shared libraries for mips and mipsel in ELF on Linux
...
modified: p_lx_elf.cpp
modified: stub/Makefile
new file: stub/mips.r3000-linux.shlib-init.h
new file: stub/mipsel.r3000-linux.shlib-init.h
new file: stub/src/mips.r3000-linux.shlib-init.S
new file: stub/src/mipsel.r3000-linux.shlib-init.S
new file: stub/tmp/mips.r3000-linux.shlib-init.bin.dump
new file: stub/tmp/mipsel.r3000-linux.shlib-init.bin.dump
2017-10-19 13:47:36 -07:00
John Reiser
ee008acfbd
amd64 implements --is_ptinterp
...
https://github.com/upx/upx/issues/121
modified: ../.github/travis_testsuite_1.sh
modified: p_lx_elf.cpp
modified: stub/src/amd64-linux.elf-entry.S
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/src/amd64-linux.elf-main.c
also .h, .map, .bin.dump
2017-10-18 13:10:49 -07:00
John Reiser
d149092ac0
Reference to external documentation only.
...
modified: stub/src/arch/mips/r3000/macros.ash
2017-10-17 14:11:06 -07:00
John Reiser
eafa136c69
Appease error C4146 unary minus operator applied to unsigned type, result still unsigned
...
Microsoft Optimizing Compiler 16.00.40219.01, 19.00.24215.1, 19.11.25507.1; others
modified: p_lx_elf.cpp
2017-10-17 08:44:08 -07:00
John Reiser
402c885987
Merge branch 'jreiser-elfstub' into devel
...
New stub strategy on Linux: Linux adds too many other segments
to the address space: [vdso], [sigpage], ...; and qemu might
arrange them differently. Thus the only reliable mappings
are the PT_LOAD of the compressed file itself; all other
address space is unknown! First, the compressed file uses
.bss to occupy all unused pages up to the original brk(0).
Then at run time, the stub gets another mapping of /proc/self/exe,
and uncompresses the user program on top of the original pages.
[*BSD unchanged for now?]
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-darwin.dylib-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/mipsel.r3000-linux.elf-fold.S
modified: stub/src/mipsel.r3000-linux.elf-entry.S
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/i386-linux.elf-fold.S
modified: stub/src/i386-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-main.c
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/src/amd64-linux.elf-entry.S
modified: p_unix.cpp
modified: p_mach.cpp
modified: p_lx_sh.cpp
modified: p_lx_interp.cpp
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_lx_interp.h
modified: p_lx_sh.h
modified: p_mach.h
modified: p_unix.h
modified: stub/src/arch/mips/r3000/macros.ash
modified: stub/src/arch/powerpc/32/ppc_regs.h
modified: stub/src/arch/powerpc/64le/ppc_regs.h
modified: stub/src/include/linux.h
modified: stub/Makefile
modified: ../.github/travis_testsuite_1.sh
also .h .map .bin.dump
2017-10-14 14:26:11 -07:00
John Reiser
5e7e0508b9
sync stubs for "make run-testsuite"
...
modified: ../.github/travis_testsuite_1.sh
2017-10-14 14:19:24 -07:00
John Reiser
ff1d5fb794
stub for 64-bit little-endian PowerPC also uses TOC
...
modified: stub/src/arch/powerpc/64le/ppc_regs.h
modified: stub/src/powerpc64le-linux.elf-fold.S
2017-10-14 13:54:43 -07:00
John Reiser
ad3f63b5c4
stubs *.elf-main.c: tighten input to first decompress of ELF headers
...
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/i386-linux.elf-main.c
also .h, .map
2017-10-14 06:21:44 -07:00
John Reiser
a3e51e6dee
stub for PowerPC 64-bit big endian: accommodate musl bare .func as .e_entry
...
modified: stub/src/powerpc64le-linux.elf-fold.S
2017-10-14 06:18:00 -07:00
John Reiser
c1b9c79f54
arm,armeb stubs need endian-neutral code to set mflg_subr
...
modified: stub/src/arm.v4a-linux.elf-entry.S
also .h, .bin.dump
2017-10-13 12:27:07 -07:00
John Reiser
e0bc040b0a
mips stub uses new strategy
...
modified: p_lx_elf.cpp
modified: stub/src/arch/mips/r3000/macros.ash
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/mipsel.r3000-linux.elf-entry.S
modified: stub/src/mipsel.r3000-linux.elf-fold.S
also .h, .bin.dump, .map
2017-10-12 21:04:10 -07:00
John Reiser
85eb4c7537
powerpc stub: used wrong register
...
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/arch/powerpc/32/ppc_regs.h
2017-10-11 17:17:45 -07:00
John Reiser
1f929d47d0
x86_64 stub also needs make_hatch()
...
https://github.com/upx/upx/issues/133
modified: stub/src/amd64-linux.elf-main.c
modified: ../.github/travis_testsuite_1.sh
also .h and .map
2017-10-11 09:06:50 -07:00
John Reiser
608662d73b
x86_64 stub also needs make_hatch()
...
https://github.com/upx/upx/issues/133
modified: stub/src/amd64-linux.elf-main.c
2017-10-11 08:45:21 -07:00
John Reiser
7841d23e77
arm64: folded stub uses 64-bit TRACEing under DEBUG
...
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
2017-10-10 21:39:50 -07:00
John Reiser
b72dda4ada
arm64 spills a few registers because syscall can trash x18
...
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
2017-10-10 20:31:11 -07:00
John Reiser
c59c8a1ea2
readability; no functional change
...
modified: stub/src/powerpc64le-linux.elf-entry.S
2017-10-10 20:30:41 -07:00
John Reiser
1522293be0
arm64: stub uses new strategy
...
modified: p_lx_elf.cpp
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/arm64-linux.elf-main.c
also .h, .map, .bin.dump
2017-10-10 14:51:03 -07:00
John Reiser
b37bc99330
PowerPC64: stub uses new strategy
...
Needed: expert on TOC for big-endian. glibc, musl, gcc disagree
on layout (is the .func first?) and usage for .e_entry.
modified: p_lx_elf.cpp
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/src/arch/powerpc/64le/ppc_regs.h
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc64le-darwin.dylib-entry.S
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/Makefile
also .h, .bin.dump, .map
2017-10-07 13:43:12 -07:00
John Reiser
7f905724b1
amd64: stub uses new strategy
...
modified: stub/src/amd64-linux.elf-entry.S
modified: stub/src/amd64-linux.elf-fold.S
modified: p_lx_elf.cpp
also .h, .bin.dump, .map
2017-10-06 11:15:34 -07:00
John Reiser
2bf5bb1625
arm: stub uses new strategy
...
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: p_lx_elf.cpp
plus .h, .bin.dump, .map
2017-10-05 17:07:30 -07:00
John Reiser
08d3376740
Elf i386 stub: get enough space when unfolded code requires another page
...
modified: src/i386-linux.elf-entry.S
2017-10-03 11:48:27 -07:00
John Reiser
7bace76176
Protect against bad crafted input.
...
https://github.com/upx/upx/issues/129
modified: p_lx_elf.cpp
2017-10-03 09:55:34 -07:00
John Reiser
ef336dbcc6
Protect against bad crafted input.
...
https://github.com/upx/upx/issues/128
modified: p_lx_elf.cpp
2017-10-02 21:47:40 -07:00
John Reiser
ca7217e717
powerpc: stub uses new strategy
...
First mmap must reserve enough space to decompress folded stub.
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
also .h, .map, .dump
2017-10-02 20:03:47 -07:00
John Reiser
3931cb7871
off_t is signed and long; keep the long when discarding the signed.
...
https://github.com/upx/upx/issues/127
modified: p_vmlinx.cpp
2017-10-01 16:14:09 -07:00
John Reiser
9e8de4abe5
i386: new stub strategy to avoid problems with early mmap layout
...
The stub occupies the same region that execve() would create
for the original progam. The stub copies everything to a new area,
erases the original region, replaces it with the de-compressed
program, and erases the copy of itself via the escape hatch.
The copy is inexpensive via mmap() of /proc/self/exe.
modified: stub/src/i386-linux.elf-entry.S
modified: stub/src/i386-linux.elf-fold.S
modified: stub/src/i386-linux.elf-main.c
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_lx_interp.cpp
modified: p_lx_interp.h
modified: p_lx_sh.cpp
modified: p_lx_sh.h
modified: p_mach.cpp
modified: p_mach.h
modified: p_unix.cpp
modified: p_unix.h
modified: p_vmlinx.cpp
plus .h, .map, .dump
2017-10-01 15:56:34 -07:00
John Reiser
26be845563
mips stubs: implement ET_DYN (-pie).
...
modified: stub/src/mipsel.r3000-linux.elf-entry.S
modified: stub/src/mipsel.r3000-linux.elf-fold.S
plus associated *.h, *.bin.dump, and ../.github/travis_testsuite_1.sh
2017-09-26 10:05:22 -07:00
John Reiser
2f11a629fa
Fix flub: "git --amend" after "git push" is not a good idea.
...
https://github.com/upx/upx/issues/126# Please enter the commit message for your changes. Lines starting
modified: arm64-linux.shlib-init.S
2017-09-25 11:43:38 -07:00
John Reiser
a295437e11
Merge branch 'devel' of https://github.com/upx/upx into devel
2017-09-25 11:39:13 -07:00
John Reiser
04597fb804
Fix bug in unfilter for shlib on arm64.
...
https://github.com/upx/upx/issues/126
modified: stub/src/arm64-linux.shlib-init.S
and associated *.h, *.bin.dump
2017-09-25 11:38:33 -07:00
John Reiser
f2f002409b
Fix bug in unfilter for shlib on arm64.
...
https://github.com/upx/upx/issues/126
modified: stub/src/arm64-linux.shlib-init.S
and associated *.h, *.bin.dump
2017-09-25 11:31:44 -07:00
John Reiser
509de877ca
Cleanup powerpc64 aux stub files.
...
modified: stub/powerpc64-linux.elf-fold.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/tmp/powerpc64-linux.elf-fold.map
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2017-09-24 20:30:07 -07:00
John Reiser
63aea4a7dc
64-bit Power PC linux uses 64KiB page size, but qemu-ppc64{,le} uses 4KiB.
...
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/include/linux.h
modified: stub/src/powerpc64le-linux.elf-fold.S
2017-09-24 20:24:46 -07:00
John Reiser
6470c748db
Flush ACC_UNUSED(adrc); and its predecessors from stub for MIPS.
...
modified: p_lx_elf.cpp
2017-09-24 20:07:31 -07:00
John Reiser
25a6429e6a
Merge branch 'devel' of https://github.com/upx/upx into devel
2017-09-23 10:43:14 -07:00
John Reiser
4fa1c2a97e
Avoid the stack in stub for PowerPC, especially under qemu-ppc.
...
modified: stub/src/powerpc-linux.elf-entry.S
also travis_testsuite_1.sh, -entry.h, -entry.bin.dump
2017-09-23 10:41:40 -07:00
Markus F.X.J. Oberhumer
9ad39d77cc
Update Travis.
2017-09-21 10:15:01 +02:00
John Reiser
92527126a8
Adapt around qemu-arm placement of ET_DYN and stack.
...
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: ../.github/travis_testsuite_1.sh
plus arm*.elf-entry.h, arm*.elf-entry.bin.dump
2017-09-20 15:23:12 -07:00
John Reiser
02b4a4c974
Sync testsuite checksums.
...
modified: ../.github/travis_testsuite_1.sh
2017-09-20 13:37:38 -07:00
John Reiser
ede570be21
Spend 8 instructions to avoid modifying [0xf7000000, +) under qemu-arm.
...
modified: src/arm.v4a-linux.elf-entry.S
modified: src/arm.v4a-linux.elf-fold.S
plus arm*.h and tmp/arm*.{dump,map}
2017-09-20 13:31:38 -07:00
John Reiser
08627e9df5
Fix some AT_PHDR problems, at least on x86*.
...
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/i386-linux.elf-main.c
modified: ../.github/travis_testsuite_1.sh
plus many *.elf-fold.h and *.elf-fold.map
2017-09-18 19:54:27 -07:00
John Reiser
6d9f3adc86
Escape hatch for Thumb-mode shared library must reside at even address.
...
https://github.com/upx/upx/issues/122
modified: stub/src/arm.v4t-linux.shlib-init.S
modified: stub/arm.v5t-linux.shlib-init.h
modified: stub/tmp/arm.v5t-linux.shlib-init.bin.dump
2017-09-13 22:38:24 -07:00
John Reiser
96433b4e39
FILTER_ID was wrong for arm64-linux.shlib and arm64-darwin.macho.
...
https://github.com/upx/upx/issues/100 (partial)
modified: stub/src/arm64-darwin.macho-fold.S
modified: stub/src/arm64-linux.shlib-init.S
modified: p_mach.cpp
modified: stub/arm64-darwin.macho-fold.h
modified: stub/arm64-linux.shlib-init.h
2017-08-25 12:51:33 -07:00
John Reiser
f4947cc2ae
Work-around Ubuntu runtime bug loading shlib on ARM.
...
Use --android-shlib to activate the work-around.
https://bugs.launchpad.net/bugs/1712938
https://github.com/upx/upx/issues/116
modified: p_elf_enum.h
modified: p_lx_elf.cpp
2017-08-24 19:52:30 -07:00
John Reiser
7b554d4f72
ucl-1.03 needs help for recent gcc and for native on aarch64.
...
modified: README.SRC
2017-08-23 05:47:16 -07:00
John Reiser
5b54544438
Fix powerpc64 (BIG_ENDIAN and comments)
...
modified: stub/src/arch/powerpc/64/lzma_d.S
modified: stub/src/arch/powerpc/64le/lzma_d-common.S
modified: stub/src/powerpc64-linux.elf-main.c
modified: stub/src/powerpc64le-darwin.dylib-entry.S
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-main.c
modified: stub/src/powerpc64le-linux.kernel.vmlinux.S
plus stub/powerpc64*entry.h and .dump
2017-07-26 11:16:02 -07:00
Markus F.X.J. Oberhumer
ef78d23494
Update Travis and check_whitespace.sh.
2017-07-23 02:59:51 +02:00
Markus F.X.J. Oberhumer
ef8a7f330d
Silence some compiler warnings.
2017-07-23 02:59:51 +02:00
Markus F.X.J. Oberhumer
b72e0f3060
Disable debugging section.
2017-07-23 02:59:51 +02:00
Markus F.X.J. Oberhumer
2a0bab938b
Rebuild stubs.
2017-07-23 02:20:05 +02:00
Markus F.X.J. Oberhumer
cd637629c4
Update stub/src/arch/powerpc Makefiles.
2017-07-23 02:18:39 +02:00
John Reiser
b9adfd801d
Compile powerpc64 using powerpc64-linux-gcc-4.9.2 from stubtools
...
modified: src/arch/powerpc/64/Makefile.extra
2017-07-22 16:14:12 -07:00
Markus F.X.J. Oberhumer
69355514c9
Fix some misspellings.
2017-07-22 12:54:37 +02:00
Markus F.X.J. Oberhumer
33dc947c21
clang-format files.
2017-07-22 12:47:45 +02:00
John Reiser
6de021d8d8
Fix MIPS, at least ET_EXEC.
...
ET_DYN not tested. Also /proc/self/exe is not proected [use getenv(" ")]
modified: p_lx_elf.cpp
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/mipsel.r3000-linux.elf-fold.S
modified: ../.github/travis_testsuite_1.sh
also .h .dump .map for mips
2017-06-27 20:53:44 -07:00
John Reiser
9be86621bf
PowerPC64 unifies into amd64-linux.elf-main.c
...
Also reconcile ppc32 and ppc64, especially *.S
modified: p_lx_elf.cpp
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-main.c
modified: ../.github/travis_testsuite_1.sh
also corresponding *.h *.map *.dump
2017-06-27 14:58:13 -07:00
John Reiser
a7a0876298
/proc/self/exe in powerpc64*.S stub; unify with powerpc*.S.
...
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: .github/travis_testsuite_1.sh
also corresponding *.h *.dump *.map files
2017-06-26 21:40:12 -07:00
John Reiser
31b42345c3
Fix nesting brace in comment on #endif.
...
modified: i386-linux.elf-main.c
2017-06-26 21:31:36 -07:00
John Reiser
1b172e729e
Fix stub for powerpc64, powerpc64le
...
modified: src/powerpc64le-linux.elf-fold.S
2017-06-25 16:03:43 -07:00
John Reiser
3bf387a2d4
PowerPC stub unified with i386; including escape hatch [munmap all extras]
...
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc-linux.elf-main.c
modified: ../.github/travis_testsuite_1.sh
{arm.*,i386,mips*.r3000,powerpc}-linux.elf-fold.{h,map}
powerpc-*-entry.*
2017-06-24 18:37:16 -07:00
John Reiser
9f20bbb046
Fix merge
2017-06-19 16:01:35 -07:00
John Reiser
82af555974
Merge branch 'i386-VDSO' into devel
2017-06-19 15:58:22 -07:00
John Reiser
50638b5213
i386 VDSO may conflict on low side of -pie ET_DYN
...
https://github.com/upx/upx/issues/105
modified: stub/src/i386-linux.elf-entry.S
modified: stub/i386-linux.elf-entry.h
modified: stub/tmp/i386-linux.elf-entry.bin.dump
2017-06-19 15:49:28 -07:00
John Reiser
650df95b72
Fix thinko in PackMachBase<T>::canUnpack(). Also detect more bad input values.
...
https://github.com/upx/upx/issues/109
modified: p_mach.cpp
2017-06-18 14:24:44 -07:00
John Reiser
b2115a4162
i386: clear the stack when leaving (for buggy programs); align esp to 0 mod 8
...
modified: stub/src/i386-linux.elf-entry.S
modified: stub/src/i386-linux.elf-fold.S
modified: ../.github/travis_testsuite_1.sh
modified: stub/i386-linux.elf-entry.h
modified: stub/i386-linux.elf-fold.h
modified: stub/tmp/i386-linux.elf-entry.bin.dump
modified: stub/tmp/i386-linux.elf-fold.map
2017-06-16 21:36:21 -07:00
John Reiser
d67bf16a08
i386: Separate PROT_EXEC and PROT_WRITE
...
Also affects some arm and mips (via sharing i386-linux.elf-main.c)
modified: i386-linux.elf-entry.S
modified: i386-linux.elf-main.c
also .h, .map, .dump
2017-06-16 08:17:44 -07:00
John Reiser
a4c9b64224
PowerPC: fix ET_EXEC [merge problems?] Next: -pie
...
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc-linux.elf-main.c
modified: stub/powerpc-linux.elf-entry.h
modified: stub/powerpc-linux.elf-fold.h
modified: stub/tmp/powerpc-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc-linux.elf-fold.map
2017-06-14 20:00:30 -07:00
John Reiser
8f572e5fe6
Rewrite stubs for 32-bit arm and i386 for -pie (Position-Independent Executable)
...
Coming next: MIPS and PowerPC.
modified: p_lx_elf.cpp
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: stub/src/i386-linux.elf-entry.S
modified: stub/src/i386-linux.elf-fold.S
modified: ../.github/travis_testsuite_1.sh
also associated *.h *.map *.dump files
2017-06-14 09:57:19 -07:00
John Reiser
e58873044b
Remove unused and obsolete macros do_dcache_flush and do_icache_invalidate
...
modified: stub/src/arch/arm64/v8/macros.S
2017-06-14 09:35:05 -07:00
John Reiser
8ada92a69f
"Drive-by" typo fix
...
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/arm64-darwin.macho-entry.h
2017-06-14 09:33:41 -07:00
John Reiser
3c8ed5c000
Fix typo under "#if 0"
...
modified: packer.cpp
2017-06-10 22:11:04 -07:00
John Reiser
c127d5b64a
o_binfo got in the way
...
modified: stub/src/i386-linux.elf-entry.S
2017-06-10 14:03:05 -07:00
John Reiser
2d3bd0809a
i386-linux.elf-fold.S avoids mmap() into stack
...
modified: stub/src/i386-linux.elf-fold.S
modified: ../.github/travis_testsuite_1.sh
modified: stub/i386-linux.elf-fold.h
modified: stub/tmp/i386-linux.elf-fold.map
2017-06-09 14:38:08 -07:00
John Reiser
eef955a9dd
Fix arm.v4a-linux.elf-entry.S
...
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/arm.v4a-linux.elf-entry.h
modified: stub/arm.v5a-linux.elf-entry.h
modified: stub/armeb.v4a-linux.elf-entry.h
modified: stub/tmp/arm.v4a-linux.elf-entry.bin.dump
modified: stub/tmp/arm.v5a-linux.elf-entry.bin.dump
modified: stub/tmp/armeb.v4a-linux.elf-entry.bin.dump
modified: ../.github/travis_testsuite_1.sh
2017-06-08 20:50:57 -07:00
John Reiser
e59ce39dc6
Fix arm64-linux.elf-*
...
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/arm64-linux.elf-main.c
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-fold.map
2017-06-08 17:23:19 -07:00
John Reiser
62815f5c3c
Fix AT_PHDR and AT_ENTRY for amd64-linux.elf (-pie, libmusl)
...
modified: stub/src/amd64-linux.elf-main.c
modified: ../.github/travis_testsuite_1.sh
modified: stub/amd64-linux.elf-fold.h
modified: stub/tmp/amd64-linux.elf-fold.map
2017-06-07 09:04:02 -07:00
John Reiser
f496010273
Fix reloc of stub for amd64-linux.elf
...
modified: stub/src/arm64-linux.elf-main.c
modified: stub/arm64-linux.elf-fold.h
modified: stub/tmp/arm64-linux.elf-fold.map
2017-06-07 09:01:37 -07:00
John Reiser
143c4e3322
Fix MH_EXECUTE for amd64-darwin.macho
...
modified: p_mach.cpp
modified: stub/src/amd64-darwin.macho-entry.S
modified: stub/amd64-darwin.macho-entry.h
modified: stub/tmp/amd64-darwin.macho-entry.bin.dump
2017-06-07 08:58:20 -07:00
John Reiser
e7f1e99a5e
Merge branch 'jreiser' into devel
...
O_BINFO simplifies stubs on linux Elf;
PowerPC64 (big endian: Apple Macintosh G5) and PowerPC* cleanup;
-fpie simplification; shlib for arm64, amd64.
A big merge due to suspending activity on 'devel' branch
during stabilization for release of UPX-3.94.
There were intermediate merges with private branch 'jreiser',
and attempted rebase onto 'devel' did not go well.
Verfication of cases ({ET_EXEC, -fpie, shlib} x {$ARCH}) is in progress.
modified: ../.github/travis_testsuite_1.sh
modified: conf.h
modified: linker.cpp
modified: linker.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_mach.cpp
modified: p_mach.h
modified: p_mach_enum.h
modified: packmast.cpp
modified: stub/Makefile
modified: stub/scripts/xstrip.py
modified: stub/src/amd64-darwin.dylib-entry.S
modified: stub/src/amd64-darwin.macho-entry.S
modified: stub/src/amd64-linux.elf-entry.S
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/arch/powerpc/32/bxx.S
modified: stub/src/arch/powerpc/32/lzma_d.S
modified: stub/src/arch/powerpc/32/nrv2b_d.S
modified: stub/src/arch/powerpc/32/nrv2d_d.S
modified: stub/src/arch/powerpc/32/nrv2e_d.S
modified: stub/src/arch/powerpc/32/ppc_regs.h
new file: stub/src/arch/powerpc/64/Makefile
new file: stub/src/arch/powerpc/64/Makefile.extra
new file: stub/src/arch/powerpc/64/bxx.S
new file: stub/src/arch/powerpc/64/lzma_d.S
new file: stub/src/arch/powerpc/64/lzma_d_cf.S
new file: stub/src/arch/powerpc/64/lzma_d_cs.S
new file: stub/src/arch/powerpc/64/macros.S
new file: stub/src/arch/powerpc/64/nrv2b_d.S
new file: stub/src/arch/powerpc/64/nrv2d_d.S
new file: stub/src/arch/powerpc/64/nrv2e_d.S
new file: stub/src/arch/powerpc/64/ppc_regs.h
modified: stub/src/arch/powerpc/64le/bxx.S
copied: stub/src/arch/powerpc/64le/lzma_d.S -> stub/src/arch/powerpc/64le/lzma_d-common.S
modified: stub/src/arch/powerpc/64le/lzma_d.S
modified: stub/src/arch/powerpc/64le/lzma_d_cs.S
modified: stub/src/arch/powerpc/64le/nrv2b_d.S
modified: stub/src/arch/powerpc/64le/nrv2d_d.S
modified: stub/src/arch/powerpc/64le/nrv2e_d.S
modified: stub/src/arch/powerpc/64le/ppc_regs.h
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/arm64-linux.shlib-init.S
modified: stub/src/i386-bsd.elf-entry.S
modified: stub/src/i386-darwin.macho-entry.S
modified: stub/src/i386-linux.elf-entry.S
modified: stub/src/i386-linux.elf-fold.S
modified: stub/src/mipsel.r3000-linux.elf-entry.S
modified: stub/src/mipsel.r3000-linux.elf-fold.S
modified: stub/src/powerpc-darwin.dylib-entry.S
modified: stub/src/powerpc-darwin.macho-entry.S
modified: stub/src/powerpc-darwin.macho-fold.S
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc-linux.elf-main.c
new file: stub/src/powerpc64-darwin.dylib-entry.S
new file: stub/src/powerpc64-darwin.macho-entry.S
new file: stub/src/powerpc64-darwin.macho-fold.S
new file: stub/src/powerpc64-darwin.macho-main.c
new file: stub/src/powerpc64-linux.elf-entry.S
new file: stub/src/powerpc64-linux.elf-fold.S
new file: stub/src/powerpc64-linux.elf-fold.lds
new file: stub/src/powerpc64-linux.elf-main.c
modified: stub/src/powerpc64-savegpr0.S
modified: stub/src/powerpc64le-darwin.dylib-entry.S
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-darwin.macho-fold.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-main.c
and most stub/*.h and stub/tmp/*.dump
2017-06-05 11:32:25 -07:00
John Reiser
140a031515
arm64-linux.shlib-init
...
modified: p_lx_elf.cpp
modified: stub/src/arm64-linux.shlib-init.S
modified: stub/arm64-linux.shlib-init.h
modified: stub/tmp/arm64-linux.shlib-init.bin.dump
2017-06-04 16:52:43 -07:00
John Reiser
b7c91941b8
--android-shlib fix Elf64_Shdr.sh_offset
...
https://github.com/upx/upx/issues/100
modified: ../p_lx_elf.cpp
modified: ../p_lx_elf.h
2017-05-31 11:04:56 -07:00
John Reiser
33f0b6da67
Merge branch 'devel' of https://github.com/upx/upx into devel
2017-05-31 10:57:19 -07:00
John Reiser
ee18fe9bba
DF_1_PIE and calls_crt1() to handle part of -pie,-fPIE
...
https://github.com/upx/upx/issues/106 [partial]
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2017-05-31 10:53:55 -07:00
John Reiser
a51330cf07
DF_1_PIE and calls_crt1() to handle part of -pie,-fPIE
...
https://github.com/upx/upx/issues/106 [partial]
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2017-05-30 13:43:06 -07:00
John Reiser
a67aed2744
Merge branch 'devel' of https://github.com/upx/upx into devel
2017-05-30 11:33:39 -07:00
John Reiser
d979e19315
fpad8() for --android-shlib in PackLinuxElf64::pack4()
...
https://github.com/upx/upx/issues/100
modified: p_lx_elf.cpp
2017-05-30 11:32:05 -07:00
Markus F.X.J. Oberhumer
4c74d16795
Avoid a compilation warning. clang-format files.
2017-05-28 11:32:12 +02:00
John Reiser
6e541a432f
amd64-linux: DF_1_PIE marks a main program; stub juggles AT_PHDR for same
...
https://github.com/upx/upx/issues/105
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: stub/src/amd64-linux.elf-main.c
modified: ../.github/travis_testsuite_1.sh
modified: stub/amd64-linux.elf-fold.h
modified: stub/tmp/amd64-linux.elf-fold.map
2017-05-27 19:54:12 -07:00
John Reiser
d8f47e248a
Handle old style 8-byte headers for version <= 11
...
https://github.com/upx/upx/issues/102
modified: p_unix.cpp
2017-05-26 13:05:12 -07:00
John Reiser
d1a869496b
More visibility for PackHeader when debug(-D)
...
modified: packhead.cpp
modified: packmast.cpp
modified: pefile.h
2017-05-26 13:02:32 -07:00
John Reiser
f42a37555d
Merge branch 'devel' of https://github.com/upx/upx into devel
2017-05-21 20:48:05 -07:00
John Reiser
d9e019bd87
amd64-darwin.dylib hacking
...
modified: stub/src/amd64-darwin.dylib-entry.S
modified: stub/amd64-darwin.dylib-entry.h
modified: stub/tmp/amd64-darwin.dylib-entry.bin.dump
2017-05-17 21:36:40 -07:00
John Reiser
ce194fa5d8
amd64-darwin.dylib hacking
...
modified: p_mach.cpp
modified: p_mach.h
modified: p_mach_enum.h
modified: stub/src/amd64-darwin.dylib-entry.S
modified: stub/amd64-darwin.dylib-entry.h
modified: stub/tmp/amd64-darwin.dylib-entry.bin.dump
2017-05-17 15:50:34 -07:00
Markus F.X.J. Oberhumer
b5bdf57636
Minor cleanups.
2017-05-14 19:21:04 +02:00
Markus F.X.J. Oberhumer
a3a81ce7c6
Update NEWS.
2017-05-13 20:44:02 +02:00
Markus F.X.J. Oberhumer
61f347401c
Update testsuite checksums caused by version bump.
2017-05-12 15:35:24 +02:00
Markus F.X.J. Oberhumer
d985a4c250
Post-release version bump.
2017-05-12 15:28:47 +02:00
Markus F.X.J. Oberhumer
d31947e1f0
Update NEWS.
2017-05-12 13:01:20 +02:00
Markus F.X.J. Oberhumer
e4659b7d7c
Bump release date.
2017-05-12 12:47:14 +02:00
Markus F.X.J. Oberhumer
8827a534db
Update Travis.
2017-05-12 12:45:43 +02:00
Markus F.X.J. Oberhumer
ddf48b45a5
Update Travis.
2017-05-09 22:50:18 +02:00
John Reiser
8eabb9b02f
i386 recover from merge
...
modified: p_lx_elf.cpp
2017-05-08 18:54:41 -07:00
John Reiser
8a195a0b35
amd64 recover from merge
...
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/amd64-linux.elf-fold.h
modified: stub/tmp/amd64-linux.elf-fold.map
2017-05-08 16:06:02 -07:00
John Reiser
955206aaf0
Merge branch 'devel' into jreiser
...
Conflicts:
src/p_lx_elf.cpp
src/stub/src/amd64-linux.elf-entry.S
src/stub/src/amd64-linux.elf-main.c
src/stub/src/arm.v4a-linux.elf-entry.S
src/stub/src/arm.v4a-linux.elf-fold.S
src/stub/src/arm64-linux.elf-entry.S
src/stub/src/arm64-linux.elf-fold.S
src/stub/src/i386-linux.elf-fold.S
src/stub/src/powerpc-darwin.macho-entry.S
src/stub/src/powerpc-linux.elf-fold.S
src/stub/src/powerpc64le-darwin.macho-entry.S
src/stub/src/powerpc64le-linux.elf-entry.S
src/stub/src/powerpc64le-linux.elf-fold.S
src/stub/src/powerpc64le-linux.elf-main.c
Changes to be committed:
modified: ../.github/ISSUE_TEMPLATE.md
modified: ../.github/travis_build.sh
modified: ../.github/travis_deploy.sh
modified: ../.github/travis_init.sh
modified: ../.github/travis_testsuite_1.sh
modified: ../.gitignore
modified: ../.travis.yml
modified: ../NEWS
modified: c_screen.cpp
modified: file.cpp
modified: help.cpp
modified: linker.cpp
modified: main.cpp
modified: p_lx_elf.cpp
modified: packer.cpp
modified: s_djgpp2.cpp
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/powerpc-darwin.dylib-entry.S
modified: stub/src/powerpc-darwin.macho-entry.S
modified: stub/src/powerpc-darwin.macho-fold.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc64le-darwin.dylib-entry.S
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-darwin.macho-fold.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-main.c
modified: ui.cpp
modified: util.cpp
modified: work.cpp
[plus *.h, *.dump, *.map]
2017-05-08 14:21:31 -07:00
John Reiser
082dd7d5ee
arm64 TRACE improvement
...
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/arm64-linux.elf-entry.h
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
2017-05-07 12:07:51 -07:00
John Reiser
90714cf624
arm64 tracing in stub
...
modified: ../../linker.cpp
modified: ../../p_lx_elf.cpp
modified: arm64-linux.elf-entry.S
2017-05-06 19:37:37 -07:00
John Reiser
61798d33f0
Revamp stub on arm, arm64; mmap into stack defeats auto-expansion [kernel bug?]
...
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: ../.github/travis_testsuite_1.sh
modified: stub/arm.v4a-linux.elf-fold.h
modified: stub/arm.v5a-linux.elf-fold.h
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/armeb.v4a-linux.elf-fold.h
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
2017-05-05 18:36:44 -07:00
John Reiser
6e2a41cb26
DPRINTF for amd64
...
modified: Makefile
modified: src/amd64-linux.elf-fold.S
modified: src/amd64-linux.elf-main.c
modified: amd64-linux.elf-fold.h
modified: tmp/amd64-linux.elf-fold.map
2017-05-05 13:32:42 -07:00
John Reiser
515897e180
Allow Elf64_Ehdr::ELFOSABI_NONE on Linux; cater to EM_PPC64.e_flags quirk
...
modified: p_lx_elf.cpp
2017-05-04 08:28:03 -07:00
John Reiser
fe4a8f33b1
Start on darwin.macho-dylib
...
modified: p_mach.cpp
modified: p_mach.h
modified: packmast.cpp
2017-05-03 08:30:21 -07:00
Markus F.X.J. Oberhumer
304d848f53
Bump version date.
2017-05-03 13:49:22 +02:00
Markus F.X.J. Oberhumer
b5f738abf3
Move xxx_le26 from miniacc.h to bele.h.
2017-05-03 13:25:10 +02:00
Markus F.X.J. Oberhumer
7ebed06393
Fix building with recent djgpp2 gcc-6 version.
2017-05-03 13:21:08 +02:00
Markus F.X.J. Oberhumer
2e56fe82bb
Update Travis.
2017-05-01 10:37:07 +02:00
John Reiser
32019c61aa
dynamic e_phnum for arm
...
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: ../.github/travis_testsuite_1.sh
modified: stub/arm.v4a-linux.elf-entry.h
modified: stub/arm.v4a-linux.elf-fold.h
modified: stub/arm.v5a-linux.elf-entry.h
modified: stub/arm.v5a-linux.elf-fold.h
modified: stub/armeb.v4a-linux.elf-entry.h
modified: stub/armeb.v4a-linux.elf-fold.h
modified: stub/tmp/arm.v4a-linux.elf-entry.bin.dump
modified: stub/tmp/arm.v4a-linux.elf-fold.map
modified: stub/tmp/arm.v5a-linux.elf-entry.bin.dump
modified: stub/tmp/arm.v5a-linux.elf-fold.map
modified: stub/tmp/armeb.v4a-linux.elf-entry.bin.dump
modified: stub/tmp/armeb.v4a-linux.elf-fold.map
2017-04-30 19:15:17 -07:00
John Reiser
f7ffae565c
dynamic e_phnum for arm64
...
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/arm64-linux.elf-entry.h
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
2017-04-30 13:13:53 -07:00
John Reiser
cd11bb1606
Update AT_BASE for musl-libc
...
https://github.com/upx/upx/issues/93
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/i386-linux.elf-main.c
modified: stub/src/powerpc64le-linux.elf-main.c
modified: stub/amd64-linux.elf-fold.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/tmp/amd64-linux.elf-fold.map
modified: stub/tmp/powerpc64le-linux.elf-fold.map
modified: ../.github/travis_testsuite_1.sh
2017-04-27 20:55:02 -07:00
John Reiser
24c924d668
Fix size of 'imul'
...
modified: src/stub/src/i386-linux.elf-fold.S
modified: src/p_lx_elf.cpp
modified: .github/travis_testsuite_1.sh
modified: src/stub/i386-linux.elf-fold.h
modified: src/stub/tmp/i386-linux.elf-fold.map
2017-04-26 15:24:19 -07:00
John Reiser
9be94e4b58
Fix size of 'imul'
...
modified: stub/src/amd64-linux.elf-entry.S
modified: ../.github/travis_testsuite_1.sh
modified: stub/amd64-linux.elf-entry.h
modified: stub/tmp/amd64-linux.elf-entry.bin.dump
2017-04-24 17:12:55 -07:00
John Reiser
15e9d8c99d
Recognize __libc_init for Android -pie (PositionIndependentExecutable)
...
based on https://github.com/upx/upx/pull/92/commits/d34887ef60304cb28990c4b99c17b1f91acbbef1
modified: p_lx_elf.cpp
2017-04-24 11:04:48 -07:00
John Reiser
391f511094
powerpc-linux.elf-fold.S and -main.c handle /proc/self/exe
...
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc-linux.elf-main.c
modified: stub/tmp/amd64-linux.elf-fold.map
modified: stub/amd64-linux.elf-fold.h
modified: stub/powerpc-linux.elf-entry.h
modified: stub/powerpc-linux.elf-fold.h
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/tmp/powerpc-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc-linux.elf-fold.map
2017-04-22 20:18:00 -07:00
John Reiser
5b53c11a6b
Sync powerpc-linux.elf testsuite
...
modified: travis_testsuite_1.sh
2017-04-21 11:30:12 -07:00
John Reiser
9df4b6ea24
Sync SZ_FRAME with devel branch
...
modified: src/arch/powerpc/32/ppc_regs.h
modified: src/arch/powerpc/64le/ppc_regs.h
modified: src/powerpc64le-linux.elf-entry.S
modified: src/powerpc64le-linux.elf-fold.S
2017-04-21 10:54:04 -07:00
John Reiser
a440564ba4
Fix powerpc64le ABI stack frame omitting spill area for a0-a7
...
Also use new symbol SZ_FRAME in */ppc_regs.h
modified: stub/src/arch/powerpc/32/ppc_regs.h
modified: stub/src/arch/powerpc/64le/ppc_regs.h
modified: stub/src/powerpc-darwin.dylib-entry.S
modified: stub/src/powerpc-darwin.macho-entry.S
modified: stub/src/powerpc-darwin.macho-fold.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc64le-darwin.dylib-entry.S
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-darwin.macho-fold.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/powerpc-darwin.dylib-entry.h
modified: stub/powerpc-darwin.macho-entry.h
modified: stub/powerpc-darwin.macho-fold.h
modified: stub/powerpc-linux.elf-fold.h
modified: stub/powerpc64le-darwin.dylib-entry.h
modified: stub/powerpc64le-darwin.macho-entry.h
modified: stub/powerpc64le-darwin.macho-fold.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/tmp/powerpc64le-darwin.macho-fold.map
2017-04-21 08:58:13 -07:00
John Reiser
9583cfcc93
Update NEWS
2017-04-19 19:55:39 -07:00
John Reiser
c4a921283a
Revamp powerpc{,64le,64}.
...
Fix 64-bit stack frame (8*8 bytes for spilling a0-a7). Avoid using r2 (t0).
Prepare for -pie executables. Prepare for unified strategy in stubs.
modified: p_lx_elf.cpp
modified: stub/src/amd64-linux.elf-main.c
modified: stub/src/arch/powerpc/32/bxx.S
modified: stub/src/arch/powerpc/32/lzma_d.S
modified: stub/src/arch/powerpc/32/nrv2b_d.S
modified: stub/src/arch/powerpc/32/nrv2d_d.S
modified: stub/src/arch/powerpc/32/nrv2e_d.S
modified: stub/src/arch/powerpc/32/ppc_regs.h
new file: stub/src/arch/powerpc/64/Makefile
new file: stub/src/arch/powerpc/64/Makefile.extra
new file: stub/src/arch/powerpc/64/lzma_d.S
new file: stub/src/arch/powerpc/64/lzma_d_cf.S
new file: stub/src/arch/powerpc/64/lzma_d_cs.S
modified: stub/src/arch/powerpc/64le/bxx.S
copied: stub/src/arch/powerpc/64le/lzma_d.S -> stub/src/arch/powerpc/64le/lzma_d-common.S
modified: stub/src/arch/powerpc/64le/lzma_d.S
modified: stub/src/arch/powerpc/64le/lzma_d_cs.S
modified: stub/src/arch/powerpc/64le/nrv2b_d.S
modified: stub/src/arch/powerpc/64le/nrv2d_d.S
modified: stub/src/arch/powerpc/64le/nrv2e_d.S
modified: stub/src/arch/powerpc/64le/ppc_regs.h
modified: stub/src/i386-darwin.macho-entry.S
modified: stub/src/powerpc-darwin.dylib-entry.S
modified: stub/src/powerpc-darwin.macho-entry.S
modified: stub/src/powerpc-darwin.macho-fold.S
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc-linux.elf-main.c
modified: stub/src/powerpc64-darwin.dylib-entry.S
modified: stub/src/powerpc64-darwin.macho-entry.S
modified: stub/src/powerpc64-darwin.macho-fold.S
modified: stub/src/powerpc64-darwin.macho-main.c
modified: stub/src/powerpc64-linux.elf-main.c
modified: stub/src/powerpc64-savegpr0.S
modified: stub/src/powerpc64le-darwin.dylib-entry.S
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-darwin.macho-fold.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/i386-darwin.macho-entry.h
modified: stub/powerpc-darwin.dylib-entry.h
modified: stub/powerpc-darwin.macho-entry.h
modified: stub/powerpc-darwin.macho-fold.h
modified: stub/powerpc-linux.elf-entry.h
modified: stub/powerpc-linux.elf-fold.h
modified: stub/powerpc-linux.kernel.vmlinux.h
modified: stub/powerpc64-linux.elf-entry.h
modified: stub/powerpc64-linux.elf-fold.h
modified: stub/powerpc64le-darwin.dylib-entry.h
modified: stub/powerpc64le-darwin.macho-entry.h
modified: stub/powerpc64le-darwin.macho-fold.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/powerpc64le-linux.kernel.vmlinux.h
modified: stub/tmp/i386-darwin.macho-entry.bin.dump
modified: stub/tmp/powerpc-darwin.dylib-entry.bin.dump
modified: stub/tmp/powerpc-darwin.macho-entry.bin.dump
modified: stub/tmp/powerpc-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc-linux.elf-fold.map
modified: stub/tmp/powerpc64le-darwin.dylib-entry.bin.dump
modified: stub/tmp/powerpc64le-darwin.macho-entry.bin.dump
modified: stub/tmp/powerpc64le-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc64le-linux.elf-fold.map
modified: stub/tmp/powerpc64le-linux.kernel.vmlinux.bin.dump
2017-04-19 19:25:05 -07:00
John Reiser
4e05f087f9
PowerPC 64-bit big-endian
...
modified: conf.h
modified: linker.cpp
modified: linker.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: packmast.cpp
modified: stub/Makefile
modified: stub/powerpc-linux.elf-entry.h
new file: stub/powerpc64-linux.elf-entry.h
new file: stub/powerpc64-linux.elf-fold.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/scripts/xstrip.py
modified: stub/src/arch/powerpc/64le/nrv2b_d.S
modified: stub/src/arch/powerpc/64le/nrv2d_d.S
modified: stub/src/arch/powerpc/64le/nrv2e_d.S
new file: stub/src/powerpc64-darwin.dylib-entry.S
new file: stub/src/powerpc64-darwin.macho-entry.S
new file: stub/src/powerpc64-darwin.macho-fold.S
new file: stub/src/powerpc64-darwin.macho-main.c
new file: stub/src/powerpc64-linux.elf-entry.S
new file: stub/src/powerpc64-linux.elf-fold.S
new file: stub/src/powerpc64-linux.elf-fold.lds
new file: stub/src/powerpc64-linux.elf-main.c
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-main.c
modified: stub/tmp/powerpc64le-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2017-04-11 19:15:43 -07:00
John Reiser
40b506d2e0
Sync arm* stubs
...
modified: ../arm.v4a-linux.elf-entry.h
modified: ../arm.v4a-linux.elf-fold.h
modified: ../arm.v5a-linux.elf-entry.h
modified: ../arm.v5a-linux.elf-fold.h
modified: ../arm64-darwin.macho-entry.h
modified: ../arm64-linux.elf-entry.h
modified: ../arm64-linux.elf-fold.h
modified: ../armeb.v4a-linux.elf-entry.h
modified: ../armeb.v4a-linux.elf-fold.h
modified: ../tmp/arm.v4a-linux.elf-entry.bin.dump
modified: ../tmp/arm.v4a-linux.elf-fold.map
modified: ../tmp/arm.v5a-linux.elf-entry.bin.dump
modified: ../tmp/arm.v5a-linux.elf-fold.map
modified: ../tmp/arm64-darwin.macho-entry.bin.dump
modified: ../tmp/arm64-linux.elf-entry.bin.dump
modified: ../tmp/armeb.v4a-linux.elf-entry.bin.dump
modified: ../tmp/armeb.v4a-linux.elf-fold.map
2017-04-11 19:13:11 -07:00
John Reiser
263f384810
o_binfo
...
modified: arm64-darwin.macho-entry.S
2017-04-11 19:07:38 -07:00
John Reiser
d80c145a18
PROT_EXEC for decompressed 'fold'
...
modified: powerpc-linux.elf-entry.S
2017-04-10 15:36:43 -07:00
Markus F.X.J. Oberhumer
8848fe35f6
Update Travis.
2017-04-10 16:15:03 +02:00
John Reiser
7a681bd20d
Use saved registers for parameters to 'fold'; lzma can clobber others
...
modified: arm64-linux.elf-entry.S
modified: arm64-linux.elf-fold.S
2017-04-09 21:33:29 -07:00
John Reiser
ed31fb184b
Replace crumb with b_info
...
modified: stub/src/arm.v4a-linux.elf-entry.S
modified: stub/src/arm.v4a-linux.elf-fold.S
2017-04-09 18:06:16 -07:00
John Reiser
360b94dd6c
i386-linux ET_EXEC working
...
modified: stub/src/i386-linux.elf-fold.S
modified: stub/i386-linux.elf-fold.h
modified: stub/tmp/i386-linux.elf-fold.map
2017-04-07 16:08:13 -07:00
John Reiser
8524e73f59
Always a 1-page crumb for i386
...
modified: stub/src/i386-linux.elf-entry.S
modified: stub/src/i386-linux.elf-fold.S
modified: stub/i386-linux.elf-entry.h
modified: stub/i386-linux.elf-fold.h
modified: stub/tmp/i386-linux.elf-entry.bin.dump
2017-04-07 11:17:01 -07:00
John Reiser
940514e5ca
Sync stubs
...
modified: stub/arm64-darwin.macho-entry.h
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.shlib-init.h
modified: stub/tmp/arm64-darwin.macho-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
modified: stub/tmp/arm64-linux.shlib-init.bin.dump
2017-04-07 10:09:01 -07:00
John Reiser
a4e47625ac
Sync stubs
...
modified: stub/arm64-darwin.macho-entry.h
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.shlib-init.h
modified: stub/tmp/arm64-darwin.macho-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
modified: stub/tmp/arm64-linux.shlib-init.bin.dump
2017-04-07 08:23:30 -07:00
John Reiser
7c16872a6e
Merge branch 'devel' into jreiser
2017-04-07 08:22:08 -07:00
John Reiser
994c3c3552
Use arm64-linux-objdump-2.25 and arm64-linux-objcopy-2.25
...
modified: Makefile.extra
modified: lzma_d_cf.S
modified: lzma_d_cs.S
2017-04-07 07:20:47 -07:00
John Reiser
c34f496600
Avoid incorrect C4319 by Microsoft (R) C/C++ Optimizing Compiler Version 19.00.24215.1 for x64
...
modified: p_lx_elf.cpp
2017-04-07 05:36:40 -07:00
John Reiser
8bca8629be
Preserve symlink /proc/self/exe by mapping one page into the stack.
...
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/amd64-linux.elf-fold.h
modified: stub/tmp/amd64-linux.elf-fold.map
2017-04-06 23:08:35 -07:00
John Reiser
85fdd579d6
Cleanup PackLinuxElf64amd::defineSymbols(): use is_pie; reduce symbols
...
modified: p_lx_elf.cpp
modified: stub/src/amd64-linux.elf-entry.S
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/amd64-linux.elf-entry.h
modified: stub/amd64-linux.elf-fold.h
modified: stub/tmp/amd64-linux.elf-entry.bin.dump
modified: stub/tmp/amd64-linux.elf-fold.map
2017-04-06 17:22:30 -07:00
John Reiser
e88d2ff88c
Merge branch 'devel' into jreiser
...
modified: ../.appveyor.yml
modified: ../.github/travis_build.sh
modified: Makefile
modified: linker.cpp
modified: p_lx_elf.cpp
modified: packmast.cpp
2017-04-06 14:25:14 -07:00
John Reiser
bdf08baebd
O_BINFO
...
modified: stub/amd64-darwin.macho-entry.h
modified: stub/amd64-linux.elf-entry.h
modified: stub/amd64-linux.elf-fold.h
modified: stub/arm64-linux.elf-entry.h
modified: stub/i386-bsd.elf-entry.h
modified: stub/i386-darwin.macho-entry.h
modified: stub/i386-linux.elf-entry.h
modified: stub/i386-linux.elf-fold.h
modified: stub/i386-netbsd.elf-entry.h
modified: stub/mips.r3000-linux.elf-fold.h
modified: stub/mipsel.r3000-linux.elf-fold.h
modified: stub/powerpc-darwin.macho-entry.h
modified: stub/powerpc-linux.elf-entry.h
modified: stub/powerpc-linux.elf-fold.h
modified: stub/powerpc64le-darwin.macho-entry.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/src/amd64-darwin.macho-entry.S
modified: stub/src/amd64-linux.elf-entry.S
modified: stub/src/amd64-linux.elf-fold.S
modified: stub/src/arch/powerpc/32/ppc_regs.h
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/i386-bsd.elf-entry.S
modified: stub/src/i386-darwin.macho-entry.S
modified: stub/src/i386-linux.elf-entry.S
modified: stub/src/i386-linux.elf-fold.S
modified: stub/src/mipsel.r3000-linux.elf-fold.S
modified: stub/src/powerpc-darwin.macho-entry.S
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc-linux.elf-main.c
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-main.c
modified: stub/tmp/amd64-darwin.macho-entry.bin.dump
modified: stub/tmp/amd64-linux.elf-entry.bin.dump
modified: stub/tmp/amd64-linux.elf-fold.map
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
modified: stub/tmp/i386-bsd.elf-entry.bin.dump
modified: stub/tmp/i386-darwin.macho-entry.bin.dump
modified: stub/tmp/i386-linux.elf-entry.bin.dump
modified: stub/tmp/i386-linux.elf-fold.map
modified: stub/tmp/i386-netbsd.elf-entry.bin.dump
modified: stub/tmp/powerpc-darwin.macho-entry.bin.dump
modified: stub/tmp/powerpc-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc-linux.elf-fold.map
modified: stub/tmp/powerpc64le-darwin.macho-entry.bin.dump
modified: stub/tmp/powerpc64le-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2017-04-06 14:22:47 -07:00
John Reiser
3dcdd25177
re-work -fpie for amd64
...
modified: stub/src/amd64-linux.elf-main.c
2017-04-06 14:22:05 -07:00
John Reiser
491e8640b2
is_pie; O_BINFO; remove LUNMP000, LUNMP001
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2017-04-06 14:15:07 -07:00
John Reiser
b23b7ef85e
DT_FLAGS_1, DF_1_PIE
...
modified: p_elf_enum.h
2017-04-06 14:13:02 -07:00
John Reiser
b167374f13
R_PPC64_ADDR32
...
modified: linker.cpp
2017-04-06 14:12:29 -07:00
John Reiser
cd1f6e733f
Merge branch 'devel' of https://github.com/upx/upx into devel
2017-04-06 09:05:46 -07:00
John Reiser
d3fc7687b8
Fix valgrind error
...
https://travis-ci.org/upx/upx/jobs/218929378
modified: p_lx_elf.cpp
2017-04-06 09:04:13 -07:00
Markus F.X.J. Oberhumer
17a83d58da
clang-format files.
2017-04-05 17:15:29 +02:00
Markus F.X.J. Oberhumer
18a8e1b6d6
Update Travis.
2017-04-05 17:02:46 +02:00
Markus F.X.J. Oberhumer
2c23cbb359
Silence some compiler warnings.
2017-04-05 17:02:42 +02:00
Markus F.X.J. Oberhumer
cdd58cf757
Use proper UPX types.
2017-04-05 16:31:36 +02:00
John Reiser
a0df325659
Merge branch 'devel' of https://github.com/upx/upx into devel
2017-04-03 20:26:23 -07:00
John Reiser
a59005e836
Elf propagates NX via PT_GNU_STACK (except MIPS stub is too difficult for now)
...
https://github.com/upx/upx/issues/81
modified: ../.github/travis_testsuite_1.sh
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: stub/amd64-linux.elf-entry.h
modified: stub/i386-linux.elf-fold.h
modified: stub/powerpc-linux.elf-fold.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/src/amd64-linux.elf-entry.S
modified: stub/src/i386-linux.elf-fold.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/tmp/amd64-linux.elf-entry.bin.dump
modified: stub/tmp/i386-linux.elf-fold.map
modified: stub/tmp/powerpc-linux.elf-fold.map
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2017-04-03 20:25:57 -07:00
John Reiser
5da6a27e6b
Elf propates NX via PT_GNU_STACK (except MIPS stub is too difficult for now)
...
https://github.com/upx/upx/issues/81
modified: ../.github/travis_testsuite_1.sh
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: stub/amd64-linux.elf-entry.h
modified: stub/i386-linux.elf-fold.h
modified: stub/powerpc-linux.elf-fold.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/src/amd64-linux.elf-entry.S
modified: stub/src/i386-linux.elf-fold.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/tmp/amd64-linux.elf-entry.bin.dump
modified: stub/tmp/i386-linux.elf-fold.map
modified: stub/tmp/powerpc-linux.elf-fold.map
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2017-04-03 20:11:08 -07:00
John Reiser
ef97af71e3
Merge branch 'jreiser' into devel
2017-04-03 12:57:57 -07:00
John Reiser
6ed67f4532
Unpack prefix with appended data; give message, keep backup
...
https://github.com/upx/upx/issues/4
modified: p_mach.cpp
2017-04-03 12:53:27 -07:00
John Reiser
1278d663b4
Merge branch 'jreiser' into devel
2017-04-02 14:56:26 -07:00
John Reiser
0395c7b407
Use stubtools for arm64.
...
modified: stub/Makefile
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/arm64-linux.shlib-init.h
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-fold.map
modified: stub/tmp/arm64-linux.shlib-init.bin.dump
2017-04-02 14:55:39 -07:00
John Reiser
df3d15ffb3
Enable stub for arm64 shlib. Stub is broken, but at least it packs.
...
modified: p_lx_elf.cpp
2017-03-31 20:01:14 -07:00
John Reiser
6f673310d2
powerpc64le: lzma compression support
...
https://github.com/upx/upx/pull/79
Integration based on:
commit c4bde4369f
Author: Thierry Fauck <tfauck@free.fr >
Date: Fri Mar 24 17:39:30 2017 +0100
powerpc64le: lzma compression support
Signed-off-by: Thierry Fauck <tfauck@free.fr >
modified: powerpc64le-darwin.dylib-entry.h
modified: powerpc64le-darwin.macho-entry.h
modified: powerpc64le-linux.elf-entry.h
modified: powerpc64le-linux.kernel.vmlinux.h
modified: src/arch/powerpc/64le/lzma_d.S
modified: tmp/powerpc64le-darwin.dylib-entry.bin.dump
modified: tmp/powerpc64le-darwin.macho-entry.bin.dump
modified: tmp/powerpc64le-linux.elf-entry.bin.dump
modified: tmp/powerpc64le-linux.kernel.vmlinux.bin.dump
2017-03-31 13:42:43 -07:00
John Reiser
978c3eca23
--android-shlib preserves selected Elf64_Shdr
...
https://github.com/upx/upx/issues/65
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2017-03-31 13:26:27 -07:00
John Reiser
20bc848bd6
--android-shlib preserves selected Elf64_Shdr
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2017-03-31 13:24:36 -07:00
John Reiser
ce7f1292dc
Merge branch 'devel' into jreiser
2017-03-31 13:10:08 -07:00
John Reiser
d97ff8bb40
More cleanup
...
modified: p_lx_elf.cpp
2017-03-31 12:57:11 -07:00
John Reiser
8a9b46d82f
Cleanup minor bug in unpack ET_EXE
...
modified: p_lx_elf.cpp
2017-03-31 12:42:14 -07:00
John Reiser
12e5703541
Stronger test and better message for PT_LOAD[0].p_offset != 0
...
https://github.com/upx/upx/issues/80
modified: p_lx_elf.cpp
2017-03-31 12:20:02 -07:00
John Reiser
1b87fc2ee6
DT_INIT restored for -d on --android-shlib
...
modified: p_lx_elf.cpp
2017-03-30 15:55:35 -07:00
John Reiser
ebd0c780a1
Unpacking --android-shlib works except for restoring DT_INIT
...
modified: p_lx_elf.cpp
2017-03-30 11:05:49 -07:00
John Reiser
bd976cd562
Merge branch 'devel' into jreiser
...
modified: packmast.cpp
2017-03-30 10:27:54 -07:00
John Reiser
0e511c3e07
visitAllPackers() lists class names when -D
...
modified: packmast.cpp
2017-03-30 10:23:27 -07:00
John Reiser
300d489408
--android-shlib preserves selected Elf32_Shdr
...
32-bit only for now; also in wrong place for unpacking (-d)
modified: main.cpp
modified: options.h
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2017-03-29 18:31:39 -07:00
John Reiser
024d081167
Fix unpack of ET_DYN
...
https://github.com/upx/upx/issues/73
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2017-03-27 16:49:46 -07:00
John Reiser
348173d3f1
Fix editing glitch
...
modified: p_lx_elf.cpp
2017-03-27 16:42:26 -07:00
John Reiser
23e3814f8a
Fix unpacking of ET_DYN
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2017-03-27 16:10:12 -07:00
John Reiser
b818e2c4b8
arm64 (aarch64)
...
Tested and working: nrv2b and nrv2e for ET_EXE on linux.
NOT TESTED: lzma, ET_DYN on linux; any Mach-O
modified: bele.h
modified: conf.h
modified: filter/ct.h
modified: filteri.cpp
modified: linker.cpp
modified: linker.h
modified: miniacc.h
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: packmast.cpp
modified: stub/Makefile
modified: stub/arm64-darwin.macho-entry.h
modified: stub/arm64-darwin.macho-fold.h
new file: stub/arm64-linux.elf-entry.h
new file: stub/arm64-linux.elf-fold.h
new file: stub/arm64-linux.shlib-init.h
new file: stub/src/arch/arm64/v8/Makefile.extra
modified: stub/src/arch/arm64/v8/lzma_d-arm.S
modified: stub/src/arch/arm64/v8/lzma_d.S
modified: stub/src/arch/arm64/v8/lzma_d_cf.S
new file: stub/src/arch/arm64/v8/lzma_d_cs.S
modified: stub/src/arch/arm64/v8/macros.S
renamed: stub/src/arch/arm64/v8/nrv2b_d8.S -> stub/src/arch/arm64/v8/nrv2b_d32.S
renamed: stub/src/arch/arm64/v8/nrv2d_d8.S -> stub/src/arch/arm64/v8/nrv2d_d32.S
modified: stub/src/arch/arm64/v8/nrv2e_d32.S
deleted: stub/src/arch/arm64/v8/nrv2e_d8.S
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/src/arm64-darwin.macho-fold.S
new file: stub/src/arm64-linux.elf-entry.S
new file: stub/src/arm64-linux.elf-fold.S
new file: stub/src/arm64-linux.elf-fold.lds
new file: stub/src/arm64-linux.elf-main.c
new file: stub/src/arm64-linux.shlib-init.S
modified: stub/src/include/linux.h
modified: stub/tmp/arm64-darwin.macho-entry.bin.dump
modified: stub/tmp/arm64-darwin.macho-fold.map
new file: stub/tmp/arm64-linux.elf-entry.bin.dump
new file: stub/tmp/arm64-linux.elf-fold.map
new file: stub/tmp/arm64-linux.shlib-init.bin.dump
2017-03-26 13:10:26 -07:00
John Reiser
6adb3dc142
BUILD_TYPE_DEBUG ?= 0
2017-03-26 13:03:49 -07:00
John Reiser
0e154cc759
Hint when need DT_INIT for shared library
...
https://github.com/upx/upx/issues/74
modified: p_lx_elf.cpp
2017-03-25 20:22:04 -07:00
John Reiser
9dce8d9bce
Separate from amd64/bxx.S
...
modified: stub/src/arch/amd64/bxx.S
2017-03-25 20:14:48 -07:00
John Reiser
0aa3b9c487
Revise comment
...
modified: stub/src/arch/amd64/bxx.S
2017-03-25 20:10:50 -07:00
John Reiser
dc7ab3ed30
sync git branch
...
modified: stub/amd64-win64.pep.h
modified: stub/tmp/amd64-win64.pep.bin.dump
2017-03-25 20:08:29 -07:00
John Reiser
254259b354
Fix comment
...
modified: stub/src/arch/amd64/bxx.S
2017-03-25 20:05:32 -07:00
John Reiser
9651c70efd
Revert powerpc-linux.elf-fold.S
...
modified: stub/src/powerpc-linux.elf-fold.S
2017-03-25 17:51:32 -07:00
John Reiser
5840190ed5
Revert xstrip.py
...
modified: stub/scripts/xstrip.py
2017-03-25 17:50:06 -07:00
John Reiser
a807b88694
BUILD_TYPE_DEBUG ?= 1
...
modified: Makefile
2017-03-25 17:40:24 -07:00
John Reiser
0db82e09e9
Suggest fix for missing DT_INIT in shared library.
...
modified: p_lx_elf.cpp
2017-03-25 17:39:47 -07:00
John Reiser
e5865f171a
xstrip.py: *.bindump was unused; clear e_shnum, e_shstrndx
...
Also allow other compilers for powerpc64le and arm64: loosen checking.
modified: stub/Makefile
modified: stub/scripts/xstrip.py
modified: stub/amd64-darwin.dylib-entry.h
modified: stub/amd64-darwin.macho-entry.h
modified: stub/amd64-linux.elf-entry.h
modified: stub/amd64-linux.kernel.vmlinux.h
modified: stub/amd64-linux.shlib-init.h
modified: stub/amd64-win64.pep.h
modified: stub/arm.v4a-linux.elf-entry.h
modified: stub/arm.v4a-wince.pe.h
modified: stub/arm.v4t-wince.pe.h
modified: stub/arm.v5a-darwin.macho-entry.h
modified: stub/arm.v5a-linux.elf-entry.h
modified: stub/arm.v5a-linux.kernel.vmlinux.h
modified: stub/arm.v5a-linux.kernel.vmlinuz.h
modified: stub/arm.v5a-linux.shlib-init.h
modified: stub/arm.v5t-linux.shlib-init.h
modified: stub/arm64-darwin.macho-entry.h
modified: stub/armeb.v4a-linux.elf-entry.h
modified: stub/armeb.v5a-linux.kernel.vmlinux.h
modified: stub/i086-dos16.com.h
modified: stub/i086-dos16.exe.h
modified: stub/i086-dos16.sys.h
modified: stub/i386-bsd.elf-entry.h
modified: stub/i386-bsd.elf.execve-entry.h
modified: stub/i386-darwin.dylib-entry.h
modified: stub/i386-darwin.macho-entry.h
modified: stub/i386-dos32.djgpp2.h
modified: stub/i386-dos32.tmt.h
modified: stub/i386-dos32.watcom.le.h
modified: stub/i386-linux.elf-entry.h
modified: stub/i386-linux.elf.execve-entry.h
modified: stub/i386-linux.elf.interp-entry.h
modified: stub/i386-linux.elf.shell-entry.h
modified: stub/i386-linux.kernel.vmlinux.h
modified: stub/i386-linux.kernel.vmlinuz.h
modified: stub/i386-linux.shlib-init.h
modified: stub/i386-netbsd.elf-entry.h
modified: stub/i386-win32.pe.h
modified: stub/m68k-atari.tos.h
modified: stub/mips.r3000-linux.elf-entry.h
modified: stub/mipsel.r3000-linux.elf-entry.h
modified: stub/mipsel.r3000-ps1.h
modified: stub/powerpc-darwin.dylib-entry.h
modified: stub/powerpc-darwin.macho-entry.h
modified: stub/powerpc-linux.elf-entry.h
modified: stub/powerpc-linux.kernel.vmlinux.h
modified: stub/powerpc64le-darwin.dylib-entry.h
modified: stub/powerpc64le-darwin.macho-entry.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.kernel.vmlinux.h
2017-03-25 17:09:16 -07:00
John Reiser
166d198dcb
Default BUILD_TYPE_DEBUG
...
modified: Makefile
2017-03-25 16:54:26 -07:00
John Reiser
445795f2ec
Sync testsuite for 32-bit powerpc lzma
...
modified: ../.github/travis_testsuite_1.sh
2017-03-25 16:50:38 -07:00
John Reiser
6be4a87dac
Revert "testsuite "set -x""
...
This reverts commit fbe4d287c7 .
modified: .github/travis_testsuite_1.sh
2017-03-25 16:38:30 -07:00
John Reiser
17c47053d6
Revert amd64/bxx.S to reduce churn of testsuite
...
modified: stub/src/arch/amd64/bxx.S
modified: stub/amd64-darwin.dylib-entry.h
modified: stub/amd64-darwin.macho-entry.h
modified: stub/amd64-darwin.macho-fold.h
modified: stub/amd64-linux.elf-fold.h
modified: stub/amd64-linux.shlib-init.h
modified: stub/amd64-win64.pep.h
2017-03-25 16:34:01 -07:00
John Reiser
b4e18f7521
Remove debugging straggler.
...
modified: src/powerpc-linux.elf-fold.S
modified: powerpc-linux.elf-fold.h
modified: tmp/powerpc-linux.elf-fold.map
2017-03-25 15:48:18 -07:00
John Reiser
fbe4d287c7
testsuite "set -x"
...
modified: ../.github/travis_testsuite_1.sh
2017-03-25 14:52:08 -07:00
John Reiser
543fa3ae79
Revert PackLinuxElf32::unpack() for decompression of armeb-linux.elf/upx-3.91
...
Conflicting with https://github.com/upx/upx/issues/73
modified: p_lx_elf.cpp
2017-03-25 12:52:20 -07:00
John Reiser
7cf855413c
Sync testuite checksums (powerpc)
...
modified: ../.github/travis_testsuite_1.sh
2017-03-25 09:12:56 -07:00
John Reiser
f5d65dc0bc
arm64 unfilter
...
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/arm64-linux.elf-fold.h
modified: stub/tmp/arm64-linux.elf-fold.map
2017-03-24 13:55:54 -07:00
John Reiser
2f6211a1d9
xstrip.py slight improvement for powerpc64le and arm64
...
modified: stub/scripts/xstrip.py
2017-03-24 10:54:56 -07:00
John Reiser
513a57330a
xstrip.py: *.bindump was unused; clear e_shnum, e_shstrndx
...
modified: stub/scripts/xstrip.py
modified: stub/Makefile
modified: stub/amd64-darwin.dylib-entry.h
modified: stub/amd64-darwin.macho-entry.h
modified: stub/amd64-linux.elf-entry.h
modified: stub/amd64-linux.kernel.vmlinux.h
modified: stub/amd64-linux.shlib-init.h
modified: stub/amd64-win64.pep.h
modified: stub/arm.v4a-linux.elf-entry.h
modified: stub/arm.v4a-wince.pe.h
modified: stub/arm.v4t-wince.pe.h
modified: stub/arm.v5a-darwin.macho-entry.h
modified: stub/arm.v5a-linux.elf-entry.h
modified: stub/arm.v5a-linux.kernel.vmlinux.h
modified: stub/arm.v5a-linux.kernel.vmlinuz.h
modified: stub/arm.v5a-linux.shlib-init.h
modified: stub/arm.v5t-linux.shlib-init.h
modified: stub/arm64-darwin.macho-entry.h
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.shlib-init.h
modified: stub/armeb.v4a-linux.elf-entry.h
modified: stub/armeb.v5a-linux.kernel.vmlinux.h
modified: stub/i086-dos16.com.h
modified: stub/i086-dos16.exe.h
modified: stub/i086-dos16.sys.h
modified: stub/i386-bsd.elf-entry.h
modified: stub/i386-bsd.elf.execve-entry.h
modified: stub/i386-darwin.dylib-entry.h
modified: stub/i386-darwin.macho-entry.h
modified: stub/i386-dos32.djgpp2.h
modified: stub/i386-dos32.tmt.h
modified: stub/i386-dos32.watcom.le.h
modified: stub/i386-linux.elf-entry.h
modified: stub/i386-linux.elf.execve-entry.h
modified: stub/i386-linux.elf.interp-entry.h
modified: stub/i386-linux.elf.shell-entry.h
modified: stub/i386-linux.kernel.vmlinux.h
modified: stub/i386-linux.kernel.vmlinuz.h
modified: stub/i386-linux.shlib-init.h
modified: stub/i386-netbsd.elf-entry.h
modified: stub/i386-win32.pe.h
modified: stub/m68k-atari.tos.h
modified: stub/mips.r3000-linux.elf-entry.h
modified: stub/mipsel.r3000-linux.elf-entry.h
modified: stub/mipsel.r3000-ps1.h
modified: stub/powerpc-darwin.dylib-entry.h
modified: stub/powerpc-darwin.macho-entry.h
modified: stub/powerpc-linux.elf-entry.h
modified: stub/powerpc-linux.kernel.vmlinux.h
modified: stub/powerpc64le-darwin.dylib-entry.h
modified: stub/powerpc64le-darwin.macho-entry.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.kernel.vmlinux.h
2017-03-24 09:26:40 -07:00
John Reiser
715ddf0620
arm64 hacking
...
modified: stub/src/arch/arm64/v8/macros.S
new file: stub/src/arch/arm64/v8/Makefile.extra
modified: stub/src/arch/arm64/v8/lzma_d-arm.S
modified: stub/src/arch/arm64/v8/lzma_d.S
modified: stub/src/arch/arm64/v8/lzma_d_cf.S
new file: stub/src/arch/arm64/v8/lzma_d_cs.S
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/arm64-darwin.macho-entry.h
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.shlib-init.h
modified: stub/tmp/arm64-darwin.macho-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
modified: stub/tmp/arm64-linux.shlib-init.bin.dump
2017-03-23 20:32:41 -07:00
John Reiser
6bb31e276e
Merge branch 'devel' into jreiser
2017-03-23 13:27:09 -07:00
John Reiser
b10f1df49f
Merge branch 'devel' of https://github.com/upx/upx into devel
2017-03-23 13:09:59 -07:00
John Reiser
f999519b13
Sync stubs for 32-bit powerpc
...
modified: stub/src/arch/powerpc/32/Makefile.extra
modified: stub/src/arch/powerpc/32/lzma_d_cf.S
modified: stub/src/arch/powerpc/32/lzma_d_cs.S
modified: stub/powerpc-darwin.dylib-entry.h
modified: stub/powerpc-darwin.macho-entry.h
modified: stub/powerpc-linux.elf-entry.h
modified: stub/powerpc-linux.kernel.vmlinux.h
2017-03-23 13:08:36 -07:00
Markus F.X.J. Oberhumer
aedbf02830
p_lx_elf.cpp: silence a clang-4.0 compilation warning.
2017-03-23 17:43:23 +01:00
John Reiser
bd5479b250
arm64 omit "dc zva," while valgrind complains
...
modified: src/arm64-linux.elf-entry.S
modified: src/arm64-linux.elf-fold.S
modified: arm64-linux.elf-entry.h
modified: arm64-linux.elf-fold.h
modified: tmp/arm64-linux.elf-entry.bin.dump
modified: tmp/arm64-linux.elf-fold.map
2017-03-23 09:12:35 -07:00
Markus F.X.J. Oberhumer
9d14715652
Update Travis.
2017-03-23 13:00:42 +01:00
Thierry Fauck
72156fcf1b
powerpc64le: support for -fpie compiled binaries
...
Signed-off-by: Thierry Fauck <tfauck@free.fr >
modified: powerpc64le-linux.elf-fold.h
modified: src/powerpc64le-linux.elf-fold.S
modified: src/powerpc64le-linux.elf-main.c
modified: tmp/powerpc64le-linux.elf-fold.map
2017-03-23 11:21:50 +01:00
Markus F.X.J. Oberhumer
1c6eab00d1
Update Travis.
2017-03-23 04:20:29 +01:00
Markus F.X.J. Oberhumer
f9738c5b55
New ACC version.
2017-03-23 01:17:33 +01:00
John Reiser
3b63083619
Cleanup powerpc64 stubs
...
modified: stub/src/powerpc64le-darwin.macho-fold.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/powerpc64le-darwin.macho-fold.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/tmp/powerpc64le-darwin.macho-fold.map
modified: stub/tmp/powerpc64le-linux.elf-entry.bin.dump
2017-03-22 16:50:52 -07:00
John Reiser
d5d7d8bc84
arm64 hacking
...
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/arm64-linux.elf-main.c
modified: stub/arm64-linux.elf-fold.h
modified: stub/tmp/arm64-linux.elf-fold.map
2017-03-22 16:45:09 -07:00
John Reiser
f26118cf5a
lzma for powerpc64le: -Os needs _restgpr0_*
...
modified: stub/src/arch/powerpc/64le/Makefile.extra
modified: stub/src/arch/powerpc/64le/ppc_regs.h
modified: stub/src/powerpc64-savegpr0.S
modified: stub/powerpc64le-darwin.dylib-entry.h
modified: stub/powerpc64le-darwin.macho-entry.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.kernel.vmlinux.h
modified: stub/src/arch/powerpc/64le/lzma_d_cf.S
modified: stub/src/arch/powerpc/64le/lzma_d_cs.S
modified: stub/tmp/powerpc64le-darwin.dylib-entry.bin.dump
modified: stub/tmp/powerpc64le-darwin.macho-entry.bin.dump
modified: stub/tmp/powerpc64le-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc64le-linux.kernel.vmlinux.bin.dump
2017-03-22 14:17:40 -07:00
John Reiser
5d6c4b475c
preloc
...
modified: stub/src/arm64-linux.elf-main.c
2017-03-22 09:03:13 -07:00
John Reiser
2c4ef392f6
arm64-linux hacking; returns from upx_main(), only launch remains!
...
modified: stub/src/arch/arm64/v8/lzma_d.S
modified: stub/src/arch/arm64/v8/nrv2b_d32.S
modified: stub/src/arch/arm64/v8/nrv2d_d32.S
modified: stub/src/arch/arm64/v8/nrv2e_d32.S
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/arm64-linux.elf-main.c
modified: stub/arm64-darwin.macho-entry.h
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/arm64-linux.shlib-init.h
modified: stub/tmp/arm64-darwin.macho-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-fold.map
modified: stub/tmp/arm64-linux.shlib-init.bin.dump
2017-03-21 21:54:49 -07:00
John Reiser
2a128fe772
Work on arm64 decompression
...
renamed: stub/src/arch/arm64/v8/nrv2b_d8.S -> stub/src/arch/arm64/v8/nrv2b_d32.S
renamed: stub/src/arch/arm64/v8/nrv2d_d8.S -> stub/src/arch/arm64/v8/nrv2d_d32.S
modified: stub/src/arch/arm64/v8/nrv2e_d32.S
deleted: stub/src/arch/arm64/v8/nrv2e_d8.S
modified: stub/src/arm64-darwin.macho-entry.S
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/src/arm64-linux.shlib-init.S
modified: stub/arm64-darwin.macho-entry.h
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/arm64-linux.shlib-init.h
modified: stub/tmp/arm64-darwin.macho-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-fold.map
modified: stub/tmp/arm64-linux.shlib-init.bin.dump
2017-03-20 21:23:15 -07:00
John Reiser
bb7d3ca3a1
Fix PackLinuxElf32::unpack() for shared library?
...
modified: p_lx_elf.cpp
2017-03-20 21:21:46 -07:00
John Reiser
a2bdba7eda
arm64 cache flogging at initial move
...
modified: stub/arm64-linux.elf-entry.h
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
2017-03-14 21:36:18 -07:00
John Reiser
e8aabc9980
R_AARCH64_CONDBR19
...
modified: linker.cpp
2017-03-14 21:35:01 -07:00
John Reiser
9f554a14fd
ARM64 hacking
...
modified: p_lx_elf.cpp
modified: stub/src/arch/arm64/v8/macros.S
modified: stub/src/arm64-darwin.macho-fold.S
modified: stub/src/arm64-linux.elf-entry.S
modified: stub/arm64-darwin.macho-entry.h
modified: stub/arm64-darwin.macho-fold.h
modified: stub/arm64-linux.elf-entry.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/tmp/arm64-darwin.macho-fold.map
modified: stub/tmp/arm64-linux.elf-entry.bin.dump
modified: stub/tmp/arm64-linux.elf-fold.map
2017-03-14 20:08:28 -07:00
John Reiser
68a2b91ccb
arm64 filter, relocation, defineSymbols
...
modified: Makefile
modified: bele.h
modified: filter/ct.h
modified: filteri.cpp
modified: linker.cpp
modified: miniacc.h
modified: p_lx_elf.cpp
modified: stub/arm64-linux.elf-entry.h
modified: stub/src/arm64-linux.elf-entry.S
2017-03-05 21:05:13 -08:00
John Reiser
4089cc6e6f
arm64-linux compiles
...
modified: conf.h
modified: linker.cpp
modified: linker.h
modified: p_elf_enum.h
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: packmast.cpp
modified: stub/Makefile
new file: stub/arm64-linux.shlib-init.h
new file: stub/src/arm64-linux.shlib-init.S
new file: stub/tmp/arm64-linux.elf-entry.bin.dump
new file: stub/tmp/arm64-linux.elf-fold.map
new file: stub/tmp/arm64-linux.shlib-init.bin.dump
2017-03-05 18:07:29 -08:00
John Reiser
4e8848eeca
Merge branch 'devel' into jreiser
...
Conflicts:
src/stub/amd64-win64.pep.h
src/stub/powerpc-linux.elf-entry.h
src/stub/powerpc-linux.elf-fold.h
src/stub/src/amd64-win64.pep.S
src/stub/src/arch/powerpc/32/ppc_regs.h
src/stub/src/arch/powerpc/64le/lzma_d.S
src/stub/src/powerpc-linux.elf-entry.S
src/stub/src/powerpc64le-darwin.dylib-entry.S
src/stub/src/powerpc64le-darwin.macho-entry.S
src/stub/src/powerpc64le-linux.elf-entry.S
src/stub/src/powerpc64le-linux.kernel.vmlinux.S
src/stub/tmp/amd64-win64.pep.bin.dump
src/stub/tmp/powerpc-linux.elf-entry.bin.dump
src/stub/tmp/powerpc-linux.elf-fold.map
modified: ../../.github/travis_testsuite_1.sh
modified: ../p_lx_elf.cpp
modified: ../p_unix.cpp
modified: ../p_unix.h
modified: amd64-win64.pep.h
modified: arm.v4a-linux.elf-fold.h
modified: arm.v5a-linux.elf-fold.h
modified: armeb.v4a-linux.elf-fold.h
modified: powerpc-darwin.dylib-entry.h
modified: powerpc-darwin.macho-entry.h
copied: powerpc-darwin.dylib-entry.h -> powerpc-linux.elf-entry.h
modified: powerpc-linux.elf-fold.h
modified: powerpc-linux.kernel.vmlinux.h
modified: powerpc64le-linux.elf-fold.h
modified: src/amd64-win64.pep.S
modified: src/arch/powerpc/32/bxx.S
modified: src/arch/powerpc/32/lzma_d.S
modified: src/arch/powerpc/32/nrv2d_d.S
modified: src/arch/powerpc/32/nrv2e_d.S
modified: src/arch/powerpc/32/ppc_regs.h
modified: src/arch/powerpc/64le/bxx.S
modified: src/arch/powerpc/64le/lzma_d.S
modified: src/arch/powerpc/64le/nrv2b_d.S
modified: src/arch/powerpc/64le/nrv2d_d.S
modified: src/arch/powerpc/64le/nrv2e_d.S
modified: src/arm.v4a-linux.elf-fold.S
modified: src/powerpc-darwin.macho-fold.S
modified: src/powerpc-linux.elf-entry.S
modified: src/powerpc-linux.elf-fold.S
modified: src/powerpc64le-darwin.dylib-entry.S
modified: src/powerpc64le-darwin.macho-entry.S
modified: src/powerpc64le-darwin.macho-fold.S
modified: src/powerpc64le-linux.elf-entry.S
modified: src/powerpc64le-linux.elf-fold.S
modified: src/powerpc64le-linux.kernel.vmlinux.S
modified: tmp/amd64-win64.pep.bin.dump
modified: tmp/arm.v4a-linux.elf-fold.map
modified: tmp/arm.v5a-linux.elf-fold.map
modified: tmp/armeb.v4a-linux.elf-fold.map
modified: tmp/powerpc-darwin.dylib-entry.bin.dump
modified: tmp/powerpc-darwin.macho-entry.bin.dump
modified: tmp/powerpc-linux.elf-entry.bin.dump
modified: tmp/powerpc-linux.elf-fold.map
modified: tmp/powerpc-linux.kernel.vmlinux.bin.dump
2017-03-01 08:14:13 -08:00
John Reiser
8c6133c115
Decompression stubs for arm64-linux (aarch)
...
modified: stub/Makefile
modified: stub/arm64-darwin.macho-entry.h
modified: stub/arm64-darwin.macho-fold.h
new file: stub/arm64-linux.elf-entry.h
new file: stub/arm64-linux.elf-fold.h
modified: stub/scripts/xstrip.py
modified: stub/src/arch/arm64/v8/macros.S
modified: stub/src/arch/arm64/v8/nrv2b_d8.S
modified: stub/src/arch/arm64/v8/nrv2d_d8.S
modified: stub/src/arch/arm64/v8/nrv2e_d8.S
new file: stub/src/arm64-linux.elf-entry.S
new file: stub/src/arm64-linux.elf-fold.S
new file: stub/src/arm64-linux.elf-fold.lds
new file: stub/src/arm64-linux.elf-main.c
modified: stub/src/include/linux.h
2017-03-01 05:47:03 -08:00
John Reiser
483db31acd
arm: Preserve 8-byte alignment of stack pointer
...
https://github.com/upx/upx/issues/60 (partial)
modified: stub/src/arm.v4a-linux.elf-fold.S
modified: ../.github/travis_testsuite_1.sh
modified: stub/arm.v4a-linux.elf-fold.h
modified: stub/arm.v5a-linux.elf-fold.h
modified: stub/armeb.v4a-linux.elf-fold.h
modified: stub/tmp/arm.v4a-linux.elf-fold.map
modified: stub/tmp/arm.v5a-linux.elf-fold.map
modified: stub/tmp/armeb.v4a-linux.elf-fold.map
2017-02-14 20:36:45 -08:00
John Reiser
35dae3dab7
PowerPC 32-bit lzma stub defends against omitted linkage area.
...
https://github.com/upx/upx/issues/60
modified: stub/src/arch/powerpc/32/lzma_d.S
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/powerpc-darwin.dylib-entry.h
modified: stub/powerpc-darwin.macho-entry.h
[WTF?] copied: stub/powerpc-darwin.dylib-entry.h -> stub/powerpc-linux.elf-entry.h
modified: stub/powerpc-linux.elf-fold.h
modified: stub/powerpc-linux.kernel.vmlinux.h
modified: stub/tmp/powerpc-linux.elf-fold.map
modified: stub/tmp/powerpc-darwin.dylib-entry.bin.dump
modified: stub/tmp/powerpc-darwin.macho-entry.bin.dump
modified: stub/tmp/powerpc-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc-linux.kernel.vmlinux.bin.dump
modified: ../.github/travis_testsuite_1.sh
2017-02-12 16:23:57 -08:00
John Reiser
8232aedf78
unpackExtent() segregates rewrite() from write()
...
Fix the reported output file size when un-compressing.
Part of https://github.com/upx/upx/issues/60
modified: p_lx_elf.cpp
modified: p_unix.cpp
modified: p_unix.h
2017-02-11 15:26:27 -08:00
László Molnár
d30a0a2e67
updated filter invocation in win64/pe
2017-02-06 14:31:16 +01:00
John Reiser
d913fe508f
Remove debugging jig
...
modified: ../.github/travis_testsuite_1.sh
modified: stub/powerpc-linux.elf-fold.h
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/tmp/powerpc-linux.elf-fold.map
2017-02-05 15:41:52 -08:00
John Reiser
4029903301
Sync testsuite
...
modified: ../.github/travis_testsuite_1.sh
2017-02-05 15:14:11 -08:00
John Reiser
5db7e826d3
Find and use AT_PAGESZ; forward from -entry to -fold.
...
Cleanup the runtime choice of PAGE_SIZE 4K or 64K
modified: stub/powerpc-linux.elf-entry.h
modified: stub/powerpc-linux.elf-fold.h
modified: stub/src/arch/powerpc/32/ppc_regs.h
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
modified: stub/tmp/powerpc-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc-linux.elf-fold.map
2017-02-05 15:02:31 -08:00
John Reiser
7f3e7da7c7
Stubs LZMA_DEC00 and LZMA_ELF00 fall through; no "+80C" alignment.
...
https://github.com/upx/upx/issues/60 (partial)
addStubEntrySections() and getDecompressorSections()
modified: p_lx_elf.cpp
modified: p_mach.cpp
modified: packer_c.cpp
2017-02-05 14:52:09 -08:00
John Reiser
93cefde8fc
Allow __PAGEZERO.vmsize to be 0x1000 on x86_64, as for "go"-language.
...
https://github.com/upx/upx/issues/59
modified: p_mach.cpp
modified: p_mach.h
2017-02-05 14:50:08 -08:00
John Reiser
02e7981e10
Merge and fix conflics
...
Conflicts:
src/stub/src/arch/powerpc/64le/lzma_d.S
src/stub/src/powerpc64le-darwin.dylib-entry.S
src/stub/src/powerpc64le-darwin.macho-entry.S
src/stub/src/powerpc64le-linux.elf-entry.S
src/stub/src/powerpc64le-linux.kernel.vmlinux.S
modified: stub/src/arch/powerpc/32/lzma_d.S
2017-02-05 14:41:15 -08:00
John Reiser
0ecec10af0
Sync stubs and testsuite.
...
modified: ../.github/travis_testsuite_1.sh
modified: stub/powerpc-linux.elf-entry.h
2017-02-05 14:26:18 -08:00
John Reiser
00b8cba987
typos
...
modified: stub/src/powerpc-linux.elf-entry.S
2017-02-05 14:18:05 -08:00
John Reiser
8486bff918
PowerPC compare instructions: make cr0 explicit, put width ('w' or 'd') into mnemonic.
...
Easier to understand, caught a couple bugs in width.
modified: stub/powerpc-linux.elf-entry.h
modified: stub/powerpc64le-darwin.dylib-entry.h
modified: stub/powerpc64le-darwin.macho-entry.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/powerpc64le-linux.kernel.vmlinux.h
modified: stub/src/arch/powerpc/32/bxx.S
modified: stub/src/arch/powerpc/32/nrv2d_d.S
modified: stub/src/arch/powerpc/32/nrv2e_d.S
modified: stub/src/arch/powerpc/64le/bxx.S
modified: stub/src/arch/powerpc/64le/lzma_d.S
modified: stub/src/arch/powerpc/64le/nrv2b_d.S
modified: stub/src/arch/powerpc/64le/nrv2d_d.S
modified: stub/src/arch/powerpc/64le/nrv2e_d.S
modified: stub/src/powerpc-darwin.macho-fold.S
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc64le-darwin.dylib-entry.S
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-darwin.macho-fold.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.kernel.vmlinux.S
2017-02-05 14:00:19 -08:00
John Reiser
5305eb5b8a
Sync stubs
...
modified: stub/amd64-darwin.dylib-entry.h
modified: stub/amd64-darwin.macho-entry.h
modified: stub/amd64-darwin.macho-fold.h
modified: stub/amd64-linux.elf-fold.h
modified: stub/amd64-linux.shlib-init.h
modified: stub/amd64-win64.pep.h
modified: stub/powerpc-linux.elf-entry.h
modified: stub/powerpc-linux.elf-fold.h
modified: stub/powerpc64le-darwin.dylib-entry.h
modified: stub/powerpc64le-darwin.macho-entry.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.kernel.vmlinux.h
modified: stub/src/arch/powerpc/64le/lzma_d.S
modified: stub/src/powerpc64le-darwin.dylib-entry.S
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.kernel.vmlinux.S
modified: stub/tmp/amd64-win64.pep.bin.dump
modified: stub/tmp/powerpc-linux.elf-entry.bin.dump
modified: stub/tmp/powerpc-linux.elf-fold.map
2017-02-05 13:37:01 -08:00
John Reiser
377a3bb7de
More register definitions
...
modified: stub/src/arch/powerpc/32/ppc_regs.h
2017-02-05 13:32:54 -08:00
John Reiser
5a47e8d2c6
Find and use AT_PAGESZ
...
modified: stub/src/powerpc-linux.elf-entry.S
modified: stub/src/powerpc-linux.elf-fold.S
2017-02-05 13:31:17 -08:00
John Reiser
71f4cd7c85
Fix register usage conventions for amd64 unfilter
...
modified: stub/src/amd64-win64.pep.S
modified: stub/src/arch/amd64/bxx.S
2017-02-05 13:29:59 -08:00
John Reiser
f7751684af
Stubs LZMA_DEC00 and LZMA_ELF00 fall through; no "+80C" alignment.
...
addStubEntrySections() and getDecompressorSections()
modified: p_lx_elf.cpp
modified: p_mach.cpp
modified: packer_c.cpp
2017-02-05 13:26:02 -08:00
John Reiser
59df1d39b2
Merge pull request #61 from tfauck/devel-thf
...
Following #51 pull with rerequested changes
2017-02-04 09:10:24 -08:00
John Reiser
7e5933e6a0
Merge branch 'devel' into devel-thf
2017-02-04 08:42:10 -08:00
John Reiser
2cefd34bb7
Allow __PAGEZERO.vmsize to be 0x1000 on x86_64, as for "go"-language.
...
https://github.com/upx/upx/issues/59
modified: p_mach.cpp
modified: p_mach.h
2017-02-03 15:12:40 -08:00
Thierry Fauck
eac891dc3a
Typo in .bss bzeroing
...
Rebuild of powerpc64le stubs
Signed-off-by: Thierry Fauck <tfauck@free.fr >
modified: stub/powerpc64le-darwin.dylib-entry.h
modified: stub/powerpc64le-darwin.macho-entry.h
modified: stub/powerpc64le-linux.elf-entry.h
modified: stub/powerpc64le-linux.elf-fold.h
modified: stub/powerpc64le-linux.kernel.vmlinux.h
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.elf-main.c
modified: stub/tmp/powerpc64le-linux.elf-fold.map
2017-02-03 10:57:05 +01:00
Thierry Fauck
abd3599408
Explicitely specify cmp instructions to be 32 bits or 64bits on powerpc
...
(Thanks to John Reiser).
Signed-off-by: Thierry Fauck <tfauck@free.fr >
modified: src/arch/powerpc/32/bxx.S
modified: src/arch/powerpc/32/lzma_d.S
modified: src/arch/powerpc/64le/bxx.S
modified: src/arch/powerpc/64le/lzma_d.S
modified: src/arch/powerpc/64le/nrv2b_d.S
modified: src/arch/powerpc/64le/nrv2d_d.S
modified: src/arch/powerpc/64le/nrv2e_d.S
modified: src/powerpc64le-darwin.dylib-entry.S
modified: src/powerpc64le-darwin.macho-entry.S
modified: src/powerpc64le-darwin.macho-fold.S
modified: src/powerpc64le-linux.elf-entry.S
modified: src/powerpc64le-linux.elf-fold.S
modified: src/powerpc64le-linux.kernel.vmlinux.S
2017-02-03 10:55:14 +01:00
John Reiser
1bcd259c00
Merge branch 'devel' of https://github.com/upx/upx into devel
2017-02-01 17:17:31 -08:00
Thierry Fauck
c4e835266c
Typo in .bss bzeroing
...
Signed-off-by: Thierry Fauck <tfauck@free.fr >
modified: src/stub/powerpc64le-linux.elf-fold.h
modified: src/stub/src/powerpc64le-linux.elf-fold.S
modified: src/stub/src/powerpc64le-linux.elf-main.c
modified: src/stub/tmp/powerpc64le-linux.elf-fold.map
2017-01-30 18:53:34 +01:00
Thierry Fauck
685953f6a5
Explicitely specify cmp instructions to be 32 bits or 64bits on powerpc
...
Signed-off-by: Thierry Fauck <tfauck@free.fr >
modified: stub/src/arch/powerpc/32/bxx.S
modified: stub/src/arch/powerpc/64le/bxx.S
modified: stub/src/arch/powerpc/64le/lzma_d.S
modified: stub/src/arch/powerpc/64le/nrv2b_d.S
modified: stub/src/arch/powerpc/64le/nrv2d_d.S
modified: stub/src/arch/powerpc/64le/nrv2e_d.S
modified: stub/src/powerpc64le-darwin.dylib-entry.S
modified: stub/src/powerpc64le-darwin.macho-entry.S
modified: stub/src/powerpc64le-darwin.macho-fold.S
modified: stub/src/powerpc64le-linux.elf-entry.S
modified: stub/src/powerpc64le-linux.elf-fold.S
modified: stub/src/powerpc64le-linux.kernel.vmlinux.S
2017-01-30 00:34:45 +01:00
John Reiser
03fffbc724
Re-base to upx-3.93
...
modified: src/stub/src/arch/amd64/bxx.S
2017-01-29 06:58:03 -08:00
Markus F.X.J. Oberhumer
e1a8c932ee
Cleanup snprintf.cpp.
2017-01-29 14:11:46 +01:00
Markus F.X.J. Oberhumer
1aa2a6b054
Add missing src/stub/tmp/*.map files to repo.
2017-01-29 14:10:12 +01:00
Markus F.X.J. Oberhumer
1ad96c9c81
Update testsuite checksums caused by version bump.
2017-01-29 14:08:02 +01:00
Markus F.X.J. Oberhumer
f69199909f
Post-release version bump.
2017-01-29 14:05:00 +01:00
John Reiser
d063e77040
Update checksums for testsuite.
...
modified: .github/travis_testsuite_1.sh
2017-01-29 14:01:57 +01:00
John Reiser
bf3ddeb1eb
Rebuild stubs.
...
modified: amd64-darwin.dylib-entry.h
modified: amd64-darwin.macho-entry.h
modified: amd64-darwin.macho-fold.h
modified: amd64-linux.elf-fold.h
modified: amd64-linux.kernel.vmlinux.h
modified: amd64-linux.shlib-init.h
modified: amd64-win64.pep.h
modified: i386-bsd.elf-entry.h
modified: i386-bsd.elf.execve-entry.h
modified: i386-darwin.dylib-entry.h
modified: i386-darwin.macho-entry.h
modified: i386-dos32.djgpp2.h
modified: i386-dos32.tmt.h
modified: i386-dos32.watcom.le.h
modified: i386-linux.elf-entry.h
modified: i386-linux.elf.execve-entry.h
modified: i386-linux.elf.interp-entry.h
modified: i386-linux.kernel.vmlinux.h
modified: i386-linux.kernel.vmlinuz.h
modified: i386-linux.shlib-init.h
modified: i386-netbsd.elf-entry.h
modified: i386-win32.pe.h
modified: tmp/amd64-darwin.dylib-entry.bin.dump
modified: tmp/amd64-darwin.macho-entry.bin.dump
modified: tmp/amd64-linux.shlib-init.bin.dump
modified: tmp/amd64-win64.pep.bin.dump
2017-01-29 14:01:57 +01:00
John Reiser
fc261ad8cd
Smaller by 7 bytes; also slower.
...
https://github.com/upx/upx/issues/43
modified: bxx.S
2017-01-29 14:01:56 +01:00
John Reiser
90fc018295
Avoid sigsegv after "patchelf --set-rpath"
...
https://github.com/upx/upx/issues/47
Enhancement not yet implemented: non-adjacent ElfXX_Ehdr and ElfXX_Phdr.
modified: p_unix.cpp
2017-01-29 14:01:56 +01:00
John Reiser
cdc01d9a69
linux.sh/i386 interpreter.e_machine must be EM_386; else execve()
...
https://github.com/upx/upx/issues/53
modified: stub/i386-linux.elf.shell-fold.h
modified: stub/src/i386-linux.elf.shell-fold.S
modified: stub/src/i386-linux.elf.shell-main.c
2017-01-29 14:01:56 +01:00
John Reiser
da7e76c07d
Document location of checksums for testsuite.
...
modified: Makefile
2017-01-29 14:01:56 +01:00
John Reiser
ba9118aa58
Bug in unfilter on x86* when region ends in 32-bit displacement.
...
https://github.com/upx/upx/issues/43
modified: stub/src/arch/amd64/bxx.S
modified: stub/src/arch/i386/macros.S
plus all the stubs that use them
2017-01-29 14:01:56 +01:00
Markus F.X.J. Oberhumer
fdce705e55
Bump release date.
2017-01-29 12:07:00 +01:00
Markus F.X.J. Oberhumer
81268e7064
Update Travis.
2017-01-28 23:29:12 +01:00
Markus F.X.J. Oberhumer
f502f41359
Update conf.h.
2017-01-28 22:39:42 +01:00
Markus F.X.J. Oberhumer
34c9cfb6b0
Don't use "long".
2017-01-28 22:39:42 +01:00
Markus F.X.J. Oberhumer
6da1790c46
New ACC version.
2017-01-28 22:39:42 +01:00
Markus F.X.J. Oberhumer
d333c940da
Update Travis.
2017-01-17 01:59:13 +01:00
Markus F.X.J. Oberhumer
c940d2906f
Mention win64/pe in help usage text.
2017-01-17 01:56:58 +01:00
Markus F.X.J. Oberhumer
ac4b51ba85
Update Travis.
2017-01-15 23:25:39 +01:00
Markus F.X.J. Oberhumer
ea7a1ad2c7
Bump version date.
2017-01-15 15:51:33 +01:00
Markus F.X.J. Oberhumer
45ddd6a68d
Enable wildcard expansion on newer mingw versions.
2017-01-15 15:47:53 +01:00
Markus F.X.J. Oberhumer
acd99364e0
Update Travis.
2017-01-15 11:10:59 +01:00
Markus F.X.J. Oberhumer
14710dea55
Replace some negative enum constants with "static const unsigned" vars.
2017-01-03 12:57:10 +01:00
Markus F.X.J. Oberhumer
5d3be8da1d
Silence a MSVC warning.
2017-01-03 12:37:35 +01:00
Markus F.X.J. Oberhumer
3026821f9f
Update testsuite checksums caused by version bump.
2017-01-03 12:16:51 +01:00
Markus F.X.J. Oberhumer
fba51dabd0
Bump UPX_VERSION_DATE.
2017-01-03 12:06:17 +01:00
Markus F.X.J. Oberhumer
c4da5e81fa
Welcome 2017.
2017-01-03 12:02:07 +01:00
Markus F.X.J. Oberhumer
bc80d81432
Silence a bogus scan-build warning.
2016-12-30 23:59:31 +01:00
László Molnár
67797efead
fixed relocation handling regression in win32/pe (issue #38 )
2016-12-30 23:18:32 +01:00
László Molnár
c7cb036536
fixed data corruption in import handling (issue #32,#34)
2016-12-30 21:31:50 +01:00
Markus F.X.J. Oberhumer
0ccbc5f139
Silence some bogus coverity warnings.
2016-12-21 19:03:01 +01:00
Markus F.X.J. Oberhumer
2a6bbcaf8f
Fix a p_w64pep.cpp issue detected by coverity.
2016-12-21 19:01:55 +01:00
Markus F.X.J. Oberhumer
d46a8438ba
Remove unused option "--script=".
2016-12-19 23:44:10 +01:00
Markus F.X.J. Oberhumer
cc9d19da19
Remove unused PackLinuxI386sep.
2016-12-19 23:29:42 +01:00
Markus F.X.J. Oberhumer
6e6aa6fd6d
Update doc/Makefile.
2016-12-19 23:23:59 +01:00
Markus F.X.J. Oberhumer
61652a2989
Remove unused PackSolarisSparc.
2016-12-19 23:23:25 +01:00
Markus F.X.J. Oberhumer
edd7503607
Update executable format constants.
2016-12-19 23:18:38 +01:00
Markus F.X.J. Oberhumer
c9d6dab401
Remove unused p_elks.cpp.
2016-12-19 23:14:08 +01:00
Markus F.X.J. Oberhumer
d303038bcb
Remove unused p_vxd.h.
2016-12-19 23:12:05 +01:00
Markus F.X.J. Oberhumer
0a0e7c3b7c
Remove unused p_w16ne.cpp.
2016-12-19 23:11:00 +01:00
Markus F.X.J. Oberhumer
0b4ac35bc9
Tune some MSVC warnings.
2016-12-19 22:57:43 +01:00
László Molnár
c51864ca39
fixed TLS callback handling for PE64
2016-12-18 23:34:27 +01:00
John Reiser
a1cabd5a68
Avoid warning C4805: '|': unsafe mix of type 'bool' and type 'unsigned int' in operation
...
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2016-12-18 11:32:47 -08:00
John Reiser
9c1bc99d7a
Avoid warning C4146: unary minus operator applied to unsigned type, result still unsigned
...
modified: p_mach.cpp
2016-12-16 10:59:51 -08:00
Markus F.X.J. Oberhumer
c05fedcb76
Update Travis.
2016-12-14 16:27:51 +01:00
Markus F.X.J. Oberhumer
e11beeae4b
Update testsuite checksums caused by version bump.
2016-12-11 18:31:01 +01:00
Markus F.X.J. Oberhumer
4749e0d71e
Post-release version bump.
2016-12-11 17:50:03 +01:00
Markus F.X.J. Oberhumer
1c01b77a71
Bump release date.
2016-12-11 16:12:06 +01:00
Markus F.X.J. Oberhumer
1dd8ad3685
Remove outdated TODO file.
2016-12-11 15:58:43 +01:00
John Reiser
d6f6350b54
Remove comment about PalmPilot; add MacOS; add future AArch64; add John
...
modified: README
modified: README.1ST
2016-12-01 21:51:04 -08:00
Markus F.X.J. Oberhumer
4f3b85e604
Update NEWS.
2016-12-01 00:45:25 +01:00
Markus F.X.J. Oberhumer
efd5bc24b0
Bump tentative release date.
2016-12-01 00:40:54 +01:00
Markus F.X.J. Oberhumer
a1d5dfa1ac
Update Travis.
2016-12-01 00:36:49 +01:00
Markus F.X.J. Oberhumer
597c2ba180
Add .github/ISSUE_TEMPLATE.md.
2016-12-01 00:34:28 +01:00
Markus F.X.J. Oberhumer
2c2fb1b70b
Update Travis.
2016-11-24 14:27:49 +01:00
John Reiser
fc1287659a
de-tab (comments, too?)
...
modified: stub/src/powerpc-darwin.macho-upxmain.c
2016-11-21 14:02:57 -08:00
John Reiser
1a76630594
Mention support for MacOS "Sierra"
...
modified: NEWS
2016-11-21 08:30:34 -08:00
John Reiser
322f682d32
re-generate stub
...
modified: powerpc-darwin.macho-upxmain.h
2016-11-21 08:26:08 -08:00
John Reiser
0e329336fc
Merge branch 'devel' of https://github.com/upx/upx into devel
2016-11-21 08:23:05 -08:00
John Reiser
b33bdabbb6
powerpc Mach-o cleanup
...
modified: stub/powerpc-darwin.macho-upxmain.exe
new file: stub/src/powerpc-darwin.macho-upxmain.c
2016-11-21 08:22:09 -08:00
Markus F.X.J. Oberhumer
27d30121ab
Bump tentative release date.
2016-11-20 15:07:46 +01:00
Markus F.X.J. Oberhumer
345278f309
Re-enable assertion in xstrip.py.
2016-11-20 15:07:46 +01:00
Markus F.X.J. Oberhumer
4953e77161
upx-clang-format -i linker.cpp linker.h
2016-11-20 14:20:36 +01:00
Markus F.X.J. Oberhumer
8d61e037f9
Cleanups.
2016-11-20 14:17:21 +01:00
Markus F.X.J. Oberhumer
33a51e69bf
Update submodules.
2016-11-20 13:56:42 +01:00
Markus F.X.J. Oberhumer
d5dd9bbf24
Update Travis.
2016-11-20 13:51:53 +01:00
Markus F.X.J. Oberhumer
8772e52513
Remove old cruft.
2016-11-20 13:51:53 +01:00
John Reiser
9e1631ad4f
avoid null section name and zero alignment; enforce record === line
...
modified: linker.cpp
modified: linker.h
2016-11-19 17:38:23 -08:00
John Reiser
134b829d59
prevent warning C4319: '~': zero extending 'const unsigned int' to 'upx_uint64_t' of greater size
...
modified: linker.cpp
modified: p_lx_elf.cpp
modified: pefile.cpp
2016-11-19 16:46:01 -08:00
John Reiser
3df7d26101
propagate cpusubtype
...
modified: p_mach.cpp
modified: p_mach.h
2016-11-14 05:06:29 -08:00
John Reiser
cf56086f06
powerpc-darwin.macho-: remove debugging 'trap' :-)
...
modified: stub/powerpc-darwin.macho-upxmain.exe
modified: stub/powerpc-darwin.macho-upxmain.h
modified: stub/src/powerpc-darwin.macho-upxsubr.S
2016-11-12 20:13:12 -08:00
John Reiser
a72aca4379
powerpc (32-bit) works on MacOS using Sierra-compatible strategy.
...
modified: p_mach.cpp
modified: p_mach.h
modified: stub/powerpc-darwin.macho-entry.h
modified: stub/powerpc-darwin.macho-upxmain.exe
modified: stub/powerpc-darwin.macho-upxmain.h
modified: stub/src/powerpc-darwin.macho-entry.S
modified: stub/src/powerpc-darwin.macho-upxsubr.S
modified: stub/tmp/powerpc-darwin.macho-entry.bin.dump
2016-11-12 19:48:19 -08:00
John Reiser
edb0b7519a
Merge branch 'devel' of https://github.com/upx/upx into devel
2016-11-09 06:08:44 -08:00
Markus F.X.J. Oberhumer
3a3248c88c
Merge pull request #24 from tfauck/devel
...
powerpc64le -fpic dynamically linked binary support
2016-11-09 10:57:33 +01:00
John Reiser
3f14b9dab7
LC_UNIXTHREAD in ::pass4
...
modified: p_mach.cpp
2016-11-08 17:53:02 -08:00
Thierry Fauck
b1c07c22ce
powerpc64le -fpic dynamically linked binary support
...
Update stub for -fpic support
Handle 64K page in p_lx_elf.cpp
Signed-off-by: Thierry Fauck <tfauck@free.fr >
2016-11-08 18:29:10 +01:00
John Reiser
3b2c411274
Work on 32-bit PowerPC
...
modified: p_mach.cpp
modified: p_mach.h
2016-11-06 20:39:01 -08:00
John Reiser
e418af1ccd
Try to fix 32-bit PowerPC.
...
modified: p_mach.cpp
modified: p_mach.h
modified: stub/Makefile
new file: stub/powerpc-darwin.macho-upxmain.exe
new file: stub/powerpc-darwin.macho-upxmain.h
new file: stub/src/powerpc-darwin.macho-upxsubr.S
2016-11-06 17:59:16 -08:00
John Reiser
7dc004acb3
bug in other-endian ::canPack and ::canUnpack
...
modified: p_mach.cpp
2016-11-05 14:02:51 -07:00
John Reiser
2635472896
more unpacking for Mach-o (pre-3.91 ?)
...
modified: p_mach.cpp
modified: p_mach.h
2016-11-05 13:16:16 -07:00
John Reiser
5c0340f9ae
Merge branch 'devel' of https://github.com/upx/upx into devel
2016-10-19 15:20:04 -07:00
John Reiser
c2c970ee33
pacify c++-analyzer
...
modified: p_lx_elf.cpp
2016-10-19 15:19:33 -07:00
Markus F.X.J. Oberhumer
b52dabe091
Update Travis.
2016-10-19 15:21:40 +02:00
Markus F.X.J. Oberhumer
3fa2db8d6f
Update testsuite checksum to match current version. UNTESTED.
2016-10-19 15:03:25 +02:00
Markus F.X.J. Oberhumer
1e7950f671
Rebuild src/stubs from current sources. UNTESTED.
2016-10-19 14:59:33 +02:00
Thierry Fauck
8fde05191a
powerpc: Omit -Os flag to avoid use of savegrp*
...
Signed-off-by: Thierry Fauck <tfauck@free.fr >
modified: stub/Makefile
2016-10-19 14:41:18 +02:00
John Reiser
2557de6c4e
amd64 changes for brk() fix. powerpc changes UNKNOWN!
...
Also, filename of expected checksums begins with dot.
modified: .github/travis_testsuite_1.sh
2016-10-16 07:31:26 -07:00
John Reiser
44328aee76
fix brk() problem when is_big: stub must munmap all_pages
...
https://github.com/upx/upx/issues/5
modified: p_lx_elf.cpp
modified: p_lx_elf.h
2016-10-15 14:06:56 -07:00
Markus F.X.J. Oberhumer
f606b5879b
Update Travis.
2016-10-11 22:33:45 +02:00
Markus F.X.J. Oberhumer
83607119df
Merge pull request #14 from tfauck/powerpc-fixes
...
POWERPC: Allocate 4K / 64K pages depending on processor type.
2016-10-11 16:11:40 +02:00
Thierry Fauck
9b86e68268
POWERPC: Allocate 4K / 64K pages depending on processor type.
...
Powerpc: ppc64le processor - Fix nrv2x-d.S compression routines
xstrip - disallow assert at line 178
Signed-off-by: Thierry Fauck <tfauck@free.fr >
modified: powerpc-darwin.dylib-entry.h
modified: powerpc-darwin.macho-entry.h
modified: powerpc-darwin.macho-fold.h
modified: powerpc-linux.elf-entry.h
modified: powerpc-linux.elf-fold.h
modified: powerpc-linux.kernel.vmlinux.h
modified: powerpc64le-darwin.dylib-entry.h
modified: powerpc64le-darwin.macho-entry.h
modified: powerpc64le-darwin.macho-fold.h
modified: powerpc64le-linux.elf-entry.h
modified: powerpc64le-linux.elf-fold.h
modified: powerpc64le-linux.kernel.vmlinux.h
modified: scripts/xstrip.py
modified: src/arch/powerpc/64le/nrv2b_d.S
modified: src/arch/powerpc/64le/nrv2d_d.S
modified: src/arch/powerpc/64le/nrv2e_d.S
modified: src/powerpc-linux.elf-entry.S
modified: src/powerpc-linux.elf-fold.S
modified: src/powerpc-linux.elf-main.c
modified: tmp/powerpc-linux.elf-entry.bin.dump
modified: tmp/powerpc64le-darwin.dylib-entry.bin.dump
modified: tmp/powerpc64le-darwin.macho-entry.bin.dump
modified: tmp/powerpc64le-linux.elf-entry.bin.dump
modified: tmp/powerpc64le-linux.kernel.vmlinux.bin.dump
2016-10-11 09:52:40 -04:00
John Reiser
d688a05ac7
DT_JMPREL vanished (binutils-2.26.1); check all DT_RELA.
...
modified: p_elf_enum.h
modified: p_lx_elf.cpp
2016-10-09 21:50:45 -07:00
Markus F.X.J. Oberhumer
97e975b4f6
Update Travis so that is works with bash 3 again.
2016-10-09 19:53:04 +02:00
John Reiser
9dd0e3ce4f
c++-analyzer finds the speck but misses the log.
...
modified: p_mach.cpp
2016-10-09 09:34:33 -07:00
John Reiser
ca2293f6d3
c++-analyzer needs improved range tracking.
...
modified: p_lx_elf.cpp
2016-10-09 09:33:35 -07:00
Markus F.X.J. Oberhumer
0cd1ef0c7a
Update Travis for OSX.
2016-10-09 13:56:45 +02:00
Markus F.X.J. Oberhumer
b0207ce524
Some refactoring. NFC.
2016-10-09 13:23:19 +02:00
Markus F.X.J. Oberhumer
fab0c3b09d
testsuite: rename tests.
2016-10-09 13:00:43 +02:00
Markus F.X.J. Oberhumer
8b35dd3358
testsuite: allow easy updating of the checksums by writing .sha256sums.recreate.
2016-10-09 12:36:22 +02:00
László Molnár
cadcbb27eb
travis checksums updated
2016-10-09 12:13:22 +02:00
László Molnár
297d44c614
PE: fixed file data alignment problem
2016-10-09 11:29:29 +02:00
Markus F.X.J. Oberhumer
22178f2224
Minor cleanups.
2016-10-09 03:12:19 +02:00
Markus F.X.J. Oberhumer
554f8a376c
Update testsuite for previous commit.
2016-10-09 03:00:49 +02:00
Markus F.X.J. Oberhumer
4157affbd7
pefile: make kernelDLL() return the same strings as in UPX 3.91.
2016-10-09 02:53:20 +02:00
Markus F.X.J. Oberhumer
4b991203df
pefile.cpp: make import sorting independent from qsort() internals.
2016-10-09 00:48:40 +02:00
Markus F.X.J. Oberhumer
38a265741c
Ongoing cleanups.
2016-10-08 18:49:14 +02:00
Markus F.X.J. Oberhumer
56eb02280f
Update Travis.
2016-10-07 23:07:25 +02:00
Markus F.X.J. Oberhumer
ed900b0476
More thorough use of O_BINARY.
2016-10-07 15:04:12 +02:00
John Reiser
42206364e5
Reduce Mach-o headers
...
modified: p_mach.cpp
2016-10-06 16:06:24 -07:00
John Reiser
82d9bb8f51
Fix namespace typedefs for Mach-o structs [upx_uint32_t ==> Word]
...
modified: p_mach.cpp
modified: p_mach.h
2016-10-06 14:00:05 -07:00
John Reiser
923a9d3f9b
Template PackMackBase<T>::pack3. Use more templates for ::pack4.
...
modified: p_mach.cpp
modified: p_mach.h
2016-10-06 08:55:09 -07:00
John Reiser
ae7660068b
Merge branch 'devel' of https://github.com/upx/upx into devel
2016-10-06 07:49:52 -07:00
John Reiser
f466c1d764
Cosmetic
...
modified: p_mach.cpp
2016-10-06 07:49:37 -07:00
Markus F.X.J. Oberhumer
6e76f8ef3a
Don't use variable length arrays (VLA).
2016-10-06 13:04:46 +02:00
Markus F.X.J. Oberhumer
b3a8d02caf
Cosmetic cleanups.
2016-10-06 12:31:03 +02:00
Markus F.X.J. Oberhumer
022ba32c1a
Improve robustness of seek() by adding some sanity checks.
2016-10-06 12:11:32 +02:00
Markus F.X.J. Oberhumer
8f5e89c900
Update testsuite.
2016-10-06 11:19:31 +02:00
Markus F.X.J. Oberhumer
d335d7bafd
p_mach.h: fix C++ syntax.
2016-10-06 09:51:58 +02:00
John Reiser
1f51ef7df6
Merge branch 'devel' of https://github.com/upx/upx into devel
2016-10-05 17:16:53 -07:00
Markus F.X.J. Oberhumer
ec082ee023
Cosmetic cleanup.
2016-10-06 00:45:42 +02:00
Markus F.X.J. Oberhumer
a6bc271e0d
Update testsuite.
2016-10-06 00:43:54 +02:00
John Reiser
791fd9199e
Preserve alignment in .text
...
modified: p_mach.cpp
2016-10-05 12:52:52 -07:00
John Reiser
9e8baf1914
i386 for MacOS 10.12 "Sierra"
...
modified: p_mach.cpp
modified: stub/i386-darwin.macho-entry.h
modified: stub/src/i386-darwin.macho-entry.S
modified: stub/tmp/i386-darwin.macho-entry.bin.dump
2016-10-05 11:25:16 -07:00
John Reiser
64b7080532
Merge branch 'devel' of https://github.com/upx/upx into devel
2016-10-04 21:05:44 -07:00
John Reiser
8fd5479f32
Templates for ::pack4; i386 now packs, needs work before running.
...
modified: p_mach.cpp
modified: p_mach.h
new file: stub/i386-darwin.macho-upxmain.exe
new file: stub/i386-darwin.macho-upxmain.h
new file: stub/src/i386-darwin.macho-upxmain.c
2016-10-04 19:58:04 -07:00
Markus F.X.J. Oberhumer
04eb9c02c3
Update testsuite checksums to match recent changes. Sigh.
2016-10-05 01:35:45 +02:00
John Reiser
07b41b9bc3
i386-darwin.macho-upxmain.h
...
modified: Makefile
2016-10-04 10:48:44 -07:00
John Reiser
8ebadfafe9
Standalone bswap, bzero, syscalls for i386-darwin.macho
...
new file: i386-darwin.macho-upxsubr.S
2016-10-04 10:46:59 -07:00
John Reiser
3283896e4b
Templatize ::buildLoader
...
modified: p_mach.cpp
modified: p_mach.h
2016-10-04 08:54:55 -07:00
John Reiser
b444bcf418
On the way to templates and mach-o/i386.
...
modified: p_mach.cpp
modified: p_mach.h
2016-10-03 22:00:26 -07:00
Markus F.X.J. Oberhumer
13034577fc
Fix previous commit.
2016-10-04 00:56:01 +02:00
Markus F.X.J. Oberhumer
9feefc2e7f
Makefile: added run-testsuite target.
2016-10-04 00:42:24 +02:00
John Reiser
a5393e985d
Merge branch 'devel' of https://github.com/upx/upx into devel
2016-10-03 09:42:48 -07:00
John Reiser
e3fe0dc89b
Avoid bug in ld-linux to set brk(0) when .p_align is large.
...
modified: p_lx_elf.cpp
2016-10-03 09:41:05 -07:00
Markus F.X.J. Oberhumer
42d49e9d50
Update Makefile and check_whitespace.sh.
2016-10-03 13:13:13 +02:00
Markus F.X.J. Oberhumer
06eb244800
Add check_whitespace_git.sh. Minor cleanups.
2016-10-03 04:47:02 +02:00
John Reiser
870cdfa51f
Merge branch 'devel' of https://github.com/upx/upx into devel
2016-10-02 10:47:59 -07:00
John Reiser
93787c74ee
Rewrite linfo in output file.
...
modified: p_mach.cpp
2016-10-02 10:47:37 -07:00
Markus F.X.J. Oberhumer
945323fe15
Fix a compilation warning.
2016-10-02 15:54:14 +02:00
Markus F.X.J. Oberhumer
5e41e69b27
Remove trailing whitespace from p_mach.cpp.
2016-10-02 15:48:56 +02:00
Markus F.X.J. Oberhumer
9d14185f7d
Add check_whitespace.sh and call it from Makefile. Update Travis.
2016-10-02 15:46:57 +02:00
John Reiser
0f74162551
Decompression works after codesign. (Still more is possible.)
...
modified: p_mach.cpp
2016-10-01 20:38:25 -07:00
John Reiser
00b1ff1ff6
Apple codesign now works.
...
modified: p_mach.cpp
2016-10-01 17:40:32 -07:00
John Reiser
977024ea94
Fix clang scan-build errors.
...
modified: p_lx_elf.cpp
2016-10-01 17:38:16 -07:00
Markus F.X.J. Oberhumer
3534ed21d7
Update Travis and AppVeyor.
2016-10-01 20:00:48 +02:00
Markus F.X.J. Oberhumer
ee093e5232
Minor cleanups.
2016-10-01 19:59:10 +02:00
Markus F.X.J. Oberhumer
807ab8d19f
Update Travis and AppVeyor.
2016-09-29 09:54:07 +02:00
Markus F.X.J. Oberhumer
81f3ff098f
Update download links to point to github.
2016-09-29 00:37:11 +02:00
Markus F.X.J. Oberhumer
85a5759afb
Update AppVeyor to also run the testsuite.
2016-09-29 00:18:22 +02:00
Markus F.X.J. Oberhumer
490e7a56a5
Remove travis_testsuite_2.sh.
2016-09-28 23:02:06 +02:00
Markus F.X.J. Oberhumer
e41c475671
Use calloc instead of malloc to pacify valgrind.
2016-09-28 21:30:38 +02:00
Markus F.X.J. Oberhumer
b0841268bd
Update Travis testsuite.
2016-09-28 20:18:05 +02:00
Markus F.X.J. Oberhumer
b9b3b67b95
Silence some pedantic compilation warnings about unused results.
2016-09-28 13:50:50 +02:00
Markus F.X.J. Oberhumer
0d57d2cfe3
Remove old cruft.
2016-09-28 13:39:49 +02:00
Markus F.X.J. Oberhumer
32de5d0d7f
Fix msvc build.
2016-09-28 13:34:39 +02:00
Markus F.X.J. Oberhumer
51eab2a4b7
Update Makefile configuration variables.
2016-09-28 13:07:39 +02:00
Markus F.X.J. Oberhumer
93cf170253
Update NEWS.
2016-09-28 12:31:44 +02:00
Markus F.X.J. Oberhumer
f7554374ab
Update email address.
2016-09-28 12:25:01 +02:00
Markus F.X.J. Oberhumer
b4870f62c9
Add option --prefer-ucl.
2016-09-28 11:57:15 +02:00
Markus F.X.J. Oberhumer
f1d713ebf6
Silence some pedantic warnings.
2016-09-28 11:29:20 +02:00
Markus F.X.J. Oberhumer
4134a512b9
Update Travis.
2016-09-28 11:13:46 +02:00
Markus F.X.J. Oberhumer
cf998f945c
Add support for AppVeyor CI.
2016-09-27 20:30:54 +02:00
Markus F.X.J. Oberhumer
a7386238dd
Update Travis.
2016-09-27 20:29:04 +02:00
Markus F.X.J. Oberhumer
6b39d122a6
Support MSVC.
2016-09-27 20:23:23 +02:00
Markus F.X.J. Oberhumer
a0582c5380
pefile.cpp: don't use VLA.
2016-09-27 20:19:43 +02:00
Markus F.X.J. Oberhumer
1f37112969
Moving to github.
2016-09-27 08:41:11 +02:00
Markus F.X.J. Oberhumer
361958db76
Check endian in assertPacker().
2016-09-26 15:38:04 +02:00
Markus F.X.J. Oberhumer
8bc7880b19
Improve gitrev handling.
2016-09-26 15:32:01 +02:00
Markus F.X.J. Oberhumer
ceddf29586
Update Travis.
2016-09-26 15:32:01 +02:00
Markus F.X.J. Oberhumer
3fc78e21bc
Stop using Circle CI.
2016-09-26 15:31:49 +02:00
John Reiser
48e00b371c
Move UPX_F_MACH_PPC64LE and friends to 38 et seq, the little-endian side.
...
modified: conf.h
2016-09-26 05:53:11 -07:00
Markus F.X.J. Oberhumer
aee52d3880
Improve gitrev handling.
2016-09-26 10:35:29 +02:00
Markus F.X.J. Oberhumer
bd54499537
Update Travis.
2016-09-26 10:07:48 +02:00
Markus F.X.J. Oberhumer
e6da9e8d1a
Small snprintf.cpp update.
2016-09-26 09:12:53 +02:00
Markus F.X.J. Oberhumer
156ca03b67
Silence some pedantic compiler warnings.
2016-09-26 09:12:53 +02:00
Markus F.X.J. Oberhumer
3f4419b177
Update stub/src for recent changes.
2016-09-26 09:12:53 +02:00
Markus F.X.J. Oberhumer
676f860d7d
Normalize whitespace.
2016-09-26 09:12:53 +02:00
Markus F.X.J. Oberhumer
5ce93ae0c7
Update submodules.
2016-09-26 09:12:53 +02:00
László Molnár
43231826b9
fixed address sanitizer problem (untested)
2016-09-26 08:56:23 +02:00
Markus F.X.J. Oberhumer
899b393fcc
Add support for Circle CI.
2016-09-25 17:18:29 +02:00
Markus F.X.J. Oberhumer
5c3e02d2f0
Update Travis CI.
2016-09-25 17:17:14 +02:00
Markus F.X.J. Oberhumer
a29064107e
Bump version date.
2016-09-25 14:01:40 +02:00
Markus F.X.J. Oberhumer
4cdc969801
Update Travis.
2016-09-25 14:00:49 +02:00
Markus F.X.J. Oberhumer
68159d457e
Update Travis.
2016-09-25 09:43:30 +02:00
Markus F.X.J. Oberhumer
daafc29d2b
Add support for UPX_VERSION_GITREV. Some cleanups.
2016-09-25 09:41:26 +02:00
John Reiser
3c786acf2b
Fix bug in Mach-O stub.
...
modified: amd64-darwin.macho-upxmain.exe
modified: amd64-darwin.macho-upxmain.h
modified: src/amd64-darwin.macho-upxmain.c
2016-09-24 19:44:00 -07:00
John Reiser
53c3817d4d
Allow longer Mach-O headers.
...
modified: amd64-darwin.macho-upxmain.exe
2016-09-24 17:26:00 -07:00
John Reiser
9109254488
Allow longer Mach-O headers.
...
modified: src/amd64-darwin.macho-upxmain.c
2016-09-24 17:21:07 -07:00
John Reiser
df19f0d5ec
Try harder to decompress Mach-O I386, too.
...
modified: p_mach.cpp
modified: p_mach.h
2016-09-24 09:15:10 -07:00
John Reiser
093362e479
Merge branch 'devel' of https://github.com/upx/upx into devel
2016-09-24 06:44:19 -07:00
John Reiser
7826a3652b
Try harder to decompress Mach-O, because pirates.
...
modified: p_mach.cpp
modified: p_mach.h
2016-09-24 06:43:16 -07:00
Markus F.X.J. Oberhumer
c27b7e52e1
Small Makefile update.
2016-09-24 13:49:07 +02:00
Markus F.X.J. Oberhumer
6f79cbb2a6
Update Travis.
2016-09-24 12:53:01 +02:00
Markus F.X.J. Oberhumer
6f33929f91
Cleanups.
2016-09-24 12:10:46 +02:00
Markus F.X.J. Oberhumer
2e8b649195
Update Travis.
2016-09-24 11:19:12 +02:00
Markus F.X.J. Oberhumer
3841be7e20
Remove *.bin files.
2016-09-24 11:18:18 +02:00
John Reiser
2c28521283
NetBSDElf32x86 should not impersonate [i386-linux.elf, linux/i386]
2016-09-23 19:31:26 -07:00
László Molnár
1c735cc204
fixed too strict checks in resource handling
2016-09-22 22:17:08 +02:00
Markus F.X.J. Oberhumer
f0b13ae8e4
Add .editorconfig.
2016-09-22 18:29:02 +02:00
Markus F.X.J. Oberhumer
b1a2f8fec0
Update vim modelines.
2016-09-22 18:17:37 +02:00
Markus F.X.J. Oberhumer
83828aa8a3
Update vim modelines.
2016-09-22 17:29:43 +02:00
Markus F.X.J. Oberhumer
4eb81b4d66
Update stub/scripts.
2016-09-22 14:27:57 +02:00
Markus F.X.J. Oberhumer
96d9968db5
Welcome 2016.
2016-09-22 14:07:14 +02:00
Markus F.X.J. Oberhumer
2781e37ec0
Mark version as "BETA".
2016-09-22 14:05:08 +02:00
Markus F.X.J. Oberhumer
6d61e773b5
Bump version year.
2016-09-22 14:02:44 +02:00
Markus F.X.J. Oberhumer
c5171114d1
Clean up stub/Makefile. NFC.
2016-09-22 13:11:14 +02:00
Markus F.X.J. Oberhumer
0ca0a832de
stub: arm renaming.
2016-09-22 12:36:00 +02:00
Markus F.X.J. Oberhumer
aef54a4bfd
Update source for previous rename.
2016-09-22 12:12:43 +02:00
Markus F.X.J. Oberhumer
4c473acfec
stub: arm renaming.
2016-09-22 12:05:53 +02:00
Markus F.X.J. Oberhumer
0de41e97ac
Update source for previous rename.
2016-09-22 11:54:44 +02:00
Markus F.X.J. Oberhumer
0e52ab3f90
stub: arm renaming.
2016-09-22 11:52:50 +02:00
Markus F.X.J. Oberhumer
797679b42c
stub: arm renaming.
2016-09-22 11:43:23 +02:00
Markus F.X.J. Oberhumer
1bc8b6f46e
Update source for previous rename.
2016-09-22 11:29:12 +02:00
Markus F.X.J. Oberhumer
f322b580ff
stub: arm renaming.
2016-09-22 11:28:00 +02:00
Markus F.X.J. Oberhumer
2b2f33e3f5
Update source for previous rename.
2016-09-22 11:22:18 +02:00
Markus F.X.J. Oberhumer
ce29cd2fad
stub: arm renaming.
2016-09-22 11:20:53 +02:00
Markus F.X.J. Oberhumer
0d5843f44e
Update source for previous rename.
2016-09-22 11:17:53 +02:00
Markus F.X.J. Oberhumer
e36e8e3b33
stub: arm renaming.
2016-09-22 11:15:49 +02:00
Markus F.X.J. Oberhumer
e251a1ca19
Update source for previous rename.
2016-09-22 11:11:03 +02:00
Markus F.X.J. Oberhumer
4aedb00e43
stub: arm renaming.
2016-09-22 11:06:53 +02:00
Markus F.X.J. Oberhumer
10a0469221
Update source for previous rename.
2016-09-22 10:56:33 +02:00
Markus F.X.J. Oberhumer
d3419acada
stub: start arm renaming.
2016-09-22 10:52:26 +02:00
Markus F.X.J. Oberhumer
65ea4117ca
Add some comments to stub/Makefile in prepartion of renames.
2016-09-22 10:44:40 +02:00
Markus F.X.J. Oberhumer
8b0101dcab
Update source for previous rename.
2016-09-22 10:25:45 +02:00
Markus F.X.J. Oberhumer
188f67cfca
stub: rename ppc64le to powerpc64le.
2016-09-22 10:20:54 +02:00
Markus F.X.J. Oberhumer
a89f4bd4b8
Update .gitignore.
2016-09-22 09:56:30 +02:00
Markus F.X.J. Oberhumer
053c9dc0e1
stub: arm64: rename some files, remove unused files.
2016-09-22 09:55:13 +02:00
Markus F.X.J. Oberhumer
493d9f1b9d
Ongoing cleanups.
2016-09-22 03:23:55 +02:00
Markus F.X.J. Oberhumer
e28793f128
upx-clang-format -i packhead.cpp
2016-09-22 00:59:48 +02:00
Markus F.X.J. Oberhumer
ea2bddf245
Fix one more file_image usage.
2016-09-22 00:58:43 +02:00
Markus F.X.J. Oberhumer
763b3c05af
Don't use "long". Cleanups.
2016-09-22 00:47:35 +02:00
Markus F.X.J. Oberhumer
473cfb54be
Normalize whitespace.
2016-09-22 00:02:58 +02:00
Markus F.X.J. Oberhumer
a7fd742c17
Canonicalize the names of our executable formats.
2016-09-21 23:58:08 +02:00
Markus F.X.J. Oberhumer
b66ba140cb
More cleanups.
2016-09-21 23:18:19 +02:00
Markus F.X.J. Oberhumer
242f606a29
p_lx_elf.h: turn file_image into a MemBuffer.
2016-09-21 22:22:41 +02:00
Markus F.X.J. Oberhumer
60a1214d7e
upx-clang-format -i ui.cpp
2016-09-21 21:38:56 +02:00
Markus F.X.J. Oberhumer
189ab8c8e8
upx-clang-format -i ui.h
2016-09-21 21:35:13 +02:00
Markus F.X.J. Oberhumer
3765ca4e92
Cleanups and cruft removal.
2016-09-21 21:33:53 +02:00
Markus F.X.J. Oberhumer
df87d76070
p_mach.cpp: use proper types for variable "zero".
2016-09-21 20:39:00 +02:00
Markus F.X.J. Oberhumer
8fbf0b406b
p_vmlinx.cpp: remove unused code fragment.
2016-09-21 17:56:43 +02:00
Markus F.X.J. Oberhumer
633073803f
upx-clang-format -i s_djgpp2.cpp s_object.cpp s_vcsa.cpp s_win32.cpp screen.h
2016-09-21 17:46:42 +02:00
Markus F.X.J. Oberhumer
104da198d3
Minor screen cleanup.
2016-09-21 17:43:32 +02:00
Markus F.X.J. Oberhumer
b3121e4534
Use upx_uint16_t instead of unsigned short.
2016-09-21 17:40:11 +02:00
Markus F.X.J. Oberhumer
3bb654cc85
Ongoing cleanups and cruft removal.
2016-09-21 16:42:25 +02:00
John Reiser
d2830db94d
Fix memory leak
...
modified: p_lx_elf.cpp
2016-09-20 20:43:48 -07:00
John Reiser
ad6914b938
PackMachBase<T>::canUnpack() finds overlay_offset for decompression
...
modified: p_mach.cpp
modified: p_mach.h
2016-09-20 20:07:42 -07:00
Markus F.X.J. Oberhumer
57ba965b93
Add support for Travis CI.
2016-09-21 03:54:49 +02:00
Markus F.X.J. Oberhumer
544ec21fc2
Fix building with clang.
2016-09-21 01:09:07 +02:00
Markus F.X.J. Oberhumer
1bb0fa1809
Fix a few things spotted by the gcc-6 sanitizer. Needs review.
2016-09-21 00:35:51 +02:00
Markus F.X.J. Oberhumer
ffa0efc898
Makefile: add support for USE_SANITIZE.
2016-09-21 00:34:52 +02:00
Markus F.X.J. Oberhumer
af6b4b8c27
Fix previous commit.
2016-09-21 00:34:20 +02:00
Markus F.X.J. Oberhumer
3f7c1f966b
Minor cleanups.
2016-09-20 22:14:25 +02:00
Markus F.X.J. Oberhumer
535515f296
Update submodules.
2016-09-20 22:13:07 +02:00
Markus F.X.J. Oberhumer
7af6c4b10e
Use new style casts. Cleanups.
2016-09-20 20:59:34 +02:00
Markus F.X.J. Oberhumer
2076bef95b
upx-clang-format -i stdcxx.cpp stdcxx.h ; remove old cruft.
2016-09-20 20:40:08 +02:00
John Reiser
48ce1f1814
Merge branch 'master' of https://github.com/upx/upx
2016-09-20 10:56:00 -07:00
John Reiser
5151c8a505
Indentation error detected by g++-6
...
modified: p_lx_elf.cpp
2016-09-20 10:55:14 -07:00
Markus F.X.J. Oberhumer
44248f19b5
Introduce mem_size() and New() and start using it.
2016-09-20 15:24:07 +02:00
Markus F.X.J. Oberhumer
8d433f2580
Update submodules.
2016-09-20 15:09:50 +02:00
Markus F.X.J. Oberhumer
272fe5488c
Remove Makefile fragment from p_vmlinx.cpp.
2016-09-20 13:06:24 +02:00
Markus F.X.J. Oberhumer
c97765de14
upx-clang-format -i snprintf.cpp
2016-09-20 13:03:48 +02:00
Markus F.X.J. Oberhumer
7acf150ac5
Update README.SRC.
2016-09-20 12:51:06 +02:00
Markus F.X.J. Oberhumer
077bbdfc78
conf.h: check for proper WITH_LZMA.
2016-09-20 12:45:28 +02:00
Markus F.X.J. Oberhumer
2fb38ce13a
Update Makefile for upx-lzma-sdk.
2016-09-20 12:37:00 +02:00
Markus F.X.J. Oberhumer
22dc183f25
Add upx-lzma-sdk submodule.
2016-09-20 12:35:15 +02:00
Markus F.X.J. Oberhumer
3c492c3fc7
Update Makefile so that my build scripts work again.
2016-09-20 11:29:28 +02:00
Markus F.X.J. Oberhumer
d71db2978e
Remove some old cruft.
2016-09-20 11:24:18 +02:00
Markus F.X.J. Oberhumer
e4723e0bad
Avoid some compiler warnings.
2016-09-20 10:54:27 +02:00
Markus F.X.J. Oberhumer
dc56c4e530
bptr.h: size optimizations.
2016-09-20 10:30:09 +02:00
Markus F.X.J. Oberhumer
9579a51a8b
pefile.cpp: always use BoundedPtr.
2016-09-20 10:20:42 +02:00
Markus F.X.J. Oberhumer
71f897ebf5
Avoid a -Wsign-compare warning.
2016-09-20 10:08:32 +02:00
Markus F.X.J. Oberhumer
09d9f71ae9
p_mach.h: use proper upx types.
2016-09-20 10:05:08 +02:00
John Reiser
c678ccdfb1
stub/ppc64le-darwin.macho-fold.h is flapping (works one time, not the next.)
2016-09-19 21:25:30 -07:00
John Reiser
bbbebe343b
Try to recover powerpc64le. Still not successful [TOC space?]
...
modified: Makefile
new file: ppc64-savegpr0.S
modified: ppc64le-darwin.macho-fold.h
2016-09-19 20:05:52 -07:00
John Reiser
033cb4f0c2
Fix merge
...
modified: p_mach.cpp
2016-09-19 18:49:40 -07:00
John Reiser
d750034b79
amd64-darwin.macho-upxmain.exe and .h
2016-09-19 18:32:26 -07:00
Markus F.X.J. Oberhumer
a2063f0628
Normalize whitespace.
2016-09-20 02:06:58 +02:00
Markus F.X.J. Oberhumer
acf2f2ffc4
Merge branch 'sierra'
2016-09-20 01:54:33 +02:00
Markus F.X.J. Oberhumer
d14f484c4b
Moving to github.
2016-09-19 22:41:32 +02:00
Markus F.X.J. Oberhumer
695e515a65
stub: update powerpc64le settings.
2016-09-19 22:22:21 +02:00
upstream
61089feee7
New ACC version.
2016-09-19 12:44:29 +00:00
Markus F.X.J. Oberhumer
ddc9b10cd3
Add scripts/upx-clang-format.
2016-09-19 11:04:25 +02:00
Markus F.X.J. Oberhumer
f95c92b431
Create a dummy stub/ppc64le-darwin.macho-fold.h so that upx builds again.
2016-09-19 10:54:23 +02:00
Markus F.X.J. Oberhumer
eba65a94e6
Add missing *.dump files to repo.
2016-09-19 10:44:22 +02:00
John Reiser
c28a0c6bb8
Synchronize stubs
...
modified: src/stub/arm64-darwin.macho-entry.h
modified: src/stub/arm64-darwin.macho-fold.h
modified: src/stub/ppc64le-linux.elf-fold.h
modified: src/stub/tmp/arm64-darwin.macho-entry.bin.dump
2016-09-18 12:45:11 -07:00
Markus F.X.J. Oberhumer
d6bacd9b47
Remove src/stub/scripts/UNUSED.
2016-09-18 16:07:47 +02:00
Markus F.X.J. Oberhumer
70b1657323
Update for upx-stubtools v20160918.
2016-09-18 16:00:29 +02:00
Markus F.X.J. Oberhumer
1ef08bd169
Add .gitignore.
2016-09-18 15:29:03 +02:00
Markus F.X.J. Oberhumer
da68cc6a78
Remove .hgignore and .hgtags.
2016-09-18 15:00:53 +02:00
John Reiser
45c75d42ad
Catch up to upxtools 20160902; add dangling arm/v8a/lzma_d.S
2016-09-17 19:51:32 -07:00
jreiser@BitWagon.com
d4e55af2c2
Propagate LC_VERSION_MIN_MACOSX and LC_SOURCE_VERSION
...
changed src/p_mach.cpp
2016-09-17 16:40:07 -07:00
jreiser@BitWagon.com
48791a329d
overlay_offset for decompress
...
changed src/p_mach.cpp
2016-09-17 16:16:41 -07:00
jreiser@BitWagon.com
9b26ebed75
LINKEDIT has unfilter and decompressor
...
changed src/p_mach.cpp
changed src/stub/amd64-darwin.macho-upxmain.h
changed src/stub/src/amd64-darwin.macho-upxmain.c
2016-09-17 15:24:23 -07:00
jreiser@BitWagon.com
e2160fb6c9
segLINK.initprot |= VM_PROT_EXECUTE
...
changed src/p_mach.cpp
2016-09-17 10:41:38 -07:00
jreiser@BitWagon.com
345a1c64f9
Omit Mach_command from stub where allowed.
...
changed src/p_mach.cpp
2016-09-17 09:36:58 -07:00
jreiser@BitWagon.com
7ad1e7756b
Cleanup for checkin
...
changed src/p_mach.cpp
2016-09-17 06:49:41 -07:00
jreiser@BitWagon.com
90caf19e9e
Cleanup amd64-darwin.macho-upxmain.c
...
changed src/stub/amd64-darwin.macho-upxmain.h
changed src/stub/src/amd64-darwin.macho-upxmain.c
changed src/stub/src/amd64-darwin.macho-upxsubr.S
2016-09-16 21:29:37 -07:00
jreiser@BitWagon.com
8d0b3b7d44
Fix segXHDR, but assume no __DATA in stub for now.
...
changed src/p_mach.cpp
2016-09-15 21:44:17 -07:00
jreiser@BitWagon.com
4c253d68d4
new start address 0xfe000000
...
changed src/stub/amd64-darwin.macho-upxmain.h
2016-09-15 21:38:39 -07:00
jreiser@BitWagon.com
73d1b331f1
trim Mach_command from stub. [Dirty, needs cleanup!]
...
changed src/p_mach.cpp
2016-09-13 20:20:41 -07:00
jreiser@BitWagon.com
af2fddfd6d
rebuild stub
...
changed src/stub/amd64-darwin.macho-upxmain.h
2016-09-13 20:18:54 -07:00
jreiser@BitWagon.com
3e065ead65
fix .bss in floating dyld
...
changed src/stub/src/amd64-darwin.macho-upxmain.c
2016-09-13 20:17:51 -07:00
jreiser@BitWagon.com
3774704326
forgotten file; 3 FIXME !
...
added src/stub/src/arch/arm/v8a/lzma_d-arm.S
2016-09-13 20:14:44 -07:00
jreiser@BitWagon.com
4a1100b6a4
Unexport all symbols in compressed output.
...
added src/stub/src/amd64-darwin.macho-upxhide.txt
changed src/stub/src/amd64-darwin.macho-upxmain.c
2016-09-11 15:28:42 -07:00
jreiser@BitWagon.com
63dec77ed6
Try auto-relocate for /usr/lib/dyld
...
changed src/stub/amd64-darwin.macho-upxmain.h
changed src/stub/src/amd64-darwin.macho-upxmain.c
2016-09-11 15:08:56 -07:00
jreiser@BitWagon.com
1d3a66f890
bswap(), bzero(), fat_find(), assembly-language system calls
...
added src/stub/src/amd64-darwin.macho-upxsubr.S
changed src/stub/amd64-darwin.macho-upxmain.h
changed src/stub/src/amd64-darwin.macho-upxmain.c
2016-09-11 14:22:19 -07:00
jreiser@BitWagon.com
c1da92ca22
reduce asm()
...
changed src/stub/src/amd64-darwin.macho-upxmain.c
2016-09-11 06:03:06 -07:00
jreiser@BitWagon.com
13475002d7
segXHDR reserves address space; actual launch!
...
changed src/p_mach.cpp
changed src/stub/amd64-darwin.macho-upxmain.h
changed src/stub/src/amd64-darwin.macho-upxmain.c
2016-09-10 20:13:44 -07:00
jreiser@BitWagon.com
5bb6f246ed
Mach-O dyld: __LINKEDIT must have highest .vmaddr and .fileoff
2016-09-10 15:46:36 -07:00
jreiser@BitWagon.com
89df7451ef
Rebuild stubs
...
changed src/stub/amd64-darwin.macho-entry.h
changed src/stub/amd64-darwin.macho-upxmain.h
changed src/stub/tmp/amd64-darwin.macho-entry.bin.dump
2016-09-10 15:03:55 -07:00
jreiser@BitWagon.com
1334d544f7
stubtools 20160902
2016-09-10 15:03:04 -07:00
jreiser@BitWagon.com
3fefaa7362
revamp MH_EXECUTE: try to meet expectations of MacOSX 10.12 Sierra
...
changed src/p_mach.cpp
changed src/stub/src/amd64-darwin.macho-upxmain.c
2016-09-10 15:02:13 -07:00
jreiser@BitWagon.com
15d62f7b96
Mach_main_command LC_MAIN
2016-09-10 15:00:28 -07:00
jreiser@BitWagon.com
83e0aaa511
sections AMD64BXX, MACH_UNC for MacOSX 10.12
2016-09-10 14:59:23 -07:00
jreiser@BitWagon.com
ee06ce1148
generic Mach_command
2016-09-10 14:57:27 -07:00
jreiser@BitWagon.com
16d6124bb4
amd64-darwin.macho-upxmain for stub on Mac OS X 10.12 "Sierra"
2016-09-05 20:37:23 -07:00
jreiser@BitWagon.com
1197beaa13
ElfLinker::init() zero length implies 0x4000 blank bytes
2016-09-05 20:36:07 -07:00
jreiser@BitWagon.com
98b428a8be
Fix compiler warning
2016-09-05 20:32:52 -07:00
jreiser@BitWagon.com
17f47d3c0a
p_mach*: Try for MacOSX 10.12 "Sierra" with UUID, XHDR.
2016-09-04 19:05:31 -07:00
John Reiser
a9cc3b2a89
Use gcc-ppc64-linux-gnu-5.3.1-2.fc22.x86_64
...
But bin-upx-20130920/multiarch-ld-2.17 gets SIGSEGV for fold.h
src/stub/Makefile
src/stub/ppc64le-darwin.dylib-entry.h
src/stub/ppc64le-darwin.macho-entry.h
src/stub/ppc64le-linux.elf-entry.h
src/stub/ppc64le-linux.kernel.vmlinux.h
2016-07-27 08:57:54 -07:00
John Reiser
199102c106
stub/src/arch/arm/v8a/lzma_d_cf.S and follow-ons
...
src/stub/arm64-darwin.macho-entry.h
src/stub/src/arch/arm/v8a/lzma_d_cf.S
src/stub/tmp/arm64-darwin.macho-entry.bin.dump
2016-07-27 08:27:06 -07:00
John Reiser
c7d76fb7ab
Change copyright year 2013 ==> 2016 in ppc64le files.
...
src/stub/ppc64le-darwin.macho-fold.h
src/stub/src/arch/ppc64le/64/bxx.S
src/stub/src/arch/ppc64le/64/lzma_d.S
src/stub/src/arch/ppc64le/64/macros.S
src/stub/src/arch/ppc64le/64/nrv2b_d.S
src/stub/src/arch/ppc64le/64/nrv2d_d.S
src/stub/src/arch/ppc64le/64/nrv2e_d.S
src/stub/src/ppc64le-darwin.dylib-entry.S
src/stub/src/ppc64le-darwin.macho-entry.S
src/stub/src/ppc64le-darwin.macho-fold.S
src/stub/src/ppc64le-darwin.macho-main.c
src/stub/src/ppc64le-linux.elf-entry.S
src/stub/src/ppc64le-linux.elf-fold.S
src/stub/src/ppc64le-linux.elf-fold.lds
src/stub/src/ppc64le-linux.elf-main.c
src/stub/src/ppc64le-linux.kernel.vmlinux-head.S
src/stub/src/ppc64le-linux.kernel.vmlinux.S
2016-07-26 21:42:07 -07:00
John Reiser
ba9b86c0dc
added src/stub/src/arch/arm/v8a/lzma_d_cf.S
2016-07-26 21:32:43 -07:00
John Reiser
5de83a606e
Cleanup after Thierry Fauck changes for ppc64le.
...
We need a "UPX standard" compiler in order to re-compile the stubs for ppc64le;
meanwhile use Thierry's "pre-compiled" stubs.
Revert powerpc stubs to those produced by UPX standard powerpc.405-linux-gcc-3.4.5.
Cleanup the workarounds that Thierry used because he lacked upx-stubtools 20130920.
ARMv8 (64-bit) compiles but is incomplete and does not run yet.
changed src/Makefile
changed src/linker.cpp
changed src/stub/Makefile
changed src/stub/amd64-linux.elf-entry.h
changed src/stub/arm64-darwin.macho-entry.h
changed src/stub/arm64-darwin.macho-fold.h
changed src/stub/powerpc-darwin.dylib-entry.h
changed src/stub/powerpc-darwin.macho-entry.h
changed src/stub/powerpc-darwin.macho-fold.h
changed src/stub/powerpc-linux.elf-entry.h
changed src/stub/powerpc-linux.elf-fold.h
changed src/stub/powerpc-linux.kernel.vmlinux.h
changed src/stub/scripts/xstrip.py
changed src/stub/src/arch/arm/v8a/lzma_d.S
changed src/stub/src/arch/arm/v8a/macros.S
changed src/stub/src/arm64-darwin.macho-entry.S
changed src/stub/tmp/arm64-darwin.macho-entry.bin.dump
2016-07-26 21:29:29 -07:00
John Reiser
01a0c8672d
changeset: 2451:4e2a6c33d5fb
...
tag: ppc64le
user: Thierry Fauck <tfauck@free.fr >
date: Wed Jun 22 08:25:13 2016 -0400
summary: Add support for ppc64le statically linked binaries
2016-07-26 17:00:25 -07:00
John Reiser
fa522c0ffc
Hacking convert v4a/lzma_d-arm.S from 32-bit to 64-bit
2016-02-14 21:26:37 -08:00
John Reiser
16241d010f
PUSH+POP now in macros.S
2016-02-14 21:25:28 -08:00
John Reiser
9cb8fbf178
branch merge
...
branch 'default'
changed src/pefile.cpp
changed src/pefile.h
2016-01-31 20:11:42 -08:00
John Reiser
bd7ef27628
ARM64LE begins implementation
...
added src/stub/arm64-darwin.macho-entry.h
added src/stub/arm64-darwin.macho-fold.h
added src/stub/src/arch/arm/v8a/lzma_d.S
added src/stub/src/arch/arm/v8a/macros.S
added src/stub/src/arch/arm/v8a/nrv2b_d8.S
added src/stub/src/arch/arm/v8a/nrv2d_d8.S
added src/stub/src/arch/arm/v8a/nrv2e_d32.S
added src/stub/src/arch/arm/v8a/nrv2e_d8.S
added src/stub/src/arm64-darwin.macho-entry.S
added src/stub/src/arm64-darwin.macho-fold.S
added src/stub/src/arm64-darwin.macho-main.c
added src/stub/src/arm64-linux.elf-entry.S
added src/stub/src/arm64-linux.elf-fold.S
added src/stub/tmp/arm64-darwin.macho-entry.bin.dump
changed src/p_mach.cpp
changed src/p_mach.h
changed src/stub/Makefile
2016-01-31 20:09:38 -08:00
John Reiser
42e520e841
ElfLinkerArm64LE
2016-01-31 19:59:00 -08:00
John Reiser
d8f9cd237f
UPX_F_MACH_ARM64EL
2016-01-31 19:58:17 -08:00
László Molnár
33065ecf04
fixed resource bounds checking when compressing; let --force override throwing an exception
2015-08-11 13:05:10 +02:00
John Reiser
718a1da262
Bounds check shstrtab in PackVmlinuxBase<T>::canPack()
2015-08-10 05:45:52 -07:00
John Reiser
b89c3ebb42
LZMA version 15.05
2015-08-03 22:36:16 -07:00
John Reiser
9d7e44feff
GNU Make 4.0 does not assign to MAKEFLAGS sequentially
2015-08-03 22:35:00 -07:00
John Reiser
e48a60a4f0
Add link to goupx for Go-language workaround and UI.
2015-07-28 13:40:44 -07:00
John Reiser
163e1907a4
0==.vmsize in Go-language LC_SEGMENT_64; also g++ 5.1.1 nit
2015-07-25 12:54:25 -07:00
John Reiser
ac1ccaa246
Go-language PT_LOAD
2015-07-25 07:21:28 -07:00
John Reiser
53b45279ad
Better diagnosis of Go-language PT_LOAD; https://sourceforge.net/p/upx/bugs/195/
2015-07-25 07:11:57 -07:00
John Reiser
f80daf5de1
CERT-FI Case 829767 UPX command line tools segfaults
...
The vulnerabilities were discovered by Joonas Kuorilehto and Antti Häyrynen from Codenomicon.
2015-05-16 15:33:31 -07:00
John Reiser
298ea1f0d3
::unpack(): another check on b_info; uncompressed ElfXX_Ehdr must match input
2015-05-16 15:23:01 -07:00
John Reiser
1d13d8c4a0
PackMachBase::unpack() process lc_seg in same order as ::pack()
2015-05-16 15:20:03 -07:00
John Reiser
2238c99b61
another check on b_info in ::unpackExtent()
2015-05-16 15:18:28 -07:00
John Reiser
7d4dfbef2b
cleanup IPTR_I_D
2015-05-15 20:56:34 -07:00
John Reiser
759827b404
EI_OSABI for EM_ARM is a real mess
2015-05-15 20:47:35 -07:00
John Reiser
fca627d1b0
::seek() returns resulting off_t; InputFile::seek() restricts to actual _length
2015-05-15 20:44:09 -07:00
John Reiser
404da18aed
IPTR_I_D: 'import' buffer is a subset of ibuf
2015-05-15 20:42:18 -07:00
John Reiser
330fca722a
too large: blocksize > 1024*1024*1024 [corrupted]
2015-05-15 05:36:21 -07:00
John Reiser
8939cd120b
too small: (st.st_size < 512)
2015-05-15 05:32:52 -07:00
László Molnár
63afeb7373
added a check for corrupted packheader
2015-05-14 21:48:16 +02:00
László Molnár
6ba68a6455
PE related fixes for CERT-FI 829767
2015-05-14 21:46:52 +02:00
John Reiser
1579c74302
canPack() requires 0 < nfat
2015-05-10 14:01:48 -07:00
John Reiser
373ca15c71
size < 1024 is too short
2015-05-10 14:01:08 -07:00
John Reiser
a8a3caed1c
Check blocksize
2015-05-09 20:29:56 -07:00
John Reiser
cb35ba4543
At ::unpack much of decompressed Mach_header must match outer Mach_header
2015-05-09 20:14:32 -07:00
John Reiser
cdd152d015
Detect (int)blocksize < 0
2015-05-09 20:13:30 -07:00
John Reiser
83ce7dc62f
Must not compare orig_file_size with fi->st_size() during ::unpack
2015-05-09 17:47:17 -07:00
John Reiser
b182b50f24
Distinguish corruption of p_info, b_info
2015-05-09 10:13:13 -07:00
John Reiser
71a9941b84
Check getImageSize(). CERT-FI 829767
...
id:000058,sig:06,src:000001,op:havoc,rep:64
2015-05-09 07:29:26 -07:00
John Reiser
c777da263e
Check blocksize. CERT-FI 829767
...
id:000053,sig:06,src:000000,op:arith8,pos:10440,val:+20
2015-05-09 07:25:25 -07:00
John Reiser
2cb7b56a41
Check ph.c_len; CERT-FI 829767
...
id:000023,sig:06,src:000000,op:flip2,pos:10440
2015-05-09 07:18:54 -07:00
John Reiser
52f9ef14b9
Check ph.c_len; CERT-FI 829767
...
id:000010,sig:06,src:000000,op:flip1,pos:11584
2015-05-09 07:13:47 -07:00
John Reiser
8d6c594240
Check ph.c_len; CERT-FI 829767
...
id:000008,sig:06,src:000000,op:flip1,pos:205
2015-05-09 07:05:17 -07:00
John Reiser
7ad77ff540
Check blocksize. CERT-FI 829767
...
id:000005,sig:06,src:000000,op:havoc,rep:16
2015-05-09 06:56:32 -07:00
John Reiser
acede72e9b
Check ph.c_len. CERT-FI 829767
...
id:000002,sig:06,src:000000,op:havoc,rep:1
2015-05-09 06:49:45 -07:00
John Reiser
771fd732d1
Check e_phentsize; CERT-FI 829767
...
id:000064,sig:06,sync:upx-macho-crash-2,src:000096
2015-05-09 05:31:36 -07:00
John Reiser
2a79a69f59
PackUnix::unpack() is non-Elf. CERT-FI 829767
...
id:000057,sig:11,sync:upx-macho-crash-2,src:000108
id:000058,sig:11,sync:upx-macho-crash-2,src:000107
id:000059,sig:06,sync:upx-macho-crash-2,src:000106
id:000060,sig:06,sync:upx-macho-crash-2,src:000103
2015-05-09 05:14:12 -07:00
John Reiser
8c0321697f
Check PackHeader before decompress; CERT-FI id:000002,sig:06,src:000000,op:flip1,pos:4629
2015-05-08 20:13:44 -07:00
John Reiser
0151b3f9b3
Validate Mach_segment_command.cmdsize; CERT-FI id:000000,sig:11,src:000000,op:havoc,rep:2
2015-05-08 19:45:05 -07:00
John Reiser
82a51f35ea
Validate header CERT_FI id:000000,sig:11,src:000000,op:flip1,pos:1
2015-05-08 19:22:24 -07:00
John Reiser
35944cbfc1
Validate fat_head; CERT-FI id:000000,sig:06,src:000000,op:flip1,pos:7
2015-05-08 18:32:42 -07:00
John Reiser
f0aef9b28b
Check input data; CERT-FI upx-crashes-elf id:000000,sig:11,src:000000,op:flip1,pos:0
2015-05-08 17:04:16 -07:00
John Reiser
ae37c3902c
Apple codesign requires a different secTEXT.size
2015-03-27 20:41:00 -07:00
John Reiser
d612585582
C/7zTypes.h #if (WITH_LZMA >= 0x938)
2015-03-15 10:30:55 -07:00
John Reiser
7ca14d209c
Use upx_uint64_t instead of "unsigned long".
2015-01-10 12:26:35 -08:00
Markus F.X.J. Oberhumer
c37f582c10
Merge.
2015-01-04 11:11:05 +01:00
John Reiser
6272fb3822
ARM --lzma && is_big: stub mmap must allow for cpr0.sz_unc [How did this ever work before?]
2015-01-02 17:36:26 -08:00
Markus F.X.J. Oberhumer
2582fbac59
Update src/Makefile to use more conservative gcc optimization settings.
2015-01-03 01:55:51 +01:00
Markus F.X.J. Oberhumer
5abb578e47
p_djgpp2.{cpp,h}: remove usage of "long".
2015-01-03 01:12:46 +01:00
Markus F.X.J. Oberhumer
015ebf89a5
lefile.h: remove usage of "long".
2015-01-03 01:04:41 +01:00
Markus F.X.J. Oberhumer
c6724968f1
pefile.cpp: work around a gcc-3.4 limitation.
2015-01-03 00:40:28 +01:00
Markus F.X.J. Oberhumer
9fa1772ae4
Merge.
2015-01-03 00:34:42 +01:00
Markus F.X.J. Oberhumer
4551937812
Bump version year.
2015-01-03 00:26:48 +01:00
John Reiser
51ee664cae
PackLinuxElf32help1 refuses if e_ident[EI_DATA] mismatches bele policy
2015-01-02 15:25:29 -08:00
Markus F.X.J. Oberhumer
fb611a98f9
Welcome 2015.
2015-01-03 00:24:07 +01:00
Markus F.X.J. Oberhumer
a3d5face38
Fix a comment.
2015-01-03 00:21:51 +01:00
László Molnár
424cd497d3
pe64: saved a few bytes in the nrv decompressors
2014-03-18 23:35:30 +01:00
László Molnár
d46eeffaaf
NEWS updated
2014-03-10 21:53:46 +01:00
László Molnár
6520f2061e
arm/pe: thumb mode stub hopefully fixed
2014-03-10 21:44:23 +01:00
László Molnár
5d93f86b4b
armpe_tester: better import handling
2014-03-10 21:42:11 +01:00
László Molnár
b3f63ce7ae
pe: fix a bug in pack0() for arm
2014-03-09 23:55:28 +01:00
László Molnár
56de770682
armpe_tester now works on android
2014-03-09 23:42:41 +01:00
László Molnár
940341bc9d
arm/pe: import handling updates (untested)
2014-03-08 18:59:26 +01:00
László Molnár
804a0ce601
merge
2014-03-06 22:38:15 +01:00
László Molnár
41054a4c56
handle duplicates in ImportLinker
2014-03-06 22:26:41 +01:00
László Molnár
7b8e5d4180
pe: remove some dead code
2014-03-05 23:59:53 +01:00
László Molnár
ca2369f1c1
pe: win32/win64 pack/unpack seems to work again
2014-03-05 23:40:24 +01:00
László Molnár
129cb0b3cd
pe: packing of pe64 starts to work again
2014-03-04 23:51:59 +01:00
László Molnár
632b2ae1ba
pe: pack() logic moved to PeFile
2014-03-02 22:34:52 +01:00
László Molnár
18e55061e1
pepfile.* disabled; PeFile64 class introduced
2014-02-20 00:10:18 +01:00
László Molnár
e49b65723f
pe: canUnpack moved to PeFile
2014-02-19 23:27:41 +01:00
László Molnár
8e52894763
pe: loadconf handling moved to PeFile
2014-02-19 21:45:24 +01:00
László Molnár
07cba6c774
pe32: tls refactoring
2014-02-18 00:23:42 +01:00
László Molnár
9cb639b505
pe32: refactoring of import handling and unpacking continues
2014-02-16 23:04:39 +01:00
Markus F.X.J. Oberhumer
4cf6eeeee2
README.SRC: update an URL.
2014-01-27 20:59:47 +01:00
John Reiser
c0f692792f
2014
2014-01-10 19:23:41 -08:00
John Reiser
bd77e0945b
more LC_* constants
2014-01-10 19:22:30 -08:00
Markus F.X.J. Oberhumer
f0eb171b2a
Strip trailing whitespace.
2014-01-07 23:09:11 +01:00
Markus F.X.J. Oberhumer
fb93662b5c
Bump version for next release.
2014-01-07 23:08:00 +01:00
Markus F.X.J. Oberhumer
a26c982e93
Welcome 2014.
2014-01-07 23:05:10 +01:00
Markus F.X.J. Oberhumer
7db3e98944
Small cleanups.
2014-01-07 23:03:16 +01:00
Markus F.X.J. Oberhumer
4a87834e04
New ACC version.
2014-01-07 19:15:57 +00:00
Markus F.X.J. Oberhumer
bf6ecaeeb9
stub: minor cosmetic cleanups.
2013-12-02 19:37:28 +01:00
Markus F.X.J. Oberhumer
f70ef86dfa
help.cpp: add a missing con_fg() call.
2013-12-02 19:23:06 +01:00
John Reiser
cd3132667a
ARM shlib escape hatch moves to just beyond .text.
...
https://sourceforge.net/p/upx/bugs/223/
2013-11-22 19:26:19 -08:00
John Reiser
1c459a7bea
Sync stubs.
2013-11-16 14:29:52 -08:00
John Reiser
4f0bfeab4c
Round down unfilter length to a multiple of 4.
...
https://sourceforge.net/p/upx/bugs/223
2013-11-16 14:28:59 -08:00
John Reiser
c5c9921b59
Unpack detects is_shlib more robustly. Dispute .e_shoff.
2013-11-16 14:25:53 -08:00
John Reiser
6b63aba1fc
Disable jni_onload_*
2013-11-09 16:06:41 -08:00
John Reiser
382331fb11
e_phoff and e_shoff are 32/64 specific
2013-10-28 07:11:40 -07:00
John Reiser
caf9af7ae4
JNI_OnLoad is a pre-DT_INIT in a shared library.
2013-10-26 09:51:25 -07:00
John Reiser
45d2adeb9c
Android < 4.1 (kernel < 3.0.31) often has PT_INTERP of /system/bin/linker
...
with bad PT_LOAD[0]. https://sourceforge.net/p/upx/bugs/221
2013-10-21 07:27:53 -07:00
László Molnár
96708d7592
ImportLinker copied into PeFile
2013-10-12 16:48:56 +02:00
John Reiser
13090d1219
ARM close /proc/self/exe after mmap
2013-10-06 19:56:14 -07:00
László Molnár
8ab229cca9
pe: refactoring started
2013-10-06 22:57:20 +02:00
John Reiser
583cd078dc
ARM elf-fold: preserve /proc/self/exe by mmap of one page into stack
2013-10-06 13:22:05 -07:00
László Molnár
aa2ac1bbb8
pe: ImportLinker introduced
2013-10-04 22:48:21 +02:00
Markus F.X.J. Oberhumer
928b426672
Add tag for RELEASE_391.
2013-09-30 15:51:00 +00:00
Markus F.X.J. Oberhumer
6766b14415
Prepare release.
2013-09-30 14:21:37 +02:00
John Reiser
9d0f9e967f
Avoid stmdb with write-back register in stored list,
...
even when stored value is don't care.
2013-09-21 09:52:21 -07:00
John Reiser
d7609088e5
Silence "warning: cannot find entry symbol _start"
2013-09-21 08:39:15 -07:00
Markus F.X.J. Oberhumer
b2643b6926
Start using the new intergral type names.
2013-09-20 08:19:18 +02:00
Markus F.X.J. Oberhumer
07b65ca069
Introduce integral type names using <stdint.h> terminology like "upx_uint64_t".
2013-09-20 08:16:37 +02:00
Markus F.X.J. Oberhumer
25727f7f99
Minor portability fixes.
2013-09-20 07:48:29 +02:00
Markus F.X.J. Oberhumer
880ae89307
Bump version and tentative release date.
2013-09-20 07:19:06 +02:00
Markus F.X.J. Oberhumer
1496df1989
New ACC version.
2013-09-20 07:09:35 +02:00
Markus F.X.J. Oberhumer
7d8ae6b4b1
Make amd64-win64.pep.S compile with current upx stubtools.
2013-09-20 07:08:09 +02:00
Markus F.X.J. Oberhumer
312d4cccaf
stub: start using stubtools bin-upx-20130920.
2013-09-20 06:59:27 +02:00
Markus F.X.J. Oberhumer
ce5f9f95ea
stub: fix i386 syntax for current gas versions, and add some explicit
...
alignments at the end of the file so that we do not depend on gas defaults.
2013-09-20 06:15:46 +02:00
Markus F.X.J. Oberhumer
d9bf8a76d9
Protect against changes from future gas versions in amd64-linux.elf-entry.S.
2013-09-20 05:22:05 +02:00
Markus F.X.J. Oberhumer
f7a35fb9fe
stub: save 1 byte in amd64-darwin.{dylib,macho}-entry.S.
2013-09-20 04:20:23 +02:00
Markus F.X.J. Oberhumer
3ba691ded5
Remove trailing whitespace.
2013-09-20 03:25:59 +02:00
Markus F.X.J. Oberhumer
7a7277d56f
Use correct "movzwl" opcode in src/stub/src/arch/i386/macros.S.
2013-09-20 03:18:19 +02:00
László Molnár
76be5dd1d3
linker: Section::offset should be u64
2013-09-01 21:38:44 +02:00
László Molnár
53dc63f3bc
linker: a small 64-bit relocation support related fix
2013-09-01 11:15:30 +02:00
László Molnár
80da0bc9d5
pepfile: infoWarning about unsupported relocation types fixed
2013-08-28 22:33:39 +02:00
László Molnár
bce7af4e11
fixed 8 bit range checking in ElfLinkerAMD64::relocate1
2013-08-28 22:31:40 +02:00
László Molnár
9da09b51ed
win64/pe: tls callback assembly improvements + misc cleanups
2013-08-28 21:53:23 +02:00
László Molnár
86392f197f
win64/pe: lzma support added
2013-08-28 00:24:54 +02:00
László Molnár
1c13046297
win64/pe: added nrv2b and nrv2d support
2013-08-27 22:06:52 +02:00
László Molnár
fbc756b531
win64/pe: filter support added
2013-08-27 21:22:21 +02:00
László Molnár
6c64b06453
win64/pe: uncompression seems to work; tls handling improvement
2013-08-26 22:07:55 +02:00
László Molnár
241834029a
64 relocation handling added; basic DLL support works
2013-08-25 23:54:13 +02:00
László Molnár
5b8a9c0b47
basic win64 PE support added
2013-08-22 22:01:09 +02:00
László Molnár
037c29d24a
added full support for 64-bit relocations
2013-08-22 21:43:11 +02:00
László Molnár
893f26ac9a
fix wcle fixup unpacking segfault (sf.net bug 220)
2013-08-19 13:39:44 +02:00
John Reiser
d43f8e3100
Alignment bug in test or decompress of shared library;
...
sourceforge.net/p/upx/bugs/218/
2013-07-06 13:50:15 -07:00
John Reiser
2b42acf7b8
ARM heuristic dcache flush by sweeping 1/2 MB
2013-06-10 14:20:59 -07:00
John Reiser
f65b80ed42
ARM remember readlink("/proc/self/exe",) as environment variable " =" (3 spaces)
2013-06-09 20:33:59 -07:00
John Reiser
e84abbdc82
ARM __clear_cache() has bugs
...
Linux hostname 3.0.8-482645-user #1 SMP PREEMPT Mon Apr 30 19:43:45 KST 2012 armv7l GNU/Linux
Processor : ARMv7 Processor rev 3 (v7l)
processor : 0
BogoMIPS : 597.12
processor : 1
BogoMIPS : 597.12
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x1
CPU part : 0xc09
CPU revision : 3
Hardware : Espresso10
Revision : 000a
2013-06-09 13:03:06 -07:00
John Reiser
66269eabe9
ARM Try a hole so that kernel does not extend brk(0)
2013-06-08 08:39:08 -07:00
John Reiser
36c0928483
ARM __clear_cache() on escape hatch; http://sourceforge.net/p/upx/bugs/214/
2013-06-07 07:08:03 -07:00
John Reiser
9237e15adc
Fix ARM compress shared library.
2013-05-10 16:20:52 -07:00
Markus F.X.J. Oberhumer
0d3a2072b2
Add some more sanity checks in pefile.cpp.
2013-04-04 14:30:52 +02:00
Markus F.X.J. Oberhumer
aa2ee5dfc2
New ACC version.
2013-03-20 16:48:27 +00:00
John Reiser
b515fa39ec
Apple codesign follies: need more flags
2013-03-07 19:47:44 -08:00
Markus F.X.J. Oberhumer
76e3f4eb92
Post-release version bump.
2013-02-20 13:50:12 +01:00
Markus F.X.J. Oberhumer
4959e5c6c2
Add tag for RELEASE_309.
2013-02-18 16:09:00 +00:00
Markus F.X.J. Oberhumer
7082594bbc
Prepare release.
2013-02-18 11:03:33 +01:00
Markus F.X.J. Oberhumer
36dd35f238
Silence some compilation warnings.
2013-02-18 11:01:30 +01:00
John Reiser
9c9fb6a485
DEBUG-only bug in decimal()
2013-02-15 16:35:45 -08:00
John Reiser
5438a4837b
more AT_PHDR trouble
2013-02-15 16:32:51 -08:00
Markus F.X.J. Oberhumer
84996e8cb6
Bump tentative release date.
2013-02-12 10:32:11 +01:00
Markus F.X.J. Oberhumer
87a368a857
Welcome 2013.
2013-02-12 10:14:03 +01:00
Markus F.X.J. Oberhumer
21412d93dd
New ACC version.
2013-02-12 08:16:44 +00:00
John Reiser
0b11ff22b4
internal documentation: pointer to source for Apple codesign
2013-02-03 11:27:02 -08:00
John Reiser
8fafa78796
sync stubs
2013-01-31 12:33:16 -08:00
John Reiser
c43158f8a2
find PT_LOAD in case ARM PT_EXIDX is first
2013-01-31 12:21:51 -08:00
John Reiser
92ad524947
clear registers at user entry (paranoia)
2013-01-31 12:20:42 -08:00
John Reiser
b362a61863
fix for user brk() on ARM with static linking
2013-01-31 12:19:35 -08:00
John Reiser
468fec38d7
Fix .e_ident[EI_OSABI] for Debian armhf.
2013-01-30 13:31:35 -08:00
John Reiser
89830a5ae0
Mac OS X codesign disallows overhang of vmsize.
2013-01-25 15:58:25 -08:00
John Reiser
5977c296bd
Fix codesign for Mac OS X.
2013-01-24 15:28:21 -08:00
John Reiser
47d5792d97
Updates to prepare for next release.
2012-11-14 09:07:10 -08:00
Markus F.X.J. Oberhumer
25d706a913
Whitespace cleanup.
2012-10-31 15:50:52 +01:00
John Reiser
048236aaaa
Isolate change to p_mach.cpp of previous revision
...
(p_lx_elf.cpp and p_lx_elf.h were included by mistake.)
2012-10-10 08:58:15 -07:00
John Reiser
d442c58fd1
MachO no longer needs contiguous LC_SEGMENT (SourceForge bug 3308161)
2012-10-10 08:51:52 -07:00
John Reiser
f890f6bb09
ignore another .vmsize==0; fix unfold which needs another page
2012-08-23 14:26:42 -07:00
John Reiser
036d466790
allow 3-byte decompressor overrun; fix DEBUG decimal(); unify with i386
2012-08-23 14:25:32 -07:00
John Reiser
dee47ba2d8
implement DEBUG
2012-08-23 14:22:55 -07:00
John Reiser
be96c28b77
fix DEBUG decimal() of negative number
2012-08-23 12:37:44 -07:00
John Reiser
ad1c0f578e
fix DEBUG decimal() of negative number
2012-08-23 07:31:30 -07:00
John Reiser
c8f7b1b72c
MacOSX launcher gets SIGBUS when it cannot find mapped Mach_header.
...
Add segZERO, segMHDR, secMHDR.
2012-08-22 20:46:35 -07:00
John Reiser
c89702ae84
skip 0==.vmsize; also DEBUG, DPRINTF
2012-08-22 20:43:00 -07:00
John Reiser
2d29a82250
PackMachBase<T>::pack1() segTEXT.vmaddr must ignore zero-length segments
2012-08-20 20:02:26 -07:00
John Reiser
b36c65e654
fix Mac OS X code signing; also leave room for LC_UUID
2012-08-04 16:44:21 -07:00
John Reiser
09b072b908
Leave space for code signing on Mac OS X.
2012-08-03 13:28:33 -07:00
John Reiser
0ae9fee350
Mach_linkedit_data_command
2012-08-03 13:20:00 -07:00
John Reiser
1579182ed9
PackUnix::canUnpack() allows zero-filled last page
2012-08-03 13:19:28 -07:00
John Reiser
074671aa71
::unpack "if (fo)"; also "delete []" (SourceForge bug 3545609)
2012-07-19 20:11:44 -07:00
John Reiser
36b7c47247
__DWARF LC_SEGMENT_64 with .vmsize==0 (SourceForge bug 3308161)
2012-07-18 15:37:41 -07:00
John Reiser
424d5b3025
UPX_LZMA_VERSION, zlib, zlib-devel, URL for lzma SDK
2012-07-16 15:22:22 -07:00
John Reiser
8a5d352733
Portability: fix "EOFException: premature end of file" doing ELF on Windows.
...
OutputFile::read() was bad news; fsync() should work, but was missing.
2012-07-12 14:25:28 -07:00
John Reiser
f383629282
compressWithFilters(..., inhibit_compression_check=0) // SourceForge bug 3541020
...
Not good to check compression ratio on every block when blocksize < file_size,
as when --force_execve of Elf > 0x80000 bytes.
2012-07-12 07:04:56 -07:00
John Reiser
a6d717cb04
big endian, too: ARM Linux EABI version 4 and 5 is a mess
2012-07-07 07:45:51 -07:00
Markus F.X.J. Oberhumer
84a5753301
New ACC version.
2012-05-31 16:08:14 +00:00
Markus F.X.J. Oberhumer
5d2d9c7e81
Update .hgignore. Update valgrind macros.
2012-04-26 09:05:35 +02:00
Markus F.X.J. Oberhumer
82801d1411
Fix some typos in documentation and comments.
2012-03-27 02:14:03 +02:00
John Reiser
340c3963d8
MIPS mmap_privanon in .S in case gcc learns how to 'bal'.
2012-03-14 08:24:04 -07:00
John Reiser
ef15cf9847
merge
2012-03-13 19:56:30 -07:00
John Reiser
4d613ccfa7
MIPS mmap_privanon() forgot to set syscall number; also gcc __asm__() problems.
...
[Sourceforge upx-Bugs-3503753]
2012-03-13 19:54:47 -07:00
Markus F.X.J. Oberhumer
43ce34d547
Welcome 2012.
2012-01-01 22:35:11 +01:00
Markus F.X.J. Oberhumer
eda074cd80
New ACC version.
2012-01-01 21:18:43 +00:00
Markus F.X.J. Oberhumer
a2396d82f6
NEWS: spelling fixes.
2011-12-14 18:06:39 +01:00
Markus F.X.J. Oberhumer
a38721db93
Remove meaningless "const" from casts.
2011-12-14 06:05:41 +01:00
Markus F.X.J. Oberhumer
a06e811717
Remove extra semicolons.
2011-12-14 06:05:08 +01:00
Markus F.X.J. Oberhumer
86e534ff75
Remove trailing whitespace. Remove hard tabs.
2011-12-14 06:03:08 +01:00
John Reiser
640d5b2dec
Option --preserve-build-id for Gnu ELF; contributed by Nicholas Twerdochlib
...
(SourceForge [ upx-Patches-3413335 ])
2011-12-13 17:26:03 -08:00
John Reiser
57e9b27085
merge
2011-12-13 10:54:55 -08:00
John Reiser
c56eefc739
Document /proc/self/exe problems on arm*-linux-elf.
2011-12-13 10:53:26 -08:00
Markus F.X.J. Oberhumer
cf28306997
Post-release version bump.
2011-12-13 01:30:00 +01:00
Markus F.X.J. Oberhumer
10acf3ddd1
Add tag for RELEASE_308.
2011-12-12 16:08:00 +00:00
Markus F.X.J. Oberhumer
fed3ed9f9a
Prepare release.
2011-12-12 11:55:45 +01:00
Markus F.X.J. Oberhumer
260138ba11
Silence some compilation warnings.
2011-12-12 11:30:02 +01:00
John Reiser
67f7e0089c
NEWS summary in preparation for release
2011-12-06 08:22:44 -08:00
John Reiser
d4a22c7851
Sync stub for amd64-darwin.macho-entry.
2011-12-06 07:03:53 -08:00
John Reiser
06cf986490
overlap unfolded stub on Mach-O amd64 [SourceForge upx-Bugs-3447184]
2011-12-02 22:01:13 -08:00
John Reiser
adf9aa04ce
overlap unfolded stub on Mach-O i386 [SourceForge upx-Bugs-3447184]
2011-12-02 20:51:13 -08:00
John Reiser
69f66fbe52
rebuild using broader dependencies of previous commit
2011-11-23 13:25:25 -08:00
John Reiser
d061005c89
propagate dependency on i386-linux.elf-main.c by hand
2011-11-23 13:23:11 -08:00
John Reiser
f6ee8b9f04
MSVC++ disallows zero-length array in struct
2011-11-23 13:05:00 -08:00
John Reiser
31af22c2ff
ARM_is_QNX looks for PT_INTERP containing "ldqnx"
2011-10-16 15:04:18 -07:00
John Reiser
c421e3f243
ARM stub: fix editing mistake
2011-10-16 13:40:21 -07:00
John Reiser
6e92902407
ARM_is_QNX() heuristic
2011-10-16 13:11:03 -07:00
John Reiser
6256381dc3
mmap_privanon() in stub for arm,i386,mips eases QNX
2011-10-16 11:39:46 -07:00
John Reiser
b247b051ea
QNX on armel (experimental)
2011-10-15 19:49:37 -07:00
Markus F.X.J. Oberhumer
afbd553622
Silence some compilation warnings.
2011-08-30 03:40:53 +02:00
John Reiser
36bc14e884
fix PackMachFat::unpack for test mode ("-t"): fo==NULL
2011-07-11 14:37:40 -07:00
John Reiser
9c5d0ff2ff
PeFile::processRelocs() defends itself against corrupt PE header
2011-06-08 10:06:42 -07:00
John Reiser
cfa6c8ddf6
Fix ::pack3 for shared library.
2011-06-06 20:00:43 -07:00
John Reiser
21924bf022
move stub escape hatch for shared library to end of .text [glibc-2.13.90]
2011-06-02 07:18:50 -07:00
John Reiser
eea33f6019
Document copy ONLY for old_dtinit, .e_shoff in compressed shared library.
2011-05-31 11:01:40 -07:00
John Reiser
66d48ae808
MH_BUNDLE enum
2011-05-30 07:22:31 -07:00
John Reiser
de9b9fd0b1
more messages in PackLinuxElf32::canPack
2011-05-30 07:21:51 -07:00
John Reiser
ece7384be4
fpad4 from st_size(), not from getBytesWritten()
2011-05-28 12:18:27 -07:00
John Reiser
0c052e4506
amd64 output PT_LOAD[0] ends after loader
2011-05-20 10:29:04 -07:00
John Reiser
1996a0a3d6
32-bit shared libraries on i386 only (SourceForge bug 3286178)
2011-04-14 09:39:55 -07:00
László Molnár
679ad9b8c6
fixed computing of tls data end (sf.net bug 3256788)
2011-03-29 15:49:20 +02:00
John Reiser
d4983731e7
More l_info.l_lszie and .l_checksum TargetEndian.
2011-03-28 11:11:05 -07:00
John Reiser
4fec3c8f34
Merge.
2011-03-28 10:45:47 -07:00
John Reiser
836fd2565f
Place loader immediately after compressed PT_LOADs, in "middle" of file.
...
This moves compressed gaps and debuginfo out of compressed PT_LOADs,
and fixes a bug where large debuginfo would cause first mmap
at runtime to erase the loader (SourceForge bug 3239079).
2011-03-28 10:44:23 -07:00
John Reiser
54618064a1
l_info.l_lsize and .l_checksum are TargetEndian
2011-03-28 10:14:06 -07:00
John Reiser
519e3e01ae
OutputFile implements read() and readx(); beware --stdout.
2011-03-28 10:12:36 -07:00
László Molnár
aec8f81358
fixed a warning (sf.net bug 3241423)
2011-03-25 12:02:22 +01:00
John Reiser
c1d6bf4366
avoid .so with DT_TEXTREL; SourceForge bug 3190915
2011-02-24 09:38:17 -08:00
Markus F.X.J. Oberhumer
9bf2b79d9e
Enter 2011.
2011-01-03 08:49:23 +01:00
Markus F.X.J. Oberhumer
4d98408995
Remove trailing whitespace.
2010-12-29 15:46:55 +01:00
Markus F.X.J. Oberhumer
7b466388f9
Detabify.
2010-12-29 15:46:34 +01:00
Markus F.X.J. Oberhumer
b926fb3c66
Fix __cdecl syntax error.
2010-12-24 10:38:30 +01:00
László Molnár
6c8d5c0d0e
replaced abort() with internal_error() (sf.net bug 3101319)
2010-12-21 10:28:36 +01:00
László Molnár
5a1d234260
merge
2010-12-21 09:40:16 +01:00
John Reiser
fd6d42c297
i386-linux.shlib-init needs empty LEXECDYN (sourceforge 3101319)
2010-12-20 10:20:10 -08:00
László Molnár
7310ad6e92
align TLS callbacks to 4 byte boundary
2010-12-20 14:57:24 +01:00
László Molnár
7e47b1348d
fixed a typo
2010-12-20 10:51:29 +01:00
László Molnár
1e3555a6b7
added some input validity checks (for sf.net bug 3122661)
2010-12-20 00:35:57 +01:00
László Molnár
9a67ce5968
do not skip dlls with no imports from the preprocessed import data (sf.net bug 3125753)
2010-12-19 23:22:58 +01:00
Markus F.X.J. Oberhumer
279d7955f8
Keep entries sorted in Makefiles.
2010-12-03 01:04:16 +01:00
Markus F.X.J. Oberhumer
db977c0bf5
Add a .dump file to repo.
2010-11-29 15:28:35 +01:00
Markus F.X.J. Oberhumer
ba6bc59818
Update .hgignore.
2010-11-29 15:28:10 +01:00
John Reiser
6e8be0578c
improve PIC_STRING
2010-11-18 08:23:08 -08:00
John Reiser
92f7d16b5e
more flexible labels on trace output
2010-11-18 08:22:36 -08:00
John Reiser
40bb3c2f5e
better PIC_STRING for __mips__
2010-11-17 20:45:39 -08:00
John Reiser
56a6096221
better PIC_STRING for __mips__
2010-11-17 20:42:01 -08:00
John Reiser
ee37b42a91
DEBUG for MIPS i386-linux.elf-main.c
2010-11-17 20:21:41 -08:00
John Reiser
0806e61df4
move DEBUG_STRCON adjacent to uses
2010-11-17 15:17:03 -08:00
John Reiser
279ffeeefa
unify DEBUG STR_* into i386-linux.elf-main.c from *.elf-fold.S
2010-11-17 14:32:24 -08:00
John Reiser
80c5ee2479
use up4()
2010-11-17 14:28:00 -08:00
John Reiser
16208544e5
ELFOSABI_NETBSD
2010-11-17 14:27:00 -08:00
John Reiser
6afeb24fdb
use brand_netbsd
2010-11-17 12:49:29 -08:00
John Reiser
e6357b81eb
NetBSD version 5 requires PT_NOTE for PaX. Also adjust other *BSD and PT_NOTE.
...
[Tested OK on FreeBSD 8.1, NetBSD 5.1, OpenBSD 4.8. Cleanup needed.]
2010-11-16 21:13:42 -08:00
John Reiser
dfc2efe8a6
make_hatch_arm() needs sys_munmap; also fix ARM div10.
2010-11-15 11:51:46 -08:00
John Reiser
f28b96f431
Stand-alone tracing for ARM stub; "#define DEBUG 1" then re-compile.
...
https://sourceforge.net/tracker/?func=detail&atid=102331&aid=3105926&group_id=2331
2010-11-13 21:30:34 -08:00
John Reiser
a10293f8f7
ARM copy .e_flags from input to output to preserve soft_FP flag, etc.
2010-11-09 11:05:55 -08:00
John Reiser
b1f02f91d7
NetBSD 5.0 wants PT_NOTE and branded executables
2010-11-09 10:47:53 -08:00
Markus F.X.J. Oberhumer
e76fa45d86
Small upx_sanity_check() update.
2010-11-08 23:59:34 +01:00
Markus F.X.J. Oberhumer
06f43892a5
Set sane abort() default behaviour when using msvcrt.
2010-11-08 20:48:50 +01:00
Markus F.X.J. Oberhumer
a094332b0d
Silence some compilation warnings.
2010-10-23 11:40:41 +02:00
Markus F.X.J. Oberhumer
7b8779f534
Portability updates.
2010-10-20 01:46:38 +02:00
Markus F.X.J. Oberhumer
371bf20d19
New ACC version.
2010-10-17 10:10:23 +02:00
Markus F.X.J. Oberhumer
0f633ddd15
Bump version for next release.
2010-09-08 18:04:39 +02:00
Markus F.X.J. Oberhumer
7886ca7f5f
Add tag for RELEASE_307.
2010-09-08 15:07:00 +00:00
Markus F.X.J. Oberhumer
9b4c11954d
Prepare release.
2010-09-08 16:56:49 +02:00
László Molnár
a1b724f30a
NEWS updated
2010-09-08 16:02:04 +02:00
László Molnár
7c3b2fb9cc
relocation entry for TLS callbacks is only needed when we do have TLS callbacks
2010-09-08 15:06:56 +02:00
Markus F.X.J. Oberhumer
acef68d67e
Bump version for next release.
2010-09-04 20:23:02 +02:00
Markus F.X.J. Oberhumer
7e393d5f1e
Add tag for RELEASE_306.
2010-09-04 15:06:00 +00:00
Markus F.X.J. Oberhumer
955c31b165
Prepare release.
2010-09-04 13:11:59 +02:00
László Molnár
e307cd48ad
merge
2010-09-02 12:30:16 +02:00
László Molnár
25f8b9e451
added Stefan to THANKS
2010-09-02 12:27:50 +02:00
Markus F.X.J. Oberhumer
e8ba14a2c1
Silence some compilation warnings.
2010-09-01 14:49:26 +02:00
Markus F.X.J. Oberhumer
9670d3341c
Makefiles: sort result from wildcard, needed for unwise GNU make 3.82 change.
2010-09-01 14:10:14 +02:00
László Molnár
cec9778fd5
added a NEWS entry for the win32 TLS callback stuff
2010-08-31 14:35:59 +02:00
John Reiser
7451db4a68
merge
2010-08-17 11:32:02 -07:00
John Reiser
e31777ec53
ARM ELF EABI version 5
...
https://sourceforge.net/tracker/?func=detail&atid=102331&aid=3040129&group_id=2331
2010-08-17 11:30:17 -07:00
László Molnár
7aa0b3dc7a
merge
2010-08-16 13:49:54 +02:00
László Molnár
e7b2d5dc01
coding style updates - only whitespace changes
2010-08-16 13:36:10 +02:00
László Molnár
47d728667d
merge
2010-08-16 13:20:28 +02:00
László Molnár
e1f8989d54
removed dosish file endings
2010-08-16 13:09:27 +02:00
Stefan Widmann
1d8cb47830
TLS handling updated to v2, ASLR fix in unpacking
2010-08-13 17:44:21 +02:00
Markus F.X.J. Oberhumer
faaa7c37a9
Remove duplicate file.
2010-08-08 16:32:59 +02:00
Markus F.X.J. Oberhumer
0aff9d8df4
Use consistent syntax for boolean preprocessor expressions.
2010-08-08 16:20:16 +02:00
Markus F.X.J. Oberhumer
30c3f8c1ac
New ACC version.
2010-08-08 16:10:30 +02:00
John Reiser
bcd2469e01
merge
2010-08-06 13:31:54 -07:00
John Reiser
983c6ae73d
amd64 stub: relocate ADRX and ADRU after copy
2010-08-06 13:29:32 -07:00
Markus F.X.J. Oberhumer
6d8e1fe776
Start using acc_getopt.
2010-08-05 15:08:06 +02:00
Markus F.X.J. Oberhumer
99b4921309
New ACC version.
2010-08-05 15:06:03 +02:00
John Reiser
3c231c3c9e
FreeBSD 8.x got picky about MAP_ANONYMOUS
2010-07-21 10:19:11 -07:00
John Reiser
175c0a6236
--unmap-all-pages affects i386-*BSD, too
2010-07-20 12:47:33 -07:00
John Reiser
0031ceb06c
propagate changes from auxv_find() in i386-linux.elf-main.c
2010-07-17 08:22:09 -07:00
John Reiser
e3cc5a63df
don't erase AT_SYSINFO* if no conflict with decompressed folded stub
2010-07-17 08:19:50 -07:00
John Reiser
3cb61402c2
merge
2010-07-16 21:01:45 -07:00
John Reiser
5336c51199
Fix conflict between VDSO and unfolded decompressor for ET_DYN
...
(-fPIE) with unlimited stack on Linux-2.6.34 et al.
2010-07-16 20:58:52 -07:00
Markus F.X.J. Oberhumer
52aa658aaa
Silence some compilation warnings.
2010-07-14 20:03:09 +02:00
John Reiser
d08a51d7e4
fix don't-care uninit from valgrind(memcheck)
2010-07-07 09:52:58 -07:00
John Reiser
d97a557ac3
unpacking PackMachFat::CPU_TYPE_X86_64
2010-06-28 16:02:57 -07:00
John Reiser
8a68d9cded
more MACH_SEGMENT_ENUM; no code yet
2010-06-15 09:22:59 -07:00
László Molnár
b031f7e902
always initialize variable use_tls_callbacks
2010-06-15 15:04:48 +02:00
Markus F.X.J. Oberhumer
963ffecb96
Update upx-tools link in README.SRC.
2010-06-09 15:15:37 +02:00
Markus F.X.J. Oberhumer
8f8aaca818
Remove trailing whitespace.
2010-06-06 22:40:10 +02:00
László Molnár
801f92b7e7
merge
2010-06-04 17:56:52 +02:00
László Molnár
44db45700e
new version of .dump file
2010-06-04 17:55:13 +02:00
Stefan Widmann
25902005f6
win32/pe TLS handling added
2010-06-01 19:21:52 +02:00
John Reiser
ffec71e0d8
Fix vmlinux/ppc32 at compress time. Runtime needs work.
2010-04-28 20:43:50 -07:00
John Reiser
99a208110b
Detect LC_SEGMENT beyond end-of-file in PackMachBase<T>::find_SEGMENT_gap.
2010-04-28 20:05:23 -07:00
Markus F.X.J. Oberhumer
e56799c993
Bump version for next release.
2010-04-27 17:26:05 +02:00
Markus F.X.J. Oberhumer
957eb300f8
Add tag for RELEASE_305.
2010-04-27 15:05:00 +00:00
Markus F.X.J. Oberhumer
626025d539
Prepare release.
2010-04-27 16:09:41 +02:00
Markus F.X.J. Oberhumer
9e8a0a020f
Remove outdated ChangeLog target.
2010-04-26 18:29:28 +02:00
Markus F.X.J. Oberhumer
40f592eade
Add one .dump file.
2010-04-26 18:27:54 +02:00
Markus F.X.J. Oberhumer
5e899f0be4
Silence some annoying compiler warnings.
2010-04-19 03:15:22 +02:00
Markus F.X.J. Oberhumer
f2748284b1
New ACC version.
2010-04-19 03:15:01 +02:00
Markus F.X.J. Oberhumer
a15ce00934
Fix some small memory leaks. Minor cleanup.
2010-04-10 13:57:25 +02:00
John Reiser
9e3e80261b
merge
2010-03-31 14:15:18 -07:00
John Reiser
c72c685434
Diagnose PT_LOAD beyond end-of-file.
...
https://sourceforge.net/tracker/?func=detail&atid=102331&aid=2979240&group_id=2331
2010-03-31 14:09:28 -07:00
Markus F.X.J. Oberhumer
0177a8d277
Use upx_snprintf instead of snprintf.
2010-03-31 02:23:06 +02:00
Markus F.X.J. Oberhumer
b6a9b0a4c9
Silence some compilation warnings.
2010-03-31 02:16:32 +02:00
John Reiser
f4f8bd8d42
Fix for "upx --help" constructs with (0===f)
2010-03-17 18:33:30 -07:00
John Reiser
6e4aeffc0c
Withdraw support for shared libraries (.dylib) on Darwin (Apple Mac OS X).
2010-03-12 10:20:18 -08:00
John Reiser
dba256d384
Fix amd64-darwin.dylib-entry.S so it compiles.
2010-03-11 14:37:17 -08:00
John Reiser
910008e9e7
Hack on amd64-darwin.dylib-entry.S
2010-03-10 18:58:38 -08:00
John Reiser
8cb9545c41
Hack on amd64-darwin.dylib-entry.S
2010-03-10 15:19:18 -08:00
John Reiser
59c16da6fb
PackMachBase::pack4dylib avoid sliding if offset or reloff is 0.
2010-03-10 13:14:52 -08:00
John Reiser
630df5bbd2
Fix structs from Apple mach-o/loader.h for 64-bit. (Apple goofed.)
2010-03-10 10:29:41 -08:00
John Reiser
f550111400
PackDylibAMD64 (Mac OS X shared library on x86_64)
2010-03-09 19:02:25 -08:00
John Reiser
77377195aa
Allow CPU_TYPE_X86_64 for MH_EXECUTE in fat (universal) binaries,
...
but no MH_DYLIB yet. infoWarning() for unsupported cputype.
2010-03-09 13:35:06 -08:00
John Reiser
7e2e72bd40
infoWarning for shlib with no DT_INIT
2010-03-09 13:03:03 -08:00
John Reiser
aa7a13bd02
Linux kernels must be ET_EXEC
2010-03-09 09:22:57 -08:00
John Reiser
5895058a17
Linux kernels must be ET_EXEC
2010-03-09 09:20:46 -08:00
John Reiser
ffb60d5149
memmove instead of overlapping memcpy
2010-03-08 22:01:25 -08:00
John Reiser
1e2cb279b0
Fix memory leak in --lzma compression.
2010-03-08 22:00:35 -08:00
John Reiser
e7f766f5ba
i386-linux.shlib: stub commonality with non-shlib
2010-03-08 17:33:56 -08:00
John Reiser
8de5aa9409
Fix ET_DYN main program on amd64-linux.elf.
2010-03-08 16:59:53 -08:00
John Reiser
bf28a4df49
MIPS stub NRV_HEAD always saves $ra on stack.
...
bits.ash has the only __MIPSEL__/__MIPSEB__ dependency: lwl/lwr swl/swr.
2010-03-08 10:49:11 -08:00
Markus F.X.J. Oberhumer
fe1a0ab371
Bump tentative release date.
2010-03-06 16:50:17 +01:00
Markus F.X.J. Oberhumer
01daccfaf7
Avoid compiler warnings.
2010-03-06 16:35:18 +01:00
Markus F.X.J. Oberhumer
94e861e298
Rebuild stubs.
2010-03-06 16:34:05 +01:00
Jens Medoch
d36af2ed5c
Import 3-upx-hg_mips-r3k_base.patch.
2010-03-06 16:27:38 +01:00
Jens Medoch
7104b33214
Import 2-upx-hg_mips-r3k_makefile.patch.
2010-03-06 16:26:32 +01:00
Jens Medoch
32998e5377
Import 1-upx-hg_mips-stub_clean-up.patch.
2010-03-06 16:25:58 +01:00
Jens Medoch
af0c9ef092
Import 0-upx-hg_mips-r3k_ucl.patch.
2010-03-06 16:25:29 +01:00
Markus F.X.J. Oberhumer
3bc3b3d10e
Detabify. Remove trailing whitespace.
2010-03-01 01:28:03 +01:00
John Reiser
f03f42ca4d
Linux preserve /proc/self/exe; --unmap-all-pages option
2010-02-28 15:58:08 -08:00
John Reiser
79783abeb1
merge
2010-02-20 20:48:42 -08:00
John Reiser
895b0bd602
merge
2010-02-20 20:46:20 -08:00
John Reiser
2ee5ee92f8
merge
2010-02-20 20:44:54 -08:00
John Reiser
3e619423b1
merge
2010-02-20 20:40:32 -08:00
John Reiser
b524e18bdf
merge
2010-02-20 20:40:20 -08:00
John Reiser
6aa4579db8
merge
2010-02-20 20:40:04 -08:00
John Reiser
17fb86c0f1
merge
2010-02-20 20:39:52 -08:00
John Reiser
62ecfe4873
merge
2010-02-20 20:39:39 -08:00
John Reiser
04e55e6b9a
merge
2010-02-20 20:39:19 -08:00
John Reiser
f432aa1090
merge
2010-02-20 20:39:04 -08:00
John Reiser
7add104313
merge
2010-02-20 20:38:20 -08:00
John Reiser
36de249066
merge
2010-02-20 20:36:34 -08:00
John Reiser
b7a54dcffd
merge
2010-02-20 20:26:08 -08:00
John Reiser
6bb28deab2
merge
2010-02-20 20:24:55 -08:00
John Reiser
7f88d15c86
ELF ::unpack decompressing ElfXX_Ehdr changes .e_phnum
2010-02-20 19:57:34 -08:00
John Reiser
94c5014e23
merge
2010-02-15 11:09:28 -08:00
John Reiser
c5a8256500
mention Elf32_auxv[AT_EXECFN]
2010-02-15 11:07:46 -08:00
Markus F.X.J. Oberhumer
5f39884bf7
Silence a compiler warning.
2010-02-07 00:10:49 +01:00
Markus F.X.J. Oberhumer
d96825a242
Fix a typo.
2010-02-07 00:10:38 +01:00
Markus F.X.J. Oberhumer
443a938091
New ACC version.
2010-02-06 17:18:46 +01:00
Markus F.X.J. Oberhumer
6bc3197721
Enter 2010.
2010-02-06 17:15:49 +01:00
John Reiser
269cc91fd5
Support share libraries on i386 and amd64 under linux.
2010-01-17 19:58:58 -08:00
Markus F.X.J. Oberhumer
c1ddea479d
Minor portability fixes.
2009-12-03 19:58:23 +01:00
John Reiser
5f3a95962c
PackLinuxElf32::unpack fix ARM (thumb)
2009-10-26 13:35:14 -07:00
John Reiser
ee1a8e6a32
eabi-linux.shlib unfilter in thumb mode
2009-10-26 10:37:11 -07:00
John Reiser
eeae73296e
thumb-eabi-linux.shlib, and use it (for smaller size) instead of ARM.
...
[Consider compress-time option to choose ARM vs thumb?]
2009-10-26 09:05:12 -07:00
John Reiser
4ca8357af4
Merge
2009-10-26 08:11:37 -07:00
John Reiser
8a5b8c87fb
arm.shlib-init: escape hatch is 8 bytes; speedup movsl
2009-10-25 20:40:26 -07:00
John Reiser
6ab04d7bbc
::buildLinuxLoader empty FOLDEXED for shlib
2009-10-25 13:52:41 -07:00
Markus F.X.J. Oberhumer
a5a1380636
Add missing .dump files to repo.
2009-10-24 13:55:36 +02:00
John Reiser
eeab1aef64
Synonyms R_ARM_THM_PC22 and R_ARM_THM_XPC22 for R_ARM_THM_CALL.
2009-10-22 21:05:05 -07:00
John Reiser
4e1c342e55
arm-linux.shlib escape hatch: munmap temporary pages
2009-10-21 09:32:42 -07:00
John Reiser
d8ed259bce
arm-linux.shlib allow thumb interworking for DT_INIT
2009-10-21 08:13:09 -07:00
John Reiser
9f6cb5de4c
armel-eabi-linux.shlib: improve integration with system calls.
2009-10-20 09:53:45 -07:00
John Reiser
ba634118d7
Shorten runtime copying for armel-eabi-linux.shlib.
2009-10-19 22:28:44 -07:00
John Reiser
63da091d36
Compress shared library for armel-eabi-linux.
2009-10-19 20:48:46 -07:00
John Reiser
ad0dc88a33
Cleanup some FIXME. amd64-linux.shlib forces 4KiB page size to save space.
2009-10-18 16:03:26 -07:00
John Reiser
147acf4b57
Compress shared library for amd64-linux.
2009-10-17 21:55:03 -07:00
John Reiser
5085f3a15e
Allow ET_DYN on amd64-linux.elf
2009-10-16 17:47:16 -07:00
John Reiser
22a95ad8ea
fix comment
2009-10-16 17:46:41 -07:00
John Reiser
df4bd6a60c
move PackLinuxElf32x86::unpack up the class hierarchy to PackLinuxElf32
2009-10-16 11:00:33 -07:00
John Reiser
813e7b05e4
fix .ui_total_passes when shlib
2009-10-16 10:56:15 -07:00
John Reiser
ab8b486b4a
Fix -Wshadow complaints.
2009-10-16 10:01:29 -07:00
Markus F.X.J. Oberhumer
590f666ec9
Enable -Wshadow compiler option.
2009-10-16 18:06:16 +02:00
Markus F.X.J. Oberhumer
9adaee915b
Detabify.
2009-10-16 16:29:09 +02:00
Markus F.X.J. Oberhumer
bce0f06fe9
Rebuild stubs so that they actually match the source code!
2009-10-16 16:27:52 +02:00
John Reiser
856ecb84a0
Compress shared library for i386-linux. DT_INIT must exist. Everything
...
needed by ld-linux for runtime relocation must be at the beginning of the
first PT_LOAD, etc.
2009-10-15 20:35:07 -07:00
John Reiser
90ddc06c98
DT_INIT, DT_CHECKSUM, DT_VERSYM, DT_VERDEF, DT_VERNEEDED
2009-10-14 17:50:35 -07:00
John Reiser
405abc4e95
::packExtent updates ph.u_adler to satisfy verifyOverlappingDecompression()
...
even when 0==hdr_u_len
2009-10-14 17:47:02 -07:00
John Reiser
549c59ecf5
fix OutputFile::seek() for SEEK_SET and SEEK_END
2009-10-14 17:44:29 -07:00
John Reiser
0a485eafcb
Better detection of Position Independent main Executables (gcc -pie -FPIC).
2009-10-10 14:50:30 -07:00
John Reiser
e0c11956a6
ElfXX_Rel, ElfXX_Rela
2009-10-10 14:41:01 -07:00
John Reiser
da6a9bf3eb
Move conditional side effect (reset .all_methods_use_lzma)
...
out of ::PackExe constructor, so that Visitor pattern avoids it.
2009-10-09 16:09:53 -07:00
John Reiser
dacd11e1cc
Fix sourceforge bug #2874848 : Mach/fat needs seek() after set_extent().
2009-10-08 12:53:02 -07:00
Markus F.X.J. Oberhumer
fc854b4c77
Bump version for next release.
2009-09-27 20:08:49 +02:00
Markus F.X.J. Oberhumer
4dcc1f0374
Add tag for RELEASE_304.
2009-09-27 20:07:28 +02:00
Markus F.X.J. Oberhumer
fc57390242
Bump release date.
2009-09-27 20:06:01 +02:00
Markus F.X.J. Oberhumer
bd15ef0a0c
Bump tentative 3.04 release date.
2009-09-21 05:44:19 +02:00
Markus F.X.J. Oberhumer
967ecafc33
Small compatibility updates.
2009-09-21 05:41:49 +02:00
John Reiser
29576da985
catch up to bugfix for arm-darwin stub
2009-09-01 07:33:08 -07:00
John Reiser
200a2556ef
New format Mach/AMD64 for 64-bit x86 programs on Apple Macintosh
2009-09-01 07:30:37 -07:00
John Reiser
ae0ab5025e
fix debug mixup
2009-09-01 07:21:18 -07:00
John Reiser
aa74276b25
gcc-4.4.1 is more strict about 'const'
2009-08-30 19:44:45 -07:00
Markus F.X.J. Oberhumer
b03112a5dd
Silence some compilation warnings.
2009-06-09 13:11:21 +02:00
Markus F.X.J. Oberhumer
a3f49df62d
Remove trailing whitespace.
2009-06-09 09:43:00 +02:00
Markus F.X.J. Oberhumer
aa2af3f6dd
Add missing stub to repo.
2009-06-09 09:40:25 +02:00
John Reiser
20dcbc593c
PackMachFat for MH_DYLIB, too.
2009-06-01 16:23:13 -07:00
John Reiser
472ba8c1fd
UPX_F_DYLIB_PPC32 is big endian, so move to >=128
2009-06-01 12:38:20 -07:00
John Reiser
d8345a44a4
Dylib/ppc32 format works.
2009-05-31 12:57:10 -07:00
John Reiser
a187cb6c9c
work on stub for powerpc-darwin.dylib-entry.S
2009-05-29 22:08:08 -07:00
John Reiser
b89c0b35d1
bugfix: PackMachBase::pack2 first extent is Mach_header plus Mach_segment_commands
2009-05-29 13:38:43 -07:00
John Reiser
7ffcc0a5e7
powerpc-darwin.dylib
2009-05-27 10:19:50 -07:00
John Reiser
bde43fbdfb
PackMachBase<T>::pack4dylib to prepare for more architectures
2009-05-23 21:13:44 -07:00
John Reiser
3728b2208f
Cleanup declaration of PackDylibI386.
2009-05-22 08:37:44 -07:00
John Reiser
dc52a756ee
i386-darwin.dylib-entry.bin.dump
2009-05-21 22:06:26 -07:00
John Reiser
98dc886841
i386-darwin kernel expects 64-bit off_t; we always use 0 for top 32 bits.
2009-05-21 21:50:17 -07:00
John Reiser
d0cf104e43
Announce Dylib/i386 format in NEWS.
2009-05-20 08:11:04 -07:00
John Reiser
d7ed2412f6
386-darwin.dylib decompressor chains to user .init_address
2009-05-20 07:10:14 -07:00
John Reiser
7d38f0e234
i386-darwin.dylib ::unpack
2009-05-19 15:57:18 -07:00
John Reiser
3e8d072d24
i386-darwin.dylib requires existing LC_ROUINTES command;
...
decompressor must not overwrite Mach_headers.
2009-05-19 09:43:05 -07:00
John Reiser
84ac771893
Decompression part for Mach dylib i386.
2009-05-18 11:59:11 -07:00
John Reiser
3a9e0b5be6
Compression part for Mach dylib i386.
2009-05-13 10:40:21 -07:00
Markus F.X.J. Oberhumer
9694ff433f
Fix grammar in version date.
2009-04-19 20:14:24 +02:00
Markus F.X.J. Oberhumer
2e82e78b98
Bump tentative release date.
2009-04-19 18:46:31 +02:00
Markus F.X.J. Oberhumer
aaef4bee27
Prefer memcpy() over struct-copy.
2009-04-19 18:44:17 +02:00
Markus F.X.J. Oberhumer
4ca8569488
Remove trailing whitespace.
2009-04-19 18:36:42 +02:00
John Reiser
8377ada3e0
catch up stubs for arm
2009-03-01 11:19:05 -08:00
John Reiser
8a034d59ed
arm linux kernel --small: hand assembly for LzmaDecode
2009-02-26 13:07:11 -08:00
John Reiser
8e492d8798
arm linux kernel: decompress_kernel() returns length, not pointer
2009-02-25 13:50:55 -08:00
John Reiser
7974ef80d7
branch merge
2009-02-12 12:42:57 -08:00
John Reiser
3664d86430
i386-linux.elf-fold fix compressed size for ET_DYN
2009-02-12 12:41:10 -08:00
Markus F.X.J. Oberhumer
9adef80d6b
Replace all __attribute_packed by new __packed_struct macros.
2009-02-12 05:20:23 +01:00
Markus F.X.J. Oberhumer
be57adaee7
Update tools/armpe_tester.
2009-02-12 03:33:14 +01:00
Markus F.X.J. Oberhumer
d117e442a4
Silence a compiler warning.
2009-01-27 19:05:18 +01:00
Markus F.X.J. Oberhumer
8820bc0796
Add support for LZMA SDK 4.62. Compiles, but pretty much untested.
2009-01-03 23:33:25 +01:00
Markus F.X.J. Oberhumer
57a64de023
Small conf.h update.
2009-01-01 13:40:52 +01:00
Markus F.X.J. Oberhumer
5ed689ceb0
Enter 2009.
2008-12-31 17:07:18 +01:00
Markus F.X.J. Oberhumer
25f1765f36
Support building with OpenWatcom 1.8. Silence some compiler warnings.
2008-12-31 16:56:38 +01:00
Markus F.X.J. Oberhumer
063bd58802
Silence gcc's -Wstrict-aliasing=1 warnings.
2008-12-29 23:15:56 +01:00
Markus F.X.J. Oberhumer
901c6b34fa
New ACC version.
2008-12-29 23:14:54 +01:00
Markus F.X.J. Oberhumer
5b2d6488a2
Silence some compilation warnings.
2008-12-29 22:22:28 +01:00
László Molnár
f6f35415d1
check processor type in PackW32Pe::canUnpack
2008-12-20 14:48:13 +01:00
Markus F.X.J. Oberhumer
6c6069e963
New ACC version.
2008-12-16 23:59:37 +01:00
Markus F.X.J. Oberhumer
6219d82560
Detabified some sources.
2008-11-16 19:03:40 +01:00
John Reiser
1dcd7a16ab
add missing source file
2008-11-16 08:01:40 -08:00
John Reiser
b60caeb9dd
source files for arm-darwin.macho-*.S
2008-11-16 07:35:53 -08:00
John Reiser
4c4768aaf3
derived .h fles for arm-darwin.macho
2008-11-15 14:46:03 -08:00
John Reiser
2f4ac0a663
format UPX_F_MACH_ARMEL, class PackMachARMEL: iPhone
2008-11-15 14:44:19 -08:00
John Reiser
23a446f852
unshare armel-linux.elf-main.o vs. arm-linux.elf-main.o (for comiler flags)
2008-11-15 14:09:06 -08:00
John Reiser
ec48334a1a
propagate changes into stub/amd64-linux.elf-fold.h
2008-11-15 08:52:02 -08:00
John Reiser
f4c061d412
amd64-linux.elf: workaround for SIGSEGV on Centos 5.2
...
https://sourceforge.net/tracker/?func=detail&atid=102331&aid=2136491&group_id=2331
2008-11-15 08:49:13 -08:00
John Reiser
31a076d7b3
PackVmlinuzARMEL: only 8-bit control words for compression
2008-11-15 08:44:50 -08:00
John Reiser
6bd43d986c
sync stub for armel-linux.kernel.vmlinuz.h
2008-09-15 13:51:55 -07:00
John Reiser
dd32a2f15a
forgot source for armel-linux.kernel.vmlinuz stubs
2008-09-15 10:35:53 -07:00
John Reiser
c88c20820f
new format vmlinuz/armel for Debian NSLU2 (etc.) linux kernel
2008-09-15 10:18:19 -07:00
John Reiser
86de510731
bvmlinuz boot protocol 2.08 (not yet complete?)
2008-08-04 17:30:44 -07:00
John Reiser
0b31fbf827
armel-eabi sets Elf32_Ehdr::EI_ABIVERSION = 4
2008-08-04 17:29:59 -07:00
John Reiser
34ad1450eb
boot protocol 2.08 for bvmlinuz; Extended ABI version 4 for armel-eabi
2008-08-04 17:28:23 -07:00
John Reiser
e6ba71390d
armel-eabi choose proper decompressor
2008-07-20 15:35:19 -07:00
John Reiser
f0c8dbe0ec
armel-eabi-linux.elf (Debian) new protocol for system calls
2008-07-20 05:41:51 -07:00
John Reiser
bf046a8ccb
more checking when treating ELF as .bin
2008-07-20 05:40:00 -07:00
John Reiser
b05ba7683e
bvmlinuz/386 boot protocol 2.08 has gzipped ELF [needs more work]
2008-07-18 15:02:28 -07:00
John Reiser
aedf8dad15
amd64 argc can be zero
2008-07-16 14:56:44 -07:00
John Reiser
74ebb7c722
more get_te32(&...) needed for endian neutrality
2008-07-16 13:49:28 -07:00
John Reiser
1307f66494
stub/i386-*.*-fold.S: allow 0==argc
2008-05-15 09:05:20 -07:00
John Reiser
448a24cb36
PackVmlinuzI386::getStrategy(), and Bvmlinuz guesses 60% .text;
...
stack for Bvmlinuz uses vacant Vmlinuz low memory (512 KiB)
2008-05-02 04:59:39 -07:00
Markus F.X.J. Oberhumer
7266f23450
New ACC version.
2008-04-30 02:45:13 +02:00
Markus F.X.J. Oberhumer
c0ad31acfc
Bump version for next release.
2008-04-27 18:46:52 +02:00
Markus F.X.J. Oberhumer
25d3a0de27
Added tag for RELEASE_303.
2008-04-27 11:38:15 +02:00
John Reiser
1e38bbfbc1
merge
2008-04-26 13:08:13 -07:00
John Reiser
1c62e95812
Bvmlinuz fix filters
2008-04-26 13:04:13 -07:00
Markus F.X.J. Oberhumer
d453cc27a3
Style: start using correct IEC binary prefix (KiB, MiB, ...) - see
...
http://en.wikipedia.org/wiki/Binary_prefix for more details.
2008-04-26 08:48:13 +02:00
Markus F.X.J. Oberhumer
2c3e841d8a
Fix comment.
2008-04-26 08:23:05 +02:00
John Reiser
50668c462f
Bvmlinuz h.sys_size, and more heuristics
2008-04-25 12:07:38 -07:00
John Reiser
8d1192e832
Bvmlinuz,Vmlinuz make room for largest possible decompression stack
...
by moving kernel command line up, and real mode area down
2008-04-24 12:15:07 -07:00
John Reiser
4a8e2e9ed4
grub-0.97-33.fc9 does not leave enough room for lzma
2008-04-23 16:37:16 -07:00
Markus F.X.J. Oberhumer
12fc45220a
Shorten --help text.
2008-04-17 14:07:03 +02:00
Markus F.X.J. Oberhumer
6bce68fbe7
Bump tentative release date.
2008-04-17 12:16:23 +02:00
Markus F.X.J. Oberhumer
d54f947c98
Add Packer::hasLoaderSection() to handle missing CFLUSH sections.
2008-04-07 18:44:00 +02:00
Markus F.X.J. Oberhumer
6c8bb3a22e
Rebuild all stubs with new formatting - no binary changes.
2008-04-04 17:21:24 +02:00
Markus F.X.J. Oberhumer
ed29ce5183
bin2h.py: improve formatting.
2008-04-04 17:20:17 +02:00
Markus F.X.J. Oberhumer
a51d269b7c
Use new bin2h.py mode.
2008-04-04 16:37:12 +02:00
Markus F.X.J. Oberhumer
8283e4e6d6
bin2h.py: add support for --mode=gas-be32 and --mode=gas-le32.
2008-04-04 16:35:58 +02:00
John Reiser
23ce91eb55
MIPS big-endian lzma build rules
2008-04-03 09:01:55 -07:00
John Reiser
545ac7fcfa
Merge
2008-04-02 19:10:39 -07:00
John Reiser
3926ccccad
MIPS-linux.elf flush icache after moving decompressor
2008-04-02 19:09:31 -07:00
Markus F.X.J. Oberhumer
f431307ef2
Silence some compilation warnings.
2008-04-02 19:24:05 +02:00
Markus F.X.J. Oberhumer
ca368e0f9b
Add a note about broken scanf() implementations.
2008-04-02 16:34:31 +02:00
John Reiser
8afeb56c11
Big-endian MIPS NRV nested subroutine must save+restore register ra.
2008-04-01 22:09:14 -07:00
John Reiser
2a6f90c5f3
Big-endian MIPS must fetch NRV 32-bit "control" words as little endian.
2008-04-01 20:06:27 -07:00
John Reiser
271031128e
Fix ElfLinkerMipsBE::relocate1. Create CFLUSH section in
...
mipsel.r3000-linux.elf-entry.S and powerpc-darwin.macho-entry.S .
2008-03-31 08:55:35 -07:00
John Reiser
b991f954d0
Fix "Failure with Ubuntu 7.10" SourceForge Bug tracker 1825006
...
when --force-execve with kernel 2.6.22-14-generic et al.
2008-03-27 15:51:19 -07:00
John Reiser
f12bb3f80d
bvmlinuz must preserve register esi
2008-03-04 15:41:42 -08:00
Markus F.X.J. Oberhumer
6dc978e8d8
Remove trailing whitespace.
2008-02-28 00:04:32 +01:00
John Reiser
9f05a873bc
Merge
2008-02-26 12:17:21 -08:00
John Reiser
703d498772
Implement cache flush for PowerPC.
2008-02-26 12:15:09 -08:00
Markus F.X.J. Oberhumer
ed3b9543bb
Cosmetic Makefile update.
2008-02-26 02:59:00 +01:00
Markus F.X.J. Oberhumer
fc7efba7d8
Silence some compilation warnings.
2008-02-26 02:55:39 +01:00
Markus F.X.J. Oberhumer
b3178fe8f4
stub/Makefile: cosmetic updates.
2008-01-30 16:39:45 +01:00
Markus F.X.J. Oberhumer
e36798a993
Remove unused stub/amd64-linux.kernel.vmlinuz.
2008-01-30 16:19:46 +01:00
Markus F.X.J. Oberhumer
a143605465
Remove trailing whitespace.
2008-01-30 07:22:32 +01:00
Markus F.X.J. Oberhumer
d3ad35b21e
Rebuild stubs.
2008-01-30 07:20:45 +01:00
Markus F.X.J. Oberhumer
68134941bf
Small Makefile update.
2008-01-30 07:20:19 +01:00
John Reiser
54d0fef559
BvmlinuzI386 runtime-relocatable kernels
2008-01-29 10:33:45 -08:00
Markus F.X.J. Oberhumer
7f9c47176a
Introduce target endianness accessors get_teXX() and set_teXX() in packer.h to
...
replace all [gs]et_nativeXX() member functions.
2008-01-09 13:57:47 +01:00
Markus F.X.J. Oberhumer
9060ac7897
Rename template integral types from U32 to TE32 to emphasize on target
...
endianness.
2008-01-09 12:45:44 +01:00
John Reiser
d9073e4a17
PackVmlinuzI386 detects non-relocated kernel
2008-01-08 09:03:21 -08:00
Markus F.X.J. Oberhumer
de1c1d7cc2
Update help header message.
2008-01-02 11:40:16 +01:00
Markus F.X.J. Oberhumer
6ff1bd5917
Update my email address.
2008-01-02 10:12:42 +01:00
Markus F.X.J. Oberhumer
a6b04f426e
Bump version year.
2008-01-02 09:47:52 +01:00
Markus F.X.J. Oberhumer
fa49dbe2cb
Enter 2008.
2008-01-02 09:42:31 +01:00
Markus F.X.J. Oberhumer
682eb04a52
New ACC version.
2008-01-02 09:34:45 +01:00
Markus F.X.J. Oberhumer
77064fb09e
Makefile update.
2008-01-02 09:32:32 +01:00
Markus F.X.J. Oberhumer
be8d93563a
Introduce first --mp-xxx options.
2007-12-20 06:39:31 +01:00
Markus F.X.J. Oberhumer
d4a6a5216d
Makefile updates.
2007-12-18 22:37:30 +01:00
Markus F.X.J. Oberhumer
1cb1427050
Detabify.
2007-12-17 06:00:33 +01:00
Markus F.X.J. Oberhumer
e4f4eace1c
Added support for LZMA SDK 4.57. Compiles, but pretty much untested.
2007-12-17 05:54:08 +01:00
Markus F.X.J. Oberhumer
30a98b7e8c
Remove trailing whitespace.
2007-12-17 05:49:34 +01:00
Markus F.X.J. Oberhumer
d36c8d95ad
Bump version for next release.
2007-12-16 15:10:44 +01:00
Markus F.X.J. Oberhumer
506bd0abcf
Add tag for RELEASE_302.
2007-12-16 15:08:32 +01:00
Markus F.X.J. Oberhumer
8dd810c41d
Bump release date.
2007-12-16 15:07:05 +01:00
John Reiser
d9d0dc5201
get_native(&Elf32_Phdr.p_align)
2007-12-15 10:07:09 -08:00
Markus F.X.J. Oberhumer
72880d9e03
Disable leftover debug printf statements.
2007-12-12 08:36:03 +01:00
Markus F.X.J. Oberhumer
6c7ec6eb1b
Update brandelf.py.
2007-12-12 05:25:15 +01:00
Markus F.X.J. Oberhumer
705fc5d116
Rebuild stubs.
2007-11-27 01:12:45 +01:00
Markus F.X.J. Oberhumer
d20b575b9b
Merge.
2007-11-27 01:12:09 +01:00
John Reiser
c949beab9c
mipsel.r3000-linux.elf-entry.S syscall clobbers t8
2007-11-26 14:56:23 -08:00
Markus F.X.J. Oberhumer
3fb857c435
Cleanup brandelf.py.
2007-11-26 19:57:00 +01:00
Markus F.X.J. Oberhumer
0a4f999ade
Fix missing rebuild from previous commit.
2007-11-25 08:59:52 +01:00
John Reiser
f0b7147881
mips*.r3000-linux.elf clear stack to workaround suspected bug in glibc-2.3.2
2007-11-24 15:24:10 -08:00
John Reiser
b36a42cd0a
PackVmlinuzI386 detects relocatable kernel (cannot handle yet)
2007-11-20 12:01:50 -08:00
Markus F.X.J. Oberhumer
000309b47f
stub: remove filename from dumps in order reduce diff noise when renaming files.
2007-11-20 06:34:48 +01:00
Markus F.X.J. Oberhumer
5cb12988f0
Merge.
2007-11-20 06:31:16 +01:00
John Reiser
50c4b749ec
PackVmlinuxBase<T>::pack always defineFilterSymbols(), esp. for PackVmlinuxAMD64
2007-11-19 18:39:25 -08:00
Markus F.X.J. Oberhumer
5db2734e6f
Small Makefile updates.
2007-11-19 09:48:27 +01:00
Markus F.X.J. Oberhumer
e9e5507483
stub: rename "mipseb" to "mips".
2007-11-14 04:54:33 +01:00
Markus F.X.J. Oberhumer
d63dc7adfb
stub: we can reuse our existing mipsel-* tools for mips (big endian).
2007-11-14 04:40:40 +01:00
John Reiser
27db44a8db
generated headers for mipseb.r3000-linux.elf
2007-11-13 17:54:05 -08:00
John Reiser
1a035e2866
PackLinuxElf32::canPack must use explicit get_native32
2007-11-13 11:11:31 -08:00
John Reiser
887aa20116
ElfLinkerMipsBE is big endian
2007-11-13 11:09:15 -08:00
John Reiser
5e03d86695
new PackLinuxElf32mipseb
2007-11-13 11:08:48 -08:00
John Reiser
95075aa28e
MIPSEB implementation [still broken because no big-endian tools]
2007-11-12 09:23:45 -08:00
John Reiser
0260f0790a
mipseb.r3000-linux.elf [broken because no big-endian tool chain]
2007-11-12 09:12:51 -08:00
John Reiser
34d65ba292
ET_DYN -fPIE position-independent executables
2007-11-12 09:11:16 -08:00
John Reiser
27a77a15ed
prepare to deal with DT_GNU_HASH instead of DT_HASH
2007-11-12 09:05:36 -08:00
John Reiser
76025bfae1
_NR_link
2007-11-12 08:54:34 -08:00
John Reiser
4957faf482
DT_GNU_HASH, DT_JMPREL, etc.
2007-11-12 08:54:02 -08:00
Markus F.X.J. Oberhumer
0d8e16d5c8
Rename nocopy to noncopyable.
2007-11-07 23:13:20 +01:00
Markus F.X.J. Oberhumer
07baed1581
Improved IO error checking.
2007-11-06 03:21:32 +01:00
Markus F.X.J. Oberhumer
eab5da075a
And yet some more dos/exe size reduction.
2007-09-14 16:59:19 +02:00
Markus F.X.J. Oberhumer
0d1bbb19ce
Small Makefile cleanup.
2007-09-14 16:31:17 +02:00
Markus F.X.J. Oberhumer
58d6cbc6ac
More dos/exe lzma size reduction.
2007-09-14 16:03:51 +02:00
Markus F.X.J. Oberhumer
4d3b627839
Save some more bytes in dos/exe lzma stub.
2007-09-14 15:47:18 +02:00
Markus F.X.J. Oberhumer
49455c99ad
Save 1 byte in dos/exe stub.
2007-09-14 13:48:00 +02:00
Markus F.X.J. Oberhumer
31bb6bedbd
stub i086: use decimal constants.
2007-09-13 22:52:43 +02:00
Markus F.X.J. Oberhumer
8d54678ea1
Switch back to using binutils-multiarch-2.17.
2007-09-13 20:14:29 +02:00
Markus F.X.J. Oberhumer
590767c299
Make stub files compatible with binutils-multiarch-2.18.
2007-09-13 19:59:41 +02:00
John Reiser
ec1bd342b8
fix error checking in mmap for i386-linux.elf [triggered by -fPIE]
2007-09-08 06:55:47 -07:00
John Reiser
b031c9e7f6
fix unmapping on arm-linux.elf
2007-08-30 11:55:58 -07:00
John Reiser
ea0dfe83b7
arm-linux.elf-entry.S clobbered ADRU with sz_unc of fold
2007-08-30 11:53:16 -07:00
Markus F.X.J. Oberhumer
bdd90f2c57
Allow setting the compression method in the environment variable (popular
...
request from our users).
2007-08-04 12:13:09 +02:00
Markus F.X.J. Oberhumer
288dac5d70
Bump version for next release.
2007-07-31 22:50:23 +02:00
Markus F.X.J. Oberhumer
9d22e1c35e
Added tag for RELEASE_301.
2007-07-31 22:42:40 +02:00
Markus F.X.J. Oberhumer
ace2359e7b
Bump tentative release date.
2007-07-31 15:06:53 +02:00
Markus F.X.J. Oberhumer
617e6510a5
docs: mention a workaround for --exact option.
2007-07-31 15:00:38 +02:00
Markus F.X.J. Oberhumer
26024770b8
For the moment we always throwCantPack() for arm/pe and win32/pe.
2007-07-30 17:47:42 +02:00
Markus F.X.J. Oberhumer
d556f58e34
Fix screen problems by not relying on pass number in startCallback().
2007-07-30 17:27:43 +02:00
Markus F.X.J. Oberhumer
b6f302dfc0
Makefile: use /bin/echo for better portability.
2007-07-30 12:56:35 +02:00
Markus F.X.J. Oberhumer
8e9b5f14af
Small Makefile updates.
2007-07-11 07:03:05 +02:00
Markus F.X.J. Oberhumer
3635c00143
Added support for LZMA SDK 4.49. Compiles, but pretty much untested.
2007-07-08 13:58:08 +02:00
Markus F.X.J. Oberhumer
abc71baaa6
Avoid some warnings.
2007-07-08 11:42:45 +02:00
John Reiser
959aaebede
bvmlinuz piggy.o need not be last in bzImage
2007-07-02 14:27:31 -07:00
John Reiser
d17f8c5049
linux-2.6.21.5 CONFIG_PARAVIRT
2007-07-02 12:48:14 -07:00
Markus F.X.J. Oberhumer
42a7201a70
Updated README.1ST.
2007-06-19 15:26:02 +02:00
Markus F.X.J. Oberhumer
1f1744a49a
Added new options --no-mode, --no-owner and --no-time.
2007-06-19 15:14:12 +02:00
Markus F.X.J. Oberhumer
fd7dbe5bd9
Update docs of --exact option.
2007-06-19 14:49:53 +02:00
Markus F.X.J. Oberhumer
984549400d
Clean up various names in getFullName().
2007-06-12 14:25:00 +02:00
Markus F.X.J. Oberhumer
cf0c49277e
Add processing instructions to gpp_inc.py.
2007-06-12 13:40:35 +02:00
Markus F.X.J. Oberhumer
16c3f9fa9c
Small Makefile updates.
2007-06-12 12:46:56 +02:00
John Reiser
2f2539cf34
workaround weak python script gpp_inc.py
2007-06-10 06:54:10 -07:00
John Reiser
e66823d017
mipsel.r3000-linux: flush cache for NRV, fix stub copying when big
2007-06-09 17:13:50 -07:00
John Reiser
881c32a3df
fix NRV_HEAD and NRV_TAIL in stub for mipsel.r3000-linux
2007-06-09 13:52:56 -07:00
John Reiser
ea0a361c35
fix argv[0] on PowerPC with --lzma
2007-06-04 10:13:14 -07:00
László Molnár
dc60f8bb7b
merge
2007-05-18 16:11:11 +02:00
László Molnár
9e92c9ea12
pe: added a check for too small object alignment
2007-05-17 18:02:50 +02:00
John Reiser
a503a54240
mipsel remember /proc/self/exe in environment
2007-05-16 15:37:22 -07:00
John Reiser
265957712a
merge
2007-05-16 13:56:37 -07:00
John Reiser
c26962bb71
fix build glitch
2007-05-16 13:53:17 -07:00
John Reiser
a428eddf93
catch up automatically-generated files
2007-05-16 13:51:44 -07:00
John Reiser
dc4f7eb2f9
mipsel close()
2007-05-16 13:51:00 -07:00
John Reiser
d54ac1ba91
use register $25 for trampoline
2007-05-16 13:50:16 -07:00
John Reiser
a3d46b18ac
cacheflush
2007-05-16 13:49:54 -07:00
John Reiser
e81dd05666
bug in make_hatch_*(); simplify xfind_pages() when MAP_FIXED; update AT_BASE
2007-05-16 13:48:44 -07:00
Markus F.X.J. Oberhumer
29394935e3
Use -Wstrict-prototypes CFLAGS in stub/Makefile.
2007-05-16 04:34:30 +02:00
Markus F.X.J. Oberhumer
df8acc4ed7
Added .NOTPARALLEL to stub/Makefile.
2007-05-14 11:30:40 +02:00
John Reiser
81928d4ab1
mipsel stub escape hatch for munmap
2007-05-10 13:13:11 -07:00
John Reiser
3ebf93e03d
mipsel syscall read+write of same register
2007-05-09 22:17:09 -07:00
John Reiser
59e4032f1f
mipsel stub syscall registers
2007-05-08 13:33:00 -07:00
John Reiser
8f15777427
merge
2007-05-08 10:43:50 -07:00
John Reiser
748c4bf780
mipsel stub system calls
2007-05-08 10:41:13 -07:00
László Molnár
befcf6d2b3
merge
2007-05-08 18:25:00 +02:00
László Molnár
48236ecd3c
fixed an incorrect error message caused by a bug in relocation handling
2007-05-08 18:23:41 +02:00
Markus F.X.J. Oberhumer
f340f84de7
Avoid warnings.
2007-05-08 16:12:42 +02:00
Markus F.X.J. Oberhumer
40e19293f9
Added throwOutOfMemoryException().
2007-05-08 15:28:35 +02:00
John Reiser
f252f824a4
mipsel conditional stub/src/i386-linux.elf-main.c
2007-05-08 05:48:15 -07:00
John Reiser
1d7e5a8130
typedef struct Extent
2007-05-08 05:18:41 -07:00
John Reiser
cb2ff92c2f
mipsel hack stub
2007-05-07 21:03:58 -07:00
John Reiser
ef373ab54f
mipsel hacking
2007-05-07 19:20:25 -07:00
John Reiser
9141a78c29
mipsel stub for mmap on Linux (not NetBSD); and subroutine arg[4..6]
...
in t0..t2 instead of on stack, to match LMZA_DEC20
2007-05-07 07:02:16 -07:00
John Reiser
10a6370738
hacking UPX_F_LINUX_ELF32_MIPSEL
2007-05-06 14:21:25 -07:00
John Reiser
573009eeb6
new format UPX_F_LINUX_ELF32_MIPSEL [work in progress]
2007-05-06 06:17:49 -07:00
John Reiser
c3363712d9
PackVmlinuxBase<T>::pack() EM_PPC filter only contiguous instruction sections
2007-05-01 19:12:55 -07:00
John Reiser
faa33d89a2
Documentation: UPX_F_VMLINUX_PPC32 changes to arch/powerpc/boot/main.c
2007-04-30 13:48:50 -07:00
John Reiser
f347458c53
new format UPX_F_VMLINUX_PPC32 Linux kernel for PowerPC (32-bit)
2007-04-30 13:34:06 -07:00
Markus F.X.J. Oberhumer
530e6d9196
Bump version for next release.
2007-04-30 19:34:26 +02:00
Markus F.X.J. Oberhumer
b398e18e12
Added tag for RELEASE_300.
2007-04-30 19:32:35 +02:00
Markus F.X.J. Oberhumer
747e8370e0
Remove debug leftover.
2007-04-26 16:20:01 +02:00
Markus F.X.J. Oberhumer
2c67875781
Pass and verify original data in all xxx_test_overlap() functions.
2007-04-26 16:15:49 +02:00
Markus F.X.J. Oberhumer
c96e8a8c19
Better underflow and overflow handling in Packer::findOverlapOverhead().
2007-04-26 13:59:01 +02:00
Markus F.X.J. Oberhumer
5f203fc082
Avoid warnings.
2007-04-26 13:13:26 +02:00
John Reiser
b943c9b471
fix upx_zlib_test_overlap
2007-04-25 20:24:30 -07:00
John Reiser
1a90a1daa8
Implement upx_zlib_test_overlap() following upx_lzma_test_overlap()
2007-04-25 20:19:40 -07:00
John Reiser
72dfc743fd
upx_lzma_test_overlap cleanup
2007-04-25 20:11:04 -07:00
John Reiser
465307655b
Implement real upx_lzma_test_overlap().
...
Also make Packer::findOverlapOverhead() more pessimistic in worst case.
2007-04-25 16:11:33 -07:00
John Reiser
6ce71e6694
upx_lzma_test_overlap revert to 256 [FIXME]
2007-04-25 10:54:00 -07:00
John Reiser
7f01b3b92a
upx_lzma_test_overlap() heuristic overlap_overhead up to 0xA00
2007-04-25 09:19:29 -07:00
John Reiser
76950d56b9
PackUnix::canPack allow incompressible extents in getPackHeader()
2007-04-25 09:18:31 -07:00
Markus F.X.J. Oberhumer
c11e0d02b3
Added parm "allow_incompressible" to Packer::{get,read}PackHeader().
2007-04-25 17:33:39 +02:00
Markus F.X.J. Oberhumer
4c798c1718
Use official name "armeb" instead of "armbe".
2007-04-25 16:50:51 +02:00
Markus F.X.J. Oberhumer
450d7e9ad4
Merge.
2007-04-25 16:42:41 +02:00
Markus F.X.J. Oberhumer
b8ab79c83e
Use offical name "arm" instead of "armel".
2007-04-25 16:42:08 +02:00
John Reiser
6934bdd533
allow unpack of incompressible extents, such as
...
http://www.equi4.com/pub/tk/8.4.13/tclkit-linux-x86.gz
2007-04-25 07:34:24 -07:00
John Reiser
84dedb73a5
propagate changes arm*-linux.elf-fold.h
2007-04-24 16:08:34 -07:00
John Reiser
8964aa5221
fix endian issue with .b_method (arm-linux.elf-entry.S)
2007-04-24 12:05:53 -07:00
Markus F.X.J. Oberhumer
3481ae236c
Added missing armeb generated files.
2007-04-23 18:11:24 +02:00
John Reiser
46adc5f8a4
armeb-linux.kernel.vmlinux.S
2007-04-23 09:00:28 -07:00
John Reiser
5296df5899
add armeb-linux.kernel.vmlinux-head.S
2007-04-23 08:53:53 -07:00
John Reiser
13dad4be16
merge
2007-04-23 07:22:36 -07:00
John Reiser
b5d0c343b4
sync src/Makefile with Markus bfb3d24c1fe7
2007-04-23 07:15:42 -07:00
Markus F.X.J. Oberhumer
b00b945264
src/Makefile: avoid rebuilding .depend file on clean targets
2007-04-23 08:23:01 +02:00
John Reiser
3bda09e105
more cleanup armel etc
2007-04-22 20:04:13 -07:00
John Reiser
32d32c4e4a
cleanup ARMEL etc.
2007-04-22 19:52:23 -07:00
John Reiser
497441b54e
merge
2007-04-22 16:19:13 -07:00
John Reiser
9c564fd4c7
Add file formst UPX_F_LINUX_ELF32_ARMEB and normalize spelling
...
of ARMEL, ARMEB, armel, armeb.
2007-04-22 16:09:18 -07:00
John Reiser
0c2263d0e9
fix O_INP etc because cto8 is not pushed.
...
This change should have paralleled 1382:367eb149f29c
(Sun Aug 20 11:19:37 2006 -0700)
2007-04-22 15:50:24 -07:00
John Reiser
3d4d30766d
merge
2007-04-22 15:24:17 -07:00
John Reiser
99d84d44fc
propagate change to O_INP
2007-04-22 14:50:58 -07:00
John Reiser
41ba7077ad
propagate change to O_INP
2007-04-22 14:50:58 -07:00
John Reiser
8a929a91c3
Fix O_INP etc because calling sequence changed to omit cto8.
...
This parallel change was forgotten at:
changeset: 1382:367eb149f29c
date: Sun Aug 20 11:19:37 2006 -0700
summary: i386-linux.elf decompress does not need cto8
2007-04-22 14:47:08 -07:00
Markus F.X.J. Oberhumer
0604f06841
Backed out changeset 1b7b0715e0ab0d3b2e8afc96ac95d46d44bf3618
2007-04-23 07:36:46 +02:00
John Reiser
229924adf9
Fix O_INP etc because calling sequence changed to omit cto8.
...
This parallel change was forgotten at:
changeset: 1382:367eb149f29c
date: Sun Aug 20 11:19:37 2006 -0700
summary: i386-linux.elf decompress does not need cto8
2007-04-22 14:47:08 -07:00
Markus F.X.J. Oberhumer
df988b7c69
Bump tentative release date.
2007-04-22 16:55:41 +02:00
John Reiser
e8106e2e34
propagate change to 'loadcon8' macro
2007-04-18 09:55:15 -07:00
John Reiser
c21d3e24f8
fix 'loadcon8'; was bad for big-endian vmlinux ARM
2007-04-18 09:52:52 -07:00
Markus F.X.J. Oberhumer
2d87aa0753
Better ctok32 fix.
2007-04-02 18:57:42 +02:00
László Molnár
b2ad4dc9a0
another fix for ctok32
2007-04-02 14:12:16 +02:00
László Molnár
370f2ea98f
tmt/adam: fixed a ctok32 related bug
2007-04-01 17:31:48 +02:00
László Molnár
a05ca565ff
fixed a bug in ctok32
2007-04-01 17:07:43 +02:00
László Molnár
52255637f2
give an error for x86/wince files
2007-03-22 13:45:03 +01:00
Markus F.X.J. Oberhumer
0fcaa3a2f5
Work around broken scanf() implementations.
2007-03-22 07:30:16 +01:00
László Molnár
0e2fa6eb9d
no need to warn for x86 wince files
2007-03-20 09:30:30 +01:00
Markus F.X.J. Oberhumer
1aac462c83
Remove trailing whitespace.
2007-03-15 07:36:58 +01:00
Markus F.X.J. Oberhumer
2a0edfd8f7
Small update from Jens.
2007-03-15 01:41:07 +01:00
László Molnár
1f59a9f846
more PS1 updates from Jens
2007-03-12 12:11:17 +01:00
László Molnár
80c20a90ea
PS1 updates from Jens
2007-03-12 11:56:16 +01:00
Markus F.X.J. Oberhumer
56a35649fe
Update Makefiles.
2007-03-09 07:59:50 +01:00
Markus F.X.J. Oberhumer
f07cea0b79
Update help string.
2007-03-09 07:59:36 +01:00
Markus F.X.J. Oberhumer
4c1b08a281
Bump version for next release.
2007-03-08 08:26:28 +01:00
Markus F.X.J. Oberhumer
117f9eddcd
src/Makefile: use an explicit .depend file.
2007-03-08 08:19:27 +01:00
Markus F.X.J. Oberhumer
7bbbfce482
Added tag for RELEASE_293.
2007-03-08 06:16:24 +01:00
Markus F.X.J. Oberhumer
f37a7811f9
Merge.
2007-03-08 03:00:00 +01:00
László Molnár
9173c10239
yet another spelling fix
2007-03-07 17:00:18 +01:00
László Molnár
318b31550d
spelling fixes
2007-03-07 14:22:37 +01:00
Markus F.X.J. Oberhumer
c18ebc63a6
dos/exe: enable optimized code paths.
2007-03-06 18:14:32 +01:00
Markus F.X.J. Oberhumer
d704694272
Merge.
2007-03-06 15:57:13 +01:00
Markus F.X.J. Oberhumer
1cfec3bdf7
dos/exe: enable one small optimization.
2007-03-06 15:56:51 +01:00
John Reiser
fe6ea6bc10
merge
2007-03-06 06:44:26 -08:00
Markus F.X.J. Oberhumer
d29c8df45e
dos/exe improvements, not enabled yet.
2007-03-06 15:08:24 +01:00
John Reiser
71f996af95
spelling
2007-03-05 21:26:36 -08:00
Markus F.X.J. Oberhumer
d9722ad6b3
dos/exe: make sure minsp is even.
2007-03-04 19:27:04 +01:00
Markus F.X.J. Oberhumer
398fd8028c
Spelling fixes.
2007-03-04 17:39:21 +01:00
Markus F.X.J. Oberhumer
1345a3cfd3
Bump tentative release date.
2007-03-04 17:13:11 +01:00
Markus F.X.J. Oberhumer
7eb0b195b8
dos/exe: don't clear the dirty stack - DOS does not do this either
2007-03-04 17:10:32 +01:00
Markus F.X.J. Oberhumer
009caee82d
docs: typo fixes.
2007-03-04 17:01:50 +01:00
Markus F.X.J. Oberhumer
3bdc805a22
dos/exe: only use bx_magic when needed.
2007-03-04 17:01:32 +01:00
Markus F.X.J. Oberhumer
ac457792b4
Minor dos/exe stub optimizations.
2007-03-04 16:47:13 +01:00
Markus F.X.J. Oberhumer
1377b54b9e
dos/exe: optimize M_PIA_small.
2007-03-04 15:20:09 +01:00
Markus F.X.J. Oberhumer
66418ffc8c
Reorganize dos/exe. No stub changes.
2007-03-04 15:14:44 +01:00
László Molnár
b4c4b1fb70
dos/exe: fixed a bug in relocation handling
2007-03-01 16:57:12 +01:00
Markus F.X.J. Oberhumer
ffe4a4b047
dos/exe: clear the dirty stack.
2007-02-26 13:55:12 +01:00
László Molnár
753ce45310
dos/exe: better minsp approximation
2007-02-26 12:54:49 +01:00
Markus F.X.J. Oberhumer
fece0d73e7
Update NEWS. Bump version date.
2007-02-26 01:37:03 +01:00
Markus F.X.J. Oberhumer
edce076e68
Minor Makefile updates.
2007-02-26 01:33:08 +01:00
Markus F.X.J. Oberhumer
675d0a009a
Use M_IS_LZMA.
2007-02-26 01:32:36 +01:00
Markus F.X.J. Oberhumer
5d41b5a4db
Fix shld macro.
2007-02-26 00:52:18 +01:00
László Molnár
fe53b135eb
pe: better icon compression handling
2007-02-24 23:25:11 +01:00
László Molnár
5b1c154ee2
NEWS update
2007-02-23 13:46:52 +01:00
László Molnár
816d882611
dos/exe: nrv2b compressed lzma decompressor added
2007-02-23 13:34:12 +01:00
Markus F.X.J. Oberhumer
12bcb09051
Small Makefile updates.
2007-02-21 17:11:42 +01:00
László Molnár
c59c69a85f
p_exe.cpp: added some comments
2007-02-20 13:49:18 +01:00
Markus F.X.J. Oberhumer
bdd0daaf6f
Added ElfLinker::addLoaderVA().
2007-02-20 07:36:34 +01:00
Markus F.X.J. Oberhumer
cfad7c8356
Small cleanups.
2007-02-19 03:52:33 +01:00
John Reiser
b2b8a128d0
merge
2007-02-18 10:10:17 -08:00
Markus F.X.J. Oberhumer
1cfad80ca2
Introduce a special "ignore_reloc_overflow" section.
2007-02-18 18:29:26 +01:00
John Reiser
a5a80e41b8
merge
2007-02-18 09:09:17 -08:00
Markus F.X.J. Oberhumer
152f8e92bf
Yet some more Watcom optimizations.
2007-02-18 05:43:31 +01:00
Markus F.X.J. Oberhumer
0323560b49
More Watcom optimizations.
2007-02-18 04:41:33 +01:00
Markus F.X.J. Oberhumer
d3bc84a2f7
Some Watcom optimizations.
2007-02-18 03:55:46 +01:00
Markus F.X.J. Oberhumer
8a82c259bd
Switching back to using Watcom C - this seems to work.
2007-02-18 03:02:00 +01:00
Markus F.X.J. Oberhumer
46009c7658
i086 Makefile.extra update.
2007-02-18 02:32:47 +01:00
Markus F.X.J. Oberhumer
6f760308bd
Some cleanasm.py updates.
2007-02-18 01:32:30 +01:00
John Reiser
c346f8f17d
merge
2007-02-16 08:06:37 -08:00
John Reiser
af1d059fff
PackUnix::getLoader() result is not 'const'
2007-02-16 08:05:10 -08:00
John Reiser
5562b21a20
PackMach* checkAlreadyPacked()
2007-02-16 08:02:59 -08:00
Markus F.X.J. Oberhumer
8f68f31877
Use Wine + Digital Mars C/C++ in small model. Does not work yet.
2007-02-16 15:22:01 +01:00
Markus F.X.J. Oberhumer
ce7e94030c
Added i086/l_test.c. Cleanups.
2007-02-16 08:52:31 +01:00
Markus F.X.J. Oberhumer
ccf5a1b972
Add some more funcs to cc_test.c.
2007-02-13 09:48:37 +01:00
Markus F.X.J. Oberhumer
0d5ae77efc
Some more dos/exe updates.
2007-02-13 02:25:32 +01:00
Markus F.X.J. Oberhumer
1695096d18
Commit rebuilt files as well.
2007-02-13 00:39:43 +01:00
Markus F.X.J. Oberhumer
6db0b7cf18
lzma for dos/exe works!
2007-02-13 00:39:15 +01:00
John Reiser
575b43b0d4
NEWS: Mach/i386 and Mach/fat
2007-02-12 15:22:22 -08:00
László Molnár
7b39b05894
lzma for dos/exe seems to work with tainted watcom macros
2007-02-12 18:28:24 +01:00
László Molnár
8bea9e0a5e
fixed some watcom support macros
2007-02-12 15:38:47 +01:00
László Molnár
2255b32e45
LZMA for dos/exe integration work. Does not work yet.
2007-02-12 15:12:36 +01:00
Markus F.X.J. Oberhumer
b62573ae8f
More work on lzma for dos/exe.
2007-02-11 21:20:00 +01:00
Markus F.X.J. Oberhumer
44ed84f5cf
Added lzma for dos/exe. Glue code and integration is still missing.
2007-02-11 07:54:16 +01:00
Markus F.X.J. Oberhumer
d008c834be
Merge.
2007-02-11 04:52:53 +01:00
Markus F.X.J. Oberhumer
2d3a914aee
Some i086 updates.
2007-02-11 04:52:33 +01:00
John Reiser
7324f4c3d1
PackMach* filters only the [1st] largest executable LC_SEGMNET
2007-02-10 17:47:04 -08:00
Markus F.X.J. Oberhumer
50c8860a50
Added first version of a clean-room wcc support library implementation.
2007-02-11 01:06:37 +01:00
Markus F.X.J. Oberhumer
6456de7188
i086: added cc_test for examining internal compiler library calls.
2007-02-11 01:02:36 +01:00
John Reiser
23c629f2aa
i386-darwin.macho works!
2007-02-10 13:14:27 -08:00
John Reiser
2bf154f74f
i386-darwin.macho: decompressor overrun, bswap Mach_fat_header
2007-02-10 10:57:02 -08:00
John Reiser
b598ad1bc0
i386-darwin.macho runtime stub
2007-02-10 09:16:49 -08:00
Markus F.X.J. Oberhumer
ace24ad68e
Minor portability fixes.
2007-02-08 16:17:32 +01:00
Markus F.X.J. Oberhumer
750c1a0f27
Avoid compiler warnings.
2007-02-08 15:00:42 +01:00
John Reiser
52d89bd66b
PackMachFat has trouble with --fileinfo
2007-02-07 22:24:42 -08:00
John Reiser
8cfb9d35e9
fix ui report after PackMachFat::unpack
2007-02-07 22:03:15 -08:00
John Reiser
2f529158a0
OutputFile::unset_extent() sets bytes_written
2007-02-07 22:02:28 -08:00
John Reiser
6e68ab6d9e
canUnpack() and unpack() for PackMachBase, PackMachFat
2007-02-07 21:30:18 -08:00
John Reiser
7a3c55af35
fix SEEK_END when set_extent()
2007-02-07 21:21:19 -08:00
John Reiser
fb39d6304a
Enable --lzma for PackMach*.
2007-02-07 11:23:21 -08:00
John Reiser
4cb57d9059
OutputFile::unset_extent(); endianness in Mach_fat_* and PackMachBase::b_info
2007-02-06 13:11:31 -08:00
John Reiser
42d69bd0e5
debug PackMachFat
2007-02-05 22:34:23 -08:00
John Reiser
f27b399f81
PackMachFat
2007-02-05 14:00:41 -08:00
John Reiser
a545a3938f
FileBase::set_extent(offset, length) constrains seek() and tell()
2007-02-03 13:31:44 -08:00
John Reiser
d1e352c9ee
PackMachI386
2007-02-03 11:40:25 -08:00
John Reiser
99be1e798b
PackMachPPC32
2007-02-03 11:04:57 -08:00
John Reiser
2132a28a17
UPX_F_MACH_i386 and skeleton stub. (Much of PackMachI386 is incomplete.)
2007-02-02 13:51:51 -08:00
John Reiser
8b1cc28783
templates to prepare for Mach-O i386 and Universal ("fat") executables
2007-01-31 20:25:13 -08:00
Markus F.X.J. Oberhumer
78364ac830
Small Watcom updates.
2007-01-31 14:28:15 +01:00
Markus F.X.J. Oberhumer
6e5f5732b5
brandelf.py: do not write "Linux" any longer as newer ldd's (e.g.
...
from glibc-common-2.5-10.fc6) do not like this.
2007-01-31 05:58:17 +01:00
Markus F.X.J. Oberhumer
87844254d1
Minor Makefile updates.
2007-01-31 05:53:38 +01:00
Markus F.X.J. Oberhumer
08ef9f69fb
Very minor portability fixes.
2007-01-30 20:36:59 +01:00
Markus F.X.J. Oberhumer
5fbd1b78e7
Added non-working experimental infrastructure for using OpenWatcom 1.6
...
to support i086 + lzma.
2007-01-30 20:25:20 +01:00
Markus F.X.J. Oberhumer
39f5eb753f
Bump version for next release.
2007-01-23 22:17:02 +01:00
Markus F.X.J. Oberhumer
f4cbe3f300
Added tag for RELEASE_292.
2007-01-23 22:13:01 +01:00
Markus F.X.J. Oberhumer
70632e5541
Bump release date.
2007-01-23 22:11:23 +01:00
John Reiser
0bba700105
merge
2007-01-23 10:35:20 -08:00
John Reiser
b71aaccff3
fix amd64-linux.elf-entry.S invoking large programs (>3MB compressed)
2007-01-23 10:34:33 -08:00
Markus F.X.J. Oberhumer
7271ae9611
Small updates.
2007-01-23 13:50:39 +01:00
László Molnár
6e32dff2ad
armpe_tester.c updated to work with files containing 4 sections
2007-01-17 21:53:18 +01:00
László Molnár
8f7c898c08
use an exception instead of assert() for overlay checking (bug #1624840 )
2007-01-16 12:58:35 +01:00
Markus F.X.J. Oberhumer
f4a9815f48
Keep entries sorted in stub/Makefile.
2007-01-15 07:46:22 +01:00
John Reiser
0f8d5c7e98
arm-linux.kernel.vmlinux.S remove unused sections
2007-01-14 13:40:50 -08:00
Markus F.X.J. Oberhumer
5e83596a1b
Enter 2007.
2007-01-14 13:08:58 +01:00
Markus F.X.J. Oberhumer
6361213e07
More portability fixes.
2007-01-14 12:47:38 +01:00
John Reiser
9c59a5d9b6
p_vmlinx test jig for ARM
2007-01-13 17:30:03 -08:00
John Reiser
bb04844bd5
Decompressor for UPX_F_VMLINUX_ARM follows ELF convention
2007-01-13 15:26:05 -08:00
Markus F.X.J. Oberhumer
0b988176fa
Portability fixes.
2007-01-10 17:16:59 +01:00
Markus F.X.J. Oberhumer
a354f18a2d
Consistently use .arch nojumps on i086 and i386.
2007-01-09 22:40:01 +01:00
Markus F.X.J. Oberhumer
a7ca0fec88
Merge.
2007-01-09 18:31:13 +01:00
Markus F.X.J. Oberhumer
06eec508df
Cosmetic macros.S cleanups.
2007-01-09 18:27:53 +01:00
John Reiser
10dc580a3a
tweak i386-linux.kernel.vmlinux-head.S
2007-01-08 13:56:47 -08:00
John Reiser
2f6ae3ef01
merge
2007-01-07 16:33:04 -08:00
John Reiser
392e803905
vmlinux/AMD64 works
2007-01-07 16:31:46 -08:00
John Reiser
83a5fb585b
ELF External_Note
2007-01-03 06:54:48 -08:00
László Molnár
c6205ffbe0
tls index should be zero after decompression
2007-01-02 18:16:16 +01:00
Markus F.X.J. Oberhumer
c04737ce20
Cosmetic cleanup.
2006-12-31 15:51:17 +01:00
John Reiser
11b92172fe
PackVmlinuxBase my_boot_label; kernel Makefiles
2006-12-25 13:55:28 -08:00
László Molnár
3a6c574376
pe: correctly handle import table with 0 entries during decompression ( #1620733 )
2006-12-24 16:25:36 +01:00
Markus F.X.J. Oberhumer
b21ce925fb
Factor out a common Packer::defineFilterSymbols(). Enable filters
...
0x49 and 0x49 for all i386-dos32.* formats. Needs testing.
2006-12-22 16:39:42 +01:00
Markus F.X.J. Oberhumer
de9dcc4ed6
Enable filters 0x49 and 0x46 for win32/pe. This needs some more testing.
2006-12-22 15:28:14 +01:00
Markus F.X.J. Oberhumer
9e77dbfe20
Added an assertion to make sure I've really understood the semantics
...
of the ctok32 filter length.
2006-12-22 15:19:51 +01:00
Markus F.X.J. Oberhumer
4cee0676a4
Consistently rename section names of ctok32 filter.
2006-12-22 14:22:45 +01:00
Markus F.X.J. Oberhumer
8ad9d21db3
Also add ICHECK() calls to p_armpe.cpp.
2006-12-22 13:37:19 +01:00
Markus F.X.J. Oberhumer
8ba8317eea
sf.net bug #1620733 : As a very first step, added two calls to
...
ICHECK(dname,1). Of course we still need a proper fix for this.
2006-12-22 13:35:39 +01:00
Markus F.X.J. Oberhumer
d221187f24
Misc cosmetical cleanups.
2006-12-22 12:36:55 +01:00
Markus F.X.J. Oberhumer
db54ec294f
Added some missing stub/tmp/*.bin.dump files.
2006-12-20 10:50:49 +01:00
John Reiser
1d39796e3f
PackVmlinuxBase::canPack bug for AMD64 with holes between PT_LOAD
2006-12-19 18:18:47 -08:00
John Reiser
cd6a318903
cleanup merge
2006-12-19 16:19:19 -08:00
John Reiser
73090b98ab
merge
2006-12-19 16:16:20 -08:00
John Reiser
745de1abab
refactor PackVmlinuxBase::pack()
2006-12-19 16:12:59 -08:00
John Reiser
961031efc1
make_st_info()
2006-12-19 16:12:15 -08:00
Markus F.X.J. Oberhumer
2487595778
vmlinux: U32 already has target-endian representation, so there is no need
...
to call BeLePolicy::get32() here.
2006-12-19 22:39:37 +01:00
John Reiser
5c4863d504
refactor PackVmlinuxBase ::canUnpack(), ::unpack()
2006-12-19 10:58:20 -08:00
Markus F.X.J. Oberhumer
5e3a658932
Made a method pure virtual.
2006-12-19 16:21:57 +01:00
Markus F.X.J. Oberhumer
cb4704c821
Cosmetic cleanups.
2006-12-19 15:22:50 +01:00
Markus F.X.J. Oberhumer
cc0b7d1492
Use the preprocessor to make sure that the ELF types are PODs.
2006-12-19 14:43:14 +01:00
Markus F.X.J. Oberhumer
f8ebbf8b08
Rework p_elf.h.
2006-12-19 14:24:35 +01:00
Markus F.X.J. Oberhumer
8795f60bf1
vmlinux: use template types throughout.
2006-12-19 11:06:58 +01:00
Markus F.X.J. Oberhumer
f00c0a9436
Fix typo.
2006-12-19 11:04:47 +01:00
Markus F.X.J. Oberhumer
767bc71870
Expose integral types in p_elf.h.
2006-12-19 10:49:13 +01:00
John Reiser
4c068e3e00
PackVmlinuxBase::canPack(); templates are fun!
2006-12-18 22:55:38 -08:00
John Reiser
277d862172
PackVmlinuxBase try template definitions in .cpp file
2006-12-18 20:17:10 -08:00
John Reiser
dbed6a47bb
PackVmlinuxBase use simple templates
2006-12-18 20:08:24 -08:00
Markus F.X.J. Oberhumer
94f3749784
vmlinux refactoring: move destructor into PackVmlinuxBase.
2006-12-19 00:48:38 +01:00
Markus F.X.J. Oberhumer
728e6d851e
Introduce ElfClass and PackVmlinuxBase for refactoring elf based packers.
2006-12-19 00:37:35 +01:00
Markus F.X.J. Oberhumer
11e863545f
Strip trailing whitespace.
2006-12-18 16:56:14 +01:00
Markus F.X.J. Oberhumer
dde49f0bb4
Try to avoid fatal filter failures by better scanning during the setup phase.
2006-12-18 16:54:14 +01:00
Markus F.X.J. Oberhumer
a37a75aecc
First step for preprocessing dumps with xstrip.py. Not working yet.
2006-12-18 16:39:57 +01:00
John Reiser
e43e3aeb1c
arm-linux.kernel documentation update for Debian on nslu2
2006-12-17 18:49:38 -08:00
John Reiser
a8fe529814
arm-linux.kernel preserve .e_flags
2006-12-17 17:39:47 -08:00
John Reiser
d9f5e2bb08
arm-linux.kernel alignment fix
2006-12-17 16:34:21 -08:00
John Reiser
dfa83b0ac8
arm-linux.kernel methods
2006-12-17 15:34:13 -08:00
John Reiser
bd5cef1411
unfilter for arm-linux.kernel
2006-12-17 14:53:10 -08:00
John Reiser
cd70b48831
src/stub/src/arch/arm/v5a directory
2006-12-17 13:24:14 -08:00
John Reiser
50ebf8088a
R_ARM_ABS8
2006-12-17 13:19:37 -08:00
John Reiser
c5cfb7eb40
more arm-linux.kernel work
2006-12-16 22:02:51 -08:00
John Reiser
bccaafda6d
arm-linux stub interfacing for lzma
2006-12-16 17:16:32 -08:00
John Reiser
bf0086d7b5
arm-linux.kernel decompressor
2006-12-16 14:52:22 -08:00
John Reiser
7e65938ca6
fix filename in initial comment
2006-12-16 08:40:41 -08:00
John Reiser
112eff2509
add UPX_F_VMLINUX_AMD64, UPX_F_VMLINUX_ARM
2006-12-16 08:13:34 -08:00
Markus F.X.J. Oberhumer
d7837d9179
Use FT_ULTRA_BRUTE.
2006-12-12 10:06:24 +01:00
Markus F.X.J. Oberhumer
6cdd057f80
Coding style cleanups.
2006-12-12 10:05:57 +01:00
Markus F.X.J. Oberhumer
5a03b213fb
More stricter check in xstrip.py.
2006-12-12 07:50:05 +01:00
Markus F.X.J. Oberhumer
f270213246
Make sure ph.first_offset_found is set.
2006-12-12 07:49:50 +01:00
László Molnár
2e1795c5ba
win32/pe: loadconf data should not be put into section 2
2006-12-10 23:42:27 +01:00
Markus F.X.J. Oberhumer
732d6710d3
Remove misleading "const" from Linker::preprocessXX().
2006-12-10 00:38:28 +01:00
Markus F.X.J. Oberhumer
edf384d2ee
Micro-optimization: save 1 byte in tmt/adam stub.
2006-12-09 13:56:47 +01:00
László Molnár
c307640826
use memcmp instead of strncmp when searching for ljmp
2006-12-08 19:20:35 +01:00
Markus F.X.J. Oberhumer
a77b598f82
Implement a micro-optimization which has been on our TODO list for ages:
...
remove "or ebp,-1" when not needed
2006-12-08 09:20:14 +01:00
Markus F.X.J. Oberhumer
217420cfa5
Also verifyOverlappingDecompression() for watcom/le.
2006-12-06 12:20:22 +01:00
Markus F.X.J. Oberhumer
f2b9dff596
More work so that watom/le now uses compressWithFilters().
2006-12-06 11:08:32 +01:00
Markus F.X.J. Oberhumer
ae945ed315
Clean up help and avoid using backticks as quoting chars.
2006-12-06 08:11:55 +01:00
Markus F.X.J. Oberhumer
770c153c76
Start using FT_ULTRA_BRUTE.
2006-12-06 07:42:43 +01:00
Markus F.X.J. Oberhumer
29c4a7e606
Remove debugging leftover.
2006-12-06 07:34:57 +01:00
Markus F.X.J. Oberhumer
8875470b37
Refactored compressWithFilters().
2006-12-06 07:27:23 +01:00
Markus F.X.J. Oberhumer
6e52364bcb
Minor cleanup of callback code.
2006-12-05 17:09:18 +01:00
Markus F.X.J. Oberhumer
7015d616b4
Whitespace changes.
2006-12-05 17:06:37 +01:00
László Molnár
92e6da3260
use the current version of http://www.gnu.org/licenses/gpl.txt
2006-12-05 12:16:42 +01:00
László Molnár
9220b6f1d5
win32/pe should only handle ix86 files
2006-12-03 10:46:14 +01:00
Markus F.X.J. Oberhumer
1d0d538d0c
Added new option '--ultra-brute'.
2006-12-01 02:47:46 +01:00
Markus F.X.J. Oberhumer
83052eafae
Minor cleanups.
2006-12-01 00:57:03 +01:00
Markus F.X.J. Oberhumer
fa95c3c4a2
Display full format name with --fileinfo.
2006-11-30 23:34:19 +01:00
Markus F.X.J. Oberhumer
665dcf221b
Cosmetic cleanup.
2006-11-30 23:21:47 +01:00
Markus F.X.J. Oberhumer
8f73dbd253
Mention --compress-icons=3.
2006-11-30 23:18:21 +01:00
Markus F.X.J. Oberhumer
826312cbad
Show all supported formats in show_help().
2006-11-30 23:17:22 +01:00
Markus F.X.J. Oberhumer
72a18f2b3f
Added Packer::getFullName() method.
2006-11-29 06:44:48 +01:00
Markus F.X.J. Oberhumer
a6b5e3d0ae
Bump version for next release.
2006-11-29 05:41:39 +01:00
Markus F.X.J. Oberhumer
1b321f4fa3
Added tag for RELEASE_291.
2006-11-29 05:14:25 +01:00
Markus F.X.J. Oberhumer
fbde0b9f35
Bump release date.
2006-11-29 03:43:29 +01:00
Markus F.X.J. Oberhumer
0e5f5e54cc
Initalize isrtm member.
2006-11-27 17:35:16 +01:00
Markus F.X.J. Oberhumer
cbb5902066
Improve xstrip.py.
2006-11-25 15:36:56 +01:00
Markus F.X.J. Oberhumer
92ec1b0598
Add and use stub/scripts/xstrip.py.
2006-11-23 05:27:40 +01:00
Markus F.X.J. Oberhumer
a62fc3abff
Try to remove .shstrtab, .strtab and .symtab sections. This does not seem to
...
work with objcopy.
2006-11-23 03:31:43 +01:00
Markus F.X.J. Oberhumer
08f8e55446
More updates on bin2h.py.
2006-11-23 03:11:53 +01:00
Markus F.X.J. Oberhumer
68f54a3247
Updated bin2h.py.
2006-11-23 02:23:39 +01:00
Markus F.X.J. Oberhumer
29c099fe56
Disallow --exact with --overlay=strip.
2006-11-22 19:29:07 +01:00
Markus F.X.J. Oberhumer
76b81c7b35
More stricter check for arm-wince Debian.
2006-11-22 18:52:57 +01:00
László Molnár
d6b33ffd6b
pe: --compress-icons=3 option added to compress all icons
2006-11-22 15:28:35 +01:00
Markus F.X.J. Oberhumer
16b9873fa8
Quick workaround for arm-wince build with Debian cross-compiler packages.
2006-11-22 01:56:59 +01:00
Markus F.X.J. Oberhumer
ba4a686d1c
Fix endian issue in execve formats.
2006-11-21 18:42:38 +01:00
László Molnár
4be3d79e12
arm/pe: fix "missing" icon & version info resource problem for wince 5
2006-11-21 18:25:23 +01:00
Markus F.X.J. Oberhumer
2569b09dbe
Added debugging option --disable-random-id.
2006-11-21 18:17:51 +01:00
Markus F.X.J. Oberhumer
5d71e69941
Added two checks for throwCantPackExact.
2006-11-21 18:01:16 +01:00
Markus F.X.J. Oberhumer
16163bf20b
Initial support for option '--exact'.
2006-11-21 17:53:11 +01:00
Markus F.X.J. Oberhumer
f1a97fecbd
Minor cleanups.
2006-11-21 17:35:22 +01:00
Markus F.X.J. Oberhumer
a050f82f0e
Implemented the remaining missing pieces of compress_zlib.
2006-11-21 17:19:24 +01:00
Markus F.X.J. Oberhumer
ef7beea334
Cosmetic cleanups.
2006-11-21 16:17:47 +01:00
Markus F.X.J. Oberhumer
3f4acb33f9
First step for possibly using ElfLinker with linux execve/interp/shell stubs
...
as well.
2006-11-21 16:00:25 +01:00
Markus F.X.J. Oberhumer
14822e6395
Now that it seems to work, disable usage of pre-compressed stubs again.
2006-11-21 07:14:07 +01:00
Markus F.X.J. Oberhumer
e82db4ed38
Use proper const_cast.
2006-11-21 06:32:13 +01:00
Markus F.X.J. Oberhumer
87b7ea9cf3
Add LZMA support for pre-compressed stubs.
2006-11-21 06:09:04 +01:00
Markus F.X.J. Oberhumer
787b1fceff
Actually generate and use pre-compressed stubs. Currently this is mainly
...
for testing as the self-packed upx binary does get _larger_ this way.
2006-11-21 05:29:29 +01:00
Markus F.X.J. Oberhumer
140d6ad839
Avoid compiler warning.
2006-11-21 05:09:01 +01:00
Markus F.X.J. Oberhumer
46e8e22236
Prepare generating pre-compressed stubs.
2006-11-21 05:03:25 +01:00
Markus F.X.J. Oberhumer
c386db2b33
Small cosmetic changes.
2006-11-21 05:01:54 +01:00
Markus F.X.J. Oberhumer
8dad091c6b
Decompress pre-compressed stubs in Linker::init().
2006-11-21 05:01:00 +01:00
Markus F.X.J. Oberhumer
3365ccbb9c
Implemented upx_zlib_decompress().
2006-11-21 04:42:47 +01:00
Markus F.X.J. Oberhumer
2ced230965
Updated packers to use new stub names.
2006-11-21 03:40:11 +01:00
Markus F.X.J. Oberhumer
989d10a3e1
Rebuilt all stubs with new bin2h.py and --ident=auto-stub.
2006-11-21 03:36:48 +01:00
Markus F.X.J. Oberhumer
62d8c69774
Enhanced bin2h.py: added --ident=auto, added --compress=XXX.
2006-11-21 03:34:08 +01:00
Markus F.X.J. Oberhumer
cf704257b0
Remove some traces of patch_le32.
2006-11-20 18:19:37 +01:00
Markus F.X.J. Oberhumer
a6cb6f57d3
Introduce Packer::relocateLoader(). This is the first step of finally getting
...
rid of all Packer::patchXXX() methods.
2006-11-20 18:10:23 +01:00
Markus F.X.J. Oberhumer
141c703ed5
Use ld option --no-warn-mismatch when generating binary output.
2006-11-20 17:36:04 +01:00
John Reiser
796d58867b
use separate stub/armeb-linux.elf-entry and fold
2006-11-20 08:02:28 -08:00
Markus F.X.J. Oberhumer
2f483ec8e8
Fix compression ratio check.
2006-11-20 13:48:34 +01:00
Markus F.X.J. Oberhumer
e338918773
Disable new/delete for bele policies.
2006-11-20 12:57:49 +01:00
Markus F.X.J. Oberhumer
d9effc58cf
Added initial version of armeb-linux.elf stubs. Completely untested.
2006-11-20 12:40:57 +01:00
Markus F.X.J. Oberhumer
05d03f97fc
Introduce Packer::bele.
2006-11-20 12:01:59 +01:00
Markus F.X.J. Oberhumer
03e891c0e8
Remove implicit magic from OptVar copy operator and introduce oassign()
...
function instead.
2006-11-20 11:04:31 +01:00
Markus F.X.J. Oberhumer
4dfe9d52e9
Don't be too strict when checking the compression ratio (sf.net
...
feature request #1596111 ).
2006-11-20 09:40:46 +01:00
John Reiser
9e65692b69
Merge
2006-11-19 14:32:28 -08:00
John Reiser
0687c9a57a
PackLinuxElf32::ARM_buildLoader endianness bugs
2006-11-19 14:28:15 -08:00
Markus F.X.J. Oberhumer
ffe1287016
Added option '--cpr-lzma-ds=XX'.
2006-11-19 18:50:35 +01:00
Markus F.X.J. Oberhumer
75b7e7260f
Merge.
2006-11-19 05:16:12 +01:00
Markus F.X.J. Oberhumer
d631e081bc
arm-linux.elf: make two symbols global.
2006-11-19 05:09:01 +01:00
John Reiser
db5843d904
branch merge
2006-11-18 19:57:56 -08:00
John Reiser
5ec16153f7
PackLinuxElf64amd::defineSymbols forgot a get_native64()
2006-11-18 19:52:55 -08:00
Markus F.X.J. Oberhumer
8c873ccdc8
watcom/le: initialize memory when aligning.
2006-11-18 21:59:59 +01:00
Markus F.X.J. Oberhumer
c95088f8d5
Merge.
2006-11-18 20:55:07 +01:00
Markus F.X.J. Oberhumer
519fa55df7
ps1/exe: fill pad.code section with zeros.
2006-11-18 20:54:10 +01:00
John Reiser
b8dda033ed
branch merge
2006-11-18 11:51:23 -08:00
John Reiser
0359e9c5c7
members of struct l_info loader header must be little endian
2006-11-18 11:42:08 -08:00
Markus F.X.J. Oberhumer
d822b4a62a
Store shentsize in target byte-order.
2006-11-18 18:25:11 +01:00
Markus F.X.J. Oberhumer
d9e8c953b1
Fixed some ElfLinker endian issues.
2006-11-18 17:43:29 +01:00
Markus F.X.J. Oberhumer
9eca502026
Make upx build with gcc-2.95 again.
2006-11-18 14:37:22 +01:00
Markus F.X.J. Oberhumer
cd0efe3edb
Some atari/tos cleanups.
2006-11-18 02:39:11 +01:00
Markus F.X.J. Oberhumer
8146e9cbcd
Implemented some small atari/tos optimizations.
2006-11-17 18:47:33 +01:00
Markus F.X.J. Oberhumer
5d95275024
Add some more calls to f-objstrip.
2006-11-17 14:50:59 +01:00
Markus F.X.J. Oberhumer
49a97eea4b
More brandelf.py updates.
2006-11-17 14:50:42 +01:00
Markus F.X.J. Oberhumer
36e9c27e9c
Updated brandelf.py.
2006-11-16 22:23:01 +01:00
Markus F.X.J. Oberhumer
6e5153cd07
Minor Makefile updates.
2006-11-16 21:14:58 +01:00
Markus F.X.J. Oberhumer
c73da864c8
Avoid -Wshadow warnings.
2006-11-16 20:14:14 +01:00
Markus F.X.J. Oberhumer
071bb75700
Use new addLoader() method.
2006-11-16 20:12:53 +01:00
Markus F.X.J. Oberhumer
99374de340
Clean up stub sources.
2006-11-16 19:36:13 +01:00
Markus F.X.J. Oberhumer
db7ae4ed5d
Improve Packer:addLoader(). We're still somewhat limited because of gcc-bug
...
#29823 (see http://gcc.gnu.org/PR29823 ).
2006-11-16 18:52:20 +01:00
Markus F.X.J. Oberhumer
e61f481881
Added .DELETE_ON_ERROR rules.
2006-11-16 18:49:34 +01:00
Markus F.X.J. Oberhumer
396a3ad2fc
Small atari cleanups.
2006-11-13 10:51:45 +01:00
Markus F.X.J. Oberhumer
be235ddc38
Removed unused Packer::freezeLoader(). Changed return type of
...
buildLoader() from "int" to "void".
2006-11-12 20:57:08 +01:00
Markus F.X.J. Oberhumer
9e72ecd93d
Fix version date.
2006-11-12 18:49:48 +01:00
Markus F.X.J. Oberhumer
8e0bd936eb
atari/tos now seems to work again.
2006-11-12 18:25:46 +01:00
Markus F.X.J. Oberhumer
9d0270dcd6
We have to bswap32 lzma_properties on big-endian machines.
2006-11-12 18:10:42 +01:00
Markus F.X.J. Oberhumer
713415c354
Fix broken "glibc sscanf bug workaround".
2006-11-12 14:47:50 +01:00
Markus F.X.J. Oberhumer
786550572e
More work on atari/tos.
2006-11-12 13:46:38 +01:00
Markus F.X.J. Oberhumer
46caeddc81
Added some more debugging support to Linker.
2006-11-12 13:45:27 +01:00
Markus F.X.J. Oberhumer
71bfde2bfe
Bump tentative release date.
2006-11-12 10:59:27 +01:00
Markus F.X.J. Oberhumer
76771b845a
Started work on atari/tos.
2006-11-12 10:58:04 +01:00
Markus F.X.J. Oberhumer
a74e239e28
Major cleanup of ElfLinker.
2006-11-12 10:57:18 +01:00
Markus F.X.J. Oberhumer
6e763b0b42
Updated options.
2006-11-12 10:56:17 +01:00
Markus F.X.J. Oberhumer
2f41ece017
Minor cleanups.
2006-11-10 13:49:22 +01:00
Markus F.X.J. Oberhumer
01cd5fe0d5
Added tag BRANCHPOINT_FOR_upx2.hg .
2006-11-08 21:09:50 +01:00
Markus F.X.J. Oberhumer
ed12ff7bb3
Updated NEWS from 2.03 release.
2006-11-07 19:56:15 +01:00
Markus F.X.J. Oberhumer
f1386bb60d
Update NEWS.
2006-11-07 14:07:43 +01:00
Markus F.X.J. Oberhumer
417bd06e76
Fixed --brute and --lzma for dos/exe.
2006-11-07 13:58:32 +01:00
Markus F.X.J. Oberhumer
91e46e3cf8
Small cleanups.
2006-11-07 13:43:43 +01:00
Markus F.X.J. Oberhumer
deb5139c4d
Re-enable --crp-ms= option.
2006-11-07 13:37:46 +01:00
Markus F.X.J. Oberhumer
862ac5d014
Update options_t::crp_t to directly use the XXX_compress_config_t types.
2006-11-07 13:11:36 +01:00
Markus F.X.J. Oberhumer
028235d421
Keep variable names sorted.
2006-11-07 10:24:54 +01:00
Markus F.X.J. Oberhumer
143d399849
Updated two "xchg" commands to produce byte-identical results with UPX 2.02.
2006-11-07 09:35:00 +01:00
László Molnár
375f171e47
dos/com&sys: correctly set carry bit by using "sub si,-xx" instead of "add si,xx"
2006-11-06 17:54:37 +01:00
László Molnár
387edcf4b2
dos/com: fix fatal bug #1589758
2006-11-03 15:52:20 +01:00
Markus F.X.J. Oberhumer
011cd37cfb
Small cleanup of arm sources.
2006-10-30 14:10:51 +01:00
Markus F.X.J. Oberhumer
0d4254f319
Added tc_objdump_disasm_options.
2006-10-30 13:21:48 +01:00
Markus F.X.J. Oberhumer
4c407c2850
Rebuild all stubs. Minor Makefile cleanup.
2006-10-25 04:08:59 +02:00
John Reiser
829e2d6c5d
set e_shentsize to work around bug in binutils [mostly cosmetic]
2006-10-24 09:43:50 -07:00
John Reiser
a31c4bd474
more renaming for i386-linux.kernel.vmlinux-head.h
2006-10-24 09:29:01 -07:00
John Reiser
17f24dc377
PackBvmlinuzI386 allow x86_64
2006-10-18 08:35:25 -07:00
John Reiser
de3e9f2809
vmlinuz/386 fix for physical_start not at bzimage_offset
2006-10-16 17:18:19 -07:00
John Reiser
4442a282e1
fix filename in #includ
2006-10-16 10:52:57 -07:00
John Reiser
261010f23d
fix comment
2006-10-16 06:12:58 -07:00
John Reiser
ede44ca6ee
vmlinux/386 naming convention for source files
2006-10-16 06:11:49 -07:00
John Reiser
452a953234
vmlinux/386 check for __ksymtab; fix unpack
2006-10-15 14:51:02 -07:00
John Reiser
2b122562ad
new file i386-linux.kernel.head-vmlinux.S
2006-10-14 14:55:10 -07:00
John Reiser
6891bc3da3
vmlinux/i386: fix filters, 0x400000 start, integration with kernel build
2006-10-14 14:52:30 -07:00
Markus F.X.J. Oberhumer
b31b8cd7f0
Added option '--crp-lzma-fb='. Started tuning lzma compression
...
levels '-1' and '-2'.
2006-10-12 14:23:22 +02:00
Markus F.X.J. Oberhumer
e1379ac5ce
Removed debugging leftover.
2006-10-12 13:48:07 +02:00
Markus F.X.J. Oberhumer
0ef3f75d7a
Introduced class OptVar for tracking optionally set options. Also
...
added three new options for finetuning lzma compression.
2006-10-12 13:47:15 +02:00
Markus F.X.J. Oberhumer
407a9e5be0
Clean up NEWS.
2006-10-11 13:47:12 +02:00
Markus F.X.J. Oberhumer
892bb9bf30
Re-add "beta" string to versions.
2006-10-11 13:06:17 +02:00
Markus F.X.J. Oberhumer
47ac871a12
Added version_string() functions for the compression algorithms. Also
...
reserved M_DEFLATE and added a mostly empty compress_zlib.cpp.
2006-10-11 12:56:28 +02:00
László Molnár
a38c3e7f6d
ps1: initialize an uninitialized variable
2006-10-10 15:44:02 +02:00
Markus F.X.J. Oberhumer
08818355d1
Updated README.SRC.
2006-10-10 11:23:32 +02:00
Markus F.X.J. Oberhumer
0a68afef00
Bump version for next release.
2006-10-08 22:38:57 +02:00
Markus F.X.J. Oberhumer
2c0783e327
Added tag for RELEASE_290.
2006-10-08 22:35:47 +02:00
Markus F.X.J. Oberhumer
c2e5e45c84
Fix UINT64_MAX.
2006-10-06 08:42:12 +02:00
John Reiser
014236c861
amd64 stub: fix length of move for non-small programs
2006-10-04 08:38:06 -07:00
Markus F.X.J. Oberhumer
610fd7561b
Bump tentative release date. Update NEWS.
2006-10-04 09:26:34 +02:00
Markus F.X.J. Oberhumer
d6f4480a4f
Removed debugging leftover.
2006-10-04 09:17:59 +02:00
Markus F.X.J. Oberhumer
28a6ac09ad
Initialize a field in constructor.
2006-10-04 09:14:13 +02:00
John Reiser
86e4d24476
avoid circularity of sz_pack2 in PackLinuxElf64amd::defineSymbols()
2006-10-03 20:21:36 -07:00
John Reiser
913a697ab2
Remove dead code and uses of sz_pack2 from PackLinuxElf32::ARM_defineSymbols()
2006-10-03 19:28:08 -07:00
Markus F.X.J. Oberhumer
ebef2b1e44
Avoid a printf warning.
2006-10-04 00:16:55 +02:00
Markus F.X.J. Oberhumer
a61457b422
Added some debugging support via Linker::dumpSymbols().
2006-10-03 23:48:19 +02:00
László Molnár
8f7f1135df
win32/pe: size of tls_value should be 32 bits
2006-10-03 17:01:47 +02:00
John Reiser
89612c10c9
NEWS and document /proc/self/exe
2006-10-03 07:20:59 -07:00
John Reiser
d55bfb32f1
merge
2006-10-03 07:01:55 -07:00
John Reiser
d2b72cf496
sync
2006-10-03 06:59:10 -07:00
László Molnár
8d90fffd46
NEWS updates for 2.90
2006-10-03 15:56:39 +02:00
John Reiser
b84af27a86
typo "pop %eax" [not caught by assembler?]
2006-10-01 16:19:17 -07:00
John Reiser
b45f28f3e9
propagate changes from *.S to *.h
2006-10-01 14:42:39 -07:00
John Reiser
bfa1b5656a
preserve readlink("/proc/self/exe",,) in environment " ="
2006-10-01 14:41:09 -07:00
John Reiser
47f946cd65
fix the comments
2006-10-01 14:25:14 -07:00
John Reiser
970e7bfcda
CPU_TYPE_I386
2006-10-01 14:24:20 -07:00
John Reiser
a81c7a7cd6
PackBSDI386 clarify osabi issues.
2006-09-27 14:38:42 -07:00
John Reiser
b0e1bd239f
Pack shell scripts for Linux only (and not *BSD, for example [no stub!])
2006-09-26 16:21:28 -07:00
John Reiser
53ca41717a
Document /proc/self/exe and workaround.
2006-09-25 13:02:07 -07:00
Markus F.X.J. Oberhumer
6a5bee0cdd
Updated test-stub-compression.
2006-09-09 13:03:04 +02:00
Markus F.X.J. Oberhumer
fd3ae51f83
Remove trailing whitespace.
2006-09-09 11:00:33 +02:00
Markus F.X.J. Oberhumer
5e5954a808
Use gcc-4.1.1 again for mipsel.
2006-09-09 10:57:13 +02:00
John Reiser
add8540909
Integrate upx-2.90beta1-ps1-20060908.bz2 from Jens.
2006-09-08 14:09:30 -07:00
John Reiser
06a302aed0
Integrate upx-2.90beta1-ps1-20060907 from Jens.
2006-09-07 10:44:19 -07:00
John Reiser
147432d38d
list fastest possible inline expansion (saves 3 cycles)
2006-09-06 11:19:18 -07:00
John Reiser
2a003ff72b
merge
2006-09-06 10:55:37 -07:00
John Reiser
8660d3324d
"revert -r eae1090d512738ac64c783be70258ababc8b6513" to sync with Markus
2006-09-06 10:52:06 -07:00
John Reiser
6c59b73ae5
PackLinuxElf64::generateElfHdr() .p_flags are only 32 bits
2006-09-06 10:36:50 -07:00
Markus F.X.J. Oberhumer
80218c1eca
Atari/tos is currently broken, so throw an InternalError.
2006-09-06 14:31:30 +02:00
John Reiser
f24d96d59f
document alternate getbit
2006-09-04 20:09:03 -07:00
Markus F.X.J. Oberhumer
d14bd49f46
Updated mips Makefile.
2006-09-04 14:23:21 +02:00
Markus F.X.J. Oberhumer
1a692a0873
Tuned mips compiler flags.
2006-09-03 19:14:49 +02:00
Markus F.X.J. Oberhumer
631a1a4ddc
Cosmetic changes.
2006-09-03 19:13:35 +02:00
Markus F.X.J. Oberhumer
57df7601d9
mipsel: use -mtune=r4000 and -fno-sched-spec for small size reduction.
2006-09-02 14:53:31 +02:00
Markus F.X.J. Oberhumer
f7650000aa
Enable -fwrapv for mipsel.
2006-09-02 14:16:46 +02:00
Markus F.X.J. Oberhumer
6f93c2d9b2
Updated Makefiles.
2006-09-02 14:14:15 +02:00
Markus F.X.J. Oberhumer
1654764968
Disable lua for now.
2006-09-01 02:38:35 +02:00
Markus F.X.J. Oberhumer
1a1b8416e2
Use f-embed_objinfo for arm-linux.
2006-09-01 02:36:24 +02:00
Markus F.X.J. Oberhumer
36c66d52a6
Added SQUEEZE macro to better canonicalize the dumps.
2006-09-01 02:09:16 +02:00
Markus F.X.J. Oberhumer
68fe43d488
Strip trailing whitespace.
2006-09-01 01:35:51 +02:00
Markus F.X.J. Oberhumer
877b9ee23b
Stub: provide debugging disassembly for arm.
2006-09-01 01:34:20 +02:00
Markus F.X.J. Oberhumer
80ff93beeb
Explicitly strip section .note.GNU-stack from objects.
2006-08-30 20:15:07 +02:00
Markus F.X.J. Oberhumer
b9ddd2812b
Create disassembly for i386-dos32.djgpp2-stubify.h.
2006-08-30 19:38:39 +02:00
László Molnár
ba54b56de4
another update for ps1/exe from Jens
2006-08-30 12:42:49 +02:00
Markus F.X.J. Oberhumer
85be67bc2d
Removed some temporary tags. Info: you can use the file .hg/localtags
...
to define per-repository local tags which are not shared.
2006-08-30 00:21:13 +02:00
Markus F.X.J. Oberhumer
ae20e01d2c
Started renaming some loader symbols - now that we have a real
...
linker we really should improve readability and avoid those
old cryptic names.
2006-08-30 00:11:40 +02:00
Markus F.X.J. Oberhumer
d094e8c3fc
Added stub/tmp/*.dump files to the Mercurial repository.
...
These .dump files are embedded in the .h stubs anyway, but we
really want to see some diffs to better understand what has
changed in a commit.
2006-08-30 00:06:47 +02:00
Markus F.X.J. Oberhumer
f009fe1f63
Start work on updating p_tos.
2006-08-29 23:46:21 +02:00
Markus F.X.J. Oberhumer
2007fe5f49
More small Makefile changes.
2006-08-29 23:08:26 +02:00
László Molnár
84989ffa04
merge
2006-08-29 17:11:03 +02:00
László Molnár
31b629a19c
ps1/exe updated from jens
2006-08-29 16:25:59 +02:00
Markus F.X.J. Oberhumer
e762d9e274
Yet another minor Makfile update.
2006-08-29 16:05:17 +02:00
Markus F.X.J. Oberhumer
6833267b19
Cleanups in stub Makefiles.
2006-08-29 14:37:06 +02:00
Markus F.X.J. Oberhumer
05f2833388
Detabified.
2006-08-29 13:43:06 +02:00
Markus F.X.J. Oberhumer
0d026ef18d
Removed trailing whitespace.
2006-08-29 13:41:13 +02:00
Markus F.X.J. Oberhumer
b756d93891
Use absolute symbols to store offsets in m68k stub.
2006-08-28 09:48:01 +02:00
Markus F.X.J. Oberhumer
f54513586d
Implemented alignCode() for m68k.
2006-08-28 09:09:29 +02:00
Markus F.X.J. Oberhumer
6c519c237e
Renamed Linker::align() to alignCode(). We still have to add
...
some way to express alignData().
2006-08-28 08:58:43 +02:00
John Reiser
4ffde4db98
8-byte align LZMA_DEC20
2006-08-27 10:03:12 -07:00
Markus F.X.J. Oberhumer
41847d31e7
More m68k rearrangments.
2006-08-26 13:25:37 +02:00
Markus F.X.J. Oberhumer
24ce25bb5c
Updated READMEs.
2006-08-26 13:25:04 +02:00
Markus F.X.J. Oberhumer
e051b69e80
Use -fwrapv for m68k stubs.
2006-08-26 12:57:21 +02:00
Markus F.X.J. Oberhumer
59283d1164
More work on m68k.
2006-08-24 20:48:09 +02:00
Markus F.X.J. Oberhumer
0de32a5edc
Small Makefile cleanup.
2006-08-24 14:07:53 +02:00
Markus F.X.J. Oberhumer
4f80066dcb
New ACC version.
2006-08-24 12:39:45 +02:00
Markus F.X.J. Oberhumer
04ddc8003f
Started work on m68k.
2006-08-24 03:56:11 +02:00
Markus F.X.J. Oberhumer
3213f98d66
Added recursive targes extra-all and extra-clean.
2006-08-24 01:34:57 +02:00
Markus F.X.J. Oberhumer
1f16f85c51
Reorganized Makefile.extra.
2006-08-24 01:34:24 +02:00
Markus F.X.J. Oberhumer
c03cb3a11c
All stubs now depend on Makefile and thus will get rebuilt more often.
2006-08-24 01:34:06 +02:00
László Molnár
62e29a6546
let us see the relocation info in the disassembled stubs
2006-08-23 14:43:37 +02:00
László Molnár
3574b065d6
fixed prototype of ElfLinkerMipsLE::relocate1
2006-08-23 14:35:28 +02:00
Markus F.X.J. Oberhumer
c0c47f41be
Added initial lzma support for m68k.
2006-08-23 13:58:16 +02:00
Markus F.X.J. Oberhumer
37761d580f
Updated for bin-upx-20060823.
2006-08-23 13:11:01 +02:00
Markus F.X.J. Oberhumer
e075c8e691
Updated unused code.
2006-08-23 11:30:42 +02:00
Markus F.X.J. Oberhumer
0c61ca1a6b
Renamed addLinkerSymbols() to defineSymbols().
2006-08-23 11:20:06 +02:00
John Reiser
1846fa1f54
PackLinuxElf start loader at 0 mod 8
2006-08-22 21:22:49 -07:00
John Reiser
579ce20cad
remove patchFilter32()
2006-08-22 20:49:28 -07:00
John Reiser
12e4bcba5d
Elf64 sets .p_flags for 0-length .bss
2006-08-22 11:23:55 -07:00
László Molnár
b4f57dee3b
arm.v4t-wince.pe: minor cleanups
2006-08-22 14:16:46 +02:00
Markus F.X.J. Oberhumer
f11673ae3f
Removed Packer::patchDecompressor().
2006-08-22 11:05:18 +02:00
Markus F.X.J. Oberhumer
a27af7dd7e
Small update.
2006-08-22 11:02:54 +02:00
Markus F.X.J. Oberhumer
2b26a3cc14
Updated .hgignore.
2006-08-22 10:59:16 +02:00
Markus F.X.J. Oberhumer
47c4849694
Added support for debug.dump_stub_loader.
2006-08-22 10:48:04 +02:00
John Reiser
30a4adf331
Reduce usage of patchDecompressor()
2006-08-21 21:19:48 -07:00
John Reiser
117a721166
ElfLinker::addSection ==> addLoader
2006-08-21 19:52:09 -07:00
John Reiser
1a219e62ba
Bvmlinuz: linker->defineSymbol() instead of patchDecompressor()
2006-08-21 14:26:42 -07:00
John Reiser
c8d54b324b
Only PC-relative relocations get range checked.
2006-08-21 14:26:08 -07:00
John Reiser
0ac2971fc1
add UPX_F_BSD_ELF_i386 to the exceptions for patchDecompressor()
2006-08-21 12:09:46 -07:00
Markus F.X.J. Oberhumer
348a40201b
Introduce $(tc_bfdarch) and generate disassemblies to verify code quality.
2006-08-21 20:55:37 +02:00
Markus F.X.J. Oberhumer
9f20ddc800
Removed Packer::patchVersion() and Packer::patchVersionYear().
2006-08-21 20:28:14 +02:00
Markus F.X.J. Oberhumer
6f1cc2c1e5
Renamed ElfLinker::addSection(sname) to addLoader().
2006-08-21 20:07:42 +02:00
Markus F.X.J. Oberhumer
601cd95277
Removed Packer::getIdentstr().
2006-08-21 19:57:43 +02:00
Markus F.X.J. Oberhumer
8e9ce59ef2
Minor Makefile cleanups.
2006-08-21 16:40:20 +02:00
László Molnár
d76ef8e3cf
arm/pe: use embed_objinfo in the Makefile
...
made some symbols globals in arm.v4a-wince.pe.S & arm.v4t-wince.pe.S
2006-08-21 15:20:20 +02:00
John Reiser
c19ffafd8d
i386-linux.elf decompress does not need cto8
2006-08-20 11:19:37 -07:00
Markus F.X.J. Oberhumer
996a99ad75
Some linker.cpp cleanups.
2006-08-20 11:15:36 +02:00
Markus F.X.J. Oberhumer
affb926d44
Whitespace cleanups.
2006-08-20 11:08:38 +02:00
John Reiser
c506e534aa
propagate to .h in stub/
2006-08-19 18:41:45 -07:00
John Reiser
9994315070
un-debug
2006-08-19 18:40:49 -07:00
John Reiser
4f0d89ef8b
convert PackMachPPC32 to new Linker
2006-08-19 15:28:16 -07:00
Markus F.X.J. Oberhumer
aab984618d
Fix newLinker() for mach/ppc32.
2006-08-19 14:29:40 +02:00
Markus F.X.J. Oberhumer
8b662bc6b5
Removed trailing whitespace.
2006-08-19 14:01:39 +02:00
Markus F.X.J. Oberhumer
03ce7a8db3
Removed all old linker classes - we exclusively use ElfLinker now.
2006-08-19 14:00:22 +02:00
Markus F.X.J. Oberhumer
033e7928b5
Minor Makefile updates.
2006-08-19 13:05:16 +02:00
Markus F.X.J. Oberhumer
b095f2a158
Strip trailing whitespace from objdump info.
2006-08-18 13:22:38 +02:00
Markus F.X.J. Oberhumer
196c0e0ebc
Added embed_objinfo macro.
2006-08-18 13:18:10 +02:00
Markus F.X.J. Oberhumer
8ab309630b
Keep old alloca() code around.
2006-08-18 12:26:41 +02:00
Markus F.X.J. Oberhumer
42bac47a71
Improve automatic dependency information by using '-MT'.
2006-08-18 12:26:06 +02:00
Markus F.X.J. Oberhumer
3bc4de2236
Added missing stubs to hg repo.
2006-08-18 12:25:34 +02:00
John Reiser
a6e4b45a38
--force-execve for *BSD/386
2006-08-17 17:35:33 -07:00
John Reiser
28e97ccaf2
avoid symbol 'byte'
2006-08-17 17:18:37 -07:00
Markus F.X.J. Oberhumer
255781c029
Minor cleanups.
2006-08-17 13:09:51 +02:00
John Reiser
7f5635ea8c
Section LZMA_ELF00 saves time (but no space) by not clearing CProb[].
2006-08-16 19:49:09 -07:00
Markus F.X.J. Oberhumer
4f18ec726c
Rebuilt with bin-upx-20060816 (untested mipsel changes).
2006-08-16 19:40:33 +02:00
Markus F.X.J. Oberhumer
263622d628
Updated for bin-upx-20060816.
2006-08-16 19:37:25 +02:00
László Molnár
1dfd2443ac
name of file comments fixed
2006-08-16 15:29:11 +02:00
Markus F.X.J. Oberhumer
881bd53f60
Small Makefile cleanups.
2006-08-16 09:50:00 +02:00
Markus F.X.J. Oberhumer
ec4404b1ba
We have to use "dword ptr" instead of "dword" !
2006-08-16 09:38:49 +02:00
Markus F.X.J. Oberhumer
badaeac81f
Use "jmps" macro instead of #define.
2006-08-16 09:34:27 +02:00
Markus F.X.J. Oberhumer
618d5ddaff
More renaming.
2006-08-16 09:24:31 +02:00
Markus F.X.J. Oberhumer
4ed74af868
More renaming.
2006-08-16 09:07:00 +02:00
Markus F.X.J. Oberhumer
123d9af7d0
More renaming in arch/i386.
2006-08-16 08:39:58 +02:00
Markus F.X.J. Oberhumer
4f17b30915
Started renaming .asm files to .S.
2006-08-16 08:13:36 +02:00
Markus F.X.J. Oberhumer
1fc265b0aa
Use symbolic stride again.
2006-08-16 07:59:21 +02:00
John Reiser
afae9b8d17
merge
2006-08-15 14:01:53 -07:00
John Reiser
481be44879
Work around assembler bug: double-indexing by symbolic stride fails.
2006-08-15 14:00:35 -07:00
Markus F.X.J. Oberhumer
b8530b0f0b
Whitespace cleanups.
2006-08-15 22:48:04 +02:00
Markus F.X.J. Oberhumer
69de79684f
Removed some unused files.
2006-08-15 22:41:05 +02:00
Markus F.X.J. Oberhumer
6e6fd057b5
Cleaned up stub/Makefile.
2006-08-15 22:38:40 +02:00
John Reiser
4b0ebf2b80
merge
2006-08-15 12:11:36 -07:00
John Reiser
ee82c32119
'dword' is a symbol to libexec/gcc/i686-unknown-linux-gnu/3.4.6/cc1
2006-08-15 12:10:54 -07:00
Markus F.X.J. Oberhumer
3fe6731035
Disable WITH_LUA for now.
2006-08-15 19:23:03 +02:00
Markus F.X.J. Oberhumer
1c3f3b5705
Removed last dependency on nasm assembler.
2006-08-15 18:50:41 +02:00
Markus F.X.J. Oberhumer
def1ccffc4
Rebuilt with bin-upx-20060815.
2006-08-15 18:39:05 +02:00
Markus F.X.J. Oberhumer
fa2e531343
Updated for bin-upx-20060815.
2006-08-15 18:38:38 +02:00
Markus F.X.J. Oberhumer
814ddbc6cc
Remove duplicate inclusion.
2006-08-15 17:20:23 +02:00
John Reiser
267e8dcfb6
Omit double include of macros2.ash.
2006-08-15 07:22:52 -07:00
John Reiser
49ec1561f8
merge
2006-08-15 07:11:06 -07:00
John Reiser
e2dc612153
Add cl1_d32_2.ash.
2006-08-15 07:08:50 -07:00
Markus F.X.J. Oberhumer
8f225431fe
Minor updates to Makefile and stubs.
2006-08-15 10:23:45 +02:00
Markus F.X.J. Oberhumer
194be5e0b7
Moved o2bin.pl to UNUSED.
2006-08-15 09:21:39 +02:00
John Reiser
6788a05dd1
convert powerpc-darwin.macho-entry.h to new linker
2006-08-14 21:20:30 -07:00
John Reiser
6a7066ac2f
Avoid linker->setLoaderAlignOffset().
2006-08-14 19:21:15 -07:00
John Reiser
ec5ff4e973
merge
2006-08-14 13:06:53 -07:00
John Reiser
fe6d460531
rebuild: arm-unknown-linux-gnu-gcc-4.1.0, i386-linux-gcc-3.4.6;
...
powerpc/32/ppc_regs.h
2006-08-14 12:30:33 -07:00
John Reiser
9cb97af10f
begin conversion to new linker
2006-08-14 12:10:34 -07:00
John Reiser
1c784eea3d
typo for i386-bsd.elf-main.o
2006-08-14 12:09:42 -07:00
László Molnár
59dd33a461
ps1/exe updates from Jens
2006-08-14 17:15:26 +02:00
László Molnár
97ebd912dc
rebuilt arm.v4t-wince.pe.h
2006-08-14 14:26:40 +02:00
Markus F.X.J. Oberhumer
742fcc060c
Update NEWS.
2006-08-14 08:46:55 +02:00
Markus F.X.J. Oberhumer
3ad5cb8a23
Merge.
2006-08-14 08:44:58 +02:00
John Reiser
0d1f12e31a
Use better name osabi_note.
2006-08-13 20:14:14 -07:00
John Reiser
a8ddf8f66d
Detect PT_NOTE for NetBSD, OpenBSD.
2006-08-13 20:00:44 -07:00
John Reiser
f7a9c0a248
Mention lzma, *BSD, linux workaround [needs clarification.]
2006-08-13 12:44:40 -07:00
John Reiser
190badb395
arm-unknown-linux-gnu-gcc-4.1.0
2006-08-13 12:32:42 -07:00
Markus F.X.J. Oberhumer
3d91ab6c31
Introduced bele_policy.h.
2006-08-13 15:30:26 +02:00
Markus F.X.J. Oberhumer
c15b8d71bc
Removed trailing whitespace.
2006-08-13 14:47:24 +02:00
John Reiser
5a707dba8a
fix NRV_TAIL, ELFMAINY
2006-08-11 20:45:43 -07:00
John Reiser
ffd2fcde6b
sections NRV_HEAD, NRV_TAIL replace NRV_COMMON
2006-08-11 20:29:51 -07:00
László Molnár
8e4056c1e4
vmlinuz/386: fixed zlib uncompression problem on dos
2006-08-11 17:59:12 +02:00
László Molnár
1554e2b135
lzma support for ps1 from Jens
2006-08-11 11:18:01 +02:00
John Reiser
4715cbb70d
PackLinuxI386::newLinker() is a new ElfLinkerX86;
...
re-generate i386-linux.elf.execve-entry.h after lzma_d_cs.S
2006-08-10 18:48:32 -07:00
John Reiser
fd1611079a
auto-define symbol *ABS* in section *ABS*
...
(for i386-linux.elf.execve-entry.h R_386_PC *ABS*)
2006-08-10 17:02:36 -07:00
John Reiser
8edc03df64
PackLinuxI386::newLinker(); also use arm-unknown-linux-gnu-gcc-4.1.0
...
to re-compile stub/src/arch/arm/v4t/lzma_d_cf.S, lzma_d_cs.S .
2006-08-10 16:52:20 -07:00
László Molnár
9f5c0af5b8
step 0 of refactoring arm/pe & win32/pe ready
2006-07-26 14:00:36 +02:00
László Molnár
6d6eeba5d5
refactoring of arm/pe and win32/pe started
2006-07-25 18:30:12 +02:00
László Molnár
5dfb64ef71
arm.v4a-wince.pe.h rebuilt
2006-07-25 12:31:45 +02:00
John Reiser
e5bda7add7
save 28 bytes (> 10%) in arch/arm/v4a/nrv2b_d8.S
2006-07-24 14:48:06 -07:00
John Reiser
77f9b336bd
ARM lzma_d_cf.S use .Lf labels to save space in arm-linux.elf-entry.h
2006-07-24 06:26:04 -07:00
László Molnár
cf930d0dde
merge
2006-07-24 11:06:06 +02:00
László Molnár
f01c94e8bc
arm/pe: nrv2b support for v4a mode
2006-07-23 21:50:51 +02:00
László Molnár
0d774527b4
merge. arm/pe lzma updates
2006-07-23 21:08:27 +02:00
John Reiser
58ba9496d0
arm-linux lzma_d.c omit -fPIC enables using r10
2006-07-23 09:13:47 -07:00
John Reiser
1993e94e53
ARM lzma bug in cacheflush
2006-07-23 07:19:35 -07:00
László Molnár
3bcc06ed09
arm/pe: lzma works for v4t too
...
minor changes in v4a code
2006-07-23 16:13:10 +02:00
John Reiser
2f6ce88e28
ARM Linux lzma work
2006-07-22 20:53:15 -07:00
John Reiser
cd1dec9fc7
PackLinuxElf32arm lzma cache flush; 5th arg to f_decompress is on stack
2006-07-22 11:39:29 -07:00
John Reiser
05872d7650
arm-linux nrv2b works: conditon code bug, cache flush, cache lookahead
2006-07-22 08:48:04 -07:00
László Molnár
1dcee2ffa2
lzma for arm/pe v4a works
2006-07-22 17:30:09 +02:00
John Reiser
5f622efb77
nrv2e PackLinuxElf32armLe works
2006-07-21 19:10:48 -07:00
John Reiser
52e8326d54
work on PackLinuxElf32arm; add nrv2b_d8.S
2006-07-21 13:11:02 -07:00
László Molnár
436532bed7
arm/pe: lzma support for v4a (untested)
2006-07-21 15:08:29 +02:00
László Molnár
d15e789200
nrv2d support for arm/pe v4a mode
2006-07-20 18:11:14 +02:00
John Reiser
98942f5528
work on PackLinuxElf32arm, including nrv2d and lzma
2006-07-19 17:29:17 -07:00
László Molnár
c7c21dc122
rebuilt some i386 stubs
2006-07-18 13:45:22 +02:00
László Molnár
4500c1d1a4
lzma should be working again for most of the i386 formats
2006-07-18 13:44:44 +02:00
John Reiser
b8b983dded
nrv2d decompressor for PackLinuxElf64amd
2006-07-17 15:02:37 -07:00
John Reiser
d6a6673971
nrv2d decompressor for PackLinuxElf32ppc
2006-07-17 13:23:49 -07:00
László Molnár
0580fe8db8
merge
2006-07-17 17:39:45 +02:00
László Molnár
c727e24138
win32/pe works with lzma again
2006-07-17 17:38:44 +02:00
László Molnár
b83698ebf5
Packer::defineDecompressorSymbols added
2006-07-17 17:34:03 +02:00
László Molnár
3fbbaa5130
really fixed i386 lzma stub
2006-07-17 17:33:03 +02:00
John Reiser
2f48b840ae
merge
2006-07-17 08:06:06 -07:00
John Reiser
efdee11d5a
lzma PackLinuxElf32ppc works!
2006-07-17 08:05:31 -07:00
László Molnár
4c87e11aeb
8 bit relocation overflow detection added to ElfLinker
2006-07-17 16:58:24 +02:00
László Molnár
e881e008b8
fixes for the i386 nrv2b & nrv2d stubs
2006-07-17 16:56:17 +02:00
László Molnár
1b2837915d
small conversion related fix to the lzma stub
2006-07-17 16:54:41 +02:00
László Molnár
d076a6724f
merge
2006-07-17 12:13:08 +02:00
John Reiser
386af71c39
add lzma_d.S for PackLinuxElf32ppc
2006-07-16 22:35:35 -07:00
John Reiser
49f277192c
hacking lzma PackLinuxElf32ppc
2006-07-16 22:32:55 -07:00
John Reiser
5974a6276b
undebug powerpc-linux.elf-entry.S
2006-07-16 19:06:04 -07:00
John Reiser
e06a390771
PackLinuxElf32ppc works (except lzma)
2006-07-16 19:01:17 -07:00
John Reiser
b34e204676
PackLinuxElf32ppc conversion; alignment in *::Section
2006-07-16 15:04:16 -07:00
John Reiser
755d990dfd
unify buildLinuxLoader using addStubEntrySections and addLinkerSymbols
2006-07-16 09:48:22 -07:00
John Reiser
7185358b98
lzma PackLinuxElf64amd works!
2006-07-15 20:05:41 -07:00
John Reiser
3843ec1e02
lzma for PackLinuxElf64amd
2006-07-15 16:01:53 -07:00
John Reiser
cfc5631d5d
PackLinuxElf64amd works (except for lzma)
2006-07-15 13:46:37 -07:00
John Reiser
e64555aca0
hacking PackLinuxElf64amd
2006-07-14 19:43:38 -07:00
John Reiser
ef52ebb529
workaround i386 assembler misfeature
2006-07-14 06:33:40 -07:00
John Reiser
c98136ca4f
fix error in assembler conversion
2006-07-13 21:10:42 -07:00
László Molnár
65f44d24ca
miniacc support for arm-wince-pe
2006-07-13 16:50:26 +02:00
John Reiser
44f20782fd
cleanup after merge; AMD64 ElfLinker
2006-07-12 11:42:03 -07:00
John Reiser
9b1d76a5d0
Added tag main-2006-07-12 for changeset 72fe9925b247073cd8342d8bff07adc47b72173f
2006-07-12 11:26:15 -07:00
John Reiser
21b5074ce8
Added tag jfr-2006-07-12 for changeset 8afead5e7182950592970330c218913fecfbe390
2006-07-12 11:24:52 -07:00
John Reiser
0b8825fecb
i386 conversion stub conversion; nrv2b_d32_2.ash etc.
2006-07-12 11:15:14 -07:00
László Molnár
3d3c20e507
ElfLinker improvements
...
Sections/symbols/relocations are allocated dynamically
Sections use an internal copy of their input data
2006-07-11 14:40:58 +02:00
László Molnár
67a282f19f
class nocopy introduced
2006-07-11 13:58:13 +02:00
John Reiser
92023b533a
merge
2006-07-10 13:26:39 -07:00
John Reiser
c1d14c150e
How to debug i386-linux.kernel.vmlinu[xz] under qemu
2006-07-10 13:25:39 -07:00
László Molnár
aa656c74d5
merge
2006-07-10 13:30:04 +02:00
László Molnár
e39b7ffe30
ps1/exe updates from Jens Medoch
2006-07-10 13:28:27 +02:00
John Reiser
1897148abc
convert i386-bsd.elf-entry.asm
2006-07-09 20:07:37 -07:00
John Reiser
b76118802a
ElfLinkerPpc32
2006-07-09 19:52:23 -07:00
John Reiser
8266aa3343
i386/nrv2d_d32_2.ash
2006-07-09 19:15:03 -07:00
John Reiser
ab0c349261
workaround ElfLinker not handling addSection(,,) from dynamic block
2006-07-09 17:29:22 -07:00
John Reiser
d5e0e66426
PackLinuxElf32x86::newLinker()
2006-07-09 16:59:41 -07:00
John Reiser
c5b3107f83
start converting PackLinuxElf32x86 to ElfLinker
2006-07-09 10:17:52 -07:00
John Reiser
1a0a64e4de
::addStubEntrySections() with default ELFMAINX
2006-07-09 08:48:06 -07:00
John Reiser
6bd9805bcc
start converting PackLinuxElf64amd to ElfLinker
2006-07-09 08:14:04 -07:00
László Molnár
f74c2af65c
conversion of atari/tos to ElfLinker finished
2006-07-07 17:49:30 +02:00
László Molnár
9531bdf674
fixed a bug in ElfLinker
2006-07-07 16:57:15 +02:00
László Molnár
76e705e7ee
more atari/tos work
2006-07-07 09:20:43 +02:00
László Molnár
d35211328e
ElfLinker: rela support added
2006-07-07 08:51:48 +02:00
László Molnár
b7bbd81dda
conversion of atari/tos to ElfLinker started
2006-07-06 18:30:34 +02:00
László Molnár
9836dd5d10
merge
2006-07-06 10:27:31 +02:00
László Molnár
2109ad320d
ps1: nrv2b & nrv2d converted to gas
...
updated README.SRC
removed app-asm5900.pl
2006-07-06 09:20:05 +02:00
László Molnár
c026121c0e
mips conversion to ElfLinker almost ready
2006-07-06 00:54:14 +02:00
László Molnár
ee0c87f7b1
mips conversion started
2006-07-05 18:32:52 +02:00
John Reiser
709fb93a22
sizeof(shstrtab) already includes terminating '\0'
2006-07-05 05:40:24 -07:00
László Molnár
b38cd0a48d
merge
2006-07-05 13:02:14 +02:00
László Molnár
264435c32d
rebuilt the stubs
2006-07-05 13:00:42 +02:00
László Molnár
c285929ad3
i386/macros2.ash: ctojr32 fixes
2006-07-04 23:30:50 +02:00
John Reiser
1cbea8157d
merge
2006-07-04 08:59:29 -07:00
John Reiser
0a10334f1b
more *BSD, especially do_xmap() for OpenBSD
2006-07-04 08:59:00 -07:00
László Molnár
f0d5a6ebac
vmlinu[xz] using nrv2e converted to ElfLinker
2006-07-04 17:36:54 +02:00
László Molnár
db7086b5e6
pe: ignore duplicated relocation records
2006-07-04 14:11:56 +02:00
John Reiser
0e92280b33
*BSD elf-fold escape hatch differs from Linux
2006-07-03 19:35:56 -07:00
John Reiser
0d7255158a
OpenBSD "pro-active security" causes headaches
2006-07-03 16:35:21 -07:00
László Molnár
33564b68dd
loader.txt updated
2006-07-03 15:13:53 +02:00
Markus F.X.J. Oberhumer
ba942b952a
Merge.
2006-07-03 14:56:45 +02:00
Markus F.X.J. Oberhumer
bd7f28896e
Minor cleanups.
2006-07-03 14:54:50 +02:00
John Reiser
18fe124696
::generateElfHdr() sets .e_ident[Elf32_Ehdr::EI_OSABI]
2006-07-03 05:51:45 -07:00
John Reiser
ea3a3b6e1c
Elf32_Ehdr::ELFOSABI_LINUX
2006-07-03 05:47:01 -07:00
Markus F.X.J. Oberhumer
e6c06aacff
New brandelf.py script.
2006-07-03 13:00:53 +02:00
Markus F.X.J. Oberhumer
1aee92cd5c
Introduced $(tc_bfdname).
2006-07-03 12:19:20 +02:00
Markus F.X.J. Oberhumer
40c4cad491
Rebuilt.
2006-07-03 12:07:34 +02:00
László Molnár
013d46fb02
merge
2006-07-03 10:46:32 +02:00
László Molnár
f0f465411f
win32/pe using nrv2e converted to ElfLinker
2006-07-03 09:21:51 +02:00
John Reiser
32ce83475d
more *BSD arrangements
2006-07-02 21:54:44 -07:00
John Reiser
ec0d3f5b5d
merge
2006-07-02 19:28:19 -07:00
John Reiser
75294b9146
FreeBSD, NetBSD, OpenBSD on equal footing
2006-07-02 19:27:08 -07:00
Markus F.X.J. Oberhumer
26a0eb68ef
Merge.
2006-07-03 01:42:12 +02:00
Markus F.X.J. Oberhumer
b983e29fb0
Fix compilation on big endian machines. Remove trailing whitespace.
2006-07-03 01:40:59 +02:00
John Reiser
68dadabc29
BSD/elf386
2006-07-02 16:25:31 -07:00
László Molnár
ed9fd3f0e0
watcom/le using nrv2e converted to ElfLinker
2006-07-02 23:21:15 +02:00
László Molnár
fa9573436a
tmp/adam using nrv2e converted to ElfLinker
2006-07-02 22:39:53 +02:00
László Molnár
6d2058c3b7
reloc32 uncommented
2006-07-02 22:32:12 +02:00
John Reiser
0d7f93b877
unused: getrusage personality msync getcwd
2006-07-02 12:04:12 -07:00
László Molnár
f022c9d510
dos/djgpp2 using nrv2e converted to ElfLinker
2006-07-01 17:29:41 +02:00
László Molnár
5964a06386
arm/pe works with ElfLinker
2006-07-01 12:36:07 +02:00
László Molnár
f14dc4a4e9
ElfLinkerArmLe fixes
2006-07-01 12:25:26 +02:00
László Molnár
fd56e2534c
fixed alignment handling typo
2006-07-01 09:40:12 +02:00
László Molnár
08962a74ab
started the arm/pe conversion to ElfLinker
2006-07-01 00:21:53 +02:00
László Molnár
f850d36c52
dos/com & dos/sys: use the new ElfLinker features
2006-07-01 00:21:06 +02:00
László Molnár
c5fb161477
ElfLinker updates
...
commented out the debugging printfs
now it's possible to set the offset of sections
aligment handling simplified
ElfLinkerArmPE introduced
2006-07-01 00:10:02 +02:00
László Molnár
bfc2fab33f
use "//" instead of "#" for comments
2006-07-01 00:01:35 +02:00
John Reiser
ec9d6c4fd2
workaround linux bug which demands writeable PT_LOAD for .bss
2006-06-29 19:07:02 -07:00
John Reiser
6135d61e3d
*-fold.h depends on *.lds
2006-06-29 17:01:38 -07:00
John Reiser
a677242a2c
Bvmlinuz remember to patchDecompressor()
2006-06-29 13:58:41 -07:00
John Reiser
6602f30112
true==checkCompressionRatio() means success
2006-06-29 12:07:01 -07:00
Markus F.X.J. Oberhumer
a4b8dc18c1
Strip unneeded symbols and sections from i086-* stubs.
2006-06-29 19:09:16 +02:00
Markus F.X.J. Oberhumer
c0d4741f88
Merge.
2006-06-29 18:43:36 +02:00
László Molnár
b33718180c
ElfLinkerX86 introduced.
...
Simple alignment handling added to ElfLinker.
dos/exe device drivers can be compressed again.
2006-06-29 18:21:01 +02:00
John Reiser
3872393b29
call freezeLoader
2006-06-29 06:08:57 -07:00
John Reiser
1d72a7df99
propagate IMAGE_OFFSET from commandline
2006-06-29 05:57:28 -07:00
Markus F.X.J. Oberhumer
5455908772
Merge.
2006-06-29 14:39:42 +02:00
Markus F.X.J. Oberhumer
8882192fac
Minor cleanups.
2006-06-29 14:38:18 +02:00
Markus F.X.J. Oberhumer
7b77491c06
Refactoring: move fields ui_pass and ui_total_passes from class
...
Packer into class UiPacker.
2006-06-29 14:37:01 +02:00
László Molnár
20bf214d6e
dos/com & dos/sys: xchg si,di vs. xchg di,si difference fixed. i086-dos16.com.h rebuilt
2006-06-29 14:27:25 +02:00
Markus F.X.J. Oberhumer
8ab3e63aeb
First start of refactoring field ph out of class Packer.
2006-06-29 14:26:49 +02:00
László Molnár
0dc03214c5
merge
2006-06-29 11:51:47 +02:00
John Reiser
362e98b43d
lzma: limit stack to ~28KB for decompressing kernel
2006-06-28 22:34:12 -07:00
John Reiser
193e085cf0
limit stack to ~28KB for decompressing kernel
2006-06-28 22:30:05 -07:00
John Reiser
e0df2a342b
merge
2006-06-28 22:20:24 -07:00
John Reiser
ba19ccac43
tabify the commented Makefile
2006-06-28 22:18:48 -07:00
Markus F.X.J. Oberhumer
d7261b7a78
Remove debugging code.
2006-06-29 07:00:06 +02:00
Markus F.X.J. Oberhumer
0d80173efd
Update some structs for future features.
2006-06-29 06:42:17 +02:00
Markus F.X.J. Oberhumer
930f07d15e
Move upx_compress_result_t handling into right place.
2006-06-29 06:24:24 +02:00
Markus F.X.J. Oberhumer
66df7389d2
Refactoring: pass upx_compress_config_t to Packer::compressWithFilters()
...
so that formats can set conf_lzma.max_num_probs.
Also renamed compression parameters to use cconf & cresult.
2006-06-29 06:15:28 +02:00
Markus F.X.J. Oberhumer
c7bf0b6ddd
Removed trailing whitespace.
2006-06-29 05:12:39 +02:00
Markus F.X.J. Oberhumer
0bc361adeb
Introduced conf_lzma.max_num_probs to limit stack size for decompression.
2006-06-29 05:12:01 +02:00
John Reiser
4fff523a6d
Merge
2006-06-28 19:45:58 -07:00
John Reiser
67e09fb342
kernel Makefile; fix cross-platform endian trouble
2006-06-28 19:44:02 -07:00
Markus F.X.J. Oberhumer
c360806f47
Small Makefile updates.
2006-06-29 04:16:58 +02:00
Markus F.X.J. Oberhumer
7b74b73b08
Start using binutils-multiarch-2.17.
2006-06-29 01:52:05 +02:00
László Molnár
e9a851c0d4
dos/exe: migrated to ElfLinker
2006-06-29 00:44:12 +02:00
Markus F.X.J. Oberhumer
b13b169149
Fixed assembly for binutils-2.16.91.
2006-06-29 00:38:12 +02:00
László Molnár
455329a745
dos/sys: got rid of the "next" symbol
2006-06-29 00:28:47 +02:00
László Molnár
a68b76c8b4
undefined symbols are initialized to "0xdeaddead"
2006-06-29 00:22:45 +02:00
László Molnár
96e3899216
increased the maximum number of symbols
2006-06-29 00:22:03 +02:00
Markus F.X.J. Oberhumer
771ab5ea9a
Added notes about binutils-multiarch-2.17.
2006-06-29 00:11:06 +02:00
László Molnár
3c87e6b270
merge
2006-06-28 15:10:01 +02:00
László Molnár
6d8afec510
ElfLinker started. Dos/com & dos/sys formats converted
2006-06-28 14:45:58 +02:00
John Reiser
89e25657d8
fix cross-platform endian trouble with ELF headers
2006-06-27 13:07:31 -07:00
John Reiser
29387f1fcf
lzma Elf i386 minor tuning
2006-06-27 09:53:28 -07:00
John Reiser
58e885c052
un-debug
2006-06-26 17:21:45 -07:00
John Reiser
984dfcd7e1
adapt to new 2-byte replacement for LzmaDecodeProperties()
2006-06-26 17:16:45 -07:00
Markus F.X.J. Oberhumer
3785479086
Use custom encoding for LZMA properties.
2006-06-26 17:28:46 +02:00
Markus F.X.J. Oberhumer
8ed280907c
Merge.
2006-06-26 14:36:29 +02:00
Markus F.X.J. Oberhumer
d742671205
Update comment.
2006-06-26 14:36:10 +02:00
John Reiser
87e72c28a4
no PROT_WRITE for .text on i386-linux.elf.shell
2006-06-25 06:05:53 -07:00
John Reiser
4dee357362
optimize PackLinuxI386::buildLinuxLoader
2006-06-25 05:56:36 -07:00
John Reiser
431f4b9b0d
fix i386-linux.elf.shell
2006-06-25 05:44:39 -07:00
John Reiser
dd5b7825d5
save 4 bytes in __LZMA_ELF00__
2006-06-24 16:48:43 -07:00
John Reiser
02bc48925a
lzma ELF minimal CLzmaDecoderState each time
2006-06-24 14:44:40 -07:00
John Reiser
4eb505755e
lzma for ELF
2006-06-24 14:00:41 -07:00
Markus F.X.J. Oberhumer
83e94a70ea
Narrow try/catch.
2006-06-24 17:53:26 +02:00
Markus F.X.J. Oberhumer
8a150b27c3
Update comment.
2006-06-24 17:39:10 +02:00
John Reiser
1a51451ec2
ELF stub uses getSizeForCompression()
2006-06-23 19:32:29 -07:00
Markus F.X.J. Oberhumer
41e51bfb77
Assert dst_len buffer size in upx_compress().
2006-06-23 17:50:39 +02:00
Markus F.X.J. Oberhumer
7e1d9bc768
Split options_t::crp into multiple structs.
2006-06-23 16:23:31 +02:00
Markus F.X.J. Oberhumer
ba065ec1d8
Improve error code reporting in compression wrappers.
2006-06-23 15:52:10 +02:00
Markus F.X.J. Oberhumer
fe057a91c8
Cleanup: removed upx_bool and upx_uint types.
2006-06-23 15:00:33 +02:00
László Molnár
d2c36eefc9
pe: fixed unpack problem in rebuildImports()
2006-06-23 11:17:26 +02:00
John Reiser
28d56bab04
Merge
2006-06-22 21:30:59 -07:00
John Reiser
2500eff90d
more LZMA debugging for Linux i386 ELF
2006-06-22 21:25:18 -07:00
Markus F.X.J. Oberhumer
153446b3a1
Fixed debugging code.
2006-06-23 05:40:35 +02:00
Markus F.X.J. Oberhumer
391f5caaa2
Added precondition assertions to upx_decompress().
2006-06-23 05:27:42 +02:00
Markus F.X.J. Oberhumer
cc0df92444
Added some more checks.
2006-06-23 04:02:06 +02:00
John Reiser
03910d67c3
M_LZMA bug tracking: decompress fails but says OK
2006-06-22 17:18:17 -07:00
Markus F.X.J. Oberhumer
fec5cc864e
Update Makefile.
2006-06-23 01:02:47 +02:00
Markus F.X.J. Oberhumer
cb78362713
Use inner class UiPacker::State.
2006-06-22 19:40:43 +02:00
Markus F.X.J. Oberhumer
4c5b1a6ff4
Added some assertions to track down a win32/pe unpack problem which
...
shows up on 64-bit machines.
2006-06-22 16:47:10 +02:00
László Molnár
83c5727698
merge
2006-06-22 16:17:09 +02:00
László Molnár
80838ff1e9
watcom/le: lzma seems to work
2006-06-22 16:15:32 +02:00
Markus F.X.J. Oberhumer
29e8d072b7
Simplify C++ style in Linker.
2006-06-22 16:12:48 +02:00
Markus F.X.J. Oberhumer
d7592f01e1
Renamed method.
2006-06-22 16:00:03 +02:00
László Molnár
392f283d9e
added some comments
2006-06-22 15:54:25 +02:00
Markus F.X.J. Oberhumer
bcd738ebbb
Introduced Packer::patchDecompressorGetExtraStacksize().
2006-06-22 15:35:38 +02:00
László Molnár
8020c52c48
merge
2006-06-22 15:04:39 +02:00
László Molnár
3f566e541d
djgpp2: lzma seems to work
2006-06-22 15:00:15 +02:00
Markus F.X.J. Oberhumer
be4a631dc8
Bump version.
2006-06-22 14:50:09 +02:00
Markus F.X.J. Oberhumer
0bfdf908c1
Fixed typo.
2006-06-22 14:20:05 +02:00
Markus F.X.J. Oberhumer
6f2fc23f77
Added LZMA license information.
2006-06-22 14:11:58 +02:00
Markus F.X.J. Oberhumer
f3a47c7e70
Add more lzma_d.ash includes.
2006-06-22 14:07:23 +02:00
Markus F.X.J. Oberhumer
36349ffabb
Removed trailing whitespace.
2006-06-22 14:06:21 +02:00
John Reiser
b13f7366cf
freezeLoader() sooner in PackLinuxElf32x86::buildLinuxLoader()
2006-06-21 17:08:58 -07:00
John Reiser
9181bcd9a7
CT24ARM needs big+little endian versions
2006-06-21 13:57:12 -07:00
Markus F.X.J. Oberhumer
7dbc1d894b
Add default defines like -Dstub_i386_dos32_djgpp2=1 to nasm.
2006-06-21 21:31:20 +02:00
Markus F.X.J. Oberhumer
5720445d15
Use ebx for state pointer. Decrease local stack size.
2006-06-21 14:34:23 +02:00
Markus F.X.J. Oberhumer
a90027521d
Prepare Makefile for integrating lua-5.1.1 into upx.
2006-06-20 15:35:23 +02:00
Markus F.X.J. Oberhumer
e02d400bf6
Avoid djgpp2 link error.
2006-06-20 15:25:38 +02:00
Markus F.X.J. Oberhumer
efadb8fd31
More lzma stubs.
2006-06-19 23:19:34 +02:00
Markus F.X.J. Oberhumer
a19d06561b
Added amd64 implementations of lzma.
2006-06-19 22:33:18 +02:00
Markus F.X.J. Oberhumer
0b685d11c9
More lzma updates - win32/pe + lzma seems to work.
2006-06-19 22:08:06 +02:00
Markus F.X.J. Oberhumer
28f019d672
Merge.
2006-06-19 19:21:23 +02:00
Markus F.X.J. Oberhumer
bf5cbfffc2
Start major refactoring.
2006-06-19 19:20:50 +02:00
László Molnár
fe021e7c51
w32/pe: added Virtualloc and VirtualFree to the import list
2006-06-19 15:05:28 +02:00
Markus F.X.J. Oberhumer
c42fb54bc6
Assorted cleanups.
2006-06-17 18:54:11 +02:00
Markus F.X.J. Oberhumer
9382b68781
Fix srcdir for VPATH build.
2006-06-16 20:08:21 +02:00
Markus F.X.J. Oberhumer
178198a417
Merge.
2006-06-16 17:52:50 +02:00
John Reiser
7068e90771
Merge
2006-06-16 06:53:56 -07:00
Markus F.X.J. Oberhumer
1c762f23d0
Simplify stub/Makefile.
2006-06-16 15:51:59 +02:00
John Reiser
fd2b9a6e21
filter 0x51 (ARM call trick, big-endian at compress time)
2006-06-16 06:49:37 -07:00
Markus F.X.J. Oberhumer
db43910288
Enter 2006.
2006-06-16 15:17:29 +02:00
Markus F.X.J. Oberhumer
f248c0460e
Use -mcpu=405 for powerpc stubs. Also run sstrip on powerpc-linux.elf-fold.
2006-06-16 14:36:13 +02:00
Markus F.X.J. Oberhumer
b8e3c0ceb4
Allow ~/bin/bin-upx in addition to ~/local/bin/bin-upx.
2006-06-16 14:11:11 +02:00
Markus F.X.J. Oberhumer
b5053d889e
Updated toplevel Makefile.
2006-06-16 14:09:22 +02:00
Markus F.X.J. Oberhumer
12ba7776b3
Comment out unused upx_crc32().
2006-06-16 14:08:56 +02:00
Markus F.X.J. Oberhumer
7817e88d03
Updated stub/Makefile.
2006-06-16 13:26:36 +02:00
Markus F.X.J. Oberhumer
8dec65853d
Fixed another bad merge issue.
2006-06-16 12:34:37 +02:00
Markus F.X.J. Oberhumer
88e3cb3be1
Stub: remove files again which seem to have been brought back by some merge.
2006-06-16 12:31:14 +02:00
John Reiser
fa702b48e3
unify PackLinuxElf32arm...::pack1()
2006-06-15 15:41:00 -07:00
John Reiser
299dcf6686
Merge
2006-06-15 12:21:01 -07:00
Markus F.X.J. Oberhumer
27f9ae5bbb
Small cleanups.
2006-06-15 19:59:30 +02:00
Markus F.X.J. Oberhumer
9cb3a853f1
Added option --MMD= to gpp_inc.py for automated dependencies.
2006-06-15 19:03:18 +02:00
Markus F.X.J. Oberhumer
95c8ef4148
Added a number of convenience Makefiles.
2006-06-15 18:07:23 +02:00
Markus F.X.J. Oberhumer
a41bb52014
Updated comments.
2006-06-15 18:03:24 +02:00
Markus F.X.J. Oberhumer
914cd7221e
Updated.
2006-06-15 17:57:22 +02:00
Markus F.X.J. Oberhumer
2dfc0a58ab
Renamed src/stub/util/ to src/stub/tools/ .
2006-06-15 17:56:57 +02:00
Markus F.X.J. Oberhumer
0c9f3c638a
Explicitly list all required files for ~/local/bin/bin-upx/.
2006-06-15 17:52:30 +02:00
Markus F.X.J. Oberhumer
a966d6acf1
Mention GNU make 3.81.
2006-06-15 17:27:04 +02:00
Markus F.X.J. Oberhumer
1e0c38b5f9
Renamed i386-linux-sstrip to sstrip.
2006-06-15 08:41:33 +02:00
Markus F.X.J. Oberhumer
d3323d6550
Major refactoring of src/stub directory.
2006-06-15 08:17:50 +02:00
John Reiser
ebed0b9f20
allow brev() in-place
2006-06-14 20:21:39 -07:00
John Reiser
f654a453dc
ARM_pack3() unifies big/little endian and HostPolicy
2006-06-14 16:06:50 -07:00
John Reiser
10decf94cc
fix delete[] file_image
2006-06-14 11:41:49 -07:00
John Reiser
96dd4817f1
unify PackLinuxElf32...::canPack(); also ARM buildLinuxLoader()
2006-06-14 11:33:16 -07:00
Markus F.X.J. Oberhumer
72906cdc6a
Removed all files from src/stub directory.
2006-06-14 17:37:59 +02:00
Markus F.X.J. Oberhumer
fba4375be0
Cleanups.
2006-06-14 17:06:33 +02:00
Markus F.X.J. Oberhumer
75120676ad
Introduced BEPolicy and LEPolicy.
2006-06-14 14:45:49 +02:00
Markus F.X.J. Oberhumer
7daf63fd3f
Merge.
2006-06-14 11:48:44 +02:00
Markus F.X.J. Oberhumer
014de25f6f
Disable lzma by default for now.
2006-06-14 11:42:24 +02:00
John Reiser
3fc6535012
un-debug Makefile
2006-06-13 19:02:21 -07:00
John Reiser
4fc0a32572
Do not brev() strings in stub for PackLinuxEl32armBe.
2006-06-13 18:55:26 -07:00
John Reiser
dcc704a357
debug PackLinuxElf32armBe. Also unify subroutines.
2006-06-13 15:51:29 -07:00
John Reiser
bd8acbde97
PackLinuxElf32armBe (Linux ARM big-endian)
2006-06-13 11:48:54 -07:00
John Reiser
112b10c19d
avoid randomness for progid in Elf
2006-06-13 08:53:41 -07:00
John Reiser
d89e561a85
PackLinuxElf32armLe, PackLinuxElf32armBe
2006-06-13 08:51:02 -07:00
John Reiser
49c1da79c8
PackLinuxElf32arm ==> PackLinuxElf32armLe
2006-06-13 08:27:14 -07:00
John Reiser
0a72f00175
Elf_BE32_*
2006-06-13 08:25:30 -07:00
John Reiser
1af5820db0
hack printf()
2006-06-13 08:24:38 -07:00
John Reiser
c117491549
arm-9tdmi-linux-gnu-gcc is gcc-3.4.5-glibc-2.3.6; old was gcc-3.4.1-glibc-2.3.3
2006-06-12 11:05:52 -07:00
Markus F.X.J. Oberhumer
d8748f4270
Introduced MemBuffer::getSizeForCompression().
2006-06-12 13:18:55 +02:00
Markus F.X.J. Oberhumer
c0ba6e13e4
Check for .hg directory when generating ChangeLog.
2006-06-11 13:05:57 +02:00
Markus F.X.J. Oberhumer
c34daf1a35
Make code -Wshadow warning free.
2006-06-11 12:25:19 +02:00
Markus F.X.J. Oberhumer
d461b53235
Renamed variable clen to c_len and ulen to u_len.
2006-06-11 12:13:37 +02:00
Markus F.X.J. Oberhumer
c3ee14eb67
Introduced upx_compress_result_t.
2006-06-11 12:09:25 +02:00
Markus F.X.J. Oberhumer
869fb8e327
Merge.
2006-06-11 00:01:56 +02:00
John Reiser
fbbc3024d6
Linux ARM cacheflush
2006-06-10 14:41:50 -07:00
Markus F.X.J. Oberhumer
f1ba0c0aa7
More lzma stuff.
2006-06-09 18:36:53 +02:00
Markus F.X.J. Oberhumer
54340ab4bf
Renamed environment variable UCLDIR to UPX_UCLDIR.
2006-06-09 15:22:42 +02:00
Markus F.X.J. Oberhumer
39732eee5e
Merge.
2006-06-09 09:30:42 +02:00
Markus F.X.J. Oberhumer
a9e4526a6d
Rearranged compression interface.
2006-06-09 09:28:32 +02:00
John Reiser
57a6d2abf9
Merge
2006-06-08 20:51:59 -07:00
John Reiser
d6246941ac
fix f_unfilter 0x50
2006-06-08 20:48:43 -07:00
László Molnár
2eb91f9b91
do not assume osection[0].rawdataptr > 0 during decompression
2006-06-08 16:52:54 +02:00
Markus F.X.J. Oberhumer
34ae413607
Initial lzma support.
2006-06-07 04:42:15 +02:00
Markus F.X.J. Oberhumer
ee9f8c184b
Small updates.
2006-06-06 19:07:38 +02:00
Markus F.X.J. Oberhumer
7a84afcbdb
Sort .hgtags.
2006-06-06 17:42:43 +02:00
Markus F.X.J. Oberhumer
b8a16ea99d
Merge.
2006-06-06 17:38:39 +02:00
Markus F.X.J. Oberhumer
095466d5c7
Added tag RELEASE_201 for changeset a916a2fe22de45167d25abcb40008315f415221c
2006-06-06 17:36:52 +02:00
Markus F.X.J. Oberhumer
89cfa22c3f
Final cleanups for 2.01.
2006-06-06 17:36:34 +02:00
John Reiser
1f18050930
elf32arm escape hatch: avoid Elf32_Ehdr if possible
2006-06-02 08:51:02 -07:00
John Reiser
537b78d564
fix elf32arm unmapping hatch
2006-06-01 22:48:52 -07:00
John Reiser
717fd57ce1
remember b_info for Elf headers; also: escape hatch
2006-06-01 12:00:05 -07:00
John Reiser
3fb7786868
[re-]comment-out debugging 'int3'
2006-06-01 11:12:30 -07:00
John Reiser
17ecfc9765
new class PackLinuxElf32arm : PackLinuxElf32Le;
...
Unify some functions in leaf classes by moving to parent class.
2006-06-01 06:37:44 -07:00
John Reiser
5326260a76
new elf32arm; small effects in elf86, linux.hh
2006-06-01 06:32:33 -07:00
John Reiser
e7522f4bdf
branch merge
2006-05-24 13:59:43 -07:00
John Reiser
504deeff42
ET_DYN cannot be old format for decompression
2006-05-24 13:15:39 -07:00
Markus F.X.J. Oberhumer
b7785b64cf
Small cleanups to keep p_armpe & p_w32pe in sync.
2006-05-24 19:21:26 +02:00
László Molnár
f914cb6858
pe: added support for empty resource section
2006-05-24 17:14:09 +02:00
John Reiser
91051d2521
Try to merge with mainline.
2006-05-23 17:52:05 -07:00
John Reiser
51536a7acd
decompression PackLinuxElf32x86.ET_DYN
2006-05-23 17:42:35 -07:00
Markus F.X.J. Oberhumer
263ccab6e3
Updated NEWS for --brute bugfix.
2006-05-23 13:25:19 +02:00
John Reiser
9f87755dcb
Note fix to --force-execve for PaX, grSecurity, strict SELinux.
2006-05-22 15:15:21 -07:00
John Reiser
60b4cca5e5
use powerpc-750-linux-gnu/gcc-3.4.3.20050210-glibc-2.2.5
2006-05-22 13:14:54 -07:00
John Reiser
d2718e99a4
Change class PackLinuxI386elf : public PackLinuxI386
...
into class PackLinuxElf32x86 : public PackLinuxElf32Le : public PackLinuxElf32
which makes the code for compressing ELF (for direct-to-memory decompression)
cleaner because ELF has some of the class tree to itself.
This assumes PROT_EXEC|PROT_WRITE ought to work.
This is checked at runtime, and if it fails then
give a message on stderr and exit(127).
Modify --force-execve so that runtime avoids PROT_EXEC|PROT_WRITE.
Then executables compressed with --force-execve will run under
PaX, grSecurity, and strict SELinux.
2006-05-21 13:58:24 -07:00
John Reiser
69a00c0ab3
*BSD requires -1==fd for MAP_ANONYMOUS
...
stub/l_lx_exec.c stub/l_lx_sh.c stub/l_lx_sh86.asm
2006-05-21 13:45:57 -07:00
Markus F.X.J. Oberhumer
3272d23917
Renamed variable hdr_clen to hdr_c_len.
2006-05-20 13:44:36 +02:00
Markus F.X.J. Oberhumer
7f0545cae7
Check result of hdr compression.
2006-05-20 13:37:34 +02:00
Markus F.X.J. Oberhumer
68f35deb86
Fixed a rare boundary problem in Packer::compressWithFilters().
...
The comparision if an update might be possible later was using
"<" instead of "<=" which resulted in missing calls to
findOverlapOverhead() and buildLoader().
Also, the comparision had not been updated for the newly added
hdr_clen fields.
This fixes sf.net bug #1477825 .
2006-05-20 13:29:01 +02:00
Markus F.X.J. Oberhumer
c4f4035072
Updated NEWS.
2006-05-18 19:01:03 +02:00
László Molnár
a7d8845952
mention --keep-resource in NEWS and help.cpp
2006-05-18 15:54:35 +02:00
Markus F.X.J. Oberhumer
a3378393b0
Removed scripts/.
2006-05-18 15:35:35 +02:00
László Molnár
3dfe0ad478
pe: fined grain control over resource compression
2006-05-18 15:20:37 +02:00
László Molnár
9a3b7a4f3f
arm/pe: really fix the memory leak
2006-05-18 15:20:11 +02:00
László Molnár
78579b1103
pe: do not crash on out of bounds bogus relocation records
2006-05-18 15:19:55 +02:00
László Molnár
7d50344512
pe: fixed a memory leak in the resource handling code
2006-05-18 15:19:13 +02:00
László Molnár
7a00c12065
arm/pe: minor cleanup in the thumb mode stub
2006-05-18 15:18:50 +02:00
László Molnár
af71e67681
arm/pe: saved 4 bytes in the arm mode stub
2006-05-18 15:18:36 +02:00
László Molnár
b3e20fc324
arm/pe: no need to try to precompute the size of relocations
2006-05-18 15:18:13 +02:00
László Molnár
bd1014abb6
dos/exe: saved some bytes in device driver mode
2006-05-18 15:17:53 +02:00
László Molnár
7f76664a5d
Merged with mainline
2006-05-18 13:10:15 +02:00
Markus F.X.J. Oberhumer
0a5a80b05d
Updated .hgignore.
2006-05-18 10:48:06 +02:00
Markus F.X.J. Oberhumer
2d63da0660
Support automatic ChangeLog generation.
2006-05-18 10:16:59 +02:00
Markus F.X.J. Oberhumer
8387527d2e
Updated .hgignore.
2006-05-18 09:37:18 +02:00
Markus F.X.J. Oberhumer
5d03ba7d63
Added .hgignore.
2006-05-18 09:08:38 +02:00
Markus F.X.J. Oberhumer
0ece50c122
Removed .cvsignore and .gitignore files.
2006-05-18 09:02:00 +02:00
Markus F.X.J. Oberhumer
f2ac297252
Updated tags.
2006-05-18 08:27:19 +02:00
László Molnár
0ca8ae17d4
updated my email address
2006-05-17 21:05:46 +02:00
convert-repo
88ca87cf9e
update tags
2006-05-11 10:41:33 +00:00
László Molnár
0d69d228e4
arm/pe: no need to allocate extra memory in the import table
...
committer: ml1050 <ml1050> 1147090379 +0000
2006-05-08 12:12:59 +00:00
Markus F.X.J. Oberhumer
a3afe95306
Updated NEWS.
...
committer: mfx <mfx> 1147081195 +0000
2006-05-08 09:39:55 +00:00
Markus F.X.J. Oberhumer
9fb4af8658
Updated Makefile.
...
committer: mfx <mfx> 1147081156 +0000
2006-05-08 09:39:16 +00:00
László Molnár
9bb6ba9311
dos/exe: device driver support added (thanks Michael Devore)
...
committer: ml1050 <ml1050> 1147078121 +0000
2006-05-08 08:48:41 +00:00
Markus F.X.J. Oberhumer
faa42ba341
Updated the master Makefile
...
to be more friendly to people without the special stub build tools.
committer: mfx <mfx> 1146764116 +0000
2006-05-04 17:35:16 +00:00
László Molnár
596827a912
remove obsolete files: l_armpe.asm l_armpe.h l_armpe_c.c l_armpe_s.S
...
committer: ml1050 <ml1050> 1146763209 +0000
2006-05-04 17:20:09 +00:00
László Molnár
89b4292445
saved 2 bytes
...
committer: ml1050 <ml1050> 1146763076 +0000
2006-05-04 17:17:56 +00:00
László Molnár
dd88737414
it works on wince now (only with dlls)
...
committer: ml1050 <ml1050> 1146763013 +0000
2006-05-04 17:16:53 +00:00
László Molnár
5456cfc304
arm/pe: use the new linker friendly stubs
...
two linkers: one for arm mode, one for thumb mode
the import address table is moved to the stubs area of compressed files
changed the alignment of some header fields
the command line option "--8086" can be used to force thumb mode on
committer: ml1050 <ml1050> 1146647520 +0000
2006-05-03 09:12:00 +00:00
László Molnár
1e66096ea7
arm/pe stubs: the import address table is moved to the stub
...
committer: ml1050 <ml1050> 1146646915 +0000
2006-05-03 09:01:55 +00:00
John Reiser
2b6ae3908c
/usr/bin/dyld can be a "fat binary" [how stupid!]
...
m_mac_mach32.c fold_machppc32.S fold_machppc32.h
committer: jreiser <jreiser> 1146434013 +0000
2006-04-30 21:53:33 +00:00
László Molnár
1924612479
a small fix for the thumb stub
...
committer: ml1050 <ml1050> 1146224685 +0000
2006-04-28 11:44:45 +00:00
László Molnár
2af5bdeaab
added some debugging code
...
committer: ml1050 <ml1050> 1146154452 +0000
2006-04-27 16:14:12 +00:00
László Molnár
b28565b38d
new files: l_armpea.h l_armpet.h
...
committer: ml1050 <ml1050> 1146154411 +0000
2006-04-27 16:13:31 +00:00
László Molnár
fec602362b
added new virtual function createLinker()
...
committer: ml1050 <ml1050> 1146153290 +0000
2006-04-27 15:54:50 +00:00
László Molnár
6753c5f45a
trying to implement the user space loader on native wince
...
committer: ml1050 <ml1050> 1146152386 +0000
2006-04-27 15:39:46 +00:00
Markus F.X.J. Oberhumer
2f3c108d42
Next version will be 2.01.
...
committer: mfx <mfx> 1146140843 +0000
2006-04-27 12:27:23 +00:00
Markus F.X.J. Oberhumer
ce6d99bdb4
More README updates.
...
committer: mfx <mfx> 1146086335 +0000
2006-04-26 21:18:55 +00:00
Markus F.X.J. Oberhumer
86d4125893
Updates.
...
committer: mfx <mfx> 1146086189 +0000
2006-04-26 21:16:29 +00:00
Markus F.X.J. Oberhumer
3a18f00379
Prepared 2.00 release notes.
...
committer: mfx <mfx> 1146085621 +0000
2006-04-26 21:07:01 +00:00
Markus F.X.J. Oberhumer
e6274904a7
Rebuilt using i386-linux-ld-2.16.1 and i386-linux-objcopy-2.16.1.
...
committer: mfx <mfx> 1146079399 +0000
2006-04-26 19:23:19 +00:00
Markus F.X.J. Oberhumer
3677395444
Add version suffix to the binutils we use. Prefix all linux/386 tools
...
with i386-linux-.
committer: mfx <mfx> 1146079325 +0000
2006-04-26 19:22:05 +00:00
László Molnár
22ba35b3b5
new arm/pe assembly with UPX linker support
...
committer: ml1050 <ml1050> 1145955479 +0000
2006-04-25 08:57:59 +00:00
Markus F.X.J. Oberhumer
9c1ab9979b
Split "$Id" strings so that CVS does not interfere. Explicitlty
...
use ".p2align" and ".balign" instead of ".align".
committer: mfx <mfx> 1145864788 +0000
2006-04-24 07:46:28 +00:00
John Reiser
eaa463e1c9
Insert copyright notice (equivalent to ident_s.ash) into stub by hand
...
because buildLoader is not fully working yet
l_lx_elf64amd.S l_lx_elfppc32.S l_mac_ppc32.S
committer: jreiser <jreiser> 1145825498 +0000
2006-04-23 20:51:38 +00:00
John Reiser
6984be48c3
build sync: compile using crosstool gcc-3.4.3.20050507-glibc-2.3.5
...
committer: jreiser <jreiser> 1145820281 +0000
2006-04-23 19:24:41 +00:00
John Reiser
b739bd3d79
Work better with SELinux. We still require allow_execmem.
...
p_lx_elf.cpp
stub/fold_elfppc32.h
stub/l_lx_elfppc32.h
stub/l_lx_elfppc32.S
stub/m_lx_elfppc32.c
committer: jreiser <jreiser> 1145666524 +0000
2006-04-22 00:42:04 +00:00
John Reiser
23f3e4396c
For elf64and and elfppc32: -fno-exceptions -fno-asynchronous-unwind-tables
...
committer: jreiser <jreiser> 1145666377 +0000
2006-04-22 00:39:37 +00:00
John Reiser
c264750924
Adapt better to SELinux. We still need allow_execmem.
...
p_lx_elf.cpp
stub/a_lx_elf64.c
stub/l_lx_elf64amd.h
stub/l_lx_elf64amd.lds
stub/l_lx_elf64amd.S
stub/fold_elf64amd.h
committer: jreiser <jreiser> 1145657332 +0000
2006-04-21 22:08:52 +00:00
John Reiser
c155f0a5d5
Better fit with SELinux. Now requires only execmem, which Fedora Core 5
...
enables as default for non-confined [ordinary] executables.
l_lx_elf.c
l_lx_elf86.asm
l_lx_elf86.h
l_lx_elf86.lds
fold_elf86.asm
fold_elf86.h
committer: jreiser <jreiser> 1145634453 +0000
2006-04-21 15:47:33 +00:00
László Molnár
76734f086d
added an arm/linux based loader/tester for arm/pe files
...
committer: ml1050 <ml1050> 1145605029 +0000
2006-04-21 07:37:09 +00:00
Markus F.X.J. Oberhumer
4f2d1172dd
Added a note about --force-execve. Converted quoting from using
...
backticks to single-quotes.
committer: mfx <mfx> 1145444708 +0000
2006-04-19 11:05:08 +00:00
Markus F.X.J. Oberhumer
75caf4e297
Fix spelling in NEWS.
...
committer: mfx <mfx> 1145436378 +0000
2006-04-19 08:46:18 +00:00
Markus F.X.J. Oberhumer
509ab8261f
Avoid code bloat in the official builds.
...
committer: mfx <mfx> 1145436321 +0000
2006-04-19 08:45:21 +00:00
Markus F.X.J. Oberhumer
1e05b40d4f
Whitespace changes.
...
committer: mfx <mfx> 1145436164 +0000
2006-04-19 08:42:44 +00:00
Markus F.X.J. Oberhumer
451390f835
Updated NEWS.
...
committer: mfx <mfx> 1145435924 +0000
2006-04-19 08:38:44 +00:00
John Reiser
58cce9d2f8
Give message on stderr when SELinux enforcing mode inhibits execution.
...
l_lx_elf.c fold_elf86.asm fold_elf86.h
committer: jreiser <jreiser> 1145393418 +0000
2006-04-18 20:50:18 +00:00
László Molnár
2eb6e3b0ea
arm/pe & w32/pe: disable filters for files with broken headers
...
committer: ml1050 <ml1050> 1145356307 +0000
2006-04-18 10:31:47 +00:00
John Reiser
fb1181ed26
Allow executables >=3MB on elf64amd; -r1.69 on 2005-11-12 forgot to remove check.
...
committer: jreiser <jreiser> 1145139994 +0000
2006-04-15 22:26:34 +00:00
Markus F.X.J. Oberhumer
6d5e1d529d
Updated NEWS.
...
committer: mfx <mfx> 1144968512 +0000
2006-04-13 22:48:32 +00:00
John Reiser
0e0ca08924
Propagate changes from linux.hh.
...
fold_elf86.h fold_pti86.h fold_sh86.h
committer: jreiser <jreiser> 1144967510 +0000
2006-04-13 22:31:50 +00:00
John Reiser
5d948a67a8
Propagate changes from linux.hh.
...
Also adjust calling segquence of upx_main() to shave a few bytes.
l_lx_exec.c fold_exec86.asm fold_exec86.h
committer: jreiser <jreiser> 1144967447 +0000
2006-04-13 22:30:47 +00:00
John Reiser
6a4db2ecab
Linux syscalls can clobber any input register, thanks to gcc and
...
the lack of a Linux kernel ABI.
linux.hh
committer: jreiser <jreiser> 1144967342 +0000
2006-04-13 22:29:02 +00:00
Markus F.X.J. Oberhumer
f700273624
Really bump the release date.
...
committer: mfx <mfx> 1144944628 +0000
2006-04-13 16:10:28 +00:00
Markus F.X.J. Oberhumer
0c198e0ccc
Set tentative release date.
...
committer: mfx <mfx> 1144944070 +0000
2006-04-13 16:01:10 +00:00
Markus F.X.J. Oberhumer
71ffbbc420
Prepared 1.96 release.
...
committer: mfx <mfx> 1144943500 +0000
2006-04-13 15:51:40 +00:00
Markus F.X.J. Oberhumer
4fd09b889d
Updated .cvsignore.
...
committer: mfx <mfx> 1144943334 +0000
2006-04-13 15:48:54 +00:00
László Molnár
4cb2a3eebe
show image size change in info mode
...
committer: ml1050 <ml1050> 1144941392 +0000
2006-04-13 15:16:32 +00:00
László Molnár
c25186b1f6
minor documentation updates
...
committer: ml1050 <ml1050> 1144941274 +0000
2006-04-13 15:14:34 +00:00
László Molnár
779033d0bc
added filter (id: 0x50) support to the stub
...
the data cache is written back before the stub jumps to the uncompressed code
committer: ml1050 <ml1050> 1144931349 +0000
2006-04-13 12:29:09 +00:00
László Molnár
3e31560e7d
added a new filter for ARM 24-bit naive calltrick
...
committer: ml1050 <ml1050> 1144931022 +0000
2006-04-13 12:23:42 +00:00
László Molnár
d23d7e8775
removed unneeded entry point address check
...
committer: ml1050 <ml1050> 1144745835 +0000
2006-04-11 08:57:15 +00:00
László Molnár
f6fdf5cb7f
show image size change in info mode
...
committer: ml1050 <ml1050> 1144671675 +0000
2006-04-10 12:21:15 +00:00
Markus F.X.J. Oberhumer
1879ccd27d
Next version will be 2.00.
...
committer: mfx <mfx> 1144586292 +0000
2006-04-09 12:38:12 +00:00
Markus F.X.J. Oberhumer
08c0796719
Avoid warnings when building for m68k.
...
committer: mfx <mfx> 1144523702 +0000
2006-04-08 19:15:02 +00:00
Markus F.X.J. Oberhumer
edc7994ce5
Prepared 1.95 release.
...
committer: mfx <mfx> 1144522884 +0000
2006-04-08 19:01:24 +00:00
Markus F.X.J. Oberhumer
bcfcfbd064
Added some more operators.
...
committer: mfx <mfx> 1144522838 +0000
2006-04-08 19:00:38 +00:00
Markus F.X.J. Oberhumer
9e79b3258d
Make const-correct to avoid warning.
...
committer: mfx <mfx> 1144522792 +0000
2006-04-08 18:59:52 +00:00
John Reiser
243873cd2d
Workaround inconsistent SIZEOF_HEADERS in stub/*.lds.
...
Test with --force-execve and --no-filter.
p_lx_exc.cpp p_lx_sh.cpp stub/l_lx_sh86.asm stub/l_lx_sh86.h
committer: jreiser <jreiser> 1144381286 +0000
2006-04-07 03:41:26 +00:00
Markus F.X.J. Oberhumer
c7b8a4b0c1
Updated.
...
committer: mfx <mfx> 1144320028 +0000
2006-04-06 10:40:28 +00:00
Markus F.X.J. Oberhumer
e39e0c7140
Added .gitignore files.
...
committer: mfx <mfx> 1144319429 +0000
2006-04-06 10:30:29 +00:00
Markus F.X.J. Oberhumer
d4a3f11dbb
Whitespace changes.
...
committer: mfx <mfx> 1144318755 +0000
2006-04-06 10:19:15 +00:00
Markus F.X.J. Oberhumer
0962f266b3
Whitespace changes.
...
committer: mfx <mfx> 1144314053 +0000
2006-04-06 09:00:53 +00:00
Markus F.X.J. Oberhumer
69e4d3fdad
Bumped tentative release date.
...
committer: mfx <mfx> 1144313563 +0000
2006-04-06 08:52:43 +00:00
Markus F.X.J. Oberhumer
c0908f463a
Added files to "clean" target.
...
committer: mfx <mfx> 1144313493 +0000
2006-04-06 08:51:33 +00:00
Markus F.X.J. Oberhumer
b00a61a17b
Updated.
...
committer: mfx <mfx> 1144313468 +0000
2006-04-06 08:51:08 +00:00
László Molnár
553c2f886a
arm/pe: thumb mode dll support added
...
committer: ml1050 <ml1050> 1144312217 +0000
2006-04-06 08:30:17 +00:00
László Molnár
4fd9c5772a
arm/pe:
...
v4 ARM mode stub support with assembly decompressor by John
dll support for v4 ARM mode
unpacking support
committer: ml1050 <ml1050> 1144249762 +0000
2006-04-05 15:09:22 +00:00
Markus F.X.J. Oberhumer
04e0e06d85
Whitespace changes.
...
committer: mfx <mfx> 1144235344 +0000
2006-04-05 11:09:04 +00:00
Markus F.X.J. Oberhumer
4d7829d72b
New ACC version.
...
committer: mfx <mfx> 1144235271 +0000
2006-04-05 11:07:51 +00:00
John Reiser
6b751aac57
Fix return from THUMB to ARM mode on ARMv4T. Document r6 unused.
...
committer: jreiser <jreiser> 1143650112 +0000
2006-03-29 16:35:12 +00:00
László Molnár
813349fd23
arm/pe: support for nrv2b, support for cpu = 0x1c2, certificate info now removed
...
committer: ml1050 <ml1050> 1143614738 +0000
2006-03-29 06:45:38 +00:00
John Reiser
16a2744782
find_SEGMENT_gap() like find_LOAD_gap(). Use it to avoid checksum trouble.
...
p_mach.cpp p_mach.h
committer: jreiser <jreiser> 1143576015 +0000
2006-03-28 20:00:15 +00:00
John Reiser
7b6870db22
Fix bug: bad test for reaching back too far in SAFE mode. (Thank you, Laszlo.)
...
committer: jreiser <jreiser> 1143564998 +0000
2006-03-28 16:56:38 +00:00
Markus F.X.J. Oberhumer
3e38e7d52c
Small cleanups.
...
committer: mfx <mfx> 1143474969 +0000
2006-03-27 15:56:09 +00:00
László Molnár
8142d3474d
get_le32 reimplemented in assembly
...
committer: ml1050 <ml1050> 1143473260 +0000
2006-03-27 15:27:40 +00:00
Markus F.X.J. Oberhumer
8773649de6
Make code warning-free.
...
committer: mfx <mfx> 1143464312 +0000
2006-03-27 12:58:32 +00:00
Markus F.X.J. Oberhumer
c117920ff9
Add -Wall -Werror to cross-compiler flags.
...
committer: mfx <mfx> 1143463128 +0000
2006-03-27 12:38:48 +00:00
László Molnár
c8dd2a3eb8
arm/pe: use -march=armv4t instead of v5
...
committer: ml1050 <ml1050> 1143462067 +0000
2006-03-27 12:21:07 +00:00
Markus F.X.J. Oberhumer
90b1817e92
Undef PAGE_{MASK,SIZE} in conf.h.
...
committer: mfx <mfx> 1143454717 +0000
2006-03-27 10:18:37 +00:00
Markus F.X.J. Oberhumer
d6c3ff5997
Cleanups.
...
committer: mfx <mfx> 1143454663 +0000
2006-03-27 10:17:43 +00:00
László Molnár
984ec25132
arm/pe: the assembly thumb mode decompressor is used in the stub
...
arm/pe: the C part of the stub is compiled as thumb
committer: ml1050 <ml1050> 1143449862 +0000
2006-03-27 08:57:42 +00:00
John Reiser
a7bff34784
Fix THUMB mode return to ARM mode on ARMv4T. Spend 18 bytes to inline
...
most of get1b via conditional subroutine call idiom.
committer: jreiser <jreiser> 1143302120 +0000
2006-03-25 15:55:20 +00:00
John Reiser
a6e7afbc91
Fix bug: first 'add' instead of 'adc' at get1_n2b. (Thank you, Laszlo.)
...
committer: jreiser <jreiser> 1143228535 +0000
2006-03-24 19:28:55 +00:00
John Reiser
33f1d63b64
Fix bug: first 'add' at get1_n2e instead of 'adc'.
...
Also conditionally assemble SAFE mode for buffer checking (default off).
committer: jreiser <jreiser> 1143228361 +0000
2006-03-24 19:26:01 +00:00
John Reiser
f95e171e11
Workaround linux-2.6.14 binfmt_elf.c: SIGKILL if (0==.p_memsz) on a page boundary.
...
p_lx_elf.cpp p_lx_exc.cpp
committer: jreiser <jreiser> 1143057770 +0000
2006-03-22 20:02:50 +00:00
Markus F.X.J. Oberhumer
c82b50b212
Bumped tentative release date.
...
committer: mfx <mfx> 1142610024 +0000
2006-03-17 15:40:24 +00:00
Markus F.X.J. Oberhumer
2b402b77f1
Updated short-list of supported executable formats.
...
committer: mfx <mfx> 1142609852 +0000
2006-03-17 15:37:32 +00:00
Markus F.X.J. Oberhumer
adcb551020
Increase alignment to 16.
...
committer: mfx <mfx> 1142608657 +0000
2006-03-17 15:17:37 +00:00
Markus F.X.J. Oberhumer
2680aabe06
Removed bogus __attribute_packed from struct udll.
...
committer: mfx <mfx> 1142607440 +0000
2006-03-17 14:57:20 +00:00
Markus F.X.J. Oberhumer
d5c0533b74
Allow the PE sections to cross a page boundary.
...
committer: mfx <mfx> 1142603590 +0000
2006-03-17 13:53:10 +00:00
Markus F.X.J. Oberhumer
609307668b
Use $(MAKEFILE_LIST) for dependencies.
...
committer: mfx <mfx> 1142527291 +0000
2006-03-16 16:41:31 +00:00
Markus F.X.J. Oberhumer
cdaf36572a
Use UPX_VERSION_DATE_ISO from src/version.h.
...
committer: mfx <mfx> 1142527194 +0000
2006-03-16 16:39:54 +00:00
Markus F.X.J. Oberhumer
033c8d5d51
Updated.
...
committer: mfx <mfx> 1142523608 +0000
2006-03-16 15:40:08 +00:00
Markus F.X.J. Oberhumer
6216ec1d6a
Mention John as a main author.
...
committer: mfx <mfx> 1142522272 +0000
2006-03-16 15:17:52 +00:00
László Molnár
6c9c67f6c5
DEP hack: it seems we need to patch the flags of section "UPX1" too
...
committer: ml1050 <ml1050> 1142508181 +0000
2006-03-16 11:23:01 +00:00
Markus F.X.J. Oberhumer
5bd32b5521
Commented out "int3" debugging leftovers.
...
committer: mfx <mfx> 1142312678 +0000
2006-03-14 05:04:38 +00:00
Markus F.X.J. Oberhumer
549336f75b
Use boolean instead of bitwise logic.
...
committer: mfx <mfx> 1142311485 +0000
2006-03-14 04:44:45 +00:00
Markus F.X.J. Oberhumer
f0e75f30b3
Fixed typo in comment.
...
committer: mfx <mfx> 1142310885 +0000
2006-03-14 04:34:45 +00:00
Markus F.X.J. Oberhumer
144c09f175
Rebuilt i386-linux stubs by gcc-3.4.6.
...
committer: mfx <mfx> 1142310823 +0000
2006-03-14 04:33:43 +00:00
Markus F.X.J. Oberhumer
ee50c0f97c
Corrected app_*.pl dependency.
...
committer: mfx <mfx> 1142309988 +0000
2006-03-14 04:19:48 +00:00
John Reiser
ade921bf02
%.asy and %.asx depend onf $(APP_I386)
...
committer: jreiser <jreiser> 1142306625 +0000
2006-03-14 03:23:45 +00:00
John Reiser
676cacff04
gcc-4.1.0 vs. mmap()
...
linux.hh
fold_elf86.asm l_lx_elf.c
fold_exec86.asm l_lx_exec.c
fold_pti86.asm l_lx_pti.c
fold_sh86.asm l_lx_sh.c l_lx_sh86.asm
l_lx_sep.c
committer: jreiser <jreiser> 1142305438 +0000
2006-03-14 03:03:58 +00:00
Markus F.X.J. Oberhumer
a3097d5e25
Added a dependency.
...
committer: mfx <mfx> 1142303569 +0000
2006-03-14 02:32:49 +00:00
Markus F.X.J. Oberhumer
fd78148558
Fixed typo in disabled code.
...
committer: mfx <mfx> 1142302679 +0000
2006-03-14 02:17:59 +00:00
Markus F.X.J. Oberhumer
a4d79d7375
Small cosmetic changes.
...
committer: mfx <mfx> 1142302586 +0000
2006-03-14 02:16:26 +00:00
Markus F.X.J. Oberhumer
df04e8183d
Filter parameters should be called "ft" instead of "fp".
...
committer: mfx <mfx> 1142301730 +0000
2006-03-14 02:02:10 +00:00
Markus F.X.J. Oberhumer
c43c484a62
Re-synced both files a little bit.
...
committer: mfx <mfx> 1142301586 +0000
2006-03-14 01:59:46 +00:00
Markus F.X.J. Oberhumer
0608c35669
Added some more OBJSTRIP. Small cleanups.
...
committer: mfx <mfx> 1142298790 +0000
2006-03-14 01:13:10 +00:00
Markus F.X.J. Oberhumer
7dd4d06e26
Added some more calls to $(OBJSTRIP_LINUX_I386) after $(NASM) invocations.
...
committer: mfx <mfx> 1142288478 +0000
2006-03-13 22:21:18 +00:00
John Reiser
1ee0310b86
silence complaint from ld "cannot find entry symbol _start; defaulting to 10000000"
...
committer: jreiser <jreiser> 1142285749 +0000
2006-03-13 21:35:49 +00:00
Markus F.X.J. Oberhumer
cc0a52038f
Rebuilt i386-linux stubs with gcc-4.1.0 for small size decrease.
...
committer: mfx <mfx> 1142248018 +0000
2006-03-13 11:06:58 +00:00
Markus F.X.J. Oberhumer
6aed1fe231
Updated.
...
committer: mfx <mfx> 1142247976 +0000
2006-03-13 11:06:16 +00:00
Markus F.X.J. Oberhumer
680608fe18
Portability fix.
...
committer: mfx <mfx> 1142247872 +0000
2006-03-13 11:04:32 +00:00
Markus F.X.J. Oberhumer
ec6acbc602
Small fix to make valid ANSI C again.
...
committer: mfx <mfx> 1142247837 +0000
2006-03-13 11:03:57 +00:00
John Reiser
cb7ee4c5d2
_syscall1nr() for _exit; [still wastes 4 bytes]
...
committer: jreiser <jreiser> 1142210712 +0000
2006-03-13 00:45:12 +00:00
Markus F.X.J. Oberhumer
88d5798f45
Bumped versions for starting 1.95 development.
...
committer: mfx <mfx> 1142090576 +0000
2006-03-11 15:22:56 +00:00
Markus F.X.J. Oberhumer
fcc22a0aa3
Added UPX_VERSION_DATE_ISO.
...
committer: mfx <mfx> 1142085195 +0000
2006-03-11 13:53:15 +00:00
Markus F.X.J. Oberhumer
aabefff298
Prepared for release 1.94.
...
committer: mfx <mfx> 1142081862 +0000
2006-03-11 12:57:42 +00:00
Markus F.X.J. Oberhumer
ed25c64e97
Updated.
...
committer: mfx <mfx> 1142081797 +0000
2006-03-11 12:56:37 +00:00
Markus F.X.J. Oberhumer
b7dc870c2d
Centered strings.
...
committer: mfx <mfx> 1142081776 +0000
2006-03-11 12:56:16 +00:00
Markus F.X.J. Oberhumer
9bea608843
Don't suppress errors with -qq.
...
committer: mfx <mfx> 1142081041 +0000
2006-03-11 12:44:01 +00:00
Markus F.X.J. Oberhumer
9db1732c36
Added a note that we should upgrade to gcc-4.1.0 on i386-linux.
...
committer: mfx <mfx> 1142074774 +0000
2006-03-11 10:59:34 +00:00
Markus F.X.J. Oberhumer
39f1a70174
Small update.
...
committer: mfx <mfx> 1142036155 +0000
2006-03-11 00:15:55 +00:00
Markus F.X.J. Oberhumer
1810440355
Added __attribute__((__sentinel__)) to Packer::addLoader(). This is
...
a new gcc-4.1 feature.
committer: mfx <mfx> 1142035833 +0000
2006-03-11 00:10:33 +00:00
Markus F.X.J. Oberhumer
37ac8f179e
New ACC version.
...
committer: mfx <mfx> 1142035385 +0000
2006-03-11 00:03:05 +00:00
Markus F.X.J. Oberhumer
626a09328f
Updated.
...
committer: mfx <mfx> 1141807336 +0000
2006-03-08 08:42:16 +00:00
Markus F.X.J. Oberhumer
8d489d0d77
New ACC version.
...
committer: mfx <mfx> 1141798968 +0000
2006-03-08 06:22:48 +00:00
Markus F.X.J. Oberhumer
776f3db0d7
Detabified.
...
committer: mfx <mfx> 1141795978 +0000
2006-03-08 05:32:58 +00:00
John Reiser
6046057b88
Commentary on SELinux and UPX.
...
committer: jreiser <jreiser> 1141686040 +0000
2006-03-06 23:00:40 +00:00
Markus F.X.J. Oberhumer
7e85d9e549
Updated.
...
committer: mfx <mfx> 1141679044 +0000
2006-03-06 21:04:04 +00:00
Markus F.X.J. Oberhumer
01c8a8b1c2
Disabled an expensive run-time assertion.
...
committer: mfx <mfx> 1141642878 +0000
2006-03-06 11:01:18 +00:00
Markus F.X.J. Oberhumer
c9bf6ac9ae
No need to preserve eax in clearstack.
...
committer: mfx <mfx> 1141642647 +0000
2006-03-06 10:57:27 +00:00
John Reiser
62e4d69be9
re-compile from changed m_lx_elfppc32.c
...
committer: jreiser <jreiser> 1141605710 +0000
2006-03-06 00:41:50 +00:00
John Reiser
62ac733b09
simplify and save a few bytes
...
committer: jreiser <jreiser> 1141488398 +0000
2006-03-04 16:06:38 +00:00
John Reiser
c3b3e1b1b9
MAP_DENYWRITE
...
committer: jreiser <jreiser> 1141484579 +0000
2006-03-04 15:02:59 +00:00
John Reiser
a791e96e00
Fix do_xmap() to work under SElinux. Also trim unneeded code.
...
committer: jreiser <jreiser> 1141413353 +0000
2006-03-03 19:15:53 +00:00
John Reiser
e87f5521c1
conditionally compile debugging printf
...
committer: jreiser <jreiser> 1141365595 +0000
2006-03-03 05:59:55 +00:00
John Reiser
366a708f3a
Generalize to more than 2 PT_LOAD using find_LOAD_gap; needed for linux/ElfAMD.
...
Also simplifies, and applies to both ::pack and ::unpack.
p_lx_elf.cpp p_lx_elf.h
committer: jreiser <jreiser> 1141348876 +0000
2006-03-03 01:21:16 +00:00
John Reiser
70ba662574
Avoid overwrite of obuf when hdr_buf and non-first method.
...
committer: jreiser <jreiser> 1141327368 +0000
2006-03-02 19:22:48 +00:00
John Reiser
b389abd99f
PackLinuxElf64amd::getCompressionMethods allows both nrv2b and nrv2e
...
committer: jreiser <jreiser> 1141326792 +0000
2006-03-02 19:13:12 +00:00
John Reiser
4aa2d14fe3
acknowledge unused results to avoid compiler warnings treated as errors
...
committer: jreiser <jreiser> 1141326721 +0000
2006-03-02 19:12:01 +00:00
John Reiser
af7de75ad4
Allow unfilter when verifyOverlappingDecompression, for convenience
...
in end-to-end checksum.
packer.h packer.cpp p_unix.cpp
committer: jreiser <jreiser> 1141252960 +0000
2006-03-01 22:42:40 +00:00
John Reiser
d461ebbda1
fix packExtent checksums and lengths (of uncompressed data) for 0!=hdr_ulen
...
committer: jreiser <jreiser> 1141241763 +0000
2006-03-01 19:36:03 +00:00
John Reiser
55ef94abcd
8-bit decompressors for ARM; minimize space aggressively
...
arm_nrv2b_d8.S arm_nrv2e_d8.S
committer: jreiser <jreiser> 1140993873 +0000
2006-02-26 22:44:33 +00:00
John Reiser
afaf489d99
save space aggressively
...
committer: jreiser <jreiser> 1140713717 +0000
2006-02-23 16:55:17 +00:00
John Reiser
20e4cbfd13
passes first tests! Only untested feature: large offset which forces
...
minimum match length to be >=3.
arm_nrv2b_d32.S arm_nrv2e_d32.S
committer: jreiser <jreiser> 1140677145 +0000
2006-02-23 06:45:45 +00:00
John Reiser
f3b8c9f34e
debugging
...
committer: jreiser <jreiser> 1140634679 +0000
2006-02-22 18:57:59 +00:00
John Reiser
45e8ff25a5
hand-tuned decompressors for 32-bit NRV on ARM
...
arm_nrv2b_d32.S arm_nrv2e_d32.S
committer: jreiser <jreiser> 1140535945 +0000
2006-02-21 15:32:25 +00:00
John Reiser
268e322e1c
Extra parameter for compressWithFilters and packExtent,
...
to fix 2-pass problem with --brute on linux/elf386.
Only one decompression method is allowed, chosen by
smallest output for .text; but Elf headers come first.
packer.cpp packer.h p_unix.cpp p_unix.h p_lx_elf.cpp
committer: jreiser <jreiser> 1140241030 +0000
2006-02-18 05:37:10 +00:00
Markus F.X.J. Oberhumer
d3bcba6a05
Removed "volatile" from global var "opt" - this was only needed
...
a long time ago to work around problems with ancient C++ compilers.
committer: mfx <mfx> 1140002094 +0000
2006-02-15 11:14:54 +00:00
Markus F.X.J. Oberhumer
cc4ef1944d
Make sure we only touch exactly one page. Update comments.
...
committer: mfx <mfx> 1139928961 +0000
2006-02-14 14:56:01 +00:00
Markus F.X.J. Oberhumer
5aa8486265
Prefer restoring the original protection flags.
...
committer: mfx <mfx> 1139928517 +0000
2006-02-14 14:48:37 +00:00
László Molnár
fd181673cd
a little more comments on the DEP hack stuff
...
committer: ml1050 <ml1050> 1139927444 +0000
2006-02-14 14:30:44 +00:00
László Molnár
62c9547c4e
added some comments on the DEP hack stuff
...
committer: ml1050 <ml1050> 1139918135 +0000
2006-02-14 11:55:35 +00:00
Markus F.X.J. Oberhumer
cdd117bfb9
Rearranged debug options.
...
committer: mfx <mfx> 1139916141 +0000
2006-02-14 11:22:21 +00:00
Markus F.X.J. Oberhumer
304ba57dad
Clear the dirty stack on win32/pe.
...
committer: mfx <mfx> 1139914965 +0000
2006-02-14 11:02:45 +00:00
Markus F.X.J. Oberhumer
69eaaa4177
Revert previous checkin.
...
committer: mfx <mfx> 1139914479 +0000
2006-02-14 10:54:39 +00:00
Markus F.X.J. Oberhumer
452ac52fcb
Added an overloaded addLoader() method.
...
committer: mfx <mfx> 1139913550 +0000
2006-02-14 10:39:10 +00:00
Markus F.X.J. Oberhumer
40cf489290
Avoid possibly clobbering edx.
...
committer: mfx <mfx> 1139881592 +0000
2006-02-14 01:46:32 +00:00
Markus F.X.J. Oberhumer
891d6be4a6
Removed options_t::win32_pe::strip_loadconf.
...
For compatibility reasons the option is still accepted (but
ignored) during commandline parsing.
committer: mfx <mfx> 1139866279 +0000
2006-02-13 21:31:19 +00:00
Markus F.X.J. Oberhumer
5d45ce5cf7
Removed an already fixed item.
...
committer: mfx <mfx> 1139864523 +0000
2006-02-13 21:02:03 +00:00
Markus F.X.J. Oberhumer
a0f2241f3a
Added comment.
...
committer: mfx <mfx> 1139862668 +0000
2006-02-13 20:31:08 +00:00
Markus F.X.J. Oberhumer
aa513bf7d3
Quick fix for the Win32 startup crash. Needs more testing.
...
committer: mfx <mfx> 1139861398 +0000
2006-02-13 20:09:58 +00:00
Markus F.X.J. Oberhumer
b2d65febc8
Small update.
...
committer: mfx <mfx> 1139843847 +0000
2006-02-13 15:17:27 +00:00
Markus F.X.J. Oberhumer
23a6d326e8
Bump tentative release date. Update READMEs.
...
committer: mfx <mfx> 1139840129 +0000
2006-02-13 14:15:29 +00:00
Markus F.X.J. Oberhumer
5b2f1b6d8b
Introduced UPX_VERSION_YEAR.
...
committer: mfx <mfx> 1139826163 +0000
2006-02-13 10:22:43 +00:00
Markus F.X.J. Oberhumer
b4e9ad031b
Break strings so that CVS does not try to expand keywords.
...
committer: mfx <mfx> 1139786765 +0000
2006-02-12 23:26:05 +00:00
Markus F.X.J. Oberhumer
8b7ebcf040
Enter 2006.
...
committer: mfx <mfx> 1139778883 +0000
2006-02-12 21:14:43 +00:00
Markus F.X.J. Oberhumer
af05296631
Made ps1/exe work again.
...
committer: mfx <mfx> 1139776798 +0000
2006-02-12 20:39:58 +00:00
Markus F.X.J. Oberhumer
29d693de2d
New ACC version.
...
committer: mfx <mfx> 1139772863 +0000
2006-02-12 19:34:23 +00:00
Markus F.X.J. Oberhumer
51ac5172f5
#undef PAGE_{MASK,SIZE} to fix build problems on some machines.
...
committer: mfx <mfx> 1139743226 +0000
2006-02-12 11:20:26 +00:00
Markus F.X.J. Oberhumer
24ce1ef5e7
Enter 2006.
...
committer: mfx <mfx> 1139742400 +0000
2006-02-12 11:06:40 +00:00
Markus F.X.J. Oberhumer
f6d1e269d1
Prepare for new release.
...
committer: mfx <mfx> 1139742224 +0000
2006-02-12 11:03:44 +00:00
Markus F.X.J. Oberhumer
62c2f5228d
Rebuilt stubs.
...
committer: mfx <mfx> 1139742130 +0000
2006-02-12 11:02:10 +00:00
Markus F.X.J. Oberhumer
9882d9683b
Updated.
...
committer: mfx <mfx> 1139741935 +0000
2006-02-12 10:58:55 +00:00
Markus F.X.J. Oberhumer
45ce89ee1f
Removed trailing whitespace.
...
committer: mfx <mfx> 1139741919 +0000
2006-02-12 10:58:39 +00:00
László Molnár
bfb9df1553
win32/pe: R6002 runtime errors worked around
...
committer: ml1050 <ml1050> 1139505685 +0000
2006-02-09 17:21:25 +00:00
László Molnár
a5f79204ce
set use_dep_hack to true
...
committer: ml1050 <ml1050> 1139404812 +0000
2006-02-08 13:20:12 +00:00
László Molnár
e322613d84
workaround added for a msvc runtime "protection"
...
committer: ml1050 <ml1050> 1139393823 +0000
2006-02-08 10:17:03 +00:00
Markus F.X.J. Oberhumer
fbb60f5191
Refactored a new mem_replace() function.
...
committer: mfx <mfx> 1138984802 +0000
2006-02-03 16:40:02 +00:00
Markus F.X.J. Oberhumer
899e7d2f39
Added internal debugging options '--fake-stub-version=X.XX' and
...
'--fake-stub-year=XXXX'.
These might prove useful for building up a test suite which is able to
check binary identity of compressed executables between UPX releases
where the implementation of a specific format has not changed.
committer: mfx <mfx> 1138960010 +0000
2006-02-03 09:46:50 +00:00
László Molnár
8e2aa07747
load config support for win32/pe dlls
...
committer: ml1050 <ml1050> 1138878465 +0000
2006-02-02 11:07:45 +00:00
Markus F.X.J. Oberhumer
a0d262cd76
New ACC version.
...
committer: mfx <mfx> 1138683583 +0000
2006-01-31 04:59:43 +00:00
Markus F.X.J. Oberhumer
b43a7edee4
Preliminary bump some version information.
...
committer: mfx <mfx> 1138080865 +0000
2006-01-24 05:34:25 +00:00
Markus F.X.J. Oberhumer
7760bbd77c
New ACC version.
...
committer: mfx <mfx> 1138080385 +0000
2006-01-24 05:26:25 +00:00
Markus F.X.J. Oberhumer
9c0f1b02a7
Small Makefile updates.
...
committer: mfx <mfx> 1138080320 +0000
2006-01-24 05:25:20 +00:00
Markus F.X.J. Oberhumer
4ecfff4d8d
Print a #define for the _SIZE. Enter 2006. Add John's name.
...
committer: mfx <mfx> 1138080110 +0000
2006-01-24 05:21:50 +00:00
László Molnár
ac03b89f38
docs updates for 1.94
...
committer: ml1050 <ml1050> 1137999714 +0000
2006-01-23 07:01:54 +00:00
László Molnár
620174aea9
copyright text added
...
committer: ml1050 <ml1050> 1137999649 +0000
2006-01-23 07:00:49 +00:00
Markus F.X.J. Oberhumer
ab50d28bc4
New ACC version.
...
committer: mfx <mfx> 1134926345 +0000
2005-12-18 17:19:05 +00:00
Markus F.X.J. Oberhumer
b5318602d1
Fixed compilation problem.
...
committer: mfx <mfx> 1134926052 +0000
2005-12-18 17:14:12 +00:00
John Reiser
bff2a63ea2
prefetching does not help length of match
...
l_lx_elf64amd.S amd_d_nrv2b.S amd_d_nrv2e.S
committer: jreiser <jreiser> 1132290120 +0000
2005-11-18 05:02:00 +00:00
László Molnár
aacfb8820e
better load_conf directory support. still needs some work.
...
committer: ml1050 <ml1050> 1132077577 +0000
2005-11-15 17:59:37 +00:00
John Reiser
98e8c031d0
generated header files
...
fold_elf64amd.h l_lx_elf64amd.h
committer: jreiser <jreiser> 1131994505 +0000
2005-11-14 18:55:05 +00:00
John Reiser
beb4319d1e
tune for better branch prediction by avoiding more than 3 in a 16-byte block
...
amd_d_nrv2b.S amd_d_nrv2e.S l_lx_elf64amd.S
committer: jreiser <jreiser> 1131994471 +0000
2005-11-14 18:54:31 +00:00
John Reiser
2558243c83
de-tabify; also speculate 1-byte loads to save a cycle or two
...
amd_d_nrv2b.S amd_d_nrv2e.S l_lx_elf64amd.S
committer: jreiser <jreiser> 1131943590 +0000
2005-11-14 04:46:30 +00:00
John Reiser
b670e8d1ac
tuning
...
amd_bxx.S amd_d_nrv2b.S amd_d_nrv2e.S l_lx_elf64amd.S
committer: jreiser <jreiser> 1131939243 +0000
2005-11-14 03:34:03 +00:00
John Reiser
68f8358f06
tune: avoid MOVSB for literals; inline default case of NEXTB macros
...
committer: jreiser <jreiser> 1131923823 +0000
2005-11-13 23:17:03 +00:00
John Reiser
db5a099097
CLD and documentation
...
amd_d_nrv2e.S l_lx_elf64amd.S fold_elf64amd.S
committer: jreiser <jreiser> 1131854052 +0000
2005-11-13 03:54:12 +00:00
John Reiser
ce33ffb62a
handle compressed executables larger than 3MB on Elf64amd
...
committer: jreiser <jreiser> 1131833508 +0000
2005-11-12 22:11:48 +00:00
John Reiser
59a2fb9cfd
recompile generated .h after source changes
...
fold_elf64amd.h l_lx_elf64amd.h
committer: jreiser <jreiser> 1131824699 +0000
2005-11-12 19:44:59 +00:00
John Reiser
75bba319de
tuning, and prepare for large executables (>3MB compressed)
...
p_lx_elf.cpp stub/a_lx_elf64.c stub/amd_d_nrv2e.S
stub/fold_elf64amd.S stub/l_lx_elf64amd.S
committer: jreiser <jreiser> 1131824655 +0000
2005-11-12 19:44:15 +00:00
John Reiser
f78e9261f3
Do initLoader() properly, instead of relying on the amount of stack space
...
that is in use when ::buildLinuxLoader is called.
committer: jreiser <jreiser> 1131597922 +0000
2005-11-10 04:45:22 +00:00
Markus F.X.J. Oberhumer
5f77562333
Cleanup.
...
committer: mfx <mfx> 1131596991 +0000
2005-11-10 04:29:51 +00:00
Markus F.X.J. Oberhumer
5c4f01a68d
New ACC version.
...
committer: mfx <mfx> 1131596966 +0000
2005-11-10 04:29:26 +00:00
Markus F.X.J. Oberhumer
35f6f998e6
Avoid warnings. Detabified.
...
committer: mfx <mfx> 1131593815 +0000
2005-11-10 03:36:55 +00:00
John Reiser
6737a3ae09
PackLinuxElf64amd
...
p_lx_elf.h p_lx_elf.cpp packmast.cpp
committer: jreiser <jreiser> 1131570778 +0000
2005-11-09 21:12:58 +00:00
John Reiser
09559bee8c
Elf64
...
p_unix.h p_elf.h
committer: jreiser <jreiser> 1131570530 +0000
2005-11-09 21:08:50 +00:00
John Reiser
f487ea27a8
UPX_F_LINUX_ELF64_AMD
...
committer: jreiser <jreiser> 1131568333 +0000
2005-11-09 20:32:13 +00:00
John Reiser
a3d95f239a
Generated .h header files for AMD x86_64
...
fold_elf64amd.h l_lx_elf64amd.h
committer: jreiser <jreiser> 1131566912 +0000
2005-11-09 20:08:32 +00:00
John Reiser
023c06e178
Support for 64-bit AMD x86_64
...
Makefile
Added Files:
a_lx_elf64.c amd_bxx.S amd_d_nrv2e.S amd_regs.h
fold_elf64amd.S l_lx_elf64amd.S l_lx_elf64amd.lds
committer: jreiser <jreiser> 1131566835 +0000
2005-11-09 20:07:15 +00:00
John Reiser
414a6c1c9e
Enhance to handle both Elf32 and Elf64, and little/big endian.
...
http://buildroot.uclibc.org/cgi-bin/viewcvs.cgi/trunk/buildroot/toolchain/sstrip/sstrip.c
Revision 11028 [Added Tue Aug 2 18:20:34 2005 PDT (3 months, 1 week ago) by mjn3]
committer: jreiser <jreiser> 1131566192 +0000
2005-11-09 19:56:32 +00:00
John Reiser
910e18fb22
b_method 5th argument to f_decompress
...
l_lx_exec.c l_lx_pti.c l_lx_sep.c l_lx_sh.c
committer: jreiser <jreiser> 1131565060 +0000
2005-11-09 19:37:40 +00:00
John Reiser
ac441fd1cf
definitions for Elf64_*
...
committer: jreiser <jreiser> 1131564732 +0000
2005-11-09 19:32:12 +00:00
John Reiser
0c328372b5
Allow __uClibc_main and __uClibc_start_main like __libc_start_main.
...
committer: jreiser <jreiser> 1127269046 +0000
2005-09-21 02:17:26 +00:00
Markus F.X.J. Oberhumer
55ef60a6d4
Rebuilt with gcc-3.4.4.
...
committer: mfx <mfx> 1127188101 +0000
2005-09-20 03:48:21 +00:00
Markus F.X.J. Oberhumer
c33584e683
Detabified.
...
committer: mfx <mfx> 1126929315 +0000
2005-09-17 03:55:15 +00:00
Markus F.X.J. Oberhumer
ee8c7453bd
Small updates.
...
committer: mfx <mfx> 1126927283 +0000
2005-09-17 03:21:23 +00:00
John Reiser
0330369603
remove debugging strut
...
l_lx_elf86.asm l_lx_elf86.h
committer: jreiser <jreiser> 1126892616 +0000
2005-09-16 17:43:36 +00:00
John Reiser
3f7b642c7d
Linux i386 allow compression of position-independent main executables (gcc -pie).
...
p_elf.h p_lx_elf.cpp p_lx_elf.h p_lx_exc.cpp
stub/fold_elf86.asm stub/fold_elf86.h stub/l_lx_elf.c
stub/l_lx_elf86.asm stub/l_lx_elf86.h stub/l_lx_elf86.lds
stub/linux.hh
committer: jreiser <jreiser> 1126886896 +0000
2005-09-16 16:08:16 +00:00
László Molnár
eb6c51426a
fixed a nasty relocation handling error which could produce broken
...
compressed files
committer: ml1050 <ml1050> 1126865811 +0000
2005-09-16 10:16:51 +00:00
Markus F.X.J. Oberhumer
0337bdb9fd
Added support for UCL_USE_ASM.
...
committer: mfx <mfx> 1126844111 +0000
2005-09-16 04:15:11 +00:00
Markus F.X.J. Oberhumer
7aedc62058
Removed some old and dead code.
...
committer: mfx <mfx> 1126744217 +0000
2005-09-15 00:30:17 +00:00
Markus F.X.J. Oberhumer
bfc835cbbf
Added some more tests to upx_sanity_check(). Disable these for production
...
builds - code bloat.
committer: mfx <mfx> 1126743964 +0000
2005-09-15 00:26:04 +00:00
Markus F.X.J. Oberhumer
5c6ba30c48
New ACC version.
...
committer: mfx <mfx> 1126741199 +0000
2005-09-14 23:39:59 +00:00
Markus F.X.J. Oberhumer
8fe4824ed2
Fix typo.
...
committer: mfx <mfx> 1126295791 +0000
2005-09-09 19:56:31 +00:00
Markus F.X.J. Oberhumer
d40cb3bd55
Cosmetic cleanups.
...
committer: mfx <mfx> 1126295335 +0000
2005-09-09 19:48:55 +00:00
Markus F.X.J. Oberhumer
4bcd3ac5d7
Mention arm/pe.
...
committer: mfx <mfx> 1126294945 +0000
2005-09-09 19:42:25 +00:00
Markus F.X.J. Oberhumer
e2b8e9dea9
Avoid some warnings about unused args.
...
committer: mfx <mfx> 1126294727 +0000
2005-09-09 19:38:47 +00:00
László Molnár
572314bf3f
support for arm/WinCE ("arm/pe") exes
...
committer: ml1050 <ml1050> 1126255781 +0000
2005-09-09 08:49:41 +00:00
Markus F.X.J. Oberhumer
14d303d331
Small updates according to latest glibc headers.
...
committer: mfx <mfx> 1126184484 +0000
2005-09-08 13:01:24 +00:00
Markus F.X.J. Oberhumer
24ffaa0738
Added BE64 and LE64 types.
...
committer: mfx <mfx> 1126183138 +0000
2005-09-08 12:38:58 +00:00
Markus F.X.J. Oberhumer
5d9b6d056d
Small updates.
...
committer: mfx <mfx> 1126029328 +0000
2005-09-06 17:55:28 +00:00
Markus F.X.J. Oberhumer
5c28ff15ba
Changes for new ACC version.
...
committer: mfx <mfx> 1126029282 +0000
2005-09-06 17:54:42 +00:00
Markus F.X.J. Oberhumer
06ceb2f2a1
New ACC version.
...
committer: mfx <mfx> 1126029264 +0000
2005-09-06 17:54:24 +00:00
Markus F.X.J. Oberhumer
7373e1dd8b
Updated.
...
committer: mfx <mfx> 1122416155 +0000
2005-07-26 22:15:55 +00:00
Markus F.X.J. Oberhumer
4b1a9e714d
New ACC version.
...
committer: mfx <mfx> 1122416002 +0000
2005-07-26 22:13:22 +00:00
Markus F.X.J. Oberhumer
9d76136358
Use gcc-3.4.4 for Linux stubs.
...
committer: mfx <mfx> 1122415958 +0000
2005-07-26 22:12:38 +00:00
Markus F.X.J. Oberhumer
b3502420ad
Removed patches/patch-elfcode.h and the patches/ directory - these
...
fixes now are already in upstream binutils for quite some time.
committer: mfx <mfx> 1119797919 +0000
2005-06-26 14:58:39 +00:00
Markus F.X.J. Oberhumer
dd7ac7cca9
Updated.
...
committer: mfx <mfx> 1119614331 +0000
2005-06-24 11:58:51 +00:00
Markus F.X.J. Oberhumer
31dfa18e9b
Updated.
...
committer: mfx <mfx> 1119613913 +0000
2005-06-24 11:51:53 +00:00
Markus F.X.J. Oberhumer
3e785008d3
Avoid warnings.
...
committer: mfx <mfx> 1119613856 +0000
2005-06-24 11:50:56 +00:00
Markus F.X.J. Oberhumer
6b7c7f755c
Avoid warnings about unused vars.
...
committer: mfx <mfx> 1119613814 +0000
2005-06-24 11:50:14 +00:00
Markus F.X.J. Oberhumer
c55a8a8703
Added some more sanity checks.
...
committer: mfx <mfx> 1119613748 +0000
2005-06-24 11:49:08 +00:00
Markus F.X.J. Oberhumer
64c97308ac
Portability fix for gcc -ftrapv option.
...
committer: mfx <mfx> 1119613504 +0000
2005-06-24 11:45:04 +00:00
Markus F.X.J. Oberhumer
3551b0b95a
Updated.
...
committer: mfx <mfx> 1119613441 +0000
2005-06-24 11:44:01 +00:00
Markus F.X.J. Oberhumer
9f16b5c4af
Recompiled stubs.
...
committer: mfx <mfx> 1119613249 +0000
2005-06-24 11:40:49 +00:00
Markus F.X.J. Oberhumer
9777e549cb
New upstream version.
...
committer: mfx <mfx> 1119613222 +0000
2005-06-24 11:40:22 +00:00
Markus F.X.J. Oberhumer
fbfced1b93
New ACC version.
...
committer: mfx <mfx> 1119613192 +0000
2005-06-24 11:39:52 +00:00
John Reiser
1a84b4681c
fix sign-extend bug
...
committer: jreiser <jreiser> 1114311664 +0000
2005-04-24 03:01:04 +00:00
John Reiser
4bf81b8e1c
propagate compiled changes due to ppc_bxx.S
...
stub/fold_elfppc32.h stub/fold_machppc32.h
committer: jreiser <jreiser> 1114229942 +0000
2005-04-23 04:19:02 +00:00
John Reiser
c282e7fdb4
PPC branch+call trick: filter first 4MB only
...
filteri.cpp filter/ppcbxx.h stub/ppc_bxx.S
committer: jreiser <jreiser> 1114229877 +0000
2005-04-23 04:17:57 +00:00
John Reiser
d339ee3135
PackLinuxElf32::unpack forgot several get_native32()
...
committer: jreiser <jreiser> 1114229735 +0000
2005-04-23 04:15:35 +00:00
Markus F.X.J. Oberhumer
1de95de299
Updated.
...
committer: mfx <mfx> 1111664629 +0000
2005-03-24 11:43:49 +00:00
Markus F.X.J. Oberhumer
96c998a1d7
Updated for current glibc.
...
committer: mfx <mfx> 1111664285 +0000
2005-03-24 11:38:05 +00:00
Markus F.X.J. Oberhumer
b5413c0156
Added John to main banner.
...
committer: mfx <mfx> 1110936050 +0000
2005-03-16 01:20:50 +00:00
Markus F.X.J. Oberhumer
7371c195ff
Allocate larger xtrasize based on ih.datasize.
...
committer: mfx <mfx> 1110936001 +0000
2005-03-16 01:20:01 +00:00
Markus F.X.J. Oberhumer
0866a1996b
Added two checks for buffer overflows as suggested by Giovanni Bajo.
...
committer: mfx <mfx> 1110732210 +0000
2005-03-13 16:43:30 +00:00
Markus F.X.J. Oberhumer
41f44c4e78
Updated.
...
committer: mfx <mfx> 1110731666 +0000
2005-03-13 16:34:26 +00:00
Markus F.X.J. Oberhumer
131712c3bd
New ACC version.
...
committer: mfx <mfx> 1110731645 +0000
2005-03-13 16:34:05 +00:00
Markus F.X.J. Oberhumer
bae12aaab7
Added more global operators.
...
committer: mfx <mfx> 1110731448 +0000
2005-03-13 16:30:48 +00:00
Markus F.X.J. Oberhumer
74d5844d8c
Tried to make 64-bit clean. John, please have a look!
...
committer: mfx <mfx> 1110731221 +0000
2005-03-13 16:27:01 +00:00
Markus F.X.J. Oberhumer
c87908266a
Fix a compilation problem with older compilers.
...
committer: mfx <mfx> 1110730245 +0000
2005-03-13 16:10:45 +00:00
Markus F.X.J. Oberhumer
f788d76b8c
Added several __attribute_packed.
...
committer: mfx <mfx> 1110730186 +0000
2005-03-13 16:09:46 +00:00
Markus F.X.J. Oberhumer
41031e572e
Updated.
...
committer: mfx <mfx> 1110729509 +0000
2005-03-13 15:58:29 +00:00
Markus F.X.J. Oberhumer
f8a0864c1b
Final updates. Really.
...
committer: mfx <mfx> 1109817185 +0000
2005-03-03 02:33:05 +00:00
Markus F.X.J. Oberhumer
949587334c
Updates.
...
committer: mfx <mfx> 1109816699 +0000
2005-03-03 02:24:59 +00:00
Markus F.X.J. Oberhumer
0bc6a1a7f1
Updated.
...
committer: mfx <mfx> 1109765803 +0000
2005-03-02 12:16:43 +00:00
Markus F.X.J. Oberhumer
0d9cbfe927
Updated.
...
committer: mfx <mfx> 1109756565 +0000
2005-03-02 09:42:45 +00:00
Markus F.X.J. Oberhumer
8742a524c3
Small updates.
...
committer: mfx <mfx> 1109750922 +0000
2005-03-02 08:08:42 +00:00
Markus F.X.J. Oberhumer
79bf2297b5
New simple and modern Makefile.
...
committer: mfx <mfx> 1109750619 +0000
2005-03-02 08:03:39 +00:00
Markus F.X.J. Oberhumer
32e9e23630
Removed old Makfiles (horrible cruft dating back from 1998).
...
committer: mfx <mfx> 1109750572 +0000
2005-03-02 08:02:52 +00:00
Markus F.X.J. Oberhumer
7f1cecba92
Got changed. We must sync our toolchains.
...
committer: mfx <mfx> 1109750498 +0000
2005-03-02 08:01:38 +00:00
Markus F.X.J. Oberhumer
efd30c61c3
Use namespace.
...
committer: mfx <mfx> 1109750346 +0000
2005-03-02 07:59:06 +00:00
Markus F.X.J. Oberhumer
4c97b11207
Added OBJSTRIP_xxx variables.
...
committer: mfx <mfx> 1109734187 +0000
2005-03-02 03:29:47 +00:00
John Reiser
58ea0ab745
use "~0u" to force unsigned bitmasks
...
committer: jreiser <jreiser> 1109691309 +0000
2005-03-01 15:35:09 +00:00
Markus F.X.J. Oberhumer
3547c71ad5
New ACC version.
...
committer: mfx <mfx> 1109674986 +0000
2005-03-01 11:03:06 +00:00
Markus F.X.J. Oberhumer
044d6b2ce2
Updated some ELF constants.
...
committer: mfx <mfx> 1109674932 +0000
2005-03-01 11:02:12 +00:00
Markus F.X.J. Oberhumer
a0b26b6c06
Added Elf32_Dyn.
...
committer: mfx <mfx> 1109671693 +0000
2005-03-01 10:08:13 +00:00
Markus F.X.J. Oberhumer
8e3bfde439
Use templates.
...
committer: mfx <mfx> 1109671197 +0000
2005-03-01 09:59:57 +00:00
Markus F.X.J. Oberhumer
6507de959b
Remove "struct" keywords.
...
committer: mfx <mfx> 1109671153 +0000
2005-03-01 09:59:13 +00:00
Markus F.X.J. Oberhumer
56d09bf3b5
Avoid warning.
...
committer: mfx <mfx> 1109669763 +0000
2005-03-01 09:36:03 +00:00
Markus F.X.J. Oberhumer
232754b978
Removed trailing whitespace.
...
committer: mfx <mfx> 1109669261 +0000
2005-03-01 09:27:41 +00:00
Markus F.X.J. Oberhumer
75ef603308
Linker updates from Laszlo. Needs some testing.
...
committer: mfx <mfx> 1109669078 +0000
2005-03-01 09:24:38 +00:00
Markus F.X.J. Oberhumer
a5a2fcee4d
Avoid warning.
...
committer: mfx <mfx> 1109345414 +0000
2005-02-25 15:30:14 +00:00
John Reiser
f86d57bfe3
mmap() needs in-range fd; b_method as arg5 to decompress
...
l_lx_elfppc32.S l_lx_elfppc32.h
ppc_d_nrv2e.S
ppc_d_nrv2b.S
committer: jreiser <jreiser> 1109217478 +0000
2005-02-24 03:57:58 +00:00
John Reiser
615615b1df
Unmap the compressed program before running the uncompressed.
...
fold_elfppc32.S fold_elfppc32.h
committer: jreiser <jreiser> 1109129677 +0000
2005-02-23 03:34:37 +00:00
John Reiser
aeba0ce170
add dependencies for ppc_bxx.S and ppc_d_nrv2e.S
...
Makefile fold_elfppc32.h l_mac_ppc32.h
committer: jreiser <jreiser> 1109093661 +0000
2005-02-22 17:34:21 +00:00
John Reiser
5ce60aad53
data cache prefetch
...
ppc_d_nrv2e.S l_lx_elfppc32.h
committer: jreiser <jreiser> 1109034808 +0000
2005-02-22 01:13:28 +00:00
John Reiser
dbc01de9a0
remove debugg-only 'trap'
...
committer: jreiser <jreiser> 1109012788 +0000
2005-02-21 19:06:28 +00:00
John Reiser
dfaf3f24fc
fix bad merge
...
p_lx_elf.h p_lx_exc.cpp
committer: jreiser <jreiser> 1108944786 +0000
2005-02-21 00:13:06 +00:00
John Reiser
14b0527e79
fix compiler waring
...
committer: jreiser <jreiser> 1108941316 +0000
2005-02-20 23:15:16 +00:00
John Reiser
f0148c3161
prepare for M_CL1B
...
committer: jreiser <jreiser> 1108940729 +0000
2005-02-20 23:05:29 +00:00
John Reiser
6a5e3d924d
p_lx_interp, p_mach
...
committer: jreiser <jreiser> 1108940412 +0000
2005-02-20 23:00:12 +00:00
John Reiser
664a82e7c9
Start re-organizing the packing of Elf, by making Elf32 come first,
...
with Big endian and Little endian derived from it.
I386 still uses the old way, but PowerPC (both Linux and Darwin [Mac])
use the new way.
p_elf.h p_lx_elf.cpp p_lx_elf.h p_lx_exc.cpp p_lx_exc.h
p_unix.cpp p_unix.h p_vmlinx.cpp p_vmlinx.h p_vmlinz.cpp
committer: jreiser <jreiser> 1108940224 +0000
2005-02-20 22:57:04 +00:00
John Reiser
e2763b4826
new packers PackMachPPC32 PackLinuxElf32ppc PackLinuxI386interp
...
packmast.cpp
p_lx_interp.h
committer: jreiser <jreiser> 1108939957 +0000
2005-02-20 22:52:37 +00:00
John Reiser
afb29b19c2
PowerPC branch [and call] trick
...
committer: jreiser <jreiser> 1108939726 +0000
2005-02-20 22:48:46 +00:00
John Reiser
8d60343940
allow better handling for no_filter option;
...
new options is_ptinterp, use_ptintep, make_ptinterp;
reserve codes for M_CL1B.
compress.ch conf.h main.cpp options.h
committer: jreiser <jreiser> 1108939577 +0000
2005-02-20 22:46:17 +00:00
John Reiser
67a77f1880
Packer for Macintosh Darwin Mach-o PowerPC32
...
Added Files:
p_mach.cpp p_mach.h
committer: jreiser <jreiser> 1108863998 +0000
2005-02-20 01:46:38 +00:00
John Reiser
c933974174
branch trick for PowerPC32
...
committer: jreiser <jreiser> 1108863063 +0000
2005-02-20 01:31:03 +00:00
John Reiser
19715903fb
New stubs pti86 (PT_INTERP for Linux x86), Linux Elf PowerPC-32,
...
Apple Macintosh Darwin PowerPC-32.
committer: jreiser <jreiser> 1108862148 +0000
2005-02-20 01:15:48 +00:00
John Reiser
c88f72fd15
disinguish between __i386__ and generic
...
committer: jreiser <jreiser> 1108861387 +0000
2005-02-20 01:03:07 +00:00
John Reiser
7818596271
stub loader for Linux Elf PowerPC32
...
Added Files:
m_lx_elfppc32.c l_lx_elfppc32.lds
fold_elfppc32.S l_lx_elfppc32.S
fold_elfppc32.h l_lx_elfppc32.h [these two created by Makefile]
committer: jreiser <jreiser> 1108861182 +0000
2005-02-20 00:59:42 +00:00
John Reiser
9cb8d7bca6
stub loader for Macintosh (Darwin) Mach-o PowerPC32
...
Added Files:
l_mac_ppc32.S fold_machppc32.S m_mac_mach32.c
l_mac_ppc32.h fold_machppc32.h [these two created by Makefile]
committer: jreiser <jreiser> 1108860254 +0000
2005-02-20 00:44:14 +00:00
John Reiser
46f9256114
PowerPC unfilter, decompress, and register definitions
...
Added Files:
ppc_bxx.S ppc_d_nrv2e.S ppc_regs.h
committer: jreiser <jreiser> 1108855959 +0000
2005-02-19 23:32:39 +00:00
John Reiser
c26ef87202
Let the UPX loader be an Elf PT_INTERP /opt/upx/run
...
Added Files:
p_lx_interp.cpp stub/l_lx_pti.c stub/fold_pti86.asm
stub/fold_pti86.h stub/l_lx_pti86.asm stub/l_lx_pti86.h
stub/l_lx_pti86.lds
committer: jreiser <jreiser> 1108855010 +0000
2005-02-19 23:16:50 +00:00
John Reiser
89fee5b835
allow more sections; print failing section on overflow
...
committer: jreiser <jreiser> 1108850756 +0000
2005-02-19 22:05:56 +00:00
John Reiser
f5795eb01b
make_hatch() is called from l_lx_sep86.asm, so cannot be 'static'
...
committer: jreiser <jreiser> 1108850437 +0000
2005-02-19 22:00:37 +00:00
László Molnár
dbf0c9f016
msg.cpp: fixed possible sigsegv caused by a tricky filename
...
committer: ml1050 <ml1050> 1108382780 +0000
2005-02-14 12:06:20 +00:00
Markus F.X.J. Oberhumer
586b43048f
Bump version.
...
committer: mfx <mfx> 1107807914 +0000
2005-02-07 20:25:14 +00:00
Markus F.X.J. Oberhumer
63b9ee61d2
Prepare UPX 1.93 release.
...
committer: mfx <mfx> 1107804731 +0000
2005-02-07 19:32:11 +00:00
Markus F.X.J. Oberhumer
3b9eff7f34
Enter 2005; added all needed stub files to CVS.
...
committer: mfx <mfx> 1107804447 +0000
2005-02-07 19:27:27 +00:00
John Reiser
59668c5fc1
::pack3 to set .p_filesz; also set blocksize to allow giant scripts as input
...
p_lx_sh.cpp p_lx_sh.h
committer: jreiser <jreiser> 1105479043 +0000
2005-01-11 21:30:43 +00:00
Markus F.X.J. Oberhumer
3ed786fb5c
Updated.
...
committer: mfx <mfx> 1103717402 +0000
2004-12-22 12:10:02 +00:00
Markus F.X.J. Oberhumer
0cd5eb5472
Use gcc-3.4.3 for Linux stubs.
...
committer: mfx <mfx> 1103717370 +0000
2004-12-22 12:09:30 +00:00
Markus F.X.J. Oberhumer
ff571b96cb
New ACC version.
...
committer: mfx <mfx> 1103717337 +0000
2004-12-22 12:08:57 +00:00
John Reiser
36b852e6bf
%cs at entry to decompressor varies a _lot_ among Linux 2.4.x, 2.6.y kernels.
...
Decompressor must adapt; no universal constants exist for __BOOT_CS, _BOOT_DS.
p_vmlinx.cpp stub/l_vmlinz.asm
committer: jreiser <jreiser> 1103605278 +0000
2004-12-21 05:01:18 +00:00
John Reiser
f0c21c7203
Enhance documentation for process flow and testing.
...
Include some notes for compressing kernels from Linux 2.4.x.
committer: jreiser <jreiser> 1103513947 +0000
2004-12-20 03:39:07 +00:00
John Reiser
0516d8260c
Fix stack synchronization bug at end of unfilter.
...
[The confusing fake "conditional compilation" strikes again!]
committer: jreiser <jreiser> 1103513713 +0000
2004-12-20 03:35:13 +00:00
John Reiser
1418f57b96
Fix bugs between Filter.addvalue and ckt32 macro call: [re-]compressed
...
Linux kernels were not booting. Explain .addvalue better.
Set kernel stack pointer for boot-time decompression according to
Linux kernel documentation.
p_vmlinx.cpp p_vmlinz.cpp
stub/l_vmlinx.asm stub/l_vmlinz.asm
filter/cto.h filter/ctoj.h filter/ctok.h
committer: jreiser <jreiser> 1103326936 +0000
2004-12-17 23:42:16 +00:00
Markus F.X.J. Oberhumer
b24fb59c94
New upstream version.
...
committer: mfx <mfx> 1101602738 +0000
2004-11-28 00:45:38 +00:00
Markus F.X.J. Oberhumer
8fcf2bcd59
Fix bele.h to use strict PODs. This should fix build problems reported on ARM.
...
committer: mfx <mfx> 1098709362 +0000
2004-10-25 13:02:42 +00:00
Markus F.X.J. Oberhumer
079b808a56
Updated.
...
committer: mfx <mfx> 1098709263 +0000
2004-10-25 13:01:03 +00:00
Markus F.X.J. Oberhumer
a4e01e28db
New ACC version.
...
committer: mfx <mfx> 1098709116 +0000
2004-10-25 12:58:36 +00:00
Markus F.X.J. Oberhumer
ec1ef9099f
Updated.
...
committer: mfx <mfx> 1096637333 +0000
2004-10-01 13:28:53 +00:00
Markus F.X.J. Oberhumer
ac724c7e6c
New PS1 version from Jens.
...
committer: mfx <mfx> 1096637259 +0000
2004-10-01 13:27:39 +00:00
Markus F.X.J. Oberhumer
ec25835525
New ACC version.
...
committer: mfx <mfx> 1096636709 +0000
2004-10-01 13:18:29 +00:00
Markus F.X.J. Oberhumer
d4841a641c
Updates.
...
committer: mfx <mfx> 1092135204 +0000
2004-08-10 10:53:24 +00:00
Markus F.X.J. Oberhumer
5612460720
New ACC version.
...
committer: mfx <mfx> 1092134926 +0000
2004-08-10 10:48:46 +00:00
John Reiser
465ea6429f
"new []" requires matching "delete []"
...
committer: jreiser <jreiser> 1090882098 +0000
2004-07-26 22:48:18 +00:00
Markus F.X.J. Oberhumer
ed9057ca83
Cleanups.
...
committer: mfx <mfx> 1090594763 +0000
2004-07-23 14:59:23 +00:00
Markus F.X.J. Oberhumer
14ced962db
Cleanup.
...
committer: mfx <mfx> 1090583778 +0000
2004-07-23 11:56:18 +00:00
Markus F.X.J. Oberhumer
1aff6b862d
Replaced ACC with miniACC.
...
committer: mfx <mfx> 1090583659 +0000
2004-07-23 11:54:19 +00:00
Markus F.X.J. Oberhumer
ef490c4220
Updates.
...
committer: mfx <mfx> 1090577049 +0000
2004-07-23 10:04:09 +00:00
Markus F.X.J. Oberhumer
0dda83cbbc
Updated.
...
committer: mfx <mfx> 1090577037 +0000
2004-07-23 10:03:57 +00:00
Markus F.X.J. Oberhumer
fa4efec3b5
Bumped version numbers.
...
committer: mfx <mfx> 1090283329 +0000
2004-07-20 00:28:49 +00:00
Markus F.X.J. Oberhumer
814eabb88e
Final updates for upx 1.92.
...
committer: mfx <mfx> 1090281040 +0000
2004-07-19 23:50:40 +00:00
John Reiser
95021e4977
mention vmlinux/i386
...
NEWS README README.1ST
committer: jreiser <jreiser> 1090261436 +0000
2004-07-19 18:23:56 +00:00
Markus F.X.J. Oberhumer
d17fb7ebf0
Updated.
...
committer: mfx <mfx> 1090258607 +0000
2004-07-19 17:36:47 +00:00
Markus F.X.J. Oberhumer
df9aa9ac32
Misc updates.
...
committer: mfx <mfx> 1090256162 +0000
2004-07-19 16:56:02 +00:00
Markus F.X.J. Oberhumer
9110517893
Check for .NET (win32/net) files.
...
committer: mfx <mfx> 1090256077 +0000
2004-07-19 16:54:37 +00:00
Markus F.X.J. Oberhumer
8204c7deb6
Small portability fixes.
...
committer: mfx <mfx> 1090256008 +0000
2004-07-19 16:53:28 +00:00
Markus F.X.J. Oberhumer
6662f8985e
New ACC version.
...
committer: mfx <mfx> 1090253767 +0000
2004-07-19 16:16:07 +00:00
John Reiser
a2b305ed3b
Don't spend too much time compressing large symbol tables.
...
committer: jreiser <jreiser> 1090072585 +0000
2004-07-17 13:56:25 +00:00
John Reiser
ce3d3a850c
Allow any number of contiguous PT_LOAD.
...
p_vmlinx.cpp p_vmlinx.h
committer: jreiser <jreiser> 1090040793 +0000
2004-07-17 05:06:33 +00:00
Markus F.X.J. Oberhumer
212b674bc2
Portability fixes. Avoid some warnings.
...
committer: mfx <mfx> 1089734843 +0000
2004-07-13 16:07:23 +00:00
John Reiser
2980a6b4bb
save 4 bytes
...
committer: jreiser <jreiser> 1089733580 +0000
2004-07-13 15:46:20 +00:00
Markus F.X.J. Oberhumer
435c0a9e82
New ACC version.
...
committer: mfx <mfx> 1089731989 +0000
2004-07-13 15:19:49 +00:00
Markus F.X.J. Oberhumer
4102cd7c91
Detabified.
...
committer: mfx <mfx> 1089731601 +0000
2004-07-13 15:13:21 +00:00
Markus F.X.J. Oberhumer
b4b603819d
Comment out cl1_d32.ash for now.
...
committer: mfx <mfx> 1089731343 +0000
2004-07-13 15:09:03 +00:00
Markus F.X.J. Oberhumer
20e3707e69
Updated some comments.
...
committer: mfx <mfx> 1089731255 +0000
2004-07-13 15:07:35 +00:00
John Reiser
fc6eeaaea8
Decodes a format similar to nrv2b, except that a run of literals
...
is counted and phased instead of always 1-hot (no more 9/8 expansion).
committer: jreiser <jreiser> 1089692385 +0000
2004-07-13 04:19:45 +00:00
Markus F.X.J. Oberhumer
41799955ce
Updated.
...
committer: mfx <mfx> 1089687731 +0000
2004-07-13 03:02:11 +00:00
Markus F.X.J. Oberhumer
efb4ec9cb8
New ACC version.
...
committer: mfx <mfx> 1089687481 +0000
2004-07-13 02:58:01 +00:00
Markus F.X.J. Oberhumer
4dbda29f82
New upstream version.
...
committer: mfx <mfx> 1089687264 +0000
2004-07-13 02:54:24 +00:00
Markus F.X.J. Oberhumer
befaa3c501
Detabified.
...
committer: mfx <mfx> 1089685145 +0000
2004-07-13 02:19:05 +00:00
John Reiser
f41edf9e21
more Example twiddling
...
committer: jreiser <jreiser> 1089683530 +0000
2004-07-13 01:52:10 +00:00
John Reiser
754f10f0b0
update Example from linux kernel debuggin
...
committer: jreiser <jreiser> 1089674802 +0000
2004-07-12 23:26:42 +00:00
John Reiser
5d331fdf69
new file format vmlinux/i386
...
Modified Files:
Makefile conf.h help.cpp linker.cpp p_elf.h packer.cpp
packerf.cpp packmast.cpp stub/Makefile stub/l_vmlinz.asm
Added Files:
p_vmlinx.h p_vmlinx.cpp stub/l_vmlinx.asm
committer: jreiser <jreiser> 1089652867 +0000
2004-07-12 17:21:07 +00:00
Markus F.X.J. Oberhumer
cbf1dbe2cb
Added new win32/pe option `--strip-loadconf'.
...
committer: mfx <mfx> 1089630382 +0000
2004-07-12 11:06:22 +00:00
Markus F.X.J. Oberhumer
3177de92fb
New ACC version.
...
committer: mfx <mfx> 1089162904 +0000
2004-07-07 01:15:04 +00:00
Markus F.X.J. Oberhumer
3878890783
Prefer gcc-3.4.0 over gcc-3.4.1. Converted PF_TO_PROT into a macro (small size gain).
...
committer: mfx <mfx> 1088832985 +0000
2004-07-03 05:36:25 +00:00
Markus F.X.J. Oberhumer
61594f7873
Misc cleanups.
...
committer: mfx <mfx> 1088804669 +0000
2004-07-02 21:44:29 +00:00
Markus F.X.J. Oberhumer
f412b5e0cd
Fixed Win64 warnings.
...
committer: mfx <mfx> 1088804606 +0000
2004-07-02 21:43:26 +00:00
Markus F.X.J. Oberhumer
f14d594a1a
New ACC version.
...
committer: mfx <mfx> 1088804565 +0000
2004-07-02 21:42:45 +00:00
Markus F.X.J. Oberhumer
f0279d23d3
Bumped version to start working on 1.92.
...
committer: mfx <mfx> 1088568203 +0000
2004-06-30 04:03:23 +00:00
Markus F.X.J. Oberhumer
18ef55ac14
Final updates for upx-1.91.
...
committer: mfx <mfx> 1088566877 +0000
2004-06-30 03:41:17 +00:00
Markus F.X.J. Oberhumer
0010c50de6
Updated.
...
committer: mfx <mfx> 1088552416 +0000
2004-06-29 23:40:16 +00:00
Markus F.X.J. Oberhumer
130699a33b
Updated.
...
committer: mfx <mfx> 1088541938 +0000
2004-06-29 20:45:38 +00:00
Markus F.X.J. Oberhumer
5a8d60d3e0
Assorted fixes.
...
committer: mfx <mfx> 1088541880 +0000
2004-06-29 20:44:40 +00:00
Markus F.X.J. Oberhumer
603dc83c1a
Fixed wrong n_mru storage in putPackHeader().
...
committer: mfx <mfx> 1088541728 +0000
2004-06-29 20:42:08 +00:00
Markus F.X.J. Oberhumer
51106e730b
Updated.
...
committer: mfx <mfx> 1088532712 +0000
2004-06-29 18:11:52 +00:00
Markus F.X.J. Oberhumer
23ec864130
Removed trailing whitespace.
...
committer: mfx <mfx> 1088532664 +0000
2004-06-29 18:11:04 +00:00
Markus F.X.J. Oberhumer
5349bd0b2a
Stricter check of some PE values.
...
committer: mfx <mfx> 1088532595 +0000
2004-06-29 18:09:55 +00:00
Markus F.X.J. Oberhumer
74d70fe1d9
New ACC version.
...
committer: mfx <mfx> 1088531787 +0000
2004-06-29 17:56:27 +00:00
Markus F.X.J. Oberhumer
041865c320
Misc cleanups.
...
committer: mfx <mfx> 1088103372 +0000
2004-06-24 18:56:12 +00:00
Markus F.X.J. Oberhumer
6a7d555ad7
Recompute tlsindex in buildLoader() as suggested by Laszlo.
...
committer: mfx <mfx> 1088101947 +0000
2004-06-24 18:32:27 +00:00
Markus F.X.J. Oberhumer
18262f79c7
New upstream version.
...
committer: mfx <mfx> 1087253885 +0000
2004-06-14 22:58:05 +00:00
John Reiser
9769599f1d
Avoid "ASCII armor" area below 16MB (0x01000000) for exec-shield and
...
pre-linked PT_INTERP such as ld-linux.so.2
l_lx_elf86.asm l_lx_elf86.lds l_lx_sh86.asm l_lx_sh86.lds
committer: jreiser <jreiser> 1084925700 +0000
2004-05-19 00:15:00 +00:00
John Reiser
aee150474c
Revamp do_xmap() to work under exec-shield and exec-shield-randomize,
...
and with pre-linked PT_INTERP such as ld-linux.so.2.
l_lx_elf.c l_lx_sh.c
committer: jreiser <jreiser> 1084923593 +0000
2004-05-18 23:39:53 +00:00
Markus F.X.J. Oberhumer
0e45021a5a
Bumped version-date.
...
committer: mfx <mfx> 1084324462 +0000
2004-05-12 01:14:22 +00:00
Markus F.X.J. Oberhumer
241abcc89c
Whitespace changes.
...
committer: mfx <mfx> 1084324421 +0000
2004-05-12 01:13:41 +00:00
Markus F.X.J. Oberhumer
90fc32a56e
Small cleanup.
...
committer: mfx <mfx> 1084324395 +0000
2004-05-12 01:13:15 +00:00
Markus F.X.J. Oberhumer
7ce85ab712
Fixes for gcc 3.4 (-funit-at-a-time). Reduced size of stubs a little bit.
...
committer: mfx <mfx> 1084323518 +0000
2004-05-12 00:58:38 +00:00
Markus F.X.J. Oberhumer
55cde23f10
Updated for gcc 3.4.0 release.
...
committer: mfx <mfx> 1084317169 +0000
2004-05-11 23:12:49 +00:00
Markus F.X.J. Oberhumer
a19e6cd4f5
Detabified.
...
committer: mfx <mfx> 1084317075 +0000
2004-05-11 23:11:15 +00:00
Markus F.X.J. Oberhumer
06f8c55908
Fixed partial reads.
...
committer: mfx <mfx> 1084308720 +0000
2004-05-11 20:52:00 +00:00
Markus F.X.J. Oberhumer
b10f68d20a
New ACC version.
...
committer: mfx <mfx> 1084307588 +0000
2004-05-11 20:33:08 +00:00
John Reiser
ed8a71bba1
recognize another variation of head.S: ljmp $0x10,...
...
committer: jreiser <jreiser> 1084136848 +0000
2004-05-09 21:07:28 +00:00
John Reiser
fee6f17caf
explicit PHDRS to control number of Elf32_Phdr: no PT_GNU_STACK
...
l_lx_elf86.lds l_lx_exec86.lds l_lx_sep86.lds l_lx_sh86.lds
committer: jreiser <jreiser> 1083997506 +0000
2004-05-08 06:25:06 +00:00
Markus F.X.J. Oberhumer
767e4e2ce6
New ps1/exe version from Jens.
...
committer: mfx <mfx> 1083813373 +0000
2004-05-06 03:16:13 +00:00
Markus F.X.J. Oberhumer
23f5370dcf
Added cdecl.
...
committer: mfx <mfx> 1083812698 +0000
2004-05-06 03:04:58 +00:00
Markus F.X.J. Oberhumer
37ae689328
New PS1 version from Jens.
...
committer: mfx <mfx> 1081901413 +0000
2004-04-14 00:10:13 +00:00
Markus F.X.J. Oberhumer
123b33efd4
New upstream version.
...
committer: mfx <mfx> 1081448201 +0000
2004-04-08 18:16:41 +00:00
Markus F.X.J. Oberhumer
736ec9d9e5
Now requires djasm-2.04-mfx1.
...
committer: mfx <mfx> 1081387577 +0000
2004-04-08 01:26:17 +00:00
John Reiser
5a94136764
"python -c" works, so python is a shell. [However, scripts often use:
...
#!/usr/bin/env python
instead of
#!/usr/bin/python
because for a long time python was not "blessed" by living in /usr/bin;
many users have python in /usr/local or some other place in $PATH.
And /usr/bin/env does not take "-c".]
committer: jreiser <jreiser> 1081041516 +0000
2004-04-04 01:18:36 +00:00
John Reiser
1555be40b7
fix alignment of loader after packing multiple blocks
...
p_lx_elf.h p_lx_elf.cpp
committer: jreiser <jreiser> 1080880623 +0000
2004-04-02 04:37:03 +00:00
Markus F.X.J. Oberhumer
60b7a3c33b
Updated to gcc-3.4 20040314 prerelease.
...
committer: mfx <mfx> 1080195627 +0000
2004-03-25 06:20:27 +00:00
Markus F.X.J. Oberhumer
a5d8e575bd
Building the Linux stub is now completely freestanding of any libc/kernel headers.
...
committer: mfx <mfx> 1080194907 +0000
2004-03-25 06:08:27 +00:00
Markus F.X.J. Oberhumer
23db1d375c
*** empty log message ***
...
committer: mfx <mfx> 1080194792 +0000
2004-03-25 06:06:32 +00:00
Markus F.X.J. Oberhumer
e06722d121
Finally fixed long-standing reloc bug.
...
committer: mfx <mfx> 1080194776 +0000
2004-03-25 06:06:16 +00:00
John Reiser
81e77a8b2b
linux-2.6.4 has different code in head.S
...
committer: jreiser <jreiser> 1079655854 +0000
2004-03-19 00:24:14 +00:00
Markus F.X.J. Oberhumer
5c567c5a76
Converted ctojr32 to use macro-local defines.
...
committer: mfx <mfx> 1075806803 +0000
2004-02-03 11:13:23 +00:00
Markus F.X.J. Oberhumer
b8e698bde3
Added CPU instructions to all nasm source files.
...
FIXME: ctojr32 needs CPU 486 because it uses bswap.
committer: mfx <mfx> 1075806034 +0000
2004-02-03 11:00:34 +00:00
Markus F.X.J. Oberhumer
440b5b2608
Build updates.
...
committer: mfx <mfx> 1075804038 +0000
2004-02-03 10:27:18 +00:00
Markus F.X.J. Oberhumer
8b2e7ffe0b
New ACC version.
...
committer: mfx <mfx> 1075803957 +0000
2004-02-03 10:25:57 +00:00
Markus F.X.J. Oberhumer
1018a96b31
Enter 2004.
...
committer: mfx <mfx> 1074624720 +0000
2004-01-20 18:52:00 +00:00
Markus F.X.J. Oberhumer
5f87e9891b
Enter 2004.
...
committer: mfx <mfx> 1074623868 +0000
2004-01-20 18:37:48 +00:00
Markus F.X.J. Oberhumer
19564ed27e
Cleanups.
...
committer: mfx <mfx> 1074623253 +0000
2004-01-20 18:27:33 +00:00
Markus F.X.J. Oberhumer
f4022af48a
Fixes for gcc 3.4 20040118.
...
committer: mfx <mfx> 1074619023 +0000
2004-01-20 17:17:03 +00:00
Markus F.X.J. Oberhumer
2d1de8b9e9
New ACC version.
...
committer: mfx <mfx> 1074109375 +0000
2004-01-14 19:42:55 +00:00
Markus F.X.J. Oberhumer
cdbfdee725
Updates.
...
committer: mfx <mfx> 1071922490 +0000
2003-12-20 12:14:50 +00:00
Markus F.X.J. Oberhumer
ac64126a66
Use gcc-3.4 20031206 (experimental) for smallest Linux stubs.
...
committer: mfx <mfx> 1071920621 +0000
2003-12-20 11:43:41 +00:00
Markus F.X.J. Oberhumer
97153e8e09
Compile fixes for PGI C++.
...
committer: mfx <mfx> 1071917829 +0000
2003-12-20 10:57:09 +00:00
Markus F.X.J. Oberhumer
b9c976304a
Avoid unused variables.
...
committer: mfx <mfx> 1071779657 +0000
2003-12-18 20:34:17 +00:00
Markus F.X.J. Oberhumer
670b67cc98
Updated.
...
committer: mfx <mfx> 1071754494 +0000
2003-12-18 13:34:54 +00:00
Markus F.X.J. Oberhumer
ccecaa741c
New ACC version.
...
committer: mfx <mfx> 1071754470 +0000
2003-12-18 13:34:30 +00:00
Markus F.X.J. Oberhumer
07230edec0
New ACC version.
...
committer: mfx <mfx> 1069787548 +0000
2003-11-25 19:12:28 +00:00
Markus F.X.J. Oberhumer
de1a4b4da4
Cleanups.
...
committer: mfx <mfx> 1068991974 +0000
2003-11-16 14:12:54 +00:00
Markus F.X.J. Oberhumer
aba5c40b17
New ACC version.
...
committer: mfx <mfx> 1068991888 +0000
2003-11-16 14:11:28 +00:00
Markus F.X.J. Oberhumer
a55b3480ef
Small updates.
...
committer: mfx <mfx> 1066732696 +0000
2003-10-21 10:38:16 +00:00
Markus F.X.J. Oberhumer
bcb5e7d852
New ACC version.
...
committer: mfx <mfx> 1066732570 +0000
2003-10-21 10:36:10 +00:00
Markus F.X.J. Oberhumer
e4f6378dfe
Added support for amd64 (aka x86_64) cross compiler.
...
committer: mfx <mfx> 1064515134 +0000
2003-09-25 18:38:54 +00:00
Markus F.X.J. Oberhumer
f616d2edf1
New upstream version.
...
committer: mfx <mfx> 1063623307 +0000
2003-09-15 10:55:07 +00:00
Markus F.X.J. Oberhumer
bffb138b9c
New ACC version.
...
committer: mfx <mfx> 1063544494 +0000
2003-09-14 13:01:34 +00:00
Markus F.X.J. Oberhumer
b49fc6c081
Changed -O2 flag to -O15 for new nasm version.
...
committer: mfx <mfx> 1063502219 +0000
2003-09-14 01:16:59 +00:00
Markus F.X.J. Oberhumer
570b195ed6
Fixed cdecl.
...
committer: mfx <mfx> 1062472677 +0000
2003-09-02 03:17:57 +00:00
Markus F.X.J. Oberhumer
b0e961b90b
New ACC version.
...
committer: mfx <mfx> 1062472636 +0000
2003-09-02 03:17:16 +00:00
Markus F.X.J. Oberhumer
919a899c39
New ACC version.
...
committer: mfx <mfx> 1062077078 +0000
2003-08-28 13:24:38 +00:00
Markus F.X.J. Oberhumer
655094239c
Cleanups.
...
committer: mfx <mfx> 1061224700 +0000
2003-08-18 16:38:20 +00:00
Markus F.X.J. Oberhumer
8eda698a9c
New ACC version.
...
committer: mfx <mfx> 1061224659 +0000
2003-08-18 16:37:39 +00:00
Markus F.X.J. Oberhumer
d1753c6df9
Misc cleanups.
...
committer: mfx <mfx> 1060699283 +0000
2003-08-12 14:41:23 +00:00
Markus F.X.J. Oberhumer
3db0b0e8fe
New ACC version.
...
committer: mfx <mfx> 1060699213 +0000
2003-08-12 14:40:13 +00:00
Markus F.X.J. Oberhumer
8d5d6bd1a5
Updated TODO list.
...
committer: mfx <mfx> 1060091356 +0000
2003-08-05 13:49:16 +00:00
Markus F.X.J. Oberhumer
05f6f4d2ff
Bump version date.
...
committer: mfx <mfx> 1060090111 +0000
2003-08-05 13:28:31 +00:00
Markus F.X.J. Oberhumer
9e154e33c3
Win64 updates.
...
committer: mfx <mfx> 1060086924 +0000
2003-08-05 12:35:24 +00:00
Markus F.X.J. Oberhumer
5125f4d4ac
New ACC version.
...
committer: mfx <mfx> 1060086835 +0000
2003-08-05 12:33:55 +00:00
Markus F.X.J. Oberhumer
365a3c0432
Cleanups.
...
committer: mfx <mfx> 1059739807 +0000
2003-08-01 12:10:07 +00:00
Markus F.X.J. Oberhumer
ab37b5ea0c
New ACC version.
...
committer: mfx <mfx> 1059739715 +0000
2003-08-01 12:08:35 +00:00
Markus F.X.J. Oberhumer
20ddd8590d
New ACC version.
...
committer: mfx <mfx> 1059549679 +0000
2003-07-30 07:21:19 +00:00
Markus F.X.J. Oberhumer
69d9aa6c69
Some fixes for latest gcc 3.4 snapshot.
...
committer: mfx <mfx> 1059510876 +0000
2003-07-29 20:34:36 +00:00
Markus F.X.J. Oberhumer
2163231401
New ACC version.
...
committer: mfx <mfx> 1059510824 +0000
2003-07-29 20:33:44 +00:00
Markus F.X.J. Oberhumer
f513373693
Updated.
...
committer: mfx <mfx> 1058967901 +0000
2003-07-23 13:45:01 +00:00
Markus F.X.J. Oberhumer
ed0e3b9af4
Small cleanups.
...
committer: mfx <mfx> 1058967699 +0000
2003-07-23 13:41:39 +00:00
Markus F.X.J. Oberhumer
4205c699ac
Correct rounding issue when displaying the compression ratio.
...
committer: mfx <mfx> 1058789628 +0000
2003-07-21 12:13:48 +00:00
Markus F.X.J. Oberhumer
4e64cdac15
Final round of portab fixes - UPX should now compile on any halfway
...
modern C++ compiler.
committer: mfx <mfx> 1058789145 +0000
2003-07-21 12:05:45 +00:00
Markus F.X.J. Oberhumer
bbbea34d74
New ACC version.
...
committer: mfx <mfx> 1058788892 +0000
2003-07-21 12:01:32 +00:00
Markus F.X.J. Oberhumer
66565f7238
Some portab fixes.
...
committer: mfx <mfx> 1058450658 +0000
2003-07-17 14:04:18 +00:00
Markus F.X.J. Oberhumer
9cb922425e
Whitespace changes.
...
committer: mfx <mfx> 1058450247 +0000
2003-07-17 13:57:27 +00:00
Markus F.X.J. Oberhumer
268e13c572
New ACC version.
...
committer: mfx <mfx> 1058449640 +0000
2003-07-17 13:47:20 +00:00
John Reiser
03f1f615e5
filter 0x49 for [b]vmlinuz; 2nd parameter for ckt32 (addvalue)
...
p_vmlinz.cpp stub/macros.ash
stub/l_lx_elf86.asm
stub/l_lx_exec86.asm
stub/l_vmlinz.asm
committer: jreiser <jreiser> 1058406408 +0000
2003-07-17 01:46:48 +00:00
John Reiser
94152391b1
patch ULEN for LZCKLLT1; filter 0x49 still not working
...
committer: jreiser <jreiser> 1058382714 +0000
2003-07-16 19:11:54 +00:00
John Reiser
2d403e07bb
clear eflags; set cs; set ecx for LZCKLLT1; more documentation
...
committer: jreiser <jreiser> 1058382511 +0000
2003-07-16 19:08:31 +00:00
Markus F.X.J. Oberhumer
48ec581539
Renamed the options sub-structs for more consistency. Some portab fixes.
...
committer: mfx <mfx> 1058221575 +0000
2003-07-14 22:26:15 +00:00
Markus F.X.J. Oberhumer
f9054529c1
New ACC version.
...
committer: mfx <mfx> 1058104401 +0000
2003-07-13 13:53:21 +00:00
Markus F.X.J. Oberhumer
67d9ff987c
Updated.
...
committer: mfx <mfx> 1058050408 +0000
2003-07-12 22:53:28 +00:00
Markus F.X.J. Oberhumer
a3bb8f00fd
Updates for latest ACC changes.
...
committer: mfx <mfx> 1058050328 +0000
2003-07-12 22:52:08 +00:00
Markus F.X.J. Oberhumer
48846c7226
New ACC version.
...
committer: mfx <mfx> 1058045717 +0000
2003-07-12 21:35:17 +00:00
Markus F.X.J. Oberhumer
ad8648f668
New ACC version.
...
committer: mfx <mfx> 1057743808 +0000
2003-07-09 09:43:28 +00:00
Markus F.X.J. Oberhumer
c7224c7727
Added some important TODO entries.
...
committer: mfx <mfx> 1054071077 +0000
2003-05-27 21:31:17 +00:00
Markus F.X.J. Oberhumer
b2949259c5
Portability updates.
...
committer: mfx <mfx> 1054071025 +0000
2003-05-27 21:30:25 +00:00
Markus F.X.J. Oberhumer
757bdd1264
New ACC version.
...
committer: mfx <mfx> 1054070133 +0000
2003-05-27 21:15:33 +00:00
Markus F.X.J. Oberhumer
ec1e5849eb
Remove debug output.
...
committer: mfx <mfx> 1054069636 +0000
2003-05-27 21:07:16 +00:00
Markus F.X.J. Oberhumer
1752fab911
New ACC version.
...
committer: mfx <mfx> 1054069577 +0000
2003-05-27 21:06:17 +00:00
Markus F.X.J. Oberhumer
b0748388b2
New upstream version.
...
committer: mfx <mfx> 1052654076 +0000
2003-05-11 11:54:36 +00:00
Markus F.X.J. Oberhumer
175899013e
Updated.
...
committer: mfx <mfx> 1051152491 +0000
2003-04-24 02:48:11 +00:00
Markus F.X.J. Oberhumer
c448d15a8f
New ACC version.
...
committer: mfx <mfx> 1051152474 +0000
2003-04-24 02:47:54 +00:00
Markus F.X.J. Oberhumer
5c7bca5b3e
Updates.
...
committer: mfx <mfx> 1050612607 +0000
2003-04-17 20:50:07 +00:00
Markus F.X.J. Oberhumer
390cdbba2d
New ACC version.
...
committer: mfx <mfx> 1050608556 +0000
2003-04-17 19:42:36 +00:00
Markus F.X.J. Oberhumer
256b8f066f
New version from Jens.
...
committer: mfx <mfx> 1049938824 +0000
2003-04-10 01:40:24 +00:00
Markus F.X.J. Oberhumer
30915862cd
New upstream version.
...
committer: mfx <mfx> 1049683526 +0000
2003-04-07 02:45:26 +00:00
Markus F.X.J. Oberhumer
eeb1dfaf8f
Updated.
...
committer: mfx <mfx> 1049676306 +0000
2003-04-07 00:45:06 +00:00
Markus F.X.J. Oberhumer
90161bc3a7
New ACC version.
...
committer: mfx <mfx> 1049665216 +0000
2003-04-06 21:40:16 +00:00
Markus F.X.J. Oberhumer
a1064dc2cb
New ps1/exe version from Jens.
...
committer: mfx <mfx> 1049665152 +0000
2003-04-06 21:39:12 +00:00
Markus F.X.J. Oberhumer
b8a9b321fa
Updated.
...
committer: mfx <mfx> 1049665135 +0000
2003-04-06 21:38:55 +00:00
Markus F.X.J. Oberhumer
a3e80b1628
Fixed call to typeid().
...
committer: mfx <mfx> 1049380061 +0000
2003-04-03 14:27:41 +00:00
Markus F.X.J. Oberhumer
350ebfc47d
*** empty log message ***
...
committer: mfx <mfx> 1049380046 +0000
2003-04-03 14:27:26 +00:00
Markus F.X.J. Oberhumer
b9b75c536c
*** empty log message ***
...
committer: mfx <mfx> 1049237553 +0000
2003-04-01 22:52:33 +00:00
Markus F.X.J. Oberhumer
8b74704bbf
*** empty log message ***
...
committer: mfx <mfx> 1049203016 +0000
2003-04-01 13:16:56 +00:00
Markus F.X.J. Oberhumer
bead894e49
Updated.
...
committer: mfx <mfx> 1049194128 +0000
2003-04-01 10:48:48 +00:00
John Reiser
502f9b5a00
better hadling of Linux AT_SYSINFO (32 <= a_type)
...
committer: jreiser <jreiser> 1048872136 +0000
2003-03-28 17:22:16 +00:00
Markus F.X.J. Oberhumer
cd15b7d5af
*** empty log message ***
...
committer: mfx <mfx> 1048717636 +0000
2003-03-26 22:27:16 +00:00
Markus F.X.J. Oberhumer
0c1d544e98
*** empty log message ***
...
committer: mfx <mfx> 1048663373 +0000
2003-03-26 07:22:53 +00:00
Markus F.X.J. Oberhumer
728be1867f
*** empty log message ***
...
committer: mfx <mfx> 1048662806 +0000
2003-03-26 07:13:26 +00:00
Markus F.X.J. Oberhumer
09578df46b
New ACC system.
...
committer: mfx <mfx> 1048662134 +0000
2003-03-26 07:02:14 +00:00
Markus F.X.J. Oberhumer
b29f5b7c09
*** empty log message ***
...
committer: mfx <mfx> 1048661664 +0000
2003-03-26 06:54:24 +00:00
Markus F.X.J. Oberhumer
10f602fca7
*** empty log message ***
...
committer: mfx <mfx> 1048661243 +0000
2003-03-26 06:47:23 +00:00
Markus F.X.J. Oberhumer
2f8917f450
wc/le: Refuse to pack files without relocations. This should be fixed.
...
committer: mfx <mfx> 1048283863 +0000
2003-03-21 21:57:43 +00:00
Markus F.X.J. Oberhumer
b57f48d543
Updated.
...
committer: mfx <mfx> 1046369903 +0000
2003-02-27 18:18:23 +00:00
Markus F.X.J. Oberhumer
87a4d8455d
Updated.
...
committer: mfx <mfx> 1046366795 +0000
2003-02-27 17:26:35 +00:00
Markus F.X.J. Oberhumer
b14df392fa
Updated.
...
committer: mfx <mfx> 1045574984 +0000
2003-02-18 13:29:44 +00:00
Markus F.X.J. Oberhumer
437c34a68c
Small cleanups.
...
committer: mfx <mfx> 1044946475 +0000
2003-02-11 06:54:35 +00:00
Markus F.X.J. Oberhumer
b218cec3d7
Updated for VC7.
...
committer: mfx <mfx> 1044418804 +0000
2003-02-05 04:20:04 +00:00
Markus F.X.J. Oberhumer
f19c91243a
Cleanups.
...
committer: mfx <mfx> 1044346802 +0000
2003-02-04 08:20:02 +00:00
Markus F.X.J. Oberhumer
882e1be2db
Cleanups.
...
committer: mfx <mfx> 1044346308 +0000
2003-02-04 08:11:48 +00:00
Markus F.X.J. Oberhumer
8e21c1e965
Updated.
...
committer: mfx <mfx> 1043776870 +0000
2003-01-28 18:01:10 +00:00
Markus F.X.J. Oberhumer
f3970eaed9
Updated.
...
committer: mfx <mfx> 1043694056 +0000
2003-01-27 19:00:56 +00:00
Markus F.X.J. Oberhumer
ac4b8f8617
Use MemBuffer.clear().
...
committer: mfx <mfx> 1043693892 +0000
2003-01-27 18:58:12 +00:00
Markus F.X.J. Oberhumer
51c28020de
Use a MemBuffer instead of a pointer.
...
committer: mfx <mfx> 1043693800 +0000
2003-01-27 18:56:40 +00:00
Markus F.X.J. Oberhumer
fd525ae7df
Portability fixes.
...
committer: mfx <mfx> 1043693750 +0000
2003-01-27 18:55:50 +00:00
Markus F.X.J. Oberhumer
a282171318
Rewritten.
...
committer: mfx <mfx> 1043693646 +0000
2003-01-27 18:54:06 +00:00
Markus F.X.J. Oberhumer
c3040d1636
Updated.
...
committer: mfx <mfx> 1043693611 +0000
2003-01-27 18:53:31 +00:00
John Reiser
c76c07aea0
prepare to allow multiple decompressors and multiple unfilters
...
committer: jreiser <jreiser> 1043441624 +0000
2003-01-24 20:53:44 +00:00
László Molnár
1282ed333a
djgpp2/coff updates
...
committer: ml1050 <ml1050> 1043312061 +0000
2003-01-23 08:54:21 +00:00
Markus F.X.J. Oberhumer
32e76e88cf
Updated.
...
committer: mfx <mfx> 1043211831 +0000
2003-01-22 05:03:51 +00:00
Markus F.X.J. Oberhumer
fc0d3ff118
Updated.
...
committer: mfx <mfx> 1043101129 +0000
2003-01-20 22:18:49 +00:00
Markus F.X.J. Oberhumer
0bd05c0d67
Updated.
...
committer: mfx <mfx> 1042994191 +0000
2003-01-19 16:36:31 +00:00
Markus F.X.J. Oberhumer
ff2c5300b8
New upstream version.
...
committer: mfx <mfx> 1042993977 +0000
2003-01-19 16:32:57 +00:00
Markus F.X.J. Oberhumer
a38989dfbf
Updated.
...
committer: mfx <mfx> 1042930217 +0000
2003-01-18 22:50:17 +00:00
Markus F.X.J. Oberhumer
e387c6bc56
Portability updates.
...
committer: mfx <mfx> 1042930101 +0000
2003-01-18 22:48:21 +00:00
John Reiser
5eb81c0ec4
omit unfilter when .b_ftid==0
...
committer: jreiser <jreiser> 1042755704 +0000
2003-01-16 22:21:44 +00:00
Markus F.X.J. Oberhumer
f92b617c43
Updated.
...
committer: mfx <mfx> 1042742278 +0000
2003-01-16 18:37:58 +00:00
Markus F.X.J. Oberhumer
8f25c72085
Consistently use const Class &' instead of Class const &'.
...
committer: mfx <mfx> 1042741665 +0000
2003-01-16 18:27:45 +00:00
Markus F.X.J. Oberhumer
7860e7a249
Updated.
...
committer: mfx <mfx> 1042741465 +0000
2003-01-16 18:24:25 +00:00
Markus F.X.J. Oberhumer
a2e3ceb8c8
Portability updates.
...
committer: mfx <mfx> 1042738038 +0000
2003-01-16 17:27:18 +00:00
Markus F.X.J. Oberhumer
e96ad21db1
Added support for Intel C++ 7.0.
...
committer: mfx <mfx> 1042686101 +0000
2003-01-16 03:01:41 +00:00
Markus F.X.J. Oberhumer
888ac8a220
Updated.
...
committer: mfx <mfx> 1042654719 +0000
2003-01-15 18:18:39 +00:00
Markus F.X.J. Oberhumer
29db8bca3a
Major cleanup.
...
committer: mfx <mfx> 1042637889 +0000
2003-01-15 13:38:09 +00:00
Markus F.X.J. Oberhumer
63d49f0143
Updated.
...
committer: mfx <mfx> 1042637875 +0000
2003-01-15 13:37:55 +00:00
Markus F.X.J. Oberhumer
378224c6ba
Updated.
...
committer: mfx <mfx> 1042634011 +0000
2003-01-15 12:33:31 +00:00
Markus F.X.J. Oberhumer
2f3e7a82b5
Detabified.
...
committer: mfx <mfx> 1042632555 +0000
2003-01-15 12:09:15 +00:00
Markus F.X.J. Oberhumer
960f020277
Fixed typos.
...
committer: mfx <mfx> 1042632460 +0000
2003-01-15 12:07:40 +00:00
Markus F.X.J. Oberhumer
6962da718c
Added some calls to MemBuffer::checkState().
...
committer: mfx <mfx> 1042580584 +0000
2003-01-14 21:43:04 +00:00
Markus F.X.J. Oberhumer
42575d9f57
Use NULL instead of 0.
...
committer: mfx <mfx> 1042580552 +0000
2003-01-14 21:42:32 +00:00
Markus F.X.J. Oberhumer
03fb0d95c6
Rewrote MemBuffer to do some internal checks.
...
committer: mfx <mfx> 1042580463 +0000
2003-01-14 21:41:03 +00:00
Markus F.X.J. Oberhumer
beb766b005
Major cleanup. Jens, please have a look.
...
committer: mfx <mfx> 1042576817 +0000
2003-01-14 20:40:17 +00:00
Markus F.X.J. Oberhumer
29c1f67057
Cleanup.
...
committer: mfx <mfx> 1042576530 +0000
2003-01-14 20:35:30 +00:00
Markus F.X.J. Oberhumer
a709b38065
Use new file+MemBuffer methods.
...
committer: mfx <mfx> 1042576321 +0000
2003-01-14 20:32:01 +00:00
Markus F.X.J. Oberhumer
ec5840fb2a
Added overloaded write functions for MemBuffer.
...
committer: mfx <mfx> 1042576236 +0000
2003-01-14 20:30:36 +00:00
Markus F.X.J. Oberhumer
9511e3c9b1
Added ALIGN_GAP(a,b) marco.
...
committer: mfx <mfx> 1042576135 +0000
2003-01-14 20:28:55 +00:00
Markus F.X.J. Oberhumer
9190e7d51a
Use new allocForCompression().
...
committer: mfx <mfx> 1042575473 +0000
2003-01-14 20:17:53 +00:00
Markus F.X.J. Oberhumer
cff830c43b
Cleanup.
...
committer: mfx <mfx> 1042575285 +0000
2003-01-14 20:14:45 +00:00
Markus F.X.J. Oberhumer
e31c45dc10
Allow a number of extra bytes in the allocForXXX() methods.
...
committer: mfx <mfx> 1042575213 +0000
2003-01-14 20:13:33 +00:00
Markus F.X.J. Oberhumer
e1da733810
Updated.
...
committer: mfx <mfx> 1042567596 +0000
2003-01-14 18:06:36 +00:00
Markus F.X.J. Oberhumer
b8c34036a5
Cleanups.
...
committer: mfx <mfx> 1042565088 +0000
2003-01-14 17:24:48 +00:00
Markus F.X.J. Oberhumer
d771f219f0
Bumped version.
...
committer: mfx <mfx> 1042565001 +0000
2003-01-14 17:23:21 +00:00
Markus F.X.J. Oberhumer
d8280343f9
Makefiles updated.
...
committer: mfx <mfx> 1042564758 +0000
2003-01-14 17:19:18 +00:00
Markus F.X.J. Oberhumer
c7b9395866
Detabified.
...
committer: mfx <mfx> 1042564671 +0000
2003-01-14 17:17:51 +00:00
Markus F.X.J. Oberhumer
992ceee52b
CLeanups.
...
committer: mfx <mfx> 1042480204 +0000
2003-01-13 17:50:04 +00:00
Markus F.X.J. Oberhumer
2162a01848
Enter 2003.
...
committer: mfx <mfx> 1042478199 +0000
2003-01-13 17:16:39 +00:00
Markus F.X.J. Oberhumer
102e0f0a98
Re-worked the Makefiles.
...
committer: mfx <mfx> 1042477974 +0000
2003-01-13 17:12:54 +00:00
John Reiser
4e0967e0a1
Code to supply a "linking view" for /usr/bin/strip.
...
(Not used today because yet another bug is worse.) See
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=81644
committer: jreiser <jreiser> 1042341933 +0000
2003-01-12 03:25:33 +00:00
John Reiser
73dc4eede0
Elf_LE32_Shdr; set_native16()
...
p_elf.h p_unix.h
committer: jreiser <jreiser> 1042341777 +0000
2003-01-12 03:22:57 +00:00
Markus F.X.J. Oberhumer
5e5ea9f6e4
Cleanups.
...
committer: mfx <mfx> 1041858220 +0000
2003-01-06 13:03:40 +00:00
Markus F.X.J. Oberhumer
e537f25857
Default to `-cpu=i686'.
...
committer: mfx <mfx> 1041858189 +0000
2003-01-06 13:03:09 +00:00
Markus F.X.J. Oberhumer
47aea88c27
Whitespace changes.
...
committer: mfx <mfx> 1041858159 +0000
2003-01-06 13:02:39 +00:00
Markus F.X.J. Oberhumer
0237bf8915
Updated.
...
committer: mfx <mfx> 1041858132 +0000
2003-01-06 13:02:12 +00:00
Markus F.X.J. Oberhumer
3a7032f21c
Updated.
...
committer: mfx <mfx> 1041162781 +0000
2002-12-29 11:53:01 +00:00
John Reiser
54d01790b5
Linux 2.5.53 has some Elf32_auxv_t.a_type >= 32
...
committer: jreiser <jreiser> 1040352519 +0000
2002-12-20 02:48:39 +00:00
John Reiser
fb3375112e
[B]VMLINUZ for 0x40 series filters
...
packerf.cpp p_vmlinz.cpp
committer: jreiser <jreiser> 1039144160 +0000
2002-12-06 03:09:20 +00:00
John Reiser
554f22a14f
ckt32 for 0x40 series filters
...
committer: jreiser <jreiser> 1039144122 +0000
2002-12-06 03:08:42 +00:00
Markus F.X.J. Oberhumer
eb6a6e3909
Cleanups.
...
committer: mfx <mfx> 1037132993 +0000
2002-11-12 20:29:53 +00:00
Markus F.X.J. Oberhumer
041947507f
Small patch from Jens.
...
committer: mfx <mfx> 1037131376 +0000
2002-11-12 20:02:56 +00:00
Markus F.X.J. Oberhumer
ff03ac17b2
Cosmetic changes.
...
committer: mfx <mfx> 1037106750 +0000
2002-11-12 13:12:30 +00:00
John Reiser
12c6cd8021
Comment on current state of stub/fold* vs decompress, and independent unfilter.
...
p_lx_elf.cpp p_lx_exc.cpp
committer: jreiser <jreiser> 1037072124 +0000
2002-11-12 03:35:24 +00:00
John Reiser
de6e8c8020
upx_itoa() in assembler to enforce no relocation
...
Makefile l_lx_exec.c upx_itoa.asm
committer: jreiser <jreiser> 1037070863 +0000
2002-11-12 03:14:23 +00:00
Markus F.X.J. Oberhumer
f3b64cfe78
Bumped version.
...
committer: mfx <mfx> 1037068905 +0000
2002-11-12 02:41:45 +00:00
Markus F.X.J. Oberhumer
1e8214cd3f
Use `volatile' to make the division relocatible.
...
committer: mfx <mfx> 1037059592 +0000
2002-11-12 00:06:32 +00:00
Markus F.X.J. Oberhumer
7802257700
Portability fixes.
...
committer: mfx <mfx> 1037058393 +0000
2002-11-11 23:46:33 +00:00
Markus F.X.J. Oberhumer
60031bed47
Disable filters if we have more than one block.
...
committer: mfx <mfx> 1037024125 +0000
2002-11-11 14:15:25 +00:00
Markus F.X.J. Oberhumer
d7e795a731
Set blocksize in canPack().
...
committer: mfx <mfx> 1036984678 +0000
2002-11-11 03:17:58 +00:00
Markus F.X.J. Oberhumer
c0cccd6196
Whitespace changes.
...
committer: mfx <mfx> 1036984538 +0000
2002-11-11 03:15:38 +00:00
Markus F.X.J. Oberhumer
6cd0d5d779
Cleanups.
...
committer: mfx <mfx> 1036984522 +0000
2002-11-11 03:15:22 +00:00
Markus F.X.J. Oberhumer
f66d8f98c9
Changed year to 2002.
...
committer: mfx <mfx> 1036971635 +0000
2002-11-10 23:40:35 +00:00
Markus F.X.J. Oberhumer
a94a3e9741
If testOverlappingDecompression() fails, just treat the block as
...
non-compressible.
committer: mfx <mfx> 1036971145 +0000
2002-11-10 23:32:25 +00:00
Markus F.X.J. Oberhumer
c798242bfe
Updated.
...
committer: mfx <mfx> 1036969636 +0000
2002-11-10 23:07:16 +00:00
Markus F.X.J. Oberhumer
80622d4037
Removed misleading "FIXME".
...
committer: mfx <mfx> 1036968698 +0000
2002-11-10 22:51:38 +00:00
John Reiser
5ac2eed3d9
::unpackExtent() honors per-block filter if newer 12-byte b_info
...
committer: jreiser <jreiser> 1036876078 +0000
2002-11-09 21:07:58 +00:00
John Reiser
33ec757c41
AT_NUMBER grew; also fix %edx clobbered during copy of auxv
...
committer: jreiser <jreiser> 1036866268 +0000
2002-11-09 18:24:28 +00:00
Markus F.X.J. Oberhumer
b6c84d19ab
Cleanups.
...
committer: mfx <mfx> 1036860405 +0000
2002-11-09 16:46:45 +00:00
Markus F.X.J. Oberhumer
f91849ec4b
New version from Jens.
...
committer: mfx <mfx> 1036855572 +0000
2002-11-09 15:26:12 +00:00
Markus F.X.J. Oberhumer
46ae6e1c2a
Fixed typo in comment.
...
committer: mfx <mfx> 1036855554 +0000
2002-11-09 15:25:54 +00:00
John Reiser
7cbf7af6e8
cleanup ui pass count
...
committer: jreiser <jreiser> 1036816411 +0000
2002-11-09 04:33:31 +00:00
John Reiser
7f69f5937a
be gentler, use throwAlreadyPackedByUPX()
...
committer: jreiser <jreiser> 1036784004 +0000
2002-11-08 19:33:24 +00:00
John Reiser
e0ad859eef
pack1() re-allocates ibuf after setting blocksize
...
committer: jreiser <jreiser> 1036733697 +0000
2002-11-08 05:34:57 +00:00
Markus F.X.J. Oberhumer
f5a2641ea1
Changed version number and date.
...
committer: mfx <mfx> 1036688381 +0000
2002-11-07 16:59:41 +00:00
Markus F.X.J. Oberhumer
ccaff85870
Updated.
...
committer: mfx <mfx> 1036688362 +0000
2002-11-07 16:59:22 +00:00
Markus F.X.J. Oberhumer
af65e40986
Added some tests to sanity check.
...
committer: mfx <mfx> 1035667330 +0000
2002-10-26 21:22:10 +00:00
Markus F.X.J. Oberhumer
f41e3c01f4
Added be24.
...
committer: mfx <mfx> 1035661372 +0000
2002-10-26 19:42:52 +00:00
Markus F.X.J. Oberhumer
e8b97a12a9
Updated.
...
committer: mfx <mfx> 1035473217 +0000
2002-10-24 15:26:57 +00:00
Markus F.X.J. Oberhumer
8744f6bd7f
Added a check for unsupported coff headers.
...
committer: mfx <mfx> 1035473178 +0000
2002-10-24 15:26:18 +00:00
Markus F.X.J. Oberhumer
204f4eefd8
Cleanup.
...
committer: mfx <mfx> 1035300869 +0000
2002-10-22 15:34:29 +00:00
Markus F.X.J. Oberhumer
7af193df77
Added read() functions that take a MemBuffer as arg.
...
committer: mfx <mfx> 1035297017 +0000
2002-10-22 14:30:17 +00:00
Markus F.X.J. Oberhumer
b082a6f1da
New version from Jens.
...
committer: mfx <mfx> 1035190264 +0000
2002-10-21 08:51:04 +00:00
Markus F.X.J. Oberhumer
ce1e5b5ae1
Updated.
...
committer: mfx <mfx> 1035187919 +0000
2002-10-21 08:11:59 +00:00
Markus F.X.J. Oberhumer
565360a3f2
Cleanups.
...
committer: mfx <mfx> 1034942507 +0000
2002-10-18 12:01:47 +00:00
John Reiser
69cec874a1
checkPatch() resets
...
p_lx_elf.cpp p_lx_exc.cpp p_unix.cpp
committer: jreiser <jreiser> 1034906580 +0000
2002-10-18 02:03:00 +00:00
John Reiser
66206e8dd7
%include n2e_d32.ash
...
Makefile l_vmlinz.asm
committer: jreiser <jreiser> 1034906454 +0000
2002-10-18 02:00:54 +00:00
John Reiser
44c1879e27
use n2e_d32.ash, n2e_d32.asy
...
Makefile l_lx_elf86.asm l_lx_exec86.asm l_lx_sh86.asm
committer: jreiser <jreiser> 1034834452 +0000
2002-10-17 06:00:52 +00:00
John Reiser
a9bb95fefd
prefer filters 0x49,0x46 until problems with 0x2Y and 0x3Y are diagnosed
...
committer: jreiser <jreiser> 1034794465 +0000
2002-10-16 18:54:25 +00:00
John Reiser
4ad2242e96
half-way patch (don't abort upx) for filters 0x2Y and 0x3Y; needs work
...
committer: jreiser <jreiser> 1034794337 +0000
2002-10-16 18:52:17 +00:00
Markus F.X.J. Oberhumer
1e1e333d61
Cleanups.
...
committer: mfx <mfx> 1034748563 +0000
2002-10-16 06:09:23 +00:00
Markus F.X.J. Oberhumer
81efdd41f4
Updated.
...
committer: mfx <mfx> 1034748530 +0000
2002-10-16 06:08:50 +00:00
Markus F.X.J. Oberhumer
ac245b39d5
Re-synced `identtiny' from 1.2 branch.
...
committer: mfx <mfx> 1034741770 +0000
2002-10-16 04:16:10 +00:00
Markus F.X.J. Oberhumer
cecfaaf63e
Cleanups.
...
committer: mfx <mfx> 1034741718 +0000
2002-10-16 04:15:18 +00:00
Markus F.X.J. Oberhumer
8d37bb4469
Cleanups.
...
committer: mfx <mfx> 1034719891 +0000
2002-10-15 22:11:31 +00:00
Markus F.X.J. Oberhumer
b710f2d69f
Set correct header.
...
committer: mfx <mfx> 1034719851 +0000
2002-10-15 22:10:51 +00:00
John Reiser
d96646b0e0
save 3 bytes by not clearing [AT_NULL].a_un.a_ptr
...
committer: jreiser <jreiser> 1034698533 +0000
2002-10-15 16:15:33 +00:00
John Reiser
c069efaa1b
decompress upx-1.22 linux/386 by e_entry==+0x80
...
committer: jreiser <jreiser> 1034698283 +0000
2002-10-15 16:11:23 +00:00
Markus F.X.J. Oberhumer
25b12eb38a
Updated.
...
committer: mfx <mfx> 1034649809 +0000
2002-10-15 02:43:29 +00:00
Markus F.X.J. Oberhumer
6779559ba2
Default to NRV2E instead of NRV2D.
...
committer: mfx <mfx> 1034649545 +0000
2002-10-15 02:39:05 +00:00
Markus F.X.J. Oberhumer
4e411eab59
Enabled ALG_NRV2E.
...
committer: mfx <mfx> 1034637236 +0000
2002-10-14 23:13:56 +00:00
Markus F.X.J. Oberhumer
1ba9ce283b
Added largefile support under Linux.
...
committer: mfx <mfx> 1034637175 +0000
2002-10-14 23:12:55 +00:00
Markus F.X.J. Oberhumer
bd191af41b
Fixed canUnpackVersion().
...
committer: mfx <mfx> 1034637154 +0000
2002-10-14 23:12:34 +00:00
Markus F.X.J. Oberhumer
13f4f7ffdd
Added.
...
committer: mfx <mfx> 1034628410 +0000
2002-10-14 20:46:50 +00:00
Markus F.X.J. Oberhumer
db62588d47
Build updates.
...
committer: mfx <mfx> 1034620929 +0000
2002-10-14 18:42:09 +00:00
Markus F.X.J. Oberhumer
17325c7939
Updated.
...
committer: mfx <mfx> 1034619575 +0000
2002-10-14 18:19:35 +00:00
Markus F.X.J. Oberhumer
e275e7614e
Whitespace changes.
...
committer: mfx <mfx> 1034619052 +0000
2002-10-14 18:10:52 +00:00
Markus F.X.J. Oberhumer
d383b1e1a3
Docs updates.
...
committer: mfx <mfx> 1034618834 +0000
2002-10-14 18:07:14 +00:00
Markus F.X.J. Oberhumer
973579f462
Upgraded to latest version.
...
committer: mfx <mfx> 1034618509 +0000
2002-10-14 18:01:49 +00:00
Markus F.X.J. Oberhumer
05db38225a
Disabled the untested filters for now.
...
committer: mfx <mfx> 1034617837 +0000
2002-10-14 17:50:37 +00:00
Markus F.X.J. Oberhumer
3b771656bb
Fixed typo.
...
committer: mfx <mfx> 1034617446 +0000
2002-10-14 17:44:06 +00:00
Markus F.X.J. Oberhumer
fe531960ab
New ps1/exe version from Jens. Needs new asm5900-mfx5.
...
committer: mfx <mfx> 1034617199 +0000
2002-10-14 17:39:59 +00:00
John Reiser
accbc5d809
fix parameter type nit
...
committer: jreiser <jreiser> 1033096360 +0000
2002-09-27 03:12:40 +00:00
Markus F.X.J. Oberhumer
fa5b74b763
Added some files to `clean' rule.
...
committer: mfx <mfx> 1033088856 +0000
2002-09-27 01:07:36 +00:00
John Reiser
124cdfda37
new option "--ptinterp" for linux/elf386 compressing PT_INTERP file
...
p_lx_elf.cpp options.h main.cpp
committer: jreiser <jreiser> 1032629299 +0000
2002-09-21 17:28:19 +00:00
John Reiser
8ad3d01d81
Prepare for ability to compress PT_INTERP program.
...
Also save 16 bytes at cost of incompatible with glibc-2.1.1 (1999-12-29).
fold_elf86.asm l_lx_elf.c
committer: jreiser <jreiser> 1032625240 +0000
2002-09-21 16:20:40 +00:00
Markus F.X.J. Oberhumer
448baac0f4
Updated.
...
committer: mfx <mfx> 1031933579 +0000
2002-09-13 16:12:59 +00:00
Markus F.X.J. Oberhumer
e225d77146
Bumped version in getVersion() for all formats.
...
committer: mfx <mfx> 1031846916 +0000
2002-09-12 16:08:36 +00:00
Markus F.X.J. Oberhumer
74a2d9486b
Initial NRV2E support. Pretty much untested.
...
committer: mfx <mfx> 1031841557 +0000
2002-09-12 14:39:17 +00:00
Markus F.X.J. Oberhumer
6b74aa2673
Small updates.
...
committer: mfx <mfx> 1031793636 +0000
2002-09-12 01:20:36 +00:00
Markus F.X.J. Oberhumer
9f4a0fedbf
Updated.
...
committer: mfx <mfx> 1031578030 +0000
2002-09-09 13:27:10 +00:00
Markus F.X.J. Oberhumer
9b079b371d
Resynced with upx 1.2 branch.
...
committer: mfx <mfx> 1031577224 +0000
2002-09-09 13:13:44 +00:00
Markus F.X.J. Oberhumer
1439dace83
Put into the present ;-)
...
committer: mfx <mfx> 1031319643 +0000
2002-09-06 13:40:43 +00:00
Markus F.X.J. Oberhumer
44a6ac4c2a
Minor editing.
...
committer: mfx <mfx> 1031319451 +0000
2002-09-06 13:37:31 +00:00
Markus F.X.J. Oberhumer
08826398af
Fixed section names.
...
committer: mfx <mfx> 1030883709 +0000
2002-09-01 12:35:09 +00:00
Markus F.X.J. Oberhumer
5fccfc65ec
Added some assertions.
...
committer: mfx <mfx> 1030883678 +0000
2002-09-01 12:34:38 +00:00
Markus F.X.J. Oberhumer
91d64a8871
Removed unupx.h.
...
committer: mfx <mfx> 1030786943 +0000
2002-08-31 09:42:23 +00:00
Markus F.X.J. Oberhumer
b9e92ba9fa
Cleanups.
...
committer: mfx <mfx> 1030605282 +0000
2002-08-29 07:14:42 +00:00
Markus F.X.J. Oberhumer
d88078aa28
Added attribute_aligned.
...
committer: mfx <mfx> 1030604446 +0000
2002-08-29 07:00:46 +00:00
Markus F.X.J. Oberhumer
188b952621
The name of this format is "ps/exe".
...
committer: mfx <mfx> 1030604353 +0000
2002-08-29 06:59:13 +00:00
Markus F.X.J. Oberhumer
804a8bb853
Some ps/exe docs from Jens, somewhat edited by me.
...
committer: mfx <mfx> 1030604257 +0000
2002-08-29 06:57:37 +00:00
Markus F.X.J. Oberhumer
ab229ac261
CVS test.
...
committer: mfx <mfx> 1028264330 +0000
2002-08-02 04:58:50 +00:00
Markus F.X.J. Oberhumer
ff2bbb7a31
New version from Jens.
...
committer: mfx <mfx> 1028263994 +0000
2002-08-02 04:53:14 +00:00
Markus F.X.J. Oberhumer
c8fb0994ed
Removed unused variable.
...
committer: mfx <mfx> 1028139040 +0000
2002-07-31 18:10:40 +00:00
Markus F.X.J. Oberhumer
fd13f41294
New version from Jens.
...
committer: mfx <mfx> 1028128175 +0000
2002-07-31 15:09:35 +00:00
Markus F.X.J. Oberhumer
4b15d30c2a
Adapted for new asm5900-mfx4.
...
committer: mfx <mfx> 1027601835 +0000
2002-07-25 12:57:15 +00:00
Markus F.X.J. Oberhumer
076d862ee0
Fixed syntax error.
...
committer: mfx <mfx> 1027598532 +0000
2002-07-25 12:02:12 +00:00
Markus F.X.J. Oberhumer
f7d66c8b50
Added a check for large file size.
...
committer: mfx <mfx> 1027598441 +0000
2002-07-25 12:00:41 +00:00
Markus F.X.J. Oberhumer
1ef25b356c
Be quiet when using `-qqq'.
...
committer: mfx <mfx> 1027556040 +0000
2002-07-25 00:14:00 +00:00
Markus F.X.J. Oberhumer
7e06892ad7
Correctly set the exit code.
...
committer: mfx <mfx> 1027556018 +0000
2002-07-25 00:13:38 +00:00
John Reiser
f1ccb85658
adapt to binutils-of-the-moment
...
committer: jreiser <jreiser> 1027548985 +0000
2002-07-24 22:16:25 +00:00
Markus F.X.J. Oberhumer
a08b3ee882
Restored revision 1.10.
...
committer: mfx <mfx> 1027541786 +0000
2002-07-24 20:16:26 +00:00
Markus F.X.J. Oberhumer
f0fafa3ba7
Temporarily commented out some code.
...
committer: mfx <mfx> 1027541308 +0000
2002-07-24 20:08:28 +00:00
Markus F.X.J. Oberhumer
9c1feb24e6
Added get_xxxx_signed() functions.
...
committer: mfx <mfx> 1027515231 +0000
2002-07-24 12:53:51 +00:00
Markus F.X.J. Oberhumer
f4aa80e6b4
Big re-sync with UPX 1.2 branch.
...
committer: mfx <mfx> 1026839174 +0000
2002-07-16 17:06:14 +00:00
Markus F.X.J. Oberhumer
14d22d29b1
Big re-sync with UPX 1.2 branch.
...
committer: mfx <mfx> 1026836316 +0000
2002-07-16 16:18:36 +00:00
Markus F.X.J. Oberhumer
666e8c2f2f
Big re-sync with UPX 1.2 branch.
...
committer: mfx <mfx> 1026835258 +0000
2002-07-16 16:00:58 +00:00
Markus F.X.J. Oberhumer
4a462f3c9a
Updated.
...
committer: mfx <mfx> 1026820456 +0000
2002-07-16 11:54:16 +00:00
Markus F.X.J. Oberhumer
789cfea682
Checked in psx/exe patches from Jens.
...
committer: mfx <mfx> 1026820270 +0000
2002-07-16 11:51:10 +00:00
John Reiser
ead8daf26c
beware PT_LOAD.p_filesz==0
...
committer: jreiser <jreiser> 1009776680 +0000
2001-12-31 05:31:20 +00:00
John Reiser
2dfb82d5b9
Linux does not grow the stack below esp, so all accesses must be >= esp.
...
fold_elf86.asm fold_sh86.asm l_lx_sep86.asm
committer: jreiser <jreiser> 1006463120 +0000
2001-11-22 21:05:20 +00:00
John Reiser
83bcbb8299
internal calling sequences save 37 bytes (24 when compressed)
...
committer: jreiser <jreiser> 994972276 +0000
2001-07-12 21:11:16 +00:00
John Reiser
d85f48fb97
save 2 bytes when compressed
...
committer: jreiser <jreiser> 994968843 +0000
2001-07-12 20:14:03 +00:00
John Reiser
e4660b8608
need to search auxv for AT_PHDR
...
committer: jreiser <jreiser> 994946170 +0000
2001-07-12 13:56:10 +00:00
John Reiser
96141d82f4
Spend some bytes of code in stub to eliminate wasted stack space.
...
(Choose between this revision and previous, according to taste.)
fold_elf86.asm l_lx_elf.c
committer: jreiser <jreiser> 994887023 +0000
2001-07-11 21:30:23 +00:00
John Reiser
ef17dc10ca
Fix Elf_auxv table. upx was duplicating AT_PHDR (and others)
...
because Linux 2.4.5 supplies many more AT_ entries than before.
First noticed by Sebastian <scut@nb.in-berlin.de >.
fold_elf86.asm fold_sh86.asm l_lx_sep86.asm
l_lx_elf.c l_lx_sh.c l_lx_sep.c
committer: jreiser <jreiser> 994871296 +0000
2001-07-11 17:08:16 +00:00
John Reiser
caca5ffa12
keep zeroed stack as clean as possible (Sebastian <scut@nb.in-berlin.de>)
...
l_lx_sep86.asm fold_elf86.asm
committer: jreiser <jreiser> 994702928 +0000
2001-07-09 18:22:08 +00:00
Markus F.X.J. Oberhumer
e08d3858be
Upgraded to ELFkickers 2.0.
...
committer: mfx <mfx> 987374332 +0000
2001-04-15 22:38:52 +00:00
Markus F.X.J. Oberhumer
0e063b9759
Whitespace changes.
...
committer: mfx <mfx> 984629032 +0000
2001-03-15 04:03:52 +00:00
Markus F.X.J. Oberhumer
6dbdef9d57
Split some string constants to avoid possible RCS keyword expansions.
...
committer: mfx <mfx> 983457621 +0000
2001-03-01 14:40:21 +00:00
Markus F.X.J. Oberhumer
81c58d9727
New version.
...
committer: mfx <mfx> 983453010 +0000
2001-03-01 13:23:30 +00:00
Markus F.X.J. Oberhumer
54701e0c46
Updated.
...
committer: mfx <mfx> 983452964 +0000
2001-03-01 13:22:44 +00:00
Markus F.X.J. Oberhumer
069417499f
Moved the Packer's filter handling into the new source file packerf.cpp.
...
committer: mfx <mfx> 983452951 +0000
2001-03-01 13:22:31 +00:00
Markus F.X.J. Oberhumer
5aec670621
Catch std::bad_alloc and print a better error message in this case.
...
committer: mfx <mfx> 983320394 +0000
2001-02-28 00:33:14 +00:00
Markus F.X.J. Oberhumer
16e9f168b9
Updated.
...
committer: mfx <mfx> 983320361 +0000
2001-02-28 00:32:41 +00:00
Markus F.X.J. Oberhumer
8897c3d4cb
Added `const' to catched exception.
...
committer: mfx <mfx> 983114224 +0000
2001-02-25 15:17:04 +00:00
Markus F.X.J. Oberhumer
48a520708b
New upstream version.
...
committer: mfx <mfx> 983109842 +0000
2001-02-25 14:04:02 +00:00
Markus F.X.J. Oberhumer
4a142f35f5
Renamed MemBuffer::free() to dealloc() in order to better support
...
malloc debugging libraries like mpatrol.
committer: mfx <mfx> 983109777 +0000
2001-02-25 14:02:57 +00:00
Markus F.X.J. Oberhumer
a30bb7db20
Updated.
...
committer: mfx <mfx> 983109539 +0000
2001-02-25 13:58:59 +00:00
Markus F.X.J. Oberhumer
61842b4bcb
Updated from UPX 1.07 release.
...
committer: mfx <mfx> 982688397 +0000
2001-02-20 16:59:57 +00:00
Markus F.X.J. Oberhumer
0cae01772c
Updated from UPX 1.07 release.
...
committer: mfx <mfx> 982688016 +0000
2001-02-20 16:53:36 +00:00
Markus F.X.J. Oberhumer
6a95c11cf9
Updated from UPX 1.07 release.
...
committer: mfx <mfx> 982687495 +0000
2001-02-20 16:44:55 +00:00
Markus F.X.J. Oberhumer
401567f852
Removed the optional `off' parameter from the [gs]et_[bl]e{16,24,32} functions.
...
committer: mfx <mfx> 981982200 +0000
2001-02-12 12:50:00 +00:00
Markus F.X.J. Oberhumer
475326691d
Added a call to verifyOverlappingDecompression().
...
committer: mfx <mfx> 981981688 +0000
2001-02-12 12:41:28 +00:00
John Reiser
a63b02ab69
make "upx -d" decompression backward compatible to 8-byte b_info
...
p_lx_elf.h p_lx_elf.cpp p_unix.cpp
committer: jreiser <jreiser> 981752402 +0000
2001-02-09 21:00:02 +00:00
John Reiser
2ff824e631
get rid of PT_DYNAMIC: not worth the space; instead, use "upx -d" then ldd
...
p_lx_exc.h p_lx_elf.cpp p_lx_exc.cpp p_lx_sh.cpp
stub/l_lx_elf.c stub/l_lx_elf86.lds stub/fold_elf86.asm
committer: jreiser <jreiser> 981747384 +0000
2001-02-09 19:36:24 +00:00
John Reiser
e866b2231f
move b_len from PackHeader to PackUnix
...
packer.h p_unix.h p_unix.cpp p_lx_elf.cpp p_lx_exc.cpp
committer: jreiser <jreiser> 981741734 +0000
2001-02-09 18:02:14 +00:00
Markus F.X.J. Oberhumer
451487ef80
Added an assertion.
...
committer: mfx <mfx> 981702739 +0000
2001-02-09 07:12:19 +00:00
Markus F.X.J. Oberhumer
4d64bd7e66
Added UPX_VERSION_STRING4, so that the size of the stubs is not affected
...
by versions like "x.yy.zz beta".
committer: mfx <mfx> 981702627 +0000
2001-02-09 07:10:27 +00:00
Markus F.X.J. Oberhumer
2e21de073d
Updated.
...
committer: mfx <mfx> 981587564 +0000
2001-02-07 23:12:44 +00:00
Markus F.X.J. Oberhumer
8675f378b6
Small cleanups - no functional changes.
...
committer: mfx <mfx> 981586753 +0000
2001-02-07 22:59:13 +00:00
Markus F.X.J. Oberhumer
238a369948
Cleanups.
...
committer: mfx <mfx> 981586521 +0000
2001-02-07 22:55:21 +00:00
Markus F.X.J. Oberhumer
7db6c25c6a
Updated.
...
committer: mfx <mfx> 981586509 +0000
2001-02-07 22:55:09 +00:00
Markus F.X.J. Oberhumer
bcbc59f04e
Updated some comments.
...
committer: mfx <mfx> 981586421 +0000
2001-02-07 22:53:41 +00:00
Markus F.X.J. Oberhumer
1f1f03eaf4
Removed trailing whitespace.
...
committer: mfx <mfx> 981586094 +0000
2001-02-07 22:48:14 +00:00
Markus F.X.J. Oberhumer
c9a1173698
Detabified.
...
committer: mfx <mfx> 981585982 +0000
2001-02-07 22:46:22 +00:00
Markus F.X.J. Oberhumer
3ba4cd5919
Avoid a compiler warning.
...
committer: mfx <mfx> 981585719 +0000
2001-02-07 22:41:59 +00:00
Markus F.X.J. Oberhumer
2c9f6b28f7
Added some constants and options for win32/pe resource types.
...
committer: mfx <mfx> 981585673 +0000
2001-02-07 22:41:13 +00:00
László Molnár
79aff4c12d
Corrected tls callback handling.
...
Fixed a rare bug in relocation handling.
Filters need an addvalue for this format.
Experimental fix for SizeOfHeaders > 0x1000.
Check for superfluous data between sections.
committer: ml1050 <ml1050> 981241024 +0000
2001-02-03 22:57:04 +00:00
John Reiser
40fddf1715
Put upx stub loader at high end of ELF output file on linux,
...
and allow for block-by-block specification of filter and parameters.
linker.cpp linker.h mem.cpp mem.h p_elf.h
p_lx_elf.cpp p_lx_elf.h
p_lx_exc.cpp p_lx_exc.h
p_lx_sh.cpp p_lx_sh.h
p_unix.cpp p_unix.h
packer.cpp packer.h
stub/fold_elf86.asm stub/fold_exec86.asm stub/fold_sh86.asm
stub/l_lx_elf.c stub/l_lx_elf86.asm stub/l_lx_elf86.lds
stub/l_lx_exec.c stub/l_lx_exec86.asm stub/l_lx_exec86.lds
stub/l_lx_sh.c stub/l_lx_sh86.asm stub/l_lx_sh86.lds
stub/linux.hh
committer: jreiser <jreiser> 981084316 +0000
2001-02-02 03:25:16 +00:00
Markus F.X.J. Oberhumer
9005e50049
Check upx_adler32() arguments.
...
committer: mfx <mfx> 980888983 +0000
2001-01-30 21:09:43 +00:00
Markus F.X.J. Oberhumer
dc7493e283
Use the overloaded upx_adler32() function.
...
committer: mfx <mfx> 980851465 +0000
2001-01-30 10:44:25 +00:00
Markus F.X.J. Oberhumer
8f65fc1ab7
Changed an error message.
...
committer: mfx <mfx> 980616295 +0000
2001-01-27 17:24:55 +00:00
Markus F.X.J. Oberhumer
3d732625a7
Cleanups.
...
committer: mfx <mfx> 980615091 +0000
2001-01-27 17:04:51 +00:00
Markus F.X.J. Oberhumer
5f678d10cb
Some DOS updates.
...
committer: mfx <mfx> 980615078 +0000
2001-01-27 17:04:38 +00:00
Markus F.X.J. Oberhumer
2a55ac04ce
Disable TLS callback check for now.
...
committer: mfx <mfx> 980615053 +0000
2001-01-27 17:04:13 +00:00
Markus F.X.J. Oberhumer
2feb5a47ac
Decrease decompressor stack size a little bit.
...
committer: mfx <mfx> 980615022 +0000
2001-01-27 17:03:42 +00:00
Markus F.X.J. Oberhumer
27deeccdb3
Updated from 1.06 release.
...
committer: mfx <mfx> 980614997 +0000
2001-01-27 17:03:17 +00:00
Markus F.X.J. Oberhumer
c7f12f3a74
Compute an adler32 checksum.
...
committer: mfx <mfx> 980609412 +0000
2001-01-27 15:30:12 +00:00
Markus F.X.J. Oberhumer
99f0f0120b
Updated.
...
committer: mfx <mfx> 980609373 +0000
2001-01-27 15:29:33 +00:00
Markus F.X.J. Oberhumer
34070f0b93
Make fn_has_ext() case insensitive by default.
...
committer: mfx <mfx> 980609337 +0000
2001-01-27 15:28:57 +00:00
Markus F.X.J. Oberhumer
f300b31d8d
Un-documented `--stdout' option.
...
committer: mfx <mfx> 980606702 +0000
2001-01-27 14:45:02 +00:00
Markus F.X.J. Oberhumer
bc5f9fb0a3
Don't allow `--stdout' when compressing.
...
committer: mfx <mfx> 980433841 +0000
2001-01-25 14:44:01 +00:00
Markus F.X.J. Oberhumer
7371c219b1
Updated from 1.05 release.
...
committer: mfx <mfx> 980367939 +0000
2001-01-24 20:25:39 +00:00
László Molnár
d5dd445a06
refuse compressing files which have tls callbacks
...
committer: ml1050 <ml1050> 980113870 +0000
2001-01-21 21:51:10 +00:00
Markus F.X.J. Oberhumer
b7f0187e9c
Added a define to use the UPX 1.02 "blessed" stub code to avoid
...
problems with braindead virus scanners...
committer: mfx <mfx> 979849303 +0000
2001-01-18 20:21:43 +00:00
Markus F.X.J. Oberhumer
e982426885
Made upx_adler32() an overloaded function.
...
committer: mfx <mfx> 979849112 +0000
2001-01-18 20:18:32 +00:00
Markus F.X.J. Oberhumer
6447666284
Support VPATH builds.
...
committer: mfx <mfx> 979834754 +0000
2001-01-18 16:19:14 +00:00
Markus F.X.J. Oberhumer
ea4fcebf33
Made tell() const.
...
committer: mfx <mfx> 979831609 +0000
2001-01-18 15:26:49 +00:00
Markus F.X.J. Oberhumer
94f7d49522
Make the stubs compile again.
...
committer: mfx <mfx> 979829197 +0000
2001-01-18 14:46:37 +00:00
Markus F.X.J. Oberhumer
bbf2938719
Avoid an app.pl warning.
...
committer: mfx <mfx> 979828878 +0000
2001-01-18 14:41:18 +00:00
John Reiser
df9db96bd1
filters for unix(linux)
...
Modified Files:
filteri.cpp filter/ctojr.h linker.cpp linker.h mem.cpp mem.h
p_lx_elf.cpp p_lx_elf.h
p_lx_exc.cpp p_lx_exc.h
p_lx_sh.cpp p_lx_sh.h
p_unix.cpp packer.cpp packer.h packhead.cpp
stub/Makefile stub/macros.ash
stub/l_lx_elf.c stub/l_lx_elf86.asm stub/l_lx_elf86.lds
stub/l_lx_exec.c stub/l_lx_exec86.asm stub/l_lx_exec86.lds
stub/l_lx_sh86.asm stub/l_lx_sh86.lds
Added Files:
filter/ctok.h
stub/fold_elf86.asm stub/fold_exec86.asm stub/fold_sh86.asm
committer: jreiser <jreiser> 979796725 +0000
2001-01-18 05:45:25 +00:00
Markus F.X.J. Oberhumer
4d45677160
Updated.
...
committer: mfx <mfx> 979756847 +0000
2001-01-17 18:40:47 +00:00
Markus F.X.J. Oberhumer
2981596fc3
Clarified a comment.
...
committer: mfx <mfx> 979756736 +0000
2001-01-17 18:38:56 +00:00
Markus F.X.J. Oberhumer
ecce4d6578
Reset patch order in writePackHeader().
...
committer: mfx <mfx> 979756690 +0000
2001-01-17 18:38:10 +00:00
Markus F.X.J. Oberhumer
bf52b5eb06
Small PackHeader update.
...
committer: mfx <mfx> 979756656 +0000
2001-01-17 18:37:36 +00:00
Markus F.X.J. Oberhumer
d8baf6d1e8
Added PackUnix::writePackHeader().
...
committer: mfx <mfx> 979754833 +0000
2001-01-17 18:07:13 +00:00
Markus F.X.J. Oberhumer
4322931d97
Added UPX_MAGIC2_LE32 as an additional magic number for the original
...
packheader as stored in the stubs.
committer: mfx <mfx> 979754722 +0000
2001-01-17 18:05:22 +00:00
Markus F.X.J. Oberhumer
ad4bf703f0
Added some comments.
...
committer: mfx <mfx> 979748824 +0000
2001-01-17 16:27:04 +00:00
Markus F.X.J. Oberhumer
342679b6d3
Small cleanups.
...
committer: mfx <mfx> 979748793 +0000
2001-01-17 16:26:33 +00:00
Markus F.X.J. Oberhumer
4a52be76fe
Removed nop() macro.
...
committer: mfx <mfx> 979746778 +0000
2001-01-17 15:52:58 +00:00
Markus F.X.J. Oberhumer
afc55d76e7
New version of the UNUSED() macro.
...
committer: mfx <mfx> 979744725 +0000
2001-01-17 15:18:45 +00:00
Markus F.X.J. Oberhumer
9e53f19b02
New upstream version.
...
committer: mfx <mfx> 979654847 +0000
2001-01-16 14:20:47 +00:00
Markus F.X.J. Oberhumer
8614bca405
Updated.
...
committer: mfx <mfx> 979237786 +0000
2001-01-11 18:29:46 +00:00
Markus F.X.J. Oberhumer
5f3bdaeebe
Support VPATH builds.
...
committer: mfx <mfx> 979143860 +0000
2001-01-10 16:24:20 +00:00
Markus F.X.J. Oberhumer
fd81cd2ae0
Support VPATH builds.
...
committer: mfx <mfx> 979143221 +0000
2001-01-10 16:13:41 +00:00
Markus F.X.J. Oberhumer
bc6599ae51
Added a simple delta filter.
...
committer: mfx <mfx> 978980129 +0000
2001-01-08 18:55:29 +00:00
Markus F.X.J. Oberhumer
6c2c174926
Added a simple delta filter.
...
committer: mfx <mfx> 978979757 +0000
2001-01-08 18:49:17 +00:00
Markus F.X.J. Oberhumer
9205d0be65
New version.
...
committer: mfx <mfx> 978973564 +0000
2001-01-08 17:06:04 +00:00
Markus F.X.J. Oberhumer
199e274cac
Added a simple delta filter.
...
committer: mfx <mfx> 978973515 +0000
2001-01-08 17:05:15 +00:00
John Reiser
c9a36d51c4
refine pseudo-sections
...
committer: jreiser <jreiser> 978901287 +0000
2001-01-07 21:01:27 +00:00
John Reiser
7bffc86777
prepare for selective buildLoader
...
committer: jreiser <jreiser> 978897024 +0000
2001-01-07 19:50:24 +00:00
John Reiser
ce1b58d293
filters for linux/elf386;
...
filter.cpp filter.h p_lx_elf.cpp p_lx_elf.h filter/ctojr.h
stub/l_lx_elf.c stub/l_lx_elf86.asm
committer: jreiser <jreiser> 978846586 +0000
2001-01-07 05:49:46 +00:00
John Reiser
4d2b35c9ee
debugging
...
committer: jreiser <jreiser> 978826747 +0000
2001-01-07 00:19:07 +00:00
Markus F.X.J. Oberhumer
47168972da
Added class BeLinker.
...
committer: mfx <mfx> 978797683 +0000
2001-01-06 16:14:43 +00:00
Markus F.X.J. Oberhumer
dee289e2d9
Comments updated.
...
committer: mfx <mfx> 978795901 +0000
2001-01-06 15:45:01 +00:00
Markus F.X.J. Oberhumer
1fc7c7898b
Updated.
...
committer: mfx <mfx> 978795803 +0000
2001-01-06 15:43:23 +00:00
Markus F.X.J. Oberhumer
dfc8a0d548
Renamed ctjo to ctoj, and ctjor to ctojr.
...
committer: mfx <mfx> 978792885 +0000
2001-01-06 14:54:45 +00:00
Markus F.X.J. Oberhumer
daa0fe353b
Added util function getcto().
...
committer: mfx <mfx> 978792675 +0000
2001-01-06 14:51:15 +00:00
John Reiser
766b3edeee
Avoid static storage. Also keep as many destinations as possible,
...
and keep them together on the wheel during "cold cache" startup.
committer: jreiser <jreiser> 978729012 +0000
2001-01-05 21:10:12 +00:00
Markus F.X.J. Oberhumer
8e90fd0b63
Updated.
...
committer: mfx <mfx> 978721813 +0000
2001-01-05 19:10:13 +00:00
Markus F.X.J. Oberhumer
9a00a9027d
Cleanups.
...
committer: mfx <mfx> 978706067 +0000
2001-01-05 14:47:47 +00:00
Markus F.X.J. Oberhumer
e2a45c8f97
Added static bool Filter::isValidFilter(int).
...
committer: mfx <mfx> 978705885 +0000
2001-01-05 14:44:45 +00:00
Markus F.X.J. Oberhumer
ee69861fb5
Added some comments.
...
committer: mfx <mfx> 978705469 +0000
2001-01-05 14:37:49 +00:00
John Reiser
5b97d3ee09
Filter for lru recoding of "call trick" destinations.
...
filteri.cpp filter/ctjor.h
committer: jreiser <jreiser> 978670287 +0000
2001-01-05 04:51:27 +00:00
Markus F.X.J. Oberhumer
38ab492030
Added preliminary unpacking support.
...
committer: mfx <mfx> 978638046 +0000
2001-01-04 19:54:06 +00:00
Markus F.X.J. Oberhumer
266d992017
Cleanups.
...
committer: mfx <mfx> 978636047 +0000
2001-01-04 19:20:47 +00:00
Markus F.X.J. Oberhumer
0979848bdc
Added experimental app_68k.pl.
...
committer: mfx <mfx> 978635857 +0000
2001-01-04 19:17:37 +00:00
Markus F.X.J. Oberhumer
3d371be0e5
Updated.
...
committer: mfx <mfx> 978626197 +0000
2001-01-04 16:36:37 +00:00
Markus F.X.J. Oberhumer
f96955b9f0
Updated my email address.
...
committer: mfx <mfx> 978625825 +0000
2001-01-04 16:30:25 +00:00
Markus F.X.J. Oberhumer
794d048bf2
Moved the actual filter implementations into the new filter directory.
...
committer: mfx <mfx> 978622245 +0000
2001-01-04 15:30:45 +00:00
Markus F.X.J. Oberhumer
595afd8964
Updated.
...
committer: mfx <mfx> 978564648 +0000
2001-01-03 23:30:48 +00:00
Markus F.X.J. Oberhumer
da8fadb203
Updated.
...
committer: mfx <mfx> 978563845 +0000
2001-01-03 23:17:25 +00:00
Markus F.X.J. Oberhumer
ca7c07e817
Added some debug print statements.
...
committer: mfx <mfx> 978563773 +0000
2001-01-03 23:16:13 +00:00
Markus F.X.J. Oberhumer
bf95f93cad
Added a number of filters. Some of them could be useful for dos/exe.
...
committer: mfx <mfx> 978563749 +0000
2001-01-03 23:15:49 +00:00
Markus F.X.J. Oberhumer
7766b08f08
Cleanups.
...
committer: mfx <mfx> 978563615 +0000
2001-01-03 23:13:35 +00:00
Markus F.X.J. Oberhumer
823ac11eb3
Added option `--no-filter'.
...
committer: mfx <mfx> 978559146 +0000
2001-01-03 21:59:06 +00:00
Markus F.X.J. Oberhumer
c5e61413a4
Small cleanups.
...
committer: mfx <mfx> 978539758 +0000
2001-01-03 16:35:58 +00:00
Markus F.X.J. Oberhumer
df4726eb95
Removed Packer::addSection().
...
committer: mfx <mfx> 978539327 +0000
2001-01-03 16:28:47 +00:00
Markus F.X.J. Oberhumer
25a6da5638
dos/com and dos/sys: only add the `sbb bp,bp' section to the stub
...
if it is needed.
committer: mfx <mfx> 978538864 +0000
2001-01-03 16:21:04 +00:00
Markus F.X.J. Oberhumer
5ddec963d0
Better kernel decompression.
...
committer: mfx <mfx> 978531885 +0000
2001-01-03 14:24:45 +00:00
Markus F.X.J. Oberhumer
597143df7f
Added some more header checks.
...
committer: mfx <mfx> 978531825 +0000
2001-01-03 14:23:45 +00:00
Markus F.X.J. Oberhumer
572082ac2b
Implemented Packer::verifyOverlappingDecompression().
...
committer: mfx <mfx> 978465508 +0000
2001-01-02 19:58:28 +00:00
Markus F.X.J. Oberhumer
d328e834b1
Documentation updates.
...
committer: mfx <mfx> 978450814 +0000
2001-01-02 15:53:34 +00:00
Markus F.X.J. Oberhumer
aa540f85fa
Big merge of my working tree: Added options `--all-methods', new
...
Packer::getCompressionMethods(), improved Packer::compressWithFilters().
committer: mfx <mfx> 978449945 +0000
2001-01-02 15:39:05 +00:00
Markus F.X.J. Oberhumer
1084d86063
Some more cleanups.
...
committer: mfx <mfx> 978191791 +0000
2000-12-30 15:56:31 +00:00
Markus F.X.J. Oberhumer
a43d93512d
Updated.
...
committer: mfx <mfx> 978190991 +0000
2000-12-30 15:43:11 +00:00
Markus F.X.J. Oberhumer
a8177201ef
Added new field PackHeader::overlap_overhead.
...
committer: mfx <mfx> 978190533 +0000
2000-12-30 15:35:33 +00:00
Markus F.X.J. Oberhumer
85bebf0b43
Major rewrite: added buildLoader() and fillExeHeader().
...
committer: mfx <mfx> 978189850 +0000
2000-12-30 15:24:10 +00:00
Markus F.X.J. Oberhumer
f36feee0dc
Added a framework for the win16/ne format, so that it's easier for someone
...
to actually contribute that.
committer: mfx <mfx> 978183080 +0000
2000-12-30 13:31:20 +00:00
Markus F.X.J. Oberhumer
c0bbc2216e
Always call buildLoader() directly after compress().
...
committer: mfx <mfx> 978181874 +0000
2000-12-30 13:11:14 +00:00
Markus F.X.J. Oberhumer
8ce23f15e8
Updated.
...
committer: mfx <mfx> 978180979 +0000
2000-12-30 12:56:19 +00:00
Markus F.X.J. Oberhumer
0b01be7b29
Consistency cleanups.
...
committer: mfx <mfx> 978180862 +0000
2000-12-30 12:54:22 +00:00
Markus F.X.J. Oberhumer
ceebd3518b
Implemented buildLoader(), so that we can add compressWithFilters().
...
committer: mfx <mfx> 978180698 +0000
2000-12-30 12:51:38 +00:00
Markus F.X.J. Oberhumer
a9249c6335
Implemented compressWithFilters().
...
committer: mfx <mfx> 978180632 +0000
2000-12-30 12:50:32 +00:00
Markus F.X.J. Oberhumer
dc22e6f158
Changed a comment.
...
committer: mfx <mfx> 978108487 +0000
2000-12-29 16:48:07 +00:00
Markus F.X.J. Oberhumer
1c7a34b367
Updated.
...
committer: mfx <mfx> 978108464 +0000
2000-12-29 16:47:44 +00:00
Markus F.X.J. Oberhumer
526ae77b08
Whitespace changes.
...
committer: mfx <mfx> 978108441 +0000
2000-12-29 16:47:21 +00:00
Markus F.X.J. Oberhumer
82698fb4b0
Enabled compressWithFilters(). Added some assertions.
...
committer: mfx <mfx> 978108380 +0000
2000-12-29 16:46:20 +00:00
Markus F.X.J. Oberhumer
63ead04054
Documented `--all-filters'.
...
committer: mfx <mfx> 978108298 +0000
2000-12-29 16:44:58 +00:00
Markus F.X.J. Oberhumer
5727461522
Updated.
...
committer: mfx <mfx> 978101535 +0000
2000-12-29 14:52:15 +00:00
Markus F.X.J. Oberhumer
cd4292dd55
Completely updated the TODO list.
...
committer: mfx <mfx> 978101036 +0000
2000-12-29 14:43:56 +00:00
Markus F.X.J. Oberhumer
11ee8627b8
Improved some ELF header checks.
...
committer: mfx <mfx> 978099239 +0000
2000-12-29 14:13:59 +00:00
Markus F.X.J. Oberhumer
65ad79d727
Updated.
...
committer: mfx <mfx> 978093031 +0000
2000-12-29 12:30:31 +00:00
Markus F.X.J. Oberhumer
85920ea8b1
Use the new macro COMPILE_TIME_ASSERT() instead of several assert().
...
committer: mfx <mfx> 978092937 +0000
2000-12-29 12:28:57 +00:00
Markus F.X.J. Oberhumer
f4d2287e57
Added some experimental test code.
...
committer: mfx <mfx> 978092868 +0000
2000-12-29 12:27:48 +00:00
Markus F.X.J. Oberhumer
8a77a477df
Do not use the screen code when running under Windows NT.
...
committer: mfx <mfx> 978092789 +0000
2000-12-29 12:26:29 +00:00
Markus F.X.J. Oberhumer
5a497e2dac
Added a framework for the elks/8086 format. Completely non-functional at the moment.
...
committer: mfx <mfx> 978092698 +0000
2000-12-29 12:24:58 +00:00
Markus F.X.J. Oberhumer
7d5042012b
Avoid a compiler warning.
...
committer: mfx <mfx> 978092515 +0000
2000-12-29 12:21:55 +00:00
Markus F.X.J. Oberhumer
d2625d8607
*** empty log message ***
...
committer: mfx <mfx> 977924664 +0000
2000-12-27 13:44:24 +00:00
Markus F.X.J. Oberhumer
c3ec6b73e5
Use UPX_MAGIC_LE32 instead of PackHeader::magic.
...
committer: mfx <mfx> 977922670 +0000
2000-12-27 13:11:10 +00:00
Markus F.X.J. Oberhumer
0ffe40c621
Updated.
...
committer: mfx <mfx> 977489915 +0000
2000-12-22 12:58:35 +00:00
Markus F.X.J. Oberhumer
537f9111ae
Documented `--force-execve'.
...
committer: mfx <mfx> 977488831 +0000
2000-12-22 12:40:31 +00:00
Markus F.X.J. Oberhumer
d168d85650
Some ELF related cleanups.
...
committer: mfx <mfx> 977488389 +0000
2000-12-22 12:33:09 +00:00
Markus F.X.J. Oberhumer
dbbc47a334
Added option `--force-execve' which forces the use of the generic
...
linux/386 format.
committer: mfx <mfx> 977486503 +0000
2000-12-22 12:01:43 +00:00
Markus F.X.J. Oberhumer
47760c37fc
Updated.
...
committer: mfx <mfx> 977431602 +0000
2000-12-21 20:46:42 +00:00
Markus F.X.J. Oberhumer
9fc785199a
Only #include "version.h" in files that actually need it.
...
committer: mfx <mfx> 977430123 +0000
2000-12-21 20:22:03 +00:00
Markus F.X.J. Oberhumer
f4f70634a1
Made PackHeader::magic a constant.
...
committer: mfx <mfx> 977428640 +0000
2000-12-21 19:57:20 +00:00
Markus F.X.J. Oberhumer
046df6da76
Added Packer::checkAlreadyPacked().
...
committer: mfx <mfx> 977427988 +0000
2000-12-21 19:46:28 +00:00
Markus F.X.J. Oberhumer
facca7b891
Added test for alreadyPacked().
...
committer: mfx <mfx> 977426670 +0000
2000-12-21 19:24:30 +00:00
Markus F.X.J. Oberhumer
a254e81ba9
Oops.
...
committer: mfx <mfx> 977426094 +0000
2000-12-21 19:14:54 +00:00
Markus F.X.J. Oberhumer
09eb201b76
*** empty log message ***
...
committer: mfx <mfx> 977425661 +0000
2000-12-21 19:07:41 +00:00
Markus F.X.J. Oberhumer
b0226b54bd
Finally we use automated dependencies.
...
committer: mfx <mfx> 977424557 +0000
2000-12-21 18:49:17 +00:00
Markus F.X.J. Oberhumer
1d948c839d
Moved the generic linux/386 format into the new p_lx_exc.{h,cpp} files.
...
committer: mfx <mfx> 977423460 +0000
2000-12-21 18:31:00 +00:00
Markus F.X.J. Oberhumer
5d74b7252d
Cleaned up the use of upx_compress(), use delete[] where needed.
...
committer: mfx <mfx> 977422374 +0000
2000-12-21 18:12:54 +00:00
Markus F.X.J. Oberhumer
e787805b81
Extended gzip signature to 3 bytes.
...
committer: mfx <mfx> 977403238 +0000
2000-12-21 12:53:58 +00:00
Markus F.X.J. Oberhumer
166d91ac48
Added some assertions.
...
committer: mfx <mfx> 977395014 +0000
2000-12-21 10:36:54 +00:00
Markus F.X.J. Oberhumer
2bb2124356
readFileHeader() now returns 0 on error.
...
committer: mfx <mfx> 977394998 +0000
2000-12-21 10:36:38 +00:00
Markus F.X.J. Oberhumer
29ae1b7231
Updated.
...
committer: mfx <mfx> 977393157 +0000
2000-12-21 10:05:57 +00:00
Markus F.X.J. Oberhumer
06dc67da49
Added some more checks to canPack(), throw an exception in case
...
of crippled ELF headers.
committer: mfx <mfx> 977393134 +0000
2000-12-21 10:05:34 +00:00
Markus F.X.J. Oberhumer
42fe803a39
Cleaned up some canPack() checks.
...
committer: mfx <mfx> 977393067 +0000
2000-12-21 10:04:27 +00:00
John Reiser
1dcaedab30
sys_size is only 16 bits and can wrap around
...
committer: jreiser <jreiser> 977374512 +0000
2000-12-21 04:55:12 +00:00