[patch/rebase] Add a rebase database to keep track of DLL addresses

Corinna Vinschen corinna-cygwin@cygwin.com
Fri Jul 22 12:24:00 GMT 2011


On Jul 22 13:14, Corinna Vinschen wrote:
> On Jul 21 21:13, Corinna Vinschen wrote:
> > On Jul 21 15:36, Corinna Vinschen wrote:
> > > On Jul 21 08:14, Jason Tishler wrote:
> > > > Corinna,
> > > > 
> > > > On Thu, Jul 07, 2011 at 12:03:59PM -0400, Charles Wilson wrote:
> > > > > Corinna's patch is fine; we're just waiting for Jason's ok -- then I
> > > > > can add whatever gloss is needed to fixup on mingw/msys. (FYI, I'm
> > > > > coming up on some travel soon so may be AFK...)
> > > > 
> > > > Due to being AFK myself and the size of the patch, I have only reviewed
> > > > it in a cursory fashion.  Anyway, the patch seems fine to me.  I really
> > > > appreciate you adding all of this useful functionality to rebase.
> > > 
> > > Thanks, I'll check it in later today, unless Chuck has some objections.
> > > 
> > > IMHO it would make sense to bump LIB_VERSION and create a new rebase
> > > package ASAP, so we can get some more people to test it.
> > 
> > I applied the patch.  I didn't change LIB_VERSION, though, that's
> > something for the time you create a package.
> 
> Here's my list of changes for the release statment and, probably,
> for the NEWS file:
> 
>     * The imagehelper library has been much improved:
>       * Now supports reading and rebasing 64 bit binaries.
>       * New functions ReBaseImage64 and GetImageInfos64.
>       * Support long paths up to 32K characters.
>       * General API cleanup.
> 
>     * peflags supports short options for almost all flags now.
>       peflags -v prints detailed information about the flags set in the
>       file header.
> 
>     * rebase supports long options now.  Improved -h/--help information.
> 
>     * rebase -s/--database allows to keep a database of rebased DLLs.
>       This information is used in subsequent calls with the -s/--database
>       option to keep the entire list of DLLs in a good shape, address-wise.
> 
>     * rebase -i/--info prints base address and size of DLLs given on
>       the command line, sorted by base address.  A trailing '*' in the
>       last column is printed if a DLL collides with another adjacent DLL
>       in the list.
>       rebase -i -s can be used to check if the DLLs in the database are
>       still in a good shape.
> 
>     * On Cygwin, rebase activly avoids to collide with the Cygwin DLL
>       it is running under.
> 
>     * rebase now supports rebasing of 64 bit DLLs and executables.

I forgot the rebaseall changes:

    * rebaseall skips mingw directories automatically.

    * rebaseall uses the new rebase database facility now.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Project Co-Leader          cygwin AT cygwin DOT com
Red Hat



More information about the Cygwin-apps mailing list