X-Spam-Check-By: sourceware.org Date: Tue, 30 May 2006 13:05:11 -0400 From: Christopher Faylor To: cygwin AT cygwin DOT com Subject: Re: 1.0:Question about Cygwin1.dll crashing with DEP/NX Message-ID: <20060530170511.GB10895@trixie.casa.cgf.cx> Reply-To: cygwin AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com References: <032201c68405$75b8b520$a501a8c0 AT CAM DOT ARTIMI DOT COM> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <032201c68405$75b8b520$a501a8c0@CAM.ARTIMI.COM> User-Agent: Mutt/1.5.11 Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm Precedence: bulk List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , 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 Tue, May 30, 2006 at 05:24:01PM +0100, Dave Korn wrote: >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. Also, if this really is Cygwin 1.0, then it is a commercial release of Cygwin which we don't support here regardless of how old it is. -- 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/