ReactOS 0.4.15-dev-7958-gcd0bb1a
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
213//
214// ASSERT Macros
215//
216#ifndef ASSERT
217#if DBG
218
219#define ASSERT( exp ) \
220 ((void)((!(exp)) ? \
221 (RtlAssert( (PVOID)#exp, (PVOID)__FILE__, __LINE__, NULL ),FALSE) : \
222 TRUE))
223
224#define ASSERTMSG( msg, exp ) \
225 ((void)((!(exp)) ? \
226 (RtlAssert( (PVOID)#exp, (PVOID)__FILE__, __LINE__, (PCHAR)msg ),FALSE) : \
227 TRUE))
228
229#else
230
231#define ASSERT( exp ) ((void) 0)
232#define ASSERTMSG( msg, exp ) ((void) 0)
233
234#endif
235#endif
236
237#ifdef NTOS_KERNEL_RUNTIME
238
239//
240// Executing RTL functions at DISPATCH_LEVEL or higher will result in a
241// bugcheck.
242//
243#define RTL_PAGED_CODE PAGED_CODE
244
245#else
246
247//
248// This macro does nothing in user mode
249//
250#define RTL_PAGED_CODE()
251
252#endif
253
254//
255// RTL Splay Tree Functions
256//
257#ifndef RTL_USE_AVL_TABLES
258
260VOID
261NTAPI
268);
269
271PVOID
272NTAPI
277 _Out_opt_ PBOOLEAN NewElement
278);
279
281PVOID
282NTAPI
287 _Out_opt_ PBOOLEAN NewElement,
288 _In_ PVOID NodeOrParent,
289 _In_ TABLE_SEARCH_RESULT SearchResult
290);
291
294NTAPI
298);
299
302PVOID
303NTAPI
307);
308
310PVOID
311NTAPI
315 _Out_ PVOID *NodeOrParent,
316 _Out_ TABLE_SEARCH_RESULT *SearchResult
317);
318
321PVOID
322NTAPI
326);
327
330PVOID
331NTAPI
334 _Inout_ PVOID *RestartKey
335);
336
339PVOID
340NTAPI
343 _In_ ULONG I
344);
345
347ULONG
348NTAPI
351);
352
356NTAPI
359);
360
361#endif /* !RTL_USE_AVL_TABLES */
362
365NTAPI
368);
369
372NTAPI
375);
376
378VOID
379NTAPI
383);
384
388NTAPI
391);
392
396NTAPI
399);
400
404NTAPI
407);
408
412NTAPI
415);
416
417#define RtlIsLeftChild(Links) \
418 (RtlLeftChild(RtlParent(Links)) == (PRTL_SPLAY_LINKS)(Links))
419
420#define RtlIsRightChild(Links) \
421 (RtlRightChild(RtlParent(Links)) == (PRTL_SPLAY_LINKS)(Links))
422
423#define RtlRightChild(Links) \
424 ((PRTL_SPLAY_LINKS)(Links))->RightChild
425
426#define RtlIsRoot(Links) \
427 (RtlParent(Links) == (PRTL_SPLAY_LINKS)(Links))
428
429#define RtlLeftChild(Links) \
430 ((PRTL_SPLAY_LINKS)(Links))->LeftChild
431
432#define RtlParent(Links) \
433 ((PRTL_SPLAY_LINKS)(Links))->Parent
434
435// FIXME: use inline function
436
437#define RtlInitializeSplayLinks(Links) \
438 { \
439 PRTL_SPLAY_LINKS _SplayLinks; \
440 _SplayLinks = (PRTL_SPLAY_LINKS)(Links); \
441 _SplayLinks->Parent = _SplayLinks; \
442 _SplayLinks->LeftChild = NULL; \
443 _SplayLinks->RightChild = NULL; \
444 }
445
446#define RtlInsertAsLeftChild(ParentLinks,ChildLinks) \
447 { \
448 PRTL_SPLAY_LINKS _SplayParent; \
449 PRTL_SPLAY_LINKS _SplayChild; \
450 _SplayParent = (PRTL_SPLAY_LINKS)(ParentLinks); \
451 _SplayChild = (PRTL_SPLAY_LINKS)(ChildLinks); \
452 _SplayParent->LeftChild = _SplayChild; \
453 _SplayChild->Parent = _SplayParent; \
454 }
455
456#define RtlInsertAsRightChild(ParentLinks,ChildLinks) \
457 { \
458 PRTL_SPLAY_LINKS _SplayParent; \
459 PRTL_SPLAY_LINKS _SplayChild; \
460 _SplayParent = (PRTL_SPLAY_LINKS)(ParentLinks); \
461 _SplayChild = (PRTL_SPLAY_LINKS)(ChildLinks); \
462 _SplayParent->RightChild = _SplayChild; \
463 _SplayChild->Parent = _SplayParent; \
464 }
465
466//
467// RTL AVL Tree Functions
468//
470VOID
471NTAPI
478);
479
481PVOID
482NTAPI
487 _Out_opt_ PBOOLEAN NewElement
488);
489
491PVOID
492NTAPI
497 _Out_opt_ PBOOLEAN NewElement,
498 _In_ PVOID NodeOrParent,
499 _In_ TABLE_SEARCH_RESULT SearchResult
500);
501
504NTAPI
508);
509
512PVOID
513NTAPI
517);
518
520PVOID
521NTAPI
525 _Out_ PVOID *NodeOrParent,
526 _Out_ TABLE_SEARCH_RESULT *SearchResult
527);
528
531PVOID
532NTAPI
536);
537
540PVOID
541NTAPI
544 _Inout_ PVOID *RestartKey
545);
546
549PVOID
550NTAPI
554 _Out_ PVOID *RestartKey
555);
556
559PVOID
560NTAPI
563 _In_opt_ PRTL_AVL_MATCH_FUNCTION MatchFunction,
565 _In_ ULONG NextFlag,
566 _Inout_ PVOID *RestartKey,
567 _Inout_ PULONG DeleteCount,
569);
570
573PVOID
574NTAPI
577 _In_ ULONG I
578);
579
581ULONG
582NTAPI
585);
586
590NTAPI
593);
594
595#ifdef RTL_USE_AVL_TABLES
596
597#define RtlInitializeGenericTable RtlInitializeGenericTableAvl
598#define RtlInsertElementGenericTable RtlInsertElementGenericTableAvl
599#define RtlInsertElementGenericTableFull RtlInsertElementGenericTableFullAvl
600#define RtlDeleteElementGenericTable RtlDeleteElementGenericTableAvl
601#define RtlLookupElementGenericTable RtlLookupElementGenericTableAvl
602#define RtlLookupElementGenericTableFull RtlLookupElementGenericTableFullAvl
603#define RtlEnumerateGenericTable RtlEnumerateGenericTableAvl
604#define RtlEnumerateGenericTableWithoutSplaying RtlEnumerateGenericTableWithoutSplayingAvl
605#define RtlGetElementGenericTable RtlGetElementGenericTableAvl
606#define RtlNumberGenericTableElements RtlNumberGenericTableElementsAvl
607#define RtlIsGenericTableEmpty RtlIsGenericTableEmptyAvl
608
609#endif /* RTL_USE_AVL_TABLES */
610
611//
612// Exception and Error Functions
613//
615PVOID
616NTAPI
618 _In_ ULONG FirstHandler,
619 _In_ PVECTORED_EXCEPTION_HANDLER VectoredHandler
620);
621
623ULONG
624NTAPI
626 _In_ PVOID VectoredHandlerHandle
627);
628
630PVOID
631NTAPI
633 _In_ ULONG FirstHandler,
634 _In_ PVECTORED_EXCEPTION_HANDLER VectoredHandler
635);
636
638ULONG
639NTAPI
641 _In_ PVOID VectoredHandlerHandle
642);
643
645VOID
646NTAPI
648 _In_ PRTLP_UNHANDLED_EXCEPTION_FILTER TopLevelExceptionFilter
649);
650
652LONG
653NTAPI
655 _In_ struct _EXCEPTION_POINTERS* ExceptionInfo
656);
657
660VOID
661NTAPI
663 _In_ PVOID FailedAssertion,
667);
668
670PVOID
671NTAPI
673 _In_ PVOID Pointer
674);
675
677PVOID
678NTAPI
680 _In_ PVOID Pointer
681);
682
684PVOID
685NTAPI
687 _In_ PVOID Pointer
688);
689
691PVOID
692NTAPI
694 _In_ PVOID Pointer
695);
696
699NTAPI
701 VOID
702);
703
705ULONG
706NTAPI
708 VOID
709);
710
712VOID
713NTAPI
715 _In_ ULONG LastError
716);
717
719VOID
720NTAPI
723);
724
727NTAPI
729 _In_ ULONG NewMode,
730 _Out_opt_ PULONG OldMode
731);
732
734ULONG
735NTAPI
737 VOID
738);
739
740#endif /* NTOS_MODE_USER */
741
743VOID
744NTAPI
747);
748
751NTAPI
753 _In_ PEXCEPTION_RECORD ExceptionRecord,
755);
756
759_When_(Status >= 0, _Out_range_(==, 0))
761ULONG
762NTAPI
765);
766
768_When_(Status >= 0, _Out_range_(==, 0))
770ULONG
771NTAPI
774);
775
778NTAPI
780 _In_ ULONG SecurityError
781);
782
784VOID
785NTAPI
787 _In_ PEXCEPTION_RECORD ExceptionRecord
788);
789
792VOID
793NTAPI
796);
797
799VOID
800NTAPI
802 _In_opt_ PVOID TargetFrame,
803 _In_opt_ PVOID TargetIp,
804 _In_opt_ PEXCEPTION_RECORD ExceptionRecord,
806);
807
808#define RTL_STACK_WALKING_MODE_FRAMES_TO_SKIP_SHIFT 8
809
810#ifdef _M_AMD64
811
814NTAPI
816 _In_ DWORD64 ControlPc,
817 _Out_ PDWORD64 ImageBase,
818 _Inout_opt_ PUNWIND_HISTORY_TABLE HistoryTable
819);
820
823NTAPI
826 _In_ ULONG64 ImageBase,
827 _In_ ULONG64 ControlPc,
828 _In_ PRUNTIME_FUNCTION FunctionEntry,
830 _Outptr_ PVOID* HandlerData,
832 _Inout_opt_ PKNONVOLATILE_CONTEXT_POINTERS ContextPointers
833);
834
835#endif // _M_AMD64
836
837//
838// Tracing Functions
839//
841ULONG
842NTAPI
847);
848
850USHORT
851NTAPI
853 VOID
854);
855
856#ifdef NTOS_MODE_USER
857//
858// Heap Functions
859//
864PVOID
865NTAPI
867 _In_ PVOID HeapHandle,
870);
871
874PVOID
875NTAPI
879 _In_opt_ SIZE_T SizeToReserve,
880 _In_opt_ SIZE_T SizeToCommit,
883);
884
886ULONG
887NTAPI
889 _In_ HANDLE HeapHandle,
891 _In_opt_ PWSTR TagName,
892 _In_ PWSTR TagSubName
893);
894
895ULONG
896NTAPI
898 _In_ HANDLE Heap,
900);
901
904PVOID
905NTAPI
909 _In_opt_ SIZE_T SizeToReserve,
910 _In_opt_ SIZE_T SizeToCommit,
913);
914
916HANDLE
917NTAPI
920);
921
923ULONG
924NTAPI
926 _In_ HANDLE Heap,
928 _In_ PVOID P,
930);
931
932_Success_(return != 0)
935NTAPI
937 _In_ HANDLE HeapHandle,
940);
941
942ULONG
943NTAPI
945 _In_ ULONG HeapCount,
946 _Out_cap_(HeapCount) HANDLE *HeapArray
947);
948
949_Success_(return != 0)
951NTAPI
953 _In_ PVOID HeapHandle,
956 _Inout_opt_ PVOID *UserValue,
957 _Out_opt_ PULONG UserFlags
958);
959
961PVOID
962NTAPI
964 _In_ PVOID HeapHandle,
966);
967
970NTAPI
972 _In_ PVOID HeapHandle,
973 _In_ HEAP_INFORMATION_CLASS HeapInformationClass,
974 _Out_ PVOID HeapInformation,
975 _In_ SIZE_T HeapInformationLength,
978);
979
982PWSTR
983NTAPI
985 _In_ PVOID HeapHandle,
987 _In_ USHORT TagIndex,
988 _In_ BOOLEAN ResetCounters,
989 _Out_ PRTL_HEAP_TAG_INFO HeapTagInfo
990);
991
996PVOID
997NTAPI
999 _In_ HANDLE Heap,
1003);
1004
1007NTAPI
1009 _In_ PVOID HeapHandle,
1010 _In_ HEAP_INFORMATION_CLASS HeapInformationClass,
1011 _When_(HeapInformationClass==HeapCompatibilityInformation,_In_) PVOID HeapInformation,
1012 _In_ SIZE_T HeapInformationLength
1013);
1014
1016BOOLEAN
1017NTAPI
1019 _In_ HANDLE Heap
1020);
1021
1023ULONG
1024NTAPI
1026 _In_ HANDLE HeapHandle,
1031);
1032
1034ULONG
1035NTAPI
1037 _In_ HANDLE HeapHandle,
1040 _In_count_(Count) /* _Deref_ _Post_invalid_ */ PVOID * Array
1041);
1042
1045NTAPI
1047 _In_ HANDLE Heap,
1050);
1051
1053BOOLEAN
1054NTAPI
1056 _In_ HANDLE Heap
1057);
1058
1059BOOLEAN
1060NTAPI
1062 _In_ PVOID HeapHandle,
1065 _In_ PVOID UserValue
1066);
1067
1068BOOLEAN
1069NTAPI
1071 _In_ PVOID HeapHandle,
1074 _In_ ULONG UserFlagsReset,
1075 _In_ ULONG UserFlagsSet
1076);
1077
1079BOOLEAN
1080NTAPI
1082 _In_ HANDLE Heap,
1085);
1086
1089NTAPI
1091 _In_ HANDLE HeapHandle,
1092 _In_ PVOID HeapEntry
1093);
1094
1095#define RtlGetProcessHeap() (NtCurrentPeb()->ProcessHeap)
1096
1097#endif // NTOS_MODE_USER
1098
1099#define NtCurrentPeb() (NtCurrentTeb()->ProcessEnvironmentBlock)
1100
1102SIZE_T
1103NTAPI
1105 _In_ PVOID HeapHandle,
1107 _In_ PVOID MemoryPointer
1108);
1109
1110
1111//
1112// Security Functions
1113//
1117NTAPI
1122);
1123
1127NTAPI
1129 _Inout_ PACL Acl,
1133);
1134
1138NTAPI
1140 _Inout_ PACL pAcl,
1145);
1146
1149NTAPI
1151 _Inout_ PACL pAcl,
1155 _In_opt_ GUID *ObjectTypeGuid,
1156 _In_opt_ GUID *InheritedObjectTypeGuid,
1157 _In_ PSID pSid
1158);
1159
1162NTAPI
1164 _Inout_ PACL Acl,
1167 _In_ PSID Sid
1168);
1169
1172NTAPI
1174 _Inout_ PACL Acl,
1178 _In_ PSID Sid
1179);
1180
1183NTAPI
1185 _Inout_ PACL pAcl,
1189 _In_opt_ GUID *ObjectTypeGuid,
1190 _In_opt_ GUID *InheritedObjectTypeGuid,
1191 _In_ PSID pSid
1192);
1193
1196NTAPI
1198 _Inout_ PACL Acl,
1203);
1204
1207NTAPI
1209 _Inout_ PACL Acl,
1212 _In_ PSID Sid,
1214 _In_ BOOLEAN Failure
1215);
1216
1219NTAPI
1222 _In_ ULONG NumPriv,
1224 _Out_ PVOID *ReturnedState
1225);
1226
1229NTAPI
1231 _Inout_ PACL Acl,
1235 _In_ PSID Sid,
1237 _In_ BOOLEAN Failure
1238);
1239
1242NTAPI
1244 _Inout_ PACL Acl,
1248 _In_opt_ GUID *ObjectTypeGuid,
1249 _In_opt_ GUID *InheritedObjectTypeGuid,
1250 _In_ PSID Sid,
1252 _In_ BOOLEAN Failure
1253);
1254
1257NTAPI
1259 _Inout_ PACL Acl,
1262 _In_ ULONG MandatoryFlags,
1264 _In_ PSID LabelSid);
1265
1268NTAPI
1271 _In_ BOOLEAN NewValue,
1272 _In_ BOOLEAN ForThread,
1273 _Out_ PBOOLEAN OldValue
1274);
1275
1279NTAPI
1283 _In_ ULONG SubAuthority0,
1284 _In_ ULONG SubAuthority1,
1285 _In_ ULONG SubAuthority2,
1286 _In_ ULONG SubAuthority3,
1287 _In_ ULONG SubAuthority4,
1288 _In_ ULONG SubAuthority5,
1289 _In_ ULONG SubAuthority6,
1290 _In_ ULONG SubAuthority7,
1292);
1293
1295BOOLEAN
1296NTAPI
1300);
1301
1303BOOLEAN
1304NTAPI
1308);
1309
1312VOID
1313NTAPI
1315 _Out_ PLUID DestinationLuid,
1317 );
1318
1320VOID
1321NTAPI
1323 ULONG Count,
1326);
1327
1330NTAPI
1334 _In_ ULONG SidAreaSize,
1336 _In_ PSID SidArea,
1337 _Out_ PSID* RemainingSidArea,
1338 _Out_ PULONG RemainingSidAreaSize
1339);
1340
1344NTAPI
1347 _In_ PSID Sid,
1349);
1350
1354NTAPI
1356 _In_ ULONG DestinationSidLength,
1357 _Out_writes_bytes_(DestinationSidLength) PSID DestinationSid,
1359);
1360
1363NTAPI
1365 PACL Acl,
1366 ULONG AclSize,
1368);
1369
1372NTAPI
1376);
1377
1380NTAPI
1384);
1385
1388NTAPI
1390 _In_ PSECURITY_DESCRIPTOR pSourceSecurityDescriptor,
1391 _Out_ PSECURITY_DESCRIPTOR *pDestinationSecurityDescriptor
1392);
1393
1396NTAPI
1398 PACL Acl,
1400);
1401
1403BOOLEAN
1404NTAPI
1406 PSID Sid1,
1407 PSID Sid2
1408);
1409
1411BOOLEAN
1412NTAPI
1414 _In_ PSID Sid1,
1415 _In_ PSID Sid2
1416);
1417
1419BOOLEAN
1420NTAPI
1422 PACL Acl,
1423 PACE* Ace
1424);
1425
1427PVOID
1428NTAPI
1431);
1432
1435NTAPI
1437 PACL Acl,
1439 PVOID *Ace
1440);
1441
1444NTAPI
1449);
1450
1453NTAPI
1457 _Out_ PACL *Dacl,
1459);
1460
1463NTAPI
1467 _Out_ PACL* Sacl,
1469);
1470
1473NTAPI
1476 _Out_ PSID *Group,
1478);
1479
1482NTAPI
1485 _Out_ PSID *Owner,
1487);
1488
1490BOOLEAN
1491NTAPI
1494 _Out_ PUCHAR RMControl
1495);
1496
1499NTAPI
1501
1504NTAPI
1506
1510NTAPI
1512 _Out_ PSID Sid,
1515);
1516
1518ULONG
1519NTAPI
1521
1524ULONG
1525NTAPI
1528
1530ULONG
1531NTAPI
1533
1536NTAPI
1538 _In_ PSECURITY_DESCRIPTOR AbsoluteSD,
1539 _Out_ PSECURITY_DESCRIPTOR SelfRelativeSD,
1541
1543VOID
1544NTAPI
1548);
1549
1550#ifdef NTOS_MODE_USER
1551
1554NTAPI
1556 PACL Acl,
1558 ULONG InformationLength,
1560);
1561
1562#endif
1563
1565VOID
1566NTAPI
1568 _In_ PVOID ReturnedState
1569);
1570
1571#if (NTDDI_VERSION >= NTDDI_VISTA)
1572
1575NTAPI
1578 _In_reads_opt_(PrivilegeCount) _When_(PrivilegeCount != 0, _Notnull_)
1579 PULONG PrivilegesToKeep,
1580 _In_ ULONG PrivilegeCount
1581);
1582
1583#endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
1584
1588NTAPI
1601);
1602
1605NTAPI
1607 _Inout_ PSECURITY_DESCRIPTOR SelfRelativeSD,
1609);
1610
1613NTAPI
1618);
1619
1622NTAPI
1625 _In_ SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest,
1626 _In_ SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet
1627);
1628
1632NTAPI
1638);
1639
1643NTAPI
1648);
1649
1650#ifdef NTOS_MODE_USER
1651
1654NTAPI
1656 PACL Acl,
1658 ULONG InformationLength,
1660);
1661
1662#endif
1663
1667NTAPI
1672);
1673
1676NTAPI
1680 _In_ PACL Sacl,
1682);
1683
1685VOID
1686NTAPI
1689 _In_ PUCHAR RMControl
1690);
1691
1693PUCHAR
1694NTAPI
1696 _In_ PSID Sid
1697);
1698
1700PULONG
1701NTAPI
1703 _In_ PSID Sid,
1704 _In_ ULONG SubAuthority
1705);
1706
1710BOOLEAN
1711NTAPI
1716);
1717
1719BOOLEAN
1720NTAPI
1722
1724BOOLEAN
1725NTAPI
1727
1729BOOLEAN
1730NTAPI
1732
1735NTAPI
1737 _In_ PSECURITY_DESCRIPTOR *ObjectDescriptor
1738);
1739
1742NTAPI
1744 _In_ PSECURITY_DESCRIPTOR ParentDescriptor,
1745 _In_ PSECURITY_DESCRIPTOR CreatorDescriptor,
1750);
1751
1754NTAPI
1756 _In_ PSECURITY_DESCRIPTOR ObjectDescriptor,
1758 _Out_ PSECURITY_DESCRIPTOR ResultantDescriptor,
1759 _In_ ULONG DescriptorLength,
1761);
1762
1765NTAPI
1768 _In_ PSECURITY_DESCRIPTOR ModificationDescriptor,
1769 _Out_ PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor,
1772);
1773
1774//
1775// Single-Character Functions
1776//
1779NTAPI
1782 _In_ ULONG Base,
1785);
1786
1788CHAR
1789NTAPI
1791
1793WCHAR
1794NTAPI
1796
1798WCHAR
1799NTAPI
1801
1804NTAPI
1807 _In_ ULONG Base,
1810);
1811
1814NTAPI
1820);
1821
1823_At_(String->MaximumLength, _Const_)
1826NTAPI
1831);
1832
1835NTAPI
1837 PCSZ String,
1838 ULONG Base,
1840);
1841
1842//
1843// Byte Swap Functions
1844//
1845#ifdef NTOS_MODE_USER
1846
1847unsigned short __cdecl _byteswap_ushort(unsigned short);
1848unsigned long __cdecl _byteswap_ulong (unsigned long);
1849unsigned __int64 __cdecl _byteswap_uint64(unsigned __int64);
1850#ifdef _MSC_VER
1851#pragma intrinsic(_byteswap_ushort)
1852#pragma intrinsic(_byteswap_ulong)
1853#pragma intrinsic(_byteswap_uint64)
1854#endif // _MSC_VER
1855#define RtlUshortByteSwap(_x) _byteswap_ushort((USHORT)(_x))
1856#define RtlUlongByteSwap(_x) _byteswap_ulong((_x))
1857#define RtlUlonglongByteSwap(_x) _byteswap_uint64((_x))
1858
1859#endif // NTOS_MODE_USER
1860
1861//
1862// Unicode->Ansi String Functions
1863//
1865ULONG
1866NTAPI
1868
1869#ifdef NTOS_MODE_USER
1870
1871#define RtlUnicodeStringToAnsiSize(STRING) ( \
1872 NLS_MB_CODE_PAGE_TAG ? \
1873 RtlxUnicodeStringToAnsiSize(STRING) : \
1874 ((STRING)->Length + sizeof(UNICODE_NULL)) / sizeof(WCHAR) \
1875)
1876
1877#endif
1878
1881NTAPI
1886);
1887
1888//
1889// Unicode->OEM String Functions
1890//
1893NTAPI
1898);
1899
1902//_At_(DestinationString->Buffer, _Post_bytecount_(DestinationString->Length))
1905NTAPI
1912);
1913
1916NTAPI
1921);
1922
1927NTAPI
1928RtlUnicodeStringToCountedOemString(
1934);
1935
1938NTAPI
1941 ULONG OemSize,
1942 PULONG ResultSize,
1944 ULONG UnicodeSize
1945);
1946
1948ULONG
1949NTAPI
1951
1952#ifdef NTOS_MODE_USER
1953
1954#define RtlUnicodeStringToOemSize(STRING) ( \
1955 NLS_MB_OEM_CODE_PAGE_TAG ? \
1956 RtlxUnicodeStringToOemSize(STRING) : \
1957 ((STRING)->Length + sizeof(UNICODE_NULL)) / sizeof(WCHAR) \
1958)
1959
1960#define RtlUnicodeStringToCountedOemSize(STRING) ( \
1961 (ULONG)(RtlUnicodeStringToOemSize(STRING) - sizeof(ANSI_NULL)) \
1962)
1963
1964#endif
1965
1968NTAPI
1971 ULONG OemSize,
1972 PULONG ResultSize,
1974 ULONG UnicodeSize
1975);
1976
1977//
1978// Unicode->MultiByte String Functions
1979//
1982NTAPI
1984 PCHAR MbString,
1985 ULONG MbSize,
1986 PULONG ResultSize,
1988 ULONG UnicodeSize
1989);
1990
1993NTAPI
1995 PCHAR MbString,
1996 ULONG MbSize,
1997 PULONG ResultSize,
1999 ULONG UnicodeSize
2000);
2001
2004NTAPI
2006 PULONG MbSize,
2008 ULONG UnicodeSize
2009);
2010
2012ULONG
2013NTAPI
2015
2016//
2017// OEM to Unicode Functions
2018//
2021NTAPI
2026);
2027
2031NTAPI
2038);
2039
2040#ifdef NTOS_MODE_USER
2041
2042#define RtlOemStringToUnicodeSize(STRING) ( \
2043 NLS_MB_OEM_CODE_PAGE_TAG ? \
2044 RtlxOemStringToUnicodeSize(STRING) : \
2045 ((STRING)->Length + sizeof(ANSI_NULL)) * sizeof(WCHAR) \
2046)
2047
2048#define RtlOemStringToCountedUnicodeSize(STRING) ( \
2049 (ULONG)(RtlOemStringToUnicodeSize(STRING) - sizeof(UNICODE_NULL)) \
2050)
2051
2052#endif
2053
2054//
2055// Ansi->Unicode String Functions
2056//
2059WCHAR
2060NTAPI
2062 _Inout_ PUCHAR *SourceCharacter);
2063
2066NTAPI
2071);
2072
2074ULONG
2075NTAPI
2078);
2079
2080#ifdef NTOS_MODE_USER
2081
2082#define RtlAnsiStringToUnicodeSize(STRING) ( \
2083 NLS_MB_CODE_PAGE_TAG ? \
2084 RtlxAnsiStringToUnicodeSize(STRING) : \
2085 ((STRING)->Length + sizeof(ANSI_NULL)) * sizeof(WCHAR) \
2086)
2087
2088#endif
2089
2091BOOLEAN
2092NTAPI
2096);
2097
2098//
2099// Unicode String Functions
2100//
2103NTAPI
2107);
2108
2111NTAPI
2115);
2116
2118LONG
2119NTAPI
2121 PCUNICODE_STRING String1,
2124);
2125
2128LONG
2129NTAPI
2136);
2137
2139VOID
2140NTAPI
2144);
2145
2147BOOLEAN
2148NTAPI
2152);
2153
2154#ifdef NTOS_MODE_USER
2155
2158NTAPI
2160 _Inout_ PUNICODE_STRING UniDest,
2161 _In_ PCUNICODE_STRING UniSource,
2163);
2164
2167NTAPI
2172);
2173
2176NTAPI
2179 _In_ PCUNICODE_STRING SearchString,
2182);
2183
2184//
2185// Memory Functions
2186//
2187#if defined(_M_AMD64)
2188
2190VOID
2194 _In_ ULONG Pattern)
2195{
2197 if ((Length /= 4) != 0) {
2198 if (((ULONG64)Address & 4) != 0) {
2199 *Address = Pattern;
2200 if ((Length -= 1) == 0) {
2201 return;
2202 }
2203 Address += 1;
2204 }
2205 __stosq((PULONG64)(Address), Pattern | ((ULONG64)Pattern << 32), Length / 2);
2206 if ((Length & 1) != 0) Address[Length - 1] = Pattern;
2207 }
2208 return;
2209}
2210
2211#define RtlFillMemoryUlonglong(Destination, Length, Pattern) \
2212 __stosq((PULONG64)(Destination), Pattern, (Length) / 8)
2213
2214#else
2215
2217VOID
2218NTAPI
2222 _In_ ULONG Pattern
2223);
2224
2226VOID
2227NTAPI
2231 _In_ ULONGLONG Pattern
2232);
2233
2234#endif
2235
2238NTAPI
2243);
2244
2246SIZE_T
2247NTAPI
2251 _In_ ULONG Pattern
2252);
2253
2254#ifndef RtlEqualMemory
2255#define RtlEqualMemory(Destination, Source, Length) \
2256 (!memcmp(Destination, Source, Length))
2257#endif
2258
2259#define RtlCopyBytes RtlCopyMemory
2260#define RtlFillBytes RtlFillMemory
2261#define RtlZeroBytes RtlZeroMemory
2262
2263#endif
2264
2266BOOLEAN
2267NTAPI
2269 PCUNICODE_STRING String1,
2272);
2273
2276VOID
2277NTAPI
2281);
2282
2284VOID
2285NTAPI
2288);
2289
2292NTAPI
2298);
2299
2309VOID
2310NTAPI
2314);
2315
2325VOID
2326NTAPI
2330);
2331
2335NTAPI
2339);
2340
2342BOOLEAN
2343NTAPI
2346 _In_ INT Size,
2348);
2349
2353BOOLEAN
2354NTAPI
2356 _In_ const STRING *String1,
2359);
2360
2364BOOLEAN
2365NTAPI
2367 _In_ PCUNICODE_STRING String1,
2370);
2371
2374VOID
2375NTAPI
2379);
2380
2384LONG
2385NTAPI
2387 _In_ const STRING *String1,
2390);
2391
2393VOID
2394NTAPI
2398);
2399
2403BOOLEAN
2404NTAPI
2406 _In_ const STRING *String1,
2409);
2410
2414NTAPI
2418);
2419
2424NTAPI
2431);
2432
2436NTAPI
2441);
2442
2445NTAPI
2449);
2450
2451#define RTL_SKIP_BUFFER_COPY 0x00000001
2452
2455NTAPI
2460);
2461
2462#ifdef NTOS_MODE_USER
2463
2465VOID
2466RtlInitBuffer(
2470)
2471{
2472 Buffer->Buffer = Buffer->StaticBuffer = Data;
2473 Buffer->Size = Buffer->StaticSize = DataSize;
2474 Buffer->ReservedForAllocatedSize = 0;
2475 Buffer->ReservedForIMalloc = NULL;
2476}
2477
2480RtlEnsureBufferSize(
2484)
2485{
2486 if (Buffer && RequiredSize <= Buffer->Size)
2487 return STATUS_SUCCESS;
2489}
2490
2492VOID
2493RtlFreeBuffer(
2495)
2496{
2497 if (Buffer->Buffer != Buffer->StaticBuffer && Buffer->Buffer)
2498 RtlFreeHeap(RtlGetProcessHeap(), 0, Buffer->Buffer);
2499 Buffer->Buffer = Buffer->StaticBuffer;
2500 Buffer->Size = Buffer->StaticSize;
2501}
2502
2504VOID
2505NTAPI
2509);
2510
2512VOID
2513NTAPI
2515 _In_ UCHAR Hash,
2517);
2518
2519#endif /* NTOS_MODE_USER */
2520
2521//
2522// Ansi String Functions
2523//
2526VOID
2527NTAPI
2529 _Inout_ _At_(AnsiString->Buffer, __drv_freesMem(Mem))
2531);
2532
2535VOID
2536NTAPI
2540);
2541
2545NTAPI
2549);
2550
2551//
2552// OEM String Functions
2553//
2556VOID
2557NTAPI
2559 _Inout_ _At_(OemString->Buffer, __drv_freesMem(Mem))
2561);
2562
2563//
2564// MultiByte->Unicode String Functions
2565//
2569NTAPI
2576);
2577
2581NTAPI
2586);
2587
2588//
2589// Atom Functions
2590//
2593NTAPI
2595 _In_ PRTL_ATOM_TABLE AtomTable,
2596 _In_ PWSTR AtomName,
2598);
2599
2602NTAPI
2605 _Inout_ PRTL_ATOM_TABLE *AtomTable
2606);
2607
2610NTAPI
2612 _In_ PRTL_ATOM_TABLE AtomTable,
2614);
2615
2618NTAPI
2620
2623NTAPI
2625 _In_ PRTL_ATOM_TABLE AtomTable,
2627 _Out_opt_ PULONG RefCount,
2629 _Out_opt_z_bytecap_(*NameLength) PWSTR AtomName,
2630 _Inout_opt_ PULONG NameLength
2631);
2632
2635NTAPI
2637 _In_ PRTL_ATOM_TABLE AtomTable,
2639);
2640
2643NTAPI
2645 _In_ PRTL_ATOM_TABLE AtomTable,
2646 _In_ PWSTR AtomName,
2648);
2649
2650//
2651// Process Management Functions
2652//
2654PPEB
2655NTAPI
2657 VOID
2658);
2659
2661VOID
2662NTAPI
2664
2667NTAPI
2669 _Out_ PRTL_USER_PROCESS_PARAMETERS *ProcessParameters,
2670 _In_ PUNICODE_STRING ImagePathName,
2673 _In_opt_ PUNICODE_STRING CommandLine,
2675 _In_opt_ PUNICODE_STRING WindowTitle,
2676 _In_opt_ PUNICODE_STRING DesktopInfo,
2677 _In_opt_ PUNICODE_STRING ShellInfo,
2678 _In_opt_ PUNICODE_STRING RuntimeInfo
2679);
2680
2683NTAPI
2685 _In_ PUNICODE_STRING ImageFileName,
2687 _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters,
2688 _In_opt_ PSECURITY_DESCRIPTOR ProcessSecutityDescriptor,
2689 _In_opt_ PSECURITY_DESCRIPTOR ThreadSecurityDescriptor,
2690 _In_opt_ HANDLE ParentProcess,
2692 _In_opt_ HANDLE DebugPort,
2693 _In_opt_ HANDLE ExceptionPort,
2695);
2696
2697#if (NTDDI_VERSION >= NTDDI_WIN7)
2700NTAPI
2702 _In_ PVOID ThreadContext,
2703 _Out_ HANDLE *OutThreadHandle,
2709 _Reserved_ PVOID Reserved6,
2711 _Reserved_ PVOID Reserved8
2712);
2713#else
2716NTAPI
2720 _In_ BOOLEAN CreateSuspended,
2721 _In_ ULONG StackZeroBits,
2722 _In_ SIZE_T StackReserve,
2723 _In_ SIZE_T StackCommit,
2724 _In_ PTHREAD_START_ROUTINE StartAddress,
2726 _Out_opt_ PHANDLE ThreadHandle,
2728);
2729#endif
2730
2733NTAPI
2735 _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters);
2736
2739NTAPI
2741 _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters);
2742
2744VOID
2745NTAPI
2748
2750VOID
2751NTAPI
2754 _Out_ PCONTEXT ThreadContext,
2755 _In_opt_ PVOID ThreadStartParam,
2756 _In_ PTHREAD_START_ROUTINE ThreadStartAddress,
2757 _In_ PINITIAL_TEB InitialTeb
2758);
2759
2760#ifdef _M_AMD64
2761typedef struct _WOW64_CONTEXT *PWOW64_CONTEXT;
2762
2765NTAPI
2766RtlWow64GetThreadContext(
2767 _In_ HANDLE ThreadHandle,
2768 _Inout_ PWOW64_CONTEXT ThreadContext
2769);
2770
2771
2774NTAPI
2775RtlWow64SetThreadContext(
2776 _In_ HANDLE ThreadHandle,
2777 _In_ PWOW64_CONTEXT ThreadContext
2778);
2779#endif
2780
2782BOOLEAN
2783NTAPI
2785
2788NTAPI
2790 _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters);
2791
2793VOID
2794NTAPI
2796
2799NTAPI
2803 _In_ PVOID CallSite,
2804 _In_ ULONG ArgumentCount,
2805 _In_ PULONG Arguments,
2806 _In_ BOOLEAN PassContext,
2807 _In_ BOOLEAN AlreadySuspended
2808);
2809
2812__cdecl
2814 _In_ BOOLEAN NewValue,
2815 _Out_opt_ PBOOLEAN OldValue,
2816 _In_ BOOLEAN NeedBreaks
2817);
2818
2821__cdecl
2823 _In_ BOOLEAN NewValue,
2824 _Out_opt_ PBOOLEAN OldValue,
2825 _In_ BOOLEAN NeedBreaks
2826);
2827
2829ULONG
2830NTAPI
2832 VOID
2833);
2834
2835
2836//
2837// Thread Pool Functions
2838//
2839//
2841NTAPI
2843 _In_ PRTL_START_POOL_THREAD StartPoolThread,
2844 _In_ PRTL_EXIT_POOL_THREAD ExitPoolThread
2845);
2846
2849NTAPI
2851 _In_ HANDLE hWaitHandle,
2852 _In_opt_ HANDLE hCompletionEvent
2853);
2854
2857NTAPI
2859 _In_ HANDLE hWaitHandle
2860);
2861
2864NTAPI
2869);
2870
2873NTAPI
2878);
2879
2882NTAPI
2884 _In_ PHANDLE phNewWaitObject,
2885 _In_ HANDLE hObject,
2887 _In_ PVOID pvContext,
2888 _In_ ULONG ulMilliseconds,
2889 _In_ ULONG ulFlags
2890);
2891
2892//
2893// Environment/Path Functions
2894//
2897NTAPI
2899 _In_ BOOLEAN Inherit,
2901);
2902
2905NTAPI
2907 _In_ PUNICODE_STRING DllName,
2908 _Inout_ PUNICODE_STRING RealName,
2909 _Inout_ PUNICODE_STRING LocalName
2910);
2911
2913VOID
2914NTAPI
2917);
2918
2920BOOLEAN
2921NTAPI
2924);
2925
2928NTAPI
2931);
2932
2934ULONG
2935NTAPI
2942 _Out_ PWSTR *PartName
2943);
2944
2947NTAPI
2950 _In_ PUNICODE_STRING PathString,
2951 _In_ PUNICODE_STRING FileNameString,
2952 _In_ PUNICODE_STRING ExtensionString,
2953 _In_ PUNICODE_STRING CallerBuffer,
2955 _Out_opt_ PUNICODE_STRING* FullNameOut,
2956 _Out_opt_ PSIZE_T FilePartSize,
2958);
2959
2961BOOLEAN
2962NTAPI
2964 _In_opt_z_ PCWSTR DosPathName,
2965 _Out_ PUNICODE_STRING NtPathName,
2966 _Out_opt_ PCWSTR *NtFileNamePart,
2967 _Out_opt_ PRTL_RELATIVE_NAME_U DirectoryInfo
2968);
2969
2970
2971#define RTL_UNCHANGED_UNK_PATH 1
2972#define RTL_CONVERTED_UNC_PATH 2
2973#define RTL_CONVERTED_NT_PATH 3
2974#define RTL_UNCHANGED_DOS_PATH 4
2975
2978NTAPI
2984);
2985
2986
2988BOOLEAN
2989NTAPI
2992 _Out_ PUNICODE_STRING NtName,
2993 _Out_ PCWSTR *PartName,
2994 _Out_ PRTL_RELATIVE_NAME_U RelativeName
2995);
2996
3000NTAPI
3006);
3007
3009ULONG
3010NTAPI
3014);
3015
3017ULONG
3018NTAPI
3021 _In_ ULONG Size,
3024);
3025
3026#if (NTDDI_VERSION >= NTDDI_WIN7)
3029NTAPI
3034 _Out_opt_ PWSTR *FilePart,
3035 _Out_opt_ RTL_PATH_TYPE *InputPathType
3036 );
3037#endif
3038
3040NTAPI
3046 _Out_opt_ PSIZE_T FilePartSize,
3050);
3051
3054NTAPI
3057 _In_ PCUNICODE_STRING PathString,
3059);
3060
3062ULONG
3063NTAPI
3065 VOID
3066);
3067
3069ULONG
3070NTAPI
3073);
3074
3076ULONG
3077NTAPI
3080);
3081
3085BOOLEAN
3086NTAPI
3091);
3092
3095NTAPI
3100);
3101
3102VOID
3103NTAPI
3105 _In_ PRTL_RELATIVE_NAME_U RelativeName
3106);
3107
3110NTAPI
3113);
3114
3117NTAPI
3122);
3123
3124//
3125// Critical Section/Resource Functions
3126//
3129NTAPI
3132);
3133
3136NTAPI
3139);
3140
3143NTAPI
3146);
3147
3150NTAPI
3153 _In_ ULONG SpinCount
3154);
3155
3157ULONG
3158NTAPI
3161);
3162
3164ULONG
3165NTAPI
3168);
3169
3172NTAPI
3175);
3176
3178BOOLEAN
3179NTAPI
3182);
3183
3185VOID
3186NTAPI
3189);
3190
3193NTAPI
3196);
3197
3199BOOLEAN
3200NTAPI
3204);
3205
3207BOOLEAN
3208NTAPI
3212);
3213
3215VOID
3216NTAPI
3219);
3220
3222VOID
3223NTAPI
3226);
3227
3229VOID
3230NTAPI
3233);
3234
3236VOID
3237NTAPI
3240);
3241
3243VOID
3244NTAPI
3247);
3248
3250VOID
3251NTAPI
3254);
3255
3256//
3257// Compression Functions
3258//
3259NTSYSAPI //NT_RTL_COMPRESS_API
3261NTAPI
3263 _In_ USHORT CompressionFormatAndEngine,
3268 _In_ ULONG UncompressedChunkSize,
3269 _Out_ PULONG FinalCompressedSize,
3271);
3272
3274NTSYSAPI //NT_RTL_COMPRESS_API
3276NTAPI
3278 _In_ USHORT CompressionFormat,
3284);
3285
3288NTAPI
3290 _In_ USHORT CompressionFormatAndEngine,
3291 _Out_ PULONG CompressBufferWorkSpaceSize,
3292 _Out_ PULONG CompressFragmentWorkSpaceSize
3293);
3294
3295//
3296// Frame Functions
3297//
3299VOID
3300NTAPI
3303);
3304
3306VOID
3307NTAPI
3310);
3311
3314NTAPI
3316 VOID
3317);
3318
3319//
3320// Debug Info Functions
3321//
3324NTAPI
3326 _In_ ULONG Size,
3327 _In_ BOOLEAN EventPair
3328);
3329
3332NTAPI
3334
3337NTAPI
3340 _In_ ULONG DebugInfoClassMask,
3342);
3343
3344//
3345// Bitmap Functions
3346//
3347#ifdef NTOS_MODE_USER
3348
3350BOOLEAN
3351NTAPI
3353 _In_ PRTL_BITMAP BitMapHeader,
3356);
3357
3359BOOLEAN
3360NTAPI
3362 _In_ PRTL_BITMAP BitMapHeader,
3365);
3366
3368VOID
3369NTAPI
3371 _In_ PRTL_BITMAP BitMapHeader
3372);
3373
3375VOID
3376NTAPI
3378 _In_ PRTL_BITMAP BitMapHeader,
3379 _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber
3380);
3381
3383VOID
3384NTAPI
3386 _In_ PRTL_BITMAP BitMapHeader,
3387 _In_range_(0, BitMapHeader->SizeOfBitMap - NumberToClear) ULONG StartingIndex,
3388 _In_range_(0, BitMapHeader->SizeOfBitMap - StartingIndex) ULONG NumberToClear
3389);
3390
3392ULONG
3393NTAPI
3395 _In_ PRTL_BITMAP BitMapHeader,
3398);
3399
3401ULONG
3402NTAPI
3404 _In_ PRTL_BITMAP BitMapHeader,
3407);
3408
3410ULONG
3411NTAPI
3413 _In_ PRTL_BITMAP BitMapHeader,
3415);
3416
3418ULONG
3419NTAPI
3421 _In_ PRTL_BITMAP BitMapHeader,
3422 _Out_writes_to_(SizeOfRunArray, return) PRTL_BITMAP_RUN RunArray,
3423 _In_range_(>, 0) ULONG SizeOfRunArray,
3424 _In_ BOOLEAN LocateLongestRuns
3425);
3426
3428ULONG
3429NTAPI
3431 _In_ PRTL_BITMAP BitMapHeader,
3432 _In_ ULONG FromIndex,
3433 _Out_ PULONG StartingRunIndex
3434);
3435
3437CCHAR
3438NTAPI
3441);
3442
3444ULONG
3445NTAPI
3447 _In_ PRTL_BITMAP BitMapHeader,
3449);
3450
3452CCHAR
3453NTAPI
3456);
3457
3459ULONG
3460NTAPI
3462 _In_ PRTL_BITMAP BitMapHeader,
3463 _In_ ULONG FromIndex,
3464 _Out_ PULONG StartingRunIndex
3465);
3466
3468ULONG
3469NTAPI
3471 _In_ PRTL_BITMAP BitMapHeader,
3472 _In_ ULONG FromIndex,
3473 _Out_ PULONG StartingRunIndex
3474);
3475
3477ULONG
3478NTAPI
3480 _In_ PRTL_BITMAP BitMapHeader,
3483);
3484
3486ULONG
3487NTAPI
3489 _In_ PRTL_BITMAP BitMapHeader,
3492);
3493
3494#ifdef __REACTOS__ // ReactOS improvement
3495_At_(BitMapHeader->SizeOfBitMap, _Post_equal_to_(SizeOfBitMap))
3496_At_(BitMapHeader->Buffer, _Post_equal_to_(BitMapBuffer))
3497#endif
3499VOID
3500NTAPI
3502 _Out_ PRTL_BITMAP BitMapHeader,
3503 _In_opt_ __drv_aliasesMem PULONG BitMapBuffer,
3504 _In_opt_ ULONG SizeOfBitMap
3505);
3506
3508ULONG
3509NTAPI
3511 _In_ PRTL_BITMAP BitMapHeader
3512);
3513
3515ULONG
3516NTAPI
3518 _In_ PRTL_BITMAP BitMapHeader
3519);
3520
3522VOID
3523NTAPI
3524RtlSetBit(
3525 _In_ PRTL_BITMAP BitMapHeader,
3526 _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber
3527);
3528
3530VOID
3531NTAPI
3533 _In_ PRTL_BITMAP BitMapHeader,
3534 _In_range_(0, BitMapHeader->SizeOfBitMap - NumberToSet) ULONG StartingIndex,
3535 _In_range_(0, BitMapHeader->SizeOfBitMap - StartingIndex) ULONG NumberToSet
3536);
3537
3539VOID
3540NTAPI
3542 _In_ PRTL_BITMAP BitMapHeader
3543);
3544
3547BOOLEAN
3548NTAPI
3550 _In_ PRTL_BITMAP BitMapHeader,
3551 _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber
3552);
3553
3554#if defined(_M_AMD64)
3557BOOLEAN
3559 _In_ PRTL_BITMAP BitMapHeader,
3560 _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitPosition)
3561{
3562 return BitTest64((LONG64 CONST*)BitMapHeader->Buffer, (LONG64)BitPosition);
3563}
3564#else
3565#define RtlCheckBit(BMH,BP) (((((PLONG)(BMH)->Buffer)[(BP)/32]) >> ((BP)%32)) & 0x1)
3566#endif /* defined(_M_AMD64) */
3567
3568#endif // NTOS_MODE_USER
3569
3570
3571//
3572// Timer Functions
3573//
3576NTAPI
3578 _In_ HANDLE TimerQueue,
3579 _In_ PHANDLE phNewTimer,
3585);
3586
3589NTAPI
3590RtlCreateTimerQueue(PHANDLE TimerQueue);
3591
3594NTAPI
3596 _In_ HANDLE TimerQueue,
3598 _In_ HANDLE CompletionEvent
3599);
3600
3603NTAPI
3605 _In_ HANDLE TimerQueue,
3609);
3610
3613NTAPI
3615 _In_ HANDLE TimerQueue,
3616 _In_opt_ HANDLE CompletionEvent
3617);
3618
3621NTAPI
3622RtlDeleteTimerQueue(HANDLE TimerQueue);
3623
3624//
3625// SList functions
3626//
3630 _Inout_ PSLIST_HEADER ListHead,
3634);
3635
3636//
3637// Range List functions
3638//
3640VOID
3641NTAPI
3643 _Out_ PRTL_RANGE_LIST RangeList
3644);
3645
3647VOID
3648NTAPI
3650 _In_ PRTL_RANGE_LIST RangeList
3651);
3652
3655NTAPI
3657 _Out_ PRTL_RANGE_LIST CopyRangeList,
3658 _In_ PRTL_RANGE_LIST RangeList
3659);
3660
3663NTAPI
3665 _Out_ PRTL_RANGE_LIST MergedRangeList,
3666 _In_ PRTL_RANGE_LIST RangeList1,
3667 _In_ PRTL_RANGE_LIST RangeList2,
3669);
3670
3673NTAPI
3675 _Out_ PRTL_RANGE_LIST InvertedRangeList,
3676 _In_ PRTL_RANGE_LIST RangeList
3677);
3678
3681NTAPI
3683 _Inout_ PRTL_RANGE_LIST RangeList,
3685 _In_ ULONGLONG End,
3690);
3691
3694NTAPI
3696 _Inout_ PRTL_RANGE_LIST RangeList,
3698 _In_ ULONGLONG End,
3700);
3701
3704NTAPI
3706 _Inout_ PRTL_RANGE_LIST RangeList,
3708);
3709
3712NTAPI
3714 _In_ PRTL_RANGE_LIST RangeList,
3715 _In_ ULONGLONG Minimum,
3716 _In_ ULONGLONG Maximum,
3720 _In_ UCHAR AttributeAvailableMask,
3724);
3725
3728NTAPI
3730 _In_ PRTL_RANGE_LIST RangeList,
3732 _In_ ULONGLONG End,
3734 _In_ UCHAR AttributeAvailableMask,
3737 _Out_ PBOOLEAN Available
3738);
3739
3742NTAPI
3744 _In_ PRTL_RANGE_LIST RangeList,
3747);
3748
3751NTAPI
3755 _In_ BOOLEAN MoveForwards
3756);
3757
3758//
3759// Debug Functions
3760//
3761ULONG
3762__cdecl
3765 ...
3766);
3767
3769ULONG
3770__cdecl
3775 ...
3776);
3777
3779ULONG
3780NTAPI
3782 _In_z_ PCCH Prompt,
3785);
3786
3787#undef DbgBreakPoint
3788VOID
3789NTAPI
3791 VOID
3792);
3793
3794VOID
3795NTAPI
3798 _In_ PVOID Base,
3800);
3801
3802VOID
3803NTAPI
3806 _In_ PVOID Base,
3808);
3809
3810VOID
3811NTAPI
3813 _In_ PCCH Name,
3815);
3816
3817//
3818// Generic Table Functions
3819//
3820#if defined(NTOS_MODE_USER) || defined(_NTIFS_)
3822PVOID
3823NTAPI
3828 _Out_opt_ PBOOLEAN NewElement
3829);
3830
3832PVOID
3833NTAPI
3838 _Out_opt_ PBOOLEAN NewElement,
3839 _In_ PVOID NodeOrParent,
3840 _In_ TABLE_SEARCH_RESULT SearchResult
3841);
3842
3844BOOLEAN
3845NTAPI
3848);
3849
3851PVOID
3852NTAPI
3856 _Out_ PVOID *NodeOrParent,
3857 _Out_ TABLE_SEARCH_RESULT *SearchResult
3858);
3859#endif
3860
3861//
3862// Handle Table Functions
3863//
3866NTAPI
3870);
3871
3873VOID
3874NTAPI
3877
3879BOOLEAN
3880NTAPI
3884);
3885
3887VOID
3888NTAPI
3891 _In_ ULONG HandleSize,
3893);
3894
3896BOOLEAN
3897NTAPI
3901);
3902
3903_Success_(return!=FALSE)
3905BOOLEAN
3906NTAPI
3911);
3912
3913//
3914// PE Functions
3915//
3918NTAPI
3921 _In_ ULONG Type,
3922 _In_ ULONG Language,
3923 _In_ ULONG MessageId,
3924 _Out_ PMESSAGE_RESOURCE_ENTRY *MessageResourceEntry
3925);
3926
3928ULONG
3929NTAPI
3931
3932_Success_(return!=NULL)
3934PVOID
3935NTAPI
3941);
3942
3944PVOID
3945NTAPI
3947 _In_ PIMAGE_NT_HEADERS NtHeader,
3949 _In_ ULONG Rva,
3950 _Inout_opt_ PIMAGE_SECTION_HEADER *SectionHeader
3951);
3952
3955NTAPI
3958
3961NTAPI
3966 _Out_ PIMAGE_NT_HEADERS *NtHeader
3967);
3968
3971NTAPI
3973 _In_ PIMAGE_NT_HEADERS NtHeader,
3975 _In_ ULONG Rva
3976);
3977
3978ULONG
3979NTAPI
3982 _In_ LONGLONG AdditionalBias,
3983 _In_opt_ PCSTR LoaderName,
3985 _In_ ULONG Conflict,
3987);
3988
3989//
3990// Activation Context Functions
3991//
3992#ifdef NTOS_MODE_USER
3995NTAPI
3998 _In_ PTEB Teb,
4001);
4002
4005NTAPI
4010);
4011
4013VOID
4014NTAPI
4017);
4018
4023 _In_ PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED Frame,
4025);
4026
4029NTAPI
4032);
4033
4036NTAPI
4039 _In_ PACTIVATION_CONTEXT_DATA ActivationContextData,
4040 _In_ ULONG ExtraBytes,
4041 _In_ PVOID NotificationRoutine,
4044);
4045
4048NTAPI
4051);
4052
4054VOID
4055NTAPI
4058);
4059
4062NTAPI
4065 _In_ ULONG_PTR ulCookie
4066);
4067
4069VOID
4070NTAPI
4073);
4074
4076VOID
4077NTAPI
4079
4084 _In_ PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED Frame
4085);
4086
4089NTAPI
4092 _In_ PUNICODE_STRING OriginalName,
4097 _In_ PULONG NewFlags,
4098 _In_ PSIZE_T FileNameSize,
4100);
4101
4104NTAPI
4107 _In_ const GUID *ExtensionGuid,
4108 _In_ ULONG SectionType,
4109 _In_ const UNICODE_STRING *SectionName,
4110 _Inout_ PVOID ReturnedData
4111);
4112
4115NTAPI
4119 _In_opt_ PVOID pvSubInstance,
4120 _In_ ULONG ulInfoClass,
4121 _Out_bytecap_(cbBuffer) PVOID pvBuffer,
4122 _In_opt_ SIZE_T cbBuffer,
4123 _Out_opt_ SIZE_T *pcbWrittenOrRequired
4124);
4125
4128NTAPI
4130 _In_ ULONG ulInfoClass,
4131 _Out_bytecap_(cbBuffer) PVOID pvBuffer,
4132 _In_opt_ SIZE_T cbBuffer,
4133 _Out_opt_ SIZE_T *pcbWrittenOrRequired
4134);
4135
4138NTAPI
4141);
4142
4143//
4144// WOW64 Functions
4145//
4148NTAPI
4150 _In_ BOOLEAN Wow64FsEnableRedirection
4151);
4152
4155NTAPI
4157 _In_ PVOID Wow64FsEnableRedirection,
4158 _Out_ PVOID *OldFsRedirectionLevel
4159);
4160
4161#endif
4162
4163//
4164// Registry Functions
4165//
4170NTAPI
4172 _In_ ULONG RelativeTo,
4174);
4175
4178NTAPI
4180 _In_ ULONG RelativeTo,
4182);
4183
4186NTAPI
4188 _Out_ _At_(KeyPath->Buffer, __drv_allocatesMem(Mem) _Post_bytecap_(KeyPath->MaximumLength) _Post_bytecount_(KeyPath->Length))
4189 PUNICODE_STRING KeyPath
4190);
4191
4194NTAPI
4198);
4199
4203NTAPI
4205 _In_ ULONG RelativeTo,
4207 _Inout_ _At_(*(*QueryTable).EntryContext, _Pre_unknown_)
4211);
4212
4216NTAPI
4218 _In_ ULONG RelativeTo,
4224);
4225
4226#ifdef NTOS_MODE_USER
4229NTAPI
4237);
4238
4241NTAPI
4247);
4248
4251NTAPI
4254);
4255
4258NTAPI
4264);
4265
4268NTAPI
4275);
4276
4279NTAPI
4282 _In_ ULONG Type,
4283 _In_ PVOID Data,
4285);
4286#endif
4287
4288//
4289// NLS Functions
4290//
4292VOID
4293NTAPI
4297);
4298
4300VOID
4301NTAPI
4303 _In_ PUSHORT AnsiTableBase,
4304 _In_ PUSHORT OemTableBase,
4305 _In_ PUSHORT CaseTableBase,
4306 _Out_ PNLSTABLEINFO NlsTable
4307);
4308
4311VOID
4312NTAPI
4314 _In_ PUSHORT TableBase,
4316);
4317
4319VOID
4320NTAPI
4322 _In_ PNLSTABLEINFO NlsTable);
4323
4324#if defined(NTOS_MODE_USER) && !defined(NO_RTL_INLINES)
4325
4326//
4327// Misc conversion functions
4328//
4329static __inline
4333 _In_ LONG SignedInteger
4334)
4335{
4337
4338 Result.QuadPart = SignedInteger;
4339 return Result;
4340}
4341
4342static __inline
4346 _In_ LONG Multiplicand,
4347 _In_ LONG Multiplier
4348)
4349{
4350 LARGE_INTEGER Product;
4351
4352 Product.QuadPart = (LONGLONG)Multiplicand * (ULONGLONG)Multiplier;
4353 return Product;
4354}
4355
4356static __inline
4357ULONG
4360 _In_ ULARGE_INTEGER Dividend,
4363)
4364{
4365 ULONG Quotient;
4366
4367 Quotient = (ULONG)(Dividend.QuadPart / Divisor);
4368 if (Remainder) {
4369 *Remainder = (ULONG)(Dividend.QuadPart % Divisor);
4370 }
4371
4372 return Quotient;
4373}
4374
4375static __inline
4379 _In_ ULONG Multiplicand,
4380 _In_ ULONG Multiplier
4381)
4382{
4383 LARGE_INTEGER Product;
4384
4385 Product.QuadPart = (ULONGLONG)Multiplicand * (ULONGLONG)Multiplier;
4386 return Product;
4387}
4388
4389#if defined(_AMD64_) || defined(_IA64_)
4390static __inline
4394 _In_ LARGE_INTEGER Dividend,
4397{
4399 ret.QuadPart = (ULONG64)Dividend.QuadPart / Divisor;
4400 if (Remainder)
4401 *Remainder = (ULONG)(Dividend.QuadPart % Divisor);
4402 return ret;
4403}
4404
4405#else
4408NTAPI
4410 _In_ LARGE_INTEGER Dividend,
4413);
4414
4415#endif /* defined(_AMD64_) || defined(_IA64_) */
4416
4417#endif
4418
4419
4421ULONG
4422NTAPI
4424 _In_ PULONG Seed
4425);
4426
4428ULONG
4429NTAPI
4431 _Inout_ PULONG Seed
4432);
4433
4435ULONG
4436NTAPI
4438 _In_ ULONG InitialCrc,
4441);
4442
4443//
4444// Network Functions
4445//
4447PSTR
4448NTAPI
4450 _In_ const struct in_addr *Addr,
4451 _Out_writes_(16) PCHAR S
4452);
4453
4455PWSTR
4456NTAPI
4458 _In_ const struct in_addr *Addr,
4460);
4461
4464NTAPI
4466 _In_ const struct in_addr *Address,
4468 _Out_writes_to_(*AddressStringLength, *AddressStringLength) PCHAR AddressString,
4469 _Inout_ PULONG AddressStringLength
4470);
4471
4473NTAPI
4475 _In_ const struct in_addr *Address,
4477 _Out_writes_to_(*AddressStringLength, *AddressStringLength) PWCHAR AddressString,
4478 _Inout_ PULONG AddressStringLength
4479);
4480
4483NTAPI
4486 _In_ BOOLEAN Strict,
4487 _Out_ PCSTR *Terminator,
4488 _Out_ struct in_addr *Addr
4489);
4490
4493NTAPI
4496 _In_ BOOLEAN Strict,
4497 _Out_ PCWSTR *Terminator,
4498 _Out_ struct in_addr *Addr
4499);
4500
4503NTAPI
4505 _In_ PCSTR AddressString,
4506 _In_ BOOLEAN Strict,
4507 _Out_ struct in_addr *Address,
4509);
4510
4513NTAPI
4515 _In_ PCWSTR AddressString,
4516 _In_ BOOLEAN Strict,
4517 _Out_ struct in_addr *Address,
4519);
4520
4522PSTR
4523NTAPI
4525 _In_ const struct in6_addr *Addr,
4526 _Out_writes_(46) PSTR S
4527);
4528
4530PWSTR
4531NTAPI
4533 _In_ const struct in6_addr *Addr,
4534 _Out_writes_(46) PWSTR S
4535);
4536
4539NTAPI
4541 _In_ const struct in6_addr *Address,
4542 _In_ ULONG ScopeId,
4544 _Out_writes_to_(*AddressStringLength, *AddressStringLength) PSTR AddressString,
4545 _Inout_ PULONG AddressStringLength
4546);
4547
4550NTAPI
4552 _In_ const struct in6_addr *Address,
4553 _In_ ULONG ScopeId,
4555 _Out_writes_to_(*AddressStringLength, *AddressStringLength) PWCHAR AddressString,
4556 _Inout_ PULONG AddressStringLength
4557);
4558
4561NTAPI
4564 _Out_ PCSTR *Terminator,
4565 _Out_ struct in6_addr *Addr
4566);
4567
4570NTAPI
4573 _Out_ PCWSTR *Terminator,
4574 _Out_ struct in6_addr *Addr
4575);
4576
4579NTAPI
4581 _In_ PCSTR AddressString,
4582 _Out_ struct in6_addr *Address,
4583 _Out_ PULONG ScopeId,
4585);
4586
4589NTAPI
4591 _In_ PCWSTR AddressString,
4592 _Out_ struct in6_addr *Address,
4593 _Out_ PULONG ScopeId,
4595);
4596
4597
4598//
4599// Time Functions
4600//
4602BOOLEAN
4603NTAPI
4605 _In_ PTIME_FIELDS CutoverTimeFields,
4606 _Out_ PLARGE_INTEGER SystemTime,
4607 _In_ PLARGE_INTEGER CurrentTime,
4608 _In_ BOOLEAN ThisYearsCutoverOnly);
4609
4612NTAPI
4614 _Out_ PRTL_TIME_ZONE_INFORMATION TimeZoneInformation);
4615
4617VOID
4618NTAPI
4620 _In_ ULONG SecondsSince1970,
4622);
4623
4626NTAPI
4628 _In_ PRTL_TIME_ZONE_INFORMATION TimeZoneInformation);
4629
4630_Success_(return != FALSE)
4632BOOLEAN
4633NTAPI
4637);
4638
4639_Success_(return != FALSE)
4641BOOLEAN
4642NTAPI
4646);
4647
4649VOID
4650NTAPI
4654);
4655
4658NTAPI
4660 _In_ PLARGE_INTEGER SystemTime,
4661 _Out_ PLARGE_INTEGER LocalTime
4662);
4663
4664//
4665// Version Functions
4666//
4671NTAPI
4676);
4677
4681NTAPI
4683 _Out_
4684 _At_(lpVersionInformation->dwOSVersionInfoSize, _Pre_ _Valid_)
4685 _When_(lpVersionInformation->dwOSVersionInfoSize == sizeof(RTL_OSVERSIONINFOEXW),
4686 _At_((PRTL_OSVERSIONINFOEXW)lpVersionInformation, _Out_))
4687 PRTL_OSVERSIONINFOW lpVersionInformation
4688);
4689
4692BOOLEAN
4693NTAPI
4695
4696//
4697// Secure Memory Functions
4698//
4699#ifdef NTOS_MODE_USER
4702NTAPI
4704 _In_ PRTL_SECURE_MEMORY_CACHE_CALLBACK Callback);
4705
4707BOOLEAN
4708NTAPI
4710 _In_ PVOID MemoryCache,
4711 _In_opt_ SIZE_T MemoryLength
4712);
4713#endif
4714
4715//
4716// Boot Status Data Functions
4717//
4718#ifdef NTOS_MODE_USER
4721NTAPI
4723 VOID
4724);
4725
4728NTAPI
4731 _In_ BOOLEAN WriteMode,
4732 _In_ RTL_BSD_ITEM_TYPE DataClass,
4736);
4737
4740NTAPI
4743);
4744
4747NTAPI
4750);
4751#endif
4752
4753#ifdef NTOS_MODE_USER
4757NTAPI
4760 _Out_ GUID *Guid);
4761
4765NTAPI
4770
4773NTAPI
4777 _In_ ULONG ImportTableHashRevision
4778);
4779#endif
4780
4781//
4782// MemoryStream functions
4783//
4784#ifdef NTOS_MODE_USER
4785
4787VOID
4788NTAPI
4790 _Out_ PRTL_MEMORY_STREAM Stream
4791);
4792
4794VOID
4795NTAPI
4797 _Out_ PRTL_MEMORY_STREAM Stream
4798);
4799
4801VOID
4802NTAPI
4804 _In_ PRTL_MEMORY_STREAM Stream
4805);
4806
4808HRESULT
4809NTAPI
4811 _In_ struct IStream *This,
4812 _In_ REFIID RequestedIid,
4813 _Outptr_ PVOID *ResultObject
4814);
4815
4817ULONG
4818NTAPI
4820 _In_ struct IStream *This
4821);
4822
4824ULONG
4825NTAPI
4827 _In_ struct IStream *This
4828);
4829
4831HRESULT
4832NTAPI
4834 _In_ struct IStream *This,
4838);
4839
4841HRESULT
4842NTAPI
4844 _In_ struct IStream *This,
4848);
4849
4851HRESULT
4852NTAPI
4854 _In_ struct IStream *This,
4855 _In_ LARGE_INTEGER RelativeOffset,
4856 _In_ ULONG Origin,
4857 _Out_opt_ PULARGE_INTEGER ResultOffset
4858);
4859
4861HRESULT
4862NTAPI
4864 _In_ struct IStream *This,
4865 _In_ struct IStream *Target,
4869);
4870
4872HRESULT
4873NTAPI
4874RtlCopyOutOfProcessMemoryStreamTo(
4875 _In_ struct IStream *This,
4876 _In_ struct IStream *Target,
4880);
4881
4883HRESULT
4884NTAPI
4886 _In_ struct IStream *This,
4887 _Out_ struct tagSTATSTG *Stats,
4889);
4890
4891// Dummy functions
4893HRESULT
4894NTAPI
4896 _In_ struct IStream *This,
4900);
4901
4903HRESULT
4904NTAPI
4906 _In_ struct IStream *This,
4908);
4909
4911HRESULT
4912NTAPI
4914 _In_ struct IStream *This,
4915 _In_ ULONG CommitFlags
4916);
4917
4919HRESULT
4920NTAPI
4922 _In_ struct IStream *This
4923);
4924
4926HRESULT
4927NTAPI
4929 _In_ struct IStream *This,
4933);
4934
4936HRESULT
4937NTAPI
4939 _In_ struct IStream *This,
4943);
4944
4946HRESULT
4947NTAPI
4949 _In_ struct IStream *This,
4950 _Outptr_ struct IStream **ResultStream
4951);
4952
4955NTAPI
4956RtlGetNativeSystemInformation(
4957 _In_ SYSTEM_INFORMATION_CLASS SystemInformationClass,
4958 _Out_writes_bytes_to_opt_(SystemInformationLength, *ReturnLength) PVOID SystemInformation,
4959 _In_ ULONG SystemInformationLength,
4961);
4962
4963#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) || (DLL_EXPORT_VERSION >= _WIN32_WINNT_VISTA)
4964
4966VOID
4967NTAPI
4969 _Out_ PRTL_RUN_ONCE RunOnce);
4970
4974NTAPI
4976 _Inout_ PRTL_RUN_ONCE RunOnce,
4980
4984NTAPI
4986 _Inout_ PRTL_RUN_ONCE RunOnce,
4989
4992NTAPI
4994 _Inout_ PRTL_RUN_ONCE RunOnce,
4997
4998#endif
4999
5000#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) || (defined(__REACTOS__) && defined(_NTDLLBUILD_))
5001/* Put NTSYSAPI back when this will be really exported. Only statically linked for now */
5002// NTSYSAPI
5003VOID
5004NTAPI
5006
5007// NTSYSAPI
5008VOID
5009NTAPI
5011
5012// NTSYSAPI
5013VOID
5014NTAPI
5016
5017// NTSYSAPI
5018VOID
5019NTAPI
5021
5022// NTSYSAPI
5023VOID
5024NTAPI
5026
5027#endif /* Win vista or Reactos Ntdll build */
5028
5029#if (_WIN32_WINNT >= _WIN32_WINNT_WIN7) || (defined(__REACTOS__) && defined(_NTDLLBUILD_))
5030
5031// NTSYSAPI
5032BOOLEAN
5033NTAPI
5035
5036// NTSYSAPI
5037BOOLEAN
5038NTAPI
5040
5041#endif /* Win7 or Reactos Ntdll build */
5042
5043#endif // NTOS_MODE_USER
5044
5047NTAPI
5049 ULONG flags,
5050 const GUID *extguid,
5051 ULONG section_kind,
5052 const GUID *guid,
5053 void *ptr
5054);
5055
5056#ifdef __cplusplus
5057}
5058#endif
5059
5060#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:999
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:818
NTSYSAPI NTSTATUS NTAPI RtlComputeImportTableHash(IN HANDLE FileHandle, OUT PCHAR Hash, IN ULONG ImportTableHashSize)
Definition: libsupp.c:1024
NTSYSAPI NTSTATUS NTAPI RtlWow64EnableFsRedirectionEx(IN PVOID Wow64FsEnableRedirection, OUT PVOID *OldFsRedirectionLevel)
Definition: libsupp.c:1011
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
VOID NTAPI RtlReleaseSRWLockExclusive(IN OUT PRTL_SRWLOCK SRWLock)
Definition: srw.c:710
VOID NTAPI RtlInitializeSRWLock(OUT PRTL_SRWLOCK SRWLock)
Definition: srw.c:317
VOID NTAPI RtlAcquireSRWLockExclusive(IN OUT PRTL_SRWLOCK SRWLock)
Definition: srw.c:591
VOID NTAPI RtlReleaseSRWLockShared(IN OUT PRTL_SRWLOCK SRWLock)
Definition: srw.c:526
VOID NTAPI RtlAcquireSRWLockShared(IN OUT PRTL_SRWLOCK SRWLock)
Definition: srw.c:325
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
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:82
NTSYSAPI WCHAR WINAPI RtlAnsiCharToUnicodeChar(LPSTR *)
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:5815
NTSYSAPI ULONG WINAPI RtlLengthSecurityDescriptor(PSECURITY_DESCRIPTOR)
NTSYSAPI NTSTATUS WINAPI RtlZombifyActivationContext(HANDLE)
Definition: actctx.c:5357
NTSYSAPI CCHAR WINAPI RtlFindMostSignificantBit(ULONGLONG)
Definition: bitmap.c:211
NTSYSAPI PVOID WINAPI RtlReAllocateHeap(HANDLE, ULONG, PVOID, SIZE_T)
Definition: heap.c:2667
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:72
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 RtlAddRefActivationContext(HANDLE)
Definition: actctx.c:5333
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:5472
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:5344
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 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:63
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:3143
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:5482
NTSYSAPI LONGLONG WINAPI RtlEnlargedIntegerMultiply(INT, INT)
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:5515
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 ULONG WINAPI RtlFindSetBits(PCRTL_BITMAP, ULONG, ULONG)
NTSYSAPI ULONG WINAPI RtlGetNtGlobalFlags(void)
Definition: libsupp.c:93
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:3084
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 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:1593
_In_ PLUID SourceLuid
Definition: rtlfuncs.h:1317
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR AbsoluteSecurityDescriptor
Definition: rtlfuncs.h:1591
_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:1598
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:2357
_In_opt_ PSID Group
Definition: rtlfuncs.h:1646
NTSYSAPI PULONG NTAPI RtlSubAuthoritySid(_In_ PSID Sid, _In_ ULONG SubAuthority)
_Out_ _Inout_ POEM_STRING _In_ PCUNICODE_STRING SourceString
Definition: rtlfuncs.h:1910
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:5866
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:1597
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:1145
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:4637
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:1599
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:2390
NTSYSAPI VOID NTAPI RtlDestroyHandleTable(_Inout_ PRTL_HANDLE_TABLE HandleTable)
NTSYSAPI NTSTATUS NTAPI RtlQueueWorkItem(_In_ WORKERCALLBACKFUNC Function, _In_opt_ PVOID Context, _In_ ULONG Flags)
_In_ PSID_IDENTIFIER_AUTHORITY _In_ UCHAR SubAuthorityCount
Definition: rtlfuncs.h:1515
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:3938
_Out_ PCPTABLEINFO CodePageTable
Definition: rtlfuncs.h:4316
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:4674
_In_ PCWSTR _Inout_ _At_ QueryTable _Pre_unknown_ PRTL_QUERY_REGISTRY_TABLE QueryTable
Definition: rtlfuncs.h:4208
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:1596
_Inout_opt_ POEM_STRING _Out_opt_ PBOOLEAN NameContainsSpaces
Definition: rtlfuncs.h:3091
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:2035
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:2359
_In_ ULONG _In_ ULONG AceFlags
Definition: rtlfuncs.h:1142
NTSYSAPI ULONG NTAPI RtlIsDosDeviceName_Ustr(_In_ PCUNICODE_STRING Name)
_In_opt_ PSID _In_opt_ BOOLEAN GroupDefaulted
Definition: rtlfuncs.h:1648
NTSYSAPI NTSTATUS NTAPI RtlSetIoCompletionCallback(_In_ HANDLE FileHandle, _In_ PIO_APC_ROUTINE Callback, _In_ ULONG Flags)
VOID NTAPI RtlReleaseRelativeName(_In_ PRTL_RELATIVE_NAME_U RelativeName)
NTSYSAPI VOID NTAPI RtlDestroyEnvironment(_In_ PWSTR Environment)
_In_ PSID _In_ BOOLEAN AllocateDestinationString
Definition: rtlfuncs.h:1349
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:3004
NTSYSAPI NTSTATUS NTAPI RtlSelfRelativeToAbsoluteSD2(_Inout_ PSECURITY_DESCRIPTOR SelfRelativeSD, _Out_ PULONG BufferSize)
_In_ PSID SourceSid
Definition: rtlfuncs.h:1359
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:4211
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:1635
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:2439
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 BOOLEAN NTAPI RtlEqualPrefixSid(PSID Sid1, PSID Sid2)
_In_ ULONG _In_ ULONGLONG ConditionMask
Definition: rtlfuncs.h:4676
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:1120
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:1672
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:1595
NTSYSAPI NTSTATUS NTAPI RtlpWaitForCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
_Out_ _Inout_ POEM_STRING DestinationString
Definition: rtlfuncs.h:1909
_In_ ULONG _In_ SECURITY_INFORMATION RequiredInformation
Definition: rtlfuncs.h:1716
NTSYSAPI VOID NTAPI RtlPopFrame(_In_ PTEB_ACTIVE_FRAME Frame)
NTSYSAPI PUCHAR NTAPI RtlSubAuthorityCountSid(_In_ PSID Sid)
_In_ ULONG _In_ ULONG CompressedBufferSize
Definition: rtlfuncs.h:3282
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:3284
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:1601
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:1133
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:4646
_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:1141
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:1592
NTSYSAPI PSID_IDENTIFIER_AUTHORITY NTAPI RtlIdentifierAuthoritySid(PSID Sid)
_In_ ULONG SecurityDescriptorLength
Definition: rtlfuncs.h:1714
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:1130
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:2418
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:2576
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:3089
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:1594
_In_ ULONG UncompressedBufferSize
Definition: rtlfuncs.h:3280
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:1131
VOID NTAPI DbgUnLoadImageSymbols(_In_ PSTRING Name, _In_ PVOID Base, _In_ ULONG_PTR ProcessId)
NTSYSAPI BOOLEAN NTAPI RtlIsThreadWithinLoaderCallout(VOID)
Definition: libsupp.c:345
NTSYSAPI NTSTATUS NTAPI RtlUnicodeToOemN(PCHAR OemString, ULONG OemSize, PULONG ResultSize, PCWCH UnicodeString, ULONG UnicodeSize)
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:2038
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:808
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:4174
_In_ PSID_IDENTIFIER_AUTHORITY IdentifierAuthority
Definition: rtlfuncs.h:1513
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:1638
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:2034
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:3911
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
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
PRTL_ACTIVATION_CONTEXT_STACK_FRAME FASTCALL RtlActivateActivationContextUnsafeFast(IN PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED Frame, IN PVOID Context)
Definition: actctx.c:5934
NTSTATUS NTAPI RtlActivateActivationContextEx(ULONG flags, PTEB tebAddress, HANDLE handle, PULONG_PTR cookie)
Definition: actctx.c:5368
PRTL_ACTIVATION_CONTEXT_STACK_FRAME FASTCALL RtlDeactivateActivationContextUnsafeFast(IN PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED Frame)
Definition: actctx.c:6011
NTSTATUS NTAPI RtlAllocateActivationContextStack(IN PACTIVATION_CONTEXT_STACK *Stack)
Definition: actctx.c:5906
NTSTATUS NTAPI RtlQueryInformationActiveActivationContext(ULONG ulInfoClass, PVOID pvBuffer, SIZE_T cbBuffer OPTIONAL, SIZE_T *pcbWrittenOrRequired OPTIONAL)
Definition: actctx.c:5765
VOID NTAPI RtlFreeActivationContextStack(IN PACTIVATION_CONTEXT_STACK Stack)
Definition: actctx.c:5440
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:3915
NTSTATUS NTAPI RtlUsageHeap(IN HANDLE Heap, IN ULONG Flags, OUT PRTL_HEAP_USAGE Usage)
Definition: heap.c:3982
ULONG NTAPI RtlMultipleFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN ULONG Count, OUT PVOID *Array)
Definition: heap.c:4148
BOOLEAN NTAPI RtlSetUserFlagsHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID BaseAddress, IN ULONG UserFlagsReset, IN ULONG UserFlagsSet)
Definition: heap.c:3860
PWSTR NTAPI RtlQueryTagHeap(IN PVOID HeapHandle, IN ULONG Flags, IN USHORT TagIndex, IN BOOLEAN ResetCounters, OUT PRTL_HEAP_TAG_INFO HeapTagInfo)
Definition: heap.c:3993
ULONG NTAPI RtlCreateTagHeap(_In_ HANDLE HeapHandle, _In_ ULONG Flags, _In_opt_ PWSTR TagName, _In_ PWSTR TagSubName)
Definition: heap.c:4018
PVOID NTAPI RtlProtectHeap(IN PVOID HeapHandle, IN BOOLEAN ReadOnly)
Definition: heap.c:4039
BOOLEAN NTAPI RtlSetUserValueHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID BaseAddress, IN PVOID UserValue)
Definition: heap.c:3798
ULONG NTAPI RtlExtendHeap(IN HANDLE Heap, IN ULONG Flags, IN PVOID P, IN SIZE_T Size)
Definition: heap.c:4006
ULONG NTAPI RtlMultipleAllocateHeap(IN PVOID HeapHandle, IN ULONG Flags, IN SIZE_T Size, IN ULONG Count, OUT PVOID *Array)
Definition: heap.c:4112
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
@ Start
Definition: partlist.h:33
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)
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
_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)
_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
*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:408
TABLE_SEARCH_RESULT
Definition: rtltypes.h:373
_IRQL_requires_same_ _In_ PVOID _In_ PVOID MatchData
Definition: rtltypes.h:416
RTL_GENERIC_FREE_ROUTINE * PRTL_GENERIC_FREE_ROUTINE
Definition: rtltypes.h:475
#define PSLIST_ENTRY
Definition: rtltypes.h:134
RTL_AVL_MATCH_FUNCTION * PRTL_AVL_MATCH_FUNCTION
Definition: rtltypes.h:417
_Inout_opt_ PVOID Parameter
Definition: rtltypes.h:323
RTL_AVL_ALLOCATE_ROUTINE * PRTL_AVL_ALLOCATE_ROUTINE
Definition: rtltypes.h:400
RTL_GENERIC_COMPARE_ROUTINE * PRTL_GENERIC_COMPARE_ROUTINE
Definition: rtltypes.h:458
* PRTL_RUN_ONCE
Definition: rtltypes.h:314
RTL_GENERIC_ALLOCATE_ROUTINE * PRTL_GENERIC_ALLOCATE_ROUTINE
Definition: rtltypes.h:467
RTL_AVL_COMPARE_ROUTINE * PRTL_AVL_COMPARE_ROUTINE
Definition: rtltypes.h:391
RTL_RUN_ONCE_INIT_FN * PRTL_RUN_ONCE_INIT_FN
Definition: rtltypes.h:325
_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