Mail Archives: djgpp-workers/2003/02/10/02:00:09

Date: Mon, 10 Feb 2003 07:59:54 +0100
From: Laszlo Molnar <laszlo DOT molnar AT eth DOT ericsson DOT se>
To: djgpp-workers AT delorie DOT com
Subject: Re: BNU query
Message-ID: <>
References: <3E43D181 DOT 3C981D27 AT phekda DOT freeserve DOT co DOT uk> <10302071845 DOT AA14846 AT clio DOT rice DOT edu>
Mime-Version: 1.0
User-Agent: Mutt/1.2i
In-Reply-To: <>; from on Fri, Feb 07, 2003 at 12:45:23PM -0600
Reply-To: djgpp-workers AT delorie DOT com
Errors-To: nobody AT delorie DOT com
X-Mailing-List: djgpp-workers AT delorie DOT com
X-Unsubscribes-To: listserv AT delorie DOT com

On Fri, Feb 07, 2003 at 12:45:23PM -0600, Charles Sandmann wrote:
> > UPX 1.9<something>, which is a testing release, purportedly fixes the problems
> > with later versions of binutils. So it seems likely that problem with binutils
> > & UPX will go away soon.
> But I'm still unhappy that something was changed in our COFF file formats
> without us needing to change it or know why it's been changed.

OK, here is the official :-) description of the problem. Older UPX
versions contain some code which tries to remove an unneeded chunk of
zero bytes from the COFF image which is produced by some versions of
binutils. IIRC this can be seen in action by producing an executable
with stabs debugging info, stripping it, then compressing &
decompressing it. The uncompressed size should be smaller than the size
before compression.

This worked fine until the latest binutils version. Unfortunately my
hack is incompatible with this new version, because the original COFF
header disappears from the compressed executable. Which would be
neccessary during uncompression... So I removed this "feature". Now the
zero bytes are added back after uncompression.

UPX 1.91 should be fine.


- Raw text -

  webmaster     delorie software   privacy  
  Copyright 2019   by DJ Delorie     Updated Jul 2019