AfterDawn | News | Guides | Software downloads | Tech Support | Forums | HIGH.FI
AfterDawn

Version history for UPX

<<Back to software description

Changes for v3.09 - v3.91

  • Added experimental support for Windows 64-bit PE files, based on work by Stefan Widmann. Please use for testing only!
  • bug fixes



Changes for v3.08 - v3.09

  • New option --preserve-build-id for GNU ELF.
  • Allow for code signing and LC_UUID on Mac OS X executables.
  • Allow non-contiguous LC_SEGMENTs and 0==.vmsize for Mach-O.
  • Allow zero-filled final page in PackUnix::canUnpack().
  • bug fixes



Changes for v3.07 - v3.08

  • Fix allocation in runtime stub for darwin.macho-entry (i386 and amd64).
  • Compress shared library on ELF i386 only [ld.so threatens even this case].
  • Attempt to suport ELF on QNX 6.3.0 for armel (experimental).
  • Better diangostic when ELF -fPIC is needed.
  • PT_NOTE improvements for *BSD.
  • Preserve more ELF .e_flags on ARM.
  • Minor code improvements for ELF stubs
  • Defend against another flavor of corrupt PE header.
  • bug fixes



Changes for v3.06 - v3.07

  • win32/pe: fixed relocation handling for files with *no* TLS callbacks [severe bug introduced in 3.06]



Changes for v3.04 - v3.05

  • i386-linux and amd64-linux support shared libraries (DT_INIT must exist, all info needed by runtime loader must be first in .text, etc.)
  • Linux /proc/self/exe now is preserved by default, by leaving behind one page. New compress-time option --unmap-all-pages is available.
  • Withdraw support for shared libraries on Darwin (Apple Mac OS X) because upx does not understand enough about .dylib.
  • bug fixes



Changes for v3.03 - v3.04

  • new format Mach/AMD64 supports 64-bit programs on Apple Macintosh.
  • new formats Dylib/i386 and Dylib/ppc32 support shared libraries [such as browser plugins] on Darwin (Apple Macintosh). An existing -init function (LC_ROUTINES command) is required.
  • new format vmlinuz/armel for Debian NSLU2 (etc.) linux kernel
  • bvmlinuz boot protocol 2.08 for 386 Linux kernel
  • Extended ABI version 4 for armel-eabi ARM Linux ELF
  • bug fixes



Changes for v3.02 - v3.03

  • optional LZMA compression
  • support for BSD systems



Changes for v3.01 - v3.02

  • fix unmapping on arm-linux.elf
  • fix error checking in mmap for i386-linux.elf [triggered by -fPIE]
  • bug fixes



<<Back to software description