ReactOS 0.4.15-dev-8434-g155a7c7
rtlfuncs.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 rtlfuncs.h
8
9Abstract:
10
11 Function definitions for the Run-Time Library
12
13Author:
14
15 Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
16
17--*/
18
19#ifndef _RTLFUNCS_H
20#define _RTLFUNCS_H
21
22//
23// Dependencies
24//
25#include <umtypes.h>
26#include <ntnls.h>
27#include <rtltypes.h>
28#include <pstypes.h>
29#include <extypes.h>
30#include "in6addr.h"
31#include "inaddr.h"
32
33#ifdef __cplusplus
34extern "C" {
35#endif
36
37#ifdef NTOS_MODE_USER
38
39//
40// List Functions
41//
43VOID
45 _Out_ PLIST_ENTRY ListHead
46)
47{
48 ListHead->Flink = ListHead->Blink = ListHead;
49}
50
52VOID
54 _Inout_ PLIST_ENTRY ListHead,
56)
57{
58 PLIST_ENTRY OldFlink;
59 OldFlink = ListHead->Flink;
60 Entry->Flink = OldFlink;
61 Entry->Blink = ListHead;
62 OldFlink->Blink = Entry;
63 ListHead->Flink = Entry;
64}
65
67VOID
69 _Inout_ PLIST_ENTRY ListHead,
71)
72{
73 PLIST_ENTRY OldBlink;
74 OldBlink = ListHead->Blink;
75 Entry->Flink = ListHead;
76 Entry->Blink = OldBlink;
77 OldBlink->Flink = Entry;
78 ListHead->Blink = Entry;
79}
80
85 _In_ const LIST_ENTRY * ListHead
86)
87{
88 return (BOOLEAN)(ListHead->Flink == ListHead);
89}
90
95)
96{
97 PSINGLE_LIST_ENTRY FirstEntry;
98 FirstEntry = ListHead->Next;
99 if (FirstEntry != NULL) {
100 ListHead->Next = FirstEntry->Next;
101 }
102
103 return FirstEntry;
104}
105
107VOID
111)
112{
113 Entry->Next = ListHead->Next;
114 ListHead->Next = Entry;
115}
116
121{
122 PLIST_ENTRY OldFlink;
123 PLIST_ENTRY OldBlink;
124
125 OldFlink = Entry->Flink;
126 OldBlink = Entry->Blink;
127 OldFlink->Blink = OldBlink;
128 OldBlink->Flink = OldFlink;
129 return (BOOLEAN)(OldFlink == OldBlink);
130}
131
135 _Inout_ PLIST_ENTRY ListHead)
136{
137 PLIST_ENTRY Flink;
139
140 Entry = ListHead->Flink;
141 Flink = Entry->Flink;
142 ListHead->Flink = Flink;
143 Flink->Blink = ListHead;
144 return Entry;
145}
146
150 _Inout_ PLIST_ENTRY ListHead)
151{
152 PLIST_ENTRY Blink;
154
155 Entry = ListHead->Blink;
156 Blink = Entry->Blink;
157 ListHead->Blink = Blink;
158 Blink->Flink = ListHead;
159 return Entry;
160}
161
162//
163// Unicode string macros
164//
169VOID
170RtlInitEmptyUnicodeString(
174{
175 UnicodeString->Length = 0;
176 UnicodeString->MaximumLength = BufferSize;
177 UnicodeString->Buffer = Buffer;
178}
179
184VOID
185RtlInitEmptyAnsiString(
189{
190 AnsiString->Length = 0;
191 AnsiString->MaximumLength = BufferSize;
192 AnsiString->Buffer = Buffer;
193}
194
195//
196// LUID Macros
197//
198#define RtlEqualLuid(L1, L2) (((L1)->HighPart == (L2)->HighPart) && \
199 ((L1)->LowPart == (L2)->LowPart))
201LUID
205{
206 LUID TempLuid;
207
208 TempLuid.LowPart = Ulong;
209 TempLuid.HighPart = 0;
210 return TempLuid;
211}
212
216NTAPI
222 _In_reads_bytes_(UTF8StringByteCount) PCCH UTF8StringSource,
224
225//
226// ASSERT Macros
227//
228#ifndef ASSERT
229#if DBG
230
231#define ASSERT( exp ) \
232 ((void)((!(exp)) ? \
233 (RtlAssert( (PVOID)#exp, (PVOID)__FILE__, __LINE__, NULL ),FALSE) : \
234 TRUE))
235
236#define ASSERTMSG( msg, exp ) \
237 ((void)((!(exp)) ? \
238 (RtlAssert( (PVOID)#exp, (PVOID)__FILE__, __LINE__, (PCHAR)msg ),FALSE) : \
239 TRUE))
240
241#else
242
243#define ASSERT( exp ) ((void) 0)
244#define ASSERTMSG( msg, exp ) ((void) 0)
245
246#endif
247#endif
248
249#ifdef NTOS_KERNEL_RUNTIME
250
251//
252// Executing RTL functions at DISPATCH_LEVEL or higher will result in a
253// bugcheck.
254//
255#define RTL_PAGED_CODE PAGED_CODE
256
257#else
258
259//
260// This macro does nothing in user mode
261//
262#define RTL_PAGED_CODE()
263
264#endif
265
266//
267// RTL Splay Tree Functions
268//
269#ifndef RTL_USE_AVL_TABLES
270
272VOID
273NTAPI
280);
281
283PVOID
284NTAPI
289 _Out_opt_ PBOOLEAN NewElement
290);
291
293PVOID
294NTAPI
299 _Out_opt_ PBOOLEAN NewElement,
300 _In_ PVOID NodeOrParent,
301 _In_ TABLE_SEARCH_RESULT SearchResult
302);
303
306NTAPI
310);
311
314PVOID
315NTAPI
319);
320
322PVOID
323NTAPI
327 _Out_ PVOID *NodeOrParent,
328 _Out_ TABLE_SEARCH_RESULT *SearchResult
329);
330
333PVOID
334NTAPI
338);
339
342PVOID
343NTAPI
346 _Inout_ PVOID *RestartKey
347);
348
351PVOID
352NTAPI
355 _In_ ULONG I
356);
357
359ULONG
360NTAPI
363);
364
368NTAPI
371);
372
373#endif /* !RTL_USE_AVL_TABLES */
374
377NTAPI
380);
381
384NTAPI
387);
388
390VOID
391NTAPI
395);
396
400NTAPI
403);
404
408NTAPI
411);
412
416NTAPI
419);
420
424NTAPI
427);
428
429#define RtlIsLeftChild(Links) \
430 (RtlLeftChild(RtlParent(Links)) == (PRTL_SPLAY_LINKS)(Links))
431
432#define RtlIsRightChild(Links) \
433 (RtlRightChild(RtlParent(Links)) == (PRTL_SPLAY_LINKS)(Links))
434
435#define RtlRightChild(Links) \
436 ((PRTL_SPLAY_LINKS)(Links))->RightChild
437
438#define RtlIsRoot(Links) \
439 (RtlParent(Links) == (PRTL_SPLAY_LINKS)(Links))
440
441#define RtlLeftChild(Links) \
442 ((PRTL_SPLAY_LINKS)(Links))->LeftChild
443
444#define RtlParent(Links) \
445 ((PRTL_SPLAY_LINKS)(Links))->Parent
446
447// FIXME: use inline function
448
449#define RtlInitializeSplayLinks(Links) \
450 { \
451 PRTL_SPLAY_LINKS _SplayLinks; \
452 _SplayLinks = (PRTL_SPLAY_LINKS)(Links); \
453 _SplayLinks->Parent = _SplayLinks; \
454 _SplayLinks->LeftChild = NULL; \
455 _SplayLinks->RightChild = NULL; \
456 }
457
458#define RtlInsertAsLeftChild(ParentLinks,ChildLinks) \
459 { \
460 PRTL_SPLAY_LINKS _SplayParent; \
461 PRTL_SPLAY_LINKS _SplayChild; \
462 _SplayParent = (PRTL_SPLAY_LINKS)(ParentLinks); \
463 _SplayChild = (PRTL_SPLAY_LINKS)(ChildLinks); \
464 _SplayParent->LeftChild = _SplayChild; \
465 _SplayChild->Parent = _SplayParent; \
466 }
467
468#define RtlInsertAsRightChild(ParentLinks,ChildLinks) \
469 { \
470 PRTL_SPLAY_LINKS _SplayParent; \
471 PRTL_SPLAY_LINKS _SplayChild; \
472 _SplayParent = (PRTL_SPLAY_LINKS)(ParentLinks); \
473 _SplayChild = (PRTL_SPLAY_LINKS)(ChildLinks); \
474 _SplayParent->RightChild = _SplayChild; \
475 _SplayChild->Parent = _SplayParent; \
476 }
477
478//
479// RTL AVL Tree Functions
480//
482VOID
483NTAPI
490);
491
493PVOID
494NTAPI
499 _Out_opt_ PBOOLEAN NewElement
500);
501
503PVOID
504NTAPI
509 _Out_opt_ PBOOLEAN NewElement,
510 _In_ PVOID NodeOrParent,
511 _In_ TABLE_SEARCH_RESULT SearchResult
512);
513
516NTAPI
520);
521
524PVOID
525NTAPI
529);
530
532PVOID
533NTAPI
537 _Out_ PVOID *NodeOrParent,
538 _Out_ TABLE_SEARCH_RESULT *SearchResult
539);
540
543PVOID
544NTAPI
548);
549
552PVOID
553NTAPI
556 _Inout_ PVOID *RestartKey
557);
558
561PVOID
562NTAPI
566 _Out_ PVOID *RestartKey
567);
568
571PVOID
572NTAPI
575 _In_opt_ PRTL_AVL_MATCH_FUNCTION MatchFunction,
577 _In_ ULONG NextFlag,
578 _Inout_ PVOID *RestartKey,
579 _Inout_ PULONG DeleteCount,
581);
582
585PVOID
586NTAPI
589 _In_ ULONG I
590);
591
593ULONG
594NTAPI
597);
598
602NTAPI
605);
606
607#ifdef RTL_USE_AVL_TABLES
608
609#define RtlInitializeGenericTable RtlInitializeGenericTableAvl
610#define RtlInsertElementGenericTable RtlInsertElementGenericTableAvl
611#define RtlInsertElementGenericTableFull RtlInsertElementGenericTableFullAvl
612#define RtlDeleteElementGenericTable RtlDeleteElementGenericTableAvl
613#define RtlLookupElementGenericTable RtlLookupElementGenericTableAvl
614#define RtlLookupElementGenericTableFull RtlLookupElementGenericTableFullAvl
615#define RtlEnumerateGenericTable RtlEnumerateGenericTableAvl
616#define RtlEnumerateGenericTableWithoutSplaying RtlEnumerateGenericTableWithoutSplayingAvl
617#define RtlGetElementGenericTable RtlGetElementGenericTableAvl
618#define RtlNumberGenericTableElements RtlNumberGenericTableElementsAvl
619#define RtlIsGenericTableEmpty RtlIsGenericTableEmptyAvl
620
621#endif /* RTL_USE_AVL_TABLES */
622
623//
624// Exception and Error Functions
625//
627PVOID
628NTAPI
630 _In_ ULONG FirstHandler,
631 _In_ PVECTORED_EXCEPTION_HANDLER VectoredHandler
632);
633
635ULONG
636NTAPI
638 _In_ PVOID VectoredHandlerHandle
639);
640
642PVOID
643NTAPI
645 _In_ ULONG FirstHandler,
646 _In_ PVECTORED_EXCEPTION_HANDLER VectoredHandler
647);
648
650ULONG
651NTAPI
653 _In_ PVOID VectoredHandlerHandle
654);
655
657VOID
658NTAPI
660 _In_ PRTLP_UNHANDLED_EXCEPTION_FILTER TopLevelExceptionFilter
661);
662
664LONG
665NTAPI
667 _In_ struct _EXCEPTION_POINTERS* ExceptionInfo
668);
669
672VOID
673NTAPI
675 _In_ PVOID FailedAssertion,
679);
680
682PVOID
683NTAPI
685 _In_ PVOID Pointer
686);
687
689PVOID
690NTAPI
692 _In_ PVOID Pointer
693);
694
696PVOID
697NTAPI
699 _In_ PVOID Pointer
700);
701
703PVOID
704NTAPI
706 _In_ PVOID Pointer
707);
708
711NTAPI
713 VOID
714);
715
717ULONG
718NTAPI
720 VOID
721);
722
724VOID
725NTAPI
727 _In_ ULONG LastError
728);
729
731VOID
732NTAPI
735);
736
739NTAPI
741 _In_ ULONG NewMode,
742 _Out_opt_ PULONG OldMode
743);
744
746ULONG
747NTAPI
749 VOID
750);
751
752#endif /* NTOS_MODE_USER */
753
755VOID
756NTAPI
759);
760
763NTAPI
765 _In_ PEXCEPTION_RECORD ExceptionRecord,
767);
768
771_When_(Status >= 0, _Out_range_(==, 0))
773ULONG
774NTAPI
777);
778
780_When_(Status >= 0, _Out_range_(==, 0))
782ULONG
783NTAPI
786);
787
790NTAPI
792 _In_ ULONG SecurityError
793);
794
796VOID
797NTAPI
799 _In_ PEXCEPTION_RECORD ExceptionRecord
800);
801
804VOID
805NTAPI
808);
809
811VOID
812NTAPI
814 _In_opt_ PVOID TargetFrame,
815 _In_opt_ PVOID TargetIp,
816 _In_opt_ PEXCEPTION_RECORD ExceptionRecord,
818);
819
820#define RTL_STACK_WALKING_MODE_FRAMES_TO_SKIP_SHIFT 8
821
822#ifdef _M_AMD64
823
826NTAPI
828 _In_ DWORD64 ControlPc,
829 _Out_ PDWORD64 ImageBase,
830 _Inout_opt_ PUNWIND_HISTORY_TABLE HistoryTable
831);
832
835NTAPI
838 _In_ ULONG64 ImageBase,
839 _In_ ULONG64 ControlPc,
840 _In_ PRUNTIME_FUNCTION FunctionEntry,
842 _Outptr_ PVOID* HandlerData,
844 _Inout_opt_ PKNONVOLATILE_CONTEXT_POINTERS ContextPointers
845);
846
847#endif // _M_AMD64
848
849//
850// Tracing Functions
851//
853ULONG
854NTAPI
859);
860
862USHORT
863NTAPI
865 VOID
866);
867
868#ifdef NTOS_MODE_USER
869//
870// Heap Functions
871//
876PVOID
877NTAPI
879 _In_ PVOID HeapHandle,
882);
883
886PVOID
887NTAPI
891 _In_opt_ SIZE_T SizeToReserve,
892 _In_opt_ SIZE_T SizeToCommit,
895);
896
898ULONG
899NTAPI
901 _In_ HANDLE HeapHandle,
903 _In_opt_ PWSTR TagName,
904 _In_ PWSTR TagSubName
905);
906
907ULONG
908NTAPI
910 _In_ HANDLE Heap,
912);
913
916PVOID
917NTAPI
921 _In_opt_ SIZE_T SizeToReserve,
922 _In_opt_ SIZE_T SizeToCommit,
925);
926
928HANDLE
929NTAPI
932);
933
935ULONG
936NTAPI
938 _In_ HANDLE Heap,
940 _In_ PVOID P,
942);
943
944_Success_(return != 0)
947NTAPI
949 _In_ HANDLE HeapHandle,
952);
953
954ULONG
955NTAPI
957 _In_ ULONG HeapCount,
958 _Out_cap_(HeapCount) HANDLE *HeapArray
959);
960
961_Success_(return != 0)
963NTAPI
965 _In_ PVOID HeapHandle,
968 _Inout_opt_ PVOID *UserValue,
969 _Out_opt_ PULONG UserFlags
970);
971
973PVOID
974NTAPI
976 _In_ PVOID HeapHandle,
978);
979
982NTAPI
984 _In_ PVOID HeapHandle,
985 _In_ HEAP_INFORMATION_CLASS HeapInformationClass,
986 _Out_ PVOID HeapInformation,
987 _In_ SIZE_T HeapInformationLength,
990);
991
994PWSTR
995NTAPI
997 _In_ PVOID HeapHandle,
999 _In_ USHORT TagIndex,
1000 _In_ BOOLEAN ResetCounters,
1001 _Out_ PRTL_HEAP_TAG_INFO HeapTagInfo
1002);
1003
1008PVOID
1009NTAPI
1011 _In_ HANDLE Heap,
1015);
1016
1019NTAPI
1021 _In_ PVOID HeapHandle,
1022 _In_ HEAP_INFORMATION_CLASS HeapInformationClass,
1023 _When_(HeapInformationClass==HeapCompatibilityInformation,_In_) PVOID HeapInformation,
1024 _In_ SIZE_T HeapInformationLength
1025);
1026
1028BOOLEAN
1029NTAPI
1031 _In_ HANDLE Heap
1032);
1033
1035ULONG
1036NTAPI
1038 _In_ HANDLE HeapHandle,
1043);
1044
1046ULONG
1047NTAPI
1049 _In_ HANDLE HeapHandle,
1052 _In_count_(Count) /* _Deref_ _Post_invalid_ */ PVOID * Array
1053);
1054
1057NTAPI
1059 _In_ HANDLE Heap,
1062);
1063
1065BOOLEAN
1066NTAPI
1068 _In_ HANDLE Heap
1069);
1070
1071BOOLEAN
1072NTAPI
1074 _In_ PVOID HeapHandle,
1077 _In_ PVOID UserValue
1078);
1079
1080BOOLEAN
1081NTAPI
1083 _In_ PVOID HeapHandle,
1086 _In_ ULONG UserFlagsReset,
1087 _In_ ULONG UserFlagsSet
1088);
1089
1091BOOLEAN
1092NTAPI
1094 _In_ HANDLE Heap,
1097);
1098
1101NTAPI
1103 _In_ HANDLE HeapHandle,
1104 _In_ PVOID HeapEntry
1105);
1106
1107#define RtlGetProcessHeap() (NtCurrentPeb()->ProcessHeap)
1108
1109#endif // NTOS_MODE_USER
1110
1111#define NtCurrentPeb() (NtCurrentTeb()->ProcessEnvironmentBlock)
1112
1114SIZE_T
1115NTAPI
1117 _In_ PVOID HeapHandle,
1119 _In_ PVOID MemoryPointer
1120);
1121
1122
1123//
1124// Security Functions
1125//
1129NTAPI
1134);
1135
1139NTAPI
1141 _Inout_ PACL Acl,
1145);
1146
1150NTAPI
1152 _Inout_ PACL pAcl,
1157);
1158
1161NTAPI
1163 _Inout_ PACL pAcl,
1167 _In_opt_ GUID *ObjectTypeGuid,
1168 _In_opt_ GUID *InheritedObjectTypeGuid,
1169 _In_ PSID pSid
1170);
1171
1174NTAPI
1176 _Inout_ PACL Acl,
1179 _In_ PSID Sid
1180);
1181
1184NTAPI
1186 _Inout_ PACL Acl,
1190 _In_ PSID Sid
1191);
1192
1195NTAPI
1197 _Inout_ PACL pAcl,
1201 _In_opt_ GUID *ObjectTypeGuid,
1202 _In_opt_ GUID *InheritedObjectTypeGuid,
1203 _In_ PSID pSid
1204);
1205
1208NTAPI
1210 _Inout_ PACL Acl,
1215);
1216
1219NTAPI
1221 _Inout_ PACL Acl,
1224 _In_ PSID Sid,
1226 _In_ BOOLEAN Failure
1227);
1228
1231NTAPI
1234 _In_ ULONG NumPriv,
1236 _Out_ PVOID *ReturnedState
1237);
1238
1241NTAPI
1243 _Inout_ PACL Acl,
1247 _In_ PSID Sid,
1249 _In_ BOOLEAN Failure
1250);
1251
1254NTAPI
1256 _Inout_ PACL Acl,
1260 _In_opt_ GUID *ObjectTypeGuid,
1261 _In_opt_ GUID *InheritedObjectTypeGuid,
1262 _In_ PSID Sid,
1264 _In_ BOOLEAN Failure
1265);
1266
1269NTAPI
1271 _Inout_ PACL Acl,
1274 _In_ ULONG MandatoryFlags,
1276 _In_ PSID LabelSid);
1277
1280NTAPI
1283 _In_ BOOLEAN NewValue,
1284 _In_ BOOLEAN ForThread,
1285 _Out_ PBOOLEAN OldValue
1286);
1287
1291NTAPI
1295 _In_ ULONG SubAuthority0,
1296 _In_ ULONG SubAuthority1,
1297 _In_ ULONG SubAuthority2,
1298 _In_ ULONG SubAuthority3,
1299 _In_ ULONG SubAuthority4,
1300 _In_ ULONG SubAuthority5,
1301 _In_ ULONG SubAuthority6,
1302 _In_ ULONG SubAuthority7,
1304);
1305
1307BOOLEAN
1308NTAPI
1312);
1313
1315BOOLEAN
1316NTAPI
1320);
1321
1324VOID
1325NTAPI
1327 _Out_ PLUID DestinationLuid,
1329 );
1330
1332VOID
1333NTAPI
1335 ULONG Count,
1338);
1339
1342NTAPI
1346 _In_ ULONG SidAreaSize,
1348 _In_ PSID SidArea,
1349 _Out_ PSID* RemainingSidArea,
1350 _Out_ PULONG RemainingSidAreaSize
1351);
1352
1356NTAPI
1359 _In_ PSID Sid,
1361);
1362
1366NTAPI
1368 _In_ ULONG DestinationSidLength,
1369 _Out_writes_bytes_(DestinationSidLength) PSID DestinationSid,
1371);
1372
1375NTAPI
1377 PACL Acl,
1378 ULONG AclSize,
1380);
1381
1384NTAPI
1388);
1389
1392NTAPI
1396);
1397
1400NTAPI
1402 _In_ PSECURITY_DESCRIPTOR pSourceSecurityDescriptor,
1403 _Out_ PSECURITY_DESCRIPTOR *pDestinationSecurityDescriptor
1404);
1405
1408NTAPI
1410 PACL Acl,
1412);
1413
1415BOOLEAN
1416NTAPI
1418 PSID Sid1,
1419 PSID Sid2
1420);
1421
1423BOOLEAN
1424NTAPI
1426 _In_ PSID Sid1,
1427 _In_ PSID Sid2
1428);
1429
1431BOOLEAN
1432NTAPI
1434 PACL Acl,
1435 PACE* Ace
1436);
1437
1439PVOID
1440NTAPI
1443);
1444
1447NTAPI
1449 PACL Acl,
1451 PVOID *Ace
1452);
1453
1456NTAPI
1461);
1462
1465NTAPI
1469 _Out_ PACL *Dacl,
1471);
1472
1475NTAPI
1479 _Out_ PACL* Sacl,
1481);
1482
1485NTAPI
1488 _Out_ PSID *Group,
1490);
1491
1494NTAPI
1497 _Out_ PSID *Owner,
1499);
1500
1502BOOLEAN
1503NTAPI
1506 _Out_ PUCHAR RMControl
1507);
1508
1511NTAPI
1513
1516NTAPI
1518
1522NTAPI
1524 _Out_ PSID Sid,
1527);
1528
1530ULONG
1531NTAPI
1533
1536ULONG
1537NTAPI
1540
1542ULONG
1543NTAPI
1545
1548NTAPI
1550 _In_ PSECURITY_DESCRIPTOR AbsoluteSD,
1551 _Out_ PSECURITY_DESCRIPTOR SelfRelativeSD,
1553
1555VOID
1556NTAPI
1560);
1561
1562#ifdef NTOS_MODE_USER
1563
1566NTAPI
1568 PACL Acl,
1570 ULONG InformationLength,
1572);
1573
1574#endif
1575
1577VOID
1578NTAPI
1580 _In_ PVOID ReturnedState
1581);
1582
1583#if (NTDDI_VERSION >= NTDDI_VISTA)
1584
1587NTAPI
1590 _In_reads_opt_(PrivilegeCount) _When_(PrivilegeCount != 0, _Notnull_)
1591 PULONG PrivilegesToKeep,
1592 _In_ ULONG PrivilegeCount
1593);
1594
1595#endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
1596
1600NTAPI
1613);
1614
1617NTAPI
1619 _Inout_ PSECURITY_DESCRIPTOR SelfRelativeSD,
1621);
1622
1625NTAPI
1630);
1631
1634NTAPI
1637 _In_ SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest,
1638 _In_ SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet
1639);
1640
1644NTAPI
1650);
1651
1655NTAPI
1660);
1661
1662#ifdef NTOS_MODE_USER
1663
1666NTAPI
1668 PACL Acl,
1670 ULONG InformationLength,
1672);
1673
1674#endif
1675
1679NTAPI
1684);
1685
1688NTAPI
1692 _In_ PACL Sacl,
1694);
1695
1697VOID
1698NTAPI
1701 _In_ PUCHAR RMControl
1702);
1703
1705PUCHAR
1706NTAPI
1708 _In_ PSID Sid
1709);
1710
1712PULONG
1713NTAPI
1715 _In_ PSID Sid,
1716 _In_ ULONG SubAuthority
1717);
1718
1722BOOLEAN
1723NTAPI
1728);
1729
1731BOOLEAN
1732NTAPI
1734
1736BOOLEAN
1737NTAPI
1739
1741BOOLEAN
1742NTAPI
1744
1747NTAPI
1749 _In_ PSECURITY_DESCRIPTOR *ObjectDescriptor
1750);
1751
1754NTAPI
1756 _In_ PSECURITY_DESCRIPTOR ParentDescriptor,
1757 _In_ PSECURITY_DESCRIPTOR CreatorDescriptor,
1762);
1763
1766NTAPI
1768 _In_ PSECURITY_DESCRIPTOR ObjectDescriptor,
1770 _Out_ PSECURITY_DESCRIPTOR ResultantDescriptor,
1771 _In_ ULONG DescriptorLength,
1773);
1774
1777NTAPI
1780 _In_ PSECURITY_DESCRIPTOR ModificationDescriptor,
1781 _Out_ PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor,
1784);
1785
1786//
1787// Single-Character Functions
1788//
1791NTAPI
1794 _In_ ULONG Base,
1797);
1798
1800CHAR
1801NTAPI
1803
1805WCHAR
1806NTAPI
1808
1810WCHAR
1811NTAPI
1813
1816NTAPI
1819 _In_ ULONG Base,
1822);
1823
1826NTAPI
1832);
1833
1835_At_(String->MaximumLength, _Const_)
1838NTAPI
1843);
1844
1847NTAPI
1849 PCSZ String,
1850 ULONG Base,
1852);
1853
1854//
1855// Byte Swap Functions
1856//
1857#ifdef NTOS_MODE_USER
1858
1859unsigned short __cdecl _byteswap_ushort(unsigned short);
1860unsigned long __cdecl _byteswap_ulong (unsigned long);
1861unsigned __int64 __cdecl _byteswap_uint64(unsigned __int64);
1862#ifdef _MSC_VER
1863#pragma intrinsic(_byteswap_ushort)
1864#pragma intrinsic(_byteswap_ulong)
1865#pragma intrinsic(_byteswap_uint64)
1866#endif // _MSC_VER
1867#define RtlUshortByteSwap(_x) _byteswap_ushort((USHORT)(_x))
1868#define RtlUlongByteSwap(_x) _byteswap_ulong((_x))
1869#define RtlUlonglongByteSwap(_x) _byteswap_uint64((_x))
1870
1871#endif // NTOS_MODE_USER
1872
1873//
1874// Unicode->Ansi String Functions
1875//
1877ULONG
1878NTAPI
1880
1881#ifdef NTOS_MODE_USER
1882
1883#define RtlUnicodeStringToAnsiSize(STRING) ( \
1884 NLS_MB_CODE_PAGE_TAG ? \
1885 RtlxUnicodeStringToAnsiSize(STRING) : \
1886 ((STRING)->Length + sizeof(UNICODE_NULL)) / sizeof(WCHAR) \
1887)
1888
1889#endif
1890
1893NTAPI
1898);
1899
1900//
1901// Unicode->OEM String Functions
1902//
1905NTAPI
1910);
1911
1914//_At_(DestinationString->Buffer, _Post_bytecount_(DestinationString->Length))
1917NTAPI
1924);
1925
1928NTAPI
1933);
1934
1939NTAPI
1940RtlUnicodeStringToCountedOemString(
1946);
1947
1950NTAPI
1953 ULONG OemSize,
1954 PULONG ResultSize,
1956 ULONG UnicodeSize
1957);
1958
1960ULONG
1961NTAPI
1963
1964#ifdef NTOS_MODE_USER
1965
1966#define RtlUnicodeStringToOemSize(STRING) ( \
1967 NLS_MB_OEM_CODE_PAGE_TAG ? \
1968 RtlxUnicodeStringToOemSize(STRING) : \
1969 ((STRING)->Length + sizeof(UNICODE_NULL)) / sizeof(WCHAR) \
1970)
1971
1972#define RtlUnicodeStringToCountedOemSize(STRING) ( \
1973 (ULONG)(RtlUnicodeStringToOemSize(STRING) - sizeof(ANSI_NULL)) \
1974)
1975
1976#endif
1977
1980NTAPI
1983 ULONG OemSize,
1984 PULONG ResultSize,
1986 ULONG UnicodeSize
1987);
1988
1989//
1990// Unicode->MultiByte String Functions
1991//
1994NTAPI
1996 PCHAR MbString,
1997 ULONG MbSize,
1998 PULONG ResultSize,
2000 ULONG UnicodeSize
2001);
2002
2005NTAPI
2007 PCHAR MbString,
2008 ULONG MbSize,
2009 PULONG ResultSize,
2011 ULONG UnicodeSize
2012);
2013
2016NTAPI
2018 PULONG MbSize,
2020 ULONG UnicodeSize
2021);
2022
2024ULONG
2025NTAPI
2027
2028//
2029// OEM to Unicode Functions
2030//
2033NTAPI
2038);
2039
2043NTAPI
2050);
2051
2052#ifdef NTOS_MODE_USER
2053
2054#define RtlOemStringToUnicodeSize(STRING) ( \
2055 NLS_MB_OEM_CODE_PAGE_TAG ? \
2056 RtlxOemStringToUnicodeSize(STRING) : \
2057 ((STRING)->Length + sizeof(ANSI_NULL)) * sizeof(WCHAR) \
2058)
2059
2060#define RtlOemStringToCountedUnicodeSize(STRING) ( \
2061 (ULONG)(RtlOemStringToUnicodeSize(STRING) - sizeof(UNICODE_NULL)) \
2062)
2063
2064#endif
2065
2066//
2067// Ansi->Unicode String Functions
2068//
2071WCHAR
2072NTAPI
2074 _Inout_ PUCHAR *SourceCharacter);
2075
2078NTAPI
2083);
2084
2086ULONG
2087NTAPI
2090);
2091
2092#ifdef NTOS_MODE_USER
2093
2094#define RtlAnsiStringToUnicodeSize(STRING) ( \
2095 NLS_MB_CODE_PAGE_TAG ? \
2096 RtlxAnsiStringToUnicodeSize(STRING) : \
2097 ((STRING)->Length + sizeof(ANSI_NULL)) * sizeof(WCHAR) \
2098)
2099
2100#endif
2101
2103BOOLEAN
2104NTAPI
2108);
2109
2110//
2111// Unicode String Functions
2112//
2115NTAPI
2119);
2120
2123NTAPI
2127);
2128
2130LONG
2131NTAPI
2133 PCUNICODE_STRING String1,
2136);
2137
2140LONG
2141NTAPI
2148);
2149
2151VOID
2152NTAPI
2156);
2157
2159BOOLEAN
2160NTAPI
2164);
2165
2166#ifdef NTOS_MODE_USER
2167
2170NTAPI
2172 _Inout_ PUNICODE_STRING UniDest,
2173 _In_ PCUNICODE_STRING UniSource,
2175);
2176
2179NTAPI
2184);
2185
2188NTAPI
2191 _In_ PCUNICODE_STRING SearchString,
2194);
2195
2196//
2197// Memory Functions
2198//
2199#if defined(_M_AMD64)
2200
2202VOID
2206 _In_ ULONG Pattern)
2207{
2209 if ((Length /= 4) != 0) {
2210 if (((ULONG64)Address & 4) != 0) {
2211 *Address = Pattern;
2212 if ((Length -= 1) == 0) {
2213 return;
2214 }
2215 Address += 1;
2216 }
2217 __stosq((PULONG64)(Address), Pattern | ((ULONG64)Pattern << 32), Length / 2);
2218 if ((Length & 1) != 0) Address[Length - 1] = Pattern;
2219 }
2220 return;
2221}
2222
2223#define RtlFillMemoryUlonglong(Destination, Length, Pattern) \
2224 __stosq((PULONG64)(Destination), Pattern, (Length) / 8)
2225
2226#else
2227
2229VOID
2230NTAPI
2234 _In_ ULONG Pattern
2235);
2236
2238VOID
2239NTAPI
2243 _In_ ULONGLONG Pattern
2244);
2245
2246#endif
2247
2250NTAPI
2255);
2256
2258SIZE_T
2259NTAPI
2263 _In_ ULONG Pattern
2264);
2265
2266#ifndef RtlEqualMemory
2267#define RtlEqualMemory(Destination, Source, Length) \
2268 (!memcmp(Destination, Source, Length))
2269#endif
2270
2271#define RtlCopyBytes RtlCopyMemory
2272#define RtlFillBytes RtlFillMemory
2273#define RtlZeroBytes RtlZeroMemory
2274
2275#endif
2276
2278BOOLEAN
2279NTAPI
2281 PCUNICODE_STRING String1,
2284);
2285
2288VOID
2289NTAPI
2293);
2294
2296VOID
2297NTAPI
2300);
2301
2304NTAPI
2310);
2311
2321VOID
2322NTAPI
2326);
2327
2337VOID
2338NTAPI
2342);
2343
2347NTAPI
2351);
2352
2354BOOLEAN
2355NTAPI
2358 _In_ INT Size,
2360);
2361
2365BOOLEAN
2366NTAPI
2368 _In_ const STRING *String1,
2371);
2372
2376BOOLEAN
2377NTAPI
2379 _In_ PCUNICODE_STRING String1,
2382);
2383
2386VOID
2387NTAPI
2391);
2392
2396LONG
2397NTAPI
2399 _In_ const STRING *String1,
2402);
2403
2405VOID
2406NTAPI
2410);
2411
2415BOOLEAN
2416NTAPI
2418 _In_ const STRING *String1,
2421);
2422
2426NTAPI
2430);
2431
2436NTAPI
2443);
2444
2448NTAPI
2453);
2454
2457NTAPI
2461);
2462
2463#define RTL_SKIP_BUFFER_COPY 0x00000001
2464
2467NTAPI
2472);
2473
2474#ifdef NTOS_MODE_USER
2475
2477VOID
2478RtlInitBuffer(
2482)
2483{
2484 Buffer->Buffer = Buffer->StaticBuffer = Data;
2485 Buffer->Size = Buffer->StaticSize = DataSize;
2486 Buffer->ReservedForAllocatedSize = 0;
2487 Buffer->ReservedForIMalloc = NULL;
2488}
2489
2492RtlEnsureBufferSize(
2496)
2497{
2498 if (Buffer && RequiredSize <= Buffer->Size)
2499 return STATUS_SUCCESS;
2501}
2502
2504VOID
2505RtlFreeBuffer(
2507)
2508{
2509 if (Buffer->Buffer != Buffer->StaticBuffer && Buffer->Buffer)
2510 RtlFreeHeap(RtlGetProcessHeap(), 0, Buffer->Buffer);
2511 Buffer->Buffer = Buffer->StaticBuffer;
2512 Buffer->Size = Buffer->StaticSize;
2513}
2514
2516VOID
2517NTAPI
2521);
2522
2524VOID
2525NTAPI
2527 _In_ UCHAR Hash,
2529);
2530
2531#endif /* NTOS_MODE_USER */
2532
2533//
2534// Ansi String Functions
2535//
2538VOID
2539NTAPI
2541 _Inout_ _At_(AnsiString->Buffer, __drv_freesMem(Mem))
2543);
2544
2547VOID
2548NTAPI
2552);
2553
2557NTAPI
2561);
2562
2563//
2564// OEM String Functions
2565//
2568VOID
2569NTAPI
2571 _Inout_ _At_(OemString->Buffer, __drv_freesMem(Mem))
2573);
2574
2575//
2576// MultiByte->Unicode String Functions
2577//
2581NTAPI
2588);
2589
2593NTAPI
2598);
2599
2600//
2601// Atom Functions
2602//
2605NTAPI
2607 _In_ PRTL_ATOM_TABLE AtomTable,
2608 _In_ PWSTR AtomName,
2610);
2611
2614NTAPI
2617 _Inout_ PRTL_ATOM_TABLE *AtomTable
2618);
2619
2622NTAPI
2624 _In_ PRTL_ATOM_TABLE AtomTable,
2626);
2627
2630NTAPI
2632
2635NTAPI
2637 _In_ PRTL_ATOM_TABLE AtomTable,
2639 _Out_opt_ PULONG RefCount,
2641 _Out_opt_z_bytecap_(*NameLength) PWSTR AtomName,
2642 _Inout_opt_ PULONG NameLength
2643);
2644
2647NTAPI
2649 _In_ PRTL_ATOM_TABLE AtomTable,
2651);
2652
2655NTAPI
2657 _In_ PRTL_ATOM_TABLE AtomTable,
2658 _In_ PWSTR AtomName,
2660);
2661
2662//
2663// Process Management Functions
2664//
2666PPEB
2667NTAPI
2669 VOID
2670);
2671
2673VOID
2674NTAPI
2676
2679NTAPI
2681 _Out_ PRTL_USER_PROCESS_PARAMETERS *ProcessParameters,
2682 _In_ PUNICODE_STRING ImagePathName,
2685 _In_opt_ PUNICODE_STRING CommandLine,
2687 _In_opt_ PUNICODE_STRING WindowTitle,
2688 _In_opt_ PUNICODE_STRING DesktopInfo,
2689 _In_opt_ PUNICODE_STRING ShellInfo,
2690 _In_opt_ PUNICODE_STRING RuntimeInfo
2691);
2692
2695NTAPI
2697 _In_ PUNICODE_STRING ImageFileName,
2699 _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters,
2700 _In_opt_ PSECURITY_DESCRIPTOR ProcessSecutityDescriptor,
2701 _In_opt_ PSECURITY_DESCRIPTOR ThreadSecurityDescriptor,
2702 _In_opt_ HANDLE ParentProcess,
2704 _In_opt_ HANDLE DebugPort,
2705 _In_opt_ HANDLE ExceptionPort,
2707);
2708
2709#if (NTDDI_VERSION >= NTDDI_WIN7)
2712NTAPI
2714 _In_ PVOID ThreadContext,
2715 _Out_ HANDLE *OutThreadHandle,
2721 _Reserved_ PVOID Reserved6,
2723 _Reserved_ PVOID Reserved8
2724);
2725#else
2728NTAPI
2732 _In_ BOOLEAN CreateSuspended,
2733 _In_ ULONG StackZeroBits,
2734 _In_ SIZE_T StackReserve,
2735 _In_ SIZE_T StackCommit,
2736 _In_ PTHREAD_START_ROUTINE StartAddress,
2738 _Out_opt_ PHANDLE ThreadHandle,
2740);
2741#endif
2742
2745NTAPI
2747 _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters);
2748
2751NTAPI
2753 _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters);
2754
2756VOID
2757NTAPI
2760
2762VOID
2763NTAPI
2766 _Out_ PCONTEXT ThreadContext,
2767 _In_opt_ PVOID ThreadStartParam,
2768 _In_ PTHREAD_START_ROUTINE ThreadStartAddress,
2769 _In_ PINITIAL_TEB InitialTeb
2770);
2771
2772#ifdef _M_AMD64
2773typedef struct _WOW64_CONTEXT *PWOW64_CONTEXT;
2774
2777NTAPI
2778RtlWow64GetThreadContext(
2779 _In_ HANDLE ThreadHandle,
2780 _Inout_ PWOW64_CONTEXT ThreadContext
2781);
2782
2783
2786NTAPI
2787RtlWow64SetThreadContext(
2788 _In_ HANDLE ThreadHandle,
2789 _In_ PWOW64_CONTEXT ThreadContext
2790);
2791#endif
2792
2794BOOLEAN
2795NTAPI
2797
2800NTAPI
2802 _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters);
2803
2805VOID
2806NTAPI
2808
2811NTAPI
2815 _In_ PVOID CallSite,
2816 _In_ ULONG ArgumentCount,
2817 _In_ PULONG Arguments,
2818 _In_ BOOLEAN PassContext,
2819 _In_ BOOLEAN AlreadySuspended
2820);
2821
2824__cdecl
2826 _In_ BOOLEAN NewValue,
2827 _Out_opt_ PBOOLEAN OldValue,
2828 _In_ BOOLEAN NeedBreaks
2829);
2830
2833__cdecl
2835 _In_ BOOLEAN NewValue,
2836 _Out_opt_ PBOOLEAN OldValue,
2837 _In_ BOOLEAN NeedBreaks
2838);
2839
2841ULONG
2842NTAPI
2844 VOID
2845);
2846
2847
2848//
2849// Thread Pool Functions
2850//
2851//
2853NTAPI
2855 _In_ PRTL_START_POOL_THREAD StartPoolThread,
2856 _In_ PRTL_EXIT_POOL_THREAD ExitPoolThread
2857);
2858
2861NTAPI
2863 _In_ HANDLE hWaitHandle,
2864 _In_opt_ HANDLE hCompletionEvent
2865);
2866
2869NTAPI
2871 _In_ HANDLE hWaitHandle
2872);
2873
2876NTAPI
2881);
2882
2885NTAPI
2890);
2891
2894NTAPI
2896 _In_ PHANDLE phNewWaitObject,
2897 _In_ HANDLE hObject,
2899 _In_ PVOID pvContext,
2900 _In_ ULONG ulMilliseconds,
2901 _In_ ULONG ulFlags
2902);
2903
2904//
2905// Environment/Path Functions
2906//
2909NTAPI
2911 _In_ BOOLEAN Inherit,
2913);
2914
2917NTAPI
2919 _In_ PUNICODE_STRING DllName,
2920 _Inout_ PUNICODE_STRING RealName,
2921 _Inout_ PUNICODE_STRING LocalName
2922);
2923
2925VOID
2926NTAPI
2929);
2930
2932BOOLEAN
2933NTAPI
2936);
2937
2940NTAPI
2943);
2944
2946ULONG
2947NTAPI
2954 _Out_ PWSTR *PartName
2955);
2956
2959NTAPI
2962 _In_ PUNICODE_STRING PathString,
2963 _In_ PUNICODE_STRING FileNameString,
2964 _In_ PUNICODE_STRING ExtensionString,
2965 _In_ PUNICODE_STRING CallerBuffer,
2967 _Out_opt_ PUNICODE_STRING* FullNameOut,
2968 _Out_opt_ PSIZE_T FilePartSize,
2970);
2971
2973BOOLEAN
2974NTAPI
2976 _In_opt_z_ PCWSTR DosPathName,
2977 _Out_ PUNICODE_STRING NtPathName,
2978 _Out_opt_ PCWSTR *NtFileNamePart,
2979 _Out_opt_ PRTL_RELATIVE_NAME_U DirectoryInfo
2980);
2981
2982
2983#define RTL_UNCHANGED_UNK_PATH 1
2984#define RTL_CONVERTED_UNC_PATH 2
2985#define RTL_CONVERTED_NT_PATH 3
2986#define RTL_UNCHANGED_DOS_PATH 4
2987
2990NTAPI
2996);
2997
2998
3000BOOLEAN
3001NTAPI
3004 _Out_ PUNICODE_STRING NtName,
3005 _Out_ PCWSTR *PartName,
3006 _Out_ PRTL_RELATIVE_NAME_U RelativeName
3007);
3008
3012NTAPI
3018);
3019
3021ULONG
3022NTAPI
3026);
3027
3029ULONG
3030NTAPI
3033 _In_ ULONG Size,
3036);
3037
3038#if (NTDDI_VERSION >= NTDDI_WIN7)
3041NTAPI
3046 _Out_opt_ PWSTR *FilePart,
3047 _Out_opt_ RTL_PATH_TYPE *InputPathType
3048 );
3049#endif
3050
3052NTAPI
3058 _Out_opt_ PSIZE_T FilePartSize,
3062);
3063
3066NTAPI
3069 _In_ PCUNICODE_STRING PathString,
3071);
3072
3074ULONG
3075NTAPI
3077 VOID
3078);
3079
3081ULONG
3082NTAPI
3085);
3086
3088ULONG
3089NTAPI
3092);
3093
3097BOOLEAN
3098NTAPI
3103);
3104
3107NTAPI
3112);
3113
3114VOID
3115NTAPI
3117 _In_ PRTL_RELATIVE_NAME_U RelativeName
3118);
3119
3122NTAPI
3125);
3126
3129NTAPI
3134);
3135
3136//
3137// Critical Section/Resource Functions
3138//
3141NTAPI
3144);
3145
3148NTAPI
3151);
3152
3155NTAPI
3158);
3159
3162NTAPI
3165 _In_ ULONG SpinCount
3166);
3167
3169ULONG
3170NTAPI
3173);
3174
3176ULONG
3177NTAPI
3180);
3181
3184NTAPI
3187);
3188
3190BOOLEAN
3191NTAPI
3194);
3195
3197VOID
3198NTAPI
3201);
3202
3205NTAPI
3208);
3209
3211BOOLEAN
3212NTAPI
3216);
3217
3219BOOLEAN
3220NTAPI
3224);
3225
3227VOID
3228NTAPI
3231);
3232
3234VOID
3235NTAPI
3238);
3239
3241VOID
3242NTAPI
3245);
3246
3248VOID
3249NTAPI
3252);
3253
3255VOID
3256NTAPI
3259);
3260
3262VOID
3263NTAPI
3266);
3267
3268//
3269// Compression Functions
3270//
3271NTSYSAPI //NT_RTL_COMPRESS_API
3273NTAPI
3275 _In_ USHORT CompressionFormatAndEngine,
3280 _In_ ULONG UncompressedChunkSize,
3281 _Out_ PULONG FinalCompressedSize,
3283);
3284
3286NTSYSAPI //NT_RTL_COMPRESS_API
3288NTAPI
3290 _In_ USHORT CompressionFormat,
3296);
3297
3300NTAPI
3302 _In_ USHORT CompressionFormatAndEngine,
3303 _Out_ PULONG CompressBufferWorkSpaceSize,
3304 _Out_ PULONG CompressFragmentWorkSpaceSize
3305);
3306
3307//
3308// Frame Functions
3309//
3311VOID
3312NTAPI
3315);
3316
3318VOID
3319NTAPI
3322);
3323
3326NTAPI
3328 VOID
3329);
3330
3331//
3332// Debug Info Functions
3333//
3336NTAPI
3338 _In_ ULONG Size,
3339 _In_ BOOLEAN EventPair
3340);
3341
3344NTAPI
3346
3349NTAPI
3352 _In_ ULONG DebugInfoClassMask,
3354);
3355
3356//
3357// Bitmap Functions
3358//
3359#ifdef NTOS_MODE_USER
3360
3362BOOLEAN
3363NTAPI
3365 _In_ PRTL_BITMAP BitMapHeader,
3368);
3369
3371BOOLEAN
3372NTAPI
3374 _In_ PRTL_BITMAP BitMapHeader,
3377);
3378
3380VOID
3381NTAPI
3383 _In_ PRTL_BITMAP BitMapHeader
3384);
3385
3387VOID
3388NTAPI
3390 _In_ PRTL_BITMAP BitMapHeader,
3391 _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber
3392);
3393
3395VOID
3396NTAPI
3398 _In_ PRTL_BITMAP BitMapHeader,
3399 _In_range_(0, BitMapHeader->SizeOfBitMap - NumberToClear) ULONG StartingIndex,
3400 _In_range_(0, BitMapHeader->SizeOfBitMap - StartingIndex) ULONG NumberToClear
3401);
3402
3404ULONG
3405NTAPI
3407 _In_ PRTL_BITMAP BitMapHeader,
3410);
3411
3413ULONG
3414NTAPI
3416 _In_ PRTL_BITMAP BitMapHeader,
3419);
3420
3422ULONG
3423NTAPI
3425 _In_ PRTL_BITMAP BitMapHeader,
3427);
3428
3430ULONG
3431NTAPI
3433 _In_ PRTL_BITMAP BitMapHeader,
3434 _Out_writes_to_(SizeOfRunArray, return) PRTL_BITMAP_RUN RunArray,
3435 _In_range_(>, 0) ULONG SizeOfRunArray,
3436 _In_ BOOLEAN LocateLongestRuns
3437);
3438
3440ULONG
3441NTAPI
3443 _In_ PRTL_BITMAP BitMapHeader,
3444 _In_ ULONG FromIndex,
3445 _Out_ PULONG StartingRunIndex
3446);
3447
3449CCHAR
3450NTAPI
3453);
3454
3456ULONG
3457NTAPI
3459 _In_ PRTL_BITMAP BitMapHeader,
3461);
3462
3464CCHAR
3465NTAPI
3468);
3469
3471ULONG
3472NTAPI
3474 _In_ PRTL_BITMAP BitMapHeader,
3475 _In_ ULONG FromIndex,
3476 _Out_ PULONG StartingRunIndex
3477);
3478
3480ULONG
3481NTAPI
3483 _In_ PRTL_BITMAP BitMapHeader,
3484 _In_ ULONG FromIndex,
3485 _Out_ PULONG StartingRunIndex
3486);
3487
3489ULONG
3490NTAPI
3492 _In_ PRTL_BITMAP BitMapHeader,
3495);
3496
3498ULONG
3499NTAPI
3501 _In_ PRTL_BITMAP BitMapHeader,
3504);
3505
3506#ifdef __REACTOS__ // ReactOS improvement
3507_At_(BitMapHeader->SizeOfBitMap, _Post_equal_to_(SizeOfBitMap))
3508_At_(BitMapHeader->Buffer, _Post_equal_to_(BitMapBuffer))
3509#endif
3511VOID
3512NTAPI
3514 _Out_ PRTL_BITMAP BitMapHeader,
3515 _In_opt_ __drv_aliasesMem PULONG BitMapBuffer,
3516 _In_opt_ ULONG SizeOfBitMap
3517);
3518
3520ULONG
3521NTAPI
3523 _In_ PRTL_BITMAP BitMapHeader
3524);
3525
3527ULONG
3528NTAPI
3530 _In_ PRTL_BITMAP BitMapHeader
3531);
3532
3534VOID
3535NTAPI
3536RtlSetBit(
3537 _In_ PRTL_BITMAP BitMapHeader,
3538 _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber
3539);
3540
3542VOID
3543NTAPI
3545 _In_ PRTL_BITMAP BitMapHeader,
3546 _In_range_(0, BitMapHeader->SizeOfBitMap - NumberToSet) ULONG StartingIndex,
3547 _In_range_(0, BitMapHeader->SizeOfBitMap - StartingIndex) ULONG NumberToSet
3548);
3549
3551VOID
3552NTAPI
3554 _In_ PRTL_BITMAP BitMapHeader
3555);
3556
3559BOOLEAN
3560NTAPI
3562 _In_ PRTL_BITMAP BitMapHeader,
3563 _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber
3564);
3565
3566#if defined(_M_AMD64)
3569BOOLEAN
3571 _In_ PRTL_BITMAP BitMapHeader,
3572 _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitPosition)
3573{
3574 return BitTest64((LONG64 CONST*)BitMapHeader->Buffer, (LONG64)BitPosition);
3575}
3576#else
3577#define RtlCheckBit(BMH,BP) (((((PLONG)(BMH)->Buffer)[(BP)/32]) >> ((BP)%32)) & 0x1)
3578#endif /* defined(_M_AMD64) */
3579
3580#endif // NTOS_MODE_USER
3581
3582
3583//
3584// Timer Functions
3585//
3588NTAPI
3590 _In_ HANDLE TimerQueue,
3591 _In_ PHANDLE phNewTimer,
3597);
3598
3601NTAPI
3602RtlCreateTimerQueue(PHANDLE TimerQueue);
3603
3606NTAPI
3608 _In_ HANDLE TimerQueue,
3610 _In_ HANDLE CompletionEvent
3611);
3612
3615NTAPI
3617 _In_ HANDLE TimerQueue,
3621);
3622
3625NTAPI
3627 _In_ HANDLE TimerQueue,
3628 _In_opt_ HANDLE CompletionEvent
3629);
3630
3633NTAPI
3634RtlDeleteTimerQueue(HANDLE TimerQueue);
3635
3636//
3637// SList functions
3638//
3642 _Inout_ PSLIST_HEADER ListHead,
3646);
3647
3648//
3649// Range List functions
3650//
3652VOID
3653NTAPI
3655 _Out_ PRTL_RANGE_LIST RangeList
3656);
3657
3659VOID
3660NTAPI
3662 _In_ PRTL_RANGE_LIST RangeList
3663);
3664
3667NTAPI
3669 _Out_ PRTL_RANGE_LIST CopyRangeList,
3670 _In_ PRTL_RANGE_LIST RangeList
3671);
3672
3675NTAPI
3677 _Out_ PRTL_RANGE_LIST MergedRangeList,
3678 _In_ PRTL_RANGE_LIST RangeList1,
3679 _In_ PRTL_RANGE_LIST RangeList2,
3681);
3682
3685NTAPI
3687 _Out_ PRTL_RANGE_LIST InvertedRangeList,
3688 _In_ PRTL_RANGE_LIST RangeList
3689);
3690
3693NTAPI
3695 _Inout_ PRTL_RANGE_LIST RangeList,
3697 _In_ ULONGLONG End,
3702);
3703
3706NTAPI
3708 _Inout_ PRTL_RANGE_LIST RangeList,
3710 _In_ ULONGLONG End,
3712);
3713
3716NTAPI
3718 _Inout_ PRTL_RANGE_LIST RangeList,
3720);
3721
3724NTAPI
3726 _In_ PRTL_RANGE_LIST RangeList,
3727 _In_ ULONGLONG Minimum,
3728 _In_ ULONGLONG Maximum,
3732 _In_ UCHAR AttributeAvailableMask,
3736);
3737
3740NTAPI
3742 _In_ PRTL_RANGE_LIST RangeList,
3744 _In_ ULONGLONG End,
3746 _In_ UCHAR AttributeAvailableMask,
3749 _Out_ PBOOLEAN Available
3750);
3751
3754NTAPI
3756 _In_ PRTL_RANGE_LIST RangeList,
3759);
3760
3763NTAPI
3767 _In_ BOOLEAN MoveForwards
3768);
3769
3770//
3771// Debug Functions
3772//
3773ULONG
3774__cdecl
3777 ...
3778);
3779
3781ULONG
3782__cdecl
3787 ...
3788);
3789
3791ULONG
3792NTAPI
3794 _In_z_ PCCH Prompt,
3797);
3798
3799#undef DbgBreakPoint
3800VOID
3801NTAPI
3803 VOID
3804);
3805
3806VOID
3807NTAPI
3810 _In_ PVOID Base,
3812);
3813
3814VOID
3815NTAPI
3818 _In_ PVOID Base,
3820);
3821
3822VOID
3823NTAPI
3825 _In_ PCCH Name,
3827);
3828
3829//
3830// Generic Table Functions
3831//
3832#if defined(NTOS_MODE_USER) || defined(_NTIFS_)
3834PVOID
3835NTAPI
3840 _Out_opt_ PBOOLEAN NewElement
3841);
3842
3844PVOID
3845NTAPI
3850 _Out_opt_ PBOOLEAN NewElement,
3851 _In_ PVOID NodeOrParent,
3852 _In_ TABLE_SEARCH_RESULT SearchResult
3853);
3854
3856BOOLEAN
3857NTAPI
3860);
3861
3863PVOID
3864NTAPI
3868 _Out_ PVOID *NodeOrParent,
3869 _Out_ TABLE_SEARCH_RESULT *SearchResult
3870);
3871#endif
3872
3873//
3874// Handle Table Functions
3875//
3878NTAPI
3882);
3883
3885VOID
3886NTAPI
3889
3891BOOLEAN
3892NTAPI
3896);
3897
3899VOID
3900NTAPI
3903 _In_ ULONG HandleSize,
3905);
3906
3908BOOLEAN
3909NTAPI
3913);
3914
3915_Success_(return!=FALSE)
3917BOOLEAN
3918NTAPI
3923);
3924
3925//
3926// PE Functions
3927//
3930NTAPI
3933 _In_ ULONG Type,
3934 _In_ ULONG Language,
3935 _In_ ULONG MessageId,
3936 _Out_ PMESSAGE_RESOURCE_ENTRY *MessageResourceEntry
3937);
3938
3940ULONG
3941NTAPI
3943
3944_Success_(return!=NULL)
3946PVOID
3947NTAPI
3953);
3954
3956PVOID
3957NTAPI
3959 _In_ PIMAGE_NT_HEADERS NtHeader,
3961 _In_ ULONG Rva,
3962 _Inout_opt_ PIMAGE_SECTION_HEADER *SectionHeader
3963);
3964
3967NTAPI
3970
3973NTAPI
3978 _Out_ PIMAGE_NT_HEADERS *NtHeader
3979);
3980
3983NTAPI
3985 _In_ PIMAGE_NT_HEADERS NtHeader,
3987 _In_ ULONG Rva
3988);
3989
3990ULONG
3991NTAPI
3994 _In_ LONGLONG AdditionalBias,
3995 _In_opt_ PCSTR LoaderName,
3997 _In_ ULONG Conflict,
3999);
4000
4001//
4002// Activation Context Functions
4003//
4004#ifdef NTOS_MODE_USER
4007NTAPI
4010 _In_ PTEB Teb,
4013);
4014
4017NTAPI
4022);
4023
4025VOID
4026NTAPI
4029);
4030
4034RtlActivateActivationContextUnsafeFast(
4035 _In_ PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED Frame,
4037);
4038
4041NTAPI
4042RtlAllocateActivationContextStack(
4044);
4045
4048NTAPI
4051 _In_ PACTIVATION_CONTEXT_DATA ActivationContextData,
4052 _In_ ULONG ExtraBytes,
4053 _In_ PVOID NotificationRoutine,
4056);
4057
4060NTAPI
4063);
4064
4066VOID
4067NTAPI
4070);
4071
4074NTAPI
4077 _In_ ULONG_PTR ulCookie
4078);
4079
4081VOID
4082NTAPI
4083RtlFreeActivationContextStack(
4085);
4086
4088VOID
4089NTAPI
4091
4095RtlDeactivateActivationContextUnsafeFast(
4096 _In_ PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED Frame
4097);
4098
4101NTAPI
4104 _In_ PUNICODE_STRING OriginalName,
4109 _In_ PULONG NewFlags,
4110 _In_ PSIZE_T FileNameSize,
4112);
4113
4116NTAPI
4119 _In_ const GUID *ExtensionGuid,
4120 _In_ ULONG SectionType,
4121 _In_ const UNICODE_STRING *SectionName,
4122 _Inout_ PVOID ReturnedData
4123);
4124
4127NTAPI
4131 _In_opt_ PVOID pvSubInstance,
4132 _In_ ULONG ulInfoClass,
4133 _Out_bytecap_(cbBuffer) PVOID pvBuffer,
4134 _In_opt_ SIZE_T cbBuffer,
4135 _Out_opt_ SIZE_T *pcbWrittenOrRequired
4136);
4137
4140NTAPI
4141RtlQueryInformationActiveActivationContext(
4142 _In_ ULONG ulInfoClass,
4143 _Out_bytecap_(cbBuffer) PVOID pvBuffer,
4144 _In_opt_ SIZE_T cbBuffer,
4145 _Out_opt_ SIZE_T *pcbWrittenOrRequired
4146);
4147
4150NTAPI
4153);
4154
4155//
4156// WOW64 Functions
4157//
4160NTAPI
4162 _In_ BOOLEAN Wow64FsEnableRedirection
4163);
4164
4167NTAPI
4169 _In_ PVOID Wow64FsEnableRedirection,
4170 _Out_ PVOID *OldFsRedirectionLevel
4171);
4172
4173#endif
4174
4175//
4176// Registry Functions
4177//
4182NTAPI
4184 _In_ ULONG RelativeTo,
4186);
4187
4190NTAPI
4192 _In_ ULONG RelativeTo,
4194);
4195
4198NTAPI
4200 _Out_ _At_(KeyPath->Buffer, __drv_allocatesMem(Mem) _Post_bytecap_(KeyPath->MaximumLength) _Post_bytecount_(KeyPath->Length))
4201 PUNICODE_STRING KeyPath
4202);
4203
4206NTAPI
4210);
4211
4215NTAPI
4217 _In_ ULONG RelativeTo,
4219 _Inout_ _At_(*(*QueryTable).EntryContext, _Pre_unknown_)
4223);
4224
4228NTAPI
4230 _In_ ULONG RelativeTo,
4236);
4237
4238#ifdef NTOS_MODE_USER
4241NTAPI
4249);
4250
4253NTAPI
4259);
4260
4263NTAPI
4266);
4267
4270NTAPI
4276);
4277
4280NTAPI
4287);
4288
4291NTAPI
4294 _In_ ULONG Type,
4295 _In_ PVOID Data,
4297);
4298#endif
4299
4300//
4301// NLS Functions
4302//
4304VOID
4305NTAPI
4309);
4310
4312VOID
4313NTAPI
4315 _In_ PUSHORT AnsiTableBase,
4316 _In_ PUSHORT OemTableBase,
4317 _In_ PUSHORT CaseTableBase,
4318 _Out_ PNLSTABLEINFO NlsTable
4319);
4320
4323VOID
4324NTAPI
4326 _In_ PUSHORT TableBase,
4328);
4329
4331VOID
4332NTAPI
4334 _In_ PNLSTABLEINFO NlsTable);
4335
4336#if defined(NTOS_MODE_USER) && !defined(NO_RTL_INLINES)
4337
4338//
4339// Misc conversion functions
4340//
4341static __inline
4345 _In_ LONG SignedInteger
4346)
4347{
4349
4350 Result.QuadPart = SignedInteger;
4351 return Result;
4352}
4353
4354static __inline
4358 _In_ LONG Multiplicand,
4359 _In_ LONG Multiplier
4360)
4361{
4362 LARGE_INTEGER Product;
4363
4364 Product.QuadPart = (LONGLONG)Multiplicand * (ULONGLONG)Multiplier;
4365 return Product;
4366}
4367
4368static __inline
4369ULONG
4372 _In_ ULARGE_INTEGER Dividend,
4375)
4376{
4377 ULONG Quotient;
4378
4379 Quotient = (ULONG)(Dividend.QuadPart / Divisor);
4380 if (Remainder) {
4381 *Remainder = (ULONG)(Dividend.QuadPart % Divisor);
4382 }
4383
4384 return Quotient;
4385}
4386
4387static __inline
4391 _In_ ULONG Multiplicand,
4392 _In_ ULONG Multiplier
4393)
4394{
4395 LARGE_INTEGER Product;
4396
4397 Product.QuadPart = (ULONGLONG)Multiplicand * (ULONGLONG)Multiplier;
4398 return Product;
4399}
4400
4401#if defined(_AMD64_) || defined(_IA64_)
4402static __inline
4406 _In_ LARGE_INTEGER Dividend,
4409{
4411 ret.QuadPart = (ULONG64)Dividend.QuadPart / Divisor;
4412 if (Remainder)
4413 *Remainder = (ULONG)(Dividend.QuadPart % Divisor);
4414 return ret;
4415}
4416
4417#else
4420NTAPI
4422 _In_ LARGE_INTEGER Dividend,
4425);
4426
4427#endif /* defined(_AMD64_) || defined(_IA64_) */
4428
4429#endif
4430
4431
4433ULONG
4434NTAPI
4436 _In_ PULONG Seed
4437);
4438
4440ULONG
4441NTAPI
4443 _Inout_ PULONG Seed
4444);
4445
4447ULONG
4448NTAPI
4450 _In_ ULONG InitialCrc,
4451 _In_ const UCHAR *Buffer,
4453);
4454
4455//
4456// Network Functions
4457//
4459PSTR
4460NTAPI
4462 _In_ const struct in_addr *Addr,
4463 _Out_writes_(16) PCHAR S
4464);
4465
4467PWSTR
4468NTAPI
4470 _In_ const struct in_addr *Addr,
4472);
4473
4476NTAPI
4478 _In_ const struct in_addr *Address,
4480 _Out_writes_to_(*AddressStringLength, *AddressStringLength) PCHAR AddressString,
4481 _Inout_ PULONG AddressStringLength
4482);
4483
4485NTAPI
4487 _In_ const struct in_addr *Address,
4489 _Out_writes_to_(*AddressStringLength, *AddressStringLength) PWCHAR AddressString,
4490 _Inout_ PULONG AddressStringLength
4491);
4492
4495NTAPI
4498 _In_ BOOLEAN Strict,
4499 _Out_ PCSTR *Terminator,
4500 _Out_ struct in_addr *Addr
4501);
4502
4505NTAPI
4508 _In_ BOOLEAN Strict,
4509 _Out_ PCWSTR *Terminator,
4510 _Out_ struct in_addr *Addr
4511);
4512
4515NTAPI
4517 _In_ PCSTR AddressString,
4518 _In_ BOOLEAN Strict,
4519 _Out_ struct in_addr *Address,
4521);
4522
4525NTAPI
4527 _In_ PCWSTR AddressString,
4528 _In_ BOOLEAN Strict,
4529 _Out_ struct in_addr *Address,
4531);
4532
4534PSTR
4535NTAPI
4537 _In_ const struct in6_addr *Addr,
4538 _Out_writes_(46) PSTR S
4539);
4540
4542PWSTR
4543NTAPI
4545 _In_ const struct in6_addr *Addr,
4546 _Out_writes_(46) PWSTR S
4547);
4548
4551NTAPI
4553 _In_ const struct in6_addr *Address,
4554 _In_ ULONG ScopeId,
4556 _Out_writes_to_(*AddressStringLength, *AddressStringLength) PSTR AddressString,
4557 _Inout_ PULONG AddressStringLength
4558);
4559
4562NTAPI
4564 _In_ const struct in6_addr *Address,
4565 _In_ ULONG ScopeId,
4567 _Out_writes_to_(*AddressStringLength, *AddressStringLength) PWCHAR AddressString,
4568 _Inout_ PULONG AddressStringLength
4569);
4570
4573NTAPI
4576 _Out_ PCSTR *Terminator,
4577 _Out_ struct in6_addr *Addr
4578);
4579
4582NTAPI
4585 _Out_ PCWSTR *Terminator,
4586 _Out_ struct in6_addr *Addr
4587);
4588
4591NTAPI
4593 _In_ PCSTR AddressString,
4594 _Out_ struct in6_addr *Address,
4595 _Out_ PULONG ScopeId,
4597);
4598
4601NTAPI
4603 _In_ PCWSTR AddressString,
4604 _Out_ struct in6_addr *Address,
4605 _Out_ PULONG ScopeId,
4607);
4608
4609
4610//
4611// Time Functions
4612//
4614BOOLEAN
4615NTAPI
4617 _In_ PTIME_FIELDS CutoverTimeFields,
4618 _Out_ PLARGE_INTEGER SystemTime,
4619 _In_ PLARGE_INTEGER CurrentTime,
4620 _In_ BOOLEAN ThisYearsCutoverOnly);
4621
4624NTAPI
4626 _Out_ PRTL_TIME_ZONE_INFORMATION TimeZoneInformation);
4627
4629VOID
4630NTAPI
4632 _In_ ULONG SecondsSince1970,
4634);
4635
4638NTAPI
4640 _In_ PRTL_TIME_ZONE_INFORMATION TimeZoneInformation);
4641
4642_Success_(return != FALSE)
4644BOOLEAN
4645NTAPI
4649);
4650
4651_Success_(return != FALSE)
4653BOOLEAN
4654NTAPI
4658);
4659
4661VOID
4662NTAPI
4666);
4667
4670NTAPI
4672 _In_ PLARGE_INTEGER SystemTime,
4673 _Out_ PLARGE_INTEGER LocalTime
4674);
4675
4676//
4677// Version Functions
4678//
4683NTAPI
4688);
4689
4693NTAPI
4695 _Out_
4696 _At_(lpVersionInformation->dwOSVersionInfoSize, _Pre_ _Valid_)
4697 _When_(lpVersionInformation->dwOSVersionInfoSize == sizeof(RTL_OSVERSIONINFOEXW),
4698 _At_((PRTL_OSVERSIONINFOEXW)lpVersionInformation, _Out_))
4699 PRTL_OSVERSIONINFOW lpVersionInformation
4700);
4701
4704BOOLEAN
4705NTAPI
4707
4708#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
4709//
4710// Synchronization functions
4711//
4713VOID
4714NTAPI
4716 _Out_ PRTL_CONDITION_VARIABLE ConditionVariable);
4717
4719VOID
4720NTAPI
4722 _Inout_ PRTL_CONDITION_VARIABLE ConditionVariable);
4723
4725VOID
4726NTAPI
4728 _Inout_ PRTL_CONDITION_VARIABLE ConditionVariable);
4729
4732NTAPI
4734 _Inout_ PRTL_CONDITION_VARIABLE ConditionVariable,
4736 _In_opt_ PLARGE_INTEGER TimeOut);
4737
4740NTAPI
4742 _Inout_ PRTL_CONDITION_VARIABLE ConditionVariable,
4743 _Inout_ PRTL_SRWLOCK SRWLock,
4744 _In_opt_ PLARGE_INTEGER TimeOut,
4745 _In_ ULONG Flags);
4746#endif
4747
4748//
4749// Secure Memory Functions
4750//
4751#ifdef NTOS_MODE_USER
4754NTAPI
4756 _In_ PRTL_SECURE_MEMORY_CACHE_CALLBACK Callback);
4757
4759BOOLEAN
4760NTAPI
4762 _In_ PVOID MemoryCache,
4763 _In_opt_ SIZE_T MemoryLength
4764);
4765#endif
4766
4767//
4768// Boot Status Data Functions
4769//
4770#ifdef NTOS_MODE_USER
4773NTAPI
4775 VOID
4776);
4777
4780NTAPI
4783 _In_ BOOLEAN WriteMode,
4784 _In_ RTL_BSD_ITEM_TYPE DataClass,
4788);
4789
4792NTAPI
4795);
4796
4799NTAPI
4802);
4803#endif
4804
4805#ifdef NTOS_MODE_USER
4809NTAPI
4812 _Out_ GUID *Guid);
4813
4817NTAPI
4822
4825NTAPI
4829 _In_ ULONG ImportTableHashRevision
4830);
4831#endif
4832
4833//
4834// MemoryStream functions
4835//
4836#ifdef NTOS_MODE_USER
4837
4839VOID
4840NTAPI
4842 _Out_ PRTL_MEMORY_STREAM Stream
4843);
4844
4846VOID
4847NTAPI
4849 _Out_ PRTL_MEMORY_STREAM Stream
4850);
4851
4853VOID
4854NTAPI
4856 _In_ PRTL_MEMORY_STREAM Stream
4857);
4858
4860HRESULT
4861NTAPI
4863 _In_ struct IStream *This,
4864 _In_ REFIID RequestedIid,
4865 _Outptr_ PVOID *ResultObject
4866);
4867
4869ULONG
4870NTAPI
4872 _In_ struct IStream *This
4873);
4874
4876ULONG
4877NTAPI
4879 _In_ struct IStream *This
4880);
4881
4883HRESULT
4884NTAPI
4886 _In_ struct IStream *This,
4890);
4891
4893HRESULT
4894NTAPI
4896 _In_ struct IStream *This,
4900);
4901
4903HRESULT
4904NTAPI
4906 _In_ struct IStream *This,
4907 _In_ LARGE_INTEGER RelativeOffset,
4908 _In_ ULONG Origin,
4909 _Out_opt_ PULARGE_INTEGER ResultOffset
4910);
4911
4913HRESULT
4914NTAPI
4916 _In_ struct IStream *This,
4917 _In_ struct IStream *Target,
4921);
4922
4924HRESULT
4925NTAPI
4926RtlCopyOutOfProcessMemoryStreamTo(
4927 _In_ struct IStream *This,
4928 _In_ struct IStream *Target,
4932);
4933
4935HRESULT
4936NTAPI
4938 _In_ struct IStream *This,
4939 _Out_ struct tagSTATSTG *Stats,
4941);
4942
4943// Dummy functions
4945HRESULT
4946NTAPI
4948 _In_ struct IStream *This,
4952);
4953
4955HRESULT
4956NTAPI
4958 _In_ struct IStream *This,
4960);
4961
4963HRESULT
4964NTAPI
4966 _In_ struct IStream *This,
4967 _In_ ULONG CommitFlags
4968);
4969
4971HRESULT
4972NTAPI
4974 _In_ struct IStream *This
4975);
4976
4978HRESULT
4979NTAPI
4981 _In_ struct IStream *This,
4985);
4986
4988HRESULT
4989NTAPI
4991 _In_ struct IStream *This,
4995);
4996
4998HRESULT
4999NTAPI
5001 _In_ struct IStream *This,
5002 _Outptr_ struct IStream **ResultStream
5003);
5004
5007NTAPI
5008RtlGetNativeSystemInformation(
5009 _In_ SYSTEM_INFORMATION_CLASS SystemInformationClass,
5010 _Out_writes_bytes_to_opt_(SystemInformationLength, *ReturnLength) PVOID SystemInformation,
5011 _In_ ULONG SystemInformationLength,
5013);
5014
5015#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) || (DLL_EXPORT_VERSION >= _WIN32_WINNT_VISTA)
5016
5018VOID
5019NTAPI
5021 _Out_ PRTL_RUN_ONCE RunOnce);
5022
5026NTAPI
5028 _Inout_ PRTL_RUN_ONCE RunOnce,
5032
5036NTAPI
5038 _Inout_ PRTL_RUN_ONCE RunOnce,
5041
5044NTAPI
5046 _Inout_ PRTL_RUN_ONCE RunOnce,
5049
5050#endif
5051
5052#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) || (defined(__REACTOS__) && defined(_NTDLLBUILD_))
5053/* Put NTSYSAPI back when this will be really exported. Only statically linked for now */
5054// NTSYSAPI
5055VOID
5056NTAPI
5058
5059// NTSYSAPI
5060VOID
5061NTAPI
5063
5064// NTSYSAPI
5065VOID
5066NTAPI
5068
5069// NTSYSAPI
5070VOID
5071NTAPI
5073
5074// NTSYSAPI
5075VOID
5076NTAPI
5078
5079#endif /* Win vista or Reactos Ntdll build */
5080
5081#if (_WIN32_WINNT >= _WIN32_WINNT_WIN7) || (defined(__REACTOS__) && defined(_NTDLLBUILD_))
5082
5083// NTSYSAPI
5084BOOLEAN
5085NTAPI
5087
5088// NTSYSAPI
5089BOOLEAN
5090NTAPI
5092
5093#endif /* Win7 or Reactos Ntdll build */
5094
5095#endif // NTOS_MODE_USER
5096
5099NTAPI
5101 ULONG flags,
5102 const GUID *extguid,
5103 ULONG section_kind,
5104 const GUID *guid,
5105 void *ptr
5106);
5107
5108#ifdef __cplusplus
5109}
5110#endif
5111
5112#endif
static UCHAR NotificationContext
unsigned char BOOLEAN
IN PUNICODE_STRING StaticString
IN PUNICODE_STRING IN PUNICODE_STRING DynamicString
IN PUNICODE_STRING IN PUNICODE_STRING IN PUNICODE_STRING * StringUsed
IN PUNICODE_STRING IN PUNICODE_STRING IN PUNICODE_STRING IN PSIZE_T FilePartSize OUT PBOOLEAN NameInvalid
static IN ULONG IN PWSTR OUT PCWSTR OUT PBOOLEAN OUT PATH_TYPE_AND_UNKNOWN * PathType
static GENERIC_MAPPING GenericMapping
Definition: SeInheritance.c:11
Type
Definition: Type.h:7
#define __cdecl
Definition: accygwin.h:79
UINT32 void void ** ReturnValue
Definition: acevents.h:216
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK void *Context ACPI_BUFFER *RetBuffer UINT16 ACPI_RESOURCE **ResourcePtr ACPI_GENERIC_ADDRESS *Reg UINT32 *ReturnValue UINT8 UINT8 *Slp_TypB ACPI_PHYSICAL_ADDRESS PhysicalAddress64 UINT32 UINT32 *TimeElapsed UINT32 LineNumber
Definition: acpixf.h:1220
ACPI_PHYSICAL_ADDRESS ACPI_SIZE BOOLEAN Warn UINT32 *TableIdx UINT32 ACPI_TABLE_HEADER *OutTableHeader ACPI_TABLE_HEADER **OutTable ACPI_HANDLE UINT32 ACPI_WALK_CALLBACK ACPI_WALK_CALLBACK void void **ReturnValue UINT32 ACPI_BUFFER *RetPathPtr ACPI_OBJECT_HANDLER void *Data ACPI_OBJECT_HANDLER void **Data ACPI_STRING ACPI_OBJECT_LIST ACPI_BUFFER *ReturnObjectBuffer ACPI_DEVICE_INFO **ReturnBuffer ACPI_HANDLE ACPI_HANDLE ACPI_HANDLE *OutHandle ACPI_HANDLE *OutHandle void *Context void *Context ACPI_EVENT_HANDLER Handler UINT32 UINT32 ACPI_GPE_HANDLER void *Context UINT32 HandlerType
Definition: acpixf.h:817
ACPI_BUFFER *RetBuffer ACPI_BUFFER *RetBuffer char ACPI_WALK_RESOURCE_CALLBACK void *Context ACPI_BUFFER *RetBuffer UINT16 ACPI_RESOURCE **ResourcePtr ACPI_GENERIC_ADDRESS *Reg UINT32 *ReturnValue UINT8 UINT8 *Slp_TypB ACPI_PHYSICAL_ADDRESS PhysicalAddress64 UINT32 UINT32 *TimeElapsed UINT32 ACPI_STATUS const char UINT32 ACPI_STATUS const char UINT32 const char const char UINT32 ComponentId
Definition: acpixf.h:1281
@ Invalid
Definition: asmpp.cpp:30
VOID NTAPI RtlInitializeGenericTableAvl(IN OUT PRTL_AVL_TABLE Table, IN PRTL_AVL_COMPARE_ROUTINE CompareRoutine, IN PRTL_AVL_ALLOCATE_ROUTINE AllocateRoutine, IN PRTL_AVL_FREE_ROUTINE FreeRoutine, IN PVOID TableContext)
Definition: avltable.c:26
LONG NTSTATUS
Definition: precomp.h:26
static BOOL MatchString(LPCWCH pch1, INT cch1, LPCWCH pch2, INT cch2)
Definition: find.c:91
OSVERSIONINFOW VersionInfo
Definition: wkssvc.c:40
WCHAR CurrentDirectory[1024]
Definition: chkdsk.c:74
#define __int64
Definition: basetyps.h:16
@ Reserved2
Definition: bcd.h:202
@ Reserved1
Definition: bcd.h:201
#define NTSYSAPI
Definition: ntoskrnl.h:12
PVOID NTAPI RtlAllocateHeap(IN PVOID HeapHandle, IN ULONG Flags, IN SIZE_T Size)
Definition: heap.c:590
BOOLEAN NTAPI RtlFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID HeapBase)
Definition: heap.c:608
#define __drv_aliasesMem
Definition: btrfs_drv.h:203
@ Ace
Definition: card.h:12
return
Definition: dirsup.c:529
_Acquires_exclusive_lock_ Resource _Acquires_shared_lock_ Resource _Inout_ PERESOURCE Resource
Definition: cdprocs.h:843
_In_ ULONG _In_opt_ WDFREQUEST _In_opt_ PVOID _In_ size_t _In_ PVOID _In_ size_t _Out_ size_t * DataLength
Definition: cdrom.h:1444
_In_ CDROM_SCAN_FOR_SPECIAL_INFO _In_ PCDROM_SCAN_FOR_SPECIAL_HANDLER Function
Definition: cdrom.h:1156
_In_ WDFREQUEST _In_ MEDIA_LOCK_TYPE LockType
Definition: cdrom.h:1335
Definition: bufpool.h:45
_Out_ RTL_ATOM * Atom
Definition: class.h:54
IN PUNICODE_STRING IN POBJECT_ATTRIBUTES ObjectAttributes
Definition: conport.c:36
#define BufferSize
Definition: mmc.h:75
#define NULL
Definition: types.h:112
#define FALSE
Definition: types.h:117
NTSYSAPI NTSTATUS NTAPI RtlWow64EnableFsRedirection(IN BOOLEAN Wow64FsEnableRedirection)
Definition: libsupp.c:1166
NTSYSAPI NTSTATUS NTAPI RtlDosApplyFileIsolationRedirection_Ustr(IN ULONG Flags, IN PUNICODE_STRING OriginalName, IN PUNICODE_STRING Extension, IN OUT PUNICODE_STRING StaticString, IN OUT PUNICODE_STRING DynamicString, IN OUT PUNICODE_STRING *NewName, IN PULONG NewFlags, IN PSIZE_T FileNameSize, IN PSIZE_T RequiredLength)
Definition: libsupp.c:820
NTSYSAPI NTSTATUS NTAPI RtlComputeImportTableHash(IN HANDLE FileHandle, OUT PCHAR Hash, IN ULONG ImportTableHashSize)
Definition: libsupp.c:1191
NTSYSAPI NTSTATUS NTAPI RtlWow64EnableFsRedirectionEx(IN PVOID Wow64FsEnableRedirection, OUT PVOID *OldFsRedirectionLevel)
Definition: libsupp.c:1178
BOOLEAN NTAPI RtlGetNtProductType(_Out_ PNT_PRODUCT_TYPE ProductType)
Definition: version.c:96
NTSTATUS NTAPI RtlGetVersion(IN OUT PRTL_OSVERSIONINFOW lpVersionInformation)
Definition: version.c:158
#define P(row, col)
static const ACEFLAG AceType[]
Definition: security.c:2583
#define RtlImageRvaToSection
Definition: compat.h:808
struct _WOW64_CONTEXT * PWOW64_CONTEXT
#define RtlComputeCrc32
Definition: compat.h:810
EXCEPTION_ROUTINE * PEXCEPTION_ROUTINE
Definition: compat.h:709
#define RtlImageDirectoryEntryToData
Definition: compat.h:809
#define RtlImageRvaToVa
Definition: compat.h:807
#define RtlImageNtHeader
Definition: compat.h:806
static CODEPAGE_ENTRY AnsiCodePage
Definition: nls.c:46
static CODEPAGE_ENTRY OemCodePage
Definition: nls.c:47
static int Hash(const char *)
Definition: reader.c:2257
enum _NT_PRODUCT_TYPE * PNT_PRODUCT_TYPE
static const WCHAR Message[]
Definition: register.c:74
@ AnsiString
Definition: dnslib.h:19
#define __drv_freesMem(kind)
Definition: driverspecs.h:272
#define _IRQL_requires_max_(irql)
Definition: driverspecs.h:230
#define __drv_allocatesMem(kind)
Definition: driverspecs.h:257
IN CINT OUT PVOID IN ULONG OUT PULONG ReturnLength
Definition: dumpinfo.c:43
BOOLEAN RtlTimeFieldsToTime(IN PTIME_FIELDS TimeFields, IN PLARGE_INTEGER Time)
#define RemoveEntryList(Entry)
Definition: env_spec_w32.h:986
#define InsertTailList(ListHead, Entry)
#define InsertHeadList(ListHead, Entry)
#define IsListEmpty(ListHead)
Definition: env_spec_w32.h:954
#define PASSIVE_LEVEL
Definition: env_spec_w32.h:693
#define APC_LEVEL
Definition: env_spec_w32.h:695
#define RemoveTailList(ListHead)
Definition: env_spec_w32.h:975
#define RemoveHeadList(ListHead)
Definition: env_spec_w32.h:964
#define InitializeListHead(ListHead)
Definition: env_spec_w32.h:944
#define DISPATCH_LEVEL
Definition: env_spec_w32.h:696
@ Success
Definition: eventcreate.c:712
IN PDCB IN POEM_STRING IN PUNICODE_STRING IN OUT POEM_STRING ShortName
Definition: fatprocs.h:1306
IN PLARGE_INTEGER IN PLARGE_INTEGER PEPROCESS ProcessId
Definition: fatprocs.h:2711
unsigned long DWORD
Definition: ntddk_ex.h:95
enum _SYSTEM_INFORMATION_CLASS SYSTEM_INFORMATION_CLASS
_Inout_opt_ PUNICODE_STRING Extension
Definition: fltkernel.h:1092
_Must_inspect_result_ _In_opt_ PFLT_INSTANCE _Out_ PHANDLE FileHandle
Definition: fltkernel.h:1231
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ SECURITY_INFORMATION _In_ ULONG _Out_opt_ PULONG LengthNeeded
Definition: fltkernel.h:1343
_In_opt_ PFILE_OBJECT _In_opt_ PETHREAD Thread
Definition: fltkernel.h:2653
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ SECURITY_INFORMATION SecurityInformation
Definition: fltkernel.h:1340
_Must_inspect_result_ _In_ USHORT NewSize
Definition: fltkernel.h:975
_In_ FILTER_INFORMATION_CLASS InformationClass
Definition: fltkernel.h:1713
std::wstring STRING
Definition: fontsub.cpp:33
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ ULONG _In_ PFILE_OBJECT _In_ PVOID Process
Definition: fsrtlfuncs.h:223
_Must_inspect_result_ _In_ PFSRTL_PER_STREAM_CONTEXT Ptr
Definition: fsrtlfuncs.h:898
return pTarget Start()
Status
Definition: gdiplustypes.h:25
VOID NTAPI RtlInitializeGenericTable(IN PRTL_GENERIC_TABLE Table, IN PRTL_GENERIC_COMPARE_ROUTINE CompareRoutine, IN PRTL_GENERIC_ALLOCATE_ROUTINE AllocateRoutine, IN PRTL_GENERIC_FREE_ROUTINE FreeRoutine, IN PVOID TableContext)
Definition: generictable.c:100
ASMGENDATA Table[]
Definition: genincdata.c:61
GLbitfield flags
Definition: glext.h:7161
#define DbgPrint
Definition: hal.h:12
CPPORT Port[4]
Definition: headless.c:35
_Must_inspect_result_ _In_ USAGE _In_ USHORT _In_ USAGE Usage
Definition: hidpi.h:384
static XMS_HANDLE HandleTable[XMS_MAX_HANDLES]
Definition: himem.c:83
_In_ GUID _In_ PVOID ValueData
Definition: hubbusif.h:312
@ Unknown
Definition: i8042prt.h:114
VOID NTAPI RtlFreeOemString(POEM_STRING OemString)
BOOLEAN NTAPI RtlTimeToSecondsSince1970(PLARGE_INTEGER Time, PULONG ElapsedSeconds)
BOOLEAN NTAPI RtlIsNameLegalDOS8Dot3(_In_ PUNICODE_STRING Name, _Inout_opt_ POEM_STRING OemName, _Inout_opt_ PBOOLEAN NameContainsSpaces)
NTSYSAPI NTSTATUS WINAPI RtlActivateActivationContext(DWORD, HANDLE, ULONG_PTR *)
NTSYSAPI void WINAPI RtlReleasePebLock(void)
Definition: libsupp.c:84
NTSYSAPI WCHAR WINAPI RtlAnsiCharToUnicodeChar(LPSTR *)
NTSYSAPI void WINAPI RtlAcquireSRWLockShared(RTL_SRWLOCK *)
NTSYSAPI ULONG WINAPI RtlNtStatusToDosErrorNoTeb(NTSTATUS)
NTSYSAPI ULONG WINAPI RtlFindNextForwardRunSet(PCRTL_BITMAP, ULONG, PULONG)
NTSYSAPI void WINAPI RtlInitializeBitMap(PRTL_BITMAP, PULONG, ULONG)
NTSYSAPI void WINAPI RtlSetAllBits(PRTL_BITMAP)
NTSYSAPI NTSTATUS WINAPI RtlWriteRegistryValue(ULONG, PCWSTR, PCWSTR, ULONG, PVOID, ULONG)
NTSYSAPI BOOLEAN WINAPI RtlIsValidIndexHandle(const RTL_HANDLE_TABLE *, ULONG Index, RTL_HANDLE **)
NTSYSAPI ULONG WINAPI RtlRemoveVectoredExceptionHandler(PVOID)
NTSYSAPI NTSTATUS WINAPI RtlVerifyVersionInfo(const RTL_OSVERSIONINFOEXW *, DWORD, DWORDLONG)
NTSYSAPI NTSTATUS WINAPI RtlFindActivationContextSectionString(ULONG, const GUID *, ULONG, const UNICODE_STRING *, PVOID)
Definition: actctx.c:5907
NTSYSAPI ULONG WINAPI RtlLengthSecurityDescriptor(PSECURITY_DESCRIPTOR)
NTSYSAPI NTSTATUS WINAPI RtlZombifyActivationContext(HANDLE)
Definition: actctx.c:5429
NTSYSAPI CCHAR WINAPI RtlFindMostSignificantBit(ULONGLONG)
Definition: bitmap.c:211
NTSYSAPI PVOID WINAPI RtlReAllocateHeap(HANDLE, ULONG, PVOID, SIZE_T)
Definition: heap.c:2686
NTSYSAPI NTSTATUS WINAPI RtlInitAnsiStringEx(PANSI_STRING, PCSZ)
NTSYSAPI DWORD WINAPI RtlGetThreadErrorMode(void)
Definition: error.c:217
NTSYSAPI NTSTATUS WINAPI RtlGUIDFromString(PUNICODE_STRING, GUID *)
NTSYSAPI ULONG WINAPI RtlFindClearRuns(PCRTL_BITMAP, PRTL_BITMAP_RUN, ULONG, BOOLEAN)
NTSYSAPI UINT WINAPI RtlEnlargedUnsignedDivide(ULONGLONG, UINT, UINT *)
NTSYSAPI PVOID WINAPI RtlEncodePointer(PVOID)
NTSYSAPI void WINAPI RtlAcquirePebLock(void)
Definition: libsupp.c:74
NTSYSAPI LONGLONG WINAPI RtlConvertLongToLargeInteger(LONG)
Definition: largeint.c:31
NTSYSAPI void WINAPI RtlSetLastWin32ErrorAndNtStatusFromNtStatus(NTSTATUS)
NTSYSAPI void WINAPI DbgBreakPoint(void)
NTSYSAPI NTSTATUS WINAPI RtlInitUnicodeStringEx(PUNICODE_STRING, PCWSTR)
NTSYSAPI ULONG WINAPI RtlFindLongestRunClear(PCRTL_BITMAP, PULONG)
NTSYSAPI void WINAPI RtlReleaseSRWLockExclusive(RTL_SRWLOCK *)
NTSYSAPI void WINAPI RtlAddRefActivationContext(HANDLE)
Definition: actctx.c:5404
NTSYSAPI NTSTATUS WINAPI RtlQueryInformationAcl(PACL, LPVOID, DWORD, ACL_INFORMATION_CLASS)
NTSYSAPI BOOLEAN WINAPI RtlPrefixString(const STRING *, const STRING *, BOOLEAN)
Definition: unicode.c:886
NTSYSAPI ULONG WINAPI RtlGetProcessHeaps(ULONG, HANDLE *)
NTSYSAPI ULONG WINAPI RtlNumberOfClearBits(PCRTL_BITMAP)
NTSYSAPI ULONG WINAPI RtlNumberOfSetBits(PCRTL_BITMAP)
NTSYSAPI NTSTATUS WINAPI RtlExpandEnvironmentStrings_U(PCWSTR, const UNICODE_STRING *, UNICODE_STRING *, ULONG *)
NTSYSAPI NTSTATUS WINAPI RtlWalkHeap(HANDLE, PVOID)
NTSYSAPI void WINAPI RtlFreeThreadActivationContextStack(void)
Definition: actctx.c:5548
NTSYSAPI NTSTATUS WINAPI RtlAddAccessAllowedAceEx(PACL, DWORD, DWORD, DWORD, PSID)
NTSYSAPI NTSTATUS WINAPI RtlSetThreadErrorMode(DWORD, LPDWORD)
NTSYSAPI BOOLEAN WINAPI RtlAreBitsClear(PCRTL_BITMAP, ULONG, ULONG)
NTSYSAPI NTSTATUS WINAPI RtlAddAccessAllowedAce(PACL, DWORD, DWORD, PSID)
NTSYSAPI void WINAPI RtlDeactivateActivationContext(DWORD, ULONG_PTR)
NTSYSAPI NTSTATUS WINAPI RtlDowncaseUnicodeString(UNICODE_STRING *, const UNICODE_STRING *, BOOLEAN)
NTSYSAPI BOOLEAN WINAPI RtlTryAcquireSRWLockShared(RTL_SRWLOCK *)
NTSYSAPI void WINAPI RtlReleaseActivationContext(HANDLE)
Definition: actctx.c:5415
NTSYSAPI ULONG WINAPI RtlFindSetBitsAndClear(PRTL_BITMAP, ULONG, ULONG)
NTSYSAPI NTSTATUS WINAPI RtlStringFromGUID(REFGUID, PUNICODE_STRING)
NTSYSAPI NTSTATUS WINAPI RtlSetOwnerSecurityDescriptor(PSECURITY_DESCRIPTOR, PSID, BOOLEAN)
NTSYSAPI DWORD WINAPI RtlGetLongestNtPathLength(void)
Definition: path.c:1555
NTSYSAPI void WINAPI RtlClearAllBits(PRTL_BITMAP)
NTSYSAPI TEB_ACTIVE_FRAME *WINAPI RtlGetFrame(void)
Definition: debug.c:420
NTSYSAPI ULONG WINAPI RtlFindClearBitsAndSet(PRTL_BITMAP, ULONG, ULONG)
NTSYSAPI NTSTATUS WINAPI RtlGetLastNtStatus(void)
Definition: error.c:114
NTSYSAPI void WINAPI RtlAcquireSRWLockExclusive(RTL_SRWLOCK *)
NTSYSAPI BOOLEAN WINAPI RtlValidateHeap(HANDLE, ULONG, LPCVOID)
NTSYSAPI NTSTATUS WINAPI RtlQueryRegistryValues(ULONG, PCWSTR, PRTL_QUERY_REGISTRY_TABLE, PVOID, PVOID)
NTSYSAPI CCHAR WINAPI RtlFindLeastSignificantBit(ULONGLONG)
Definition: bitmap.c:235
NTSYSAPI DWORD WINAPI RtlGetLastWin32Error(void)
Definition: error.c:132
NTSYSAPI NTSTATUS WINAPI RtlSetHeapInformation(HANDLE, HEAP_INFORMATION_CLASS, PVOID, SIZE_T)
NTSYSAPI PVOID WINAPI RtlAddVectoredExceptionHandler(ULONG, PVECTORED_EXCEPTION_HANDLER)
NTSYSAPI PVOID WINAPI RtlDecodePointer(PVOID)
NTSYSAPI NTSTATUS WINAPI RtlDuplicateUnicodeString(int, const UNICODE_STRING *, UNICODE_STRING *)
NTSYSAPI PEB *WINAPI RtlGetCurrentPeb(void)
Definition: libsupp.c:65
NTSYSAPI BOOLEAN WINAPI RtlValidRelativeSecurityDescriptor(PSECURITY_DESCRIPTOR, ULONG, SECURITY_INFORMATION)
NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeStringToCountedOemString(STRING *, const UNICODE_STRING *, BOOLEAN)
NTSYSAPI ULONG WINAPI RtlFindClearBits(PCRTL_BITMAP, ULONG, ULONG)
NTSYSAPI NTSTATUS WINAPI RtlCheckRegistryKey(ULONG, PWSTR)
NTSYSAPI NTSTATUS WINAPI RtlDecompressBuffer(USHORT, PUCHAR, ULONG, PUCHAR, ULONG, PULONG)
NTSYSAPI BOOLEAN WINAPI RtlUnlockHeap(HANDLE)
Definition: heap.c:3162
NTSYSAPI void WINAPI RtlClearBits(PRTL_BITMAP, ULONG, ULONG)
NTSYSAPI NTSTATUS WINAPI RtlSelfRelativeToAbsoluteSD(PSECURITY_DESCRIPTOR, PSECURITY_DESCRIPTOR, PDWORD, PACL, PDWORD, PACL, PDWORD, PSID, PDWORD, PSID, PDWORD)
NTSYSAPI ULONG WINAPI RtlNtStatusToDosError(NTSTATUS)
NTSYSAPI ULONGLONG WINAPI RtlEnlargedUnsignedMultiply(UINT, UINT)
Definition: largeint.c:97
NTSYSAPI NTSTATUS WINAPI RtlCreateActivationContext(HANDLE *, const void *)
NTSYSAPI NTSTATUS WINAPI RtlQueryHeapInformation(HANDLE, HEAP_INFORMATION_CLASS, PVOID, SIZE_T, PSIZE_T)
NTSYSAPI NTSTATUS WINAPI RtlGetActiveActivationContext(HANDLE *)
Definition: actctx.c:5572
NTSYSAPI LONGLONG WINAPI RtlEnlargedIntegerMultiply(INT, INT)
NTSYSAPI void WINAPI RtlInitializeSRWLock(RTL_SRWLOCK *)
NTSYSAPI NTSTATUS WINAPI RtlSetDaclSecurityDescriptor(PSECURITY_DESCRIPTOR, BOOLEAN, PACL, BOOLEAN)
NTSYSAPI BOOLEAN WINAPI RtlTryAcquireSRWLockExclusive(RTL_SRWLOCK *)
NTSYSAPI NTSTATUS WINAPI RtlQueryInformationActivationContext(ULONG, HANDLE, PVOID, ULONG, PVOID, SIZE_T, SIZE_T *)
Definition: actctx.c:5605
NTSYSAPI NTSTATUS WINAPI RtlpNtCreateKey(PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *, ULONG, const UNICODE_STRING *, ULONG, PULONG)
NTSYSAPI ULONG WINAPI RtlFindLastBackwardRunClear(PCRTL_BITMAP, ULONG, PULONG)
NTSYSAPI NTSTATUS WINAPI RtlpNtEnumerateSubKey(HANDLE, UNICODE_STRING *, ULONG)
NTSYSAPI BOOLEAN WINAPI RtlLockHeap(HANDLE)
NTSYSAPI void WINAPI RtlSetLastWin32Error(DWORD)
NTSYSAPI void WINAPI RtlReleaseSRWLockShared(RTL_SRWLOCK *)
NTSYSAPI ULONG WINAPI RtlFindSetBits(PCRTL_BITMAP, ULONG, ULONG)
NTSYSAPI ULONG WINAPI RtlGetNtGlobalFlags(void)
Definition: libsupp.c:95
NTSYSAPI LONGLONG WINAPI RtlExtendedLargeIntegerDivide(LONGLONG, INT, INT *)
NTSYSAPI NTSTATUS WINAPI RtlAppendStringToString(STRING *, const STRING *)
NTSYSAPI void WINAPI RtlCopyLuid(PLUID, const LUID *)
NTSYSAPI BOOLEAN WINAPI RtlCopySid(DWORD, PSID, PSID)
NTSYSAPI void WINAPI RtlSetBits(PRTL_BITMAP, ULONG, ULONG)
NTSYSAPI ULONG WINAPI RtlCompactHeap(HANDLE, ULONG)
Definition: heap.c:3103
NTSYSAPI BOOLEAN WINAPI RtlAreBitsSet(PCRTL_BITMAP, ULONG, ULONG)
NTSYSAPI ULONG WINAPI RtlFindNextForwardRunClear(PCRTL_BITMAP, ULONG, PULONG)
HRESULT Next([in] ULONG celt, [out, size_is(celt), length_is(*pceltFetched)] STATPROPSETSTG *rgelt, [out] ULONG *pceltFetched)
_Check_return_ unsigned __int64 __cdecl _byteswap_uint64(_In_ unsigned __int64)
_Check_return_ unsigned long __cdecl _byteswap_ulong(_In_ unsigned long)
_Check_return_ unsigned short __cdecl _byteswap_ushort(_In_ unsigned short)
CRITICAL_SECTION CriticalSection
Definition: iprtprio.c:40
#define I(s)
_In_ PCWSTR _Out_ PVOID * ActCtx
Definition: ldrtypes.h:247
#define Unused(x)
Definition: atlwin.h:28
if(dx< 0)
Definition: linetemp.h:194
enum _SECURITY_IMPERSONATION_LEVEL SECURITY_IMPERSONATION_LEVEL
WORD SECURITY_DESCRIPTOR_CONTROL
Definition: lsa.idl:37
WORD * PSECURITY_DESCRIPTOR_CONTROL
Definition: lsa.idl:37
HRESULT NTAPI RtlSeekMemoryStream(_In_ IStream *This, _In_ LARGE_INTEGER RelativeOffset, _In_ ULONG Origin, _Out_opt_ PULARGE_INTEGER ResultOffset)
Definition: memstream.c:239
VOID NTAPI RtlFinalReleaseOutOfProcessMemoryStream(_In_ PRTL_MEMORY_STREAM Stream)
Definition: memstream.c:97
VOID NTAPI RtlInitMemoryStream(_Out_ PRTL_MEMORY_STREAM Stream)
Definition: memstream.c:72
HRESULT NTAPI RtlQueryInterfaceMemoryStream(_In_ IStream *This, _In_ REFIID RequestedIid, _Outptr_ PVOID *ResultObject)
Definition: memstream.c:108
HRESULT NTAPI RtlSetMemoryStreamSize(_In_ IStream *This, _In_ ULARGE_INTEGER NewSize)
Definition: memstream.c:383
HRESULT NTAPI RtlCopyMemoryStreamTo(_In_ IStream *This, _In_ IStream *Target, _In_ ULARGE_INTEGER Length, _Out_opt_ PULARGE_INTEGER BytesRead, _Out_opt_ PULARGE_INTEGER BytesWritten)
Definition: memstream.c:282
HRESULT NTAPI RtlCommitMemoryStream(_In_ IStream *This, _In_ ULONG CommitFlags)
Definition: memstream.c:398
NTSTATUS NTAPI RtlCopyMappedMemory(_Out_writes_bytes_all_(Size) PVOID Destination, _In_reads_bytes_(Size) const VOID *Source, _In_ SIZE_T Size)
Definition: memstream.c:479
HRESULT NTAPI RtlReadOutOfProcessMemoryStream(_In_ IStream *This, _Out_writes_bytes_(Length) PVOID Buffer, _In_ ULONG Length, _Out_opt_ PULONG BytesRead)
Definition: memstream.c:198
ULONG NTAPI RtlAddRefMemoryStream(_In_ IStream *This)
Definition: memstream.c:131
HRESULT NTAPI RtlLockMemoryStreamRegion(_In_ IStream *This, _In_ ULARGE_INTEGER Offset, _In_ ULARGE_INTEGER Length, _In_ ULONG LockType)
Definition: memstream.c:426
VOID NTAPI RtlInitOutOfProcessMemoryStream(_Out_ PRTL_MEMORY_STREAM Stream)
Definition: memstream.c:84
HRESULT NTAPI RtlWriteMemoryStream(_In_ IStream *This, _In_reads_bytes_(Length) CONST VOID *Buffer, _In_ ULONG Length, _Out_opt_ PULONG BytesWritten)
Definition: memstream.c:364
HRESULT NTAPI RtlUnlockMemoryStreamRegion(_In_ IStream *This, _In_ ULARGE_INTEGER Offset, _In_ ULARGE_INTEGER Length, _In_ ULONG LockType)
Definition: memstream.c:445
HRESULT NTAPI RtlReadMemoryStream(_In_ IStream *This, _Out_writes_bytes_(Length) PVOID Buffer, _In_ ULONG Length, _Out_opt_ PULONG BytesRead)
Definition: memstream.c:166
HRESULT NTAPI RtlCloneMemoryStream(_In_ IStream *This, _Outptr_ IStream **ResultStream)
Definition: memstream.c:464
ULONG NTAPI RtlReleaseMemoryStream(_In_ IStream *This)
Definition: memstream.c:144
HRESULT NTAPI RtlRevertMemoryStream(_In_ IStream *This)
Definition: memstream.c:413
HRESULT NTAPI RtlStatMemoryStream(_In_ IStream *This, _Out_ STATSTG *Stats, _In_ ULONG Flags)
Definition: memstream.c:337
const GUID * guid
#define RtlFillMemoryUlong(dst, len, val)
Definition: mkhive.h:55
unsigned __int64 * PULONG64
Definition: imports.h:198
unsigned __int64 ULONG64
Definition: imports.h:198
static PWSTR GuidString
Definition: apphelp.c:93
static PVOID ptr
Definition: dispmode.c:27
static const char const char * DllPath
Definition: image.c:34
static IStream Stream
Definition: htmldoc.c:1115
unsigned short RTL_ATOM
Definition: atom.c:42
unsigned short * PRTL_ATOM
Definition: atom.c:42
struct atom_table ** PRTL_ATOM_TABLE
Definition: atom.c:43
static ACCESS_MASK const OBJECT_ATTRIBUTES ULONG TitleIndex
Definition: reg.c:131
static PTIME_FIELDS TimeFields
Definition: time.c:104
DWORD SECURITY_INFORMATION
Definition: ms-dtyp.idl:311
#define _Pre_unknown_
Definition: ms_sal.h:677
#define _Out_opt_
Definition: ms_sal.h:346
#define _Success_(expr)
Definition: ms_sal.h:259
#define _Notnull_
Definition: ms_sal.h:658
#define _In_reads_bytes_(size)
Definition: ms_sal.h:321
#define _Post_bytecap_(size)
Definition: ms_sal.h:1376
#define _Inout_
Definition: ms_sal.h:378
#define _Out_writes_bytes_(size)
Definition: ms_sal.h:350
#define _Out_writes_bytes_to_(size, count)
Definition: ms_sal.h:360
#define _On_failure_(annos)
Definition: ms_sal.h:266
#define _Out_range_(lb, ub)
Definition: ms_sal.h:572
#define _Out_cap_(size)
Definition: ms_sal.h:852
#define _Ret_maybenull_
Definition: ms_sal.h:529
#define _Out_writes_bytes_all_(size)
Definition: ms_sal.h:362
#define _In_count_(size)
Definition: ms_sal.h:810
#define _Writable_bytes_(size)
Definition: ms_sal.h:637
#define _In_z_
Definition: ms_sal.h:313
#define _Deref_post_bytecap_(size)
Definition: ms_sal.h:1128
#define _In_opt_z_
Definition: ms_sal.h:314
#define _Outptr_
Definition: ms_sal.h:427
#define _Out_writes_(size)
Definition: ms_sal.h:348
#define _Outptr_opt_result_maybenull_
Definition: ms_sal.h:430
#define _Post_equal_to_(expr)
Definition: ms_sal.h:578
#define _Maybenull_
Definition: ms_sal.h:659
#define _Out_z_bytecap_(size)
Definition: ms_sal.h:885
#define _Valid_
Definition: ms_sal.h:626
#define __inner_callback
Definition: ms_sal.h:2636
#define _Post_invalid_
Definition: ms_sal.h:695
#define _At_(target, annos)
Definition: ms_sal.h:244
#define _Inout_opt_
Definition: ms_sal.h:379
#define _Must_inspect_result_
Definition: ms_sal.h:558
#define _Out_
Definition: ms_sal.h:345
#define _In_reads_opt_(size)
Definition: ms_sal.h:320
#define _Out_writes_bytes_to_opt_(size, count)
Definition: ms_sal.h:361
#define _In_
Definition: ms_sal.h:308
#define _Out_opt_z_bytecap_(size)
Definition: ms_sal.h:886
#define _In_reads_bytes_opt_(size)
Definition: ms_sal.h:322
#define _In_opt_
Definition: ms_sal.h:309
#define _Ret_opt_z_
Definition: ms_sal.h:1220
#define _Post_writable_byte_size_(size)
Definition: ms_sal.h:652
#define _Const_
Definition: ms_sal.h:299
#define _Post_bytecount_(size)
Definition: ms_sal.h:1380
#define _Out_bytecap_(size)
Definition: ms_sal.h:854
#define _Reserved_
Definition: ms_sal.h:295
#define _Out_writes_to_(size, count)
Definition: ms_sal.h:355
#define _In_range_(lb, ub)
Definition: ms_sal.h:571
#define _Maybe_raises_SEH_exception_
Definition: ms_sal.h:2956
#define _Printf_format_string_
Definition: ms_sal.h:561
#define _In_reads_(size)
Definition: ms_sal.h:319
#define _Pre_
Definition: ms_sal.h:619
_In_ HANDLE hFile
Definition: mswsock.h:90
_In_ NDIS_STATUS _In_ ULONG _In_ USHORT _In_opt_ PVOID _In_ ULONG DataSize
Definition: ndis.h:4755
_Must_inspect_result_ _Out_ PNDIS_STATUS _In_ NDIS_HANDLE _In_ PNDIS_STRING SubKeyName
Definition: ndis.h:4725
_Must_inspect_result_ _Out_ PNDIS_STATUS _In_ NDIS_HANDLE _In_ ULONG _Out_ PNDIS_STRING _Out_ PNDIS_HANDLE KeyHandle
Definition: ndis.h:4715
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Reserved_ ULONG _In_opt_ PUNICODE_STRING _In_ ULONG _Out_opt_ PULONG Disposition
Definition: cmfuncs.h:56
_In_ HANDLE ProcessHandle
Definition: mmfuncs.h:403
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID * BaseAddress
Definition: mmfuncs.h:404
_In_ ACCESS_MASK _In_ ULONG _Out_ PHANDLE TokenHandle
Definition: psfuncs.h:726
NTSYSAPI NTSTATUS NTAPI RtlSetSecurityObject(_In_ SECURITY_INFORMATION SecurityInformation, _In_ PSECURITY_DESCRIPTOR ModificationDescriptor, _Out_ PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor, _In_ PGENERIC_MAPPING GenericMapping, _In_ HANDLE Token)
NTSYSAPI VOID NTAPI RtlInitializeConditionVariable(_Out_ PRTL_CONDITION_VARIABLE ConditionVariable)
NTSYSAPI NTSTATUS NTAPI RtlIsRangeAvailable(_In_ PRTL_RANGE_LIST RangeList, _In_ ULONGLONG Start, _In_ ULONGLONG End, _In_ ULONG Flags, _In_ UCHAR AttributeAvailableMask, _In_opt_ PVOID Context, _In_opt_ PRTL_CONFLICT_RANGE_CALLBACK Callback, _Out_ PBOOLEAN Available)
NTSYSAPI ULONG NTAPI RtlUniform(_In_ PULONG Seed)
NTSYSAPI NTSTATUS NTAPI RtlIpv6StringToAddressW(_In_ PCWSTR String, _Out_ PCWSTR *Terminator, _Out_ struct in6_addr *Addr)
Definition: network.c:806
NTSYSAPI BOOLEAN NTAPI RtlAcquireResourceShared(_In_ PRTL_RESOURCE Resource, _In_ BOOLEAN Wait)
NTSYSAPI NTSTATUS NTAPI RtlCreateRegistryKey(_In_ ULONG RelativeTo, _In_ PWSTR Path)
NTSYSAPI NTSTATUS NTAPI RtlOpenCurrentUser(_In_ ACCESS_MASK DesiredAccess, _Out_ PHANDLE KeyHandle)
NTSYSAPI NTSTATUS NTAPI RtlAddAce(_Inout_ PACL Acl, _In_ ULONG AceRevision, _In_ ULONG StartingAceIndex, _In_reads_bytes_(AceListLength) PVOID AceList, _In_ ULONG AceListLength)
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR _Inout_ PULONG _Out_writes_bytes_to_opt_ DaclSize PACL Dacl
Definition: rtlfuncs.h:1605
_In_ PLUID SourceLuid
Definition: rtlfuncs.h:1329
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR AbsoluteSecurityDescriptor
Definition: rtlfuncs.h:1603
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR _Inout_ PULONG _Out_writes_bytes_to_opt_ DaclSize PACL _Inout_ PULONG _Out_writes_bytes_to_opt_ SaclSize PACL _Inout_ PULONG _Out_writes_bytes_to_opt_ OwnerSize PSID _Inout_ PULONG OwnerSize
Definition: rtlfuncs.h:1610
NTSYSAPI VOID NTAPI RtlCopyLuidAndAttributesArray(ULONG Count, PLUID_AND_ATTRIBUTES Src, PLUID_AND_ATTRIBUTES Dest)
Definition: luid.c:33
NTSYSAPI NTSTATUS NTAPI RtlUpcaseUnicodeStringToOemString(POEM_STRING DestinationString, PCUNICODE_STRING SourceString, BOOLEAN AllocateDestinationString)
NTSYSAPI NTSTATUS NTAPI RtlDeleteCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
_In_ const STRING * String2
Definition: rtlfuncs.h:2369
_In_opt_ PSID Group
Definition: rtlfuncs.h:1658
NTSYSAPI PULONG NTAPI RtlSubAuthoritySid(_In_ PSID Sid, _In_ ULONG SubAuthority)
_Out_ _Inout_ POEM_STRING _In_ PCUNICODE_STRING SourceString
Definition: rtlfuncs.h:1922
NTSYSAPI NTSTATUS NTAPI RtlIpv6StringToAddressExW(_In_ PCWSTR AddressString, _Out_ struct in6_addr *Address, _Out_ PULONG ScopeId, _Out_ PUSHORT Port)
Definition: network.c:954
_Must_inspect_result_ NTSYSAPI NTSTATUS NTAPI RtlUpcaseUnicodeString(_When_(AllocateDestinationString, _Out_ _At_(DestinationString->Buffer, __drv_allocatesMem(Mem))) _When_(!AllocateDestinationString, _Inout_) PUNICODE_STRING DestinationString, _In_ PCUNICODE_STRING SourceString, _In_ BOOLEAN AllocateDestinationString)
NTSYSAPI NTSTATUS NTAPI RtlDeleteOwnersRanges(_Inout_ PRTL_RANGE_LIST RangeList, _In_ _Maybenull_ PVOID Owner)
NTSYSAPI NTSTATUS NTAPI RtlDestroyQueryDebugBuffer(IN PRTL_DEBUG_INFORMATION DebugBuffer)
NTSYSAPI NTSTATUS NTAPI RtlGetControlSecurityDescriptor(_In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _Out_ PSECURITY_DESCRIPTOR_CONTROL Control, _Out_ PULONG Revision)
NTSYSAPI VOID NTAPI RtlSetSecurityDescriptorRMControl(_Inout_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ PUCHAR RMControl)
NTSYSAPI VOID NTAPI RtlInitializeHandleTable(_In_ ULONG TableSize, _In_ ULONG HandleSize, _In_ PRTL_HANDLE_TABLE HandleTable)
NTSYSAPI NTSTATUS NTAPI RtlCompressBuffer(_In_ USHORT CompressionFormatAndEngine, _In_reads_bytes_(UncompressedBufferSize) PUCHAR UncompressedBuffer, _In_ ULONG UncompressedBufferSize, _Out_writes_bytes_to_(CompressedBufferSize, *FinalCompressedSize) PUCHAR CompressedBuffer, _In_ ULONG CompressedBufferSize, _In_ ULONG UncompressedChunkSize, _Out_ PULONG FinalCompressedSize, _In_ PVOID WorkSpace)
NTSYSAPI NTSTATUS NTAPI RtlRemovePrivileges(_In_ HANDLE TokenHandle, _In_reads_opt_(PrivilegeCount) _When_(PrivilegeCount !=0, _Notnull_) PULONG PrivilegesToKeep, _In_ ULONG PrivilegeCount)
Removes all privileges in the specified access token.
Definition: priv.c:515
NTSYSAPI NTSTATUS NTAPI RtlPinAtomInAtomTable(_In_ PRTL_ATOM_TABLE AtomTable, _In_ RTL_ATOM Atom)
NTSYSAPI VOID NTAPI RtlInitNlsTables(_In_ PUSHORT AnsiTableBase, _In_ PUSHORT OemTableBase, _In_ PUSHORT CaseTableBase, _Out_ PNLSTABLEINFO NlsTable)
NTSYSAPI NTSTATUS NTAPI RtlDestroyProcessParameters(_In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters)
NTSYSAPI NTSTATUS NTAPI RtlMergeRangeLists(_Out_ PRTL_RANGE_LIST MergedRangeList, _In_ PRTL_RANGE_LIST RangeList1, _In_ PRTL_RANGE_LIST RangeList2, _In_ ULONG Flags)
NTSYSAPI BOOLEAN NTAPI RtlValidAcl(PACL Acl)
NTSYSAPI NTSTATUS NTAPI RtlImpersonateSelf(IN SECURITY_IMPERSONATION_LEVEL ImpersonationLevel)
Definition: priv.c:45
NTSYSAPI BOOLEAN NTAPI RtlGetSecurityDescriptorRMControl(_In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _Out_ PUCHAR RMControl)
NTSYSAPI NTSTATUS NTAPI RtlFindActivationContextSectionGuid(ULONG flags, const GUID *extguid, ULONG section_kind, const GUID *guid, void *ptr)
Definition: actctx.c:5958
NTSYSAPI NTSTATUS NTAPI RtlCopySidAndAttributesArray(_In_ ULONG Count, _In_ PSID_AND_ATTRIBUTES Src, _In_ ULONG SidAreaSize, _In_ PSID_AND_ATTRIBUTES Dest, _In_ PSID SidArea, _Out_ PSID *RemainingSidArea, _Out_ PULONG RemainingSidAreaSize)
NTSYSAPI ULONG NTAPI RtlLengthRequiredSid(IN ULONG SubAuthorityCount)
Definition: sid.c:54
NTSYSAPI NTSTATUS NTAPI RtlCreateProcessParameters(_Out_ PRTL_USER_PROCESS_PARAMETERS *ProcessParameters, _In_ PUNICODE_STRING ImagePathName, _In_opt_ PUNICODE_STRING DllPath, _In_opt_ PUNICODE_STRING CurrentDirectory, _In_opt_ PUNICODE_STRING CommandLine, _In_opt_ PWSTR Environment, _In_opt_ PUNICODE_STRING WindowTitle, _In_opt_ PUNICODE_STRING DesktopInfo, _In_opt_ PUNICODE_STRING ShellInfo, _In_opt_ PUNICODE_STRING RuntimeInfo)
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR _Inout_ PULONG _Out_writes_bytes_to_opt_ DaclSize PACL _Inout_ PULONG _Out_writes_bytes_to_opt_ SaclSize PACL _Inout_ PULONG _Out_writes_bytes_to_opt_ OwnerSize PSID Owner
Definition: rtlfuncs.h:1609
NTSYSAPI BOOLEAN NTAPI RtlTryEnterCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
NTSYSAPI NTSTATUS NTAPI RtlUnicodeStringToOemString(POEM_STRING DestinationString, PCUNICODE_STRING SourceString, BOOLEAN AllocateDestinationString)
NTSYSAPI NTSTATUS NTAPI RtlDeleteRange(_Inout_ PRTL_RANGE_LIST RangeList, _In_ ULONGLONG Start, _In_ ULONGLONG End, _In_ PVOID Owner)
NTSYSAPI ULONG NTAPI RtlIsDosDeviceName_U(_In_ PCWSTR Name)
NTSYSAPI NTSTATUS NTAPI RtlAddRange(_Inout_ PRTL_RANGE_LIST RangeList, _In_ ULONGLONG Start, _In_ ULONGLONG End, _In_ UCHAR Attributes, _In_ ULONG Flags, _In_opt_ PVOID UserData, _In_opt_ PVOID Owner)
NTSYSAPI NTSTATUS NTAPI RtlAcquirePrivilege(_In_ PULONG Privilege, _In_ ULONG NumPriv, _In_ ULONG Flags, _Out_ PVOID *ReturnedState)
NTSYSAPI NTSTATUS NTAPI RtlSetEnvironmentVariable(_In_z_ PWSTR *Environment, _In_ PUNICODE_STRING Name, _In_ PUNICODE_STRING Value)
NTSYSAPI NTSTATUS NTAPI RtlInvertRangeList(_Out_ PRTL_RANGE_LIST InvertedRangeList, _In_ PRTL_RANGE_LIST RangeList)
NTSYSAPI VOID NTAPI RtlPushFrame(_In_ PTEB_ACTIVE_FRAME Frame)
NTSYSAPI NTSTATUS NTAPI RtlDosSearchPath_Ustr(_In_ ULONG Flags, _In_ PUNICODE_STRING PathString, _In_ PUNICODE_STRING FileNameString, _In_ PUNICODE_STRING ExtensionString, _In_ PUNICODE_STRING CallerBuffer, _Inout_opt_ PUNICODE_STRING DynamicString, _Out_opt_ PUNICODE_STRING *FullNameOut, _Out_opt_ PSIZE_T FilePartSize, _Out_opt_ PSIZE_T LengthNeeded)
_In_ ULONG _In_ ULONG _In_ ACCESS_MASK _In_ PSID pSid
Definition: rtlfuncs.h:1157
NTSYSAPI VOID NTAPI RtlConvertExclusiveToShared(_In_ PRTL_RESOURCE Resource)
NTSYSAPI NTSTATUS NTAPI RtlHashUnicodeString(_In_ CONST UNICODE_STRING *String, _In_ BOOLEAN CaseInSensitive, _In_ ULONG HashAlgorithm, _Out_ PULONG HashValue)
NTSYSAPI BOOLEAN NTAPI RtlFreeHandle(_In_ PRTL_HANDLE_TABLE HandleTable, _In_ PRTL_HANDLE_TABLE_ENTRY Handle)
NTSYSAPI VOID NTAPI RtlConvertSharedToExclusive(_In_ PRTL_RESOURCE Resource)
_When_(Status< 0, _Out_range_(>, 0)) _When_(Status >=0
_Out_ PLARGE_INTEGER Time
Definition: rtlfuncs.h:4649
NTSYSAPI NTSTATUS NTAPI RtlSetSaclSecurityDescriptor(_Inout_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ BOOLEAN SaclPresent, _In_ PACL Sacl, _In_ BOOLEAN SaclDefaulted)
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR _Inout_ PULONG _Out_writes_bytes_to_opt_ DaclSize PACL _Inout_ PULONG _Out_writes_bytes_to_opt_ SaclSize PACL _Inout_ PULONG _Out_writes_bytes_to_opt_ OwnerSize PSID _Inout_ PULONG _Out_writes_bytes_to_opt_ PrimaryGroupSize PSID PrimaryGroup
Definition: rtlfuncs.h:1611
NTSYSAPI NTSTATUS NTAPI RtlNewSecurityObject(_In_ PSECURITY_DESCRIPTOR ParentDescriptor, _In_ PSECURITY_DESCRIPTOR CreatorDescriptor, _Out_ PSECURITY_DESCRIPTOR *NewDescriptor, _In_ BOOLEAN IsDirectoryObject, _In_ HANDLE Token, _In_ PGENERIC_MAPPING GenericMapping)
_In_ const STRING _In_ BOOLEAN CaseInSensitive
Definition: rtlfuncs.h:2402
NTSYSAPI VOID NTAPI RtlDestroyHandleTable(_Inout_ PRTL_HANDLE_TABLE HandleTable)
NTSYSAPI NTSTATUS NTAPI RtlQueueWorkItem(_In_ WORKERCALLBACKFUNC Function, _In_opt_ PVOID Context, _In_ ULONG Flags)
NTSYSAPI VOID NTAPI RtlWakeAllConditionVariable(_Inout_ PRTL_CONDITION_VARIABLE ConditionVariable)
_In_ PSID_IDENTIFIER_AUTHORITY _In_ UCHAR SubAuthorityCount
Definition: rtlfuncs.h:1527
NTSYSAPI NTSTATUS NTAPI RtlIpv6AddressToStringExW(_In_ const struct in6_addr *Address, _In_ ULONG ScopeId, _In_ USHORT Port, _Out_writes_to_(*AddressStringLength, *AddressStringLength) PWCHAR AddressString, _Inout_ PULONG AddressStringLength)
Definition: network.c:669
NTSYSAPI NTSTATUS NTAPI RtlSetControlSecurityDescriptor(_In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest, _In_ SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet)
NTSYSAPI NTSTATUS NTAPI RtlDestroyAtomTable(IN PRTL_ATOM_TABLE AtomTable)
Definition: atom.c:203
NTSYSAPI NTSTATUS NTAPI RtlCreateAcl(PACL Acl, ULONG AclSize, ULONG AclRevision)
NTSYSAPI NTSTATUS NTAPI RtlAddMandatoryAce(_Inout_ PACL Acl, _In_ ULONG Revision, _In_ ULONG Flags, _In_ ULONG MandatoryFlags, _In_ UCHAR AceType, _In_ PSID LabelSid)
NTSYSAPI NTSTATUS NTAPI RtlGetCompressionWorkSpaceSize(_In_ USHORT CompressionFormatAndEngine, _Out_ PULONG CompressBufferWorkSpaceSize, _Out_ PULONG CompressFragmentWorkSpaceSize)
_In_ BOOLEAN MappedAsImage
Definition: rtlfuncs.h:3950
_Out_ PCPTABLEINFO CodePageTable
Definition: rtlfuncs.h:4328
NTSYSAPI NTSTATUS NTAPI RtlCreateTimerQueue(PHANDLE TimerQueue)
Definition: timerqueue.c:285
NTSYSAPI NTSTATUS NTAPI RtlInitializeCriticalSectionAndSpinCount(_In_ PRTL_CRITICAL_SECTION CriticalSection, _In_ ULONG SpinCount)
NTSYSAPI NTSTATUS NTAPI RtlQueryProcessDebugInformation(_In_ ULONG ProcessId, _In_ ULONG DebugInfoClassMask, _Inout_ PRTL_DEBUG_INFORMATION DebugBuffer)
NTSYSAPI NTSTATUS NTAPI RtlDeleteSecurityObject(_In_ PSECURITY_DESCRIPTOR *ObjectDescriptor)
_In_ ULONG TypeMask
Definition: rtlfuncs.h:4686
_In_ PCWSTR _Inout_ _At_ QueryTable _Pre_unknown_ PRTL_QUERY_REGISTRY_TABLE QueryTable
Definition: rtlfuncs.h:4220
NTSYSAPI NTSTATUS NTAPI RtlRegisterWait(_In_ PHANDLE phNewWaitObject, _In_ HANDLE hObject, _In_ WAITORTIMERCALLBACKFUNC Callback, _In_ PVOID pvContext, _In_ ULONG ulMilliseconds, _In_ ULONG ulFlags)
NTSYSAPI VOID NTAPI RtlEraseUnicodeString(_Inout_ PUNICODE_STRING String)
NTSYSAPI NTSTATUS NTAPI RtlUnicodeToMultiByteSize(PULONG MbSize, PCWCH UnicodeString, ULONG UnicodeSize)
NTSTATUS NTAPI RtlGetFullPathName_UstrEx(_In_ PUNICODE_STRING FileName, _In_opt_ PUNICODE_STRING StaticString, _In_opt_ PUNICODE_STRING DynamicString, _Out_opt_ PUNICODE_STRING *StringUsed, _Out_opt_ PSIZE_T FilePartSize, _Out_opt_ PBOOLEAN NameInvalid, _Out_ RTL_PATH_TYPE *PathType, _Out_opt_ PSIZE_T LengthNeeded)
NTSYSAPI NTSTATUS NTAPI RtlAddAuditAccessAce(_Inout_ PACL Acl, _In_ ULONG Revision, _In_ ACCESS_MASK AccessMask, _In_ PSID Sid, _In_ BOOLEAN Success, _In_ BOOLEAN Failure)
NTSTATUS NTAPI RtlIpv4AddressToStringExW(_In_ const struct in_addr *Address, _In_ USHORT Port, _Out_writes_to_(*AddressStringLength, *AddressStringLength) PWCHAR AddressString, _Inout_ PULONG AddressStringLength)
Definition: network.c:288
NTSYSAPI NTSTATUS NTAPI RtlCreateEnvironment(_In_ BOOLEAN Inherit, _Out_ PWSTR *Environment)
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR _Inout_ PULONG _Out_writes_bytes_to_opt_ DaclSize PACL _Inout_ PULONG _Out_writes_bytes_to_opt_ SaclSize PACL _Inout_ PULONG SaclSize
Definition: rtlfuncs.h:1608
_Inout_opt_ POEM_STRING _Out_opt_ PBOOLEAN NameContainsSpaces
Definition: rtlfuncs.h:3103
NTSYSAPI NTSTATUS NTAPI RtlUnicodeStringToAnsiString(PANSI_STRING DestinationString, PCUNICODE_STRING SourceString, BOOLEAN AllocateDestinationString)
NTSYSAPI NTSTATUS NTAPI RtlAddAtomToAtomTable(_In_ PRTL_ATOM_TABLE AtomTable, _In_ PWSTR AtomName, _Out_ PRTL_ATOM Atom)
VOID NTAPI DbgCommandString(_In_ PCCH Name, _In_ PCCH Command)
NTSYSAPI VOID NTAPI RtlResetRtlTranslations(_In_ PNLSTABLEINFO NlsTable)
NTSYSAPI PRTL_HANDLE_TABLE_ENTRY NTAPI RtlAllocateHandle(_In_ PRTL_HANDLE_TABLE HandleTable, _Inout_ PULONG Index)
NTSYSAPI NTSTATUS NTAPI RtlGetAce(PACL Acl, ULONG AceIndex, PVOID *Ace)
NTSYSAPI NTSTATUS NTAPI RtlSetTimeZoneInformation(_In_ PRTL_TIME_ZONE_INFORMATION TimeZoneInformation)
*BytesInUnicodeString PWCH _In_ ULONG _Out_opt_ PULONG BytesInUnicodeString
Definition: rtlfuncs.h:2047
NTSYSAPI NTSTATUS NTAPI RtlIpv4StringToAddressExA(_In_ PCSTR AddressString, _In_ BOOLEAN Strict, _Out_ struct in_addr *Address, _Out_ PUSHORT Port)
Definition: network.c:375
NTSYSAPI NTSTATUS NTAPI RtlQuerySecurityObject(_In_ PSECURITY_DESCRIPTOR ObjectDescriptor, _In_ SECURITY_INFORMATION SecurityInformation, _Out_ PSECURITY_DESCRIPTOR ResultantDescriptor, _In_ ULONG DescriptorLength, _Out_ PULONG ReturnLength)
NTSYSAPI BOOLEAN NTAPI RtlIsTextUnicode(_In_ CONST VOID *Buffer, _In_ INT Size, _Inout_opt_ INT *Flags)
_In_ const STRING _In_ BOOLEAN CaseInsensitive
Definition: rtlfuncs.h:2371
_In_ ULONG _In_ ULONG AceFlags
Definition: rtlfuncs.h:1154
NTSYSAPI ULONG NTAPI RtlIsDosDeviceName_Ustr(_In_ PCUNICODE_STRING Name)
_In_opt_ PSID _In_opt_ BOOLEAN GroupDefaulted
Definition: rtlfuncs.h:1660
NTSYSAPI NTSTATUS NTAPI RtlSetIoCompletionCallback(_In_ HANDLE FileHandle, _In_ PIO_APC_ROUTINE Callback, _In_ ULONG Flags)
NTSYSAPI NTSTATUS NTAPI RtlSleepConditionVariableCS(_Inout_ PRTL_CONDITION_VARIABLE ConditionVariable, _Inout_ PRTL_CRITICAL_SECTION CriticalSection, _In_opt_ PLARGE_INTEGER TimeOut)
VOID NTAPI RtlReleaseRelativeName(_In_ PRTL_RELATIVE_NAME_U RelativeName)
NTSYSAPI VOID NTAPI RtlDestroyEnvironment(_In_ PWSTR Environment)
_In_ PSID _In_ BOOLEAN AllocateDestinationString
Definition: rtlfuncs.h:1361
NTSYSAPI ULONG NTAPI RtlLengthSid(IN PSID Sid)
Definition: sid.c:150
NTSYSAPI RTL_PATH_TYPE NTAPI RtlDetermineDosPathNameType_U(_In_ PCWSTR Path)
_In_ PUNICODE_STRING _Inout_ PUNICODE_STRING Destination
Definition: rtlfuncs.h:3016
NTSYSAPI NTSTATUS NTAPI RtlSelfRelativeToAbsoluteSD2(_Inout_ PSECURITY_DESCRIPTOR SelfRelativeSD, _Out_ PULONG BufferSize)
_In_ PSID SourceSid
Definition: rtlfuncs.h:1371
NTSYSAPI ULONG __cdecl DbgPrintEx(_In_ ULONG ComponentId, _In_ ULONG Level, _In_z_ _Printf_format_string_ PCSTR Format,...)
NTSYSAPI NTSTATUS NTAPI RtlCreateUserProcess(_In_ PUNICODE_STRING ImageFileName, _In_ ULONG Attributes, _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters, _In_opt_ PSECURITY_DESCRIPTOR ProcessSecutityDescriptor, _In_opt_ PSECURITY_DESCRIPTOR ThreadSecurityDescriptor, _In_opt_ HANDLE ParentProcess, _In_ BOOLEAN CurrentDirectory, _In_opt_ HANDLE DebugPort, _In_opt_ HANDLE ExceptionPort, _Out_ PRTL_USER_PROCESS_INFORMATION ProcessInfo)
_Must_inspect_result_ NTSYSAPI LONG NTAPI RtlCompareUnicodeStrings(_In_reads_(String1Length) PCWCH String1, _In_ SIZE_T String1Length, _In_reads_(String2Length) PCWCH String2, _In_ SIZE_T String2Length, _In_ BOOLEAN CaseInSensitive)
NTSYSAPI NTSTATUS NTAPI RtlLookupAtomInAtomTable(_In_ PRTL_ATOM_TABLE AtomTable, _In_ PWSTR AtomName, _Out_ PRTL_ATOM Atom)
_In_ PCWSTR _Inout_ _At_ QueryTable _Pre_unknown_ PRTL_QUERY_REGISTRY_TABLE _In_opt_ PVOID _In_opt_ PVOID Environment
Definition: rtlfuncs.h:4223
NTSYSAPI NTSTATUS NTAPI RtlOemStringToUnicodeString(PUNICODE_STRING DestinationString, PCOEM_STRING SourceString, BOOLEAN AllocateDestinationString)
NTSYSAPI NTSTATUS NTAPI RtlIpv4AddressToStringExA(_In_ const struct in_addr *Address, _In_ USHORT Port, _Out_writes_to_(*AddressStringLength, *AddressStringLength) PCHAR AddressString, _Inout_ PULONG AddressStringLength)
Definition: network.c:206
_In_ BOOLEAN DaclPresent
Definition: rtlfuncs.h:1647
NTSYSAPI NTSTATUS __cdecl RtlSetThreadIsCritical(_In_ BOOLEAN NewValue, _Out_opt_ PBOOLEAN OldValue, _In_ BOOLEAN NeedBreaks)
NTSYSAPI VOID NTAPI RtlReleasePrivilege(_In_ PVOID ReturnedState)
NTSYSAPI ULONG NTAPI RtlxAnsiStringToUnicodeSize(PCANSI_STRING AnsiString)
NTSYSAPI LONG NTAPI RtlCompareUnicodeString(PCUNICODE_STRING String1, PCUNICODE_STRING String2, BOOLEAN CaseInsensitive)
Definition: string_lib.cpp:31
NTSYSAPI NTSTATUS NTAPI RtlLargeIntegerToChar(_In_ PLARGE_INTEGER Value, _In_ ULONG Base, _In_ ULONG Length, _Out_ PCHAR String)
NTSYSAPI NTSTATUS NTAPI RtlIpv6AddressToStringExA(_In_ const struct in6_addr *Address, _In_ ULONG ScopeId, _In_ USHORT Port, _Out_writes_to_(*AddressStringLength, *AddressStringLength) PSTR AddressString, _Inout_ PULONG AddressStringLength)
Definition: network.c:530
NTSYSAPI NTSTATUS NTAPI RtlSetCurrentDirectory_U(_In_ PUNICODE_STRING name)
NTSYSAPI NTSTATUS NTAPI RtlAddAccessAllowedObjectAce(_Inout_ PACL pAcl, _In_ ULONG dwAceRevision, _In_ ULONG AceFlags, _In_ ACCESS_MASK AccessMask, _In_opt_ GUID *ObjectTypeGuid, _In_opt_ GUID *InheritedObjectTypeGuid, _In_ PSID pSid)
NTSYSAPI NTSTATUS NTAPI RtlEnterCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
NTSYSAPI NTSTATUS NTAPI RtlImageNtHeaderEx(_In_ ULONG Flags, _In_ PVOID BaseAddress, _In_ ULONGLONG Size, _Out_ PIMAGE_NT_HEADERS *NtHeader)
NTSYSAPI NTSTATUS NTAPI RtlGetFullPathName_UEx(_In_ PWSTR FileName, _In_ ULONG BufferLength, _Out_ PWSTR Buffer, _Out_opt_ PWSTR *FilePart, _Out_opt_ RTL_PATH_TYPE *InputPathType)
_In_opt_ ULONG Base
Definition: rtlfuncs.h:2451
NTSYSAPI NTSTATUS NTAPI RtlRemoteCall(_In_ HANDLE Process, _In_ HANDLE Thread, _In_ PVOID CallSite, _In_ ULONG ArgumentCount, _In_ PULONG Arguments, _In_ BOOLEAN PassContext, _In_ BOOLEAN AlreadySuspended)
NTSYSAPI NTSTATUS NTAPI RtlGetLengthWithoutTrailingPathSeperators(_Reserved_ ULONG Flags, _In_ PCUNICODE_STRING PathString, _Out_ PULONG Length)
NTSYSAPI VOID NTAPI RtlInitializeRangeList(_Out_ PRTL_RANGE_LIST RangeList)
NTSTATUS NTAPI RtlSetThreadPoolStartFunc(_In_ PRTL_START_POOL_THREAD StartPoolThread, _In_ PRTL_EXIT_POOL_THREAD ExitPoolThread)
NTSYSAPI NTSTATUS NTAPI RtlCreateAtomTable(_In_ ULONG TableSize, _Inout_ PRTL_ATOM_TABLE *AtomTable)
NTSYSAPI NTSTATUS NTAPI RtlSystemTimeToLocalTime(_In_ PLARGE_INTEGER SystemTime, _Out_ PLARGE_INTEGER LocalTime)
NTSYSAPI NTSTATUS NTAPI RtlGetSaclSecurityDescriptor(_In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _Out_ PBOOLEAN SaclPresent, _Out_ PACL *Sacl, _Out_ PBOOLEAN SaclDefaulted)
NTSYSAPI VOID NTAPI RtlExitUserThread(_In_ NTSTATUS Status)
NTSYSAPI BOOLEAN NTAPI RtlValidSid(IN PSID Sid)
Definition: sid.c:21
NTSYSAPI NTSTATUS NTAPI RtlCopySecurityDescriptor(_In_ PSECURITY_DESCRIPTOR pSourceSecurityDescriptor, _Out_ PSECURITY_DESCRIPTOR *pDestinationSecurityDescriptor)
NTSYSAPI BOOLEAN NTAPI RtlIsValidHandle(_In_ PRTL_HANDLE_TABLE HandleTable, _In_ PRTL_HANDLE_TABLE_ENTRY Handle)
NTSYSAPI CHAR NTAPI RtlUpperChar(CHAR Source)
NTSYSAPI NTSTATUS NTAPI RtlMapSecurityErrorToNtStatus(_In_ ULONG SecurityError)
NTSYSAPI NTSTATUS NTAPI RtlpEnsureBufferSize(_In_ ULONG Flags, _Inout_ PRTL_BUFFER Buffer, _In_ SIZE_T RequiredSize)
NTSYSAPI VOID NTAPI RtlWakeConditionVariable(_Inout_ PRTL_CONDITION_VARIABLE ConditionVariable)
NTSYSAPI BOOLEAN NTAPI RtlEqualPrefixSid(PSID Sid1, PSID Sid2)
_In_ ULONG _In_ ULONGLONG ConditionMask
Definition: rtlfuncs.h:4688
NTSYSAPI VOID NTAPI RtlpUnWaitCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
NTSYSAPI NTSTATUS NTAPI RtlFindRange(_In_ PRTL_RANGE_LIST RangeList, _In_ ULONGLONG Minimum, _In_ ULONGLONG Maximum, _In_ ULONG Length, _In_ ULONG Alignment, _In_ ULONG Flags, _In_ UCHAR AttributeAvailableMask, _In_opt_ PVOID Context, _In_opt_ PRTL_CONFLICT_RANGE_CALLBACK Callback, _Out_ PULONGLONG Start)
NTSYSAPI NTSTATUS NTAPI RtlCreateSecurityDescriptor(_Out_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ ULONG Revision)
NTSYSAPI NTSTATUS NTAPI RtlAddAuditAccessAceEx(_Inout_ PACL Acl, _In_ ULONG Revision, _In_ ULONG Flags, _In_ ACCESS_MASK AccessMask, _In_ PSID Sid, _In_ BOOLEAN Success, _In_ BOOLEAN Failure)
NTSYSAPI ULONG NTAPI RtlRandom(_Inout_ PULONG Seed)
_Out_writes_bytes_to_opt_ BufferLength PSECURITY_DESCRIPTOR SelfRelativeSecurityDescriptor
Definition: rtlfuncs.h:1132
NTSYSAPI NTSTATUS NTAPI RtlUnicodeToMultiByteN(PCHAR MbString, ULONG MbSize, PULONG ResultSize, PCWCH UnicodeString, ULONG UnicodeSize)
NTSYSAPI NTSTATUS NTAPI RtlValidateUnicodeString(_In_ ULONG Flags, _In_ PCUNICODE_STRING String)
Definition: unicode.c:2605
NTSYSAPI NTSTATUS NTAPI RtlQueryTimeZoneInformation(_Out_ PRTL_TIME_ZONE_INFORMATION TimeZoneInformation)
_In_opt_ PSID _In_opt_ BOOLEAN OwnerDefaulted
Definition: rtlfuncs.h:1684
ULONG NTAPI LdrRelocateImageWithBias(_In_ PVOID BaseAddress, _In_ LONGLONG AdditionalBias, _In_opt_ PCSTR LoaderName, _In_ ULONG Success, _In_ ULONG Conflict, _In_ ULONG Invalid)
Definition: image.c:474
NTSYSAPI NTSTATUS NTAPI RtlLeaveCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
NTSYSAPI PSTR NTAPI RtlIpv6AddressToStringA(_In_ const struct in6_addr *Addr, _Out_writes_(46) PSTR S)
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR _Inout_ PULONG _Out_writes_bytes_to_opt_ DaclSize PACL _Inout_ PULONG _Out_writes_bytes_to_opt_ SaclSize PACL Sacl
Definition: rtlfuncs.h:1607
NTSYSAPI NTSTATUS NTAPI RtlpWaitForCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
_Out_ _Inout_ POEM_STRING DestinationString
Definition: rtlfuncs.h:1921
_In_ ULONG _In_ SECURITY_INFORMATION RequiredInformation
Definition: rtlfuncs.h:1728
NTSYSAPI VOID NTAPI RtlPopFrame(_In_ PTEB_ACTIVE_FRAME Frame)
NTSYSAPI PUCHAR NTAPI RtlSubAuthorityCountSid(_In_ PSID Sid)
_In_ ULONG _In_ ULONG CompressedBufferSize
Definition: rtlfuncs.h:3294
NTSYSAPI NTSTATUS NTAPI RtlCreateUserThread(_In_ PVOID ThreadContext, _Out_ HANDLE *OutThreadHandle, _Reserved_ PVOID Reserved1, _Reserved_ PVOID Reserved2, _Reserved_ PVOID Reserved3, _Reserved_ PVOID Reserved4, _Reserved_ PVOID Reserved5, _Reserved_ PVOID Reserved6, _Reserved_ PVOID Reserved7, _Reserved_ PVOID Reserved8)
_In_ ULONG _In_ ULONG _Out_ PULONG FinalUncompressedSize
Definition: rtlfuncs.h:3296
NTSYSAPI PRTL_DEBUG_INFORMATION NTAPI RtlCreateQueryDebugBuffer(_In_ ULONG Size, _In_ BOOLEAN EventPair)
Definition: dbgbuffer.c:66
NTSYSAPI NTSTATUS NTAPI RtlIpv6StringToAddressExA(_In_ PCSTR AddressString, _Out_ struct in6_addr *Address, _Out_ PULONG ScopeId, _Out_ PUSHORT Port)
Definition: network.c:777
NTSYSAPI NTSTATUS NTAPI RtlAppendUnicodeStringToString(PUNICODE_STRING Destination, PCUNICODE_STRING Source)
NTSYSAPI VOID NTAPI RtlUnwind(_In_opt_ PVOID TargetFrame, _In_opt_ PVOID TargetIp, _In_opt_ PEXCEPTION_RECORD ExceptionRecord, _In_ PVOID ReturnValue)
Definition: unwind.c:912
NTSYSAPI NTSTATUS NTAPI RtlInitializeCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR _Inout_ PULONG _Out_writes_bytes_to_opt_ DaclSize PACL _Inout_ PULONG _Out_writes_bytes_to_opt_ SaclSize PACL _Inout_ PULONG _Out_writes_bytes_to_opt_ OwnerSize PSID _Inout_ PULONG _Out_writes_bytes_to_opt_ PrimaryGroupSize PSID _Inout_ PULONG PrimaryGroupSize
Definition: rtlfuncs.h:1613
NTSYSAPI NTSTATUS NTAPI RtlFormatCurrentUserKeyPath(_Out_ _At_(KeyPath->Buffer, __drv_allocatesMem(Mem) _Post_bytecap_(KeyPath->MaximumLength) _Post_bytecount_(KeyPath->Length)) PUNICODE_STRING KeyPath)
NTSYSAPI BOOLEAN NTAPI RtlDispatchException(_In_ PEXCEPTION_RECORD ExceptionRecord, _In_ PCONTEXT Context)
Definition: except.c:43
NTSYSAPI PWSTR NTAPI RtlIpv4AddressToStringW(_In_ const struct in_addr *Addr, _Out_writes_(16) PWCHAR S)
_In_ ULONG _In_ ACCESS_MASK _In_ PSID Sid
Definition: rtlfuncs.h:1145
NTSYSAPI NTSTATUS NTAPI RtlIntegerToUnicode(_In_ ULONG Value, _In_opt_ ULONG Base, _In_opt_ ULONG Length, _Inout_ LPWSTR String)
NTSYSAPI NTSTATUS NTAPI RtlGetNextRange(_Inout_ PRTL_RANGE_LIST_ITERATOR Iterator, _Outptr_ PRTL_RANGE *Range, _In_ BOOLEAN MoveForwards)
NTSYSAPI NTSTATUS NTAPI RtlGetGroupSecurityDescriptor(_In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _Out_ PSID *Group, _Out_ PBOOLEAN GroupDefaulted)
NTSYSAPI NTSTATUS NTAPI RtlGetFirstRange(_In_ PRTL_RANGE_LIST RangeList, _Out_ PRTL_RANGE_LIST_ITERATOR Iterator, _Outptr_ PRTL_RANGE *Range)
NTSYSAPI PVOID NTAPI RtlFreeSid(_In_ _Post_invalid_ PSID Sid)
NTSYSAPI USHORT NTAPI RtlLogStackBackTrace(VOID)
NTSYSAPI BOOLEAN NTAPI RtlCreateUnicodeStringFromAsciiz(_Out_ PUNICODE_STRING Destination, _In_ PCSZ Source)
NTSYSAPI VOID NTAPI RtlTimeToTimeFields(PLARGE_INTEGER Time, PTIME_FIELDS TimeFields)
DECLSPEC_NORETURN NTSYSAPI VOID NTAPI RtlRaiseStatus(_In_ NTSTATUS Status)
NTSYSAPI NTSTATUS NTAPI RtlAddAuditAccessObjectAce(_Inout_ PACL Acl, _In_ ULONG Revision, _In_ ULONG Flags, _In_ ACCESS_MASK AccessMask, _In_opt_ GUID *ObjectTypeGuid, _In_opt_ GUID *InheritedObjectTypeGuid, _In_ PSID Sid, _In_ BOOLEAN Success, _In_ BOOLEAN Failure)
NTSYSAPI ULONG NTAPI RtlxUnicodeStringToOemSize(IN PCUNICODE_STRING UnicodeString)
Definition: unicode.c:1091
NTSYSAPI ULONG NTAPI RtlGetFullPathName_U(_In_ PCWSTR FileName, _In_ ULONG Size, _Out_z_bytecap_(Size) PWSTR Buffer, _Out_opt_ PWSTR *ShortName)
Definition: path.c:1987
NTSYSAPI ULONG NTAPI RtlDosSearchPath_U(_In_ PCWSTR Path, _In_ PCWSTR FileName, _In_ PCWSTR Extension, _In_ ULONG BufferSize, _Out_ PWSTR Buffer, _Out_ PWSTR *PartName)
_Out_ PULONG ElapsedSeconds
Definition: rtlfuncs.h:4658
_Must_inspect_result_ NTSYSAPI NTSTATUS NTAPI RtlAllocateAndInitializeSid(_In_ PSID_IDENTIFIER_AUTHORITY IdentifierAuthority, _In_ UCHAR SubAuthorityCount, _In_ ULONG SubAuthority0, _In_ ULONG SubAuthority1, _In_ ULONG SubAuthority2, _In_ ULONG SubAuthority3, _In_ ULONG SubAuthority4, _In_ ULONG SubAuthority5, _In_ ULONG SubAuthority6, _In_ ULONG SubAuthority7, _Outptr_ PSID *Sid)
NTSYSAPI SIZE_T NTAPI RtlSizeHeap(_In_ PVOID HeapHandle, _In_ ULONG Flags, _In_ PVOID MemoryPointer)
NTSYSAPI VOID NTAPI RtlDumpResource(_In_ PRTL_RESOURCE Resource)
_In_ ULONG dwAceRevision
Definition: rtlfuncs.h:1153
NTSYSAPI NTSTATUS NTAPI RtlIpv4StringToAddressA(_In_ PCSTR String, _In_ BOOLEAN Strict, _Out_ PCSTR *Terminator, _Out_ struct in_addr *Addr)
Definition: network.c:338
NTSYSAPI NTSTATUS NTAPI RtlDeregisterWaitEx(_In_ HANDLE hWaitHandle, _In_opt_ HANDLE hCompletionEvent)
NTSYSAPI ULONG NTAPI RtlWalkFrameChain(_Out_writes_(Count -(Flags > > RTL_STACK_WALKING_MODE_FRAMES_TO_SKIP_SHIFT)) PVOID *Callers, _In_ ULONG Count, _In_ ULONG Flags)
NTSYSAPI NTSTATUS NTAPI RtlDeleteTimer(_In_ HANDLE TimerQueue, _In_ HANDLE Timer, _In_ HANDLE CompletionEvent)
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR _Inout_ PULONG AbsoluteSecurityDescriptorSize
Definition: rtlfuncs.h:1604
NTSYSAPI PSID_IDENTIFIER_AUTHORITY NTAPI RtlIdentifierAuthoritySid(PSID Sid)
_In_ ULONG SecurityDescriptorLength
Definition: rtlfuncs.h:1726
NTSYSAPI BOOLEAN NTAPI RtlCutoverTimeToSystemTime(_In_ PTIME_FIELDS CutoverTimeFields, _Out_ PLARGE_INTEGER SystemTime, _In_ PLARGE_INTEGER CurrentTime, _In_ BOOLEAN ThisYearsCutoverOnly)
NTSYSAPI NTSTATUS NTAPI RtlFindMessage(_In_ PVOID BaseAddress, _In_ ULONG Type, _In_ ULONG Language, _In_ ULONG MessageId, _Out_ PMESSAGE_RESOURCE_ENTRY *MessageResourceEntry)
NTSYSAPI NTSTATUS NTAPI RtlAddAccessDeniedAce(_Inout_ PACL Acl, _In_ ULONG Revision, _In_ ACCESS_MASK AccessMask, _In_ PSID Sid)
NTSYSAPI NTSTATUS NTAPI RtlDeleteTimerQueue(HANDLE TimerQueue)
Definition: timerqueue.c:595
PSLIST_ENTRY FASTCALL InterlockedPushListSList(_Inout_ PSLIST_HEADER ListHead, _Inout_ __drv_aliasesMem PSLIST_ENTRY List, _Inout_ PSLIST_ENTRY ListEnd, _In_ ULONG Count)
NTSYSAPI NTSTATUS NTAPI RtlDeregisterWait(_In_ HANDLE hWaitHandle)
NTSYSAPI NTSTATUS NTAPI RtlCopyRangeList(_Out_ PRTL_RANGE_LIST CopyRangeList, _In_ PRTL_RANGE_LIST RangeList)
NTSYSAPI NTSTATUS NTAPI RtlMakeSelfRelativeSD(_In_ PSECURITY_DESCRIPTOR AbsoluteSD, _Out_ PSECURITY_DESCRIPTOR SelfRelativeSD, _Inout_ PULONG BufferLength)
NTSYSAPI NTSTATUS NTAPI RtlAppendUnicodeToString(PUNICODE_STRING Destination, PCWSTR Source)
NTSYSAPI NTSTATUS NTAPI RtlDeleteAtomFromAtomTable(_In_ PRTL_ATOM_TABLE AtomTable, _In_ RTL_ATOM Atom)
NTSYSAPI VOID NTAPI RtlGetDefaultCodePage(_Out_ PUSHORT AnsiCodePage, _Out_ PUSHORT OemCodePage)
NTSYSAPI PRTL_USER_PROCESS_PARAMETERS NTAPI RtlDeNormalizeProcessParams(_In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters)
NTSYSAPI ULONG NTAPI DbgPrompt(_In_z_ PCCH Prompt, _Out_writes_bytes_(MaximumResponseLength) PCH Response, _In_ ULONG MaximumResponseLength)
NTSYSAPI NTSTATUS NTAPI RtlCreateTimer(_In_ HANDLE TimerQueue, _In_ PHANDLE phNewTimer, _In_ WAITORTIMERCALLBACKFUNC Callback, _In_ PVOID Parameter, _In_ ULONG DueTime, _In_ ULONG Period, _In_ ULONG Flags)
NTSYSAPI NTSTATUS NTAPI RtlAddAccessDeniedAceEx(_Inout_ PACL Acl, _In_ ULONG Revision, _In_ ULONG Flags, _In_ ACCESS_MASK AccessMask, _In_ PSID Sid)
NTSYSAPI NTSTATUS NTAPI RtlSetAttributesSecurityDescriptor(_Inout_ PSECURITY_DESCRIPTOR SecurityDescriptor, _In_ SECURITY_DESCRIPTOR_CONTROL Control, _Out_ PULONG Revision)
NTSYSAPI NTSTATUS NTAPI RtlDeleteAce(PACL Acl, ULONG AceIndex)
NTSYSAPI VOID NTAPI RtlInitializeResource(_In_ PRTL_RESOURCE Resource)
_In_ ULONG Revision
Definition: rtlfuncs.h:1142
NTSYSAPI PRTL_USER_PROCESS_PARAMETERS NTAPI RtlNormalizeProcessParams(_In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters)
NTSYSAPI VOID NTAPI RtlMapGenericMask(PACCESS_MASK AccessMask, PGENERIC_MAPPING GenericMapping)
_In_ const STRING * Source
Definition: rtlfuncs.h:2430
NTSYSAPI BOOLEAN NTAPI RtlCreateUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
NTSYSAPI NTSTATUS NTAPI RtlIntegerToChar(_In_ ULONG Value, _In_ ULONG Base, _In_ ULONG Length, _Out_ PCHAR String)
NTSYSAPI ULONG NTAPI RtlxUnicodeStringToAnsiSize(IN PCUNICODE_STRING UnicodeString)
Definition: unicode.c:2177
NTSYSAPI NTSTATUS NTAPI RtlCreateSecurityDescriptorRelative(_Out_ PISECURITY_DESCRIPTOR_RELATIVE SecurityDescriptor, _In_ ULONG Revision)
*BytesInUnicodeString PWCH _In_ ULONG _Out_opt_ PULONG _In_ ULONG BytesInMultiByteString
Definition: rtlfuncs.h:2588
NTSYSAPI NTSTATUS NTAPI RtlGetDaclSecurityDescriptor(_In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _Out_ PBOOLEAN DaclPresent, _Out_ PACL *Dacl, _Out_ PBOOLEAN DaclDefaulted)
NTSYSAPI ULONG NTAPI RtlIsCriticalSectionLockedByThread(_In_ PRTL_CRITICAL_SECTION CriticalSection)
NTSYSAPI NTSTATUS NTAPI RtlGetOwnerSecurityDescriptor(_In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _Out_ PSID *Owner, _Out_ PBOOLEAN OwnerDefaulted)
NTSYSAPI NTSTATUS NTAPI RtlUpcaseUnicodeToOemN(PCHAR OemString, ULONG OemSize, PULONG ResultSize, PCWCH UnicodeString, ULONG UnicodeSize)
_Inout_opt_ POEM_STRING OemName
Definition: rtlfuncs.h:3101
NTSYSAPI ULONG NTAPI RtlIsCriticalSectionLocked(_In_ PRTL_CRITICAL_SECTION CriticalSection)
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR _Inout_ PULONG _Out_writes_bytes_to_opt_ DaclSize PACL _Inout_ PULONG DaclSize
Definition: rtlfuncs.h:1606
_In_ ULONG UncompressedBufferSize
Definition: rtlfuncs.h:3292
NTSYSAPI VOID NTAPI RtlCopyString(_Out_ PSTRING DestinationString, _In_opt_ const STRING *SourceString)
NTSYSAPI VOID NTAPI RtlInitializeContext(_In_ HANDLE ProcessHandle, _Out_ PCONTEXT ThreadContext, _In_opt_ PVOID ThreadStartParam, _In_ PTHREAD_START_ROUTINE ThreadStartAddress, _In_ PINITIAL_TEB InitialTeb)
NTSYSAPI BOOLEAN NTAPI RtlEqualSid(_In_ PSID Sid1, _In_ PSID Sid2)
NTSYSAPI BOOLEAN NTAPI RtlAcquireResourceExclusive(_In_ PRTL_RESOURCE Resource, _In_ BOOLEAN Wait)
NTSYSAPI VOID NTAPI RtlCopyUnicodeString(PUNICODE_STRING DestinationString, PCUNICODE_STRING SourceString)
_In_ ULONG _In_ ACCESS_MASK AccessMask
Definition: rtlfuncs.h:1143
VOID NTAPI DbgUnLoadImageSymbols(_In_ PSTRING Name, _In_ PVOID Base, _In_ ULONG_PTR ProcessId)
NTSYSAPI BOOLEAN NTAPI RtlIsThreadWithinLoaderCallout(VOID)
Definition: libsupp.c:347
NTSYSAPI NTSTATUS NTAPI RtlUnicodeToOemN(PCHAR OemString, ULONG OemSize, PULONG ResultSize, PCWCH UnicodeString, ULONG UnicodeSize)
NTSYSAPI NTSTATUS NTAPI RtlSleepConditionVariableSRW(_Inout_ PRTL_CONDITION_VARIABLE ConditionVariable, _Inout_ PRTL_SRWLOCK SRWLock, _In_opt_ PLARGE_INTEGER TimeOut, _In_ ULONG Flags)
NTSYSAPI BOOLEAN NTAPI RtlEqualUnicodeString(PCUNICODE_STRING String1, PCUNICODE_STRING String2, BOOLEAN CaseInsensitive)
NTSYSAPI VOID NTAPI RtlCaptureContext(_Out_ PCONTEXT ContextRecord)
NTSYSAPI NTSTATUS NTAPI RtlDeleteTimerQueueEx(_In_ HANDLE TimerQueue, _In_opt_ HANDLE CompletionEvent)
NTSYSAPI BOOLEAN NTAPI RtlValidSecurityDescriptor(IN PSECURITY_DESCRIPTOR SecurityDescriptor)
Definition: sd.c:1054
*BytesInUnicodeString PWCH _In_ ULONG _Out_opt_ PULONG _In_ ULONG BytesInOemString
Definition: rtlfuncs.h:2050
NTSYSAPI NTSTATUS NTAPI RtlIpv6StringToAddressA(_In_ PCSTR String, _Out_ PCSTR *Terminator, _Out_ struct in6_addr *Addr)
Definition: network.c:745
#define RTL_STACK_WALKING_MODE_FRAMES_TO_SKIP_SHIFT
Definition: rtlfuncs.h:820
NTSYSAPI WCHAR NTAPI RtlDowncaseUnicodeChar(IN WCHAR Source)
Definition: nls.c:131
NTSYSAPI BOOLEAN NTAPI RtlFirstFreeAce(PACL Acl, PACE *Ace)
NTSYSAPI NTSTATUS NTAPI RtlAdjustPrivilege(_In_ ULONG Privilege, _In_ BOOLEAN NewValue, _In_ BOOLEAN ForThread, _Out_ PBOOLEAN OldValue)
NTSYSAPI BOOLEAN NTAPI RtlDosPathNameToRelativeNtPathName_U(_In_ PCWSTR DosName, _Out_ PUNICODE_STRING NtName, _Out_ PCWSTR *PartName, _Out_ PRTL_RELATIVE_NAME_U RelativeName)
NTSYSAPI NTSTATUS NTAPI RtlQueryEnvironmentVariable_U(_In_opt_ PWSTR Environment, _In_ PCUNICODE_STRING Name, _Out_ PUNICODE_STRING Value)
NTSYSAPI NTSTATUS NTAPI RtlAddAccessDeniedObjectAce(_Inout_ PACL pAcl, _In_ ULONG dwAceRevision, _In_ ULONG AceFlags, _In_ ACCESS_MASK AccessMask, _In_opt_ GUID *ObjectTypeGuid, _In_opt_ GUID *InheritedObjectTypeGuid, _In_ PSID pSid)
NTSYSAPI VOID NTAPI RtlDeleteResource(_In_ PRTL_RESOURCE Resource)
NTSYSAPI NTSTATUS NTAPI RtlIpv4StringToAddressW(_In_ PCWSTR String, _In_ BOOLEAN Strict, _Out_ PCWSTR *Terminator, _Out_ struct in_addr *Addr)
Definition: network.c:405
NTSYSAPI VOID NTAPI RtlFreeRangeList(_In_ PRTL_RANGE_LIST RangeList)
NTSYSAPI PSTR NTAPI RtlIpv4AddressToStringA(_In_ const struct in_addr *Addr, _Out_writes_(16) PCHAR S)
NTSYSAPI ULONG NTAPI RtlGetCurrentDirectory_U(_In_ ULONG MaximumLength, _Out_bytecap_(MaximumLength) PWSTR Buffer)
Definition: path.c:1661
NTSYSAPI NTSTATUS NTAPI RtlQueryAtomInAtomTable(_In_ PRTL_ATOM_TABLE AtomTable, _In_ RTL_ATOM Atom, _Out_opt_ PULONG RefCount, _Out_opt_ PULONG PinCount, _Out_opt_z_bytecap_(*NameLength) PWSTR AtomName, _Inout_opt_ PULONG NameLength)
NTSYSAPI VOID NTAPI RtlSecondsSince1970ToTime(_In_ ULONG SecondsSince1970, _Out_ PLARGE_INTEGER Time)
NTSYSAPI ULONG NTAPI RtlxOemStringToUnicodeSize(IN PCOEM_STRING OemString)
Definition: unicode.c:2124
_In_ PWSTR Path
Definition: rtlfuncs.h:4186
_In_ PSID_IDENTIFIER_AUTHORITY IdentifierAuthority
Definition: rtlfuncs.h:1525
NTSYSAPI ULONG NTAPI RtlGetCurrentProcessorNumber(VOID)
Definition: process.c:491
NTSYSAPI NTSTATUS NTAPI RtlNtPathNameToDosPathName(_In_ ULONG Flags, _Inout_ PRTL_UNICODE_STRING_BUFFER Path, _Out_opt_ PULONG PathType, _Out_opt_ PULONG Unknown)
_In_ BOOLEAN _In_opt_ PACL _In_opt_ BOOLEAN DaclDefaulted
Definition: rtlfuncs.h:1650
NTSYSAPI NTSTATUS NTAPI RtlIpv4StringToAddressExW(_In_ PCWSTR AddressString, _In_ BOOLEAN Strict, _Out_ struct in_addr *Address, _Out_ PUSHORT Port)
Definition: network.c:450
*BytesInUnicodeString PWCH _In_ ULONG MaxBytesInUnicodeString
Definition: rtlfuncs.h:2046
NTSYSAPI BOOLEAN NTAPI RtlDosPathNameToNtPathName_U(_In_opt_z_ PCWSTR DosPathName, _Out_ PUNICODE_STRING NtPathName, _Out_opt_ PCWSTR *NtFileNamePart, _Out_opt_ PRTL_RELATIVE_NAME_U DirectoryInfo)
_In_ ULONG _Out_ PRTL_HANDLE_TABLE_ENTRY * Handle
Definition: rtlfuncs.h:3923
NTSYSAPI BOOLEAN NTAPI RtlAreAllAccessesGranted(ACCESS_MASK GrantedAccess, ACCESS_MASK DesiredAccess)
NTSYSAPI NTSTATUS NTAPI RtlAnsiStringToUnicodeString(PUNICODE_STRING DestinationString, PCANSI_STRING SourceString, BOOLEAN AllocateDestinationString)
NTSYSAPI NTSTATUS NTAPI RtlUpcaseUnicodeToMultiByteN(PCHAR MbString, ULONG MbSize, PULONG ResultSize, PCWCH UnicodeString, ULONG UnicodeSize)
NTSYSAPI PWSTR NTAPI RtlIpv6AddressToStringW(_In_ const struct in6_addr *Addr, _Out_writes_(46) PWSTR S)
NTSYSAPI NTSTATUS NTAPI RtlCharToInteger(PCSZ String, ULONG Base, PULONG Value)
Definition: unicode.c:261
VOID NTAPI DbgLoadImageSymbols(_In_ PSTRING Name, _In_ PVOID Base, _In_ ULONG_PTR ProcessId)
NTSYSAPI VOID NTAPI RtlRaiseException(_In_ PEXCEPTION_RECORD ExceptionRecord)
NTSYSAPI BOOLEAN NTAPI RtlDoesFileExists_U(_In_ PCWSTR FileName)
NTSYSAPI NTSTATUS __cdecl RtlSetProcessIsCritical(_In_ BOOLEAN NewValue, _Out_opt_ PBOOLEAN OldValue, _In_ BOOLEAN NeedBreaks)
NTSYSAPI WCHAR NTAPI RtlUpcaseUnicodeChar(WCHAR Source)
NTSYSAPI NTSTATUS NTAPI RtlUpdateTimer(_In_ HANDLE TimerQueue, _In_ HANDLE Timer, _In_ ULONG DueTime, _In_ ULONG Period)
NTSYSAPI BOOLEAN NTAPI RtlAreAnyAccessesGranted(ACCESS_MASK GrantedAccess, ACCESS_MASK DesiredAccess)
NTSYSAPI VOID NTAPI RtlReleaseResource(_In_ PRTL_RESOURCE Resource)
NTSYSAPI NTSTATUS NTAPI RtlComputePrivatizedDllName_U(_In_ PUNICODE_STRING DllName, _Inout_ PUNICODE_STRING RealName, _Inout_ PUNICODE_STRING LocalName)
Definition: path.c:586
NTSTATUS(NTAPI * PRTL_START_POOL_THREAD)(_In_ PTHREAD_START_ROUTINE Function, _In_ PVOID Parameter, _Out_ PHANDLE ThreadHandle)
Definition: rtltypes.h:580
@ HeapCompatibilityInformation
Definition: rtltypes.h:488
enum _RTL_BSD_ITEM_TYPE RTL_BSD_ITEM_TYPE
NTSTATUS(NTAPI * PRTL_EXIT_POOL_THREAD)(_In_ NTSTATUS ExitStatus)
Definition: rtltypes.h:587
ULONG(NTAPI * PTHREAD_START_ROUTINE)(PVOID Parameter)
Definition: rtltypes.h:566
VOID(NTAPI * WAITORTIMERCALLBACKFUNC)(PVOID pvContext, BOOLEAN fTimerOrWaitFired)
Definition: rtltypes.h:496
LONG(NTAPI * PVECTORED_EXCEPTION_HANDLER)(PEXCEPTION_POINTERS ExceptionPointers)
Definition: rtltypes.h:505
BOOLEAN(NTAPI * PRTL_CONFLICT_RANGE_CALLBACK)(PVOID Context, struct _RTL_RANGE *Range)
Definition: rtltypes.h:703
RTLP_UNHANDLED_EXCEPTION_FILTER * PRTLP_UNHANDLED_EXCEPTION_FILTER
Definition: rtltypes.h:552
enum _RTL_PATH_TYPE RTL_PATH_TYPE
enum _HEAP_INFORMATION_CLASS HEAP_INFORMATION_CLASS
VOID(NTAPI * WORKERCALLBACKFUNC)(_In_ PVOID Context)
Definition: rtltypes.h:513
_Use_decl_annotations_ NTSTATUS NTAPI RtlMultiByteToUnicodeN(_Out_ PWCH UnicodeString, _In_ ULONG UnicodeSize, _Out_opt_ PULONG ResultSize, _In_ PCCH MbString, _In_ ULONG MbSize)
Definition: nlsboot.c:62
_Use_decl_annotations_ NTSTATUS NTAPI RtlOemToUnicodeN(_Out_ PWCHAR UnicodeString, _In_ ULONG UnicodeSize, _Out_opt_ PULONG ResultSize, _In_ PCCH OemString, _In_ ULONG OemSize)
Definition: nlsboot.c:282
_Use_decl_annotations_ NTSTATUS NTAPI RtlMultiByteToUnicodeSize(_Out_ PULONG UnicodeSize, _In_ PCCH MbString, _In_ ULONG MbSize)
Definition: nlsboot.c:93
int Count
Definition: noreturn.cpp:7
NTSYSAPI PVOID NTAPI RtlDestroyHeap(IN PVOID HeapHandle)
NTSYSAPI VOID NTAPI RtlFreeAnsiString(PANSI_STRING AnsiString)
NTSYSAPI VOID NTAPI RtlInitString(PSTRING DestinationString, PCSZ SourceString)
ULONG ACCESS_MASK
Definition: nt_native.h:40
ACCESS_MASK * PACCESS_MASK
Definition: nt_native.h:41
NTSYSAPI VOID NTAPI RtlInitUnicodeString(PUNICODE_STRING DestinationString, PCWSTR SourceString)
NTSYSAPI PVOID NTAPI RtlCreateHeap(IN ULONG Flags, IN PVOID HeapBase OPTIONAL, IN ULONG ReserveSize OPTIONAL, IN ULONG CommitSize OPTIONAL, IN PVOID Lock OPTIONAL, IN PRTL_HEAP_PARAMETERS Parameters OPTIONAL)
#define FASTCALL
Definition: nt_native.h:50
NTSYSAPI NTSTATUS NTAPI RtlUnicodeStringToInteger(PUNICODE_STRING String, ULONG Base, PULONG Value)
NTSYSAPI NTSTATUS NTAPI RtlIntegerToUnicodeString(ULONG Value, ULONG Base, PUNICODE_STRING String)
NTSYSAPI LONG NTAPI RtlCompareString(PSTRING String1, PSTRING String2, BOOLEAN CaseInSensitive)
NTSYSAPI VOID NTAPI RtlFreeUnicodeString(PUNICODE_STRING UnicodeString)
NTSYSAPI BOOLEAN NTAPI RtlEqualString(PSTRING String1, PSTRING String2, BOOLEAN CaseInSensitive)
NTSYSAPI BOOLEAN NTAPI RtlPrefixUnicodeString(IN PUNICODE_STRING String1, IN PUNICODE_STRING String2, IN BOOLEAN CaseInSensitive)
NTSYSAPI VOID NTAPI RtlUpperString(PSTRING DestinationString, PSTRING SourceString)
NTSYSAPI VOID NTAPI RtlInitAnsiString(PANSI_STRING DestinationString, PCSZ SourceString)
VOID(* PIO_APC_ROUTINE)(IN PVOID ApcContext, IN PIO_STATUS_BLOCK IoStatusBlock, IN ULONG Reserved)
Definition: nt_native.h:877
_IRQL_requires_same_ _In_ PVOID EstablisherFrame
Definition: ntbasedef.h:653
WCHAR * PWCH
Definition: ntbasedef.h:410
_IRQL_requires_same_ _In_ PVOID _Inout_ struct _CONTEXT * ContextRecord
Definition: ntbasedef.h:654
CHAR * PCH
Definition: ntbasedef.h:391
CONST WCHAR * PCWCH
Definition: ntbasedef.h:411
__GNU_EXTENSION typedef unsigned __int64 * PULONGLONG
Definition: ntbasedef.h:383
#define DECLSPEC_NORETURN
Definition: ntbasedef.h:176
CONST CHAR * PCCH
Definition: ntbasedef.h:392
_In_ ULONG _In_ ULONG Offset
Definition: ntddpcm.h:101
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
NTSYSAPI NTSTATUS NTAPI RtlSetGroupSecurityDescriptor(IN OUT PSECURITY_DESCRIPTOR SecurityDescriptor, IN PSID Group, IN BOOLEAN GroupDefaulted)
Definition: sd.c:410
NTSYSAPI NTSTATUS NTAPI RtlConvertSidToUnicodeString(OUT PUNICODE_STRING DestinationString, IN PVOID Sid, IN BOOLEAN AllocateDestinationString)
NTSYSAPI NTSTATUS NTAPI RtlAbsoluteToSelfRelativeSD(IN PSECURITY_DESCRIPTOR AbsoluteSecurityDescriptor, IN OUT PSECURITY_DESCRIPTOR SelfRelativeSecurityDescriptor, IN PULONG BufferLength)
Definition: sd.c:626
NTSYSAPI NTSTATUS NTAPI RtlInitializeSid(IN OUT PSID Sid, IN PSID_IDENTIFIER_AUTHORITY IdentifierAuthority, IN UCHAR SubAuthorityCount)
NTSTATUS NTAPI RtlFindCharInUnicodeString(_In_ ULONG Flags, _In_ PCUNICODE_STRING SearchString, _In_ PCUNICODE_STRING MatchString, _Out_ PUSHORT Position)
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:455
#define CONST
Definition: pedump.c:81
long LONG
Definition: pedump.c:60
unsigned short USHORT
Definition: pedump.c:61
static WCHAR Address[46]
Definition: ping.c:68
#define REFIID
Definition: guiddef.h:118
#define RtlUTF8ToUnicodeN
Definition: reactos.cpp:12
VOID NTAPI RtlAssert(IN PVOID FailedAssertion, IN PVOID FileName, IN ULONG LineNumber, IN PCHAR Message OPTIONAL)
Definition: rtlcompat.c:68
@ Reserved3
Definition: sacdrv.h:1471
@ Reserved4
Definition: sacdrv.h:1472
@ Reserved5
Definition: sacdrv.h:1473
@ Restart
Definition: sacdrv.h:269
NTSTATUS NTAPI RtlSetInformationAcl(IN PACL Acl, IN PVOID Information, IN ULONG InformationLength, IN ACL_INFORMATION_CLASS InformationClass)
Definition: acl.c:785
NTSTATUS WINAPI RtlActivateActivationContextEx(ULONG flags, TEB *teb, HANDLE handle, ULONG_PTR *cookie)
Definition: actctx.c:5450
VOID NTAPI RtlClearBit(_In_ PRTL_BITMAP BitMapHeader, _In_ BITMAP_INDEX BitNumber)
Definition: bitmap.c:294
NTSTATUS NTAPI RtlLockBootStatusData(_Out_ PHANDLE FileHandle)
Definition: bootdata.c:231
NTSTATUS NTAPI RtlGetSetBootStatusData(_In_ HANDLE FileHandle, _In_ BOOLEAN Read, _In_ RTL_BSD_ITEM_TYPE DataClass, _In_ PVOID Buffer, _In_ ULONG BufferSize, _Out_opt_ PULONG ReturnLength)
Definition: bootdata.c:161
NTSTATUS NTAPI RtlUnlockBootStatusData(_In_ HANDLE FileHandle)
Definition: bootdata.c:267
NTSTATUS NTAPI RtlCreateBootStatusDataFile(VOID)
Definition: bootdata.c:98
VOID NTAPI RtlRunEncodeUnicodeString(IN OUT PUCHAR Hash, IN OUT PUNICODE_STRING String)
Definition: encode.c:43
VOID NTAPI RtlRunDecodeUnicodeString(IN UCHAR Hash, IN OUT PUNICODE_STRING String)
Definition: encode.c:20
VOID NTAPI RtlSetUnhandledExceptionFilter(IN PRTLP_UNHANDLED_EXCEPTION_FILTER TopLevelExceptionFilter)
Definition: exception.c:341
LONG NTAPI RtlUnhandledExceptionFilter(IN struct _EXCEPTION_POINTERS *ExceptionInfo)
Definition: exception.c:313
BOOLEAN NTAPI RtlGetUserInfoHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID BaseAddress, OUT PVOID *UserValue, OUT PULONG UserFlags)
Definition: heap.c:3934
NTSTATUS NTAPI RtlUsageHeap(IN HANDLE Heap, IN ULONG Flags, OUT PRTL_HEAP_USAGE Usage)
Definition: heap.c:4001
ULONG NTAPI RtlMultipleFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN ULONG Count, OUT PVOID *Array)
Definition: heap.c:4167
BOOLEAN NTAPI RtlSetUserFlagsHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID BaseAddress, IN ULONG UserFlagsReset, IN ULONG UserFlagsSet)
Definition: heap.c:3879
PWSTR NTAPI RtlQueryTagHeap(IN PVOID HeapHandle, IN ULONG Flags, IN USHORT TagIndex, IN BOOLEAN ResetCounters, OUT PRTL_HEAP_TAG_INFO HeapTagInfo)
Definition: heap.c:4012
ULONG NTAPI RtlCreateTagHeap(_In_ HANDLE HeapHandle, _In_ ULONG Flags, _In_opt_ PWSTR TagName, _In_ PWSTR TagSubName)
Definition: heap.c:4037
PVOID NTAPI RtlProtectHeap(IN PVOID HeapHandle, IN BOOLEAN ReadOnly)
Definition: heap.c:4058
BOOLEAN NTAPI RtlSetUserValueHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID BaseAddress, IN PVOID UserValue)
Definition: heap.c:3817
ULONG NTAPI RtlExtendHeap(IN HANDLE Heap, IN ULONG Flags, IN PVOID P, IN SIZE_T Size)
Definition: heap.c:4025
ULONG NTAPI RtlMultipleAllocateHeap(IN PVOID HeapHandle, IN ULONG Flags, IN SIZE_T Size, IN ULONG Count, OUT PVOID *Array)
Definition: heap.c:4131
NTSYSAPI HANDLE NTAPI RtlDebugCreateHeap(ULONG Flags, PVOID Addr, SIZE_T TotalSize, SIZE_T CommitSize, PVOID Lock, PRTL_HEAP_PARAMETERS Parameters)
Definition: heapdbg.c:20
VOID NTAPI RtlInitCodePageTable(IN PUSHORT TableBase, OUT PCPTABLEINFO CodePageTable)
Definition: nls.c:155
PVOID NTAPI RtlEncodeSystemPointer(IN PVOID Pointer)
Definition: process.c:429
PVOID NTAPI RtlDecodeSystemPointer(IN PVOID Pointer)
Definition: process.c:439
NTSTATUS NTAPI RtlpNtSetValueKey(IN HANDLE KeyHandle, IN ULONG Type, IN PVOID Data, IN ULONG DataLength)
Definition: registry.c:988
NTSTATUS NTAPI RtlpNtQueryValueKey(IN HANDLE KeyHandle, OUT PULONG Type OPTIONAL, OUT PVOID Data OPTIONAL, IN OUT PULONG DataLength OPTIONAL, IN ULONG Unused)
Definition: registry.c:933
NTSTATUS NTAPI RtlpNtOpenKey(OUT HANDLE KeyHandle, IN ACCESS_MASK DesiredAccess, IN POBJECT_ATTRIBUTES ObjectAttributes, IN ULONG Unused)
Definition: registry.c:912
NTSTATUS NTAPI RtlpNtMakeTemporaryKey(IN HANDLE KeyHandle)
Definition: registry.c:901
VOID NTAPI RtlRunOnceInitialize(_Out_ PRTL_RUN_ONCE RunOnce)
Definition: runonce.c:11
_Maybe_raises_SEH_exception_ NTSTATUS NTAPI RtlRunOnceExecuteOnce(_Inout_ PRTL_RUN_ONCE RunOnce, _In_ __inner_callback PRTL_RUN_ONCE_INIT_FN InitFn, _Inout_opt_ PVOID Parameter, _Outptr_opt_result_maybenull_ PVOID *Context)
Definition: runonce.c:121
NTSTATUS NTAPI RtlRunOnceComplete(_Inout_ PRTL_RUN_ONCE RunOnce, _In_ ULONG Flags, _In_opt_ PVOID Context)
Definition: runonce.c:73
_Must_inspect_result_ NTSTATUS NTAPI RtlRunOnceBeginInitialize(_Inout_ PRTL_RUN_ONCE RunOnce, _In_ ULONG Flags, _Outptr_opt_result_maybenull_ PVOID *Context)
Definition: runonce.c:22
BOOLEAN NTAPI RtlFlushSecureMemoryCache(IN PVOID MemoryCache, IN OPTIONAL SIZE_T MemoryLength)
Definition: security.c:830
NTSTATUS NTAPI RtlRegisterSecureMemoryCacheCallback(IN PRTL_SECURE_MEMORY_CACHE_CALLBACK Callback)
Definition: security.c:819
#define STATUS_SUCCESS
Definition: shellext.h:65
#define __analysis_noreturn
Definition: specstrings.h:262
_In_ const GUID _In_ ULONG PinCount
Definition: strmini.h:505
Definition: shell.h:41
base for all directory entries
Definition: entries.h:138
base of all file and directory entries
Definition: entries.h:83
Definition: ncftp.h:89
root entry for file system trees
Definition: entries.h:148
Definition: movable.cpp:9
Definition: rtltypes.h:993
Definition: scsiwmi.h:51
Definition: typedefs.h:120
struct _LIST_ENTRY * Blink
Definition: typedefs.h:122
struct _LIST_ENTRY * Flink
Definition: typedefs.h:121
LONG HighPart
DWORD LowPart
Definition: rtltypes.h:1896
Definition: rtltypes.h:1247
Definition: ntbasedef.h:628
struct _SINGLE_LIST_ENTRY * Next
Definition: ntbasedef.h:629
unsigned short Length
Definition: sprintf.c:451
void * Buffer
Definition: sprintf.c:453
unsigned short MaximumLength
Definition: sprintf.c:452
Definition: compat.h:836
USHORT MaximumLength
Definition: env_spec_w32.h:370
Definition: tcpip.h:126
Definition: name.c:39
Definition: range.c:39
static COORD Position
Definition: mouse.c:34
@ Reserved7
Definition: tvratings.idl:14
ULONG_PTR * PSIZE_T
Definition: typedefs.h:80
uint64_t * PDWORD64
Definition: typedefs.h:67
uint16_t * PWSTR
Definition: typedefs.h:56
uint32_t * PULONG_PTR
Definition: typedefs.h:65
uint32_t * PULONG
Definition: typedefs.h:59
char * PSTR
Definition: typedefs.h:51
const uint16_t * PCWSTR
Definition: typedefs.h:57
int64_t LONG64
Definition: typedefs.h:68
unsigned char * PBOOLEAN
Definition: typedefs.h:53
uint64_t DWORD64
Definition: typedefs.h:67
int64_t LONGLONG
Definition: typedefs.h:68
#define NTAPI
Definition: typedefs.h:36
ULONG_PTR SIZE_T
Definition: typedefs.h:80
int32_t INT
Definition: typedefs.h:58
uint16_t * PUSHORT
Definition: typedefs.h:56
const char * PCSTR
Definition: typedefs.h:52
uint32_t ULONG_PTR
Definition: typedefs.h:65
#define IN
Definition: typedefs.h:39
uint16_t * PWCHAR
Definition: typedefs.h:56
unsigned char * PUCHAR
Definition: typedefs.h:53
uint32_t ULONG
Definition: typedefs.h:59
uint64_t ULONGLONG
Definition: typedefs.h:67
#define OUT
Definition: typedefs.h:40
char CCHAR
Definition: typedefs.h:51
char * PCHAR
Definition: typedefs.h:51
ULONG CLONG
Definition: umtypes.h:126
CONST STRING * PCOEM_STRING
Definition: umtypes.h:205
#define NTAPI_INLINE
Definition: umtypes.h:68
CONST char * PCSZ
Definition: umtypes.h:125
LONGLONG QuadPart
Definition: typedefs.h:114
PEXCEPTION_ROUTINE NTAPI RtlVirtualUnwind(_In_ ULONG HandlerType, _In_ ULONG64 ImageBase, _In_ ULONG64 ControlPc, _In_ PRUNTIME_FUNCTION FunctionEntry, _Inout_ PCONTEXT Context, _Outptr_ PVOID *HandlerData, _Out_ PULONG64 EstablisherFrame, _Inout_opt_ PKNONVOLATILE_CONTEXT_POINTERS ContextPointers)
Definition: unwind.c:478
PRUNTIME_FUNCTION NTAPI RtlLookupFunctionEntry(IN DWORD64 ControlPc, OUT PDWORD64 ImageBase, OUT PUNWIND_HISTORY_TABLE HistoryTable)
Locates the RUNTIME_FUNCTION entry corresponding to a code address. http://msdn.microsoft....
Definition: unwind.c:124
BOOL Privilege(LPTSTR pszPrivilege, BOOL bEnable)
Definition: user_lib.cpp:531
unsigned long Ulong
Definition: utypes.h:42
DECLSPEC_HOTPATCH PVOID NTAPI RtlAddVectoredContinueHandler(IN ULONG FirstHandler, IN PVECTORED_EXCEPTION_HANDLER VectoredHandler)
Definition: vectoreh.c:311
ULONG NTAPI RtlRemoveVectoredContinueHandler(IN PVOID VectoredHandlerHandle)
Definition: vectoreh.c:333
int ret
_In_ WDFCHILDLIST _In_ PWDF_CHILD_LIST_ITERATOR Iterator
Definition: wdfchildlist.h:656
_In_ WDFCOLLECTION _In_ ULONG Index
_Must_inspect_result_ _In_ WDFDMAENABLER _In_ _In_opt_ PWDF_OBJECT_ATTRIBUTES Attributes
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK DesiredAccess
Definition: wdfdevice.h:2658
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
Definition: wdfdevice.h:4533
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ ULONG _Out_ PVOID _Out_ PULONG RequiredSize
Definition: wdfdevice.h:4439
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
Definition: wdfdevice.h:3771
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
Definition: wdfdevice.h:2433
_In_ WDFDMATRANSACTION _In_ size_t MaximumLength
_In_ WDFDPC _In_ BOOLEAN Wait
Definition: wdfdpc.h:170
_In_ WDFINTERRUPT _In_ PFN_WDF_INTERRUPT_SYNCHRONIZE Callback
Definition: wdfinterrupt.h:458
_Must_inspect_result_ _In_ WDFQUEUE _In_opt_ WDFREQUEST _In_opt_ WDFFILEOBJECT _Inout_opt_ PWDF_REQUEST_PARAMETERS Parameters
Definition: wdfio.h:869
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PLONGLONG _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesWritten
Definition: wdfiotarget.h:960
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR _In_opt_ PLONGLONG _In_opt_ PWDF_REQUEST_SEND_OPTIONS _Out_opt_ PULONG_PTR BytesRead
Definition: wdfiotarget.h:870
_In_ WDFMEMORY _Out_opt_ size_t * BufferSize
Definition: wdfmemory.h:254
_Must_inspect_result_ _In_ WDFOBJECT _In_ CONST GUID * Guid
Definition: wdfobject.h:762
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG _Out_opt_ PULONG _Out_opt_ PULONG ValueType
Definition: wdfregistry.h:282
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING ValueName
Definition: wdfregistry.h:243
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _In_ ULONG ValueLength
Definition: wdfregistry.h:275
_Must_inspect_result_ _In_ WDFKEY _In_ PCUNICODE_STRING _Out_opt_ PUSHORT _Inout_opt_ PUNICODE_STRING Value
Definition: wdfregistry.h:413
_In_ WDFIOTARGET Target
Definition: wdfrequest.h:306
_In_ WDFREQUEST _In_ PIO_STACK_LOCATION Stack
Definition: wdfrequest.h:639
_In_ WDFREQUEST _In_ NTSTATUS _In_ ULONG_PTR Information
Definition: wdfrequest.h:1049
_Must_inspect_result_ _In_ WDFCMRESLIST List
Definition: wdfresource.h:550
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFWAITLOCK * Lock
Definition: wdfsync.h:127
_In_ WDFTIMER _In_ LONGLONG DueTime
Definition: wdftimer.h:190
#define FORCEINLINE
Definition: wdftypes.h:67
_In_ WDF_WMI_PROVIDER_CONTROL Control
Definition: wdfwmi.h:166
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1176
enum _ACL_INFORMATION_CLASS ACL_INFORMATION_CLASS
_In_ ULONG _Out_opt_ PULONG RequiredLength
Definition: wmifuncs.h:30
_IRQL_requires_same_ typedef _In_ ULONG _In_ UCHAR Level
Definition: wmitypes.h:56
_In_ USHORT _In_ ULONG _In_ PSOCKADDR _In_ PSOCKADDR _Reserved_ ULONG _In_opt_ PVOID _In_opt_ const WSK_CLIENT_CONNECTION_DISPATCH _In_opt_ PEPROCESS _In_opt_ PETHREAD _In_opt_ PSECURITY_DESCRIPTOR SecurityDescriptor
Definition: wsk.h:191
_At_(*)(_In_ PWSK_CLIENT Client, _In_opt_ PUNICODE_STRING NodeName, _In_opt_ PUNICODE_STRING ServiceName, _In_opt_ ULONG NameSpace, _In_opt_ GUID *Provider, _In_opt_ PADDRINFOEXW Hints, _Outptr_ PADDRINFOEXW *Result, _In_opt_ PEPROCESS OwningProcess, _In_opt_ PETHREAD OwningThread, _Inout_ PIRP Irp Result)(Mem)) NTSTATUS(WSKAPI *PFN_WSK_GET_ADDRESS_INFO
Definition: wsk.h:409
_Must_inspect_result_ _In_ ULONG Flags
Definition: wsk.h:170
_In_opt_ PVOID _Out_ PLARGE_INTEGER Cookie
Definition: cmfuncs.h:14
_Inout_ __drv_aliasesMem PSLIST_ENTRY _Inout_ PSLIST_ENTRY ListEnd
Definition: exfuncs.h:1224
ActualNumberDriverObjects * sizeof(PDRIVER_OBJECT)) PDRIVER_OBJECT *DriverObjectList
_Must_inspect_result_ typedef _Out_ PULONG TableSize
Definition: iotypes.h:4327
_In_ ULONG MaximumResponseLength
Definition: kdfuncs.h:11
_In_ LARGE_INTEGER _In_ ULONG Period
Definition: kefuncs.h:1313
_Out_ PCLIENT_ID ClientId
Definition: kefuncs.h:1151
_Out_ PBOOLEAN _Out_ PBOOLEAN _Out_ PSECURITY_IMPERSONATION_LEVEL ImpersonationLevel
Definition: psfuncs.h:156
NTSYSAPI BOOLEAN NTAPI RtlDeleteElementGenericTable(_In_ PRTL_GENERIC_TABLE Table, _In_ PVOID Buffer)
*UnicodeStringActualByteCount PWSTR _In_ ULONG _Out_ PULONG _In_ ULONG UTF8StringByteCount
Definition: rtlfuncs.h:2663
NTSYSAPI ULONG NTAPI RtlFindFirstRunClear(_In_ PRTL_BITMAP BitMapHeader, _Out_ PULONG StartingIndex)
_In_ LARGE_INTEGER Divisor
Definition: rtlfuncs.h:3044
FORCEINLINE VOID PushEntryList(_Inout_ PSINGLE_LIST_ENTRY ListHead, _Inout_ __drv_aliasesMem PSINGLE_LIST_ENTRY Entry)
Definition: rtlfuncs.h:253
NTSYSAPI PVOID NTAPI RtlInsertElementGenericTable(_In_ PRTL_GENERIC_TABLE Table, _In_reads_bytes_(BufferSize) PVOID Buffer, _In_ CLONG BufferSize, _Out_opt_ PBOOLEAN NewElement)
NTSYSAPI PVOID NTAPI RtlInsertElementGenericTableFull(_In_ PRTL_GENERIC_TABLE Table, _In_reads_bytes_(BufferSize) PVOID Buffer, _In_ CLONG BufferSize, _Out_opt_ PBOOLEAN NewElement, _In_ PVOID NodeOrParent, _In_ TABLE_SEARCH_RESULT SearchResult)
_In_ __inner_callback PRTL_RUN_ONCE_INIT_FN InitFn
Definition: rtlfuncs.h:2533
NTSYSAPI PVOID NTAPI RtlLookupElementGenericTableFullAvl(_In_ PRTL_AVL_TABLE Table, _In_ PVOID Buffer, _Out_ PVOID *NodeOrParent, _Out_ TABLE_SEARCH_RESULT *SearchResult)
_In_ ULONG NumberToFind
Definition: rtlfuncs.h:609
FORCEINLINE LUID NTAPI_INLINE RtlConvertUlongToLuid(_In_ ULONG Val)
Definition: rtlfuncs.h:3541
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlLookupFirstMatchingElementGenericTableAvl(_In_ PRTL_AVL_TABLE Table, _In_ PVOID Buffer, _Out_ PVOID *RestartKey)
_Inout_ PUCHAR * CompressedBuffer
Definition: rtlfuncs.h:2274
_Must_inspect_result_ NTSYSAPI PRTL_SPLAY_LINKS NTAPI RtlSubtreeSuccessor(_In_ PRTL_SPLAY_LINKS Links)
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlEnumerateGenericTableLikeADirectory(_In_ PRTL_AVL_TABLE Table, _In_opt_ PRTL_AVL_MATCH_FUNCTION MatchFunction, _In_opt_ PVOID MatchData, _In_ ULONG NextFlag, _Inout_ PVOID *RestartKey, _Inout_ PULONG DeleteCount, _In_ PVOID Buffer)
_Out_ PBOOLEAN SaclPresent
Definition: rtlfuncs.h:2413
_In_ ULONG AceRevision
Definition: rtlfuncs.h:1851
*UnicodeStringActualByteCount PWSTR _In_ ULONG UnicodeStringMaxByteCount
Definition: rtlfuncs.h:2660
_Must_inspect_result_ NTSYSAPI BOOLEAN NTAPI RtlIsGenericTableEmpty(_In_ PRTL_GENERIC_TABLE Table)
_In_ SIZE_T _In_ SIZE_T String2Length
Definition: rtlfuncs.h:515
NTSYSAPI PVOID NTAPI RtlLookupElementGenericTableFull(_In_ PRTL_GENERIC_TABLE Table, _In_ PVOID Buffer, _Out_ PVOID *NodeOrParent, _Out_ TABLE_SEARCH_RESULT *SearchResult)
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlEnumerateGenericTable(_In_ PRTL_GENERIC_TABLE Table, _In_ BOOLEAN Restart)
_In_ ULONG _In_ ULONG HintIndex
Definition: rtlfuncs.h:610
_In_ ULONG _In_ ULONG _In_ ULONG AceListLength
Definition: rtlfuncs.h:1854
_In_ BOOLEAN _In_ ULONG HashAlgorithm
Definition: rtlfuncs.h:2038
_In_ ULONG _In_ ULONG _Out_ PULONG _In_ PVOID WorkSpace
Definition: rtlfuncs.h:2266
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlEnumerateGenericTableWithoutSplayingAvl(_In_ PRTL_AVL_TABLE Table, _Inout_ PVOID *RestartKey)
_In_ LARGE_INTEGER _Out_opt_ PLARGE_INTEGER Remainder
Definition: rtlfuncs.h:3045
_Out_ PBOOLEAN _Out_ PACL _Out_ PBOOLEAN SaclDefaulted
Definition: rtlfuncs.h:2415
_Must_inspect_result_ NTSYSAPI PRTL_SPLAY_LINKS NTAPI RtlRealPredecessor(_In_ PRTL_SPLAY_LINKS Links)
FORCEINLINE PSINGLE_LIST_ENTRY PopEntryList(_Inout_ PSINGLE_LIST_ENTRY ListHead)
Definition: rtlfuncs.h:240
*BytesInOemString PCHAR OemString
Definition: rtlfuncs.h:1560
NTSYSAPI VOID NTAPI RtlSetBit(_In_ PRTL_BITMAP BitMapHeader, _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber)
Definition: bitmap.c:304
NTSYSAPI VOID NTAPI RtlFillMemoryUlonglong(_Out_writes_bytes_all_(Length) PVOID Destination, _In_ SIZE_T Length, _In_ ULONGLONG Pattern)
NTSYSAPI PVOID NTAPI RtlInsertElementGenericTableFullAvl(_In_ PRTL_AVL_TABLE Table, _In_reads_bytes_(BufferSize) PVOID Buffer, _In_ CLONG BufferSize, _Out_opt_ PBOOLEAN NewElement, _In_ PVOID NodeOrParent, _In_ TABLE_SEARCH_RESULT SearchResult)
_Out_ PUNICODE_STRING DosName
Definition: rtlfuncs.h:1269
NTSYSAPI PRTL_SPLAY_LINKS NTAPI RtlSplay(_Inout_ PRTL_SPLAY_LINKS Links)
_In_ ULONG StartingIndex
Definition: rtlfuncs.h:395
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlGetElementGenericTable(_In_ PRTL_GENERIC_TABLE Table, _In_ ULONG I)
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlLookupElementGenericTableAvl(_In_ PRTL_AVL_TABLE Table, _In_ PVOID Buffer)
NTSYSAPI ULONG NTAPI RtlNumberGenericTableElements(_In_ PRTL_GENERIC_TABLE Table)
*UnicodeStringActualByteCount PWSTR UnicodeStringDestination
Definition: rtlfuncs.h:2659
_In_ SIZE_T String1Length
Definition: rtlfuncs.h:513
_In_ PSID Sid2
Definition: rtlfuncs.h:1755
_Must_inspect_result_ NTSYSAPI BOOLEAN NTAPI RtlTestBit(_In_ PRTL_BITMAP BitMapHeader, _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber)
Definition: bitmap.c:434
_In_ PRTL_GENERIC_COMPARE_ROUTINE _In_ PRTL_GENERIC_ALLOCATE_ROUTINE _In_ PRTL_GENERIC_FREE_ROUTINE _In_opt_ PVOID TableContext
Definition: rtlfuncs.h:1091
_In_ PRTL_GENERIC_COMPARE_ROUTINE _In_ PRTL_GENERIC_ALLOCATE_ROUTINE _In_ PRTL_GENERIC_FREE_ROUTINE FreeRoutine
Definition: rtlfuncs.h:1090
NTSYSAPI BOOLEAN NTAPI RtlDeleteElementGenericTableAvl(_In_ PRTL_AVL_TABLE Table, _In_ PVOID Buffer)
NTSYSAPI PVOID NTAPI RtlInsertElementGenericTableAvl(_In_ PRTL_AVL_TABLE Table, _In_reads_bytes_(BufferSize) PVOID Buffer, _In_ CLONG BufferSize, _Out_opt_ PBOOLEAN NewElement)
_In_ PRTL_GENERIC_COMPARE_ROUTINE _In_ PRTL_GENERIC_ALLOCATE_ROUTINE AllocateRoutine
Definition: rtlfuncs.h:1089
_In_ ULONG _In_ ULONG AclRevision
Definition: rtlfuncs.h:1843
_In_ ULONG AceIndex
Definition: rtlfuncs.h:1862
_Must_inspect_result_ NTSYSAPI BOOLEAN NTAPI RtlIsGenericTableEmptyAvl(_In_ PRTL_AVL_TABLE Table)
_In_ ULONG _In_ ULONG StartingAceIndex
Definition: rtlfuncs.h:1852
_In_ BOOLEAN _In_ ULONG _Out_ PULONG HashValue
Definition: rtlfuncs.h:2039
*UnicodeStringActualByteCount PWSTR _In_ ULONG _Out_ PULONG UnicodeStringActualByteCount
Definition: rtlfuncs.h:2661
*BytesInMultiByteString PCHAR MultiByteString
Definition: rtlfuncs.h:1527
NTSYSAPI PRTL_SPLAY_LINKS NTAPI RtlDelete(_In_ PRTL_SPLAY_LINKS Links)
#define RtlCheckBit(BMH, BP)
Definition: rtlfuncs.h:3152
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlEnumerateGenericTableAvl(_In_ PRTL_AVL_TABLE Table, _In_ BOOLEAN Restart)
_Must_inspect_result_ NTSYSAPI SIZE_T NTAPI RtlCompareMemoryUlong(_In_reads_bytes_(Length) PVOID Source, _In_ SIZE_T Length, _In_ ULONG Pattern)
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlLookupElementGenericTable(_In_ PRTL_GENERIC_TABLE Table, _In_ PVOID Buffer)
NTSYSAPI ULONG NTAPI RtlNumberGenericTableElementsAvl(_In_ PRTL_AVL_TABLE Table)
_In_ PRTL_GENERIC_COMPARE_ROUTINE CompareRoutine
Definition: rtlfuncs.h:1088
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlEnumerateGenericTableWithoutSplaying(_In_ PRTL_GENERIC_TABLE Table, _Inout_ PVOID *RestartKey)
_Must_inspect_result_ NTSYSAPI PRTL_SPLAY_LINKS NTAPI RtlSubtreePredecessor(_In_ PRTL_SPLAY_LINKS Links)
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlGetElementGenericTableAvl(_In_ PRTL_AVL_TABLE Table, _In_ ULONG I)
NTSYSAPI VOID NTAPI RtlDeleteNoSplay(_In_ PRTL_SPLAY_LINKS Links, _Inout_ PRTL_SPLAY_LINKS *Root)
_Must_inspect_result_ NTSYSAPI PRTL_SPLAY_LINKS NTAPI RtlRealSuccessor(_In_ PRTL_SPLAY_LINKS Links)
RTL_AVL_FREE_ROUTINE * PRTL_AVL_FREE_ROUTINE
Definition: rtltypes.h:421
TABLE_SEARCH_RESULT
Definition: rtltypes.h:386
_IRQL_requires_same_ _In_ PVOID _In_ PVOID MatchData
Definition: rtltypes.h:429
RTL_GENERIC_FREE_ROUTINE * PRTL_GENERIC_FREE_ROUTINE
Definition: rtltypes.h:488
#define PSLIST_ENTRY
Definition: rtltypes.h:134
RTL_AVL_MATCH_FUNCTION * PRTL_AVL_MATCH_FUNCTION
Definition: rtltypes.h:430
_Inout_opt_ PVOID Parameter
Definition: rtltypes.h:336
RTL_AVL_ALLOCATE_ROUTINE * PRTL_AVL_ALLOCATE_ROUTINE
Definition: rtltypes.h:413
RTL_GENERIC_COMPARE_ROUTINE * PRTL_GENERIC_COMPARE_ROUTINE
Definition: rtltypes.h:471
* PRTL_RUN_ONCE
Definition: rtltypes.h:327
RTL_GENERIC_ALLOCATE_ROUTINE * PRTL_GENERIC_ALLOCATE_ROUTINE
Definition: rtltypes.h:480
RTL_AVL_COMPARE_ROUTINE * PRTL_AVL_COMPARE_ROUTINE
Definition: rtltypes.h:404
RTL_RUN_ONCE_INIT_FN * PRTL_RUN_ONCE_INIT_FN
Definition: rtltypes.h:338
_In_opt_ PSECURITY_DESCRIPTOR _Out_ PSECURITY_DESCRIPTOR _In_ BOOLEAN IsDirectoryObject
Definition: sefuncs.h:31
_In_opt_ PSECURITY_DESCRIPTOR _Out_ PSECURITY_DESCRIPTOR * NewDescriptor
Definition: sefuncs.h:30
_In_ PSECURITY_SUBJECT_CONTEXT _In_ BOOLEAN _In_ ACCESS_MASK _In_ ACCESS_MASK _Outptr_opt_ PPRIVILEGE_SET _In_ PGENERIC_MAPPING _In_ KPROCESSOR_MODE _Out_ PACCESS_MASK GrantedAccess
Definition: sefuncs.h:20
* PSID_IDENTIFIER_AUTHORITY
Definition: setypes.h:464
unsigned char UCHAR
Definition: xmlstorage.h:181
__wchar_t WCHAR
Definition: xmlstorage.h:180
WCHAR * LPWSTR
Definition: xmlstorage.h:184
char CHAR
Definition: xmlstorage.h:175
#define const
Definition: zconf.h:233
_In_ PUNICODE_STRING NewName
Definition: zwfuncs.h:1203
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID _In_ ULONG_PTR _In_ SIZE_T _Inout_opt_ PLARGE_INTEGER _Inout_ PSIZE_T _In_ SECTION_INHERIT _In_ ULONG _In_ ULONG Protect
Definition: zwfuncs.h:221