From: <kti...@us...> - 2013-01-29 14:50:52
|
Revision: 5570 http://mingw-w64.svn.sourceforge.net/mingw-w64/?rev=5570&view=rev Author: ktietz70 Date: 2013-01-29 14:50:44 +0000 (Tue, 29 Jan 2013) Log Message: ----------- Remove __CRT__NO_INLINE guard for Teb, Fiber inlines. Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-01-29 10:27:53 UTC (rev 5569) +++ trunk/mingw-w64-headers/include/winnt.h 2013-01-29 14:50:44 UTC (rev 5570) @@ -6472,13 +6472,11 @@ struct _TEB *NtCurrentTeb(VOID); PVOID GetCurrentFiber(VOID); PVOID GetFiberData(VOID); -#ifndef __CRT__NO_INLINE __CRT_INLINE struct _TEB *NtCurrentTeb(VOID) { return (struct _TEB *)__readgsqword(FIELD_OFFSET(NT_TIB,Self)); } __CRT_INLINE PVOID GetCurrentFiber(VOID) { return(PVOID)__readgsqword(FIELD_OFFSET(NT_TIB,FiberData)); } __CRT_INLINE PVOID GetFiberData(VOID) { return *(PVOID *)GetCurrentFiber(); } -#endif /* !__CRT__NO_INLINE */ #endif /* __x86_64 */ #if (_WIN32_WINNT >= 0x0600) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-01-29 15:08:21
|
Revision: 5571 http://mingw-w64.svn.sourceforge.net/mingw-w64/?rev=5571&view=rev Author: ktietz70 Date: 2013-01-29 15:08:13 +0000 (Tue, 29 Jan 2013) Log Message: ----------- Allow internal readgs/writegs functions also if NO_INLINE is active Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-01-29 14:50:44 UTC (rev 5570) +++ trunk/mingw-w64-headers/include/winnt.h 2013-01-29 15:08:13 UTC (rev 5571) @@ -1590,6 +1590,7 @@ extractedProduct = ShiftRight128(lowProduct,highProduct,Shift); return extractedProduct; } +#endif __CRT_INLINE BYTE __readgsbyte(DWORD Offset) { BYTE ret; @@ -1631,7 +1632,6 @@ __asm__ volatile ("movq %0,%%gs:%1" : "=r" (Data) ,"=m" ((*(volatile __LONG32 *) (DWORD64) Offset))); } -#endif /* !__CRT__NO_INLINE */ #ifdef __cplusplus } This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-03-10 16:12:15
|
Revision: 5632 http://mingw-w64.svn.sourceforge.net/mingw-w64/?rev=5632&view=rev Author: ktietz70 Date: 2013-03-10 16:12:07 +0000 (Sun, 10 Mar 2013) Log Message: ----------- Fix typo. Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-03-10 15:00:18 UTC (rev 5631) +++ trunk/mingw-w64-headers/include/winnt.h 2013-03-10 16:12:07 UTC (rev 5632) @@ -963,7 +963,7 @@ #define SUBLANG_SAMI_SKOLT_FINLAND 0x08 #define SUBLANG_SAMI_INARI_FINLAND 0x09 #define SUBLANG_SANSKRIT_INDIA 0x01 -define SUBLANG_SCOTTISH_GAELIC 0x01 +#define SUBLANG_SCOTTISH_GAELIC 0x01 #define SUBLANG_SERBIAN_LATIN 0x02 #define SUBLANG_SERBIAN_CYRILLIC 0x03 #define SUBLANG_SERBIAN_BOSNIA_HERZEGOVINA_LATIN 0x06 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wa...@us...> - 2013-05-19 20:33:06
|
Revision: 5867 http://mingw-w64.svn.sourceforge.net/mingw-w64/?rev=5867&view=rev Author: wavael Date: 2013-05-19 20:32:11 +0000 (Sun, 19 May 2013) Log Message: ----------- fix constraints in stosb/d/w/q inline assembler Patch by David Wohlferd lim...@ya... There are actually 4 things changed: 1) The memory clobber. This is the key change. There is an non-inline version of __stosb elsewhere which works correctly because it's "call"ed. But if you are using the inline asm version in winnt.h, it must have the clobber to ensure it works correctly. 2) I have changed Dest and Count from input+output to just inputs. Saying they are outputs when they aren't puts unnecessary constraints on the compiler. 3) By using %z2 in the instruction template, the compiler will generate correct assembly whether the code is compiled with -masm=att (the default) or -masm=intel. While I expect that most people are going to use the default, it seems like system headers should support both. Especially in the Windows world, where people may be more used to working with intel format. We wouldn't want to get people in a position where someone needs to include windows.h which requires att, and some other library header which requires intel. 4) Removed the symbolic names (ie [Dest]) since they aren't being used. I'm a big believe in using symbolic names. I think all inline asm should use them. But only if it, well, uses them. I suppose a fifth thing would be that by using a macro, the code is somewhat shorter, but that's just incidental. It made things easier to change while I was experimenting. Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-05-18 18:06:59 UTC (rev 5866) +++ trunk/mingw-w64-headers/include/winnt.h 2013-05-19 20:32:11 UTC (rev 5867) @@ -1580,42 +1580,18 @@ VOID __stosq(PDWORD64 Destination,DWORD64 Value,SIZE_T Count); #ifndef __CRT__NO_INLINE - __CRT_INLINE VOID __stosb(PBYTE Dest,BYTE Data,SIZE_T Count) - { - __asm__ __volatile__ - ( - "rep; stosb" : - [Dest] "=D" (Dest), [Count] "=c" (Count) : - "[Dest]" (Dest), "a" (Data), "[Count]" (Count) - ); - } - __CRT_INLINE VOID __stosw(PWORD Dest,WORD Data,SIZE_T Count) - { - __asm__ __volatile__ - ( - "rep; stosw" : - [Dest] "=D" (Dest), [Count] "=c" (Count) : - "[Dest]" (Dest), "a" (Data), "[Count]" (Count) - ); - } - __CRT_INLINE VOID __stosd(PDWORD Dest,DWORD Data,SIZE_T Count) - { - __asm__ __volatile__ - ( - "rep; stosl" : - [Dest] "=D" (Dest), [Count] "=c" (Count) : - "[Dest]" (Dest), "a" (Data), "[Count]" (Count) - ); - } - __CRT_INLINE VOID __stosq(PDWORD64 Dest,DWORD64 Data,SIZE_T Count) - { - __asm__ __volatile__ - ( - "rep; stosq" : - [Dest] "=D" (Dest), [Count] "=c" (Count) : - "[Dest]" (Dest), "a" (Data), "[Count]" (Count) - ); - } +#define __buildstos(x, y) __CRT_INLINE VOID x(y *Dest, y Data, SIZE_T Count) \ +{ \ + __asm__ __volatile__ ("rep stos%z2" \ + : /* no outputs */ \ + : "D" (Dest), "c" (Count), "a" (Data) \ + : "memory"); \ +} + +__buildstos(__stosb, BYTE) +__buildstos(__stosw, WORD) +__buildstos(__stosd, DWORD) +__buildstos(__stosq, DWORD64) #endif /* __CRT__NO_INLINE */ #define MultiplyHigh __mulh This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <jo...@us...> - 2013-06-11 22:20:24
|
Revision: 5889 http://sourceforge.net/p/mingw-w64/code/5889 Author: jon_y Date: 2013-06-11 22:20:18 +0000 (Tue, 11 Jun 2013) Log Message: ----------- undo accidental checkin Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-06-11 12:03:42 UTC (rev 5888) +++ trunk/mingw-w64-headers/include/winnt.h 2013-06-11 22:20:18 UTC (rev 5889) @@ -1536,12 +1536,11 @@ VOID __movsw(PWORD Destination,WORD const *Source,SIZE_T Count); VOID __movsd(PDWORD Destination,DWORD const *Source,SIZE_T Count); VOID __movsq(PDWORD64 Destination,DWORD64 const *Source,SIZE_T Count); -#ifdef __CRT__NO_INLINE VOID __stosb(PBYTE Destination,BYTE Value,SIZE_T Count); VOID __stosw(PWORD Destination,WORD Value,SIZE_T Count); VOID __stosd(PDWORD Destination,DWORD Value,SIZE_T Count); VOID __stosq(PDWORD64 Destination,DWORD64 Value,SIZE_T Count); -#else +#ifndef __CRT__NO_INLINE __CRT_INLINE __buildstos(__stosb, BYTE) __CRT_INLINE __buildstos(__stosw, WORD) __CRT_INLINE __buildstos(__stosd, DWORD) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <sn...@us...> - 2013-07-25 19:02:31
|
Revision: 5981 http://sourceforge.net/p/mingw-w64/code/5981 Author: snarfle Date: 2013-07-25 19:02:26 +0000 (Thu, 25 Jul 2013) Log Message: ----------- Minor tweaks to bring defs in line with MS. Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-07-24 21:18:25 UTC (rev 5980) +++ trunk/mingw-w64-headers/include/winnt.h 2013-07-25 19:02:26 UTC (rev 5981) @@ -1620,7 +1620,7 @@ #else #define YieldProcessor __buildpause() VOID MemoryBarrier(VOID); -__CRT_INLINE VOID MemoryBarrier(VOID) +FORCEINLINE VOID MemoryBarrier(VOID) __buildmemorybarrier() #endif @@ -6258,9 +6258,9 @@ struct _TEB *NtCurrentTeb(VOID); PVOID GetCurrentFiber(VOID); PVOID GetFiberData(VOID); - __CRT_INLINE struct _TEB *NtCurrentTeb(VOID) { return (struct _TEB *)__readgsqword(FIELD_OFFSET(NT_TIB,Self)); } - __CRT_INLINE PVOID GetCurrentFiber(VOID) { return(PVOID)__readgsqword(FIELD_OFFSET(NT_TIB,FiberData)); } - __CRT_INLINE PVOID GetFiberData(VOID) { + FORCEINLINE struct _TEB *NtCurrentTeb(VOID) { return (struct _TEB *)__readgsqword(FIELD_OFFSET(NT_TIB,Self)); } + FORCEINLINE PVOID GetCurrentFiber(VOID) { return(PVOID)__readgsqword(FIELD_OFFSET(NT_TIB,FiberData)); } + FORCEINLINE PVOID GetFiberData(VOID) { return *(PVOID *)GetCurrentFiber(); } #endif /* __x86_64 */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <wa...@us...> - 2013-08-20 10:49:03
|
Revision: 6115 http://sourceforge.net/p/mingw-w64/code/6115 Author: wavael Date: 2013-08-20 10:48:56 +0000 (Tue, 20 Aug 2013) Log Message: ----------- Add FILE_ID_128 structure Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-08-20 09:19:32 UTC (rev 6114) +++ trunk/mingw-w64-headers/include/winnt.h 2013-08-20 10:48:56 UTC (rev 6115) @@ -3753,6 +3753,11 @@ #define FILE_SUPPORTS_OPEN_BY_FILE_ID 0x01000000 #define FILE_SUPPORTS_USN_JOURNAL 0x02000000 + typedef struct FILE_ID_128 { + ULONGLONG LowPart; + ULONGLONG HighPart; + } FILE_ID_128, *PFILE_ID_128; + typedef struct _FILE_NOTIFY_INFORMATION { DWORD NextEntryOffset; DWORD Action; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-08-20 10:51:13
|
Revision: 6116 http://sourceforge.net/p/mingw-w64/code/6116 Author: ktietz70 Date: 2013-08-20 10:51:06 +0000 (Tue, 20 Aug 2013) Log Message: ----------- Add FILE_SUPPORTS_INTEGRITY_STREAMS define. Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-08-20 10:48:56 UTC (rev 6115) +++ trunk/mingw-w64-headers/include/winnt.h 2013-08-20 10:51:06 UTC (rev 6116) @@ -3752,6 +3752,7 @@ #define FILE_SUPPORTS_EXTENDED_ATTRIBUTES 0x00800000 #define FILE_SUPPORTS_OPEN_BY_FILE_ID 0x01000000 #define FILE_SUPPORTS_USN_JOURNAL 0x02000000 +#define FILE_SUPPORTS_INTEGRITY_STREAMS 0x04000000 typedef struct FILE_ID_128 { ULONGLONG LowPart; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-08-20 11:32:03
|
Revision: 6118 http://sourceforge.net/p/mingw-w64/code/6118 Author: ktietz70 Date: 2013-08-20 11:31:56 +0000 (Tue, 20 Aug 2013) Log Message: ----------- Add FIRMWARE_TYPE enumerator type and its pointer-type PFIRMWARE_TYPE Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-08-20 11:28:05 UTC (rev 6117) +++ trunk/mingw-w64-headers/include/winnt.h 2013-08-20 11:31:56 UTC (rev 6118) @@ -3444,6 +3444,13 @@ MaxJobObjectInfoClass } JOBOBJECTINFOCLASS; + typedef enum _FIRMWARE_TYPE { + FirmwareTypeUnknown, + FirmwareTypeBios, + FirmwareTypeUefi, + FirmwareTypeMax + } FIRMWARE_TYPE,*PFIRMWARE_TYPE; + #define EVENT_MODIFY_STATE 0x0002 #define EVENT_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x3) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-08-20 11:37:41
|
Revision: 6119 http://sourceforge.net/p/mingw-w64/code/6119 Author: ktietz70 Date: 2013-08-20 11:37:31 +0000 (Tue, 20 Aug 2013) Log Message: ----------- Add missing pointer-type PEXECUTION_STATE. Add missing defines for DIAGNOSTIC_* and POWER_REQUEST_* Add enumerator POWER_REQUEST_TYPE and its pointer-type PPOWER_REQUEST_TYPE. Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-08-20 11:31:56 UTC (rev 6118) +++ trunk/mingw-w64-headers/include/winnt.h 2013-08-20 11:37:31 UTC (rev 6119) @@ -3868,12 +3868,30 @@ #define ES_AWAYMODE_REQUIRED ((DWORD)0x00000040) #define ES_CONTINUOUS ((DWORD)0x80000000) - typedef DWORD EXECUTION_STATE; + typedef DWORD EXECUTION_STATE, *PEXECUTION_STATE; typedef enum { LT_DONT_CARE,LT_LOWEST_LATENCY } LATENCY_TIME; +#define DIAGNOSTIC_REASON_VERSION 0 +#define POWER_REQUEST_CONTEXT_VERSION 0 + +#define DIAGNOSTIC_REASON_SIMPLE_STRING 0x00000001 +#define DIAGNOSTIC_REASON_DETAILED_STRING 0x00000002 +#define DIAGNOSTIC_REASON_NOT_SPECIFIED 0x80000000 +#define DIAGNOSTIC_REASON_INVALID_FLAGS (~0x80000003) + +#define POWER_REQUEST_CONTEXT_SIMPLE_STRING 0x00000001 +#define POWER_REQUEST_CONTEXT_DETAILED_STRING 0x00000002 + + typedef enum _POWER_REQUEST_TYPE { + PowerRequestDisplayRequired, + PowerRequestSystemRequired, + PowerRequestAwayModeRequired, + PowerRequestExecutionRequired + } POWER_REQUEST_TYPE,*PPOWER_REQUEST_TYPE; + #define PDCAP_D0_SUPPORTED 0x00000001 #define PDCAP_D1_SUPPORTED 0x00000002 #define PDCAP_D2_SUPPORTED 0x00000004 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-08-20 11:44:42
|
Revision: 6121 http://sourceforge.net/p/mingw-w64/code/6121 Author: ktietz70 Date: 2013-08-20 11:44:20 +0000 (Tue, 20 Aug 2013) Log Message: ----------- Complete move of PSECURE_MEMORY_CACHE_CALLBACK from winbase.h to winnt.h Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-08-20 11:41:35 UTC (rev 6120) +++ trunk/mingw-w64-headers/include/winnt.h 2013-08-20 11:44:20 UTC (rev 6121) @@ -5940,6 +5940,7 @@ typedef VOID (NTAPI *WORKERCALLBACKFUNC)(PVOID); typedef VOID (NTAPI *APC_CALLBACK_FUNCTION)(DWORD ,PVOID,PVOID); typedef VOID (NTAPI *PFLS_CALLBACK_FUNCTION)(PVOID lpFlsData); + typedef VOID (NTAPI *PFLS_CALLBACK_FUNCTION) (PVOID lpFlsData); #define WT_EXECUTEINLONGTHREAD 0x00000010 #define WT_EXECUTEDELETEWAIT 0x00000008 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-08-20 11:49:52
|
Revision: 6122 http://sourceforge.net/p/mingw-w64/code/6122 Author: ktietz70 Date: 2013-08-20 11:49:44 +0000 (Tue, 20 Aug 2013) Log Message: ----------- Fix it this time for real ... Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-08-20 11:44:20 UTC (rev 6121) +++ trunk/mingw-w64-headers/include/winnt.h 2013-08-20 11:49:44 UTC (rev 6122) @@ -5940,7 +5940,7 @@ typedef VOID (NTAPI *WORKERCALLBACKFUNC)(PVOID); typedef VOID (NTAPI *APC_CALLBACK_FUNCTION)(DWORD ,PVOID,PVOID); typedef VOID (NTAPI *PFLS_CALLBACK_FUNCTION)(PVOID lpFlsData); - typedef VOID (NTAPI *PFLS_CALLBACK_FUNCTION) (PVOID lpFlsData); + typedef BOOLEAN (NTAPI *PSECURE_MEMORY_CACHE_CALLBACK) (PVOID Addr, SIZE_T Range); #define WT_EXECUTEINLONGTHREAD 0x00000010 #define WT_EXECUTEDELETEWAIT 0x00000008 This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-05 11:03:56
|
Revision: 6192 http://sourceforge.net/p/mingw-w64/code/6192 Author: ktietz70 Date: 2013-09-05 11:03:49 +0000 (Thu, 05 Sep 2013) Log Message: ----------- Add DUMMY...NAME defines to winnt.h header, add tests for __arm__ architecture Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-05 10:41:17 UTC (rev 6191) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-05 11:03:49 UTC (rev 6192) @@ -15,6 +15,8 @@ #include <_mingw.h> #include <ctype.h> #include <excpt.h> +#include <winapifamily.h> + #define ANYSIZE_ARRAY 1 #include <specstrings.h> @@ -23,14 +25,14 @@ #include <psdk_inc/intrin-impl.h> #if defined(__x86_64) && \ - !(defined(_X86_) || defined(__i386__) || defined(_IA64_)) + !(defined(_X86_) || defined(__i386__) || defined(_IA64_) || defined (__arm__)) #if !defined(_AMD64_) #define _AMD64_ #endif #endif /* _AMD64_ */ #if defined(__ia64__) && \ - !(defined(_X86_) || defined(__x86_64) || defined(_AMD64_)) + !(defined(_X86_) || defined(__x86_64) || defined(_AMD64_) || defined (__arm__)) #if !defined(_IA64_) #define _IA64_ #endif @@ -38,6 +40,46 @@ #include <sdkddkver.h> +#ifndef DUMMYUNIONNAME +#if defined (NONAMELESSUNION) +#define DUMMYUNIONNAME u +#define DUMMYUNIONNAME2 u2 +#define DUMMYUNIONNAME3 u3 +#define DUMMYUNIONNAME4 u4 +#define DUMMYUNIONNAME5 u5 +#define DUMMYUNIONNAME6 u6 +#define DUMMYUNIONNAME7 u7 +#define DUMMYUNIONNAME8 u8 +#define DUMMYUNIONNAME9 u9 +#else +#define DUMMYUNIONNAME +#define DUMMYUNIONNAME2 +#define DUMMYUNIONNAME3 +#define DUMMYUNIONNAME4 +#define DUMMYUNIONNAME5 +#define DUMMYUNIONNAME6 +#define DUMMYUNIONNAME7 +#define DUMMYUNIONNAME8 +#define DUMMYUNIONNAME9 +#endif +#endif + +#ifndef DUMMYSTRUCTNAME +#if defined (NONAMELESSUNION) +#define DUMMYSTRUCTNAME s +#define DUMMYSTRUCTNAME2 s2 +#define DUMMYSTRUCTNAME3 s3 +#define DUMMYSTRUCTNAME4 s4 +#define DUMMYSTRUCTNAME5 s5 +#else +#define DUMMYSTRUCTNAME +#define DUMMYSTRUCTNAME2 +#define DUMMYSTRUCTNAME3 +#define DUMMYSTRUCTNAME4 +#define DUMMYSTRUCTNAME5 +#endif +#endif + #define RESTRICTED_POINTER #undef UNALIGNED /* avoid redefinition warnings vs _mingw.h */ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-05 11:19:09
|
Revision: 6193 http://sourceforge.net/p/mingw-w64/code/6193 Author: ktietz70 Date: 2013-09-05 11:19:03 +0000 (Thu, 05 Sep 2013) Log Message: ----------- Add checks for __arm__ architecture, add/adjust macros of kind DECLSPEC_... Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-05 11:03:49 UTC (rev 6192) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-05 11:19:03 UTC (rev 6193) @@ -84,10 +84,10 @@ #undef UNALIGNED /* avoid redefinition warnings vs _mingw.h */ #undef UNALIGNED64 -#if defined(_M_MRX000) || defined(_M_ALPHA) || defined(_M_PPC) || defined(_M_IA64) || defined(_M_AMD64) +#if defined (__ia64__) || defined (__x86_64__) || defined (__arm__) #define ALIGNMENT_MACHINE #define UNALIGNED __unaligned -#if defined(_WIN64) +#if defined (_WIN64) #define UNALIGNED64 __unaligned #else #define UNALIGNED64 @@ -112,18 +112,17 @@ #define TYPE_ALIGNMENT(t) FIELD_OFFSET(struct { char x; t test; }, test) #endif +#if defined (__x86_64__) || defined (__i386__) +#define PROBE_ALIGNMENT(_s) TYPE_ALIGNMENT (DWORD) +#elif defined (__ia64__) || defined (__arm__) +#define PROBE_ALIGNMENT(_s) (TYPE_ALIGNMENT (_s) > TYPE_ALIGNMENT (DWORD) ? TYPE_ALIGNMENT (_s) : TYPE_ALIGNMENT (DWORD)) +#elif !defined (RC_INVOKED) && !defined (__WIDL__) +#error No supported target architecture. +#endif + #ifdef _WIN64 -#ifdef _AMD64_ -#define PROBE_ALIGNMENT(_s) TYPE_ALIGNMENT(DWORD) -#elif defined(_IA64_) -#define PROBE_ALIGNMENT(_s) (TYPE_ALIGNMENT(_s) > TYPE_ALIGNMENT(DWORD) ? TYPE_ALIGNMENT(_s) : TYPE_ALIGNMENT(DWORD)) -#else -#error No Target Architecture +#define PROBE_ALIGNMENT32(_s) TYPE_ALIGNMENT (DWORD) #endif -#define PROBE_ALIGNMENT32(_s) TYPE_ALIGNMENT(DWORD) -#else -#define PROBE_ALIGNMENT(_s) TYPE_ALIGNMENT(DWORD) -#endif #if defined(_MSC_VER) # define C_ASSERT(e) typedef char __C_ASSERT__[(e)?1:-1] @@ -134,29 +133,45 @@ #include <basetsd.h> #ifndef DECLSPEC_IMPORT -#if defined(_X86_) || defined(__ia64__) || defined(__x86_64) -#define DECLSPEC_IMPORT __declspec(dllimport) +#if (defined (__i386__) || defined (__ia64__) || defined (__x86_64__) || defined (__arm__)) && !defined (__WIDL__) +#define DECLSPEC_IMPORT __declspec (dllimport) #else #define DECLSPEC_IMPORT #endif #endif #ifndef DECLSPEC_NORETURN -#define DECLSPEC_NORETURN __declspec(noreturn) +#ifndef __WIDL__ +#define DECLSPEC_NORETURN __declspec (noreturn) +#else +#define DECLSPEC_NORETURN #endif +#endif +#ifndef DECLSPEC_NOTHROW +#ifndef __WIDL__ +#define DECLSPEC_NOTHROW __declspec (nothrow) +#else +#define DECLSPEC_NOTHROW +#endif +#endif + #ifndef DECLSPEC_ALIGN +#ifndef __WIDL__ #if defined(_MSC_VER) && (_MSC_VER >= 1300) && !defined(MIDL_PASS) #define DECLSPEC_ALIGN(x) __declspec(align(x)) #elif defined(__GNUC__) #define DECLSPEC_ALIGN(x) __attribute__ ((__aligned__ (x))) #else +#define DECLSPEC_ALIGN(x) /*__declspec (align (x))*/ +#endif +#else #define DECLSPEC_ALIGN(x) #endif #endif /* DECLSPEC_ALIGN */ #ifndef SYSTEM_CACHE_ALIGNMENT_SIZE -#if defined(_AMD64_) || defined(_X86_) +#if defined(__x86_64__) || defined(__i386__) #define SYSTEM_CACHE_ALIGNMENT_SIZE 64 #else #define SYSTEM_CACHE_ALIGNMENT_SIZE 128 @@ -187,6 +202,10 @@ #endif #endif +#ifndef DECLSPEC_ADDRSAFE +#define DECLSPEC_ADDRSAFE +#endif + #ifndef DECLSPEC_NOINLINE #if (_MSC_VER >= 1300) #define DECLSPEC_NOINLINE __declspec(noinline) This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-05 11:43:42
|
Revision: 6195 http://sourceforge.net/p/mingw-w64/code/6195 Author: ktietz70 Date: 2013-09-05 11:43:37 +0000 (Thu, 05 Sep 2013) Log Message: ----------- Add unicode-mode-agnostic type-defs, make FASTCALL define widl-compat, and some cleanups Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-05 11:41:44 UTC (rev 6194) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-05 11:43:37 UTC (rev 6195) @@ -235,18 +235,23 @@ typedef void *PVOID; typedef void *PVOID64; -#if defined(_M_IX86) +#ifndef FASTCALL +#if defined (__i386__) && !defined (__WIDL__) #define FASTCALL __fastcall #else #define FASTCALL #endif +#endif /* FASTCALL */ + #define NTAPI __stdcall +#define NTAPI_INLINE NTAPI + #if !defined(_NTSYSTEM_) #define NTSYSAPI DECLSPEC_IMPORT #define NTSYSCALLAPI DECLSPEC_IMPORT #else #define NTSYSAPI -#define NTSYSCALLAPI +#define NTSYSCALLAPI DECLSPEC_ADDRSAFE #endif #ifndef VOID @@ -254,7 +259,11 @@ typedef char CHAR; typedef short SHORT; typedef __LONG32 LONG; +#if !defined (__WIDL__) + typedef int INT; #endif +#endif + #ifndef __WCHAR_DEFINED #define __WCHAR_DEFINED typedef wchar_t WCHAR; @@ -308,7 +317,7 @@ typedef CHAR *PNZCH; typedef CONST CHAR *PCNZCH; -#if defined(UNICODE) +#ifdef UNICODE #ifndef _TCHAR_DEFINED #define _TCHAR_DEFINED typedef WCHAR TCHAR, *PTCHAR; @@ -321,6 +330,16 @@ typedef LPUWSTR PUTSTR,LPUTSTR; typedef LPCUWSTR PCUTSTR,LPCUTSTR; typedef LPWSTR LP; + typedef PZZWSTR PZZTSTR; + typedef PCZZWSTR PCZZTSTR; + typedef PUZZWSTR PUZZTSTR; + typedef PCUZZWSTR PCUZZTSTR; + typedef PZPWSTR PZPTSTR; + typedef PNZWCH PNZTCH; + typedef PCNZWCH PCNZTCH; + typedef PUNZWCH PUNZTCH; + typedef PCUNZWCH PCUNZTCH; + #define __TEXT(quote) L##quote #else #ifndef _TCHAR_DEFINED @@ -330,8 +349,15 @@ #endif typedef LPSTR LPTCH,PTCH; + typedef LPCCH LPCTCH,PCTCH; typedef LPSTR PTSTR,LPTSTR,PUTSTR,LPUTSTR; typedef LPCSTR PCTSTR,LPCTSTR,PCUTSTR,LPCUTSTR; + typedef PZZSTR PZZTSTR, PUZZTSTR; + typedef PCZZSTR PCZZTSTR, PCUZZTSTR; + typedef PZPSTR PZPTSTR; + typedef PNZCH PNZTCH, PUNZTCH; + typedef PCNZCH PCNZTCH, PCUNZTCH; + #define __TEXT(quote) quote #endif This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-05 11:45:08
|
Revision: 6196 http://sourceforge.net/p/mingw-w64/code/6196 Author: ktietz70 Date: 2013-09-05 11:45:02 +0000 (Thu, 05 Sep 2013) Log Message: ----------- Use by default ZPL license Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-05 11:43:37 UTC (rev 6195) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-05 11:45:02 UTC (rev 6196) @@ -1,7 +1,6 @@ /** - * This file has no copyright assigned and is placed in the Public Domain. * This file is part of the mingw-w64 runtime package. - * No warranty is given; refer to the file DISCLAIMER.PD within this package. + * No warranty is given; refer to the file DISCLAIMER within this package. */ #ifndef _WINNT_ #define _WINNT_ This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-05 12:47:15
|
Revision: 6197 http://sourceforge.net/p/mingw-w64/code/6197 Author: ktietz70 Date: 2013-09-05 12:47:08 +0000 (Thu, 05 Sep 2013) Log Message: ----------- Add COMPARTMENT_ID, add STRICT/none-STRICT handle-definition, some minor cleanups Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-05 11:45:02 UTC (rev 6196) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-05 12:47:08 UTC (rev 6197) @@ -365,10 +365,15 @@ typedef SHORT *PSHORT; typedef LONG *PLONG; +#ifdef STRICT typedef void *HANDLE; #define DECLARE_HANDLE(name) struct name##__ { int unused; }; typedef struct name##__ *name +#else +typedef PVOID HANDLE; +#define DECLARE_HANDLE(name) typedef HANDLE name +#endif + typedef HANDLE *PHANDLE; - typedef BYTE FCHAR; typedef WORD FSHORT; typedef DWORD FLONG; @@ -411,6 +416,16 @@ #define _LANGID_DEFINED typedef WORD LANGID; #endif + +#ifndef __COMPARTMENT_ID_DEFINED__ +#define __COMPARTMENT_ID_DEFINED__ + +typedef enum { + UNSPECIFIED_COMPARTMENT_ID = 0, + DEFAULT_COMPARTMENT_ID +} COMPARTMENT_ID,*PCOMPARTMENT_ID; +#endif + #define APPLICATION_ERROR_MASK 0x20000000 #define ERROR_SEVERITY_SUCCESS 0x00000000 #define ERROR_SEVERITY_INFORMATIONAL 0x40000000 @@ -6750,6 +6765,8 @@ BYTE Number; BYTE Reserved; } PROCESSOR_NUMBER, *PPROCESSOR_NUMBER; + +#define ALL_PROCESSOR_GROUPS 0xffff #endif /* !___PROCESSOR_NUMBER_DEFINED */ typedef struct _PROCESSOR_GROUP_INFO { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-05 13:04:39
|
Revision: 6198 http://sourceforge.net/p/mingw-w64/code/6198 Author: ktietz70 Date: 2013-09-05 13:04:32 +0000 (Thu, 05 Sep 2013) Log Message: ----------- Fix ULARGE_INTEGER/LARGE_INTEGER union in widl-mode. Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-05 12:47:08 UTC (rev 6197) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-05 13:04:32 UTC (rev 6198) @@ -432,7 +432,7 @@ #define ERROR_SEVERITY_WARNING 0x80000000 #define ERROR_SEVERITY_ERROR 0xC0000000 -#ifdef __ia64__ +#if defined (__ia64__) && !defined (__WIDL__) __declspec(align(16)) #endif typedef struct _FLOAT128 { @@ -446,16 +446,18 @@ __MINGW_EXTENSION typedef __int64 LONGLONG; __MINGW_EXTENSION typedef unsigned __int64 ULONGLONG; -#define MAXLONGLONG (0x7fffffffffffffff) +#define MAXLONGLONG (0x7fffffffffffffffll) typedef LONGLONG *PLONGLONG; typedef ULONGLONG *PULONGLONG; - typedef LONGLONG USN; #ifndef _LARGE_INTEGER_DEFINED #define _LARGE_INTEGER_DEFINED +#if defined (__WIDL__) +typedef struct _LARGE_INTEGER { +#else typedef union _LARGE_INTEGER { __C89_NAMELESS struct { DWORD LowPart; @@ -465,11 +467,15 @@ DWORD LowPart; LONG HighPart; } u; +#endif LONGLONG QuadPart; } LARGE_INTEGER; typedef LARGE_INTEGER *PLARGE_INTEGER; +#if defined (__WIDL__) + typedef struct _ULARGE_INTEGER { +#else typedef union _ULARGE_INTEGER { __C89_NAMELESS struct { DWORD LowPart; @@ -479,6 +485,7 @@ DWORD LowPart; DWORD HighPart; } u; +#endif ULONGLONG QuadPart; } ULARGE_INTEGER; @@ -495,25 +502,12 @@ typedef ULONGLONG DWORDLONG; typedef DWORDLONG *PDWORDLONG; -#ifdef RC_INVOKED -#define Int32x32To64(a,b) ((LONGLONG)((LONG)(a)) *(LONGLONG)((LONG)(b))) -#define UInt32x32To64(a,b) ((ULONGLONG)((DWORD)(a)) *(ULONGLONG)((DWORD)(b))) -#define Int64ShrlMod32(a,b) ((ULONGLONG)(a) >> (b)) -#elif (defined(_X86_) && !defined(__x86_64)) -#define Int32x32To64(a,b) (LONGLONG)((LONGLONG)(LONG)(a) *(LONG)(b)) -#define UInt32x32To64(a,b) (ULONGLONG)((ULONGLONG)(DWORD)(a) *(DWORD)(b)) -#define Int64ShrlMod32(a,b) ((DWORDLONG)(a)>>(b)) -#elif defined(__ia64__) || defined(__x86_64) -#define Int32x32To64(a,b) ((LONGLONG)((LONG)(a)) *(LONGLONG)((LONG)(b))) -#define UInt32x32To64(a,b) ((ULONGLONG)((DWORD)(a)) *(ULONGLONG)((DWORD)(b))) -#define Int64ShrlMod32(a,b) ((ULONGLONG)(a) >> (b)) -#else -#error Must define a target architecture. -#endif +#define Int32x32To64(a, b) (((LONGLONG) ((LONG) (a))) * ((LONGLONG) ((LONG) (b)))) +#define UInt32x32To64(a, b) (((ULONGLONG) ((unsigned int) (a))) *((ULONGLONG) ((unsigned int) (b)))) +#define Int64ShllMod32(a, b) (((ULONGLONG) (a)) << (b)) +#define Int64ShraMod32(a, b) (((LONGLONG) (a)) >> (b)) +#define Int64ShrlMod32(a, b) (((ULONGLONG) (a)) >> (b)) -#define Int64ShraMod32(a,b) ((LONGLONG)(a) >> (b)) -#define Int64ShllMod32(a,b) ((ULONGLONG)(a) << (b)) - #ifdef __cplusplus extern "C" { #endif This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-05 14:55:20
|
Revision: 6200 http://sourceforge.net/p/mingw-w64/code/6200 Author: ktietz70 Date: 2013-09-05 14:55:14 +0000 (Thu, 05 Sep 2013) Log Message: ----------- Add XSAVE_... types Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-05 13:11:39 UTC (rev 6199) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-05 14:55:14 UTC (rev 6200) @@ -649,7 +649,13 @@ #define DEFINE_ENUM_FLAG_OPERATORS(ENUMTYPE) /* */ #endif -#define RTL_BITS_OF(sizeOfArg) (sizeof(sizeOfArg) *8) +#define COMPILETIME_OR_2FLAGS(a, b) ((UINT) (a) | (UINT) (b)) +#define COMPILETIME_OR_3FLAGS(a, b, c) ((UINT) (a) | (UINT) (b) | (UINT) (c)) +#define COMPILETIME_OR_4FLAGS(a, b, c, d) ((UINT) (a) | (UINT) (b) | (UINT) (c) | (UINT) (d)) +#define COMPILETIME_OR_5FLAGS(a, b, c, d, e) ((UINT) (a) | (UINT) (b) | (UINT) (c) | (UINT) (d) | (UINT) (e)) + + +#define RTL_BITS_OF(sizeOfArg) (sizeof(sizeOfArg) * 8) #define RTL_BITS_OF_FIELD(type,field) (RTL_BITS_OF(RTL_FIELD_TYPE(type,field))) #define CONTAINING_RECORD(address,type,field) ((type *)((PCHAR)(address) - (ULONG_PTR)(&((type *)0)->field))) @@ -977,9 +983,7 @@ #define SUBLANG_ENGLISH_AUS 0x03 #define SUBLANG_ENGLISH_CAN 0x04 #define SUBLANG_ENGLISH_NZ 0x05 -#if (WINVER >= 0x0600) #define SUBLANG_ENGLISH_IRELAND 0x06 -#endif /* WINVER >= 0x0600 */ #define SUBLANG_ENGLISH_EIRE 0x06 #define SUBLANG_ENGLISH_SOUTH_AFRICA 0x07 #define SUBLANG_ENGLISH_JAMAICA 0x08 @@ -1231,6 +1235,7 @@ #define DEFAULT_UNREACHABLE +#ifndef UMDF_USING_NTSTATUS #ifndef WIN32_NO_STATUS #define STATUS_WAIT_0 ((DWORD)0x00000000) #define STATUS_ABANDONED_WAIT_0 ((DWORD)0x00000080) @@ -1240,6 +1245,7 @@ #define DBG_EXCEPTION_HANDLED ((DWORD)0x00010001) #define DBG_CONTINUE ((DWORD)0x00010002) #define STATUS_SEGMENT_NOTIFICATION ((DWORD)0x40000005) +#define STATUS_FATAL_APP_EXIT ((DWORD)0x40000015) #define DBG_TERMINATE_THREAD ((DWORD)0x40010003) #define DBG_TERMINATE_PROCESS ((DWORD)0x40010004) #define DBG_CONTROL_C ((DWORD)0x40010005) @@ -1288,6 +1294,7 @@ #define STATUS_SXS_EARLY_DEACTIVATION ((DWORD)0xC015000F) #define STATUS_SXS_INVALID_DEACTIVATION ((DWORD)0xC0150010) #endif +#endif #define MAXIMUM_WAIT_OBJECTS 64 #define MAXIMUM_SUSPEND_COUNT MAXCHAR @@ -1295,6 +1302,70 @@ typedef ULONG_PTR KSPIN_LOCK; typedef KSPIN_LOCK *PKSPIN_LOCK; + typedef struct DECLSPEC_ALIGN (16) _M128A { + ULONGLONG Low; + LONGLONG High; + } M128A,*PM128A; + + typedef struct DECLSPEC_ALIGN (16) _XSAVE_FORMAT { + WORD ControlWord; + WORD StatusWord; + BYTE TagWord; + BYTE Reserved1; + WORD ErrorOpcode; + DWORD ErrorOffset; + WORD ErrorSelector; + WORD Reserved2; + DWORD DataOffset; + WORD DataSelector; + WORD Reserved3; + DWORD MxCsr; + DWORD MxCsr_Mask; + M128A FloatRegisters[8]; +#ifdef _WIN64 + M128A XmmRegisters[16]; + BYTE Reserved4[96]; +#else + M128A XmmRegisters[8]; + BYTE Reserved4[220]; + DWORD Cr0NpxState; +#endif + } XSAVE_FORMAT,*PXSAVE_FORMAT; + + typedef struct DECLSPEC_ALIGN (8) _XSAVE_AREA_HEADER { + DWORD64 Mask; + DWORD64 Reserved[7]; + } XSAVE_AREA_HEADER,*PXSAVE_AREA_HEADER; + + typedef struct DECLSPEC_ALIGN (16) _XSAVE_AREA { + XSAVE_FORMAT LegacyState; + XSAVE_AREA_HEADER Header; + } XSAVE_AREA,*PXSAVE_AREA; + + typedef struct _XSTATE_CONTEXT { + DWORD64 Mask; + DWORD Length; + DWORD Reserved1; + PXSAVE_AREA Area; +#if defined (__i386__) + DWORD Reserved2; +#endif + PVOID Buffer; +#if defined (__i386__) + DWORD Reserved3; +#endif + } XSTATE_CONTEXT,*PXSTATE_CONTEXT; + + typedef struct _SCOPE_TABLE_AMD64 { + DWORD Count; + struct { + DWORD BeginAddress; + DWORD EndAddress; + DWORD HandlerAddress; + DWORD JumpTarget; + } ScopeRecord[1]; + } SCOPE_TABLE_AMD64,*PSCOPE_TABLE_AMD64; + #ifdef _AMD64_ #if defined(__x86_64) && !defined(RC_INVOKED) @@ -1527,11 +1598,6 @@ #define INITIAL_MXCSR 0x1f80 #define INITIAL_FPCSR 0x027f - typedef struct DECLSPEC_ALIGN(16) _M128A { - ULONGLONG Low; - LONGLONG High; - } M128A,*PM128A; - typedef struct _XMM_SAVE_AREA32 { WORD ControlWord; WORD StatusWord; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-05 15:08:54
|
Revision: 6201 http://sourceforge.net/p/mingw-w64/code/6201 Author: ktietz70 Date: 2013-09-05 15:08:48 +0000 (Thu, 05 Sep 2013) Log Message: ----------- Add WoW64 types ... Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-05 14:55:14 UTC (rev 6200) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-05 15:08:48 UTC (rev 6201) @@ -6753,6 +6753,14 @@ #define WOW64_CONTEXT_EXTENDED_REGISTERS (WOW64_CONTEXT_i386 | __MSABI_LONG(0x00000020)) #define WOW64_CONTEXT_FULL (WOW64_CONTEXT_CONTROL | WOW64_CONTEXT_INTEGER | WOW64_CONTEXT_SEGMENTS) #define WOW64_CONTEXT_ALL (WOW64_CONTEXT_CONTROL | WOW64_CONTEXT_INTEGER | WOW64_CONTEXT_SEGMENTS | WOW64_CONTEXT_FLOATING_POINT | WOW64_CONTEXT_DEBUG_REGISTERS | WOW64_CONTEXT_EXTENDED_REGISTERS) + +#define WOW64_CONTEXT_XSTATE (WOW64_CONTEXT_i386 | __MSABI_LONG(0x00000040)) + +#define WOW64_CONTEXT_EXCEPTION_ACTIVE 0x08000000 +#define WOW64_CONTEXT_SERVICE_ACTIVE 0x10000000 +#define WOW64_CONTEXT_EXCEPTION_REQUEST 0x40000000 +#define WOW64_CONTEXT_EXCEPTION_REPORTING 0x80000000 + #define WOW64_SIZE_OF_80387_REGISTERS 80 #define WOW64_MAXIMUM_SUPPORTED_EXTENSION 512 @@ -6768,6 +6776,7 @@ DWORD Cr0NpxState; } WOW64_FLOATING_SAVE_AREA, *PWOW64_FLOATING_SAVE_AREA; +#include "pshpack4.h" typedef struct _WOW64_CONTEXT { DWORD ContextFlags; DWORD Dr0; @@ -6795,9 +6804,39 @@ DWORD SegSs; BYTE ExtendedRegisters[WOW64_MAXIMUM_SUPPORTED_EXTENSION]; } WOW64_CONTEXT, *PWOW64_CONTEXT; +#include "poppack.h" -#endif /*(_WIN32_WINNT >= 0x0600)*/ + typedef struct _WOW64_LDT_ENTRY { + WORD LimitLow; + WORD BaseLow; + union { + struct { + BYTE BaseMid; + BYTE Flags1; + BYTE Flags2; + BYTE BaseHi; + } Bytes; + struct { + DWORD BaseMid : 8; + DWORD Type : 5; + DWORD Dpl : 2; + DWORD Pres : 1; + DWORD LimitHi : 4; + DWORD Sys : 1; + DWORD Reserved_0 : 1; + DWORD Default_Big : 1; + DWORD Granularity : 1; + DWORD BaseHi : 8; + } Bits; + } HighWord; + } WOW64_LDT_ENTRY,*PWOW64_LDT_ENTRY; + typedef struct _WOW64_DESCRIPTOR_TABLE_ENTRY { + DWORD Selector; + WOW64_LDT_ENTRY Descriptor; + } WOW64_DESCRIPTOR_TABLE_ENTRY,*PWOW64_DESCRIPTOR_TABLE_ENTRY; +#endif + #if (_WIN32_WINNT >= 0x0601) typedef enum { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-05 19:20:59
|
Revision: 6202 http://sourceforge.net/p/mingw-w64/code/6202 Author: ktietz70 Date: 2013-09-05 19:20:53 +0000 (Thu, 05 Sep 2013) Log Message: ----------- Extend security, acl, and elevation types for Windows 8, make some struct widl compatible, add masses of missing priviledge-names, etc Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-05 15:08:48 UTC (rev 6201) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-05 19:20:53 UTC (rev 6202) @@ -2220,6 +2220,10 @@ #define EXCEPTION_COLLIDED_UNWIND 0x40 #define EXCEPTION_UNWIND 0x66 +#define IS_UNWINDING(f) ((f & EXCEPTION_UNWIND) != 0) +#define IS_DISPATCHING(f) ((f & EXCEPTION_UNWIND) == 0) +#define IS_TARGET_UNWIND(f) ((f & EXCEPTION_TARGET_UNWIND) != 0) + #define EXCEPTION_MAXIMUM_PARAMETERS 15 typedef struct _EXCEPTION_RECORD { @@ -2257,6 +2261,10 @@ PCONTEXT ContextRecord; } EXCEPTION_POINTERS,*PEXCEPTION_POINTERS; +#ifdef __ia64__ + NTSYSAPI VOID NTAPI RtlUnwind2 (FRAME_POINTERS TargetFrame, PVOID TargetIp, PEXCEPTION_RECORD ExceptionRecord, PVOID ReturnValue, PCONTEXT ContextRecord); +#endif + #ifdef __x86_64__ /* http://msdn.microsoft.com/en-us/library/ms680597(VS.85).aspx */ @@ -2327,7 +2335,7 @@ typedef PVOID PACCESS_TOKEN; typedef PVOID PSECURITY_DESCRIPTOR; typedef PVOID PSID; - + typedef PVOID PCLAIMS_BLOB; typedef DWORD ACCESS_MASK; typedef ACCESS_MASK *PACCESS_MASK; @@ -2338,6 +2346,7 @@ #define SYNCHRONIZE (__MSABI_LONG(0x00100000)) #define STANDARD_RIGHTS_REQUIRED (__MSABI_LONG(0x000F0000)) + #define STANDARD_RIGHTS_READ (READ_CONTROL) #define STANDARD_RIGHTS_WRITE (READ_CONTROL) #define STANDARD_RIGHTS_EXECUTE (READ_CONTROL) @@ -2346,7 +2355,6 @@ #define SPECIFIC_RIGHTS_ALL (__MSABI_LONG(0x0000FFFF)) #define ACCESS_SYSTEM_SECURITY (__MSABI_LONG(0x01000000)) - #define MAXIMUM_ALLOWED (__MSABI_LONG(0x02000000)) #define GENERIC_READ (__MSABI_LONG(0x80000000)) @@ -2363,14 +2371,12 @@ typedef GENERIC_MAPPING *PGENERIC_MAPPING; #include <pshpack4.h> - typedef struct _LUID_AND_ATTRIBUTES { LUID Luid; DWORD Attributes; } LUID_AND_ATTRIBUTES,*PLUID_AND_ATTRIBUTES; typedef LUID_AND_ATTRIBUTES LUID_AND_ATTRIBUTES_ARRAY[ANYSIZE_ARRAY]; typedef LUID_AND_ATTRIBUTES_ARRAY *PLUID_AND_ATTRIBUTES_ARRAY; - #include <poppack.h> #ifndef SID_IDENTIFIER_AUTHORITY_DEFINED @@ -2393,32 +2399,35 @@ #define SID_REVISION (1) #define SID_MAX_SUB_AUTHORITIES (15) #define SID_RECOMMENDED_SUB_AUTHORITIES (1) -#if (_WIN32_WINNT >= 0x0600) -#define SID_HASH_SIZE 32 +#ifndef __WIDL__ +#define SECURITY_MAX_SID_SIZE (sizeof (SID) - sizeof (DWORD) + (SID_MAX_SUB_AUTHORITIES *sizeof (DWORD))) #endif -#define SECURITY_MAX_SID_SIZE (sizeof(SID) - sizeof(DWORD) + (SID_MAX_SUB_AUTHORITIES *sizeof(DWORD))) +#define SID_HASH_SIZE 32 typedef enum _SID_NAME_USE { SidTypeUser = 1,SidTypeGroup,SidTypeDomain,SidTypeAlias,SidTypeWellKnownGroup,SidTypeDeletedAccount,SidTypeInvalid,SidTypeUnknown,SidTypeComputer,SidTypeLabel } SID_NAME_USE,*PSID_NAME_USE; typedef struct _SID_AND_ATTRIBUTES { +#ifdef __WIDL__ + PISID Sid; +#else PSID Sid; +#endif DWORD Attributes; } SID_AND_ATTRIBUTES,*PSID_AND_ATTRIBUTES; typedef SID_AND_ATTRIBUTES SID_AND_ATTRIBUTES_ARRAY[ANYSIZE_ARRAY]; typedef SID_AND_ATTRIBUTES_ARRAY *PSID_AND_ATTRIBUTES_ARRAY; -#if (_WIN32_WINNT >= 0x0600) typedef ULONG_PTR SID_HASH_ENTRY, *PSID_HASH_ENTRY; + typedef struct _SID_AND_ATTRIBUTES_HASH { DWORD SidCount; PSID_AND_ATTRIBUTES SidAttr; SID_HASH_ENTRY Hash[SID_HASH_SIZE]; } SID_AND_ATTRIBUTES_HASH, *PSID_AND_ATTRIBUTES_HASH; -#endif #define SECURITY_NULL_SID_AUTHORITY {0,0,0,0,0,0} #define SECURITY_WORLD_SID_AUTHORITY {0,0,0,0,0,1} @@ -2430,12 +2439,13 @@ #define SECURITY_NULL_RID (__MSABI_LONG(0x00000000)) #define SECURITY_WORLD_RID (__MSABI_LONG(0x00000000)) #define SECURITY_LOCAL_RID (__MSABI_LONG(0x00000000)) +#define SECURITY_LOCAL_LOGON_RID (__MSABI_LONG(0x00000001)) #define SECURITY_CREATOR_OWNER_RID (__MSABI_LONG(0x00000000)) #define SECURITY_CREATOR_GROUP_RID (__MSABI_LONG(0x00000001)) - #define SECURITY_CREATOR_OWNER_SERVER_RID (__MSABI_LONG(0x00000002)) #define SECURITY_CREATOR_GROUP_SERVER_RID (__MSABI_LONG(0x00000003)) +#define SECURITY_CREATOR_OWNER_RIGHTS_RID (__MSABI_LONG(0x00000004)) #define SECURITY_NT_AUTHORITY {0,0,0,0,0,5} @@ -2457,7 +2467,6 @@ #define SECURITY_REMOTE_LOGON_RID (__MSABI_LONG(0x0000000E)) #define SECURITY_THIS_ORGANIZATION_RID (__MSABI_LONG(0x0000000F)) #define SECURITY_IUSER_RID (__MSABI_LONG(0x00000011)) - #define SECURITY_LOCAL_SYSTEM_RID (__MSABI_LONG(0x00000012)) #define SECURITY_LOCAL_SERVICE_RID (__MSABI_LONG(0x00000013)) #define SECURITY_NETWORK_SERVICE_RID (__MSABI_LONG(0x00000014)) @@ -2476,16 +2485,60 @@ #define SECURITY_PACKAGE_SCHANNEL_RID (__MSABI_LONG(0x0000000E)) #define SECURITY_PACKAGE_DIGEST_RID (__MSABI_LONG(0x00000015)) +#define SECURITY_CRED_TYPE_BASE_RID (__MSABI_LONG(0x00000041)) +#define SECURITY_CRED_TYPE_RID_COUNT (__MSABI_LONG(2)) +#define SECURITY_CRED_TYPE_THIS_ORG_CERT_RID (__MSABI_LONG(0x00000001)) + +#define SECURITY_MIN_BASE_RID (__MSABI_LONG(0x00000050)) + #define SECURITY_SERVICE_ID_BASE_RID (__MSABI_LONG(0x00000050)) #define SECURITY_SERVICE_ID_RID_COUNT (__MSABI_LONG(6)) #define SECURITY_RESERVED_ID_BASE_RID (__MSABI_LONG(0x00000051)) +#define SECURITY_APPPOOL_ID_BASE_RID (__MSABI_LONG(0x00000052)) +#define SECURITY_APPPOOL_ID_RID_COUNT (__MSABI_LONG(6)) + +#define SECURITY_VIRTUALSERVER_ID_BASE_RID (__MSABI_LONG(0x00000053)) +#define SECURITY_VIRTUALSERVER_ID_RID_COUNT (__MSABI_LONG(6)) + +#define SECURITY_USERMODEDRIVERHOST_ID_BASE_RID (__MSABI_LONG(0x00000054)) +#define SECURITY_USERMODEDRIVERHOST_ID_RID_COUNT (__MSABI_LONG(6)) + +#define SECURITY_CLOUD_INFRASTRUCTURE_SERVICES_ID_BASE_RID (__MSABI_LONG(0x00000055)) +#define SECURITY_CLOUD_INFRASTRUCTURE_SERVICES_ID_RID_COUNT (__MSABI_LONG(6)) + +#define SECURITY_WMIHOST_ID_BASE_RID (__MSABI_LONG(0x00000056)) +#define SECURITY_WMIHOST_ID_RID_COUNT (__MSABI_LONG(6)) + +#define SECURITY_TASK_ID_BASE_RID (__MSABI_LONG(0x00000057)) + +#define SECURITY_NFS_ID_BASE_RID (__MSABI_LONG(0x00000058)) + +#define SECURITY_COM_ID_BASE_RID (__MSABI_LONG(0x00000059)) + +#define SECURITY_WINDOW_MANAGER_BASE_RID (__MSABI_LONG(0x0000005a)) + +#define SECURITY_RDV_GFX_BASE_RID (__MSABI_LONG(0x0000005b)) + +#define SECURITY_DASHOST_ID_BASE_RID (__MSABI_LONG(0x0000005c)) +#define SECURITY_DASHOST_ID_RID_COUNT (__MSABI_LONG(6)) + +#define SECURITY_VIRTUALACCOUNT_ID_RID_COUNT (__MSABI_LONG(6)) + +#define SECURITY_MAX_BASE_RID (__MSABI_LONG(0x0000006f)) + #define SECURITY_MAX_ALWAYS_FILTERED (__MSABI_LONG(0x000003E7)) #define SECURITY_MIN_NEVER_FILTERED (__MSABI_LONG(0x000003E8)) #define SECURITY_OTHER_ORGANIZATION_RID (__MSABI_LONG(0x000003E8)) +#define SECURITY_WINDOWSMOBILE_ID_BASE_RID (__MSABI_LONG(0x00000070)) + +#define DOMAIN_GROUP_RID_AUTHORIZATION_DATA_IS_COMPOUNDED (__MSABI_LONG(0x000001f0)) +#define DOMAIN_GROUP_RID_AUTHORIZATION_DATA_CONTAINS_CLAIMS (__MSABI_LONG(0x000001f1)) +#define DOMAIN_GROUP_RID_ENTERPRISE_READONLY_DOMAIN_CONTROLLERS (__MSABI_LONG(0x000001f2)) + #define FOREST_USER_RID_MAX (__MSABI_LONG(0x000001F3)) #define DOMAIN_USER_RID_ADMIN (__MSABI_LONG(0x000001F4)) @@ -2504,6 +2557,7 @@ #define DOMAIN_GROUP_RID_ENTERPRISE_ADMINS (__MSABI_LONG(0x00000207)) #define DOMAIN_GROUP_RID_POLICY_ADMINS (__MSABI_LONG(0x00000208)) #define DOMAIN_GROUP_RID_READONLY_CONTROLLERS (__MSABI_LONG(0x00000209)) +#define DOMAIN_GROUP_RID_CLONEABLE_CONTROLLERS (__MSABI_LONG(0x0000020a)) #define DOMAIN_ALIAS_RID_ADMINS (__MSABI_LONG(0x00000220)) #define DOMAIN_ALIAS_RID_USERS (__MSABI_LONG(0x00000221)) @@ -2533,7 +2587,38 @@ #define DOMAIN_ALIAS_RID_CACHEABLE_PRINCIPALS_GROUP (__MSABI_LONG(0x0000023B)) #define DOMAIN_ALIAS_RID_NON_CACHEABLE_PRINCIPALS_GROUP (__MSABI_LONG(0x0000023C)) #define DOMAIN_ALIAS_RID_EVENT_LOG_READERS_GROUP (__MSABI_LONG(0x0000023D)) +#define DOMAIN_ALIAS_RID_CERTSVC_DCOM_ACCESS_GROUP (__MSABI_LONG(0x0000023e)) +#define DOMAIN_ALIAS_RID_RDS_REMOTE_ACCESS_SERVERS (__MSABI_LONG(0x0000023f)) +#define DOMAIN_ALIAS_RID_RDS_ENDPOINT_SERVERS (__MSABI_LONG(0x00000240)) +#define DOMAIN_ALIAS_RID_RDS_MANAGEMENT_SERVERS (__MSABI_LONG(0x00000241)) +#define DOMAIN_ALIAS_RID_HYPER_V_ADMINS (__MSABI_LONG(0x00000242)) +#define DOMAIN_ALIAS_RID_ACCESS_CONTROL_ASSISTANCE_OPS (__MSABI_LONG(0x00000243)) +#define DOMAIN_ALIAS_RID_REMOTE_MANAGEMENT_USERS (__MSABI_LONG(0x00000244)) +#define SECURITY_APP_PACKAGE_AUTHORITY {0, 0, 0, 0, 0, 15} + +#define SECURITY_APP_PACKAGE_BASE_RID (__MSABI_LONG(0x00000002)) +#define SECURITY_BUILTIN_APP_PACKAGE_RID_COUNT (__MSABI_LONG(2)) +#define SECURITY_APP_PACKAGE_RID_COUNT (__MSABI_LONG(8)) +#define SECURITY_CAPABILITY_BASE_RID (__MSABI_LONG(0x00000003)) +#define SECURITY_BUILTIN_CAPABILITY_RID_COUNT (__MSABI_LONG(2)) +#define SECURITY_CAPABILITY_RID_COUNT (__MSABI_LONG(5)) + +#define SECURITY_BUILTIN_PACKAGE_ANY_PACKAGE (__MSABI_LONG(0x00000001)) + +#define SECURITY_CAPABILITY_INTERNET_CLIENT (__MSABI_LONG(0x00000001)) +#define SECURITY_CAPABILITY_INTERNET_CLIENT_SERVER (__MSABI_LONG(0x00000002)) +#define SECURITY_CAPABILITY_PRIVATE_NETWORK_CLIENT_SERVER (__MSABI_LONG(0x00000003)) +#define SECURITY_CAPABILITY_PICTURES_LIBRARY (__MSABI_LONG(0x00000004)) +#define SECURITY_CAPABILITY_VIDEOS_LIBRARY (__MSABI_LONG(0x00000005)) +#define SECURITY_CAPABILITY_MUSIC_LIBRARY (__MSABI_LONG(0x00000006)) +#define SECURITY_CAPABILITY_DOCUMENTS_LIBRARY (__MSABI_LONG(0x00000007)) +#define SECURITY_CAPABILITY_ENTERPRISE_AUTHENTICATION (__MSABI_LONG(0x00000008)) +#define SECURITY_CAPABILITY_SHARED_USER_CERTIFICATES (__MSABI_LONG(0x00000009)) +#define SECURITY_CAPABILITY_REMOVABLE_STORAGE (__MSABI_LONG(0x0000000a)) + +#define SECURITY_CAPABILITY_INTERNET_EXPLORER (__MSABI_LONG(0x00001000)) + #define SECURITY_MANDATORY_LABEL_AUTHORITY {0,0,0,0,0,16} #define SECURITY_MANDATORY_UNTRUSTED_RID (__MSABI_LONG(0x00000000)) #define SECURITY_MANDATORY_LOW_RID (__MSABI_LONG(0x00001000)) @@ -2546,6 +2631,19 @@ #define MANDATORY_LEVEL_TO_MANDATORY_RID(IL) (IL * 0x1000) +#define SECURITY_SCOPED_POLICY_ID_AUTHORITY {0, 0, 0, 0, 0, 17} + +#define SECURITY_AUTHENTICATION_AUTHORITY {0, 0, 0, 0, 0, 18} +#define SECURITY_AUTHENTICATION_AUTHORITY_RID_COUNT (__MSABI_LONG(1)) +#define SECURITY_AUTHENTICATION_AUTHORITY_ASSERTED_RID (__MSABI_LONG(0x00000001)) +#define SECURITY_AUTHENTICATION_SERVICE_ASSERTED_RID (__MSABI_LONG(0x00000002)) + +#define SECURITY_TRUSTED_INSTALLER_RID1 956008885 +#define SECURITY_TRUSTED_INSTALLER_RID2 3418522649 +#define SECURITY_TRUSTED_INSTALLER_RID3 1831038044 +#define SECURITY_TRUSTED_INSTALLER_RID4 1853292631 +#define SECURITY_TRUSTED_INSTALLER_RID5 2271478464 + typedef enum { WinNullSid = 0,WinWorldSid = 1,WinLocalSid = 2,WinCreatorOwnerSid = 3, WinCreatorGroupSid = 4,WinCreatorOwnerServerSid = 5, @@ -2602,23 +2700,10 @@ WinAuthenticationServiceAssertedSid = 104 } WELL_KNOWN_SID_TYPE; -#define SECURITY_SCOPED_POLICY_ID_AUTHORITY { 0, 0, 0, 0, 0, 17 } -#define SECURITY_AUTHENTICATION_AUTHORITY { 0, 0, 0, 0, 0, 18 } - -#define SECURITY_AUTHENTICATION_AUTHORITY_RID_COUNT (__MSABI_LONG(1)) -#define SECURITY_AUTHENTICATION_AUTHORITY_ASSERTED_RID (__MSABI_LONG(0x1)) -#define SECURITY_AUTHENTICATION_SERVICE_ASSERTED_RID (__MSABI_LONG(0x2)) - -#define SECURITY_TRUSTED_INSTALLER_RID1 956008885 -#define SECURITY_TRUSTED_INSTALLER_RID2 3418522649 -#define SECURITY_TRUSTED_INSTALLER_RID3 1831038044 -#define SECURITY_TRUSTED_INSTALLER_RID4 1853292631 -#define SECURITY_TRUSTED_INSTALLER_RID5 2271478464 - -#define SYSTEM_LUID { 0x3E7,0x0 } -#define ANONYMOUS_LOGON_LUID { 0x3e6,0x0 } -#define LOCALSERVICE_LUID { 0x3e5,0x0 } -#define NETWORKSERVICE_LUID { 0x3e4,0x0 } +#define SYSTEM_LUID { 0x3e7, 0x0 } +#define ANONYMOUS_LOGON_LUID { 0x3e6, 0x0 } +#define LOCALSERVICE_LUID { 0x3e5, 0x0 } +#define NETWORKSERVICE_LUID { 0x3e4, 0x0 } #define IUSER_LUID { 0x3e3, 0x0 } #define SE_GROUP_MANDATORY (__MSABI_LONG(0x00000001)) @@ -2631,6 +2716,8 @@ #define SE_GROUP_LOGON_ID (__MSABI_LONG(0xC0000000)) #define SE_GROUP_RESOURCE (__MSABI_LONG(0x20000000)) +#define SE_GROUP_VALID_ATTRIBUTES (SE_GROUP_MANDATORY | SE_GROUP_ENABLED_BY_DEFAULT | SE_GROUP_ENABLED | SE_GROUP_OWNER | SE_GROUP_USE_FOR_DENY_ONLY | SE_GROUP_LOGON_ID | SE_GROUP_RESOURCE | SE_GROUP_INTEGRITY | SE_GROUP_INTEGRITY_ENABLED) + #define ACL_REVISION (2) #define ACL_REVISION_DS (4) @@ -2687,7 +2774,9 @@ #define SYSTEM_ALARM_CALLBACK_OBJECT_ACE_TYPE (0x10) #define SYSTEM_MANDATORY_LABEL_ACE_TYPE (0x11) -#define ACCESS_MAX_MS_V5_ACE_TYPE (0x11) +#define SYSTEM_RESOURCE_ATTRIBUTE_ACE_TYPE (0x12) +#define SYSTEM_SCOPED_POLICY_ID_ACE_TYPE (0x13) +#define ACCESS_MAX_MS_V5_ACE_TYPE (0x13) #define OBJECT_INHERIT_ACE (0x1) #define CONTAINER_INHERIT_ACE (0x2) @@ -2728,6 +2817,18 @@ } SYSTEM_ALARM_ACE; typedef SYSTEM_ALARM_ACE *PSYSTEM_ALARM_ACE; + typedef struct _SYSTEM_RESOURCE_ATTRIBUTE_ACE { + ACE_HEADER Header; + ACCESS_MASK Mask; + DWORD SidStart; + } SYSTEM_RESOURCE_ATTRIBUTE_ACE,*PSYSTEM_RESOURCE_ATTRIBUTE_ACE; + + typedef struct _SYSTEM_SCOPED_POLICY_ID_ACE { + ACE_HEADER Header; + ACCESS_MASK Mask; + DWORD SidStart; + } SYSTEM_SCOPED_POLICY_ID_ACE,*PSYSTEM_SCOPED_POLICY_ID_ACE; + typedef struct _SYSTEM_MANDATORY_LABEL_ACE { ACE_HEADER Header; ACCESS_MASK Mask; @@ -2780,28 +2881,24 @@ ACE_HEADER Header; ACCESS_MASK Mask; DWORD SidStart; - } ACCESS_ALLOWED_CALLBACK_ACE,*PACCESS_ALLOWED_CALLBACK_ACE; typedef struct _ACCESS_DENIED_CALLBACK_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD SidStart; - } ACCESS_DENIED_CALLBACK_ACE,*PACCESS_DENIED_CALLBACK_ACE; typedef struct _SYSTEM_AUDIT_CALLBACK_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD SidStart; - } SYSTEM_AUDIT_CALLBACK_ACE,*PSYSTEM_AUDIT_CALLBACK_ACE; typedef struct _SYSTEM_ALARM_CALLBACK_ACE { ACE_HEADER Header; ACCESS_MASK Mask; DWORD SidStart; - } SYSTEM_ALARM_CALLBACK_ACE,*PSYSTEM_ALARM_CALLBACK_ACE; typedef struct _ACCESS_ALLOWED_CALLBACK_OBJECT_ACE { @@ -2821,7 +2918,6 @@ GUID ObjectType; GUID InheritedObjectType; DWORD SidStart; - } ACCESS_DENIED_CALLBACK_OBJECT_ACE,*PACCESS_DENIED_CALLBACK_OBJECT_ACE; typedef struct _SYSTEM_AUDIT_CALLBACK_OBJECT_ACE { @@ -2831,7 +2927,6 @@ GUID ObjectType; GUID InheritedObjectType; DWORD SidStart; - } SYSTEM_AUDIT_CALLBACK_OBJECT_ACE,*PSYSTEM_AUDIT_CALLBACK_OBJECT_ACE; typedef struct _SYSTEM_ALARM_CALLBACK_OBJECT_ACE { @@ -2903,7 +2998,6 @@ PSID Group; PACL Sacl; PACL Dacl; - } SECURITY_DESCRIPTOR,*PISECURITY_DESCRIPTOR; typedef struct _OBJECT_TYPE_LIST { @@ -2944,6 +3038,66 @@ LUID_AND_ATTRIBUTES Privilege[ANYSIZE_ARRAY]; } PRIVILEGE_SET,*PPRIVILEGE_SET; +#define ACCESS_REASON_TYPE_MASK 0x00ff0000 +#define ACCESS_REASON_DATA_MASK 0x0000ffff + +#define ACCESS_REASON_STAGING_MASK 0x80000000 +#define ACCESS_REASON_EXDATA_MASK 0x7f000000 + + typedef enum _ACCESS_REASON_TYPE { + AccessReasonNone = 0x00000000, + AccessReasonAllowedAce = 0x00010000, + AccessReasonDeniedAce = 0x00020000, + AccessReasonAllowedParentAce = 0x00030000, + AccessReasonDeniedParentAce = 0x00040000, + AccessReasonNotGrantedByCape = 0x00050000, + AccessReasonNotGrantedByParentCape = 0x00060000, + AccessReasonNotGrantedToAppContainer = 0x00070000, + AccessReasonMissingPrivilege = 0x00100000, + AccessReasonFromPrivilege = 0x00200000, + AccessReasonIntegrityLevel = 0x00300000, + AccessReasonOwnership = 0x00400000, + AccessReasonNullDacl = 0x00500000, + AccessReasonEmptyDacl = 0x00600000, + AccessReasonNoSD = 0x00700000, + AccessReasonNoGrant = 0x00800000 + } ACCESS_REASON_TYPE; + typedef DWORD ACCESS_REASON; + + typedef struct _ACCESS_REASONS { + ACCESS_REASON Data[32]; + } ACCESS_REASONS,*PACCESS_REASONS; + +#define SE_SECURITY_DESCRIPTOR_FLAG_NO_OWNER_ACE 0x00000001 +#define SE_SECURITY_DESCRIPTOR_FLAG_NO_LABEL_ACE 0x00000002 +#define SE_SECURITY_DESCRIPTOR_VALID_FLAGS 0x00000003 + + typedef struct _SE_SECURITY_DESCRIPTOR { + DWORD Size; + DWORD Flags; + PSECURITY_DESCRIPTOR SecurityDescriptor; + } SE_SECURITY_DESCRIPTOR,*PSE_SECURITY_DESCRIPTOR; + + typedef struct _SE_ACCESS_REQUEST { + DWORD Size; + PSE_SECURITY_DESCRIPTOR SeSecurityDescriptor; + ACCESS_MASK DesiredAccess; + ACCESS_MASK PreviouslyGrantedAccess; + PSID PrincipalSelfSid; + PGENERIC_MAPPING GenericMapping; + DWORD ObjectTypeListCount; + POBJECT_TYPE_LIST ObjectTypeList; + } SE_ACCESS_REQUEST,*PSE_ACCESS_REQUEST; + + typedef struct _SE_ACCESS_REPLY { + DWORD Size; + DWORD ResultListCount; + PACCESS_MASK GrantedAccess; + PDWORD AccessStatus; + PACCESS_REASONS AccessReason; + PPRIVILEGE_SET *Privileges; + } SE_ACCESS_REPLY,*PSE_ACCESS_REPLY; + #define SE_CREATE_TOKEN_NAME TEXT("SeCreateTokenPrivilege") #define SE_ASSIGNPRIMARYTOKEN_NAME TEXT("SeAssignPrimaryTokenPrivilege") #define SE_LOCK_MEMORY_NAME TEXT("SeLockMemoryPrivilege") @@ -3047,6 +3201,18 @@ TokenUIAccess, TokenMandatoryPolicy, TokenLogonSid, + TokenIsAppContainer, + TokenCapabilities, + TokenAppContainerSid, + TokenAppContainerNumber, + TokenUserClaimAttributes, + TokenDeviceClaimAttributes, + TokenRestrictedUserClaimAttributes, + TokenRestrictedDeviceClaimAttributes, + TokenDeviceGroups, + TokenRestrictedDeviceGroups, + TokenSecurityAttributes, + TokenIsRestricted, MaxTokenInfoClass } TOKEN_INFORMATION_CLASS,*PTOKEN_INFORMATION_CLASS; @@ -3056,7 +3222,11 @@ typedef struct _TOKEN_GROUPS { DWORD GroupCount; +#ifdef __WIDL__ + [size_is (GroupCount)] SID_AND_ATTRIBUTES Groups[*]; +#else SID_AND_ATTRIBUTES Groups[ANYSIZE_ARRAY]; +#endif } TOKEN_GROUPS,*PTOKEN_GROUPS; typedef struct _TOKEN_PRIVILEGES { @@ -3076,6 +3246,14 @@ PACL DefaultDacl; } TOKEN_DEFAULT_DACL,*PTOKEN_DEFAULT_DACL; + typedef struct _TOKEN_USER_CLAIMS { + PCLAIMS_BLOB UserClaims; + } TOKEN_USER_CLAIMS,*PTOKEN_USER_CLAIMS; + + typedef struct _TOKEN_DEVICE_CLAIMS { + PCLAIMS_BLOB DeviceClaims; + } TOKEN_DEVICE_CLAIMS,*PTOKEN_DEVICE_CLAIMS; + typedef struct _TOKEN_GROUPS_AND_PRIVILEGES { DWORD SidCount; DWORD SidLength; @@ -3089,8 +3267,44 @@ LUID AuthenticationId; } TOKEN_GROUPS_AND_PRIVILEGES,*PTOKEN_GROUPS_AND_PRIVILEGES; -#define POLICY_AUDIT_SUBCATEGORY_COUNT (53) + typedef struct _TOKEN_LINKED_TOKEN { + HANDLE LinkedToken; + } TOKEN_LINKED_TOKEN,*PTOKEN_LINKED_TOKEN; + typedef struct _TOKEN_ELEVATION { + DWORD TokenIsElevated; + } TOKEN_ELEVATION,*PTOKEN_ELEVATION; + + typedef struct _TOKEN_MANDATORY_LABEL { + SID_AND_ATTRIBUTES Label; + } TOKEN_MANDATORY_LABEL,*PTOKEN_MANDATORY_LABEL; + +#define TOKEN_MANDATORY_POLICY_OFF 0x0 +#define TOKEN_MANDATORY_POLICY_NO_WRITE_UP 0x1 +#define TOKEN_MANDATORY_POLICY_NEW_PROCESS_MIN 0x2 + +#define TOKEN_MANDATORY_POLICY_VALID_MASK (TOKEN_MANDATORY_POLICY_NO_WRITE_UP | TOKEN_MANDATORY_POLICY_NEW_PROCESS_MIN) + + typedef struct _TOKEN_MANDATORY_POLICY { + DWORD Policy; + } TOKEN_MANDATORY_POLICY,*PTOKEN_MANDATORY_POLICY; + + typedef struct _TOKEN_ACCESS_INFORMATION { + PSID_AND_ATTRIBUTES_HASH SidHash; + PSID_AND_ATTRIBUTES_HASH RestrictedSidHash; + PTOKEN_PRIVILEGES Privileges; + LUID AuthenticationId; + TOKEN_TYPE TokenType; + SECURITY_IMPERSONATION_LEVEL ImpersonationLevel; + TOKEN_MANDATORY_POLICY MandatoryPolicy; + DWORD Flags; + DWORD AppContainerNumber; + PSID PackageSid; + PSID_AND_ATTRIBUTES_HASH CapabilitiesHash; + } TOKEN_ACCESS_INFORMATION,*PTOKEN_ACCESS_INFORMATION; + +#define POLICY_AUDIT_SUBCATEGORY_COUNT (56) + typedef struct _TOKEN_AUDIT_POLICY { UCHAR PerUserPolicy[((POLICY_AUDIT_SUBCATEGORY_COUNT) >> 1) + 1]; } TOKEN_AUDIT_POLICY, *PTOKEN_AUDIT_POLICY; @@ -3126,42 +3340,21 @@ LUID OriginatingLogonSession; } TOKEN_ORIGIN,*PTOKEN_ORIGIN; -#if (_WIN32_WINNT >= 0x0600) - typedef struct _TOKEN_LINKED_TOKEN { - HANDLE LinkedToken; - } TOKEN_LINKED_TOKEN, *PTOKEN_LINKED_TOKEN; + typedef enum _MANDATORY_LEVEL { + MandatoryLevelUntrusted = 0, + MandatoryLevelLow, + MandatoryLevelMedium, + MandatoryLevelHigh, + MandatoryLevelSystem, + MandatoryLevelSecureProcess, + MandatoryLevelCount + } MANDATORY_LEVEL,*PMANDATORY_LEVEL; - typedef struct _TOKEN_MANDATORY_LABEL { - SID_AND_ATTRIBUTES Label; - } TOKEN_MANDATORY_LABEL, *PTOKEN_MANDATORY_LABEL; + typedef struct _TOKEN_APPCONTAINER_INFORMATION { + PSID TokenAppContainer; + } TOKEN_APPCONTAINER_INFORMATION,*PTOKEN_APPCONTAINER_INFORMATION; -#define TOKEN_MANDATORY_POLICY_OFF 0x0 -#define TOKEN_MANDATORY_POLICY_NO_WRITE_UP 0x1 -#define TOKEN_MANDATORY_POLICY_NEW_PROCESS_MIN 0x2 -#define TOKEN_MANDATORY_POLICY_VALID_MASK 0x3 - - typedef struct _TOKEN_MANDATORY_POLICY { - DWORD Policy; - } TOKEN_MANDATORY_POLICY, *PTOKEN_MANDATORY_POLICY; - - typedef struct _TOKEN_ELEVATION { - DWORD TokenIsElevated; - } TOKEN_ELEVATION, *PTOKEN_ELEVATION; - - typedef struct _TOKEN_ACCESS_INFORMATION { - PSID_AND_ATTRIBUTES_HASH SidHash; - PSID_AND_ATTRIBUTES_HASH RestrictedSidHash; - PTOKEN_PRIVILEGES Privileges; - LUID AuthenticationId; - TOKEN_TYPE TokenType; - SECURITY_IMPERSONATION_LEVEL ImpersonationLevel; - TOKEN_MANDATORY_POLICY MandatoryPolicy; - DWORD Flags; - } TOKEN_ACCESS_INFORMATION, *PTOKEN_ACCESS_INFORMATION; -#endif - #define CLAIM_SECURITY_ATTRIBUTE_TYPE_INVALID 0x00 - #define CLAIM_SECURITY_ATTRIBUTE_TYPE_INT64 0x01 #define CLAIM_SECURITY_ATTRIBUTE_TYPE_UINT64 0x02 #define CLAIM_SECURITY_ATTRIBUTE_TYPE_STRING 0x03 @@ -3264,12 +3457,30 @@ #define DACL_SECURITY_INFORMATION (__MSABI_LONG(0x00000004)) #define SACL_SECURITY_INFORMATION (__MSABI_LONG(0x00000008)) #define LABEL_SECURITY_INFORMATION (__MSABI_LONG(0x00000010)) +#define ATTRIBUTE_SECURITY_INFORMATION (__MSABI_LONG(0x00000020)) +#define SCOPE_SECURITY_INFORMATION (__MSABI_LONG(0x00000040)) +#define BACKUP_SECURITY_INFORMATION (__MSABI_LONG(0x00010000)) #define PROTECTED_DACL_SECURITY_INFORMATION (__MSABI_LONG(0x80000000)) #define PROTECTED_SACL_SECURITY_INFORMATION (__MSABI_LONG(0x40000000)) #define UNPROTECTED_DACL_SECURITY_INFORMATION (__MSABI_LONG(0x20000000)) #define UNPROTECTED_SACL_SECURITY_INFORMATION (__MSABI_LONG(0x10000000)) + typedef enum _SE_LEARNING_MODE_DATA_TYPE { + SeLearningModeInvalidType = 0, + SeLearningModeSettings, + SeLearningModeMax + } SE_LEARNING_MODE_DATA_TYPE; + +#define SE_LEARNING_MODE_FLAG_PERMISSIVE 0x00000001 + + typedef struct _SECURITY_CAPABILITIES { + PSID AppContainerSid; + PSID_AND_ATTRIBUTES Capabilities; + DWORD CapabilityCount; + DWORD Reserved; + } SECURITY_CAPABILITIES,*PSECURITY_CAPABILITIES,*LPSECURITY_CAPABILITIES; + #define PROCESS_TERMINATE (0x0001) #define PROCESS_CREATE_THREAD (0x0002) #define PROCESS_SET_SESSIONID (0x0004) @@ -3283,14 +3494,21 @@ #define PROCESS_QUERY_INFORMATION (0x0400) #define PROCESS_SUSPEND_RESUME (0x0800) #define PROCESS_QUERY_LIMITED_INFORMATION (0x1000) -#define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0xFFF) +#if NTDDI_VERSION >= 0x06000000 +#define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0xffff) +#else +#define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0xfff) +#endif + #ifdef _WIN64 -#define MAXIMUM_PROCESSORS 64 +#define MAXIMUM_PROC_PER_GROUP 64 #else -#define MAXIMUM_PROCESSORS 32 +#define MAXIMUM_PROC_PER_GROUP 32 #endif +#define MAXIMUM_PROCESSORS MAXIMUM_PROC_PER_GROUP + #define THREAD_TERMINATE (0x0001) #define THREAD_SUSPEND_RESUME (0x0002) #define THREAD_GET_CONTEXT (0x0008) @@ -3303,7 +3521,11 @@ #define THREAD_SET_LIMITED_INFORMATION (0x0400) #define THREAD_QUERY_LIMITED_INFORMATION (0x0800) -#define THREAD_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x3FF) +#if NTDDI_VERSION >= 0x06000000 +#define THREAD_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0xffff) +#else +#define THREAD_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED | SYNCHRONIZE | 0x3ff) +#endif #define JOB_OBJECT_ASSIGN_PROCESS (0x0001) #define JOB_OBJECT_SET_ATTRIBUTES (0x0002) @@ -3321,6 +3543,13 @@ #define FLS_MAXIMUM_AVAILABLE 128 #define TLS_MINIMUM_AVAILABLE 64 + typedef struct _EXCEPTION_REGISTRATION_RECORD { + struct _EXCEPTION_REGISTRATION_RECORD *Next; + PEXCEPTION_ROUTINE Handler; + } EXCEPTION_REGISTRATION_RECORD; + + typedef EXCEPTION_REGISTRATION_RECORD *PEXCEPTION_REGISTRATION_RECORD; + #ifndef _NT_TIB_DEFINED #define _NT_TIB_DEFINED __C89_NAMELESS typedef struct _NT_TIB { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-06 21:14:43
|
Revision: 6217 http://sourceforge.net/p/mingw-w64/code/6217 Author: ktietz70 Date: 2013-09-06 21:14:34 +0000 (Fri, 06 Sep 2013) Log Message: ----------- Fix double type-definitions caused by header restructuring Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-06 15:57:54 UTC (rev 6216) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-06 21:14:34 UTC (rev 6217) @@ -7086,7 +7086,6 @@ #define RTL_SRWLOCK_INIT {0} -#if 1 #ifndef _RTL_RUN_ONCE_DEF #define _RTL_RUN_ONCE_DEF 1 typedef struct _RTL_RUN_ONCE { PVOID Ptr; } RTL_RUN_ONCE, *PRTL_RUN_ONCE; @@ -7247,36 +7246,35 @@ } WOW64_CONTEXT, *PWOW64_CONTEXT; #include "poppack.h" - typedef struct _WOW64_LDT_ENTRY { - WORD LimitLow; - WORD BaseLow; - union { - struct { - BYTE BaseMid; - BYTE Flags1; - BYTE Flags2; - BYTE BaseHi; - } Bytes; - struct { - DWORD BaseMid : 8; - DWORD Type : 5; - DWORD Dpl : 2; - DWORD Pres : 1; - DWORD LimitHi : 4; - DWORD Sys : 1; - DWORD Reserved_0 : 1; - DWORD Default_Big : 1; - DWORD Granularity : 1; - DWORD BaseHi : 8; - } Bits; - } HighWord; - } WOW64_LDT_ENTRY,*PWOW64_LDT_ENTRY; +typedef struct _WOW64_LDT_ENTRY { + WORD LimitLow; + WORD BaseLow; + __C89_NAMELESS union { + struct { + BYTE BaseMid; + BYTE Flags1; + BYTE Flags2; + BYTE BaseHi; + } Bytes; + struct { + DWORD BaseMid :8; + DWORD Type :5; + DWORD Dpl :2; + DWORD Pres :1; + DWORD LimitHi :4; + DWORD Sys :1; + DWORD Reserved_0 :1; + DWORD Default_Big :1; + DWORD Granularity :1; + DWORD BaseHi :8; + } Bits; + } HighWord; +} WOW64_LDT_ENTRY, *PWOW64_LDT_ENTRY; typedef struct _WOW64_DESCRIPTOR_TABLE_ENTRY { DWORD Selector; WOW64_LDT_ENTRY Descriptor; } WOW64_DESCRIPTOR_TABLE_ENTRY,*PWOW64_DESCRIPTOR_TABLE_ENTRY; -#endif #if (_WIN32_WINNT >= 0x0601) @@ -7309,90 +7307,6 @@ #define ALL_PROCESSOR_GROUPS 0xffff #endif /* !___PROCESSOR_NUMBER_DEFINED */ -typedef struct _PROCESSOR_GROUP_INFO { - BYTE MaximumProcessorCount; - BYTE ActiveProcessorCount; - BYTE Reserved[38]; - KAFFINITY ActiveProcessorMask; -} PROCESSOR_GROUP_INFO, *PPROCESSOR_GROUP_INFO; - -typedef struct _GROUP_RELATIONSHIP { - WORD MaximumGroupCount; - WORD ActiveGroupCount; - BYTE Reserved[20]; - PROCESSOR_GROUP_INFO GroupInfo[]; -} GROUP_RELATIONSHIP, *PGROUP_RELATIONSHIP; - -typedef struct _CACHE_RELATIONSHIP { - BYTE Level; - BYTE Associativity; - WORD LineSize; - DWORD CacheSize; - PROCESSOR_CACHE_TYPE Type; - BYTE Reserved[20]; - GROUP_AFFINITY GroupMask; -} CACHE_RELATIONSHIP, *PCACHE_RELATIONSHIP; - -typedef struct _NUMA_NODE_RELATIONSHIP { - DWORD NodeNumber; - BYTE Reserved[20]; - GROUP_AFFINITY GroupMask; -} NUMA_NODE_RELATIONSHIP, *PNUMA_NODE_RELATIONSHIP; - -typedef struct _PROCESSOR_RELATIONSHIP { - BYTE Flags; - BYTE Reserved[21]; - WORD GroupCount; - GROUP_AFFINITY GroupMask[]; -} PROCESSOR_RELATIONSHIP, *PPROCESSOR_RELATIONSHIP; - -typedef struct _SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX { - LOGICAL_PROCESSOR_RELATIONSHIP Relationship; - DWORD Size; - __C89_NAMELESS union { - PROCESSOR_RELATIONSHIP Processor; - NUMA_NODE_RELATIONSHIP NumaNode; - CACHE_RELATIONSHIP Cache; - GROUP_RELATIONSHIP Group; - }; -} SYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX, *PSYSTEM_LOGICAL_PROCESSOR_INFORMATION_EX; - -typedef struct _UMS_CREATE_THREAD_ATTRIBUTES { - DWORD UmsVersion; - PVOID UmsContext; - PVOID UmsCompletionList; -} UMS_CREATE_THREAD_ATTRIBUTES, *PUMS_CREATE_THREAD_ATTRIBUTES; - -typedef struct _WOW64_LDT_ENTRY { - WORD LimitLow; - WORD BaseLow; - __C89_NAMELESS union { - struct { - BYTE BaseMid; - BYTE Flags1; - BYTE Flags2; - BYTE BaseHi; - } Bytes; - struct { - DWORD BaseMid :8; - DWORD Type :5; - DWORD Dpl :2; - DWORD Pres :1; - DWORD LimitHi :4; - DWORD Sys :1; - DWORD Reserved_0 :1; - DWORD Default_Big :1; - DWORD Granularity :1; - DWORD BaseHi :8; - } Bits; - } HighWord; -} WOW64_LDT_ENTRY, *PWOW64_LDT_ENTRY; - -/* Retrieved from: https://kdlib.googlecode.com/svn/trunk/imports/c/windows/winnt.d */ -typedef struct _SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION { - DWORD64 CycleTime; -} SYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION, *PSYSTEM_PROCESSOR_CYCLE_TIME_INFORMATION; - typedef struct _HARDWARE_COUNTER_DATA { HARDWARE_COUNTER_TYPE Type; DWORD Reserved; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-07 10:19:22
|
Revision: 6226 http://sourceforge.net/p/mingw-w64/code/6226 Author: ktietz70 Date: 2013-09-07 10:19:15 +0000 (Sat, 07 Sep 2013) Log Message: ----------- Fix 32-bit regression about PEXCEPTION_ROUTINE. Along changed way of declaring callback. Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-07 09:47:08 UTC (rev 6225) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-07 10:19:15 UTC (rev 6226) @@ -668,6 +668,12 @@ #define RTL_BITS_OF_FIELD(type,field) (RTL_BITS_OF(RTL_FIELD_TYPE(type,field))) #define CONTAINING_RECORD(address,type,field) ((type *)((PCHAR)(address) - (ULONG_PTR)(&((type *)0)->field))) + typedef EXCEPTION_DISPOSITION NTAPI EXCEPTION_ROUTINE (struct _EXCEPTION_RECORD *ExceptionRecord, PVOID EstablisherFrame, struct _CONTEXT *ContextRecord, PVOID DispatcherContext); +#ifndef __PEXCEPTION_ROUTINE_DEFINED +#define __PEXCEPTION_ROUTINE_DEFINED + typedef EXCEPTION_ROUTINE *PEXCEPTION_ROUTINE; +#endif + #define VER_WORKSTATION_NT 0x40000000 #define VER_SERVER_NT 0x80000000 #define VER_SUITE_SMALLBUSINESS 0x00000001 @@ -1913,8 +1919,8 @@ #if !defined(GENUTIL) && !defined(_GENIA64_) && defined(_IA64_) void *_cdecl _rdteb(void); + #ifdef __ia64__ - #define NtCurrentTeb() ((struct _TEB *)_rdteb()) #define GetCurrentFiber() (((PNT_TIB)NtCurrentTeb())->FiberData) #define GetFiberData() (*(PVOID *)(GetCurrentFiber())) @@ -2275,8 +2281,9 @@ #endif #ifdef __x86_64__ -/* http://msdn.microsoft.com/en-us/library/ms680597(VS.85).aspx */ + /* http://msdn.microsoft.com/en-us/library/ms680597(VS.85).aspx */ + #define UNWIND_HISTORY_TABLE_SIZE 12 typedef struct _UNWIND_HISTORY_TABLE_ENTRY { @@ -2304,16 +2311,6 @@ typedef struct _DISPATCHER_CONTEXT DISPATCHER_CONTEXT; typedef struct _DISPATCHER_CONTEXT *PDISPATCHER_CONTEXT; -#ifndef __PEXCEPTION_ROUTINE_DEFINED -#define __PEXCEPTION_ROUTINE_DEFINED - - typedef EXCEPTION_DISPOSITION (NTAPI *PEXCEPTION_ROUTINE) - (PEXCEPTION_RECORD ExceptionRecord, - ULONG64 EstablisherFrame, - PCONTEXT ContextRecord, - PDISPATCHER_CONTEXT DispatcherContext); -#endif /* __PEXCEPTION_ROUTINE_DEFINED */ - struct _DISPATCHER_CONTEXT { ULONG64 ControlPc; ULONG64 ImageBase; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-07 12:15:27
|
Revision: 6229 http://sourceforge.net/p/mingw-w64/code/6229 Author: ktietz70 Date: 2013-09-07 12:15:19 +0000 (Sat, 07 Sep 2013) Log Message: ----------- Cleanup with defined guids in winnt header Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-07 11:52:26 UTC (rev 6228) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-07 12:15:19 UTC (rev 6229) @@ -2,6 +2,7 @@ * This file is part of the mingw-w64 runtime package. * No warranty is given; refer to the file DISCLAIMER within this package. */ + #ifndef _WINNT_ #define _WINNT_ @@ -2356,6 +2357,7 @@ #define STANDARD_RIGHTS_READ (READ_CONTROL) #define STANDARD_RIGHTS_WRITE (READ_CONTROL) #define STANDARD_RIGHTS_EXECUTE (READ_CONTROL) + #define STANDARD_RIGHTS_ALL (__MSABI_LONG(0x001F0000)) #define SPECIFIC_RIGHTS_ALL (__MSABI_LONG(0x0000FFFF)) @@ -4451,6 +4453,163 @@ #define DUPLICATE_CLOSE_SOURCE 0x00000001 #define DUPLICATE_SAME_ACCESS 0x00000002 +#define POWERBUTTON_ACTION_INDEX_NOTHING 0 +#define POWERBUTTON_ACTION_INDEX_SLEEP 1 +#define POWERBUTTON_ACTION_INDEX_HIBERNATE 2 +#define POWERBUTTON_ACTION_INDEX_SHUTDOWN 3 + +#define POWERBUTTON_ACTION_VALUE_NOTHING 0 +#define POWERBUTTON_ACTION_VALUE_SLEEP 2 +#define POWERBUTTON_ACTION_VALUE_HIBERNATE 3 +#define POWERBUTTON_ACTION_VALUE_SHUTDOWN 6 + +#define PERFSTATE_POLICY_CHANGE_IDEAL 0 +#define PERFSTATE_POLICY_CHANGE_SINGLE 1 +#define PERFSTATE_POLICY_CHANGE_ROCKET 2 +#define PERFSTATE_POLICY_CHANGE_MAX PERFSTATE_POLICY_CHANGE_ROCKET + +#define PROCESSOR_PERF_BOOST_POLICY_DISABLED 0 +#define PROCESSOR_PERF_BOOST_POLICY_MAX 100 + +#define PROCESSOR_PERF_BOOST_MODE_DISABLED 0 +#define PROCESSOR_PERF_BOOST_MODE_ENABLED 1 +#define PROCESSOR_PERF_BOOST_MODE_AGGRESSIVE 2 +#define PROCESSOR_PERF_BOOST_MODE_EFFICIENT_ENABLED 3 +#define PROCESSOR_PERF_BOOST_MODE_EFFICIENT_AGGRESSIVE 4 +#define PROCESSOR_PERF_BOOST_MODE_MAX PROCESSOR_PERF_BOOST_MODE_EFFICIENT_AGGRESSIVE + +#define CORE_PARKING_POLICY_CHANGE_IDEAL 0 +#define CORE_PARKING_POLICY_CHANGE_SINGLE 1 +#define CORE_PARKING_POLICY_CHANGE_ROCKET 2 +#define CORE_PARKING_POLICY_CHANGE_MULTISTEP 3 +#define CORE_PARKING_POLICY_CHANGE_MAX CORE_PARKING_POLICY_CHANGE_MULTISTEP + +#define POWER_DEVICE_IDLE_POLICY_PERFORMANCE 0 +#define POWER_DEVICE_IDLE_POLICY_CONSERVATIVE 1 + + DEFINE_GUID (GUID_MAX_POWER_SAVINGS, 0xa1841308, 0x3541, 0x4fab, 0xbc, 0x81, 0xf7, 0x15, 0x56, 0xf2, 0x0b, 0x4a); + DEFINE_GUID (GUID_MIN_POWER_SAVINGS, 0x8c5e7fda, 0xe8bf, 0x4a96, 0x9a, 0x85, 0xa6, 0xe2, 0x3a, 0x8c, 0x63, 0x5c); + DEFINE_GUID (GUID_TYPICAL_POWER_SAVINGS, 0x381b4222, 0xf694, 0x41f0, 0x96, 0x85, 0xff, 0x5b, 0xb2, 0x60, 0xdf, 0x2e); + DEFINE_GUID (NO_SUBGROUP_GUID, 0xfea3413e, 0x7e05, 0x4911, 0x9a, 0x71, 0x70, 0x03, 0x31, 0xf1, 0xc2, 0x94); + DEFINE_GUID (ALL_POWERSCHEMES_GUID, 0x68a1e95e, 0x13ea, 0x41e1, 0x80, 0x11, 0x0c, 0x49, 0x6c, 0xa4, 0x90, 0xb0); + DEFINE_GUID (GUID_POWERSCHEME_PERSONALITY, 0x245d8541, 0x3943, 0x4422, 0xb0, 0x25, 0x13, 0xa7, 0x84, 0xf6, 0x79, 0xb7); + DEFINE_GUID (GUID_ACTIVE_POWERSCHEME, 0x31f9f286, 0x5084, 0x42fe, 0xb7, 0x20, 0x2b, 0x02, 0x64, 0x99, 0x37, 0x63); + DEFINE_GUID (GUID_IDLE_RESILIENCY_SUBGROUP, 0x2e601130, 0x5351, 0x4d9d, 0x8e, 0x4, 0x25, 0x29, 0x66, 0xba, 0xd0, 0x54); + DEFINE_GUID (GUID_IDLE_RESILIENCY_PERIOD, 0xc42b79aa, 0xaa3a, 0x484b, 0xa9, 0x8f, 0x2c, 0xf3, 0x2a, 0xa9, 0xa, 0x28); + DEFINE_GUID (GUID_DISK_COALESCING_POWERDOWN_TIMEOUT, 0xc36f0eb4, 0x2988, 0x4a70, 0x8e, 0xee, 0x8, 0x84, 0xfc, 0x2c, 0x24, 0x33); + DEFINE_GUID (GUID_EXECUTION_REQUIRED_REQUEST_TIMEOUT, 0x3166bc41, 0x7e98, 0x4e03, 0xb3, 0x4e, 0xec, 0xf, 0x5f, 0x2b, 0x21, 0x8e); + DEFINE_GUID (GUID_VIDEO_SUBGROUP, 0x7516b95f, 0xf776, 0x4464, 0x8c, 0x53, 0x06, 0x16, 0x7f, 0x40, 0xcc, 0x99); + DEFINE_GUID (GUID_VIDEO_POWERDOWN_TIMEOUT, 0x3c0bc021, 0xc8a8, 0x4e07, 0xa9, 0x73, 0x6b, 0x14, 0xcb, 0xcb, 0x2b, 0x7e); + DEFINE_GUID (GUID_VIDEO_ANNOYANCE_TIMEOUT, 0x82dbcf2d, 0xcd67, 0x40c5, 0xbf, 0xdc, 0x9f, 0x1a, 0x5c, 0xcd, 0x46, 0x63); + DEFINE_GUID (GUID_VIDEO_ADAPTIVE_PERCENT_INCREASE, 0xeed904df, 0xb142, 0x4183, 0xb1, 0x0b, 0x5a, 0x11, 0x97, 0xa3, 0x78, 0x64); + DEFINE_GUID (GUID_VIDEO_DIM_TIMEOUT, 0x17aaa29b, 0x8b43, 0x4b94, 0xaa, 0xfe, 0x35, 0xf6, 0x4d, 0xaa, 0xf1, 0xee); + DEFINE_GUID (GUID_VIDEO_ADAPTIVE_POWERDOWN, 0x90959d22, 0xd6a1, 0x49b9, 0xaf, 0x93, 0xbc, 0xe8, 0x85, 0xad, 0x33, 0x5b); + DEFINE_GUID (GUID_MONITOR_POWER_ON, 0x02731015, 0x4510, 0x4526, 0x99, 0xe6, 0xe5, 0xa1, 0x7e, 0xbd, 0x1a, 0xea); + DEFINE_GUID (GUID_DEVICE_POWER_POLICY_VIDEO_BRIGHTNESS, __MSABI_LONG(0xaded5e82), 0xb909, 0x4619, 0x99, 0x49, 0xf5, 0xd7, 0x1d, 0xac, 0x0b, 0xcb); + DEFINE_GUID (GUID_DEVICE_POWER_POLICY_VIDEO_DIM_BRIGHTNESS, 0xf1fbfde2, 0xa960, 0x4165, 0x9f, 0x88, 0x50, 0x66, 0x79, 0x11, 0xce, 0x96); + DEFINE_GUID (GUID_VIDEO_CURRENT_MONITOR_BRIGHTNESS, 0x8ffee2c6, 0x2d01, 0x46be, 0xad, 0xb9, 0x39, 0x8a, 0xdd, 0xc5, 0xb4, 0xff); + DEFINE_GUID (GUID_VIDEO_ADAPTIVE_DISPLAY_BRIGHTNESS, 0xfbd9aa66, 0x9553, 0x4097, 0xba, 0x44, 0xed, 0x6e, 0x9d, 0x65, 0xea, 0xb8); + DEFINE_GUID (GUID_CONSOLE_DISPLAY_STATE, 0x6fe69556, 0x704a, 0x47a0, 0x8f, 0x24, 0xc2, 0x8d, 0x93, 0x6f, 0xda, 0x47); + DEFINE_GUID (GUID_ALLOW_DISPLAY_REQUIRED, 0xa9ceb8da, 0xcd46, 0x44fb, 0xa9, 0x8b, 0x02, 0xaf, 0x69, 0xde, 0x46, 0x23); + DEFINE_GUID (GUID_VIDEO_CONSOLE_LOCK_TIMEOUT, 0x8ec4b3a5, 0x6868, 0x48c2, 0xbe, 0x75, 0x4f, 0x30, 0x44, 0xbe, 0x88, 0xa7); + DEFINE_GUID (GUID_ADAPTIVE_POWER_BEHAVIOR_SUBGROUP, 0x8619b916, 0xe004, 0x4dd8, 0x9b, 0x66, 0xda, 0xe8, 0x6f, 0x80, 0x66, 0x98); + DEFINE_GUID (GUID_NON_ADAPTIVE_INPUT_TIMEOUT, 0x5adbbfbc, 0x74e, 0x4da1, 0xba, 0x38, 0xdb, 0x8b, 0x36, 0xb2, 0xc8, 0xf3); + DEFINE_GUID (GUID_DISK_SUBGROUP, 0x0012ee47, 0x9041, 0x4b5d, 0x9b, 0x77, 0x53, 0x5f, 0xba, 0x8b, 0x14, 0x42); + DEFINE_GUID (GUID_DISK_POWERDOWN_TIMEOUT, 0x6738e2c4, 0xe8a5, 0x4a42, 0xb1, 0x6a, 0xe0, 0x40, 0xe7, 0x69, 0x75, 0x6e); + DEFINE_GUID (GUID_DISK_IDLE_TIMEOUT, 0x58e39ba8, 0xb8e6, 0x4ef6, 0x90, 0xd0, 0x89, 0xae, 0x32, 0xb2, 0x58, 0xd6); + DEFINE_GUID (GUID_DISK_BURST_IGNORE_THRESHOLD, 0x80e3c60e, 0xbb94, 0x4ad8, 0xbb, 0xe0, 0x0d, 0x31, 0x95, 0xef, 0xc6, 0x63); + DEFINE_GUID (GUID_DISK_ADAPTIVE_POWERDOWN, 0x396a32e1, 0x499a, 0x40b2, 0x91, 0x24, 0xa9, 0x6a, 0xfe, 0x70, 0x76, 0x67); + DEFINE_GUID (GUID_SLEEP_SUBGROUP, 0x238c9fa8, 0x0aad, 0x41ed, 0x83, 0xf4, 0x97, 0xbe, 0x24, 0x2c, 0x8f, 0x20); + DEFINE_GUID (GUID_SLEEP_IDLE_THRESHOLD, 0x81cd32e0, 0x7833, 0x44f3, 0x87, 0x37, 0x70, 0x81, 0xf3, 0x8d, 0x1f, 0x70); + DEFINE_GUID (GUID_STANDBY_TIMEOUT, 0x29f6c1db, 0x86da, 0x48c5, 0x9f, 0xdb, 0xf2, 0xb6, 0x7b, 0x1f, 0x44, 0xda); + DEFINE_GUID (GUID_UNATTEND_SLEEP_TIMEOUT, 0x7bc4a2f9, 0xd8fc, 0x4469, 0xb0, 0x7b, 0x33, 0xeb, 0x78, 0x5a, 0xac, 0xa0); + DEFINE_GUID (GUID_HIBERNATE_TIMEOUT, 0x9d7815a6, 0x7ee4, 0x497e, 0x88, 0x88, 0x51, 0x5a, 0x05, 0xf0, 0x23, 0x64); + DEFINE_GUID (GUID_HIBERNATE_FASTS4_POLICY, 0x94ac6d29, 0x73ce, 0x41a6, 0x80, 0x9f, 0x63, 0x63, 0xba, 0x21, 0xb4, 0x7e); + DEFINE_GUID (GUID_CRITICAL_POWER_TRANSITION, 0xb7a27025, 0xe569, 0x46c2, 0xa5, 0x04, 0x2b, 0x96, 0xca, 0xd2, 0x25, 0xa1); + DEFINE_GUID (GUID_SYSTEM_AWAYMODE, 0x98a7f580, 0x01f7, 0x48aa, 0x9c, 0x0f, 0x44, 0x35, 0x2c, 0x29, 0xe5, 0xc0); + DEFINE_GUID (GUID_ALLOW_AWAYMODE, 0x25dfa149, 0x5dd1, 0x4736, 0xb5, 0xab, 0xe8, 0xa3, 0x7b, 0x5b, 0x81, 0x87); + DEFINE_GUID (GUID_ALLOW_STANDBY_STATES, 0xabfc2519, 0x3608, 0x4c2a, 0x94, 0xea, 0x17, 0x1b, 0x0e, 0xd5, 0x46, 0xab); + DEFINE_GUID (GUID_ALLOW_RTC_WAKE, 0xbd3b718a, 0x0680, 0x4d9d, 0x8a, 0xb2, 0xe1, 0xd2, 0xb4, 0xac, 0x80, 0x6d); + DEFINE_GUID (GUID_ALLOW_SYSTEM_REQUIRED, 0xa4b195f5, 0x8225, 0x47d8, 0x80, 0x12, 0x9d, 0x41, 0x36, 0x97, 0x86, 0xe2); + DEFINE_GUID (GUID_SYSTEM_BUTTON_SUBGROUP, 0x4f971e89, 0xeebd, 0x4455, 0xa8, 0xde, 0x9e, 0x59, 0x04, 0x0e, 0x73, 0x47); + DEFINE_GUID (GUID_POWERBUTTON_ACTION, 0x7648efa3, 0xdd9c, 0x4e3e, 0xb5, 0x66, 0x50, 0xf9, 0x29, 0x38, 0x62, 0x80); + DEFINE_GUID (GUID_SLEEPBUTTON_ACTION, 0x96996bc0, 0xad50, 0x47ec, 0x92, 0x3b, 0x6f, 0x41, 0x87, 0x4d, 0xd9, 0xeb); + DEFINE_GUID (GUID_USERINTERFACEBUTTON_ACTION, 0xa7066653, 0x8d6c, 0x40a8, 0x91, 0x0e, 0xa1, 0xf5, 0x4b, 0x84, 0xc7, 0xe5); + DEFINE_GUID (GUID_LIDCLOSE_ACTION, 0x5ca83367, 0x6e45, 0x459f, 0xa2, 0x7b, 0x47, 0x6b, 0x1d, 0x01, 0xc9, 0x36); + DEFINE_GUID (GUID_LIDOPEN_POWERSTATE, 0x99ff10e7, 0x23b1, 0x4c07, 0xa9, 0xd1, 0x5c, 0x32, 0x06, 0xd7, 0x41, 0xb4); + DEFINE_GUID (GUID_BATTERY_SUBGROUP, 0xe73a048d, 0xbf27, 0x4f12, 0x97, 0x31, 0x8b, 0x20, 0x76, 0xe8, 0x89, 0x1f); + DEFINE_GUID (GUID_BATTERY_DISCHARGE_ACTION_0, 0x637ea02f, 0xbbcb, 0x4015, 0x8e, 0x2c, 0xa1, 0xc7, 0xb9, 0xc0, 0xb5, 0x46); + DEFINE_GUID (GUID_BATTERY_DISCHARGE_LEVEL_0, 0x9a66d8d7, 0x4ff7, 0x4ef9, 0xb5, 0xa2, 0x5a, 0x32, 0x6c, 0xa2, 0xa4, 0x69); + DEFINE_GUID (GUID_BATTERY_DISCHARGE_FLAGS_0, 0x5dbb7c9f, 0x38e9, 0x40d2, 0x97, 0x49, 0x4f, 0x8a, 0x0e, 0x9f, 0x64, 0x0f); + DEFINE_GUID (GUID_BATTERY_DISCHARGE_ACTION_1, 0xd8742dcb, 0x3e6a, 0x4b3c, 0xb3, 0xfe, 0x37, 0x46, 0x23, 0xcd, 0xcf, 0x06); + DEFINE_GUID (GUID_BATTERY_DISCHARGE_LEVEL_1, 0x8183ba9a, 0xe910, 0x48da, 0x87, 0x69, 0x14, 0xae, 0x6d, 0xc1, 0x17, 0x0a); + DEFINE_GUID (GUID_BATTERY_DISCHARGE_FLAGS_1, 0xbcded951, 0x187b, 0x4d05, 0xbc, 0xcc, 0xf7, 0xe5, 0x19, 0x60, 0xc2, 0x58); + DEFINE_GUID (GUID_BATTERY_DISCHARGE_ACTION_2, 0x421cba38, 0x1a8e, 0x4881, 0xac, 0x89, 0xe3, 0x3a, 0x8b, 0x04, 0xec, 0xe4); + DEFINE_GUID (GUID_BATTERY_DISCHARGE_LEVEL_2, 0x07a07ca2, 0xadaf, 0x40d7, 0xb0, 0x77, 0x53, 0x3a, 0xad, 0xed, 0x1b, 0xfa); + DEFINE_GUID (GUID_BATTERY_DISCHARGE_FLAGS_2, 0x7fd2f0c4, 0xfeb7, 0x4da3, 0x81, 0x17, 0xe3, 0xfb, 0xed, 0xc4, 0x65, 0x82); + DEFINE_GUID (GUID_BATTERY_DISCHARGE_ACTION_3, 0x80472613, 0x9780, 0x455e, 0xb3, 0x08, 0x72, 0xd3, 0x00, 0x3c, 0xf2, 0xf8); + DEFINE_GUID (GUID_BATTERY_DISCHARGE_LEVEL_3, 0x58afd5a6, 0xc2dd, 0x47d2, 0x9f, 0xbf, 0xef, 0x70, 0xcc, 0x5c, 0x59, 0x65); + DEFINE_GUID (GUID_BATTERY_DISCHARGE_FLAGS_3, 0x73613ccf, 0xdbfa, 0x4279, 0x83, 0x56, 0x49, 0x35, 0xf6, 0xbf, 0x62, 0xf3); + DEFINE_GUID (GUID_PROCESSOR_SETTINGS_SUBGROUP, 0x54533251, 0x82be, 0x4824, 0x96, 0xc1, 0x47, 0xb6, 0x0b, 0x74, 0x0d, 0x00); + DEFINE_GUID (GUID_PROCESSOR_THROTTLE_POLICY, 0x57027304, 0x4af6, 0x4104, 0x92, 0x60, 0xe3, 0xd9, 0x52, 0x48, 0xfc, 0x36); + DEFINE_GUID (GUID_PROCESSOR_THROTTLE_MAXIMUM, 0xbc5038f7, 0x23e0, 0x4960, 0x96, 0xda, 0x33, 0xab, 0xaf, 0x59, 0x35, 0xec); + DEFINE_GUID (GUID_PROCESSOR_THROTTLE_MINIMUM, 0x893dee8e, 0x2bef, 0x41e0, 0x89, 0xc6, 0xb5, 0x5d, 0x09, 0x29, 0x96, 0x4c); + DEFINE_GUID (GUID_PROCESSOR_ALLOW_THROTTLING, 0x3b04d4fd, 0x1cc7, 0x4f23, 0xab, 0x1c, 0xd1, 0x33, 0x78, 0x19, 0xc4, 0xbb); + DEFINE_GUID (GUID_PROCESSOR_IDLESTATE_POLICY, 0x68f262a7, 0xf621, 0x4069, 0xb9, 0xa5, 0x48, 0x74, 0x16, 0x9b, 0xe2, 0x3c); + DEFINE_GUID (GUID_PROCESSOR_PERFSTATE_POLICY, 0xbbdc3814, 0x18e9, 0x4463, 0x8a, 0x55, 0xd1, 0x97, 0x32, 0x7c, 0x45, 0xc0); + DEFINE_GUID (GUID_PROCESSOR_PERF_INCREASE_THRESHOLD, 0x06cadf0e, 0x64ed, 0x448a, 0x89, 0x27, 0xce, 0x7b, 0xf9, 0x0e, 0xb3, 0x5d); + DEFINE_GUID (GUID_PROCESSOR_PERF_DECREASE_THRESHOLD, 0x12a0ab44, 0xfe28, 0x4fa9, 0xb3, 0xbd, 0x4b, 0x64, 0xf4, 0x49, 0x60, 0xa6); + DEFINE_GUID (GUID_PROCESSOR_PERF_INCREASE_POLICY, 0x465e1f50, 0xb610, 0x473a, 0xab, 0x58, 0x0, 0xd1, 0x7, 0x7d, 0xc4, 0x18); + DEFINE_GUID (GUID_PROCESSOR_PERF_DECREASE_POLICY, 0x40fbefc7, 0x2e9d, 0x4d25, 0xa1, 0x85, 0xc, 0xfd, 0x85, 0x74, 0xba, 0xc6); + DEFINE_GUID (GUID_PROCESSOR_PERF_INCREASE_TIME, 0x984cf492, 0x3bed, 0x4488, 0xa8, 0xf9, 0x42, 0x86, 0xc9, 0x7b, 0xf5, 0xaa); + DEFINE_GUID (GUID_PROCESSOR_PERF_DECREASE_TIME, 0xd8edeb9b, 0x95cf, 0x4f95, 0xa7, 0x3c, 0xb0, 0x61, 0x97, 0x36, 0x93, 0xc8); + DEFINE_GUID (GUID_PROCESSOR_PERF_TIME_CHECK, 0x4d2b0152, 0x7d5c, 0x498b, 0x88, 0xe2, 0x34, 0x34, 0x53, 0x92, 0xa2, 0xc5); + DEFINE_GUID (GUID_PROCESSOR_PERF_BOOST_POLICY, 0x45bcc044, 0xd885, 0x43e2, 0x86, 0x5, 0xee, 0xe, 0xc6, 0xe9, 0x6b, 0x59); + DEFINE_GUID (GUID_PROCESSOR_PERF_BOOST_MODE, 0xbe337238, 0xd82, 0x4146, 0xa9, 0x60, 0x4f, 0x37, 0x49, 0xd4, 0x70, 0xc7); + DEFINE_GUID (GUID_PROCESSOR_IDLE_ALLOW_SCALING, 0x6c2993b0, 0x8f48, 0x481f, 0xbc, 0xc6, 0x0, 0xdd, 0x27, 0x42, 0xaa, 0x6); + DEFINE_GUID (GUID_PROCESSOR_IDLE_DISABLE, 0x5d76a2ca, 0xe8c0, 0x402f, 0xa1, 0x33, 0x21, 0x58, 0x49, 0x2d, 0x58, 0xad); + DEFINE_GUID (GUID_PROCESSOR_IDLE_STATE_MAXIMUM, 0x9943e905, 0x9a30, 0x4ec1, 0x9b, 0x99, 0x44, 0xdd, 0x3b, 0x76, 0xf7, 0xa2); + DEFINE_GUID (GUID_PROCESSOR_IDLE_TIME_CHECK, 0xc4581c31, 0x89ab, 0x4597, 0x8e, 0x2b, 0x9c, 0x9c, 0xab, 0x44, 0xe, 0x6b); + DEFINE_GUID (GUID_PROCESSOR_IDLE_DEMOTE_THRESHOLD, 0x4b92d758, 0x5a24, 0x4851, 0xa4, 0x70, 0x81, 0x5d, 0x78, 0xae, 0xe1, 0x19); + DEFINE_GUID (GUID_PROCESSOR_IDLE_PROMOTE_THRESHOLD, 0x7b224883, 0xb3cc, 0x4d79, 0x81, 0x9f, 0x83, 0x74, 0x15, 0x2c, 0xbe, 0x7c); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_INCREASE_THRESHOLD, 0xdf142941, 0x20f3, 0x4edf, 0x9a, 0x4a, 0x9c, 0x83, 0xd3, 0xd7, 0x17, 0xd1); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_DECREASE_THRESHOLD, 0x68dd2f27, 0xa4ce, 0x4e11, 0x84, 0x87, 0x37, 0x94, 0xe4, 0x13, 0x5d, 0xfa); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_INCREASE_POLICY, 0xc7be0679, 0x2817, 0x4d69, 0x9d, 0x02, 0x51, 0x9a, 0x53, 0x7e, 0xd0, 0xc6); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_DECREASE_POLICY, 0x71021b41, 0xc749, 0x4d21, 0xbe, 0x74, 0xa0, 0x0f, 0x33, 0x5d, 0x58, 0x2b); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_MAX_CORES, 0xea062031, 0x0e34, 0x4ff1, 0x9b, 0x6d, 0xeb, 0x10, 0x59, 0x33, 0x40, 0x28); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_MIN_CORES, 0x0cc5b647, 0xc1df, 0x4637, 0x89, 0x1a, 0xde, 0xc3, 0x5c, 0x31, 0x85, 0x83); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_INCREASE_TIME, 0x2ddd5a84, 0x5a71, 0x437e, 0x91, 0x2a, 0xdb, 0x0b, 0x8c, 0x78, 0x87, 0x32); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_DECREASE_TIME, 0xdfd10d17, 0xd5eb, 0x45dd, 0x87, 0x7a, 0x9a, 0x34, 0xdd, 0xd1, 0x5c, 0x82); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_AFFINITY_HISTORY_DECREASE_FACTOR, 0x8f7b45e3, 0xc393, 0x480a, 0x87, 0x8c, 0xf6, 0x7a, 0xc3, 0xd0, 0x70, 0x82); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_AFFINITY_HISTORY_THRESHOLD, 0x5b33697b, 0xe89d, 0x4d38, 0xaa, 0x46, 0x9e, 0x7d, 0xfb, 0x7c, 0xd2, 0xf9); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_AFFINITY_WEIGHTING, 0xe70867f1, 0xfa2f, 0x4f4e, 0xae, 0xa1, 0x4d, 0x8a, 0x0b, 0xa2, 0x3b, 0x20); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_HISTORY_DECREASE_FACTOR, 0x1299023c, 0xbc28, 0x4f0a, 0x81, 0xec, 0xd3, 0x29, 0x5a, 0x8d, 0x81, 0x5d); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_HISTORY_THRESHOLD, 0x9ac18e92, 0xaa3c, 0x4e27, 0xb3, 0x07, 0x01, 0xae, 0x37, 0x30, 0x71, 0x29); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_WEIGHTING, 0x8809c2d8, 0xb155, 0x42d4, 0xbc, 0xda, 0x0d, 0x34, 0x56, 0x51, 0xb1, 0xdb); + DEFINE_GUID (GUID_PROCESSOR_CORE_PARKING_OVER_UTILIZATION_THRESHOLD, 0x943c8cb6, 0x6f93, 0x4227, 0xad, 0x87, 0xe9, 0xa3, 0xfe, 0xec, 0x08, 0xd1); + DEFINE_GUID (GUID_PROCESSOR_PARKING_CORE_OVERRIDE, 0xa55612aa, 0xf624, 0x42c6, 0xa4, 0x43, 0x73, 0x97, 0xd0, 0x64, 0xc0, 0x4f); + DEFINE_GUID (GUID_PROCESSOR_PARKING_PERF_STATE, 0x447235c7, 0x6a8d, 0x4cc0, 0x8e, 0x24, 0x9e, 0xaf, 0x70, 0xb9, 0x6e, 0x2b); + DEFINE_GUID (GUID_PROCESSOR_PARKING_CONCURRENCY_THRESHOLD, 0x2430ab6f, 0xa520, 0x44a2, 0x96, 0x01, 0xf7, 0xf2, 0x3b, 0x51, 0x34, 0xb1); + DEFINE_GUID (GUID_PROCESSOR_PARKING_HEADROOM_THRESHOLD, 0xf735a673, 0x2066, 0x4f80, 0xa0, 0xc5, 0xdd, 0xee, 0x0c, 0xf1, 0xbf, 0x5d); + DEFINE_GUID (GUID_PROCESSOR_PERF_HISTORY, 0x7d24baa7, 0x0b84, 0x480f, 0x84, 0x0c, 0x1b, 0x07, 0x43, 0xc0, 0x0f, 0x5f); + DEFINE_GUID (GUID_PROCESSOR_PERF_LATENCY_HINT, 0x0822df31, 0x9c83, 0x441c, 0xa0, 0x79, 0x0d, 0xe4, 0xcf, 0x00, 0x9c, 0x7b); + DEFINE_GUID (GUID_PROCESSOR_DISTRIBUTE_UTILITY, 0xe0007330, 0xf589, 0x42ed, 0xa4, 0x01, 0x5d, 0xdb, 0x10, 0xe7, 0x85, 0xd3); + DEFINE_GUID (GUID_SYSTEM_COOLING_POLICY, 0x94d3a615, 0xa899, 0x4ac5, 0xae, 0x2b, 0xe4, 0xd8, 0xf6, 0x34, 0x36, 0x7f); + DEFINE_GUID (GUID_LOCK_CONSOLE_ON_WAKE, 0x0e796bdb, 0x100d, 0x47d6, 0xa2, 0xd5, 0xf7, 0xd2, 0xda, 0xa5, 0x1f, 0x51); + DEFINE_GUID (GUID_DEVICE_IDLE_POLICY, 0x4faab71a, 0x92e5, 0x4726, 0xb5, 0x31, 0x22, 0x45, 0x59, 0x67, 0x2d, 0x19); + DEFINE_GUID (GUID_ACDC_POWER_SOURCE, 0x5d3e9a59, 0xe9d5, 0x4b00, 0xa6, 0xbd, 0xff, 0x34, 0xff, 0x51, 0x65, 0x48); + DEFINE_GUID (GUID_LIDSWITCH_STATE_CHANGE, 0xba3e0f4d, 0xb817, 0x4094, 0xa2, 0xd1, 0xd5, 0x63, 0x79, 0xe6, 0xa0, 0xf3); + DEFINE_GUID (GUID_BATTERY_PERCENTAGE_REMAINING, 0xa7ad8041, 0xb45a, 0x4cae, 0x87, 0xa3, 0xee, 0xcb, 0xb4, 0x68, 0xa9, 0xe1); + DEFINE_GUID (GUID_GLOBAL_USER_PRESENCE, 0x786e8a1d, 0xb427, 0x4344, 0x92, 0x7, 0x9, 0xe7, 0xb, 0xdc, 0xbe, 0xa9); + DEFINE_GUID (GUID_SESSION_DISPLAY_STATUS, 0x2b84c20e, 0xad23, 0x4ddf, 0x93, 0xdb, 0x5, 0xff, 0xbd, 0x7e, 0xfc, 0xa5); + DEFINE_GUID (GUID_SESSION_USER_PRESENCE, 0x3c0f4548, 0xc03f, 0x4c4d, 0xb9, 0xf2, 0x23, 0x7e, 0xde, 0x68, 0x63, 0x76); + DEFINE_GUID (GUID_IDLE_BACKGROUND_TASK, 0x515c31d8, 0xf734, 0x163d, 0xa0, 0xfd, 0x11, 0xa0, 0x8c, 0x91, 0xe8, 0xf1); + DEFINE_GUID (GUID_BACKGROUND_TASK_NOTIFICATION, 0xcf23f240, 0x2a54, 0x48d8, 0xb1, 0x14, 0xde, 0x15, 0x18, 0xff, 0x05, 0x2e); + DEFINE_GUID (GUID_APPLAUNCH_BUTTON, 0x1a689231, 0x7399, 0x4e9a, 0x8f, 0x99, 0xb7, 0x1f, 0x99, 0x9d, 0xb3, 0xfa); + DEFINE_GUID (GUID_PCIEXPRESS_SETTINGS_SUBGROUP, 0x501a4d13, 0x42af, 0x4429, 0x9f, 0xd1, 0xa8, 0x21, 0x8c, 0x26, 0x8e, 0x20); + DEFINE_GUID (GUID_PCIEXPRESS_ASPM_POLICY, 0xee12f906, 0xd277, 0x404b, 0xb6, 0xda, 0xe5, 0xfa, 0x1a, 0x57, 0x6d, 0xf5); + DEFINE_GUID (GUID_ENABLE_SWITCH_FORCED_SHUTDOWN, 0x833a6b62, 0xdfa4, 0x46d1, 0x82, 0xf8, 0xe0, 0x9e, 0x34, 0xd0, 0x29, 0xd6); + typedef enum _SYSTEM_POWER_STATE { PowerSystemUnspecified = 0,PowerSystemWorking = 1,PowerSystemSleeping1 = 2,PowerSystemSleeping2 = 3,PowerSystemSleeping3 = 4,PowerSystemHibernate = 5,PowerSystemShutdown = 6,PowerSystemMaximum = 7 } SYSTEM_POWER_STATE,*PSYSTEM_POWER_STATE; @@ -7163,15 +7322,6 @@ PVOID CleanupContext ); -DEFINE_GUID(NO_SUBGROUP_GUID,0xfea3413e,0x7e05,0x4911,0x9a,0x71,0x70,0x03,0x31,0xf1,0xc2,0x94); -DEFINE_GUID(GUID_DISK_SUBGROUP,0x0012ee47,0x9041,0x4b5d,0x9b,0x77,0x53,0x5f,0xba,0x8b,0x14,0x42); -DEFINE_GUID(GUID_SYSTEM_BUTTON_SUBGROUP,0x4f971e89,0xeebd,0x4455,0xa8,0xde,0x9e,0x59,0x04,0x0e,0x73,0x47); -DEFINE_GUID(GUID_PROCESSOR_SETTINGS_SUBGROUP,0x54533251,0x82be,0x4824,0x96,0xc1,0x47,0xb6,0x0b,0x74,0x0d,0x00); -DEFINE_GUID(GUID_VIDEO_SUBGROUP,0x7516b95f,0xf776,0x4464,0x8c,0x53,0x06,0x16,0x7f,0x40,0xcc,0x99); -DEFINE_GUID(GUID_BATTERY_SUBGROUP,0xe73a048d,0xbf27,0x4f12,0x97,0x31,0x8b,0x20,0x76,0xe8,0x89,0x1f); -DEFINE_GUID(GUID_SLEEP_SUBGROUP,0x238C9FA8,0x0AAD,0x41ED,0x83,0xF4,0x97,0xBE,0x24,0x2C,0x8F,0x20); -DEFINE_GUID(GUID_PCIEXPRESS_SETTINGS_SUBGROUP,0x501a4d13,0x42af,0x4429,0x9f,0xd1,0xa8,0x21,0x8c,0x26,0x8e,0x20); - /* Field Names From (See _fields_ section) * FIXME: Verify these against documentation * -- These documentation describes Win32 Constants and Structures in Python -- This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |
From: <kti...@us...> - 2013-09-07 13:27:38
|
Revision: 6230 http://sourceforge.net/p/mingw-w64/code/6230 Author: ktietz70 Date: 2013-09-07 13:27:31 +0000 (Sat, 07 Sep 2013) Log Message: ----------- Add missing API typedefs for POWER-management and fix wrong hidden types before WIN7 Modified Paths: -------------- trunk/mingw-w64-headers/include/winnt.h Modified: trunk/mingw-w64-headers/include/winnt.h =================================================================== --- trunk/mingw-w64-headers/include/winnt.h 2013-09-07 12:15:19 UTC (rev 6229) +++ trunk/mingw-w64-headers/include/winnt.h 2013-09-07 13:27:31 UTC (rev 6230) @@ -4622,27 +4622,6 @@ PowerActionWarmEject } POWER_ACTION,*PPOWER_ACTION; -#if (_WIN32_WINNT >= 0x0600) - typedef enum { - PoAc = 0, - PoDc = 1, - PoHot = 2, - PoConditionMaximum = 3 - } SYSTEM_POWER_CONDITION, *PSYSTEM_POWER_CONDITION; - - typedef enum _POWER_PLATFORM_ROLE { - PlatformRoleUnspecified = 0, - PlatformRoleDesktop = 1, - PlatformRoleMobile = 2, - PlatformRoleWorkstation = 3, - PlatformRoleEnterpriseServer = 4, - PlatformRoleSOHOServer = 5, - PlatformRoleAppliancePC = 6, - PlatformRolePerformanceServer = 7, - PlatformRoleMaximum = 8 - } POWER_PLATFORM_ROLE; -#endif /* (_WIN32_WINNT >= 0x0600) */ - typedef enum _DEVICE_POWER_STATE { PowerDeviceUnspecified = 0, PowerDeviceD0, PowerDeviceD1, PowerDeviceD2, PowerDeviceD3, PowerDeviceMaximum @@ -4652,6 +4631,14 @@ PowerMonitorOff = 0, PowerMonitorOn, PowerMonitorDim } MONITOR_DISPLAY_STATE, *PMONITOR_DISPLAY_STATE; + typedef enum _USER_ACTIVITY_PRESENCE { + PowerUserPresent = 0, + PowerUserNotPresent, + PowerUserInactive, + PowerUserMaximum, + PowerUserInvalid = PowerUserMaximum + } USER_ACTIVITY_PRESENCE,*PUSER_ACTIVITY_PRESENCE; + #define ES_SYSTEM_REQUIRED ((DWORD)0x00000001) #define ES_DISPLAY_REQUIRED ((DWORD)0x00000002) #define ES_USER_PRESENT ((DWORD)0x00000004) @@ -4704,15 +4691,445 @@ } CM_POWER_DATA,*PCM_POWER_DATA; typedef enum { - SystemPowerPolicyAc,SystemPowerPolicyDc,VerifySystemPolicyAc,VerifySystemPolicyDc,SystemPowerCapabilities,SystemBatteryState,SystemPowerStateHandler,ProcessorStateHandler,SystemPowerPolicyCurrent,AdministratorPowerPolicy,SystemReserveHiberFile,ProcessorInformation,SystemPowerInformation,ProcessorStateHandler2,LastWakeTime,LastSleepTime,SystemExecutionState,SystemPowerStateNotifyHandler,ProcessorPowerPolicyAc,ProcessorPowerPolicyDc,VerifyProcessorPowerPolicyAc,VerifyProcessorPowerPolicyDc,ProcessorPowerPolicyCurrent,SystemPowerStateLogging,SystemPowerLoggingEntry + SystemPowerPolicyAc, + SystemPowerPolicyDc, + VerifySystemPolicyAc, + VerifySystemPolicyDc, + SystemPowerCapabilities, + SystemBatteryState, + SystemPowerStateHandler, + ProcessorStateHandler, + SystemPowerPolicyCurrent, + AdministratorPowerPolicy, + SystemReserveHiberFile, + ProcessorInformation, + SystemPowerInformation, + ProcessorStateHandler2, + LastWakeTime, + LastSleepTime, + SystemExecutionState, + SystemPowerStateNotifyHandler, + ProcessorPowerPolicyAc, + ProcessorPowerPolicyDc, + VerifyProcessorPowerPolicyAc, + VerifyProcessorPowerPolicyDc, + ProcessorPowerPolicyCurrent, + SystemPowerStateLogging, + SystemPowerLoggingEntry, + SetPowerSettingValue, + NotifyUserPowerSetting, + PowerInformationLevelUnused0, + SystemMonitorHiberBootPowerOff, + SystemVideoState, + TraceApplicationPowerMessage, + TraceApplicationPowerMessageEnd, + ProcessorPerfStates, + ProcessorIdleStates, + ProcessorCap, + SystemWakeSource, + SystemHiberFileInformation, + TraceServicePowerMessage, + ProcessorLoad, + PowerShutdownNotification, + MonitorCapabilities, + SessionPowerInit, + SessionDisplayState, + PowerRequestCreate, + PowerRequestAction, + GetPowerRequestList, + ProcessorInformationEx, + NotifyUserModeLegacyPowerEvent, + GroupPark, + ProcessorIdleDomains, + WakeTimerList, + SystemHiberFileSize, + ProcessorIdleStatesHv, + ProcessorPerfStatesHv, + ProcessorPerfCapHv, + ProcessorSetIdle, + LogicalProcessorIdling, + UserPresence, + PowerSettingNotificationName, + GetPowerSettingValue, + IdleResiliency, + SessionRITState, + SessionConnectNotification, + SessionPowerCleanup, + SessionLockState, + SystemHiberbootState, + PlatformInformation, + PdcInvocation, + MonitorInvocation, + FirmwareTableInformationRegistered, + SetShutdownSelectedTime, + SuspendResumeInvocation, + PlmPowerRequestCreate, + ScreenOff, + CsDeviceNotification, + PlatformRole, + LastResumePerformance, + DisplayBurst, + ExitLatencySamplingPercentage, + ApplyLowPowerScenarioSettings, + PowerInformationLevelMaximum } POWER_INFORMATION_LEVEL; + typedef enum { + UserNotPresent = 0, + UserPresent = 1, + UserUnknown = 0xff + } POWER_USER_PRESENCE_TYPE,*PPOWER_USER_PRESENCE_TYPE; + + typedef struct _POWER_USER_PRESENCE { + POWER_USER_PRESENCE_TYPE UserPresence; + } POWER_USER_PRESENCE,*PPOWER_USER_PRESENCE; + + typedef struct _POWER_SESSION_CONNECT { + BOOLEAN Connected; + BOOLEAN Console; + } POWER_SESSION_CONNECT,*PPOWER_SESSION_CONNECT; + + typedef struct _POWER_SESSION_TIMEOUTS { + DWORD InputTimeout; + DWORD DisplayTimeout; + } POWER_SESSION_TIMEOUTS,*PPOWER_SESSION_TIMEOUTS; + + typedef struct _POWER_SESSION_RIT_STATE { + BOOLEAN Active; + DWORD LastInputTime; + } POWER_SESSION_RIT_STATE,*PPOWER_SESSION_RIT_STATE; + + typedef struct _POWER_SESSION_WINLOGON { + DWORD SessionId; + BOOLEAN Console; + BOOLEAN Locked; + } POWER_SESSION_WINLOGON,*PPOWER_SESSION_WINLOGON; + + typedef struct _POWER_IDLE_RESILIENCY { + DWORD CoalescingTimeout; + DWORD IdleResiliencyPeriod; + } POWER_IDLE_RESILIENCY,*PPOWER_IDLE_RESILIENCY; + + typedef enum { + MonitorRequestReasonUnknown, + MonitorRequestReasonPowerButton, + MonitorRequestReasonRemoteConnection, + MonitorRequestReasonScMonitorpower, + MonitorRequestReasonUserInput, + MonitorRequestReasonAcDcDisplayBurst, + MonitorRequestReasonUserDisplayBurst, + MonitorRequestReasonPoSetSystemState, + MonitorRequestReasonSetThreadExecutionState, + MonitorRequestReasonFullWake, + MonitorRequestReasonSessionUnlock, + MonitorRequestReasonScreenOffRequest, + MonitorRequestReasonIdleTimeout, + MonitorRequestReasonPolicyChange, + MonitorRequestReasonMax + } POWER_MONITOR_REQUEST_REASON; + + typedef struct _POWER_MONITOR_INVOCATION { + BOOLEAN On; + BOOLEAN Console; + POWER_MONITOR_REQUEST_REASON RequestReason; + } POWER_MONITOR_INVOCATION,*PPOWER_MONITOR_INVOCATION; + + typedef struct _RESUME_PERFORMANCE { + DWORD PostTimeMs; + ULONGLONG TotalResumeTimeMs; + ULONGLONG ResumeCompleteTimestamp; + } RESUME_PERFORMANCE,*PRESUME_PERFORMANCE; + + typedef enum { + PoAc, + PoDc, + PoHot, + PoConditionMaximum + } SYSTEM_POWER_CONDITION; + typedef struct { + DWORD Version; + GUID Guid; + SYSTEM_POWER_CONDITION PowerCondition; + DWORD DataLength; + BYTE Data[ANYSIZE_ARRAY]; + } SET_POWER_SETTING_VALUE,*PSET_POWER_SETTING_VALUE; + +#define POWER_SETTING_VALUE_VERSION (0x1) + + typedef struct { + GUID Guid; + } NOTIFY_USER_POWER_SETTING,*PNOTIFY_USER_POWER_SETTING; + + typedef struct _APPLICATIONLAUNCH_SETTING_VALUE { + LARGE_INTEGER ActivationTime; + DWORD Flags; + DWORD ButtonInstanceID; + } APPLICATIONLAUNCH_SETTING_VALUE,*PAPPLICATIONLAUNCH_SETTING_VALUE; + + typedef enum _POWER_PLATFORM_ROLE { + PlatformRoleUnspecified = 0, + PlatformRoleDesktop, + PlatformRoleMobile, + PlatformRoleWorkstation, + PlatformRoleEnterpriseServer, + PlatformRoleSOHOServer, + PlatformRoleAppliancePC, + PlatformRolePerformanceServer, + PlatformRoleSlate, + PlatformRoleMaximum + } POWER_PLATFORM_ROLE,*PPOWER_PLATFORM_ROLE; + + typedef struct _POWER_PLATFORM_INFORMATION { + BOOLEAN AoAc; + } POWER_PLATFORM_INFORMATION,*PPOWER_PLATFORM_INFORMATION; + +#define POWER_PLATFORM_ROLE_V1 (0x00000001) +#define POWER_PLATFORM_ROLE_V1_MAX (PlatformRolePerformanceServer + 1) + +#define POWER_PLATFORM_ROLE_V2 (0x00000002) +#define POWER_PLATFORM_ROLE_V2_MAX (PlatformRoleSlate + 1) + +#if _WIN32_WINNT >= 0x0602 +#define POWER_PLATFORM_ROLE_VERSION POWER_PLATFORM_ROLE_V2 +#define POWER_PLATFORM_ROLE_VERSION_MAX POWER_PLATFORM_ROLE_V2_MAX +#else +#define POWER_PLATFORM_ROLE_VERSION POWER_PLATFORM_ROLE_V1 +#define POWER_PLATFORM_ROLE_VERSION_MAX POWER_PLATFORM_ROLE_V1_MAX +#endif + + typedef struct { DWORD Granularity; DWORD Capacity; } BATTERY_REPORTING_SCALE,*PBATTERY_REPORTING_SCALE; typedef struct { + DWORD Frequency; + DWORD Flags; + DWORD PercentFrequency; + } PPM_WMI_LEGACY_PERFSTATE,*PPPM_WMI_LEGACY_PERFSTATE; + + typedef struct { + DWORD Latency; + DWORD Power; + DWORD TimeCheck; + BYTE PromotePercent; + BYTE DemotePercent; + BYTE StateType; + BYTE Reserved; + DWORD StateFlags; + DWORD Context; + DWORD IdleHandler; + DWORD Reserved1; + } PPM_WMI_IDLE_STATE,*PPPM_WMI_IDLE_STATE; + + typedef struct { + DWORD Type; + DWORD Count; + DWORD TargetState; + DWORD OldState; + DWORD64 TargetProcessors; + PPM_WMI_IDLE_STATE State[ANYSIZE_ARRAY]; + } PPM_WMI_IDLE_STATES,*PPPM_WMI_IDLE_STATES; + + typedef struct { + DWORD Type; + DWORD Count; + DWORD TargetState; + DWORD OldState; + PVOID TargetProcessors; + PPM_WMI_IDLE_STATE State[ANYSIZE_ARRAY]; + } PPM_WMI_IDLE_STATES_EX,*PPPM_WMI_IDLE_STATES_EX; + + typedef struct { + DWORD Frequency; + DWORD Power; + BYTE PercentFrequency; + BYTE IncreaseLevel; + BYTE DecreaseLevel; + BYTE Type; + DWORD IncreaseTime; + DWORD DecreaseTime; + DWORD64 Control; + DWORD64 Status; + DWORD HitCount; + DWORD Reserved1; + DWORD64 Reserved2; + DWORD64 Reserved3; + } PPM_WMI_PERF_STATE,*PPPM_WMI_PERF_STATE; + + typedef struct { + DWORD Count; + DWORD MaxFrequency; + DWORD CurrentState; + DWORD MaxPerfState; + DWORD MinPerfState; + DWORD LowestPerfState; + DWORD ThermalConstraint; + BYTE BusyAdjThreshold; + BYTE PolicyType; + BYTE Type; + BYTE Reserved; + DWORD TimerInterval; + DWORD64 TargetProcessors; + DWORD PStateHandler; + DWORD PStateContext; + DWORD TStateHandler; + DWORD TStateContext; + DWORD FeedbackHandler; + DWORD Reserved1; + DWORD64 Reserved2; + PPM_WMI_PERF_STATE State[ANYSIZE_ARRAY]; + } PPM_WMI_PERF_STATES,*PPPM_WMI_PERF_STATES; + + typedef struct { + DWORD Count; + DWORD MaxFrequency; + DWORD CurrentState; + DWORD MaxPerfState; + DWORD MinPerfState; + DWORD LowestPerfState; + DWORD ThermalConstraint; + BYTE BusyAdjThreshold; + BYTE PolicyType; + BYTE Type; + BYTE Reserved; + DWORD TimerInterval; + PVOID TargetProcessors; + DWORD PStateHandler; + DWORD PStateContext; + DWORD TStateHandler; + DWORD TStateContext; + DWORD FeedbackHandler; + DWORD Reserved1; + DWORD64 Reserved2; + PPM_WMI_PERF_STATE State[ANYSIZE_ARRAY]; + } PPM_WMI_PERF_STATES_EX,*PPPM_WMI_PERF_STATES_EX; + +#define PROC_IDLE_BUCKET_COUNT 6 +#define PROC_IDLE_BUCKET_COUNT_EX 16 + + typedef struct { + DWORD IdleTransitions; + DWORD FailedTransitions; + DWORD InvalidBucketIndex; + DWORD64 TotalTime; + DWORD IdleTimeBuckets[PROC_IDLE_BUCKET_COUNT]; + } PPM_IDLE_STATE_ACCOUNTING,*PPPM_IDLE_STATE_ACCOUNTING; + + typedef struct { + DWORD StateCount; + DWORD TotalTransitions; + DWORD ResetCount; + DWORD64 StartTime; + PPM_IDLE_STATE_ACCOUNTING State[ANYSIZE_ARRAY]; + } PPM_IDLE_ACCOUNTING,*PPPM_IDLE_ACCOUNTING; + + typedef struct { + DWORD64 TotalTimeUs; + DWORD MinTimeUs; + DWORD MaxTimeUs; + DWORD Count; + } PPM_IDLE_STATE_BUCKET_EX,*PPPM_IDLE_STATE_BUCKET_EX; + + typedef struct { + DWORD64 TotalTime; + DWORD IdleTransitions; + DWORD FailedTransitions; + DWORD InvalidBucketIndex; + DWORD MinTimeUs; + DWORD MaxTimeUs; + DWORD CancelledTransitions; + PPM_IDLE_STATE_BUCKET_EX IdleTimeBuckets[PROC_IDLE_BUCKET_COUNT_EX]; + } PPM_IDLE_STATE_ACCOUNTING_EX,*PPPM_IDLE_STATE_ACCOUNTING_EX; + + typedef struct { + DWORD StateCount; + DWORD TotalTransitions; + DWORD ResetCount; + DWORD AbortCount; + DWORD64 StartTime; + PPM_IDLE_STATE_ACCOUNTING_EX State[ANYSIZE_ARRAY]; + } PPM_IDLE_ACCOUNTING_EX,*PPPM_IDLE_ACCOUNTING_EX; + +#define ACPI_PPM_SOFTWARE_ALL 0xfc +#define ACPI_PPM_SOFTWARE_ANY 0xfd +#define ACPI_PPM_HARDWARE_ALL 0xfe + +#define MS_PPM_SOFTWARE_ALL 0x1 + +#define PPM_FIRMWARE_ACPI1C2 0x1 +#define PPM_FIRMWARE_ACPI1C3 0x2 +#define PPM_FIRMWARE_ACPI1TSTATES 0x4 +#define PPM_FIRMWARE_CST 0x8 +#define PPM_FIRMWARE_CSD 0x10 +#define PPM_FIRMWARE_PCT 0x20 +#define PPM_FIRMWARE_PSS 0x40 +#define PPM_FIRMWARE_XPSS 0x80 +#define PPM_FIRMWARE_PPC 0x100 +#define PPM_FIRMWARE_PSD 0x200 +#define PPM_FIRMWARE_PTC 0x400 +#define PPM_FIRMWARE_TSS 0x800 +#define PPM_FIRMWARE_TPC 0x1000 +#define PPM_FIRMWARE_TSD 0x2000 +#define PPM_FIRMWARE_PCCH 0x4000 +#define PPM_FIRMWARE_PCCP 0x8000 +#define PPM_FIRMWARE_OSC 0x10000 +#define PPM_FIRMWARE_PDC 0x20000 +#define PPM_FIRMWARE_CPC 0x40000 + +#define PPM_PERFORMANCE_IMPLEMENTATION_NONE 0 +#define PPM_PERFORMANCE_IMPLEMENTATION_PSTATES 1 +#define PPM_PERFORMANCE_IMPLEMENTATION_PCCV1 2 +#define PPM_PERFORMANCE_IMPLEMENTATION_CPPC 3 +#define PPM_PERFORMANCE_IMPLEMENTATION_PEP 4 + +#define PPM_IDLE_IMPLEMENTATION_NONE 0x0 +#define PPM_IDLE_IMPLEMENTATION_CSTATES 0x1 +#define PPM_IDLE_IMPLEMENTATION_PEP 0x2 + + typedef struct { + DWORD State; + DWORD Status; + DWORD Latency; + DWORD Speed; + DWORD Processor; + } PPM_PERFSTATE_EVENT,*PPPM_PERFSTATE_EVENT; + + typedef struct { + DWORD State; + DWORD Latency; + DWORD Speed; + DWORD64 Processors; + } PPM_PERFSTATE_DOMAIN_EVENT,*PPPM_PERFSTATE_DOMAIN_EVENT; + + typedef struct { + DWORD NewState; + DWORD OldState; + DWORD64 Processors; + } PPM_IDLESTATE_EVENT,*PPPM_IDLESTATE_EVENT; + + typedef struct { + DWORD ThermalConstraint; + DWORD64 Processors; + } PPM_THERMALCHANGE_EVENT,*PPPM_THERMALCHANGE_EVENT; + typedef struct { + BYTE Mode; + DWORD64 Processors; + } PPM_THERMAL_POLICY_EVENT,*PPPM_THERMAL_POLICY_EVENT; + + DEFINE_GUID (PPM_PERFSTATE_CHANGE_GUID, 0xa5b32ddd, 0x7f39, 0x4abc, 0xb8, 0x92, 0x90, 0xe, 0x43, 0xb5, 0x9e, 0xbb); + DEFINE_GUID (PPM_PERFSTATE_DOMAIN_CHANGE_GUID, 0x995e6b7f, 0xd653, 0x497a, 0xb9, 0x78, 0x36, 0xa3, 0xc, 0x29, 0xbf, 0x1); + DEFINE_GUID (PPM_IDLESTATE_CHANGE_GUID, 0x4838fe4f, 0xf71c, 0x4e51, 0x9e, 0xcc, 0x84, 0x30, 0xa7, 0xac, 0x4c, 0x6c); + DEFINE_GUID (PPM_PERFSTATES_DATA_GUID, 0x5708cc20, 0x7d40, 0x4bf4, 0xb4, 0xaa, 0x2b, 0x01, 0x33, 0x8d, 0x01, 0x26); + DEFINE_GUID (PPM_IDLESTATES_DATA_GUID, 0xba138e10, 0xe250, 0x4ad7, 0x86, 0x16, 0xcf, 0x1a, 0x7a, 0xd4, 0x10, 0xe7); + DEFINE_GUID (PPM_IDLE_ACCOUNTING_GUID, 0xe2a26f78, 0xae07, 0x4ee0, 0xa3, 0x0f, 0xce, 0x54, 0xf5, 0x5a, 0x94, 0xcd); + DEFINE_GUID (PPM_IDLE_ACCOUNTING_EX_GUID, 0xd67abd39, 0x81f8, 0x4a5e, 0x81, 0x52, 0x72, 0xe3, 0x1e, 0xc9, 0x12, 0xee); + DEFINE_GUID (PPM_THERMALCONSTRAINT_GUID, 0xa852c2c8, 0x1a4c, 0x423b, 0x8c, 0x2c, 0xf3, 0x0d, 0x82, 0x93, 0x1a, 0x88); + DEFINE_GUID (PPM_PERFMON_PERFSTATE_GUID, 0x7fd18652, 0xcfe, 0x40d2, 0xb0, 0xa1, 0xb, 0x6, 0x6a, 0x87, 0x75, 0x9e); + DEFINE_GUID (PPM_THERMAL_POLICY_CHANGE_GUID, 0x48f377b8, 0x6880, 0x4c7b, 0x8b, 0xdc, 0x38, 0x1, 0x76, 0xc6, 0x65, 0x4d); + + typedef struct { POWER_ACTION Action; DWORD Flags; DWORD EventCode; This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |