delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2006/05/30/12:25:58

X-Spam-Check-By: sourceware.org
From: "Dave Korn" <dave DOT korn AT artimi DOT com>
To: <cygwin AT cygwin DOT com>
Subject: RE: 1.0:Question about Cygwin1.dll crashing with DEP/NX
Date: Tue, 30 May 2006 17:24:01 +0100
Message-ID: <032201c68405$75b8b520$a501a8c0@CAM.ARTIMI.COM>
MIME-Version: 1.0
X-Mailer: Microsoft Office Outlook 11
In-Reply-To: <OF445A0069.CD0A5B41-ON8625717E.005837C7-8625717E.00584A76@us.ibm.com>
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Unsubscribe: <mailto:cygwin-unsubscribe-archive-cygwin=delorie DOT com AT cygwin DOT com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT com

On 30 May 2006 17:08, Carry Suryakusuma wrote:

> I have old Cygwin binaries, source codes and build environment for version
> 1.0. These Cygwin binaries crashed badly on the newer Windows XP and later
> with Date Execution Protection (DEP) support running on DEP enabled
> processor.

  Probably some kind of thunk or trampoline or other self-modifying code.
 
> I think the problem is around the Cygwin1.dll and I would like to fix it
> if I can. I rebuilt the Cygwin1.dll to try to debug it, but it was
> useless. The Cygwin program like tr.exe simply crashed when loading the
> Cygwin1.dll. It created a stackdump with the following content:
> C:\temp\carry\DEP>cat tr.exe.stackdump
>     0       0 [main] C:\Cygwin\bin\cat.exe 1000 handle_exceptions:
> Exception: STATUS_ACCESS_VIOLATION
>     0    5900 [main] cat 1000 stackdump: Dumping stack trace to
> cat.exe.stackdump

  Well, the address in the stackdump file would have told you where the access
violation occurred, and that should have lead you to the part of the source
that is trying to call to NX code.

> I rebuilt the Cygwin1.dll using the following build environment:
> 1. bash version: GNU bash, version 2.03.0(2)-release (i686-pc-cygwin)
> 2. make version: GNU Make version 3.77, by Richard Stallman and Roland
> McGrath.
> 3. gcc version: 2.9-cygwin-990830
> 4. g++ version: 2.9-cygwin-990830
> 5. ld version: GNU ld 2.9-cygwin-990830
> 
> Is there anyway for me to fix this with the existing source codes and
> probably the build environment and tools that I have to support DEP on
> Windows XP and later?

  Ummm, the versions you're using are seven years out-of-date.  The chances of
them working with operating systems and features that didn't even exist at the
time aren't good.  For example, back in 1999, compilers thought it was OK to
dynamically generate a trampoline on the stack and call out through it,
because nobody had invented DEP at that stage.

  Honestly, if you really want to struggle along without the last seven years
worth of bugfixes to make/gcc/binutils, good luck to you, but nobody's going
to be keen to spend a lot of time helping you refix all those old bugs.....

  Why don't you just update your cygwin installation binaries and then rebuild
all your sources with the up-to-date versions of everything?

    cheers,
      DaveK
-- 
Can't think of a witty .sigline today....


--
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple
Problem reports:       http://cygwin.com/problems.html
Documentation:         http://cygwin.com/docs.html
FAQ:                   http://cygwin.com/faq/

- Raw text -


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