John Reiser
f252f824a4
mipsel conditional stub/src/i386-linux.elf-main.c
2007-05-08 05:48:15 -07:00
John Reiser
1d7e5a8130
typedef struct Extent
2007-05-08 05:18:41 -07:00
John Reiser
cb2ff92c2f
mipsel hack stub
2007-05-07 21:03:58 -07:00
John Reiser
ef373ab54f
mipsel hacking
2007-05-07 19:20:25 -07:00
John Reiser
9141a78c29
mipsel stub for mmap on Linux (not NetBSD); and subroutine arg[4..6]
...
in t0..t2 instead of on stack, to match LMZA_DEC20
2007-05-07 07:02:16 -07:00
John Reiser
10a6370738
hacking UPX_F_LINUX_ELF32_MIPSEL
2007-05-06 14:21:25 -07:00
John Reiser
573009eeb6
new format UPX_F_LINUX_ELF32_MIPSEL [work in progress]
2007-05-06 06:17:49 -07:00
John Reiser
c3363712d9
PackVmlinuxBase<T>::pack() EM_PPC filter only contiguous instruction sections
2007-05-01 19:12:55 -07:00
John Reiser
faa33d89a2
Documentation: UPX_F_VMLINUX_PPC32 changes to arch/powerpc/boot/main.c
2007-04-30 13:48:50 -07:00
John Reiser
f347458c53
new format UPX_F_VMLINUX_PPC32 Linux kernel for PowerPC (32-bit)
2007-04-30 13:34:06 -07:00
Markus F.X.J. Oberhumer
530e6d9196
Bump version for next release.
2007-04-30 19:34:26 +02:00
Markus F.X.J. Oberhumer
747e8370e0
Remove debug leftover.
2007-04-26 16:20:01 +02:00
Markus F.X.J. Oberhumer
2c67875781
Pass and verify original data in all xxx_test_overlap() functions.
2007-04-26 16:15:49 +02:00
Markus F.X.J. Oberhumer
c96e8a8c19
Better underflow and overflow handling in Packer::findOverlapOverhead().
2007-04-26 13:59:01 +02:00
Markus F.X.J. Oberhumer
5f203fc082
Avoid warnings.
2007-04-26 13:13:26 +02:00
John Reiser
b943c9b471
fix upx_zlib_test_overlap
2007-04-25 20:24:30 -07:00
John Reiser
1a90a1daa8
Implement upx_zlib_test_overlap() following upx_lzma_test_overlap()
2007-04-25 20:19:40 -07:00
John Reiser
72dfc743fd
upx_lzma_test_overlap cleanup
2007-04-25 20:11:04 -07:00
John Reiser
465307655b
Implement real upx_lzma_test_overlap().
...
Also make Packer::findOverlapOverhead() more pessimistic in worst case.
2007-04-25 16:11:33 -07:00
John Reiser
6ce71e6694
upx_lzma_test_overlap revert to 256 [FIXME]
2007-04-25 10:54:00 -07:00
John Reiser
7f01b3b92a
upx_lzma_test_overlap() heuristic overlap_overhead up to 0xA00
2007-04-25 09:19:29 -07:00
John Reiser
76950d56b9
PackUnix::canPack allow incompressible extents in getPackHeader()
2007-04-25 09:18:31 -07:00
Markus F.X.J. Oberhumer
c11e0d02b3
Added parm "allow_incompressible" to Packer::{get,read}PackHeader().
2007-04-25 17:33:39 +02:00
Markus F.X.J. Oberhumer
4c798c1718
Use official name "armeb" instead of "armbe".
2007-04-25 16:50:51 +02:00
Markus F.X.J. Oberhumer
450d7e9ad4
Merge.
2007-04-25 16:42:41 +02:00
Markus F.X.J. Oberhumer
b8ab79c83e
Use offical name "arm" instead of "armel".
2007-04-25 16:42:08 +02:00
John Reiser
6934bdd533
allow unpack of incompressible extents, such as
...
http://www.equi4.com/pub/tk/8.4.13/tclkit-linux-x86.gz
2007-04-25 07:34:24 -07:00
John Reiser
84dedb73a5
propagate changes arm*-linux.elf-fold.h
2007-04-24 16:08:34 -07:00
John Reiser
8964aa5221
fix endian issue with .b_method (arm-linux.elf-entry.S)
2007-04-24 12:05:53 -07:00
Markus F.X.J. Oberhumer
3481ae236c
Added missing armeb generated files.
2007-04-23 18:11:24 +02:00
John Reiser
46adc5f8a4
armeb-linux.kernel.vmlinux.S
2007-04-23 09:00:28 -07:00
John Reiser
5296df5899
add armeb-linux.kernel.vmlinux-head.S
2007-04-23 08:53:53 -07:00
John Reiser
b5d0c343b4
sync src/Makefile with Markus bfb3d24c1fe7
2007-04-23 07:15:42 -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
497441b54e
merge
2007-04-22 16:19:13 -07:00
John Reiser
9c564fd4c7
Add file formst UPX_F_LINUX_ELF32_ARMEB and normalize spelling
...
of ARMEL, ARMEB, armel, armeb.
2007-04-22 16:09:18 -07:00
John Reiser
0c2263d0e9
fix O_INP etc because cto8 is not pushed.
...
This change should have paralleled 1382:367eb149f29c
(Sun Aug 20 11:19:37 2006 -0700)
2007-04-22 15:50:24 -07:00
John Reiser
3d4d30766d
merge
2007-04-22 15:24:17 -07:00
John Reiser
41ba7077ad
propagate change to O_INP
2007-04-22 14:50:58 -07:00
John Reiser
229924adf9
Fix O_INP etc because calling sequence changed to omit cto8.
...
This parallel change was forgotten at:
changeset: 1382:367eb149f29c
date: Sun Aug 20 11:19:37 2006 -0700
summary: i386-linux.elf decompress does not need cto8
2007-04-22 14:47:08 -07:00
Markus F.X.J. Oberhumer
df988b7c69
Bump tentative release date.
2007-04-22 16:55:41 +02:00
John Reiser
e8106e2e34
propagate change to 'loadcon8' macro
2007-04-18 09:55:15 -07:00
John Reiser
c21d3e24f8
fix 'loadcon8'; was bad for big-endian vmlinux ARM
2007-04-18 09:52:52 -07:00
Markus F.X.J. Oberhumer
2d87aa0753
Better ctok32 fix.
2007-04-02 18:57:42 +02:00
László Molnár
b2ad4dc9a0
another fix for ctok32
2007-04-02 14:12:16 +02:00
László Molnár
370f2ea98f
tmt/adam: fixed a ctok32 related bug
2007-04-01 17:31:48 +02:00
László Molnár
a05ca565ff
fixed a bug in ctok32
2007-04-01 17:07:43 +02:00
László Molnár
52255637f2
give an error for x86/wince files
2007-03-22 13:45:03 +01:00
Markus F.X.J. Oberhumer
0fcaa3a2f5
Work around broken scanf() implementations.
2007-03-22 07:30:16 +01:00
László Molnár
0e2fa6eb9d
no need to warn for x86 wince files
2007-03-20 09:30:30 +01:00
Markus F.X.J. Oberhumer
2a0edfd8f7
Small update from Jens.
2007-03-15 01:41:07 +01:00
László Molnár
1f59a9f846
more PS1 updates from Jens
2007-03-12 12:11:17 +01:00
László Molnár
80c20a90ea
PS1 updates from Jens
2007-03-12 11:56:16 +01:00
Markus F.X.J. Oberhumer
56a35649fe
Update Makefiles.
2007-03-09 07:59:50 +01:00
Markus F.X.J. Oberhumer
f07cea0b79
Update help string.
2007-03-09 07:59:36 +01:00
Markus F.X.J. Oberhumer
4c1b08a281
Bump version for next release.
2007-03-08 08:26:28 +01:00
Markus F.X.J. Oberhumer
117f9eddcd
src/Makefile: use an explicit .depend file.
2007-03-08 08:19:27 +01:00
Markus F.X.J. Oberhumer
c18ebc63a6
dos/exe: enable optimized code paths.
2007-03-06 18:14:32 +01:00
Markus F.X.J. Oberhumer
1cfec3bdf7
dos/exe: enable one small optimization.
2007-03-06 15:56:51 +01:00
Markus F.X.J. Oberhumer
d29c8df45e
dos/exe improvements, not enabled yet.
2007-03-06 15:08:24 +01:00
Markus F.X.J. Oberhumer
d9722ad6b3
dos/exe: make sure minsp is even.
2007-03-04 19:27:04 +01:00
Markus F.X.J. Oberhumer
398fd8028c
Spelling fixes.
2007-03-04 17:39:21 +01:00
Markus F.X.J. Oberhumer
1345a3cfd3
Bump tentative release date.
2007-03-04 17:13:11 +01:00
Markus F.X.J. Oberhumer
7eb0b195b8
dos/exe: don't clear the dirty stack - DOS does not do this either
2007-03-04 17:10:32 +01:00
Markus F.X.J. Oberhumer
3bdc805a22
dos/exe: only use bx_magic when needed.
2007-03-04 17:01:32 +01:00
Markus F.X.J. Oberhumer
ac457792b4
Minor dos/exe stub optimizations.
2007-03-04 16:47:13 +01:00
Markus F.X.J. Oberhumer
1377b54b9e
dos/exe: optimize M_PIA_small.
2007-03-04 15:20:09 +01:00
Markus F.X.J. Oberhumer
66418ffc8c
Reorganize dos/exe. No stub changes.
2007-03-04 15:14:44 +01:00
László Molnár
b4c4b1fb70
dos/exe: fixed a bug in relocation handling
2007-03-01 16:57:12 +01:00
Markus F.X.J. Oberhumer
ffe4a4b047
dos/exe: clear the dirty stack.
2007-02-26 13:55:12 +01:00
László Molnár
753ce45310
dos/exe: better minsp approximation
2007-02-26 12:54:49 +01:00
Markus F.X.J. Oberhumer
fece0d73e7
Update NEWS. Bump version date.
2007-02-26 01:37:03 +01:00
Markus F.X.J. Oberhumer
edce076e68
Minor Makefile updates.
2007-02-26 01:33:08 +01:00
Markus F.X.J. Oberhumer
675d0a009a
Use M_IS_LZMA.
2007-02-26 01:32:36 +01:00
Markus F.X.J. Oberhumer
5d41b5a4db
Fix shld macro.
2007-02-26 00:52:18 +01:00
László Molnár
fe53b135eb
pe: better icon compression handling
2007-02-24 23:25:11 +01:00
László Molnár
816d882611
dos/exe: nrv2b compressed lzma decompressor added
2007-02-23 13:34:12 +01:00
Markus F.X.J. Oberhumer
12bcb09051
Small Makefile updates.
2007-02-21 17:11:42 +01:00
László Molnár
c59c69a85f
p_exe.cpp: added some comments
2007-02-20 13:49:18 +01:00
Markus F.X.J. Oberhumer
bdd0daaf6f
Added ElfLinker::addLoaderVA().
2007-02-20 07:36:34 +01:00
Markus F.X.J. Oberhumer
cfad7c8356
Small cleanups.
2007-02-19 03:52:33 +01:00
John Reiser
b2b8a128d0
merge
2007-02-18 10:10:17 -08:00
Markus F.X.J. Oberhumer
1cfad80ca2
Introduce a special "ignore_reloc_overflow" section.
2007-02-18 18:29:26 +01:00
John Reiser
a5a80e41b8
merge
2007-02-18 09:09:17 -08:00
Markus F.X.J. Oberhumer
152f8e92bf
Yet some more Watcom optimizations.
2007-02-18 05:43:31 +01:00
Markus F.X.J. Oberhumer
0323560b49
More Watcom optimizations.
2007-02-18 04:41:33 +01:00
Markus F.X.J. Oberhumer
d3bc84a2f7
Some Watcom optimizations.
2007-02-18 03:55:46 +01:00
Markus F.X.J. Oberhumer
8a82c259bd
Switching back to using Watcom C - this seems to work.
2007-02-18 03:02:00 +01:00
Markus F.X.J. Oberhumer
46009c7658
i086 Makefile.extra update.
2007-02-18 02:32:47 +01:00
Markus F.X.J. Oberhumer
6f760308bd
Some cleanasm.py updates.
2007-02-18 01:32:30 +01:00
John Reiser
c346f8f17d
merge
2007-02-16 08:06:37 -08:00
John Reiser
af1d059fff
PackUnix::getLoader() result is not 'const'
2007-02-16 08:05:10 -08:00
John Reiser
5562b21a20
PackMach* checkAlreadyPacked()
2007-02-16 08:02:59 -08:00
Markus F.X.J. Oberhumer
8f68f31877
Use Wine + Digital Mars C/C++ in small model. Does not work yet.
2007-02-16 15:22:01 +01:00
Markus F.X.J. Oberhumer
ce7e94030c
Added i086/l_test.c. Cleanups.
2007-02-16 08:52:31 +01:00
Markus F.X.J. Oberhumer
ccf5a1b972
Add some more funcs to cc_test.c.
2007-02-13 09:48:37 +01:00
Markus F.X.J. Oberhumer
0d5ae77efc
Some more dos/exe updates.
2007-02-13 02:25:32 +01:00
Markus F.X.J. Oberhumer
1695096d18
Commit rebuilt files as well.
2007-02-13 00:39:43 +01:00
Markus F.X.J. Oberhumer
6db0b7cf18
lzma for dos/exe works!
2007-02-13 00:39:15 +01:00
László Molnár
7b39b05894
lzma for dos/exe seems to work with tainted watcom macros
2007-02-12 18:28:24 +01:00
László Molnár
8bea9e0a5e
fixed some watcom support macros
2007-02-12 15:38:47 +01:00
László Molnár
2255b32e45
LZMA for dos/exe integration work. Does not work yet.
2007-02-12 15:12:36 +01:00
Markus F.X.J. Oberhumer
b62573ae8f
More work on lzma for dos/exe.
2007-02-11 21:20:00 +01:00
Markus F.X.J. Oberhumer
44ed84f5cf
Added lzma for dos/exe. Glue code and integration is still missing.
2007-02-11 07:54:16 +01:00
Markus F.X.J. Oberhumer
d008c834be
Merge.
2007-02-11 04:52:53 +01:00
Markus F.X.J. Oberhumer
2d3a914aee
Some i086 updates.
2007-02-11 04:52:33 +01:00
John Reiser
7324f4c3d1
PackMach* filters only the [1st] largest executable LC_SEGMNET
2007-02-10 17:47:04 -08:00
Markus F.X.J. Oberhumer
50c8860a50
Added first version of a clean-room wcc support library implementation.
2007-02-11 01:06:37 +01:00
Markus F.X.J. Oberhumer
6456de7188
i086: added cc_test for examining internal compiler library calls.
2007-02-11 01:02:36 +01:00
John Reiser
23c629f2aa
i386-darwin.macho works!
2007-02-10 13:14:27 -08:00
John Reiser
2bf154f74f
i386-darwin.macho: decompressor overrun, bswap Mach_fat_header
2007-02-10 10:57:02 -08:00
John Reiser
b598ad1bc0
i386-darwin.macho runtime stub
2007-02-10 09:16:49 -08:00
Markus F.X.J. Oberhumer
ace24ad68e
Minor portability fixes.
2007-02-08 16:17:32 +01:00
Markus F.X.J. Oberhumer
750c1a0f27
Avoid compiler warnings.
2007-02-08 15:00:42 +01:00
John Reiser
52d89bd66b
PackMachFat has trouble with --fileinfo
2007-02-07 22:24:42 -08:00
John Reiser
8cfb9d35e9
fix ui report after PackMachFat::unpack
2007-02-07 22:03:15 -08:00
John Reiser
2f529158a0
OutputFile::unset_extent() sets bytes_written
2007-02-07 22:02:28 -08:00
John Reiser
6e68ab6d9e
canUnpack() and unpack() for PackMachBase, PackMachFat
2007-02-07 21:30:18 -08:00
John Reiser
7a3c55af35
fix SEEK_END when set_extent()
2007-02-07 21:21:19 -08:00
John Reiser
fb39d6304a
Enable --lzma for PackMach*.
2007-02-07 11:23:21 -08:00
John Reiser
4cb57d9059
OutputFile::unset_extent(); endianness in Mach_fat_* and PackMachBase::b_info
2007-02-06 13:11:31 -08:00
John Reiser
42d69bd0e5
debug PackMachFat
2007-02-05 22:34:23 -08:00
John Reiser
f27b399f81
PackMachFat
2007-02-05 14:00:41 -08:00
John Reiser
a545a3938f
FileBase::set_extent(offset, length) constrains seek() and tell()
2007-02-03 13:31:44 -08:00
John Reiser
d1e352c9ee
PackMachI386
2007-02-03 11:40:25 -08:00
John Reiser
99be1e798b
PackMachPPC32
2007-02-03 11:04:57 -08:00
John Reiser
2132a28a17
UPX_F_MACH_i386 and skeleton stub. (Much of PackMachI386 is incomplete.)
2007-02-02 13:51:51 -08:00
John Reiser
8b1cc28783
templates to prepare for Mach-O i386 and Universal ("fat") executables
2007-01-31 20:25:13 -08:00
Markus F.X.J. Oberhumer
78364ac830
Small Watcom updates.
2007-01-31 14:28:15 +01:00
Markus F.X.J. Oberhumer
6e5f5732b5
brandelf.py: do not write "Linux" any longer as newer ldd's (e.g.
...
from glibc-common-2.5-10.fc6) do not like this.
2007-01-31 05:58:17 +01:00
Markus F.X.J. Oberhumer
87844254d1
Minor Makefile updates.
2007-01-31 05:53:38 +01:00
Markus F.X.J. Oberhumer
08ef9f69fb
Very minor portability fixes.
2007-01-30 20:36:59 +01:00
Markus F.X.J. Oberhumer
5fbd1b78e7
Added non-working experimental infrastructure for using OpenWatcom 1.6
...
to support i086 + lzma.
2007-01-30 20:25:20 +01:00
Markus F.X.J. Oberhumer
39f5eb753f
Bump version for next release.
2007-01-23 22:17:02 +01:00
Markus F.X.J. Oberhumer
70632e5541
Bump release date.
2007-01-23 22:11:23 +01:00
John Reiser
0bba700105
merge
2007-01-23 10:35:20 -08:00
John Reiser
b71aaccff3
fix amd64-linux.elf-entry.S invoking large programs (>3MB compressed)
2007-01-23 10:34:33 -08:00
Markus F.X.J. Oberhumer
7271ae9611
Small updates.
2007-01-23 13:50:39 +01:00
László Molnár
6e32dff2ad
armpe_tester.c updated to work with files containing 4 sections
2007-01-17 21:53:18 +01:00
László Molnár
8f7c898c08
use an exception instead of assert() for overlay checking (bug #1624840 )
2007-01-16 12:58:35 +01:00
Markus F.X.J. Oberhumer
f4a9815f48
Keep entries sorted in stub/Makefile.
2007-01-15 07:46:22 +01:00
John Reiser
0f8d5c7e98
arm-linux.kernel.vmlinux.S remove unused sections
2007-01-14 13:40:50 -08:00
Markus F.X.J. Oberhumer
5e83596a1b
Enter 2007.
2007-01-14 13:08:58 +01:00
Markus F.X.J. Oberhumer
6361213e07
More portability fixes.
2007-01-14 12:47:38 +01:00
John Reiser
9c59a5d9b6
p_vmlinx test jig for ARM
2007-01-13 17:30:03 -08:00
John Reiser
bb04844bd5
Decompressor for UPX_F_VMLINUX_ARM follows ELF convention
2007-01-13 15:26:05 -08:00
Markus F.X.J. Oberhumer
0b988176fa
Portability fixes.
2007-01-10 17:16:59 +01:00
Markus F.X.J. Oberhumer
a354f18a2d
Consistently use .arch nojumps on i086 and i386.
2007-01-09 22:40:01 +01:00
Markus F.X.J. Oberhumer
a7ca0fec88
Merge.
2007-01-09 18:31:13 +01:00
Markus F.X.J. Oberhumer
06eec508df
Cosmetic macros.S cleanups.
2007-01-09 18:27:53 +01:00
John Reiser
10dc580a3a
tweak i386-linux.kernel.vmlinux-head.S
2007-01-08 13:56:47 -08:00
John Reiser
2f6ae3ef01
merge
2007-01-07 16:33:04 -08:00
John Reiser
392e803905
vmlinux/AMD64 works
2007-01-07 16:31:46 -08:00
John Reiser
83a5fb585b
ELF External_Note
2007-01-03 06:54:48 -08:00
László Molnár
c6205ffbe0
tls index should be zero after decompression
2007-01-02 18:16:16 +01:00
Markus F.X.J. Oberhumer
c04737ce20
Cosmetic cleanup.
2006-12-31 15:51:17 +01:00
John Reiser
11b92172fe
PackVmlinuxBase my_boot_label; kernel Makefiles
2006-12-25 13:55:28 -08:00
László Molnár
3a6c574376
pe: correctly handle import table with 0 entries during decompression ( #1620733 )
2006-12-24 16:25:36 +01:00
Markus F.X.J. Oberhumer
b21ce925fb
Factor out a common Packer::defineFilterSymbols(). Enable filters
...
0x49 and 0x49 for all i386-dos32.* formats. Needs testing.
2006-12-22 16:39:42 +01:00
Markus F.X.J. Oberhumer
de9dcc4ed6
Enable filters 0x49 and 0x46 for win32/pe. This needs some more testing.
2006-12-22 15:28:14 +01:00
Markus F.X.J. Oberhumer
9e77dbfe20
Added an assertion to make sure I've really understood the semantics
...
of the ctok32 filter length.
2006-12-22 15:19:51 +01:00
Markus F.X.J. Oberhumer
4cee0676a4
Consistently rename section names of ctok32 filter.
2006-12-22 14:22:45 +01:00
Markus F.X.J. Oberhumer
8ad9d21db3
Also add ICHECK() calls to p_armpe.cpp.
2006-12-22 13:37:19 +01:00
Markus F.X.J. Oberhumer
8ba8317eea
sf.net bug #1620733 : As a very first step, added two calls to
...
ICHECK(dname,1). Of course we still need a proper fix for this.
2006-12-22 13:35:39 +01:00
Markus F.X.J. Oberhumer
d221187f24
Misc cosmetical cleanups.
2006-12-22 12:36:55 +01:00
Markus F.X.J. Oberhumer
db54ec294f
Added some missing stub/tmp/*.bin.dump files.
2006-12-20 10:50:49 +01:00
John Reiser
1d39796e3f
PackVmlinuxBase::canPack bug for AMD64 with holes between PT_LOAD
2006-12-19 18:18:47 -08:00
John Reiser
cd6a318903
cleanup merge
2006-12-19 16:19:19 -08:00
John Reiser
73090b98ab
merge
2006-12-19 16:16:20 -08:00
John Reiser
745de1abab
refactor PackVmlinuxBase::pack()
2006-12-19 16:12:59 -08:00
John Reiser
961031efc1
make_st_info()
2006-12-19 16:12:15 -08:00
Markus F.X.J. Oberhumer
2487595778
vmlinux: U32 already has target-endian representation, so there is no need
...
to call BeLePolicy::get32() here.
2006-12-19 22:39:37 +01:00
John Reiser
5c4863d504
refactor PackVmlinuxBase ::canUnpack(), ::unpack()
2006-12-19 10:58:20 -08:00
Markus F.X.J. Oberhumer
5e3a658932
Made a method pure virtual.
2006-12-19 16:21:57 +01:00
Markus F.X.J. Oberhumer
cb4704c821
Cosmetic cleanups.
2006-12-19 15:22:50 +01:00
Markus F.X.J. Oberhumer
cc0b7d1492
Use the preprocessor to make sure that the ELF types are PODs.
2006-12-19 14:43:14 +01:00
Markus F.X.J. Oberhumer
f8ebbf8b08
Rework p_elf.h.
2006-12-19 14:24:35 +01:00
Markus F.X.J. Oberhumer
8795f60bf1
vmlinux: use template types throughout.
2006-12-19 11:06:58 +01:00
Markus F.X.J. Oberhumer
f00c0a9436
Fix typo.
2006-12-19 11:04:47 +01:00
Markus F.X.J. Oberhumer
767bc71870
Expose integral types in p_elf.h.
2006-12-19 10:49:13 +01:00
John Reiser
4c068e3e00
PackVmlinuxBase::canPack(); templates are fun!
2006-12-18 22:55:38 -08:00
John Reiser
277d862172
PackVmlinuxBase try template definitions in .cpp file
2006-12-18 20:17:10 -08:00
John Reiser
dbed6a47bb
PackVmlinuxBase use simple templates
2006-12-18 20:08:24 -08:00
Markus F.X.J. Oberhumer
94f3749784
vmlinux refactoring: move destructor into PackVmlinuxBase.
2006-12-19 00:48:38 +01:00
Markus F.X.J. Oberhumer
728e6d851e
Introduce ElfClass and PackVmlinuxBase for refactoring elf based packers.
2006-12-19 00:37:35 +01:00
Markus F.X.J. Oberhumer
11e863545f
Strip trailing whitespace.
2006-12-18 16:56:14 +01:00
Markus F.X.J. Oberhumer
dde49f0bb4
Try to avoid fatal filter failures by better scanning during the setup phase.
2006-12-18 16:54:14 +01:00
Markus F.X.J. Oberhumer
a37a75aecc
First step for preprocessing dumps with xstrip.py. Not working yet.
2006-12-18 16:39:57 +01:00
John Reiser
e43e3aeb1c
arm-linux.kernel documentation update for Debian on nslu2
2006-12-17 18:49:38 -08:00
John Reiser
a8fe529814
arm-linux.kernel preserve .e_flags
2006-12-17 17:39:47 -08:00
John Reiser
d9f5e2bb08
arm-linux.kernel alignment fix
2006-12-17 16:34:21 -08:00
John Reiser
dfa83b0ac8
arm-linux.kernel methods
2006-12-17 15:34:13 -08:00
John Reiser
bd5cef1411
unfilter for arm-linux.kernel
2006-12-17 14:53:10 -08:00
John Reiser
cd70b48831
src/stub/src/arch/arm/v5a directory
2006-12-17 13:24:14 -08:00
John Reiser
50ebf8088a
R_ARM_ABS8
2006-12-17 13:19:37 -08:00
John Reiser
c5cfb7eb40
more arm-linux.kernel work
2006-12-16 22:02:51 -08:00
John Reiser
bccaafda6d
arm-linux stub interfacing for lzma
2006-12-16 17:16:32 -08:00
John Reiser
bf0086d7b5
arm-linux.kernel decompressor
2006-12-16 14:52:22 -08:00
John Reiser
7e65938ca6
fix filename in initial comment
2006-12-16 08:40:41 -08:00
John Reiser
112eff2509
add UPX_F_VMLINUX_AMD64, UPX_F_VMLINUX_ARM
2006-12-16 08:13:34 -08:00
Markus F.X.J. Oberhumer
d7837d9179
Use FT_ULTRA_BRUTE.
2006-12-12 10:06:24 +01:00
Markus F.X.J. Oberhumer
6cdd057f80
Coding style cleanups.
2006-12-12 10:05:57 +01:00
Markus F.X.J. Oberhumer
5a03b213fb
More stricter check in xstrip.py.
2006-12-12 07:50:05 +01:00
Markus F.X.J. Oberhumer
f270213246
Make sure ph.first_offset_found is set.
2006-12-12 07:49:50 +01:00
László Molnár
2e1795c5ba
win32/pe: loadconf data should not be put into section 2
2006-12-10 23:42:27 +01:00
Markus F.X.J. Oberhumer
732d6710d3
Remove misleading "const" from Linker::preprocessXX().
2006-12-10 00:38:28 +01:00
Markus F.X.J. Oberhumer
edf384d2ee
Micro-optimization: save 1 byte in tmt/adam stub.
2006-12-09 13:56:47 +01:00
László Molnár
c307640826
use memcmp instead of strncmp when searching for ljmp
2006-12-08 19:20:35 +01:00
Markus F.X.J. Oberhumer
a77b598f82
Implement a micro-optimization which has been on our TODO list for ages:
...
remove "or ebp,-1" when not needed
2006-12-08 09:20:14 +01:00
Markus F.X.J. Oberhumer
217420cfa5
Also verifyOverlappingDecompression() for watcom/le.
2006-12-06 12:20:22 +01:00
Markus F.X.J. Oberhumer
f2b9dff596
More work so that watom/le now uses compressWithFilters().
2006-12-06 11:08:32 +01:00
Markus F.X.J. Oberhumer
ae945ed315
Clean up help and avoid using backticks as quoting chars.
2006-12-06 08:11:55 +01:00
Markus F.X.J. Oberhumer
770c153c76
Start using FT_ULTRA_BRUTE.
2006-12-06 07:42:43 +01:00
Markus F.X.J. Oberhumer
29c4a7e606
Remove debugging leftover.
2006-12-06 07:34:57 +01:00
Markus F.X.J. Oberhumer
8875470b37
Refactored compressWithFilters().
2006-12-06 07:27:23 +01:00
Markus F.X.J. Oberhumer
6e52364bcb
Minor cleanup of callback code.
2006-12-05 17:09:18 +01:00
László Molnár
9220b6f1d5
win32/pe should only handle ix86 files
2006-12-03 10:46:14 +01:00
Markus F.X.J. Oberhumer
1d0d538d0c
Added new option '--ultra-brute'.
2006-12-01 02:47:46 +01:00
Markus F.X.J. Oberhumer
83052eafae
Minor cleanups.
2006-12-01 00:57:03 +01:00
Markus F.X.J. Oberhumer
fa95c3c4a2
Display full format name with --fileinfo.
2006-11-30 23:34:19 +01:00
Markus F.X.J. Oberhumer
665dcf221b
Cosmetic cleanup.
2006-11-30 23:21:47 +01:00
Markus F.X.J. Oberhumer
8f73dbd253
Mention --compress-icons=3.
2006-11-30 23:18:21 +01:00
Markus F.X.J. Oberhumer
826312cbad
Show all supported formats in show_help().
2006-11-30 23:17:22 +01:00
Markus F.X.J. Oberhumer
72a18f2b3f
Added Packer::getFullName() method.
2006-11-29 06:44:48 +01:00
Markus F.X.J. Oberhumer
a6b5e3d0ae
Bump version for next release.
2006-11-29 05:41:39 +01:00
Markus F.X.J. Oberhumer
fbde0b9f35
Bump release date.
2006-11-29 03:43:29 +01:00
Markus F.X.J. Oberhumer
0e5f5e54cc
Initalize isrtm member.
2006-11-27 17:35:16 +01:00
Markus F.X.J. Oberhumer
cbb5902066
Improve xstrip.py.
2006-11-25 15:36:56 +01:00
Markus F.X.J. Oberhumer
92ec1b0598
Add and use stub/scripts/xstrip.py.
2006-11-23 05:27:40 +01:00
Markus F.X.J. Oberhumer
a62fc3abff
Try to remove .shstrtab, .strtab and .symtab sections. This does not seem to
...
work with objcopy.
2006-11-23 03:31:43 +01:00
Markus F.X.J. Oberhumer
08f8e55446
More updates on bin2h.py.
2006-11-23 03:11:53 +01:00
Markus F.X.J. Oberhumer
68f54a3247
Updated bin2h.py.
2006-11-23 02:23:39 +01:00
Markus F.X.J. Oberhumer
29c099fe56
Disallow --exact with --overlay=strip.
2006-11-22 19:29:07 +01:00
Markus F.X.J. Oberhumer
76b81c7b35
More stricter check for arm-wince Debian.
2006-11-22 18:52:57 +01:00
László Molnár
d6b33ffd6b
pe: --compress-icons=3 option added to compress all icons
2006-11-22 15:28:35 +01:00
Markus F.X.J. Oberhumer
16b9873fa8
Quick workaround for arm-wince build with Debian cross-compiler packages.
2006-11-22 01:56:59 +01:00
Markus F.X.J. Oberhumer
ba4a686d1c
Fix endian issue in execve formats.
2006-11-21 18:42:38 +01:00
László Molnár
4be3d79e12
arm/pe: fix "missing" icon & version info resource problem for wince 5
2006-11-21 18:25:23 +01:00
Markus F.X.J. Oberhumer
2569b09dbe
Added debugging option --disable-random-id.
2006-11-21 18:17:51 +01:00
Markus F.X.J. Oberhumer
5d71e69941
Added two checks for throwCantPackExact.
2006-11-21 18:01:16 +01:00
Markus F.X.J. Oberhumer
16163bf20b
Initial support for option '--exact'.
2006-11-21 17:53:11 +01:00
Markus F.X.J. Oberhumer
f1a97fecbd
Minor cleanups.
2006-11-21 17:35:22 +01:00
Markus F.X.J. Oberhumer
a050f82f0e
Implemented the remaining missing pieces of compress_zlib.
2006-11-21 17:19:24 +01:00
Markus F.X.J. Oberhumer
ef7beea334
Cosmetic cleanups.
2006-11-21 16:17:47 +01:00
Markus F.X.J. Oberhumer
3f4acb33f9
First step for possibly using ElfLinker with linux execve/interp/shell stubs
...
as well.
2006-11-21 16:00:25 +01:00
Markus F.X.J. Oberhumer
14822e6395
Now that it seems to work, disable usage of pre-compressed stubs again.
2006-11-21 07:14:07 +01:00
Markus F.X.J. Oberhumer
e82db4ed38
Use proper const_cast.
2006-11-21 06:32:13 +01:00
Markus F.X.J. Oberhumer
87b7ea9cf3
Add LZMA support for pre-compressed stubs.
2006-11-21 06:09:04 +01:00
Markus F.X.J. Oberhumer
787b1fceff
Actually generate and use pre-compressed stubs. Currently this is mainly
...
for testing as the self-packed upx binary does get _larger_ this way.
2006-11-21 05:29:29 +01:00
Markus F.X.J. Oberhumer
140d6ad839
Avoid compiler warning.
2006-11-21 05:09:01 +01:00
Markus F.X.J. Oberhumer
46e8e22236
Prepare generating pre-compressed stubs.
2006-11-21 05:03:25 +01:00
Markus F.X.J. Oberhumer
c386db2b33
Small cosmetic changes.
2006-11-21 05:01:54 +01:00
Markus F.X.J. Oberhumer
8dad091c6b
Decompress pre-compressed stubs in Linker::init().
2006-11-21 05:01:00 +01:00
Markus F.X.J. Oberhumer
3365ccbb9c
Implemented upx_zlib_decompress().
2006-11-21 04:42:47 +01:00
Markus F.X.J. Oberhumer
2ced230965
Updated packers to use new stub names.
2006-11-21 03:40:11 +01:00
Markus F.X.J. Oberhumer
989d10a3e1
Rebuilt all stubs with new bin2h.py and --ident=auto-stub.
2006-11-21 03:36:48 +01:00
Markus F.X.J. Oberhumer
62d8c69774
Enhanced bin2h.py: added --ident=auto, added --compress=XXX.
2006-11-21 03:34:08 +01:00
Markus F.X.J. Oberhumer
cf704257b0
Remove some traces of patch_le32.
2006-11-20 18:19:37 +01:00
Markus F.X.J. Oberhumer
a6cb6f57d3
Introduce Packer::relocateLoader(). This is the first step of finally getting
...
rid of all Packer::patchXXX() methods.
2006-11-20 18:10:23 +01:00
Markus F.X.J. Oberhumer
141c703ed5
Use ld option --no-warn-mismatch when generating binary output.
2006-11-20 17:36:04 +01:00
John Reiser
796d58867b
use separate stub/armeb-linux.elf-entry and fold
2006-11-20 08:02:28 -08:00
Markus F.X.J. Oberhumer
2f483ec8e8
Fix compression ratio check.
2006-11-20 13:48:34 +01:00
Markus F.X.J. Oberhumer
e338918773
Disable new/delete for bele policies.
2006-11-20 12:57:49 +01:00
Markus F.X.J. Oberhumer
d9effc58cf
Added initial version of armeb-linux.elf stubs. Completely untested.
2006-11-20 12:40:57 +01:00
Markus F.X.J. Oberhumer
05d03f97fc
Introduce Packer::bele.
2006-11-20 12:01:59 +01:00
Markus F.X.J. Oberhumer
03e891c0e8
Remove implicit magic from OptVar copy operator and introduce oassign()
...
function instead.
2006-11-20 11:04:31 +01:00
Markus F.X.J. Oberhumer
4dfe9d52e9
Don't be too strict when checking the compression ratio (sf.net
...
feature request #1596111 ).
2006-11-20 09:40:46 +01:00
John Reiser
9e65692b69
Merge
2006-11-19 14:32:28 -08:00
John Reiser
0687c9a57a
PackLinuxElf32::ARM_buildLoader endianness bugs
2006-11-19 14:28:15 -08:00
Markus F.X.J. Oberhumer
ffe1287016
Added option '--cpr-lzma-ds=XX'.
2006-11-19 18:50:35 +01:00
Markus F.X.J. Oberhumer
75b7e7260f
Merge.
2006-11-19 05:16:12 +01:00
Markus F.X.J. Oberhumer
d631e081bc
arm-linux.elf: make two symbols global.
2006-11-19 05:09:01 +01:00
John Reiser
db5843d904
branch merge
2006-11-18 19:57:56 -08:00
John Reiser
5ec16153f7
PackLinuxElf64amd::defineSymbols forgot a get_native64()
2006-11-18 19:52:55 -08:00
Markus F.X.J. Oberhumer
8c873ccdc8
watcom/le: initialize memory when aligning.
2006-11-18 21:59:59 +01:00
Markus F.X.J. Oberhumer
c95088f8d5
Merge.
2006-11-18 20:55:07 +01:00
Markus F.X.J. Oberhumer
519fa55df7
ps1/exe: fill pad.code section with zeros.
2006-11-18 20:54:10 +01:00
John Reiser
b8dda033ed
branch merge
2006-11-18 11:51:23 -08:00
John Reiser
0359e9c5c7
members of struct l_info loader header must be little endian
2006-11-18 11:42:08 -08:00
Markus F.X.J. Oberhumer
d822b4a62a
Store shentsize in target byte-order.
2006-11-18 18:25:11 +01:00
Markus F.X.J. Oberhumer
d9e8c953b1
Fixed some ElfLinker endian issues.
2006-11-18 17:43:29 +01:00
Markus F.X.J. Oberhumer
9eca502026
Make upx build with gcc-2.95 again.
2006-11-18 14:37:22 +01:00
Markus F.X.J. Oberhumer
cd0efe3edb
Some atari/tos cleanups.
2006-11-18 02:39:11 +01:00
Markus F.X.J. Oberhumer
8146e9cbcd
Implemented some small atari/tos optimizations.
2006-11-17 18:47:33 +01:00
Markus F.X.J. Oberhumer
5d95275024
Add some more calls to f-objstrip.
2006-11-17 14:50:59 +01:00
Markus F.X.J. Oberhumer
49a97eea4b
More brandelf.py updates.
2006-11-17 14:50:42 +01:00
Markus F.X.J. Oberhumer
36e9c27e9c
Updated brandelf.py.
2006-11-16 22:23:01 +01:00
Markus F.X.J. Oberhumer
6e5153cd07
Minor Makefile updates.
2006-11-16 21:14:58 +01:00
Markus F.X.J. Oberhumer
c73da864c8
Avoid -Wshadow warnings.
2006-11-16 20:14:14 +01:00
Markus F.X.J. Oberhumer
071bb75700
Use new addLoader() method.
2006-11-16 20:12:53 +01:00
Markus F.X.J. Oberhumer
99374de340
Clean up stub sources.
2006-11-16 19:36:13 +01:00
Markus F.X.J. Oberhumer
db7ae4ed5d
Improve Packer:addLoader(). We're still somewhat limited because of gcc-bug
...
#29823 (see http://gcc.gnu.org/PR29823 ).
2006-11-16 18:52:20 +01:00
Markus F.X.J. Oberhumer
e61f481881
Added .DELETE_ON_ERROR rules.
2006-11-16 18:49:34 +01:00
Markus F.X.J. Oberhumer
396a3ad2fc
Small atari cleanups.
2006-11-13 10:51:45 +01:00
Markus F.X.J. Oberhumer
be235ddc38
Removed unused Packer::freezeLoader(). Changed return type of
...
buildLoader() from "int" to "void".
2006-11-12 20:57:08 +01:00
Markus F.X.J. Oberhumer
9e72ecd93d
Fix version date.
2006-11-12 18:49:48 +01:00
Markus F.X.J. Oberhumer
8e0bd936eb
atari/tos now seems to work again.
2006-11-12 18:25:46 +01:00
Markus F.X.J. Oberhumer
9d0270dcd6
We have to bswap32 lzma_properties on big-endian machines.
2006-11-12 18:10:42 +01:00
Markus F.X.J. Oberhumer
713415c354
Fix broken "glibc sscanf bug workaround".
2006-11-12 14:47:50 +01:00
Markus F.X.J. Oberhumer
786550572e
More work on atari/tos.
2006-11-12 13:46:38 +01:00
Markus F.X.J. Oberhumer
46caeddc81
Added some more debugging support to Linker.
2006-11-12 13:45:27 +01:00
Markus F.X.J. Oberhumer
71bfde2bfe
Bump tentative release date.
2006-11-12 10:59:27 +01:00
Markus F.X.J. Oberhumer
76771b845a
Started work on atari/tos.
2006-11-12 10:58:04 +01:00
Markus F.X.J. Oberhumer
a74e239e28
Major cleanup of ElfLinker.
2006-11-12 10:57:18 +01:00
Markus F.X.J. Oberhumer
6e763b0b42
Updated options.
2006-11-12 10:56:17 +01:00
Markus F.X.J. Oberhumer
2f41ece017
Minor cleanups.
2006-11-10 13:49:22 +01:00
Markus F.X.J. Oberhumer
417bd06e76
Fixed --brute and --lzma for dos/exe.
2006-11-07 13:58:32 +01:00
Markus F.X.J. Oberhumer
91e46e3cf8
Small cleanups.
2006-11-07 13:43:43 +01:00
Markus F.X.J. Oberhumer
deb5139c4d
Re-enable --crp-ms= option.
2006-11-07 13:37:46 +01:00
Markus F.X.J. Oberhumer
862ac5d014
Update options_t::crp_t to directly use the XXX_compress_config_t types.
2006-11-07 13:11:36 +01:00
Markus F.X.J. Oberhumer
028235d421
Keep variable names sorted.
2006-11-07 10:24:54 +01:00
Markus F.X.J. Oberhumer
143d399849
Updated two "xchg" commands to produce byte-identical results with UPX 2.02.
2006-11-07 09:35:00 +01:00
László Molnár
375f171e47
dos/com&sys: correctly set carry bit by using "sub si,-xx" instead of "add si,xx"
2006-11-06 17:54:37 +01:00
László Molnár
387edcf4b2
dos/com: fix fatal bug #1589758
2006-11-03 15:52:20 +01:00
Markus F.X.J. Oberhumer
011cd37cfb
Small cleanup of arm sources.
2006-10-30 14:10:51 +01:00
Markus F.X.J. Oberhumer
0d4254f319
Added tc_objdump_disasm_options.
2006-10-30 13:21:48 +01:00
Markus F.X.J. Oberhumer
4c407c2850
Rebuild all stubs. Minor Makefile cleanup.
2006-10-25 04:08:59 +02:00
John Reiser
829e2d6c5d
set e_shentsize to work around bug in binutils [mostly cosmetic]
2006-10-24 09:43:50 -07:00
John Reiser
a31c4bd474
more renaming for i386-linux.kernel.vmlinux-head.h
2006-10-24 09:29:01 -07:00
John Reiser
17f24dc377
PackBvmlinuzI386 allow x86_64
2006-10-18 08:35:25 -07:00
John Reiser
de3e9f2809
vmlinuz/386 fix for physical_start not at bzimage_offset
2006-10-16 17:18:19 -07:00
John Reiser
4442a282e1
fix filename in #includ
2006-10-16 10:52:57 -07:00
John Reiser
261010f23d
fix comment
2006-10-16 06:12:58 -07:00
John Reiser
ede44ca6ee
vmlinux/386 naming convention for source files
2006-10-16 06:11:49 -07:00
John Reiser
452a953234
vmlinux/386 check for __ksymtab; fix unpack
2006-10-15 14:51:02 -07:00
John Reiser
2b122562ad
new file i386-linux.kernel.head-vmlinux.S
2006-10-14 14:55:10 -07:00
John Reiser
6891bc3da3
vmlinux/i386: fix filters, 0x400000 start, integration with kernel build
2006-10-14 14:52:30 -07:00
Markus F.X.J. Oberhumer
b31b8cd7f0
Added option '--crp-lzma-fb='. Started tuning lzma compression
...
levels '-1' and '-2'.
2006-10-12 14:23:22 +02:00
Markus F.X.J. Oberhumer
e1379ac5ce
Removed debugging leftover.
2006-10-12 13:48:07 +02:00
Markus F.X.J. Oberhumer
0ef3f75d7a
Introduced class OptVar for tracking optionally set options. Also
...
added three new options for finetuning lzma compression.
2006-10-12 13:47:15 +02:00
Markus F.X.J. Oberhumer
892bb9bf30
Re-add "beta" string to versions.
2006-10-11 13:06:17 +02:00
Markus F.X.J. Oberhumer
47ac871a12
Added version_string() functions for the compression algorithms. Also
...
reserved M_DEFLATE and added a mostly empty compress_zlib.cpp.
2006-10-11 12:56:28 +02:00
László Molnár
a38c3e7f6d
ps1: initialize an uninitialized variable
2006-10-10 15:44:02 +02:00
Markus F.X.J. Oberhumer
0a68afef00
Bump version for next release.
2006-10-08 22:38:57 +02:00
Markus F.X.J. Oberhumer
c2e5e45c84
Fix UINT64_MAX.
2006-10-06 08:42:12 +02:00
John Reiser
014236c861
amd64 stub: fix length of move for non-small programs
2006-10-04 08:38:06 -07:00
Markus F.X.J. Oberhumer
610fd7561b
Bump tentative release date. Update NEWS.
2006-10-04 09:26:34 +02:00
Markus F.X.J. Oberhumer
d6f4480a4f
Removed debugging leftover.
2006-10-04 09:17:59 +02:00
Markus F.X.J. Oberhumer
28a6ac09ad
Initialize a field in constructor.
2006-10-04 09:14:13 +02:00
John Reiser
86e4d24476
avoid circularity of sz_pack2 in PackLinuxElf64amd::defineSymbols()
2006-10-03 20:21:36 -07:00
John Reiser
913a697ab2
Remove dead code and uses of sz_pack2 from PackLinuxElf32::ARM_defineSymbols()
2006-10-03 19:28:08 -07:00
Markus F.X.J. Oberhumer
ebef2b1e44
Avoid a printf warning.
2006-10-04 00:16:55 +02:00
Markus F.X.J. Oberhumer
a61457b422
Added some debugging support via Linker::dumpSymbols().
2006-10-03 23:48:19 +02:00
László Molnár
8f7f1135df
win32/pe: size of tls_value should be 32 bits
2006-10-03 17:01:47 +02:00
John Reiser
d2b72cf496
sync
2006-10-03 06:59:10 -07:00
John Reiser
b84af27a86
typo "pop %eax" [not caught by assembler?]
2006-10-01 16:19:17 -07:00
John Reiser
b45f28f3e9
propagate changes from *.S to *.h
2006-10-01 14:42:39 -07:00
John Reiser
bfa1b5656a
preserve readlink("/proc/self/exe",,) in environment " ="
2006-10-01 14:41:09 -07:00
John Reiser
47f946cd65
fix the comments
2006-10-01 14:25:14 -07:00