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
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
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
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
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
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
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
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
d985a4c250
Post-release version bump.
2017-05-12 15:28:47 +02:00
Markus F.X.J. Oberhumer
e4659b7d7c
Bump release date.
2017-05-12 12:47:14 +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
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 d34887ef60
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
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
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
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
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
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
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
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
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
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
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
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
f69199909f
Post-release version bump.
2017-01-29 14:05:00 +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
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
c940d2906f
Mention win64/pe in help usage text.
2017-01-17 01:56:58 +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
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
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
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
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
efd5bc24b0
Bump tentative release date.
2016-12-01 00:40:54 +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
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
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
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
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
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
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
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
b0207ce524
Some refactoring. NFC.
2016-10-09 13:23:19 +02:00
László Molnár
297d44c614
PE: fixed file data alignment problem
2016-10-09 11:29:29 +02:00