John Reiser
a13b4d10d9
After upx-3.96, the de-compressing stub for ELF moved
...
... so unpack() of newly-compressed ELF by upx-3.96 now says
"CantUnpackException: need a newer version of UPX"
https://github.com/upx/upx/issues/595
modified: p_lx_elf.h
modified: packer.h
2022-09-27 18:09:20 +02:00
Markus F.X.J. Oberhumer
c75d7a685d
src: major cleanups, introduce new eXtended Span class
...
- initial minimally invasive eXtended Span implementation
- rename ptr_diff to ptr_diff_bytes
- move some files to util subdir
- lots of cleanups
- start using the new checked pointers - this needs some real-world testing
2022-09-16 13:26:13 +02:00
Markus F.X.J. Oberhumer
d001a63bce
Welcome 2022.
2022-09-04 04:24:39 +02:00
Markus F.X.J. Oberhumer
5f9c50cd3e
clang-format
2022-08-10 23:29:43 +02:00
John Reiser
e7ca5c54ff
Fix --brute for p_lx_elf.cpp, which compresses multiple pieces
...
Force all pieces to use the same de-compressor.
(Future: allow each PT_LOAD to choose its own.)
Has minor wobbles due to page alignment, and size of de-compressor.
64-bit only for now.
https://github.com/upx/upx/issues/570
https://github.com/upx/upx/issues/297
modified: p_lx_elf.cpp
modified: p_unix.cpp
modified: packer.cpp
modified: packer.h
2022-03-22 11:46:25 -07:00
John Reiser
663d6b466b
WIP: clarify compressWithFilters; reduce size of obuf for PackLinuxElf64
...
modified: p_lx_elf.cpp
modified: packer.cpp
modified: packer.h
2022-03-21 13:49:46 -07:00
John Reiser
2e64a277f8
Fix headway during optimizeReloc()
...
Later: "Assertion `(soxrelocs == 0) == !has_oxrelocs' failed."
https://github.com/upx/upx/issues/552
modified: packer.cpp
modified: packer.h
modified: pefile.cpp
2021-12-31 10:27:58 -08:00
John Reiser
ea567a8b14
Check when optimizeRelocs()
...
https://github.com/upx/upx/issues/513
modified: packer.h
modified: packer.cpp
modified: pefile.cpp
modified: p_wcle.cpp
modified: p_tmt.cpp
2021-12-29 16:57:52 -08:00
Markus F.X.J. Oberhumer
f6ff5a2805
Cleanups: start working on -Wsuggest-override, add some "final". NFCI.
2021-03-28 21:19:29 +02:00
John Reiser
23f63e4196
WIP unpacking ELF shared library
...
modified: Makefile
modified: lzma-sdk
modified: p_lx_elf.cpp
modified: p_lx_elf.h
modified: p_mach.cpp
modified: p_unix.cpp
modified: p_unix.h
modified: packer.cpp
modified: packer.h
modified: stub/arm64-linux.elf-fold.h
modified: stub/src/arm64-linux.elf-fold.S
modified: stub/tmp/arm64-linux.elf-fold.map
2021-01-15 14:11:09 -08:00
Markus F.X.J. Oberhumer
d86d5314ba
Modernize libc usage: more cleanups.
2021-01-05 22:03:29 +01:00
Markus F.X.J. Oberhumer
700c8730cf
Modernize libc usage: stop using off_t
, use modern printf.
...
C++ 14 is here, and old versions of MSVC and MSVCRT have
haunted us long enough.
2021-01-05 18:52:05 +01:00
Markus F.X.J. Oberhumer
9aef7b0d6f
Use C++ 14 alignas(), init some struct fields just because of good practice.
2021-01-04 21:02:07 +01:00
Markus F.X.J. Oberhumer
2575eef3c0
clang-format more files.
...
"Gofmt's style is nobody's favourite, but gofmt is everybody's favourite."
- Rob Pike
2021-01-04 20:26:31 +01:00
Markus F.X.J. Oberhumer
f962afe146
Various cosmetic updates and refactors. NFCI.
2021-01-04 17:20:57 +01:00
Markus F.X.J. Oberhumer
9131d5216f
Welcome 2021.
2021-01-01 20:39:22 +01:00
Markus F.X.J. Oberhumer
f7e2266c3f
Start using some C++ 14 features.
2020-12-08 05:40:17 +01:00
Markus F.X.J. Oberhumer
d1174385ef
Welcome 2020.
2020-01-08 04:13:28 +01:00
Markus F.X.J. Oberhumer
3667fa4e44
Welcome 2019.
2019-02-15 11:04:09 +01:00
Markus F.X.J. Oberhumer
021c8db58a
Welcome 2018.
2018-01-19 10:55:32 +01:00
Markus F.X.J. Oberhumer
b5bdf57636
Minor cleanups.
2017-05-14 19:21:04 +02:00
Markus F.X.J. Oberhumer
c4da5e81fa
Welcome 2017.
2017-01-03 12:02:07 +01:00
Markus F.X.J. Oberhumer
f7554374ab
Update email address.
2016-09-28 12:25:01 +02:00
Markus F.X.J. Oberhumer
83828aa8a3
Update vim modelines.
2016-09-22 17:29:43 +02:00
Markus F.X.J. Oberhumer
96d9968db5
Welcome 2016.
2016-09-22 14:07:14 +02:00
Markus F.X.J. Oberhumer
763b3c05af
Don't use "long". Cleanups.
2016-09-22 00:47:35 +02:00
Markus F.X.J. Oberhumer
fb611a98f9
Welcome 2015.
2015-01-03 00:24:07 +01:00
Markus F.X.J. Oberhumer
a3d5face38
Fix a comment.
2015-01-03 00:21:51 +01:00
Markus F.X.J. Oberhumer
a26c982e93
Welcome 2014.
2014-01-07 23:05:10 +01:00
Markus F.X.J. Oberhumer
b2643b6926
Start using the new intergral type names.
2013-09-20 08:19:18 +02:00
László Molnár
241834029a
64 relocation handling added; basic DLL support works
2013-08-25 23:54:13 +02:00
Markus F.X.J. Oberhumer
87a368a857
Welcome 2013.
2013-02-12 10:14:03 +01:00
John Reiser
f383629282
compressWithFilters(..., inhibit_compression_check=0) // SourceForge bug 3541020
...
Not good to check compression ratio on every block when blocksize < file_size,
as when --force_execve of Elf > 0x80000 bytes.
2012-07-12 07:04:56 -07:00
Markus F.X.J. Oberhumer
43ce34d547
Welcome 2012.
2012-01-01 22:35:11 +01:00
Markus F.X.J. Oberhumer
9bf2b79d9e
Enter 2011.
2011-01-03 08:49:23 +01:00
Markus F.X.J. Oberhumer
7b8779f534
Portability updates.
2010-10-20 01:46:38 +02:00
Markus F.X.J. Oberhumer
0aff9d8df4
Use consistent syntax for boolean preprocessor expressions.
2010-08-08 16:20:16 +02:00
Markus F.X.J. Oberhumer
6bc3197721
Enter 2010.
2010-02-06 17:15:49 +01:00
Markus F.X.J. Oberhumer
5ed689ceb0
Enter 2009.
2008-12-31 17:07:18 +01:00
Markus F.X.J. Oberhumer
d54f947c98
Add Packer::hasLoaderSection() to handle missing CFLUSH sections.
2008-04-07 18:44:00 +02:00
Markus F.X.J. Oberhumer
7f9c47176a
Introduce target endianness accessors get_teXX() and set_teXX() in packer.h to
...
replace all [gs]et_nativeXX() member functions.
2008-01-09 13:57:47 +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
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
c11e0d02b3
Added parm "allow_incompressible" to Packer::{get,read}PackHeader().
2007-04-25 17:33:39 +02: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
Markus F.X.J. Oberhumer
0b988176fa
Portability fixes.
2007-01-10 17:16:59 +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
217420cfa5
Also verifyOverlappingDecompression() for watcom/le.
2006-12-06 12:20:22 +01:00