John Reiser
6bd9805bcc
start converting PackLinuxElf64amd to ElfLinker
2006-07-09 08:14:04 -07:00
László Molnár
f74c2af65c
conversion of atari/tos to ElfLinker finished
2006-07-07 17:49:30 +02:00
László Molnár
9531bdf674
fixed a bug in ElfLinker
2006-07-07 16:57:15 +02:00
László Molnár
76e705e7ee
more atari/tos work
2006-07-07 09:20:43 +02:00
László Molnár
d35211328e
ElfLinker: rela support added
2006-07-07 08:51:48 +02:00
László Molnár
b7bbd81dda
conversion of atari/tos to ElfLinker started
2006-07-06 18:30:34 +02:00
László Molnár
9836dd5d10
merge
2006-07-06 10:27:31 +02:00
László Molnár
2109ad320d
ps1: nrv2b & nrv2d converted to gas
...
updated README.SRC
removed app-asm5900.pl
2006-07-06 09:20:05 +02:00
László Molnár
c026121c0e
mips conversion to ElfLinker almost ready
2006-07-06 00:54:14 +02:00
László Molnár
ee0c87f7b1
mips conversion started
2006-07-05 18:32:52 +02:00
John Reiser
709fb93a22
sizeof(shstrtab) already includes terminating '\0'
2006-07-05 05:40:24 -07:00
László Molnár
b38cd0a48d
merge
2006-07-05 13:02:14 +02:00
László Molnár
264435c32d
rebuilt the stubs
2006-07-05 13:00:42 +02:00
László Molnár
c285929ad3
i386/macros2.ash: ctojr32 fixes
2006-07-04 23:30:50 +02:00
John Reiser
1cbea8157d
merge
2006-07-04 08:59:29 -07:00
John Reiser
0a10334f1b
more *BSD, especially do_xmap() for OpenBSD
2006-07-04 08:59:00 -07:00
László Molnár
f0d5a6ebac
vmlinu[xz] using nrv2e converted to ElfLinker
2006-07-04 17:36:54 +02:00
László Molnár
db7086b5e6
pe: ignore duplicated relocation records
2006-07-04 14:11:56 +02:00
John Reiser
0e92280b33
*BSD elf-fold escape hatch differs from Linux
2006-07-03 19:35:56 -07:00
John Reiser
0d7255158a
OpenBSD "pro-active security" causes headaches
2006-07-03 16:35:21 -07:00
László Molnár
33564b68dd
loader.txt updated
2006-07-03 15:13:53 +02:00
Markus F.X.J. Oberhumer
ba942b952a
Merge.
2006-07-03 14:56:45 +02:00
Markus F.X.J. Oberhumer
bd7f28896e
Minor cleanups.
2006-07-03 14:54:50 +02:00
John Reiser
18fe124696
::generateElfHdr() sets .e_ident[Elf32_Ehdr::EI_OSABI]
2006-07-03 05:51:45 -07:00
John Reiser
ea3a3b6e1c
Elf32_Ehdr::ELFOSABI_LINUX
2006-07-03 05:47:01 -07:00
Markus F.X.J. Oberhumer
e6c06aacff
New brandelf.py script.
2006-07-03 13:00:53 +02:00
Markus F.X.J. Oberhumer
1aee92cd5c
Introduced $(tc_bfdname).
2006-07-03 12:19:20 +02:00
Markus F.X.J. Oberhumer
40c4cad491
Rebuilt.
2006-07-03 12:07:34 +02:00
László Molnár
013d46fb02
merge
2006-07-03 10:46:32 +02:00
László Molnár
f0f465411f
win32/pe using nrv2e converted to ElfLinker
2006-07-03 09:21:51 +02:00
John Reiser
32ce83475d
more *BSD arrangements
2006-07-02 21:54:44 -07:00
John Reiser
ec0d3f5b5d
merge
2006-07-02 19:28:19 -07:00
John Reiser
75294b9146
FreeBSD, NetBSD, OpenBSD on equal footing
2006-07-02 19:27:08 -07:00
Markus F.X.J. Oberhumer
26a0eb68ef
Merge.
2006-07-03 01:42:12 +02:00
Markus F.X.J. Oberhumer
b983e29fb0
Fix compilation on big endian machines. Remove trailing whitespace.
2006-07-03 01:40:59 +02:00
John Reiser
68dadabc29
BSD/elf386
2006-07-02 16:25:31 -07:00
László Molnár
ed9fd3f0e0
watcom/le using nrv2e converted to ElfLinker
2006-07-02 23:21:15 +02:00
László Molnár
fa9573436a
tmp/adam using nrv2e converted to ElfLinker
2006-07-02 22:39:53 +02:00
László Molnár
6d2058c3b7
reloc32 uncommented
2006-07-02 22:32:12 +02:00
John Reiser
0d7f93b877
unused: getrusage personality msync getcwd
2006-07-02 12:04:12 -07:00
László Molnár
f022c9d510
dos/djgpp2 using nrv2e converted to ElfLinker
2006-07-01 17:29:41 +02:00
László Molnár
5964a06386
arm/pe works with ElfLinker
2006-07-01 12:36:07 +02:00
László Molnár
f14dc4a4e9
ElfLinkerArmLe fixes
2006-07-01 12:25:26 +02:00
László Molnár
fd56e2534c
fixed alignment handling typo
2006-07-01 09:40:12 +02:00
László Molnár
08962a74ab
started the arm/pe conversion to ElfLinker
2006-07-01 00:21:53 +02:00
László Molnár
f850d36c52
dos/com & dos/sys: use the new ElfLinker features
2006-07-01 00:21:06 +02:00
László Molnár
c5fb161477
ElfLinker updates
...
commented out the debugging printfs
now it's possible to set the offset of sections
aligment handling simplified
ElfLinkerArmPE introduced
2006-07-01 00:10:02 +02:00
László Molnár
bfc2fab33f
use "//" instead of "#" for comments
2006-07-01 00:01:35 +02:00
John Reiser
ec9d6c4fd2
workaround linux bug which demands writeable PT_LOAD for .bss
2006-06-29 19:07:02 -07:00
John Reiser
6135d61e3d
*-fold.h depends on *.lds
2006-06-29 17:01:38 -07:00
John Reiser
a677242a2c
Bvmlinuz remember to patchDecompressor()
2006-06-29 13:58:41 -07:00
John Reiser
6602f30112
true==checkCompressionRatio() means success
2006-06-29 12:07:01 -07:00
Markus F.X.J. Oberhumer
a4b8dc18c1
Strip unneeded symbols and sections from i086-* stubs.
2006-06-29 19:09:16 +02:00
Markus F.X.J. Oberhumer
c0d4741f88
Merge.
2006-06-29 18:43:36 +02:00
László Molnár
b33718180c
ElfLinkerX86 introduced.
...
Simple alignment handling added to ElfLinker.
dos/exe device drivers can be compressed again.
2006-06-29 18:21:01 +02:00
John Reiser
3872393b29
call freezeLoader
2006-06-29 06:08:57 -07:00
John Reiser
1d72a7df99
propagate IMAGE_OFFSET from commandline
2006-06-29 05:57:28 -07:00
Markus F.X.J. Oberhumer
5455908772
Merge.
2006-06-29 14:39:42 +02:00
Markus F.X.J. Oberhumer
8882192fac
Minor cleanups.
2006-06-29 14:38:18 +02:00
Markus F.X.J. Oberhumer
7b77491c06
Refactoring: move fields ui_pass and ui_total_passes from class
...
Packer into class UiPacker.
2006-06-29 14:37:01 +02:00
László Molnár
20bf214d6e
dos/com & dos/sys: xchg si,di vs. xchg di,si difference fixed. i086-dos16.com.h rebuilt
2006-06-29 14:27:25 +02:00
Markus F.X.J. Oberhumer
8ab3e63aeb
First start of refactoring field ph out of class Packer.
2006-06-29 14:26:49 +02:00
László Molnár
0dc03214c5
merge
2006-06-29 11:51:47 +02:00
John Reiser
362e98b43d
lzma: limit stack to ~28KB for decompressing kernel
2006-06-28 22:34:12 -07:00
John Reiser
193e085cf0
limit stack to ~28KB for decompressing kernel
2006-06-28 22:30:05 -07:00
John Reiser
e0df2a342b
merge
2006-06-28 22:20:24 -07:00
John Reiser
ba19ccac43
tabify the commented Makefile
2006-06-28 22:18:48 -07:00
Markus F.X.J. Oberhumer
d7261b7a78
Remove debugging code.
2006-06-29 07:00:06 +02:00
Markus F.X.J. Oberhumer
0d80173efd
Update some structs for future features.
2006-06-29 06:42:17 +02:00
Markus F.X.J. Oberhumer
930f07d15e
Move upx_compress_result_t handling into right place.
2006-06-29 06:24:24 +02:00
Markus F.X.J. Oberhumer
66df7389d2
Refactoring: pass upx_compress_config_t to Packer::compressWithFilters()
...
so that formats can set conf_lzma.max_num_probs.
Also renamed compression parameters to use cconf & cresult.
2006-06-29 06:15:28 +02:00
Markus F.X.J. Oberhumer
c7bf0b6ddd
Removed trailing whitespace.
2006-06-29 05:12:39 +02:00
Markus F.X.J. Oberhumer
0bc361adeb
Introduced conf_lzma.max_num_probs to limit stack size for decompression.
2006-06-29 05:12:01 +02:00
John Reiser
4fff523a6d
Merge
2006-06-28 19:45:58 -07:00
John Reiser
67e09fb342
kernel Makefile; fix cross-platform endian trouble
2006-06-28 19:44:02 -07:00
Markus F.X.J. Oberhumer
c360806f47
Small Makefile updates.
2006-06-29 04:16:58 +02:00
Markus F.X.J. Oberhumer
7b74b73b08
Start using binutils-multiarch-2.17.
2006-06-29 01:52:05 +02:00
László Molnár
e9a851c0d4
dos/exe: migrated to ElfLinker
2006-06-29 00:44:12 +02:00
Markus F.X.J. Oberhumer
b13b169149
Fixed assembly for binutils-2.16.91.
2006-06-29 00:38:12 +02:00
László Molnár
455329a745
dos/sys: got rid of the "next" symbol
2006-06-29 00:28:47 +02:00
László Molnár
a68b76c8b4
undefined symbols are initialized to "0xdeaddead"
2006-06-29 00:22:45 +02:00
László Molnár
96e3899216
increased the maximum number of symbols
2006-06-29 00:22:03 +02:00
László Molnár
3c87e6b270
merge
2006-06-28 15:10:01 +02:00
László Molnár
6d8afec510
ElfLinker started. Dos/com & dos/sys formats converted
2006-06-28 14:45:58 +02:00
John Reiser
89e25657d8
fix cross-platform endian trouble with ELF headers
2006-06-27 13:07:31 -07:00
John Reiser
29387f1fcf
lzma Elf i386 minor tuning
2006-06-27 09:53:28 -07:00
John Reiser
58e885c052
un-debug
2006-06-26 17:21:45 -07:00
John Reiser
984dfcd7e1
adapt to new 2-byte replacement for LzmaDecodeProperties()
2006-06-26 17:16:45 -07:00
Markus F.X.J. Oberhumer
3785479086
Use custom encoding for LZMA properties.
2006-06-26 17:28:46 +02:00
Markus F.X.J. Oberhumer
8ed280907c
Merge.
2006-06-26 14:36:29 +02:00
Markus F.X.J. Oberhumer
d742671205
Update comment.
2006-06-26 14:36:10 +02:00
John Reiser
87e72c28a4
no PROT_WRITE for .text on i386-linux.elf.shell
2006-06-25 06:05:53 -07:00
John Reiser
4dee357362
optimize PackLinuxI386::buildLinuxLoader
2006-06-25 05:56:36 -07:00
John Reiser
431f4b9b0d
fix i386-linux.elf.shell
2006-06-25 05:44:39 -07:00
John Reiser
dd5b7825d5
save 4 bytes in __LZMA_ELF00__
2006-06-24 16:48:43 -07:00
John Reiser
02bc48925a
lzma ELF minimal CLzmaDecoderState each time
2006-06-24 14:44:40 -07:00
John Reiser
4eb505755e
lzma for ELF
2006-06-24 14:00:41 -07:00
Markus F.X.J. Oberhumer
83e94a70ea
Narrow try/catch.
2006-06-24 17:53:26 +02:00
Markus F.X.J. Oberhumer
8a150b27c3
Update comment.
2006-06-24 17:39:10 +02:00
John Reiser
1a51451ec2
ELF stub uses getSizeForCompression()
2006-06-23 19:32:29 -07:00
Markus F.X.J. Oberhumer
41e51bfb77
Assert dst_len buffer size in upx_compress().
2006-06-23 17:50:39 +02:00
Markus F.X.J. Oberhumer
7e1d9bc768
Split options_t::crp into multiple structs.
2006-06-23 16:23:31 +02:00
Markus F.X.J. Oberhumer
ba065ec1d8
Improve error code reporting in compression wrappers.
2006-06-23 15:52:10 +02:00
Markus F.X.J. Oberhumer
fe057a91c8
Cleanup: removed upx_bool and upx_uint types.
2006-06-23 15:00:33 +02:00
László Molnár
d2c36eefc9
pe: fixed unpack problem in rebuildImports()
2006-06-23 11:17:26 +02:00
John Reiser
28d56bab04
Merge
2006-06-22 21:30:59 -07:00
John Reiser
2500eff90d
more LZMA debugging for Linux i386 ELF
2006-06-22 21:25:18 -07:00
Markus F.X.J. Oberhumer
153446b3a1
Fixed debugging code.
2006-06-23 05:40:35 +02:00
Markus F.X.J. Oberhumer
391f5caaa2
Added precondition assertions to upx_decompress().
2006-06-23 05:27:42 +02:00
Markus F.X.J. Oberhumer
cc0df92444
Added some more checks.
2006-06-23 04:02:06 +02:00
John Reiser
03910d67c3
M_LZMA bug tracking: decompress fails but says OK
2006-06-22 17:18:17 -07:00
Markus F.X.J. Oberhumer
fec5cc864e
Update Makefile.
2006-06-23 01:02:47 +02:00
Markus F.X.J. Oberhumer
cb78362713
Use inner class UiPacker::State.
2006-06-22 19:40:43 +02:00
Markus F.X.J. Oberhumer
4c5b1a6ff4
Added some assertions to track down a win32/pe unpack problem which
...
shows up on 64-bit machines.
2006-06-22 16:47:10 +02:00
László Molnár
83c5727698
merge
2006-06-22 16:17:09 +02:00
László Molnár
80838ff1e9
watcom/le: lzma seems to work
2006-06-22 16:15:32 +02:00
Markus F.X.J. Oberhumer
29e8d072b7
Simplify C++ style in Linker.
2006-06-22 16:12:48 +02:00
Markus F.X.J. Oberhumer
d7592f01e1
Renamed method.
2006-06-22 16:00:03 +02:00
László Molnár
392f283d9e
added some comments
2006-06-22 15:54:25 +02:00
Markus F.X.J. Oberhumer
bcd738ebbb
Introduced Packer::patchDecompressorGetExtraStacksize().
2006-06-22 15:35:38 +02:00
László Molnár
8020c52c48
merge
2006-06-22 15:04:39 +02:00
László Molnár
3f566e541d
djgpp2: lzma seems to work
2006-06-22 15:00:15 +02:00
Markus F.X.J. Oberhumer
be4a631dc8
Bump version.
2006-06-22 14:50:09 +02:00
Markus F.X.J. Oberhumer
0bfdf908c1
Fixed typo.
2006-06-22 14:20:05 +02:00
Markus F.X.J. Oberhumer
6f2fc23f77
Added LZMA license information.
2006-06-22 14:11:58 +02:00
Markus F.X.J. Oberhumer
f3a47c7e70
Add more lzma_d.ash includes.
2006-06-22 14:07:23 +02:00
Markus F.X.J. Oberhumer
36349ffabb
Removed trailing whitespace.
2006-06-22 14:06:21 +02:00
John Reiser
b13f7366cf
freezeLoader() sooner in PackLinuxElf32x86::buildLinuxLoader()
2006-06-21 17:08:58 -07:00
John Reiser
9181bcd9a7
CT24ARM needs big+little endian versions
2006-06-21 13:57:12 -07:00
Markus F.X.J. Oberhumer
7dbc1d894b
Add default defines like -Dstub_i386_dos32_djgpp2=1 to nasm.
2006-06-21 21:31:20 +02:00
Markus F.X.J. Oberhumer
5720445d15
Use ebx for state pointer. Decrease local stack size.
2006-06-21 14:34:23 +02:00
Markus F.X.J. Oberhumer
a90027521d
Prepare Makefile for integrating lua-5.1.1 into upx.
2006-06-20 15:35:23 +02:00
Markus F.X.J. Oberhumer
e02d400bf6
Avoid djgpp2 link error.
2006-06-20 15:25:38 +02:00
Markus F.X.J. Oberhumer
efadb8fd31
More lzma stubs.
2006-06-19 23:19:34 +02:00
Markus F.X.J. Oberhumer
a19d06561b
Added amd64 implementations of lzma.
2006-06-19 22:33:18 +02:00
Markus F.X.J. Oberhumer
0b685d11c9
More lzma updates - win32/pe + lzma seems to work.
2006-06-19 22:08:06 +02:00
Markus F.X.J. Oberhumer
28f019d672
Merge.
2006-06-19 19:21:23 +02:00
Markus F.X.J. Oberhumer
bf5cbfffc2
Start major refactoring.
2006-06-19 19:20:50 +02:00
László Molnár
fe021e7c51
w32/pe: added Virtualloc and VirtualFree to the import list
2006-06-19 15:05:28 +02:00
Markus F.X.J. Oberhumer
c42fb54bc6
Assorted cleanups.
2006-06-17 18:54:11 +02:00
Markus F.X.J. Oberhumer
9382b68781
Fix srcdir for VPATH build.
2006-06-16 20:08:21 +02:00
Markus F.X.J. Oberhumer
178198a417
Merge.
2006-06-16 17:52:50 +02:00
John Reiser
7068e90771
Merge
2006-06-16 06:53:56 -07:00
Markus F.X.J. Oberhumer
1c762f23d0
Simplify stub/Makefile.
2006-06-16 15:51:59 +02:00
John Reiser
fd2b9a6e21
filter 0x51 (ARM call trick, big-endian at compress time)
2006-06-16 06:49:37 -07:00
Markus F.X.J. Oberhumer
db43910288
Enter 2006.
2006-06-16 15:17:29 +02:00
Markus F.X.J. Oberhumer
f248c0460e
Use -mcpu=405 for powerpc stubs. Also run sstrip on powerpc-linux.elf-fold.
2006-06-16 14:36:13 +02:00
Markus F.X.J. Oberhumer
12ba7776b3
Comment out unused upx_crc32().
2006-06-16 14:08:56 +02:00
Markus F.X.J. Oberhumer
7817e88d03
Updated stub/Makefile.
2006-06-16 13:26:36 +02:00
Markus F.X.J. Oberhumer
8dec65853d
Fixed another bad merge issue.
2006-06-16 12:34:37 +02:00
Markus F.X.J. Oberhumer
88e3cb3be1
Stub: remove files again which seem to have been brought back by some merge.
2006-06-16 12:31:14 +02:00
John Reiser
fa702b48e3
unify PackLinuxElf32arm...::pack1()
2006-06-15 15:41:00 -07:00
John Reiser
299dcf6686
Merge
2006-06-15 12:21:01 -07:00
Markus F.X.J. Oberhumer
27f9ae5bbb
Small cleanups.
2006-06-15 19:59:30 +02:00
Markus F.X.J. Oberhumer
9cb3a853f1
Added option --MMD= to gpp_inc.py for automated dependencies.
2006-06-15 19:03:18 +02:00
Markus F.X.J. Oberhumer
95c8ef4148
Added a number of convenience Makefiles.
2006-06-15 18:07:23 +02:00
Markus F.X.J. Oberhumer
a41bb52014
Updated comments.
2006-06-15 18:03:24 +02:00
Markus F.X.J. Oberhumer
2dfc0a58ab
Renamed src/stub/util/ to src/stub/tools/ .
2006-06-15 17:56:57 +02:00
Markus F.X.J. Oberhumer
1e0c38b5f9
Renamed i386-linux-sstrip to sstrip.
2006-06-15 08:41:33 +02:00
Markus F.X.J. Oberhumer
d3323d6550
Major refactoring of src/stub directory.
2006-06-15 08:17:50 +02:00
John Reiser
ebed0b9f20
allow brev() in-place
2006-06-14 20:21:39 -07:00
John Reiser
f654a453dc
ARM_pack3() unifies big/little endian and HostPolicy
2006-06-14 16:06:50 -07:00
John Reiser
10decf94cc
fix delete[] file_image
2006-06-14 11:41:49 -07:00
John Reiser
96dd4817f1
unify PackLinuxElf32...::canPack(); also ARM buildLinuxLoader()
2006-06-14 11:33:16 -07:00
Markus F.X.J. Oberhumer
72906cdc6a
Removed all files from src/stub directory.
2006-06-14 17:37:59 +02:00
Markus F.X.J. Oberhumer
fba4375be0
Cleanups.
2006-06-14 17:06:33 +02:00
Markus F.X.J. Oberhumer
75120676ad
Introduced BEPolicy and LEPolicy.
2006-06-14 14:45:49 +02:00
Markus F.X.J. Oberhumer
7daf63fd3f
Merge.
2006-06-14 11:48:44 +02:00
Markus F.X.J. Oberhumer
014de25f6f
Disable lzma by default for now.
2006-06-14 11:42:24 +02:00
John Reiser
3fc6535012
un-debug Makefile
2006-06-13 19:02:21 -07:00
John Reiser
4fc0a32572
Do not brev() strings in stub for PackLinuxEl32armBe.
2006-06-13 18:55:26 -07:00
John Reiser
dcc704a357
debug PackLinuxElf32armBe. Also unify subroutines.
2006-06-13 15:51:29 -07:00
John Reiser
bd8acbde97
PackLinuxElf32armBe (Linux ARM big-endian)
2006-06-13 11:48:54 -07:00
John Reiser
112b10c19d
avoid randomness for progid in Elf
2006-06-13 08:53:41 -07:00
John Reiser
d89e561a85
PackLinuxElf32armLe, PackLinuxElf32armBe
2006-06-13 08:51:02 -07:00
John Reiser
49c1da79c8
PackLinuxElf32arm ==> PackLinuxElf32armLe
2006-06-13 08:27:14 -07:00
John Reiser
0a72f00175
Elf_BE32_*
2006-06-13 08:25:30 -07:00
John Reiser
1af5820db0
hack printf()
2006-06-13 08:24:38 -07:00
John Reiser
c117491549
arm-9tdmi-linux-gnu-gcc is gcc-3.4.5-glibc-2.3.6; old was gcc-3.4.1-glibc-2.3.3
2006-06-12 11:05:52 -07:00
Markus F.X.J. Oberhumer
d8748f4270
Introduced MemBuffer::getSizeForCompression().
2006-06-12 13:18:55 +02:00
Markus F.X.J. Oberhumer
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