1 /******************************************************************************
2 * Runtime Library Types *
3 ******************************************************************************/
5 #define RTL_REGISTRY_ABSOLUTE 0
6 #define RTL_REGISTRY_SERVICES 1
7 #define RTL_REGISTRY_CONTROL 2
8 #define RTL_REGISTRY_WINDOWS_NT 3
9 #define RTL_REGISTRY_DEVICEMAP 4
10 #define RTL_REGISTRY_USER 5
11 #define RTL_REGISTRY_MAXIMUM 6
12 #define RTL_REGISTRY_HANDLE 0x40000000
13 #define RTL_REGISTRY_OPTIONAL 0x80000000
15 /* RTL_QUERY_REGISTRY_TABLE.Flags */
16 #define RTL_QUERY_REGISTRY_SUBKEY 0x00000001
17 #define RTL_QUERY_REGISTRY_TOPKEY 0x00000002
18 #define RTL_QUERY_REGISTRY_REQUIRED 0x00000004
19 #define RTL_QUERY_REGISTRY_NOVALUE 0x00000008
20 #define RTL_QUERY_REGISTRY_NOEXPAND 0x00000010
21 #define RTL_QUERY_REGISTRY_DIRECT 0x00000020
22 #define RTL_QUERY_REGISTRY_DELETE 0x00000040
24 #define HASH_STRING_ALGORITHM_DEFAULT 0
25 #define HASH_STRING_ALGORITHM_X65599 1
26 #define HASH_STRING_ALGORITHM_INVALID 0xffffffff
28 typedef struct _RTL_BITMAP
{
31 } RTL_BITMAP
, *PRTL_BITMAP
;
33 typedef struct _RTL_BITMAP_RUN
{
36 } RTL_BITMAP_RUN
, *PRTL_BITMAP_RUN
;
39 (NTAPI
*PRTL_QUERY_REGISTRY_ROUTINE
)(
45 IN PVOID EntryContext
);
47 typedef struct _RTL_QUERY_REGISTRY_TABLE
{
48 PRTL_QUERY_REGISTRY_ROUTINE QueryRoutine
;
55 } RTL_QUERY_REGISTRY_TABLE
, *PRTL_QUERY_REGISTRY_TABLE
;
57 typedef struct _TIME_FIELDS
{
66 } TIME_FIELDS
, *PTIME_FIELDS
;
69 #ifndef _SLIST_HEADER_
70 #define _SLIST_HEADER_
73 typedef struct DECLSPEC_ALIGN(16) _SLIST_ENTRY
*PSLIST_ENTRY
;
74 typedef struct DECLSPEC_ALIGN(16) _SLIST_ENTRY
{
77 typedef union DECLSPEC_ALIGN(16) _SLIST_HEADER
{
85 ULONGLONG NextEntry
:39;
86 ULONGLONG HeaderType
:1;
88 ULONGLONG Reserved
:59;
93 ULONGLONG Sequence
:48;
94 ULONGLONG HeaderType
:1;
97 ULONGLONG NextEntry
:60;
99 } SLIST_HEADER
, *PSLIST_HEADER
;
101 #define SLIST_ENTRY SINGLE_LIST_ENTRY
102 #define _SLIST_ENTRY _SINGLE_LIST_ENTRY
103 #define PSLIST_ENTRY PSINGLE_LIST_ENTRY
104 typedef union _SLIST_HEADER
{
111 } SLIST_HEADER
, *PSLIST_HEADER
;
114 #endif /* _SLIST_HEADER_ */
116 /* MS definition is broken! */
117 extern BOOLEAN NTSYSAPI NlsMbCodePageTag
;
118 extern BOOLEAN NTSYSAPI NlsMbOemCodePageTag
;
119 #define NLS_MB_CODE_PAGE_TAG NlsMbCodePageTag
120 #define NLS_MB_OEM_CODE_PAGE_TAG NlsMbOemCodePageTag