[PATCH] Add missing definitions to winnt.h
Casper Hornstrup <[email protected]>
| Newsgroups | gmane.comp.gnu.mingw.patches |
|---|---|
| Message-ID | <[email protected]> |
2002-06-17 Casper S. Hornstrup <[email protected]> * include/winnt.h (PCCHAR, FCHAR, FSHORT, FLONG, PLUID_AND_ATTRIBUTES, PSECURITY_IMPERSONATION_LEVEL, PSID_AND_ATTRIBUTES, PTOKEN_TYPE, PTOKEN_STATISTICS): Add typedefs. (CCHAR): Correct typedef. (FILE_ANY_ACCESS, FILE_SPECIAL_ACCESS, PROCESS_SET_SESSIONID, PROCESS_READ, PROCESS_WRITE, PROCESS_EXECUTE, SECURITY_*, SE_*, SEC_BASED, SEC_NO_CHANGE, SECTION_MAP_EXECUTE): Add defines. Index: include/winnt.h =================================================================== RCS file: /cvsroot/mingw/w32api/include/winnt.h,v retrieving revision 1.24 diff -u -r1.24 winnt.h --- include/winnt.h 14 Jun 2002 11:44:47 -0000 1.24 +++ include/winnt.h 17 Jun 2002 18:39:38 -0000 @@ -49,7 +49,7 @@ typedef char CHAR; typedef short SHORT; typedef long LONG; -typedef CHAR CCHAR; +typedef char CCHAR, *PCCHAR; typedef unsigned char UCHAR,*PUCHAR; typedef unsigned short USHORT,*PUSHORT; typedef unsigned long ULONG,*PULONG; @@ -147,6 +147,9 @@ #define UNICODE_NULL L'\0' typedef BYTE BOOLEAN,*PBOOLEAN; #endif +typedef BYTE FCHAR; +typedef WORD FSHORT; +typedef DWORD FLONG; #define NTAPI __stdcall #include <basetsd.h> @@ -205,6 +208,8 @@ #define FILE_DELETE_CHILD 64 #define FILE_READ_ATTRIBUTES 128 #define FILE_WRITE_ATTRIBUTES 256 +#define FILE_ANY_ACCESS 0 +#define FILE_SPECIAL_ACCESS (FILE_ANY_ACCESS) #define FILE_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x1FF) #define FILE_GENERIC_READ (STANDARD_RIGHTS_READ|FILE_READ_DATA|FILE_READ_ATTRIBUTES|FILE_READ_EA|SYNCHRONIZE) #define FILE_GENERIC_WRITE (STANDARD_RIGHTS_WRITE|FILE_WRITE_DATA|FILE_WRITE_ATTRIBUTES|FILE_WRITE_EA|FILE_APPEND_DATA|SYNCHRONIZE) @@ -256,6 +261,7 @@ #define DUPLICATE_SAME_ACCESS 2 #define PROCESS_TERMINATE 1 #define PROCESS_CREATE_THREAD 2 +#define PROCESS_SET_SESSIONID 4 #define PROCESS_VM_OPERATION 8 #define PROCESS_VM_READ 16 #define PROCESS_VM_WRITE 32 @@ -264,6 +270,9 @@ #define PROCESS_SET_QUOTA 256 #define PROCESS_SET_INFORMATION 512 #define PROCESS_QUERY_INFORMATION 1024 +#define PROCESS_READ 0x020410 +#define PROCESS_WRITE 0x020beb +#define PROCESS_EXECUTE 0x120000L #define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0xFFF) #define THREAD_TERMINATE 1 #define THREAD_SUSPEND_RESUME 2 @@ -311,6 +320,42 @@ #define SECURITY_LOCAL_SYSTEM_RID 18 #define SECURITY_BUILTIN_DOMAIN_RID 32 #define SECURITY_PRINCIPAL_SELF_RID 10 +#define SECURITY_CREATOR_OWNER_SERVER_RID 0x2 +#define SECURITY_CREATOR_GROUP_SERVER_RID 0x3 +#define SECURITY_LOGON_IDS_RID_COUNT 0x3 +#define SECURITY_ANONYMOUS_LOGON_RID 0x7 +#define SECURITY_PROXY_RID 0x8 +#define SECURITY_ENTERPRISE_CONTROLLERS_RID 0x9 +#define SECURITY_SERVER_LOGON_RID SECURITY_ENTERPRISE_CONTROLLERS_RID +#define SECURITY_AUTHENTICATED_USER_RID 0xB +#define SECURITY_RESTRICTED_CODE_RID 0xC +#define SECURITY_NT_NON_UNIQUE_RID 0x15 +#define SE_MIN_WELL_KNOWN_PRIVILEGE 2 +#define SE_CREATE_TOKEN_PRIVILEGE 2 +#define SE_ASSIGNPRIMARYTOKEN_PRIVILEGE 3 +#define SE_LOCK_MEMORY_PRIVILEGE 4 +#define SE_INCREASE_QUOTA_PRIVILEGE 5 +#define SE_UNSOLICITED_INPUT_PRIVILEGE 6 +#define SE_MACHINE_ACCOUNT_PRIVILEGE 6 +#define SE_TCB_PRIVILEGE 7 +#define SE_SECURITY_PRIVILEGE 8 +#define SE_TAKE_OWNERSHIP_PRIVILEGE 9 +#define SE_LOAD_DRIVER_PRIVILEGE 10 +#define SE_SYSTEM_PROFILE_PRIVILEGE 11 +#define SE_SYSTEMTIME_PRIVILEGE 12 +#define SE_PROF_SINGLE_PROCESS_PRIVILEGE 13 +#define SE_INC_BASE_PRIORITY_PRIVILEGE 14 +#define SE_CREATE_PAGEFILE_PRIVILEGE 15 +#define SE_CREATE_PERMANENT_PRIVILEGE 16 +#define SE_BACKUP_PRIVILEGE 17 +#define SE_RESTORE_PRIVILEGE 18 +#define SE_SHUTDOWN_PRIVILEGE 19 +#define SE_DEBUG_PRIVILEGE 20 +#define SE_AUDIT_PRIVILEGE 21 +#define SE_SYSTEM_ENVIRONMENT_PRIVILEGE 22 +#define SE_CHANGE_NOTIFY_PRIVILEGE 23 +#define SE_REMOTE_SHUTDOWN_PRIVILEGE 24 +#define SE_MAX_WELL_KNOWN_PRIVILEGE SE_REMOTE_SHUTDOWN_PRIVILEGE #define SID_REVISION 1 #define DOMAIN_USER_RID_ADMIN 0x1F4L #define DOMAIN_USER_RID_GUEST 0x1F5L @@ -648,6 +693,8 @@ #define MEM_PHYSICAL 0x400000 #define MEM_4MB_PAGES 0x80000000 #define MEM_IMAGE 16777216 +#define SEC_BASED 0x00200000 +#define SEC_NO_CHANGE 0x00400000 #define SEC_FILE 0x800000 #define SEC_IMAGE 0x1000000 #define SEC_VLM 0x2000000 @@ -659,6 +706,7 @@ #define SECTION_MAP_READ 4 #define SECTION_MAP_WRITE 2 #define SECTION_QUERY 1 +#define SECTION_MAP_EXECUTE 8 #define SECTION_ALL_ACCESS 0xf001f #define MESSAGE_RESOURCE_UNICODE 1 #define RTL_CRITSECT_TYPE 0 @@ -1785,7 +1833,7 @@ typedef struct _LUID_AND_ATTRIBUTES { LUID Luid; DWORD Attributes; -} LUID_AND_ATTRIBUTES; +} LUID_AND_ATTRIBUTES, *PLUID_AND_ATTRIBUTES; #pragma pack(pop) typedef LUID_AND_ATTRIBUTES LUID_AND_ATTRIBUTES_ARRAY[ANYSIZE_ARRAY]; typedef LUID_AND_ATTRIBUTES_ARRAY *PLUID_AND_ATTRIBUTES_ARRAY; @@ -1804,7 +1852,7 @@ SecurityIdentification, SecurityImpersonation, SecurityDelegation -} SECURITY_IMPERSONATION_LEVEL; +} SECURITY_IMPERSONATION_LEVEL,*PSECURITY_IMPERSONATION_LEVEL; typedef BOOLEAN SECURITY_CONTEXT_TRACKING_MODE,*PSECURITY_CONTEXT_TRACKING_MODE; typedef struct _SECURITY_QUALITY_OF_SERVICE { DWORD Length; @@ -1832,7 +1880,7 @@ typedef struct _SID_AND_ATTRIBUTES { PSID Sid; DWORD Attributes; -} SID_AND_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; typedef struct _TOKEN_SOURCE { @@ -1862,7 +1910,7 @@ DWORD PrivilegeCount; LUID_AND_ATTRIBUTES Privileges[ANYSIZE_ARRAY]; } TOKEN_PRIVILEGES,*PTOKEN_PRIVILEGES,*LPTOKEN_PRIVILEGES; -typedef enum tagTOKEN_TYPE { TokenPrimary=1,TokenImpersonation }TOKEN_TYPE; +typedef enum tagTOKEN_TYPE { TokenPrimary=1,TokenImpersonation }TOKEN_TYPE, *PTOKEN_TYPE; typedef struct _TOKEN_STATISTICS { LUID TokenId; LUID AuthenticationId; @@ -1874,7 +1922,7 @@ DWORD GroupCount; DWORD PrivilegeCount; LUID ModifiedId; -} TOKEN_STATISTICS; +} TOKEN_STATISTICS, *PTOKEN_STATISTICS; typedef struct _TOKEN_USER { SID_AND_ATTRIBUTES User; } TOKEN_USER, *PTOKEN_USER;
winnt-add.diff
(text/x-diff, 6.2 KB)
2002-06-17 Casper S. Hornstrup <[email protected]> * include/winnt.h (PCCHAR, FCHAR, FSHORT, FLONG, PLUID_AND_ATTRIBUTES, PSECURITY_IMPERSONATION_LEVEL, PSID_AND_ATTRIBUTES, PTOKEN_TYPE, PTOKEN_STATISTICS): Add typedefs. (CCHAR): Correct typedef. (FILE_ANY_ACCESS, FILE_SPECIAL_ACCESS, PROCESS_SET_SESSIONID, PROCESS_READ, PROCESS_WRITE, PROCESS_EXECUTE, SECURITY_*, SE_*, SEC_BASED, SEC_NO_CHANGE, SECTION_MAP_EXECUTE): Add defines. Index: include/winnt.h =================================================================== RCS file: /cvsroot/mingw/w32api/include/winnt.h,v retrieving revision 1.24 diff -u -r1.24 winnt.h --- include/winnt.h 14 Jun 2002 11:44:47 -0000 1.24 +++ include/winnt.h 17 Jun 2002 18:39:38 -0000 @@ -49,7 +49,7 @@ typedef char CHAR; typedef short SHORT; typedef long LONG; -typedef CHAR CCHAR; +typedef char CCHAR, *PCCHAR; typedef unsigned char UCHAR,*PUCHAR; typedef unsigned short USHORT,*PUSHORT; typedef unsigned long ULONG,*PULONG; @@ -147,6 +147,9 @@ #define UNICODE_NULL L'\0' typedef BYTE BOOLEAN,*PBOOLEAN; #endif +typedef BYTE FCHAR; +typedef WORD FSHORT; +typedef DWORD FLONG; #define NTAPI __stdcall #include <basetsd.h> @@ -205,6 +208,8 @@ #define FILE_DELETE_CHILD 64 #define FILE_READ_ATTRIBUTES 128 #define FILE_WRITE_ATTRIBUTES 256 +#define FILE_ANY_ACCESS 0 +#define FILE_SPECIAL_ACCESS (FILE_ANY_ACCESS) #define FILE_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0x1FF) #define FILE_GENERIC_READ (STANDARD_RIGHTS_READ|FILE_READ_DATA|FILE_READ_ATTRIBUTES|FILE_READ_EA|SYNCHRONIZE) #define FILE_GENERIC_WRITE (STANDARD_RIGHTS_WRITE|FILE_WRITE_DATA|FILE_WRITE_ATTRIBUTES|FILE_WRITE_EA|FILE_APPEND_DATA|SYNCHRONIZE) @@ -256,6 +261,7 @@ #define DUPLICATE_SAME_ACCESS 2 #define PROCESS_TERMINATE 1 #define PROCESS_CREATE_THREAD 2 +#define PROCESS_SET_SESSIONID 4 #define PROCESS_VM_OPERATION 8 #define PROCESS_VM_READ 16 #define PROCESS_VM_WRITE 32 @@ -264,6 +270,9 @@ #define PROCESS_SET_QUOTA 256 #define PROCESS_SET_INFORMATION 512 #define PROCESS_QUERY_INFORMATION 1024 +#define PROCESS_READ 0x020410 +#define PROCESS_WRITE 0x020beb +#define PROCESS_EXECUTE 0x120000L #define PROCESS_ALL_ACCESS (STANDARD_RIGHTS_REQUIRED|SYNCHRONIZE|0xFFF) #define THREAD_TERMINATE 1 #define THREAD_SUSPEND_RESUME 2 @@ -311,6 +320,42 @@ #define SECURITY_LOCAL_SYSTEM_RID 18 #define SECURITY_BUILTIN_DOMAIN_RID 32 #define SECURITY_PRINCIPAL_SELF_RID 10 +#define SECURITY_CREATOR_OWNER_SERVER_RID 0x2 +#define SECURITY_CREATOR_GROUP_SERVER_RID 0x3 +#define SECURITY_LOGON_IDS_RID_COUNT 0x3 +#define SECURITY_ANONYMOUS_LOGON_RID 0x7 +#define SECURITY_PROXY_RID 0x8 +#define SECURITY_ENTERPRISE_CONTROLLERS_RID 0x9 +#define SECURITY_SERVER_LOGON_RID SECURITY_ENTERPRISE_CONTROLLERS_RID +#define SECURITY_AUTHENTICATED_USER_RID 0xB +#define SECURITY_RESTRICTED_CODE_RID 0xC +#define SECURITY_NT_NON_UNIQUE_RID 0x15 +#define SE_MIN_WELL_KNOWN_PRIVILEGE 2 +#define SE_CREATE_TOKEN_PRIVILEGE 2 +#define SE_ASSIGNPRIMARYTOKEN_PRIVILEGE 3 +#define SE_LOCK_MEMORY_PRIVILEGE 4 +#define SE_INCREASE_QUOTA_PRIVILEGE 5 +#define SE_UNSOLICITED_INPUT_PRIVILEGE 6 +#define SE_MACHINE_ACCOUNT_PRIVILEGE 6 +#define SE_TCB_PRIVILEGE 7 +#define SE_SECURITY_PRIVILEGE 8 +#define SE_TAKE_OWNERSHIP_PRIVILEGE 9 +#define SE_LOAD_DRIVER_PRIVILEGE 10 +#define SE_SYSTEM_PROFILE_PRIVILEGE 11 +#define SE_SYSTEMTIME_PRIVILEGE 12 +#define SE_PROF_SINGLE_PROCESS_PRIVILEGE 13 +#define SE_INC_BASE_PRIORITY_PRIVILEGE 14 +#define SE_CREATE_PAGEFILE_PRIVILEGE 15 +#define SE_CREATE_PERMANENT_PRIVILEGE 16 +#define SE_BACKUP_PRIVILEGE 17 +#define SE_RESTORE_PRIVILEGE 18 +#define SE_SHUTDOWN_PRIVILEGE 19 +#define SE_DEBUG_PRIVILEGE 20 +#define SE_AUDIT_PRIVILEGE 21 +#define SE_SYSTEM_ENVIRONMENT_PRIVILEGE 22 +#define SE_CHANGE_NOTIFY_PRIVILEGE 23 +#define SE_REMOTE_SHUTDOWN_PRIVILEGE 24 +#define SE_MAX_WELL_KNOWN_PRIVILEGE SE_REMOTE_SHUTDOWN_PRIVILEGE #define SID_REVISION 1 #define DOMAIN_USER_RID_ADMIN 0x1F4L #define DOMAIN_USER_RID_GUEST 0x1F5L @@ -648,6 +693,8 @@ #define MEM_PHYSICAL 0x400000 #define MEM_4MB_PAGES 0x80000000 #define MEM_IMAGE 16777216 +#define SEC_BASED 0x00200000 +#define SEC_NO_CHANGE 0x00400000 #define SEC_FILE 0x800000 #define SEC_IMAGE 0x1000000 #define SEC_VLM 0x2000000 @@ -659,6 +706,7 @@ #define SECTION_MAP_READ 4 #define SECTION_MAP_WRITE 2 #define SECTION_QUERY 1 +#define SECTION_MAP_EXECUTE 8 #define SECTION_ALL_ACCESS 0xf001f #define MESSAGE_RESOURCE_UNICODE 1 #define RTL_CRITSECT_TYPE 0 @@ -1785,7 +1833,7 @@ typedef struct _LUID_AND_ATTRIBUTES { LUID Luid; DWORD Attributes; -} LUID_AND_ATTRIBUTES; +} LUID_AND_ATTRIBUTES, *PLUID_AND_ATTRIBUTES; #pragma pack(pop) typedef LUID_AND_ATTRIBUTES LUID_AND_ATTRIBUTES_ARRAY[ANYSIZE_ARRAY]; typedef LUID_AND_ATTRIBUTES_ARRAY *PLUID_AND_ATTRIBUTES_ARRAY; @@ -1804,7 +1852,7 @@ SecurityIdentification, SecurityImpersonation, SecurityDelegation -} SECURITY_IMPERSONATION_LEVEL; +} SECURITY_IMPERSONATION_LEVEL,*PSECURITY_IMPERSONATION_LEVEL; typedef BOOLEAN SECURITY_CONTEXT_TRACKING_MODE,*PSECURITY_CONTEXT_TRACKING_MODE; typedef struct _SECURITY_QUALITY_OF_SERVICE { DWORD Length; @@ -1832,7 +1880,7 @@ typedef struct _SID_AND_ATTRIBUTES { PSID Sid; DWORD Attributes; -} SID_AND_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; typedef struct _TOKEN_SOURCE { @@ -1862,7 +1910,7 @@ DWORD PrivilegeCount; LUID_AND_ATTRIBUTES Privileges[ANYSIZE_ARRAY]; } TOKEN_PRIVILEGES,*PTOKEN_PRIVILEGES,*LPTOKEN_PRIVILEGES; -typedef enum tagTOKEN_TYPE { TokenPrimary=1,TokenImpersonation }TOKEN_TYPE; +typedef enum tagTOKEN_TYPE { TokenPrimary=1,TokenImpersonation }TOKEN_TYPE, *PTOKEN_TYPE; typedef struct _TOKEN_STATISTICS { LUID TokenId; LUID AuthenticationId; @@ -1874,7 +1922,7 @@ DWORD GroupCount; DWORD PrivilegeCount; LUID ModifiedId; -} TOKEN_STATISTICS; +} TOKEN_STATISTICS, *PTOKEN_STATISTICS; typedef struct _TOKEN_USER { SID_AND_ATTRIBUTES User; } TOKEN_USER, *PTOKEN_USER;