Markus F.X.J. Oberhumer
43ce34d547
Welcome 2012.
2012-01-01 22:35:11 +01:00
Markus F.X.J. Oberhumer
afbd553622
Silence some compilation warnings.
2011-08-30 03:40:53 +02:00
Markus F.X.J. Oberhumer
9bf2b79d9e
Enter 2011.
2011-01-03 08:49:23 +01:00
John Reiser
d08a51d7e4
fix don't-care uninit from valgrind(memcheck)
2010-07-07 09:52:58 -07:00
John Reiser
ffec71e0d8
Fix vmlinux/ppc32 at compress time. Runtime needs work.
2010-04-28 20:43:50 -07:00
Markus F.X.J. Oberhumer
6bc3197721
Enter 2010.
2010-02-06 17:15:49 +01:00
Markus F.X.J. Oberhumer
9adef80d6b
Replace all __attribute_packed by new __packed_struct macros.
2009-02-12 05:20:23 +01:00
Markus F.X.J. Oberhumer
5ed689ceb0
Enter 2009.
2008-12-31 17:07:18 +01:00
Markus F.X.J. Oberhumer
25f1765f36
Support building with OpenWatcom 1.8. Silence some compiler warnings.
2008-12-31 16:56:38 +01:00
Markus F.X.J. Oberhumer
d453cc27a3
Style: start using correct IEC binary prefix (KiB, MiB, ...) - see
...
http://en.wikipedia.org/wiki/Binary_prefix for more details.
2008-04-26 08:48:13 +02:00
Markus F.X.J. Oberhumer
9060ac7897
Rename template integral types from U32 to TE32 to emphasize on target
...
endianness.
2008-01-09 12:45:44 +01:00
Markus F.X.J. Oberhumer
6ff1bd5917
Update my email address.
2008-01-02 10:12:42 +01:00
Markus F.X.J. Oberhumer
fa49dbe2cb
Enter 2008.
2008-01-02 09:42:31 +01:00
Markus F.X.J. Oberhumer
1cb1427050
Detabify.
2007-12-17 06:00:33 +01:00
John Reiser
50c4b749ec
PackVmlinuxBase<T>::pack always defineFilterSymbols(), esp. for PackVmlinuxAMD64
2007-11-19 18:39:25 -08:00
Markus F.X.J. Oberhumer
f340f84de7
Avoid warnings.
2007-05-08 16:12:42 +02:00
John Reiser
573009eeb6
new format UPX_F_LINUX_ELF32_MIPSEL [work in progress]
2007-05-06 06:17:49 -07:00
John Reiser
c3363712d9
PackVmlinuxBase<T>::pack() EM_PPC filter only contiguous instruction sections
2007-05-01 19:12:55 -07:00
John Reiser
faa33d89a2
Documentation: UPX_F_VMLINUX_PPC32 changes to arch/powerpc/boot/main.c
2007-04-30 13:48:50 -07:00
John Reiser
f347458c53
new format UPX_F_VMLINUX_PPC32 Linux kernel for PowerPC (32-bit)
2007-04-30 13:34:06 -07:00
John Reiser
3bda09e105
more cleanup armel etc
2007-04-22 20:04:13 -07:00
John Reiser
32d32c4e4a
cleanup ARMEL etc.
2007-04-22 19:52:23 -07:00
John Reiser
9c564fd4c7
Add file formst UPX_F_LINUX_ELF32_ARMEB and normalize spelling
...
of ARMEL, ARMEB, armel, armeb.
2007-04-22 16:09:18 -07:00
John Reiser
3d4d30766d
merge
2007-04-22 15:24:17 -07:00
Markus F.X.J. Oberhumer
ace24ad68e
Minor portability fixes.
2007-02-08 16:17:32 +01:00
Markus F.X.J. Oberhumer
5e83596a1b
Enter 2007.
2007-01-14 13:08:58 +01:00
Markus F.X.J. Oberhumer
6361213e07
More portability fixes.
2007-01-14 12:47:38 +01:00
John Reiser
9c59a5d9b6
p_vmlinx test jig for ARM
2007-01-13 17:30:03 -08:00
Markus F.X.J. Oberhumer
0b988176fa
Portability fixes.
2007-01-10 17:16:59 +01:00
John Reiser
10dc580a3a
tweak i386-linux.kernel.vmlinux-head.S
2007-01-08 13:56:47 -08:00
John Reiser
392e803905
vmlinux/AMD64 works
2007-01-07 16:31:46 -08:00
John Reiser
11b92172fe
PackVmlinuxBase my_boot_label; kernel Makefiles
2006-12-25 13:55:28 -08:00
Markus F.X.J. Oberhumer
b21ce925fb
Factor out a common Packer::defineFilterSymbols(). Enable filters
...
0x49 and 0x49 for all i386-dos32.* formats. Needs testing.
2006-12-22 16:39:42 +01:00
Markus F.X.J. Oberhumer
9e77dbfe20
Added an assertion to make sure I've really understood the semantics
...
of the ctok32 filter length.
2006-12-22 15:19:51 +01:00
John Reiser
1d39796e3f
PackVmlinuxBase::canPack bug for AMD64 with holes between PT_LOAD
2006-12-19 18:18:47 -08:00
John Reiser
cd6a318903
cleanup merge
2006-12-19 16:19:19 -08:00
John Reiser
73090b98ab
merge
2006-12-19 16:16:20 -08:00
John Reiser
745de1abab
refactor PackVmlinuxBase::pack()
2006-12-19 16:12:59 -08:00
Markus F.X.J. Oberhumer
2487595778
vmlinux: U32 already has target-endian representation, so there is no need
...
to call BeLePolicy::get32() here.
2006-12-19 22:39:37 +01:00
John Reiser
5c4863d504
refactor PackVmlinuxBase ::canUnpack(), ::unpack()
2006-12-19 10:58:20 -08:00
Markus F.X.J. Oberhumer
5e3a658932
Made a method pure virtual.
2006-12-19 16:21:57 +01:00
Markus F.X.J. Oberhumer
f8ebbf8b08
Rework p_elf.h.
2006-12-19 14:24:35 +01:00
Markus F.X.J. Oberhumer
8795f60bf1
vmlinux: use template types throughout.
2006-12-19 11:06:58 +01:00
John Reiser
4c068e3e00
PackVmlinuxBase::canPack(); templates are fun!
2006-12-18 22:55:38 -08:00
John Reiser
277d862172
PackVmlinuxBase try template definitions in .cpp file
2006-12-18 20:17:10 -08:00
John Reiser
dbed6a47bb
PackVmlinuxBase use simple templates
2006-12-18 20:08:24 -08:00
Markus F.X.J. Oberhumer
94f3749784
vmlinux refactoring: move destructor into PackVmlinuxBase.
2006-12-19 00:48:38 +01:00
Markus F.X.J. Oberhumer
728e6d851e
Introduce ElfClass and PackVmlinuxBase for refactoring elf based packers.
2006-12-19 00:37:35 +01:00
Markus F.X.J. Oberhumer
11e863545f
Strip trailing whitespace.
2006-12-18 16:56:14 +01:00
John Reiser
e43e3aeb1c
arm-linux.kernel documentation update for Debian on nslu2
2006-12-17 18:49:38 -08:00
John Reiser
a8fe529814
arm-linux.kernel preserve .e_flags
2006-12-17 17:39:47 -08:00
John Reiser
d9f5e2bb08
arm-linux.kernel alignment fix
2006-12-17 16:34:21 -08:00
John Reiser
dfa83b0ac8
arm-linux.kernel methods
2006-12-17 15:34:13 -08:00
John Reiser
bd5cef1411
unfilter for arm-linux.kernel
2006-12-17 14:53:10 -08:00
John Reiser
c5cfb7eb40
more arm-linux.kernel work
2006-12-16 22:02:51 -08:00
John Reiser
bccaafda6d
arm-linux stub interfacing for lzma
2006-12-16 17:16:32 -08:00
John Reiser
bf0086d7b5
arm-linux.kernel decompressor
2006-12-16 14:52:22 -08:00
John Reiser
112eff2509
add UPX_F_VMLINUX_AMD64, UPX_F_VMLINUX_ARM
2006-12-16 08:13:34 -08:00
Markus F.X.J. Oberhumer
a77b598f82
Implement a micro-optimization which has been on our TODO list for ages:
...
remove "or ebp,-1" when not needed
2006-12-08 09:20:14 +01:00
Markus F.X.J. Oberhumer
f2b9dff596
More work so that watom/le now uses compressWithFilters().
2006-12-06 11:08:32 +01:00
Markus F.X.J. Oberhumer
8875470b37
Refactored compressWithFilters().
2006-12-06 07:27:23 +01:00
Markus F.X.J. Oberhumer
2ced230965
Updated packers to use new stub names.
2006-11-21 03:40:11 +01:00
Markus F.X.J. Oberhumer
a6cb6f57d3
Introduce Packer::relocateLoader(). This is the first step of finally getting
...
rid of all Packer::patchXXX() methods.
2006-11-20 18:10:23 +01:00
Markus F.X.J. Oberhumer
05d03f97fc
Introduce Packer::bele.
2006-11-20 12:01:59 +01:00
Markus F.X.J. Oberhumer
c73da864c8
Avoid -Wshadow warnings.
2006-11-16 20:14:14 +01:00
Markus F.X.J. Oberhumer
be235ddc38
Removed unused Packer::freezeLoader(). Changed return type of
...
buildLoader() from "int" to "void".
2006-11-12 20:57:08 +01:00
John Reiser
4442a282e1
fix filename in #includ
2006-10-16 10:52:57 -07:00
John Reiser
261010f23d
fix comment
2006-10-16 06:12:58 -07:00
John Reiser
452a953234
vmlinux/386 check for __ksymtab; fix unpack
2006-10-15 14:51:02 -07:00
John Reiser
6891bc3da3
vmlinux/i386: fix filters, 0x400000 start, integration with kernel build
2006-10-14 14:52:30 -07:00
László Molnár
4500c1d1a4
lzma should be working again for most of the i386 formats
2006-07-18 13:44:44 +02:00
John Reiser
709fb93a22
sizeof(shstrtab) already includes terminating '\0'
2006-07-05 05:40:24 -07:00
László Molnár
f0d5a6ebac
vmlinu[xz] using nrv2e converted to ElfLinker
2006-07-04 17:36:54 +02:00
Markus F.X.J. Oberhumer
b983e29fb0
Fix compilation on big endian machines. Remove trailing whitespace.
2006-07-03 01:40:59 +02:00
Markus F.X.J. Oberhumer
c0d4741f88
Merge.
2006-06-29 18:43:36 +02:00
John Reiser
1d72a7df99
propagate IMAGE_OFFSET from commandline
2006-06-29 05:57:28 -07:00
Markus F.X.J. Oberhumer
8882192fac
Minor cleanups.
2006-06-29 14:38:18 +02:00
John Reiser
193e085cf0
limit stack to ~28KB for decompressing kernel
2006-06-28 22:30:05 -07:00
John Reiser
ba19ccac43
tabify the commented Makefile
2006-06-28 22:18:48 -07:00
John Reiser
67e09fb342
kernel Makefile; fix cross-platform endian trouble
2006-06-28 19:44:02 -07:00
Markus F.X.J. Oberhumer
bf5cbfffc2
Start major refactoring.
2006-06-19 19:20:50 +02:00
Markus F.X.J. Oberhumer
db43910288
Enter 2006.
2006-06-16 15:17:29 +02:00
Markus F.X.J. Oberhumer
d3323d6550
Major refactoring of src/stub directory.
2006-06-15 08:17:50 +02:00
Markus F.X.J. Oberhumer
c33584e683
Detabified.
...
committer: mfx <mfx> 1126929315 +0000
2005-09-17 03:55:15 +00:00
Markus F.X.J. Oberhumer
232754b978
Removed trailing whitespace.
...
committer: mfx <mfx> 1109669261 +0000
2005-03-01 09:27:41 +00:00
Markus F.X.J. Oberhumer
75ef603308
Linker updates from Laszlo. Needs some testing.
...
committer: mfx <mfx> 1109669078 +0000
2005-03-01 09:24:38 +00:00
John Reiser
664a82e7c9
Start re-organizing the packing of Elf, by making Elf32 come first,
...
with Big endian and Little endian derived from it.
I386 still uses the old way, but PowerPC (both Linux and Darwin [Mac])
use the new way.
p_elf.h p_lx_elf.cpp p_lx_elf.h p_lx_exc.cpp p_lx_exc.h
p_unix.cpp p_unix.h p_vmlinx.cpp p_vmlinx.h p_vmlinz.cpp
committer: jreiser <jreiser> 1108940224 +0000
2005-02-20 22:57:04 +00:00
John Reiser
36b852e6bf
%cs at entry to decompressor varies a _lot_ among Linux 2.4.x, 2.6.y kernels.
...
Decompressor must adapt; no universal constants exist for __BOOT_CS, _BOOT_DS.
p_vmlinx.cpp stub/l_vmlinz.asm
committer: jreiser <jreiser> 1103605278 +0000
2004-12-21 05:01:18 +00:00
John Reiser
f0c21c7203
Enhance documentation for process flow and testing.
...
Include some notes for compressing kernels from Linux 2.4.x.
committer: jreiser <jreiser> 1103513947 +0000
2004-12-20 03:39:07 +00:00
John Reiser
1418f57b96
Fix bugs between Filter.addvalue and ckt32 macro call: [re-]compressed
...
Linux kernels were not booting. Explain .addvalue better.
Set kernel stack pointer for boot-time decompression according to
Linux kernel documentation.
p_vmlinx.cpp p_vmlinz.cpp
stub/l_vmlinx.asm stub/l_vmlinz.asm
filter/cto.h filter/ctoj.h filter/ctok.h
committer: jreiser <jreiser> 1103326936 +0000
2004-12-17 23:42:16 +00:00
Markus F.X.J. Oberhumer
814eabb88e
Final updates for upx 1.92.
...
committer: mfx <mfx> 1090281040 +0000
2004-07-19 23:50:40 +00:00
Markus F.X.J. Oberhumer
8204c7deb6
Small portability fixes.
...
committer: mfx <mfx> 1090256008 +0000
2004-07-19 16:53:28 +00:00
John Reiser
a2b305ed3b
Don't spend too much time compressing large symbol tables.
...
committer: jreiser <jreiser> 1090072585 +0000
2004-07-17 13:56:25 +00:00
John Reiser
ce3d3a850c
Allow any number of contiguous PT_LOAD.
...
p_vmlinx.cpp p_vmlinx.h
committer: jreiser <jreiser> 1090040793 +0000
2004-07-17 05:06:33 +00:00
Markus F.X.J. Oberhumer
212b674bc2
Portability fixes. Avoid some warnings.
...
committer: mfx <mfx> 1089734843 +0000
2004-07-13 16:07:23 +00:00
Markus F.X.J. Oberhumer
4102cd7c91
Detabified.
...
committer: mfx <mfx> 1089731601 +0000
2004-07-13 15:13:21 +00:00
John Reiser
f41edf9e21
more Example twiddling
...
committer: jreiser <jreiser> 1089683530 +0000
2004-07-13 01:52:10 +00:00
John Reiser
754f10f0b0
update Example from linux kernel debuggin
...
committer: jreiser <jreiser> 1089674802 +0000
2004-07-12 23:26:42 +00:00
John Reiser
5d331fdf69
new file format vmlinux/i386
...
Modified Files:
Makefile conf.h help.cpp linker.cpp p_elf.h packer.cpp
packerf.cpp packmast.cpp stub/Makefile stub/l_vmlinz.asm
Added Files:
p_vmlinx.h p_vmlinx.cpp stub/l_vmlinx.asm
committer: jreiser <jreiser> 1089652867 +0000
2004-07-12 17:21:07 +00:00