This is the mail archive of the
mailing list for the Cygwin project.
Re: Bug in ddk headers when used from cygwin
- From: Charles Wilson <cygwin at cwilson dot fastmail dot fm>
- To: cygwin at cygwin dot com
- Date: Mon, 08 Apr 2013 13:54:10 -0400
- Subject: Re: Bug in ddk headers when used from cygwin
- References: <51625CAE dot 2030703 at cwilson dot fastmail dot fm> <20130408074801 dot GA10199 at calimero dot vinschen dot de>
On 4/8/2013 3:48 AM, Corinna Vinschen wrote:
On Apr 8 01:59, Charles Wilson wrote:
Any suggestions for a fix?
Yes. Do not use the ddk headers with Cygwin. Not only that intrin.h is
really missing(*), the ddk headers in mingw-w64 are not fit for usage in
user space code. For that reason the latest Cygwin code does not use
these headers either.
There are two user space headers exposing ntdll stuff, winternl.h and
ntdef.h. They partially contradict each other so they can't be used in
parallel. Usage of winternl.h is preferred. Wintern.h isn't exactly
set in stone upstream, so additions and fixes are welcome.
And, as a side note, <ddk/ntstatus.h> from mingw32 became just
<ntstatus.h> in mingw-w64.
OK, I'll try to figure out what getVolInfo was using from ddk, and see
if I can replicate the functionality with pure w32api non-ddk stuff.
I'll also have to ask the original developer what she was thinking,
relying on ddk internals... :-)
But doesn't this mean that the cygwin's w32api package should exclude
all of the ddk headers; it's not simply a case that you "shouldn't" use
ddk/*.h, but that you actually cannot, because compilation will fail.
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple