xref: /reactos/dll/win32/authz/precomp.h (revision b09b5584)
1 #ifndef __AUTHZ_PRECOMP_H
2 #define __AUTHZ_PRECOMP_H
3 
4 #define _AUTHZ_
5 
6 #include <stdarg.h>
7 
8 #define WIN32_NO_STATUS
9 #define _INC_WINDOWS
10 #define COM_NO_WINDOWS_H
11 
12 #include <windef.h>
13 #include <winbase.h>
14 
15 #include <authz.h>
16 
17 #if DBG
18 
19 #define RESMAN_TAG  0x89ABCDEF
20 #define CLIENTCTX_TAG  0x789ABCDE
21 #define VALIDATE_RESMAN_HANDLE(handle) ASSERT(((PAUTHZ_RESMAN)handle)->Tag == RESMAN_TAG)
22 #define VALIDATE_CLIENTCTX_HANDLE(handle) ASSERT(((PAUTHZ_CLIENT_CONTEXT)handle)->Tag == CLIENTCTX_TAG)
23 
24 #else
25 
26 #define VALIDATE_RESMAN_HANDLE(handle)
27 #define VALIDATE_CLIENTCTX_HANDLE(handle)
28 
29 #endif
30 
31 typedef struct _AUTHZ_RESMAN
32 {
33 #if DBG
34     DWORD Tag;
35 #endif
36 
37     PFN_AUTHZ_DYNAMIC_ACCESS_CHECK pfnAccessCheck;
38     PFN_AUTHZ_COMPUTE_DYNAMIC_GROUPS pfnComputeDynamicGroups;
39     PFN_AUTHZ_FREE_DYNAMIC_GROUPS pfnFreeDynamicGroups;
40 
41     DWORD flags;
42     PSID UserSid;
43     LUID AuthenticationId;
44 
45     WCHAR ResourceManagerName[1];
46 } AUTHZ_RESMAN, *PAUTHZ_RESMAN;
47 
48 typedef struct _AUTHZ_CLIENT_CONTEXT
49 {
50 #if DBG
51     DWORD Tag;
52 #endif
53 
54     PSID UserSid;
55 
56     AUTHZ_RESOURCE_MANAGER_HANDLE AuthzResourceManager;
57     LUID Luid;
58     LARGE_INTEGER ExpirationTime;
59     AUTHZ_CLIENT_CONTEXT_HANDLE ServerContext;
60     PVOID DynamicGroupArgs;
61 } AUTHZ_CLIENT_CONTEXT, *PAUTHZ_CLIENT_CONTEXT;
62 
63 #endif /* __AUTHZ_PRECOMP_H */
64