This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: 1.0:Question about Cygwin1.dll crashing with DEP/NX


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/


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]