ReactOS 0.4.15-dev-8052-gc0e3179
ifssupp.h
Go to the documentation of this file.
1/*++ NDK Version: 0098
2
3Copyright (c) Alex Ionescu. All rights reserved.
4
5Header Name:
6
7 ifssupp.h
8
9Abstract:
10
11 NDK Support for usage without the IFS. Will be deprecated at WDK Release.
12
13Author:
14
15 Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
16
17--*/
18#ifndef _NTIFS_
19#ifndef NTOS_MODE_USER
20#define _NTIFS_
21
22#define TOKEN_SOURCE_LENGTH 8
23
24#ifndef _NTIFS_
25typedef enum _TOKEN_TYPE
26{
27 TokenPrimary = 1,
30
31typedef NTSTATUS
36);
37
38typedef struct _RTL_HEAP_PARAMETERS
39{
52
55
56typedef struct _RTL_SPLAY_LINKS
57{
62
65
66#if defined(USE_LPC6432)
67#define LPC_CLIENT_ID CLIENT_ID64
68#define LPC_SIZE_T ULONGLONG
69#define LPC_PVOID ULONGLONG
70#define LPC_HANDLE ULONGLONG
71#else
72#define LPC_CLIENT_ID CLIENT_ID
73#define LPC_SIZE_T SIZE_T
74#define LPC_PVOID PVOID
75#define LPC_HANDLE HANDLE
76#endif
77
78typedef struct _PORT_MESSAGE
79{
80 union
81 {
82 struct
83 {
86 } s1;
88 } u1;
89 union
90 {
91 struct
92 {
95 } s2;
97 } u2;
98 union
99 {
101 double DoNotUseThisField;
102 };
104 union
105 {
108 };
110
111typedef struct _PORT_VIEW
112{
120
121typedef struct _REMOTE_PORT_VIEW
122{
127
128typedef struct _KAPC_STATE
129{
130 LIST_ENTRY ApcListHead[2];
131 struct _KPROCESS *Process;
132 BOOLEAN KernelApcInProgress;
133 BOOLEAN KernelApcPending;
134 BOOLEAN UserApcPending;
136
137typedef struct _KQUEUE
138{
145
146typedef struct _ACE_HEADER
147{
152
154{
159
160typedef struct _SID_IDENTIFIER_AUTHORITY
161{
162 UCHAR Value[6];
164
165typedef struct _SID_AND_ATTRIBUTES
166{
167 PSID Sid;
170
171typedef struct _TOKEN_SOURCE
172{
176
177typedef struct _TOKEN_CONTROL
178{
184
185typedef struct _SECURITY_CLIENT_CONTEXT
186{
194
196{
198 UCHAR Sbz1;
200 ULONG Owner;
201 ULONG Group;
202 ULONG Sacl;
203 ULONG Dacl;
205
206typedef struct _TOKEN_GROUPS
207{
211
212typedef struct _TOKEN_PRIVILEGES
213{
217
218typedef struct _TOKEN_USER
219{
222
223typedef enum _TOKEN_INFORMATION_CLASS
224{
225 TokenUser = 1,
232 TokenType,
247 TokenVirtualization,
249 TokenIntegrityLevelDesktop,
253
254typedef struct _TOKEN_OWNER
255{
256 PSID Owner;
258
259typedef struct _TOKEN_PRIMARY_GROUP
260{
263
264typedef struct _TOKEN_DEFAULT_DACL
265{
268
269//
270// Heap flags
271//
272#define HEAP_NO_SERIALIZE 0x00000001
273#define HEAP_GROWABLE 0x00000002
274#define HEAP_GENERATE_EXCEPTIONS 0x00000004
275#define HEAP_ZERO_MEMORY 0x00000008
276#define HEAP_REALLOC_IN_PLACE_ONLY 0x00000010
277#define HEAP_TAIL_CHECKING_ENABLED 0x00000020
278#define HEAP_FREE_CHECKING_ENABLED 0x00000040
279#define HEAP_DISABLE_COALESCE_ON_FREE 0x00000080
280
281#define HEAP_CREATE_ALIGN_16 0x00010000
282#define HEAP_CREATE_ENABLE_TRACING 0x00020000
283#define HEAP_CREATE_ENABLE_EXECUTE 0x00040000
284
285#endif
286
287#endif // !NTOS_MODE_USER
288#endif // _NTIFS_
unsigned char BOOLEAN
TOKEN_TYPE
Definition: asmpp.cpp:29
#define NTSTATUS
Definition: precomp.h:21
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ ULONG _In_ PFILE_OBJECT _In_ PVOID Process
Definition: fsrtlfuncs.h:223
struct _PORT_MESSAGE_HEADER PORT_MESSAGE
struct _PORT_MESSAGE_HEADER * PPORT_MESSAGE
WORD SECURITY_DESCRIPTOR_CONTROL
Definition: lsa.idl:37
WORD * PSECURITY_DESCRIPTOR_CONTROL
Definition: lsa.idl:37
struct _SECURITY_CLIENT_CONTEXT SECURITY_CLIENT_CONTEXT
struct _TOKEN_SOURCE * PTOKEN_SOURCE
_TOKEN_TYPE
Definition: imports.h:272
@ TokenImpersonation
Definition: imports.h:274
@ TokenPrimary
Definition: imports.h:273
struct _TOKEN_CONTROL TOKEN_CONTROL
struct _TOKEN_SOURCE TOKEN_SOURCE
struct _SECURITY_CLIENT_CONTEXT * PSECURITY_CLIENT_CONTEXT
struct _TOKEN_CONTROL * PTOKEN_CONTROL
struct _ACE_HEADER ACE_HEADER
struct _ACE_HEADER * PACE_HEADER
struct _SID_IDENTIFIER_AUTHORITY SID_IDENTIFIER_AUTHORITY
#define _Inout_
Definition: ms_sal.h:378
#define _In_
Definition: ms_sal.h:308
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID _In_ ULONG_PTR _In_ SIZE_T CommitSize
Definition: mmfuncs.h:406
_In_opt_ ULONG Base
Definition: rtlfuncs.h:2439
_In_ ACCESS_MASK _In_opt_ POBJECT_ATTRIBUTES _In_ BOOLEAN _In_ TOKEN_TYPE TokenType
Definition: sefuncs.h:411
struct _RTL_HEAP_PARAMETERS * PRTL_HEAP_PARAMETERS
NTSTATUS(* PRTL_HEAP_COMMIT_ROUTINE)(IN PVOID Base, IN OUT PVOID *CommitAddress, IN OUT PULONG CommitSize)
Definition: nt_native.h:1660
struct _RTL_HEAP_PARAMETERS RTL_HEAP_PARAMETERS
#define RESTRICTED_POINTER
Definition: ntbasedef.h:97
#define LPC_PVOID
#define LPC_SIZE_T
struct _REMOTE_PORT_VIEW * PREMOTE_PORT_VIEW
struct _PORT_VIEW PORT_VIEW
struct _PORT_VIEW * PPORT_VIEW
#define LPC_HANDLE
struct _REMOTE_PORT_VIEW REMOTE_PORT_VIEW
#define LPC_CLIENT_ID
unsigned short USHORT
Definition: pedump.c:61
USHORT AceSize
Definition: ms-dtyp.idl:212
UCHAR AceFlags
Definition: ms-dtyp.idl:211
UCHAR AceType
Definition: ms-dtyp.idl:210
LIST_ENTRY EntryListHead
Definition: ketypes.h:1417
ULONG MaximumCount
Definition: ketypes.h:1419
DISPATCHER_HEADER Header
Definition: ketypes.h:1416
LIST_ENTRY ThreadListHead
Definition: ketypes.h:1420
volatile ULONG CurrentCount
Definition: ketypes.h:1418
Definition: typedefs.h:120
struct _PORT_MESSAGE::@4154::@4160 s2
struct _PORT_MESSAGE::@4153::@4159 s1
double DoNotUseThisField
LPC_SIZE_T ClientViewSize
union _PORT_MESSAGE::@4153 u1
LPC_CLIENT_ID ClientId
union _PORT_MESSAGE::@4154 u2
LPC_PVOID ViewBase
LPC_HANDLE SectionHandle
LPC_PVOID ViewRemoteBase
ULONG SectionOffset
LPC_SIZE_T ViewSize
ULONG DeCommitFreeBlockThreshold
Definition: nt_native.h:1670
PRTL_HEAP_COMMIT_ROUTINE CommitRoutine
Definition: nt_native.h:1676
ULONG VirtualMemoryThreshold
Definition: nt_native.h:1673
ULONG DeCommitTotalFreeThreshold
Definition: nt_native.h:1671
TOKEN_CONTROL ClientTokenControl
Definition: imports.h:295
PACCESS_TOKEN ClientToken
Definition: imports.h:291
SECURITY_QUALITY_OF_SERVICE SecurityQos
Definition: imports.h:290
BOOLEAN DirectlyAccessClientToken
Definition: imports.h:292
BOOLEAN DirectAccessEffectiveOnly
Definition: imports.h:293
SECURITY_DESCRIPTOR_CONTROL Control
Definition: setypes.h:839
LUID TokenId
Definition: imports.h:283
LUID AuthenticationId
Definition: imports.h:284
LUID ModifiedId
Definition: imports.h:285
TOKEN_SOURCE TokenSource
Definition: imports.h:286
SID_AND_ATTRIBUTES Groups[ANYSIZE_ARRAY]
Definition: setypes.h:1018
$ULONG GroupCount
Definition: setypes.h:1014
PSID Owner
Definition: setypes.h:1028
$ULONG PrivilegeCount
Definition: setypes.h:1023
LUID_AND_ATTRIBUTES Privileges[ANYSIZE_ARRAY]
Definition: setypes.h:1024
CCHAR SourceName[TOKEN_SOURCE_LENGTH]
Definition: imports.h:278
LUID SourceIdentifier
Definition: imports.h:279
SID_AND_ATTRIBUTES User
Definition: setypes.h:1010
ULONG_PTR * PSIZE_T
Definition: typedefs.h:80
#define ANYSIZE_ARRAY
Definition: typedefs.h:46
#define NTAPI
Definition: typedefs.h:36
ULONG_PTR SIZE_T
Definition: typedefs.h:80
uint32_t ULONG
Definition: typedefs.h:59
short CSHORT
Definition: umtypes.h:127
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
Definition: wdfregistry.h:413
_Reserved_ PVOID Reserved
Definition: winddi.h:3974
struct _FS_FILTER_CALLBACKS * PFS_FILTER_CALLBACKS
*RESTRICTED_POINTER PRKAPC_STATE
Definition: ketypes.h:1409
struct _KQUEUE * PKQUEUE
struct _KQUEUE KQUEUE
* PKAPC_STATE
Definition: ketypes.h:1409
struct _KQUEUE PRKQUEUE
KAPC_STATE
Definition: ketypes.h:1409
TABLE_SEARCH_RESULT
Definition: rtltypes.h:373
struct _RTL_SPLAY_LINKS * PRTL_SPLAY_LINKS
struct _RTL_GENERIC_TABLE * PRTL_GENERIC_TABLE
struct _RTL_SPLAY_LINKS RTL_SPLAY_LINKS
_RTL_GENERIC_COMPARE_RESULTS
Definition: rtltypes.h:375
@ GenericLessThan
Definition: rtltypes.h:376
@ GenericEqual
Definition: rtltypes.h:378
@ GenericGreaterThan
Definition: rtltypes.h:377
_Inout_ PVOID * CommitAddress
Definition: rtltypes.h:584
enum _RTL_GENERIC_COMPARE_RESULTS RTL_GENERIC_COMPARE_RESULTS
struct _TOKEN_PRIMARY_GROUP TOKEN_PRIMARY_GROUP
struct _SID_AND_ATTRIBUTES * PSID_AND_ATTRIBUTES
Definition: security.c:130
struct _TOKEN_GROUPS * PTOKEN_GROUPS
struct _TOKEN_PRIMARY_GROUP * PTOKEN_PRIMARY_GROUP
struct _TOKEN_USER TOKEN_USER
#define TOKEN_SOURCE_LENGTH
Definition: setypes.h:1077
struct _TOKEN_DEFAULT_DACL * PTOKEN_DEFAULT_DACL
struct _TOKEN_PRIVILEGES TOKEN_PRIVILEGES
struct _TOKEN_USER * PTOKEN_USER
struct _SECURITY_DESCRIPTOR_RELATIVE * PISECURITY_DESCRIPTOR_RELATIVE
struct _SECURITY_DESCRIPTOR_RELATIVE SECURITY_DESCRIPTOR_RELATIVE
_TOKEN_INFORMATION_CLASS
Definition: setypes.h:965
@ TokenDefaultDacl
Definition: setypes.h:971
@ TokenGroupsAndPrivileges
Definition: setypes.h:978
@ TokenAuditPolicy
Definition: setypes.h:981
@ TokenSource
Definition: setypes.h:972
@ TokenAccessInformation
Definition: setypes.h:987
@ TokenStatistics
Definition: setypes.h:975
@ TokenImpersonationLevel
Definition: setypes.h:974
@ TokenIntegrityLevel
Definition: setypes.h:990
@ MaxTokenInfoClass
Definition: setypes.h:1006
@ TokenIsRestricted
Definition: setypes.h:1005
@ TokenSandBoxInert
Definition: setypes.h:980
@ TokenRestrictedSids
Definition: setypes.h:976
@ TokenMandatoryPolicy
Definition: setypes.h:992
@ TokenGroups
Definition: setypes.h:967
@ TokenPrivileges
Definition: setypes.h:968
@ TokenUser
Definition: setypes.h:966
@ TokenOrigin
Definition: setypes.h:982
@ TokenPrimaryGroup
Definition: setypes.h:970
@ TokenSessionId
Definition: setypes.h:977
@ TokenSessionReference
Definition: setypes.h:979
@ TokenElevation
Definition: setypes.h:985
@ TokenElevationType
Definition: setypes.h:983
@ TokenOwner
Definition: setypes.h:969
@ TokenLinkedToken
Definition: setypes.h:984
enum _TOKEN_INFORMATION_CLASS * PTOKEN_INFORMATION_CLASS
struct _TOKEN_PRIVILEGES * PTOKEN_PRIVILEGES
enum _TOKEN_INFORMATION_CLASS TOKEN_INFORMATION_CLASS
* PSID_IDENTIFIER_AUTHORITY
Definition: setypes.h:464
struct _SID_AND_ATTRIBUTES SID_AND_ATTRIBUTES
enum _TOKEN_TYPE * PTOKEN_TYPE
struct _TOKEN_DEFAULT_DACL TOKEN_DEFAULT_DACL
struct _TOKEN_GROUPS TOKEN_GROUPS
struct _TOKEN_OWNER TOKEN_OWNER
struct _TOKEN_OWNER * PTOKEN_OWNER
unsigned char UCHAR
Definition: xmlstorage.h:181
char CHAR
Definition: xmlstorage.h:175