John Reiser
c117491549
arm-9tdmi-linux-gnu-gcc is gcc-3.4.5-glibc-2.3.6; old was gcc-3.4.1-glibc-2.3.3
2006-06-12 11:05:52 -07:00
Markus F.X.J. Oberhumer
d8748f4270
Introduced MemBuffer::getSizeForCompression().
2006-06-12 13:18:55 +02:00
Markus F.X.J. Oberhumer
c34daf1a35
Make code -Wshadow warning free.
2006-06-11 12:25:19 +02:00
Markus F.X.J. Oberhumer
d461b53235
Renamed variable clen to c_len and ulen to u_len.
2006-06-11 12:13:37 +02:00
Markus F.X.J. Oberhumer
c3ee14eb67
Introduced upx_compress_result_t.
2006-06-11 12:09:25 +02:00
Markus F.X.J. Oberhumer
869fb8e327
Merge.
2006-06-11 00:01:56 +02:00
John Reiser
fbbc3024d6
Linux ARM cacheflush
2006-06-10 14:41:50 -07:00
Markus F.X.J. Oberhumer
f1ba0c0aa7
More lzma stuff.
2006-06-09 18:36:53 +02:00
Markus F.X.J. Oberhumer
54340ab4bf
Renamed environment variable UCLDIR to UPX_UCLDIR.
2006-06-09 15:22:42 +02:00
Markus F.X.J. Oberhumer
39732eee5e
Merge.
2006-06-09 09:30:42 +02:00
Markus F.X.J. Oberhumer
a9e4526a6d
Rearranged compression interface.
2006-06-09 09:28:32 +02:00
John Reiser
57a6d2abf9
Merge
2006-06-08 20:51:59 -07:00
John Reiser
d6246941ac
fix f_unfilter 0x50
2006-06-08 20:48:43 -07:00
László Molnár
2eb91f9b91
do not assume osection[0].rawdataptr > 0 during decompression
2006-06-08 16:52:54 +02:00
Markus F.X.J. Oberhumer
34ae413607
Initial lzma support.
2006-06-07 04:42:15 +02:00
Markus F.X.J. Oberhumer
ee9f8c184b
Small updates.
2006-06-06 19:07:38 +02:00
Markus F.X.J. Oberhumer
b8a16ea99d
Merge.
2006-06-06 17:38:39 +02:00
Markus F.X.J. Oberhumer
89cfa22c3f
Final cleanups for 2.01.
2006-06-06 17:36:34 +02:00
John Reiser
1f18050930
elf32arm escape hatch: avoid Elf32_Ehdr if possible
2006-06-02 08:51:02 -07:00
John Reiser
537b78d564
fix elf32arm unmapping hatch
2006-06-01 22:48:52 -07:00
John Reiser
717fd57ce1
remember b_info for Elf headers; also: escape hatch
2006-06-01 12:00:05 -07:00
John Reiser
3fb7786868
[re-]comment-out debugging 'int3'
2006-06-01 11:12:30 -07:00
John Reiser
17ecfc9765
new class PackLinuxElf32arm : PackLinuxElf32Le;
...
Unify some functions in leaf classes by moving to parent class.
2006-06-01 06:37:44 -07:00
John Reiser
5326260a76
new elf32arm; small effects in elf86, linux.hh
2006-06-01 06:32:33 -07:00
John Reiser
e7522f4bdf
branch merge
2006-05-24 13:59:43 -07:00
John Reiser
504deeff42
ET_DYN cannot be old format for decompression
2006-05-24 13:15:39 -07:00
Markus F.X.J. Oberhumer
b7785b64cf
Small cleanups to keep p_armpe & p_w32pe in sync.
2006-05-24 19:21:26 +02:00
László Molnár
f914cb6858
pe: added support for empty resource section
2006-05-24 17:14:09 +02:00
John Reiser
51536a7acd
decompression PackLinuxElf32x86.ET_DYN
2006-05-23 17:42:35 -07:00
John Reiser
60b4cca5e5
use powerpc-750-linux-gnu/gcc-3.4.3.20050210-glibc-2.2.5
2006-05-22 13:14:54 -07:00
John Reiser
d2718e99a4
Change class PackLinuxI386elf : public PackLinuxI386
...
into class PackLinuxElf32x86 : public PackLinuxElf32Le : public PackLinuxElf32
which makes the code for compressing ELF (for direct-to-memory decompression)
cleaner because ELF has some of the class tree to itself.
This assumes PROT_EXEC|PROT_WRITE ought to work.
This is checked at runtime, and if it fails then
give a message on stderr and exit(127).
Modify --force-execve so that runtime avoids PROT_EXEC|PROT_WRITE.
Then executables compressed with --force-execve will run under
PaX, grSecurity, and strict SELinux.
2006-05-21 13:58:24 -07:00
John Reiser
69a00c0ab3
*BSD requires -1==fd for MAP_ANONYMOUS
...
stub/l_lx_exec.c stub/l_lx_sh.c stub/l_lx_sh86.asm
2006-05-21 13:45:57 -07:00
Markus F.X.J. Oberhumer
3272d23917
Renamed variable hdr_clen to hdr_c_len.
2006-05-20 13:44:36 +02:00
Markus F.X.J. Oberhumer
7f0545cae7
Check result of hdr compression.
2006-05-20 13:37:34 +02:00
Markus F.X.J. Oberhumer
68f35deb86
Fixed a rare boundary problem in Packer::compressWithFilters().
...
The comparision if an update might be possible later was using
"<" instead of "<=" which resulted in missing calls to
findOverlapOverhead() and buildLoader().
Also, the comparision had not been updated for the newly added
hdr_clen fields.
This fixes sf.net bug #1477825 .
2006-05-20 13:29:01 +02:00
László Molnár
a7d8845952
mention --keep-resource in NEWS and help.cpp
2006-05-18 15:54:35 +02:00
László Molnár
3dfe0ad478
pe: fined grain control over resource compression
2006-05-18 15:20:37 +02:00
László Molnár
9a3b7a4f3f
arm/pe: really fix the memory leak
2006-05-18 15:20:11 +02:00
László Molnár
78579b1103
pe: do not crash on out of bounds bogus relocation records
2006-05-18 15:19:55 +02:00
László Molnár
7d50344512
pe: fixed a memory leak in the resource handling code
2006-05-18 15:19:13 +02:00
László Molnár
7a00c12065
arm/pe: minor cleanup in the thumb mode stub
2006-05-18 15:18:50 +02:00
László Molnár
af71e67681
arm/pe: saved 4 bytes in the arm mode stub
2006-05-18 15:18:36 +02:00
László Molnár
b3e20fc324
arm/pe: no need to try to precompute the size of relocations
2006-05-18 15:18:13 +02:00
László Molnár
bd1014abb6
dos/exe: saved some bytes in device driver mode
2006-05-18 15:17:53 +02:00
László Molnár
7f76664a5d
Merged with mainline
2006-05-18 13:10:15 +02:00
Markus F.X.J. Oberhumer
0ece50c122
Removed .cvsignore and .gitignore files.
2006-05-18 09:02:00 +02:00
László Molnár
0ca8ae17d4
updated my email address
2006-05-17 21:05:46 +02:00
László Molnár
0d69d228e4
arm/pe: no need to allocate extra memory in the import table
...
committer: ml1050 <ml1050> 1147090379 +0000
2006-05-08 12:12:59 +00:00
Markus F.X.J. Oberhumer
9fb4af8658
Updated Makefile.
...
committer: mfx <mfx> 1147081156 +0000
2006-05-08 09:39:16 +00:00
László Molnár
9bb6ba9311
dos/exe: device driver support added (thanks Michael Devore)
...
committer: ml1050 <ml1050> 1147078121 +0000
2006-05-08 08:48:41 +00:00
László Molnár
596827a912
remove obsolete files: l_armpe.asm l_armpe.h l_armpe_c.c l_armpe_s.S
...
committer: ml1050 <ml1050> 1146763209 +0000
2006-05-04 17:20:09 +00:00
László Molnár
89b4292445
saved 2 bytes
...
committer: ml1050 <ml1050> 1146763076 +0000
2006-05-04 17:17:56 +00:00
László Molnár
dd88737414
it works on wince now (only with dlls)
...
committer: ml1050 <ml1050> 1146763013 +0000
2006-05-04 17:16:53 +00:00
László Molnár
5456cfc304
arm/pe: use the new linker friendly stubs
...
two linkers: one for arm mode, one for thumb mode
the import address table is moved to the stubs area of compressed files
changed the alignment of some header fields
the command line option "--8086" can be used to force thumb mode on
committer: ml1050 <ml1050> 1146647520 +0000
2006-05-03 09:12:00 +00:00
László Molnár
1e66096ea7
arm/pe stubs: the import address table is moved to the stub
...
committer: ml1050 <ml1050> 1146646915 +0000
2006-05-03 09:01:55 +00:00
John Reiser
2b6ae3908c
/usr/bin/dyld can be a "fat binary" [how stupid!]
...
m_mac_mach32.c fold_machppc32.S fold_machppc32.h
committer: jreiser <jreiser> 1146434013 +0000
2006-04-30 21:53:33 +00:00
László Molnár
1924612479
a small fix for the thumb stub
...
committer: ml1050 <ml1050> 1146224685 +0000
2006-04-28 11:44:45 +00:00
László Molnár
2af5bdeaab
added some debugging code
...
committer: ml1050 <ml1050> 1146154452 +0000
2006-04-27 16:14:12 +00:00
László Molnár
b28565b38d
new files: l_armpea.h l_armpet.h
...
committer: ml1050 <ml1050> 1146154411 +0000
2006-04-27 16:13:31 +00:00
László Molnár
fec602362b
added new virtual function createLinker()
...
committer: ml1050 <ml1050> 1146153290 +0000
2006-04-27 15:54:50 +00:00
László Molnár
6753c5f45a
trying to implement the user space loader on native wince
...
committer: ml1050 <ml1050> 1146152386 +0000
2006-04-27 15:39:46 +00:00
Markus F.X.J. Oberhumer
2f3c108d42
Next version will be 2.01.
...
committer: mfx <mfx> 1146140843 +0000
2006-04-27 12:27:23 +00:00
Markus F.X.J. Oberhumer
e6274904a7
Rebuilt using i386-linux-ld-2.16.1 and i386-linux-objcopy-2.16.1.
...
committer: mfx <mfx> 1146079399 +0000
2006-04-26 19:23:19 +00:00
Markus F.X.J. Oberhumer
3677395444
Add version suffix to the binutils we use. Prefix all linux/386 tools
...
with i386-linux-.
committer: mfx <mfx> 1146079325 +0000
2006-04-26 19:22:05 +00:00
László Molnár
22ba35b3b5
new arm/pe assembly with UPX linker support
...
committer: ml1050 <ml1050> 1145955479 +0000
2006-04-25 08:57:59 +00:00
Markus F.X.J. Oberhumer
9c1ab9979b
Split "$Id" strings so that CVS does not interfere. Explicitlty
...
use ".p2align" and ".balign" instead of ".align".
committer: mfx <mfx> 1145864788 +0000
2006-04-24 07:46:28 +00:00
John Reiser
eaa463e1c9
Insert copyright notice (equivalent to ident_s.ash) into stub by hand
...
because buildLoader is not fully working yet
l_lx_elf64amd.S l_lx_elfppc32.S l_mac_ppc32.S
committer: jreiser <jreiser> 1145825498 +0000
2006-04-23 20:51:38 +00:00
John Reiser
6984be48c3
build sync: compile using crosstool gcc-3.4.3.20050507-glibc-2.3.5
...
committer: jreiser <jreiser> 1145820281 +0000
2006-04-23 19:24:41 +00:00
John Reiser
b739bd3d79
Work better with SELinux. We still require allow_execmem.
...
p_lx_elf.cpp
stub/fold_elfppc32.h
stub/l_lx_elfppc32.h
stub/l_lx_elfppc32.S
stub/m_lx_elfppc32.c
committer: jreiser <jreiser> 1145666524 +0000
2006-04-22 00:42:04 +00:00
John Reiser
23f3e4396c
For elf64and and elfppc32: -fno-exceptions -fno-asynchronous-unwind-tables
...
committer: jreiser <jreiser> 1145666377 +0000
2006-04-22 00:39:37 +00:00
John Reiser
c264750924
Adapt better to SELinux. We still need allow_execmem.
...
p_lx_elf.cpp
stub/a_lx_elf64.c
stub/l_lx_elf64amd.h
stub/l_lx_elf64amd.lds
stub/l_lx_elf64amd.S
stub/fold_elf64amd.h
committer: jreiser <jreiser> 1145657332 +0000
2006-04-21 22:08:52 +00:00
John Reiser
c155f0a5d5
Better fit with SELinux. Now requires only execmem, which Fedora Core 5
...
enables as default for non-confined [ordinary] executables.
l_lx_elf.c
l_lx_elf86.asm
l_lx_elf86.h
l_lx_elf86.lds
fold_elf86.asm
fold_elf86.h
committer: jreiser <jreiser> 1145634453 +0000
2006-04-21 15:47:33 +00:00
László Molnár
76734f086d
added an arm/linux based loader/tester for arm/pe files
...
committer: ml1050 <ml1050> 1145605029 +0000
2006-04-21 07:37:09 +00:00
Markus F.X.J. Oberhumer
509ab8261f
Avoid code bloat in the official builds.
...
committer: mfx <mfx> 1145436321 +0000
2006-04-19 08:45:21 +00:00
Markus F.X.J. Oberhumer
1e05b40d4f
Whitespace changes.
...
committer: mfx <mfx> 1145436164 +0000
2006-04-19 08:42:44 +00:00
John Reiser
58cce9d2f8
Give message on stderr when SELinux enforcing mode inhibits execution.
...
l_lx_elf.c fold_elf86.asm fold_elf86.h
committer: jreiser <jreiser> 1145393418 +0000
2006-04-18 20:50:18 +00:00
László Molnár
2eb6e3b0ea
arm/pe & w32/pe: disable filters for files with broken headers
...
committer: ml1050 <ml1050> 1145356307 +0000
2006-04-18 10:31:47 +00:00
John Reiser
fb1181ed26
Allow executables >=3MB on elf64amd; -r1.69 on 2005-11-12 forgot to remove check.
...
committer: jreiser <jreiser> 1145139994 +0000
2006-04-15 22:26:34 +00:00
John Reiser
0e0ca08924
Propagate changes from linux.hh.
...
fold_elf86.h fold_pti86.h fold_sh86.h
committer: jreiser <jreiser> 1144967510 +0000
2006-04-13 22:31:50 +00:00
John Reiser
5d948a67a8
Propagate changes from linux.hh.
...
Also adjust calling segquence of upx_main() to shave a few bytes.
l_lx_exec.c fold_exec86.asm fold_exec86.h
committer: jreiser <jreiser> 1144967447 +0000
2006-04-13 22:30:47 +00:00
John Reiser
6a4db2ecab
Linux syscalls can clobber any input register, thanks to gcc and
...
the lack of a Linux kernel ABI.
linux.hh
committer: jreiser <jreiser> 1144967342 +0000
2006-04-13 22:29:02 +00:00
Markus F.X.J. Oberhumer
f700273624
Really bump the release date.
...
committer: mfx <mfx> 1144944628 +0000
2006-04-13 16:10:28 +00:00
Markus F.X.J. Oberhumer
0c198e0ccc
Set tentative release date.
...
committer: mfx <mfx> 1144944070 +0000
2006-04-13 16:01:10 +00:00
Markus F.X.J. Oberhumer
71ffbbc420
Prepared 1.96 release.
...
committer: mfx <mfx> 1144943500 +0000
2006-04-13 15:51:40 +00:00
Markus F.X.J. Oberhumer
4fd09b889d
Updated .cvsignore.
...
committer: mfx <mfx> 1144943334 +0000
2006-04-13 15:48:54 +00:00
László Molnár
4cb2a3eebe
show image size change in info mode
...
committer: ml1050 <ml1050> 1144941392 +0000
2006-04-13 15:16:32 +00:00
László Molnár
779033d0bc
added filter (id: 0x50) support to the stub
...
the data cache is written back before the stub jumps to the uncompressed code
committer: ml1050 <ml1050> 1144931349 +0000
2006-04-13 12:29:09 +00:00
László Molnár
3e31560e7d
added a new filter for ARM 24-bit naive calltrick
...
committer: ml1050 <ml1050> 1144931022 +0000
2006-04-13 12:23:42 +00:00
László Molnár
d23d7e8775
removed unneeded entry point address check
...
committer: ml1050 <ml1050> 1144745835 +0000
2006-04-11 08:57:15 +00:00
László Molnár
f6fdf5cb7f
show image size change in info mode
...
committer: ml1050 <ml1050> 1144671675 +0000
2006-04-10 12:21:15 +00:00
Markus F.X.J. Oberhumer
1879ccd27d
Next version will be 2.00.
...
committer: mfx <mfx> 1144586292 +0000
2006-04-09 12:38:12 +00:00
Markus F.X.J. Oberhumer
08c0796719
Avoid warnings when building for m68k.
...
committer: mfx <mfx> 1144523702 +0000
2006-04-08 19:15:02 +00:00
Markus F.X.J. Oberhumer
bcfcfbd064
Added some more operators.
...
committer: mfx <mfx> 1144522838 +0000
2006-04-08 19:00:38 +00:00
Markus F.X.J. Oberhumer
9e79b3258d
Make const-correct to avoid warning.
...
committer: mfx <mfx> 1144522792 +0000
2006-04-08 18:59:52 +00:00
John Reiser
243873cd2d
Workaround inconsistent SIZEOF_HEADERS in stub/*.lds.
...
Test with --force-execve and --no-filter.
p_lx_exc.cpp p_lx_sh.cpp stub/l_lx_sh86.asm stub/l_lx_sh86.h
committer: jreiser <jreiser> 1144381286 +0000
2006-04-07 03:41:26 +00:00
Markus F.X.J. Oberhumer
c7b8a4b0c1
Updated.
...
committer: mfx <mfx> 1144320028 +0000
2006-04-06 10:40:28 +00:00
Markus F.X.J. Oberhumer
e39e0c7140
Added .gitignore files.
...
committer: mfx <mfx> 1144319429 +0000
2006-04-06 10:30:29 +00:00
Markus F.X.J. Oberhumer
d4a3f11dbb
Whitespace changes.
...
committer: mfx <mfx> 1144318755 +0000
2006-04-06 10:19:15 +00:00
Markus F.X.J. Oberhumer
0962f266b3
Whitespace changes.
...
committer: mfx <mfx> 1144314053 +0000
2006-04-06 09:00:53 +00:00
Markus F.X.J. Oberhumer
69e4d3fdad
Bumped tentative release date.
...
committer: mfx <mfx> 1144313563 +0000
2006-04-06 08:52:43 +00:00