ReactOS 0.4.16-dev-1875-g3000d45
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//
42
45VOID
46RtlFailFast(
48{
50}
51
52#define RTL_STATIC_LIST_HEAD(x) LIST_ENTRY x = { &x, &x }
53
55VOID
57 _Out_ PLIST_ENTRY ListHead
58)
59{
60 ListHead->Flink = ListHead->Blink = ListHead;
61}
62
64VOID
66 _Inout_ PLIST_ENTRY ListHead,
68)
69{
70 PLIST_ENTRY OldFlink;
71 OldFlink = ListHead->Flink;
72 Entry->Flink = OldFlink;
73 Entry->Blink = ListHead;
74 OldFlink->Blink = Entry;
75 ListHead->Flink = Entry;
76}
77
79VOID
81 _Inout_ PLIST_ENTRY ListHead,
83)
84{
85 PLIST_ENTRY OldBlink;
86 OldBlink = ListHead->Blink;
87 Entry->Flink = ListHead;
88 Entry->Blink = OldBlink;
89 OldBlink->Flink = Entry;
90 ListHead->Blink = Entry;
91}
92
97 _In_ const LIST_ENTRY * ListHead
98)
99{
100 return (BOOLEAN)(ListHead->Flink == ListHead);
101}
102
107)
108{
109 PSINGLE_LIST_ENTRY FirstEntry;
110 FirstEntry = ListHead->Next;
111 if (FirstEntry != NULL) {
112 ListHead->Next = FirstEntry->Next;
113 }
114
115 return FirstEntry;
116}
117
119VOID
123)
124{
125 Entry->Next = ListHead->Next;
126 ListHead->Next = Entry;
127}
128
133{
134 PLIST_ENTRY OldFlink;
135 PLIST_ENTRY OldBlink;
136
137 OldFlink = Entry->Flink;
138 OldBlink = Entry->Blink;
139 OldFlink->Blink = OldBlink;
140 OldBlink->Flink = OldFlink;
141 return (BOOLEAN)(OldFlink == OldBlink);
142}
143
147 _Inout_ PLIST_ENTRY ListHead)
148{
149 PLIST_ENTRY Flink;
151
152 Entry = ListHead->Flink;
153 Flink = Entry->Flink;
154 ListHead->Flink = Flink;
155 Flink->Blink = ListHead;
156 return Entry;
157}
158
162 _Inout_ PLIST_ENTRY ListHead)
163{
164 PLIST_ENTRY Blink;
166
167 Entry = ListHead->Blink;
168 Blink = Entry->Blink;
169 ListHead->Blink = Blink;
170 Blink->Flink = ListHead;
171 return Entry;
172}
173
174//
175// Unicode string macros
176//
181VOID
182RtlInitEmptyUnicodeString(
186{
187 UnicodeString->Length = 0;
188 UnicodeString->MaximumLength = BufferSize;
189 UnicodeString->Buffer = Buffer;
190}
191
196VOID
197RtlInitEmptyAnsiString(
201{
202 AnsiString->Length = 0;
203 AnsiString->MaximumLength = BufferSize;
204 AnsiString->Buffer = Buffer;
205}
206
207//
208// LUID Macros
209//
210#define RtlEqualLuid(L1, L2) (((L1)->HighPart == (L2)->HighPart) && \
211 ((L1)->LowPart == (L2)->LowPart))
213LUID
217{
218 LUID TempLuid;
219
220 TempLuid.LowPart = Ulong;
221 TempLuid.HighPart = 0;
222 return TempLuid;
223}
224
228NTAPI
234 _In_reads_bytes_(UTF8StringByteCount) PCCH UTF8StringSource,
236
237//
238// ASSERT Macros
239//
240#ifndef ASSERT
241#if DBG
242
243#define ASSERT( exp ) \
244 ((void)((!(exp)) ? \
245 (RtlAssert( (PVOID)#exp, (PVOID)__FILE__, __LINE__, NULL ),FALSE) : \
246 TRUE))
247
248#define ASSERTMSG( msg, exp ) \
249 ((void)((!(exp)) ? \
250 (RtlAssert( (PVOID)#exp, (PVOID)__FILE__, __LINE__, (PCHAR)msg ),FALSE) : \
251 TRUE))
252
253#else
254
255#define ASSERT( exp ) ((void) 0)
256#define ASSERTMSG( msg, exp ) ((void) 0)
257
258#endif
259#endif
260
261#ifdef NTOS_KERNEL_RUNTIME
262
263//
264// Executing RTL functions at DISPATCH_LEVEL or higher will result in a
265// bugcheck.
266//
267#define RTL_PAGED_CODE PAGED_CODE
268
269#else
270
271//
272// This macro does nothing in user mode
273//
274#define RTL_PAGED_CODE()
275
276#endif
277
278//
279// RTL Splay Tree Functions
280//
281#ifndef RTL_USE_AVL_TABLES
282
284VOID
285NTAPI
292);
293
295PVOID
296NTAPI
301 _Out_opt_ PBOOLEAN NewElement
302);
303
305PVOID
306NTAPI
311 _Out_opt_ PBOOLEAN NewElement,
312 _In_ PVOID NodeOrParent,
313 _In_ TABLE_SEARCH_RESULT SearchResult
314);
315
318NTAPI
322);
323
326PVOID
327NTAPI
331);
332
334PVOID
335NTAPI
339 _Out_ PVOID *NodeOrParent,
340 _Out_ TABLE_SEARCH_RESULT *SearchResult
341);
342
345PVOID
346NTAPI
350);
351
354PVOID
355NTAPI
358 _Inout_ PVOID *RestartKey
359);
360
363PVOID
364NTAPI
367 _In_ ULONG I
368);
369
371ULONG
372NTAPI
375);
376
380NTAPI
383);
384
385#endif /* !RTL_USE_AVL_TABLES */
386
389NTAPI
392);
393
396NTAPI
399);
400
402VOID
403NTAPI
407);
408
412NTAPI
415);
416
420NTAPI
423);
424
428NTAPI
431);
432
436NTAPI
439);
440
441#define RtlIsLeftChild(Links) \
442 (RtlLeftChild(RtlParent(Links)) == (PRTL_SPLAY_LINKS)(Links))
443
444#define RtlIsRightChild(Links) \
445 (RtlRightChild(RtlParent(Links)) == (PRTL_SPLAY_LINKS)(Links))
446
447#define RtlRightChild(Links) \
448 ((PRTL_SPLAY_LINKS)(Links))->RightChild
449
450#define RtlIsRoot(Links) \
451 (RtlParent(Links) == (PRTL_SPLAY_LINKS)(Links))
452
453#define RtlLeftChild(Links) \
454 ((PRTL_SPLAY_LINKS)(Links))->LeftChild
455
456#define RtlParent(Links) \
457 ((PRTL_SPLAY_LINKS)(Links))->Parent
458
459// FIXME: use inline function
460
461#define RtlInitializeSplayLinks(Links) \
462 { \
463 PRTL_SPLAY_LINKS _SplayLinks; \
464 _SplayLinks = (PRTL_SPLAY_LINKS)(Links); \
465 _SplayLinks->Parent = _SplayLinks; \
466 _SplayLinks->LeftChild = NULL; \
467 _SplayLinks->RightChild = NULL; \
468 }
469
470#define RtlInsertAsLeftChild(ParentLinks,ChildLinks) \
471 { \
472 PRTL_SPLAY_LINKS _SplayParent; \
473 PRTL_SPLAY_LINKS _SplayChild; \
474 _SplayParent = (PRTL_SPLAY_LINKS)(ParentLinks); \
475 _SplayChild = (PRTL_SPLAY_LINKS)(ChildLinks); \
476 _SplayParent->LeftChild = _SplayChild; \
477 _SplayChild->Parent = _SplayParent; \
478 }
479
480#define RtlInsertAsRightChild(ParentLinks,ChildLinks) \
481 { \
482 PRTL_SPLAY_LINKS _SplayParent; \
483 PRTL_SPLAY_LINKS _SplayChild; \
484 _SplayParent = (PRTL_SPLAY_LINKS)(ParentLinks); \
485 _SplayChild = (PRTL_SPLAY_LINKS)(ChildLinks); \
486 _SplayParent->RightChild = _SplayChild; \
487 _SplayChild->Parent = _SplayParent; \
488 }
489
490//
491// RTL AVL Tree Functions
492//
494VOID
495NTAPI
502);
503
505PVOID
506NTAPI
511 _Out_opt_ PBOOLEAN NewElement
512);
513
515PVOID
516NTAPI
521 _Out_opt_ PBOOLEAN NewElement,
522 _In_ PVOID NodeOrParent,
523 _In_ TABLE_SEARCH_RESULT SearchResult
524);
525
528NTAPI
532);
533
536PVOID
537NTAPI
541);
542
544PVOID
545NTAPI
549 _Out_ PVOID *NodeOrParent,
550 _Out_ TABLE_SEARCH_RESULT *SearchResult
551);
552
555PVOID
556NTAPI
560);
561
564PVOID
565NTAPI
568 _Inout_ PVOID *RestartKey
569);
570
573PVOID
574NTAPI
578 _Out_ PVOID *RestartKey
579);
580
583PVOID
584NTAPI
587 _In_opt_ PRTL_AVL_MATCH_FUNCTION MatchFunction,
589 _In_ ULONG NextFlag,
590 _Inout_ PVOID *RestartKey,
591 _Inout_ PULONG DeleteCount,
593);
594
597PVOID
598NTAPI
601 _In_ ULONG I
602);
603
605ULONG
606NTAPI
609);
610
614NTAPI
617);
618
619#ifdef RTL_USE_AVL_TABLES
620
621#define RtlInitializeGenericTable RtlInitializeGenericTableAvl
622#define RtlInsertElementGenericTable RtlInsertElementGenericTableAvl
623#define RtlInsertElementGenericTableFull RtlInsertElementGenericTableFullAvl
624#define RtlDeleteElementGenericTable RtlDeleteElementGenericTableAvl
625#define RtlLookupElementGenericTable RtlLookupElementGenericTableAvl
626#define RtlLookupElementGenericTableFull RtlLookupElementGenericTableFullAvl
627#define RtlEnumerateGenericTable RtlEnumerateGenericTableAvl
628#define RtlEnumerateGenericTableWithoutSplaying RtlEnumerateGenericTableWithoutSplayingAvl
629#define RtlGetElementGenericTable RtlGetElementGenericTableAvl
630#define RtlNumberGenericTableElements RtlNumberGenericTableElementsAvl
631#define RtlIsGenericTableEmpty RtlIsGenericTableEmptyAvl
632
633#endif /* RTL_USE_AVL_TABLES */
634
635//
636// Exception and Error Functions
637//
639PVOID
640NTAPI
642 _In_ ULONG FirstHandler,
643 _In_ PVECTORED_EXCEPTION_HANDLER VectoredHandler
644);
645
647ULONG
648NTAPI
650 _In_ PVOID VectoredHandlerHandle
651);
652
654PVOID
655NTAPI
657 _In_ ULONG FirstHandler,
658 _In_ PVECTORED_EXCEPTION_HANDLER VectoredHandler
659);
660
662ULONG
663NTAPI
665 _In_ PVOID VectoredHandlerHandle
666);
667
669VOID
670NTAPI
672 _In_ PRTLP_UNHANDLED_EXCEPTION_FILTER TopLevelExceptionFilter
673);
674
676LONG
677NTAPI
679 _In_ PEXCEPTION_POINTERS ExceptionInfo
680);
681
683LONG
684NTAPI
686 _In_ PEXCEPTION_POINTERS ExceptionInfo,
688);
689
692VOID
693NTAPI
695 _In_ PVOID FailedAssertion,
699);
700
702PVOID
703NTAPI
705 _In_ PVOID Pointer
706);
707
709PVOID
710NTAPI
712 _In_ PVOID Pointer
713);
714
716PVOID
717NTAPI
719 _In_ PVOID Pointer
720);
721
723PVOID
724NTAPI
726 _In_ PVOID Pointer
727);
728
731NTAPI
733 VOID
734);
735
737ULONG
738NTAPI
740 VOID
741);
742
744VOID
745NTAPI
747 _In_ ULONG LastError
748);
749
751VOID
752NTAPI
755);
756
759NTAPI
761 _In_ ULONG NewMode,
762 _Out_opt_ PULONG OldMode
763);
764
766ULONG
767NTAPI
769 VOID
770);
771
772#endif /* NTOS_MODE_USER */
773
775VOID
776NTAPI
779);
780
783NTAPI
785 _In_ PEXCEPTION_RECORD ExceptionRecord,
787);
788
791_When_(Status >= 0, _Out_range_(==, 0))
793ULONG
794NTAPI
797);
798
800_When_(Status >= 0, _Out_range_(==, 0))
802ULONG
803NTAPI
806);
807
810NTAPI
812 _In_ ULONG SecurityError
813);
814
816VOID
817NTAPI
819 _In_ PEXCEPTION_RECORD ExceptionRecord
820);
821
824VOID
825NTAPI
828);
829
831VOID
832NTAPI
834 _In_opt_ PVOID TargetFrame,
835 _In_opt_ PVOID TargetIp,
836 _In_opt_ PEXCEPTION_RECORD ExceptionRecord,
838);
839
840#define RTL_STACK_WALKING_MODE_FRAMES_TO_SKIP_SHIFT 8
841
842#ifdef _M_AMD64
843
845PRUNTIME_FUNCTION
846NTAPI
848 _In_ DWORD64 ControlPc,
849 _Out_ PDWORD64 ImageBase,
851);
852
855NTAPI
858 _In_ ULONG64 ImageBase,
859 _In_ ULONG64 ControlPc,
860 _In_ PRUNTIME_FUNCTION FunctionEntry,
862 _Out_ PVOID* HandlerData,
864 _Inout_opt_ PKNONVOLATILE_CONTEXT_POINTERS ContextPointers
865);
866
867#endif // _M_AMD64
868
869//
870// Tracing Functions
871//
873ULONG
874NTAPI
879);
880
882USHORT
883NTAPI
885 VOID
886);
887
888#ifdef NTOS_MODE_USER
889//
890// Heap Functions
891//
896PVOID
897NTAPI
899 _In_ PVOID HeapHandle,
902);
903
906PVOID
907NTAPI
911 _In_opt_ SIZE_T SizeToReserve,
912 _In_opt_ SIZE_T SizeToCommit,
915);
916
918ULONG
919NTAPI
921 _In_ HANDLE HeapHandle,
923 _In_opt_ PWSTR TagName,
924 _In_ PWSTR TagSubName
925);
926
927ULONG
928NTAPI
930 _In_ HANDLE Heap,
932);
933
936PVOID
937NTAPI
941 _In_opt_ SIZE_T SizeToReserve,
942 _In_opt_ SIZE_T SizeToCommit,
945);
946
948HANDLE
949NTAPI
952);
953
955ULONG
956NTAPI
958 _In_ HANDLE Heap,
960 _In_ PVOID P,
962);
963
964_Success_(return != 0)
967NTAPI
969 _In_ HANDLE HeapHandle,
972);
973
974ULONG
975NTAPI
977 _In_ ULONG HeapCount,
978 _Out_cap_(HeapCount) HANDLE *HeapArray
979);
980
981_Success_(return != 0)
983NTAPI
985 _In_ PVOID HeapHandle,
988 _Inout_opt_ PVOID *UserValue,
989 _Out_opt_ PULONG UserFlags
990);
991
993PVOID
994NTAPI
996 _In_ PVOID HeapHandle,
998);
999
1002NTAPI
1004 _In_ PVOID HeapHandle,
1005 _In_ HEAP_INFORMATION_CLASS HeapInformationClass,
1006 _Out_ PVOID HeapInformation,
1007 _In_ SIZE_T HeapInformationLength,
1010);
1011
1014PWSTR
1015NTAPI
1017 _In_ PVOID HeapHandle,
1019 _In_ USHORT TagIndex,
1020 _In_ BOOLEAN ResetCounters,
1021 _Out_ PRTL_HEAP_TAG_INFO HeapTagInfo
1022);
1023
1028PVOID
1029NTAPI
1031 _In_ HANDLE Heap,
1035);
1036
1039NTAPI
1041 _In_ PVOID HeapHandle,
1042 _In_ HEAP_INFORMATION_CLASS HeapInformationClass,
1043 _When_(HeapInformationClass==HeapCompatibilityInformation,_In_) PVOID HeapInformation,
1044 _In_ SIZE_T HeapInformationLength
1045);
1046
1048BOOLEAN
1049NTAPI
1051 _In_ HANDLE Heap
1052);
1053
1055ULONG
1056NTAPI
1058 _In_ HANDLE HeapHandle,
1063);
1064
1066ULONG
1067NTAPI
1069 _In_ HANDLE HeapHandle,
1072 _In_count_(Count) /* _Deref_ _Post_invalid_ */ PVOID * Array
1073);
1074
1077NTAPI
1079 _In_ HANDLE Heap,
1082);
1083
1085BOOLEAN
1086NTAPI
1088 _In_ HANDLE Heap
1089);
1090
1091BOOLEAN
1092NTAPI
1094 _In_ PVOID HeapHandle,
1097 _In_ PVOID UserValue
1098);
1099
1100BOOLEAN
1101NTAPI
1103 _In_ PVOID HeapHandle,
1106 _In_ ULONG UserFlagsReset,
1107 _In_ ULONG UserFlagsSet
1108);
1109
1111BOOLEAN
1112NTAPI
1114 _In_ HANDLE Heap,
1117);
1118
1121NTAPI
1123 _In_ HANDLE HeapHandle,
1124 _In_ PVOID HeapEntry
1125);
1126
1127#define RtlGetProcessHeap() (NtCurrentPeb()->ProcessHeap)
1128
1129#endif // NTOS_MODE_USER
1130
1131#define NtCurrentPeb() (NtCurrentTeb()->ProcessEnvironmentBlock)
1132
1134SIZE_T
1135NTAPI
1137 _In_ PVOID HeapHandle,
1139 _In_ PVOID MemoryPointer
1140);
1141
1142
1143//
1144// Security Functions
1145//
1149NTAPI
1154);
1155
1159NTAPI
1161 _Inout_ PACL Acl,
1165);
1166
1170NTAPI
1172 _Inout_ PACL pAcl,
1177);
1178
1181NTAPI
1183 _Inout_ PACL pAcl,
1187 _In_opt_ GUID *ObjectTypeGuid,
1188 _In_opt_ GUID *InheritedObjectTypeGuid,
1189 _In_ PSID pSid
1190);
1191
1194NTAPI
1196 _Inout_ PACL Acl,
1199 _In_ PSID Sid
1200);
1201
1204NTAPI
1206 _Inout_ PACL Acl,
1210 _In_ PSID Sid
1211);
1212
1215NTAPI
1217 _Inout_ PACL pAcl,
1221 _In_opt_ GUID *ObjectTypeGuid,
1222 _In_opt_ GUID *InheritedObjectTypeGuid,
1223 _In_ PSID pSid
1224);
1225
1228NTAPI
1230 _Inout_ PACL Acl,
1235);
1236
1239NTAPI
1241 _Inout_ PACL Acl,
1244 _In_ PSID Sid,
1246 _In_ BOOLEAN Failure
1247);
1248
1251NTAPI
1254 _In_ ULONG NumPriv,
1256 _Out_ PVOID *ReturnedState
1257);
1258
1261NTAPI
1263 _Inout_ PACL Acl,
1267 _In_ PSID Sid,
1269 _In_ BOOLEAN Failure
1270);
1271
1274NTAPI
1276 _Inout_ PACL Acl,
1280 _In_opt_ GUID *ObjectTypeGuid,
1281 _In_opt_ GUID *InheritedObjectTypeGuid,
1282 _In_ PSID Sid,
1284 _In_ BOOLEAN Failure
1285);
1286
1289NTAPI
1291 _Inout_ PACL Acl,
1294 _In_ ULONG MandatoryFlags,
1296 _In_ PSID LabelSid);
1297
1300NTAPI
1303 _In_ BOOLEAN NewValue,
1304 _In_ BOOLEAN ForThread,
1305 _Out_ PBOOLEAN OldValue
1306);
1307
1311NTAPI
1315 _In_ ULONG SubAuthority0,
1316 _In_ ULONG SubAuthority1,
1317 _In_ ULONG SubAuthority2,
1318 _In_ ULONG SubAuthority3,
1319 _In_ ULONG SubAuthority4,
1320 _In_ ULONG SubAuthority5,
1321 _In_ ULONG SubAuthority6,
1322 _In_ ULONG SubAuthority7,
1324);
1325
1327BOOLEAN
1328NTAPI
1332);
1333
1335BOOLEAN
1336NTAPI
1340);
1341
1344VOID
1345NTAPI
1347 _Out_ PLUID DestinationLuid,
1349 );
1350
1352VOID
1353NTAPI
1355 ULONG Count,
1358);
1359
1362NTAPI
1366 _In_ ULONG SidAreaSize,
1368 _In_ PSID SidArea,
1369 _Out_ PSID* RemainingSidArea,
1370 _Out_ PULONG RemainingSidAreaSize
1371);
1372
1376NTAPI
1379 _In_ PSID Sid,
1381);
1382
1386NTAPI
1388 _In_ ULONG DestinationSidLength,
1389 _Out_writes_bytes_(DestinationSidLength) PSID DestinationSid,
1391);
1392
1395NTAPI
1397 PACL Acl,
1398 ULONG AclSize,
1400);
1401
1404NTAPI
1408);
1409
1412NTAPI
1416);
1417
1420NTAPI
1422 _In_ PSECURITY_DESCRIPTOR pSourceSecurityDescriptor,
1423 _Out_ PSECURITY_DESCRIPTOR *pDestinationSecurityDescriptor
1424);
1425
1428NTAPI
1430 PACL Acl,
1432);
1433
1435BOOLEAN
1436NTAPI
1438 PSID Sid1,
1439 PSID Sid2
1440);
1441
1443BOOLEAN
1444NTAPI
1446 _In_ PSID Sid1,
1447 _In_ PSID Sid2
1448);
1449
1451BOOLEAN
1452NTAPI
1454 PACL Acl,
1455 PACE* Ace
1456);
1457
1459PVOID
1460NTAPI
1463);
1464
1467NTAPI
1469 PACL Acl,
1471 PVOID *Ace
1472);
1473
1476NTAPI
1481);
1482
1485NTAPI
1489 _Out_ PACL *Dacl,
1491);
1492
1495NTAPI
1499 _Out_ PACL* Sacl,
1501);
1502
1505NTAPI
1508 _Out_ PSID *Group,
1510);
1511
1514NTAPI
1517 _Out_ PSID *Owner,
1519);
1520
1522BOOLEAN
1523NTAPI
1526 _Out_ PUCHAR RMControl
1527);
1528
1531NTAPI
1533
1536NTAPI
1538
1542NTAPI
1544 _Out_ PSID Sid,
1547);
1548
1550ULONG
1551NTAPI
1553
1556ULONG
1557NTAPI
1560
1562ULONG
1563NTAPI
1565
1568NTAPI
1570 _In_ PSECURITY_DESCRIPTOR AbsoluteSD,
1571 _Out_ PSECURITY_DESCRIPTOR SelfRelativeSD,
1573
1575VOID
1576NTAPI
1580);
1581
1582#ifdef NTOS_MODE_USER
1583
1586NTAPI
1588 PACL Acl,
1590 ULONG InformationLength,
1592);
1593
1594#endif
1595
1597VOID
1598NTAPI
1600 _In_ PVOID ReturnedState
1601);
1602
1603#if (NTDDI_VERSION >= NTDDI_VISTA)
1604
1607NTAPI
1610 _In_reads_opt_(PrivilegeCount) _When_(PrivilegeCount != 0, _Notnull_)
1611 PULONG PrivilegesToKeep,
1612 _In_ ULONG PrivilegeCount
1613);
1614
1615#endif /* (NTDDI_VERSION >= NTDDI_VISTA) */
1616
1620NTAPI
1633);
1634
1637NTAPI
1639 _Inout_ PSECURITY_DESCRIPTOR SelfRelativeSD,
1641);
1642
1645NTAPI
1650);
1651
1654NTAPI
1657 _In_ SECURITY_DESCRIPTOR_CONTROL ControlBitsOfInterest,
1658 _In_ SECURITY_DESCRIPTOR_CONTROL ControlBitsToSet
1659);
1660
1664NTAPI
1670);
1671
1675NTAPI
1680);
1681
1682#ifdef NTOS_MODE_USER
1683
1686NTAPI
1688 PACL Acl,
1690 ULONG InformationLength,
1692);
1693
1694#endif
1695
1699NTAPI
1704);
1705
1708NTAPI
1712 _In_ PACL Sacl,
1714);
1715
1717VOID
1718NTAPI
1721 _In_ PUCHAR RMControl
1722);
1723
1725PUCHAR
1726NTAPI
1728 _In_ PSID Sid
1729);
1730
1732PULONG
1733NTAPI
1735 _In_ PSID Sid,
1736 _In_ ULONG SubAuthority
1737);
1738
1742BOOLEAN
1743NTAPI
1748);
1749
1751BOOLEAN
1752NTAPI
1754
1756BOOLEAN
1757NTAPI
1759
1761BOOLEAN
1762NTAPI
1764
1767NTAPI
1769 _In_ PSECURITY_DESCRIPTOR *ObjectDescriptor
1770);
1771
1774NTAPI
1776 _In_ PSECURITY_DESCRIPTOR ParentDescriptor,
1777 _In_ PSECURITY_DESCRIPTOR CreatorDescriptor,
1782);
1783
1786NTAPI
1788 _In_ PSECURITY_DESCRIPTOR ObjectDescriptor,
1790 _Out_ PSECURITY_DESCRIPTOR ResultantDescriptor,
1791 _In_ ULONG DescriptorLength,
1793);
1794
1797NTAPI
1800 _In_ PSECURITY_DESCRIPTOR ModificationDescriptor,
1801 _Out_ PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor,
1804);
1805
1806//
1807// Single-Character Functions
1808//
1811NTAPI
1814 _In_ ULONG Base,
1817);
1818
1820CHAR
1821NTAPI
1823
1825WCHAR
1826NTAPI
1828
1830WCHAR
1831NTAPI
1833
1836NTAPI
1839 _In_ ULONG Base,
1842);
1843
1846NTAPI
1852);
1853
1855_At_(String->MaximumLength, _Const_)
1858NTAPI
1863);
1864
1867NTAPI
1869 PCSZ String,
1870 ULONG Base,
1872);
1873
1874//
1875// Byte Swap Functions
1876//
1877#ifdef NTOS_MODE_USER
1878
1880unsigned short
1881__cdecl
1883 _In_ unsigned short _Short);
1884
1886unsigned long
1887__cdecl
1889 _In_ unsigned long _Long);
1890
1892unsigned __int64
1893__cdecl
1895 _In_ unsigned __int64 _Int64);
1896
1897#ifdef _MSC_VER
1898#pragma intrinsic(_byteswap_ushort)
1899#pragma intrinsic(_byteswap_ulong)
1900#pragma intrinsic(_byteswap_uint64)
1901#endif // _MSC_VER
1902#define RtlUshortByteSwap(_x) _byteswap_ushort((USHORT)(_x))
1903#define RtlUlongByteSwap(_x) _byteswap_ulong((_x))
1904#define RtlUlonglongByteSwap(_x) _byteswap_uint64((_x))
1905
1906#endif // NTOS_MODE_USER
1907
1908//
1909// Unicode->Ansi String Functions
1910//
1912ULONG
1913NTAPI
1915
1916#ifdef NTOS_MODE_USER
1917
1918#define RtlUnicodeStringToAnsiSize(STRING) ( \
1919 NLS_MB_CODE_PAGE_TAG ? \
1920 RtlxUnicodeStringToAnsiSize(STRING) : \
1921 ((STRING)->Length + sizeof(UNICODE_NULL)) / sizeof(WCHAR) \
1922)
1923
1924#endif
1925
1928NTAPI
1933);
1934
1935//
1936// Unicode->OEM String Functions
1937//
1940NTAPI
1945);
1946
1949//_At_(DestinationString->Buffer, _Post_bytecount_(DestinationString->Length))
1952NTAPI
1959);
1960
1963NTAPI
1968);
1969
1974NTAPI
1975RtlUnicodeStringToCountedOemString(
1981);
1982
1985NTAPI
1988 ULONG OemSize,
1989 PULONG ResultSize,
1991 ULONG UnicodeSize
1992);
1993
1995ULONG
1996NTAPI
1998
1999#ifdef NTOS_MODE_USER
2000
2001#define RtlUnicodeStringToOemSize(STRING) ( \
2002 NLS_MB_OEM_CODE_PAGE_TAG ? \
2003 RtlxUnicodeStringToOemSize(STRING) : \
2004 ((STRING)->Length + sizeof(UNICODE_NULL)) / sizeof(WCHAR) \
2005)
2006
2007#define RtlUnicodeStringToCountedOemSize(STRING) ( \
2008 (ULONG)(RtlUnicodeStringToOemSize(STRING) - sizeof(ANSI_NULL)) \
2009)
2010
2011#endif
2012
2015NTAPI
2018 ULONG OemSize,
2019 PULONG ResultSize,
2021 ULONG UnicodeSize
2022);
2023
2024//
2025// Unicode->MultiByte String Functions
2026//
2029NTAPI
2031 PCHAR MbString,
2032 ULONG MbSize,
2033 PULONG ResultSize,
2035 ULONG UnicodeSize
2036);
2037
2040NTAPI
2042 PCHAR MbString,
2043 ULONG MbSize,
2044 PULONG ResultSize,
2046 ULONG UnicodeSize
2047);
2048
2051NTAPI
2053 PULONG MbSize,
2055 ULONG UnicodeSize
2056);
2057
2059ULONG
2060NTAPI
2062
2063//
2064// OEM to Unicode Functions
2065//
2068NTAPI
2073);
2074
2078NTAPI
2085);
2086
2087#ifdef NTOS_MODE_USER
2088
2089#define RtlOemStringToUnicodeSize(STRING) ( \
2090 NLS_MB_OEM_CODE_PAGE_TAG ? \
2091 RtlxOemStringToUnicodeSize(STRING) : \
2092 ((STRING)->Length + sizeof(ANSI_NULL)) * sizeof(WCHAR) \
2093)
2094
2095#define RtlOemStringToCountedUnicodeSize(STRING) ( \
2096 (ULONG)(RtlOemStringToUnicodeSize(STRING) - sizeof(UNICODE_NULL)) \
2097)
2098
2099#endif
2100
2101//
2102// Ansi->Unicode String Functions
2103//
2106WCHAR
2107NTAPI
2109 _Inout_ PUCHAR *SourceCharacter);
2110
2113NTAPI
2118);
2119
2121ULONG
2122NTAPI
2125);
2126
2127#ifdef NTOS_MODE_USER
2128
2129#define RtlAnsiStringToUnicodeSize(STRING) ( \
2130 NLS_MB_CODE_PAGE_TAG ? \
2131 RtlxAnsiStringToUnicodeSize(STRING) : \
2132 ((STRING)->Length + sizeof(ANSI_NULL)) * sizeof(WCHAR) \
2133)
2134
2135#endif
2136
2138BOOLEAN
2139NTAPI
2143);
2144
2145//
2146// Unicode String Functions
2147//
2150NTAPI
2154);
2155
2158NTAPI
2162);
2163
2165LONG
2166NTAPI
2168 PCUNICODE_STRING String1,
2171);
2172
2175LONG
2176NTAPI
2183);
2184
2186VOID
2187NTAPI
2191);
2192
2194BOOLEAN
2195NTAPI
2199);
2200
2201#ifdef NTOS_MODE_USER
2202
2205NTAPI
2207 _Inout_ PUNICODE_STRING UniDest,
2208 _In_ PCUNICODE_STRING UniSource,
2210);
2211
2214NTAPI
2219);
2220
2223NTAPI
2226 _In_ PCUNICODE_STRING SearchString,
2229);
2230
2231//
2232// Memory Functions
2233//
2234#if defined(_M_AMD64)
2235
2237VOID
2241 _In_ ULONG Pattern)
2242{
2244 if ((Length /= 4) != 0) {
2245 if (((ULONG64)Address & 4) != 0) {
2246 *Address = Pattern;
2247 if ((Length -= 1) == 0) {
2248 return;
2249 }
2250 Address += 1;
2251 }
2252 __stosq((PULONG64)(Address), Pattern | ((ULONG64)Pattern << 32), Length / 2);
2253 if ((Length & 1) != 0) Address[Length - 1] = Pattern;
2254 }
2255 return;
2256}
2257
2258#define RtlFillMemoryUlonglong(Destination, Length, Pattern) \
2259 __stosq((PULONG64)(Destination), Pattern, (Length) / 8)
2260
2261#else
2262
2264VOID
2265NTAPI
2269 _In_ ULONG Pattern
2270);
2271
2273VOID
2274NTAPI
2278 _In_ ULONGLONG Pattern
2279);
2280
2281#endif
2282
2285NTAPI
2290);
2291
2293SIZE_T
2294NTAPI
2298 _In_ ULONG Pattern
2299);
2300
2301#ifndef RtlEqualMemory
2302#define RtlEqualMemory(Destination, Source, Length) \
2303 (!memcmp(Destination, Source, Length))
2304#endif
2305
2306#define RtlCopyBytes RtlCopyMemory
2307#define RtlFillBytes RtlFillMemory
2308#define RtlZeroBytes RtlZeroMemory
2309
2310#endif
2311
2313BOOLEAN
2314NTAPI
2316 PCUNICODE_STRING String1,
2319);
2320
2323VOID
2324NTAPI
2328);
2329
2331VOID
2332NTAPI
2335);
2336
2339NTAPI
2345);
2346
2356VOID
2357NTAPI
2361);
2362
2372VOID
2373NTAPI
2377);
2378
2382NTAPI
2386);
2387
2389BOOLEAN
2390NTAPI
2393 _In_ INT Size,
2395);
2396
2400BOOLEAN
2401NTAPI
2403 _In_ const STRING *String1,
2406);
2407
2411BOOLEAN
2412NTAPI
2414 _In_ PCUNICODE_STRING String1,
2417);
2418
2421VOID
2422NTAPI
2426);
2427
2431LONG
2432NTAPI
2434 _In_ const STRING *String1,
2437);
2438
2440VOID
2441NTAPI
2445);
2446
2450BOOLEAN
2451NTAPI
2453 _In_ const STRING *String1,
2456);
2457
2461NTAPI
2465);
2466
2471NTAPI
2478);
2479
2483NTAPI
2488);
2489
2492NTAPI
2496);
2497
2498#define RTL_SKIP_BUFFER_COPY 0x00000001
2499
2502NTAPI
2507);
2508
2509#ifdef NTOS_MODE_USER
2510
2512VOID
2513RtlInitBuffer(
2517)
2518{
2519 Buffer->Buffer = Buffer->StaticBuffer = Data;
2520 Buffer->Size = Buffer->StaticSize = DataSize;
2521 Buffer->ReservedForAllocatedSize = 0;
2522 Buffer->ReservedForIMalloc = NULL;
2523}
2524
2527RtlEnsureBufferSize(
2531)
2532{
2533 if (Buffer && RequiredSize <= Buffer->Size)
2534 return STATUS_SUCCESS;
2536}
2537
2539VOID
2540RtlFreeBuffer(
2542)
2543{
2544 if (Buffer->Buffer != Buffer->StaticBuffer && Buffer->Buffer)
2545 RtlFreeHeap(RtlGetProcessHeap(), 0, Buffer->Buffer);
2546 Buffer->Buffer = Buffer->StaticBuffer;
2547 Buffer->Size = Buffer->StaticSize;
2548}
2549
2551VOID
2552NTAPI
2556);
2557
2559VOID
2560NTAPI
2562 _In_ UCHAR Hash,
2564);
2565
2566#endif /* NTOS_MODE_USER */
2567
2568//
2569// Ansi String Functions
2570//
2573VOID
2574NTAPI
2576 _Inout_ _At_(AnsiString->Buffer, __drv_freesMem(Mem))
2578);
2579
2582VOID
2583NTAPI
2587);
2588
2592NTAPI
2596);
2597
2598//
2599// OEM String Functions
2600//
2603VOID
2604NTAPI
2606 _Inout_ _At_(OemString->Buffer, __drv_freesMem(Mem))
2608);
2609
2610//
2611// MultiByte->Unicode String Functions
2612//
2616NTAPI
2623);
2624
2628NTAPI
2633);
2634
2635//
2636// Atom Functions
2637//
2640NTAPI
2642 _In_ PRTL_ATOM_TABLE AtomTable,
2643 _In_ PWSTR AtomName,
2645);
2646
2649NTAPI
2652 _Inout_ PRTL_ATOM_TABLE *AtomTable
2653);
2654
2657NTAPI
2659 _In_ PRTL_ATOM_TABLE AtomTable,
2661);
2662
2665NTAPI
2667
2670NTAPI
2672 _In_ PRTL_ATOM_TABLE AtomTable,
2674 _Out_opt_ PULONG RefCount,
2676 _Out_opt_z_bytecap_(*NameLength) PWSTR AtomName,
2677 _Inout_opt_ PULONG NameLength
2678);
2679
2682NTAPI
2684 _In_ PRTL_ATOM_TABLE AtomTable,
2686);
2687
2690NTAPI
2692 _In_ PRTL_ATOM_TABLE AtomTable,
2693 _In_ PWSTR AtomName,
2695);
2696
2697//
2698// Process Management Functions
2699//
2701PPEB
2702NTAPI
2704 VOID
2705);
2706
2708VOID
2709NTAPI
2711
2714NTAPI
2716 _Out_ PRTL_USER_PROCESS_PARAMETERS *ProcessParameters,
2717 _In_ PUNICODE_STRING ImagePathName,
2720 _In_opt_ PUNICODE_STRING CommandLine,
2722 _In_opt_ PUNICODE_STRING WindowTitle,
2723 _In_opt_ PUNICODE_STRING DesktopInfo,
2724 _In_opt_ PUNICODE_STRING ShellInfo,
2725 _In_opt_ PUNICODE_STRING RuntimeInfo
2726);
2727
2730NTAPI
2732 _In_ PUNICODE_STRING ImageFileName,
2734 _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters,
2735 _In_opt_ PSECURITY_DESCRIPTOR ProcessSecutityDescriptor,
2736 _In_opt_ PSECURITY_DESCRIPTOR ThreadSecurityDescriptor,
2737 _In_opt_ HANDLE ParentProcess,
2739 _In_opt_ HANDLE DebugPort,
2740 _In_opt_ HANDLE ExceptionPort,
2742);
2743
2744#if (NTDDI_VERSION >= NTDDI_WIN7)
2747NTAPI
2749 _In_ PVOID ThreadContext,
2750 _Out_ HANDLE *OutThreadHandle,
2756 _Reserved_ PVOID Reserved6,
2758 _Reserved_ PVOID Reserved8
2759);
2760#else
2763NTAPI
2767 _In_ BOOLEAN CreateSuspended,
2768 _In_ ULONG StackZeroBits,
2769 _In_ SIZE_T StackReserve,
2770 _In_ SIZE_T StackCommit,
2771 _In_ PTHREAD_START_ROUTINE StartAddress,
2773 _Out_opt_ PHANDLE ThreadHandle,
2775);
2776#endif
2777
2780NTAPI
2782 _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters);
2783
2786NTAPI
2788 _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters);
2789
2791VOID
2792NTAPI
2795
2797VOID
2798NTAPI
2801 _Out_ PCONTEXT ThreadContext,
2802 _In_opt_ PVOID ThreadStartParam,
2803 _In_ PTHREAD_START_ROUTINE ThreadStartAddress,
2804 _In_ PINITIAL_TEB InitialTeb
2805);
2806
2807#ifdef _M_AMD64
2808typedef struct _WOW64_CONTEXT *PWOW64_CONTEXT;
2809
2812NTAPI
2813RtlWow64GetThreadContext(
2814 _In_ HANDLE ThreadHandle,
2815 _Inout_ PWOW64_CONTEXT ThreadContext
2816);
2817
2818
2821NTAPI
2822RtlWow64SetThreadContext(
2823 _In_ HANDLE ThreadHandle,
2824 _In_ PWOW64_CONTEXT ThreadContext
2825);
2826#endif
2827
2829BOOLEAN
2830NTAPI
2832
2835NTAPI
2837 _In_ PRTL_USER_PROCESS_PARAMETERS ProcessParameters);
2838
2840VOID
2841NTAPI
2843
2846NTAPI
2850 _In_ PVOID CallSite,
2851 _In_ ULONG ArgumentCount,
2852 _In_ PULONG Arguments,
2853 _In_ BOOLEAN PassContext,
2854 _In_ BOOLEAN AlreadySuspended
2855);
2856
2859__cdecl
2861 _In_ BOOLEAN NewValue,
2862 _Out_opt_ PBOOLEAN OldValue,
2863 _In_ BOOLEAN NeedBreaks
2864);
2865
2868__cdecl
2870 _In_ BOOLEAN NewValue,
2871 _Out_opt_ PBOOLEAN OldValue,
2872 _In_ BOOLEAN NeedBreaks
2873);
2874
2876ULONG
2877NTAPI
2879 VOID
2880);
2881
2882
2883//
2884// Thread Pool Functions
2885//
2886//
2888NTAPI
2890 _In_ PRTL_START_POOL_THREAD StartPoolThread,
2891 _In_ PRTL_EXIT_POOL_THREAD ExitPoolThread
2892);
2893
2896NTAPI
2898 _In_ HANDLE hWaitHandle,
2899 _In_opt_ HANDLE hCompletionEvent
2900);
2901
2904NTAPI
2906 _In_ HANDLE hWaitHandle
2907);
2908
2911NTAPI
2916);
2917
2920NTAPI
2925);
2926
2929NTAPI
2931 _In_ PHANDLE phNewWaitObject,
2932 _In_ HANDLE hObject,
2934 _In_ PVOID pvContext,
2935 _In_ ULONG ulMilliseconds,
2936 _In_ ULONG ulFlags
2937);
2938
2939//
2940// Environment/Path Functions
2941//
2944NTAPI
2946 _In_ BOOLEAN Inherit,
2948);
2949
2952NTAPI
2954 _In_ PUNICODE_STRING DllName,
2955 _Inout_ PUNICODE_STRING RealName,
2956 _Inout_ PUNICODE_STRING LocalName
2957);
2958
2960VOID
2961NTAPI
2964);
2965
2967BOOLEAN
2968NTAPI
2971);
2972
2975NTAPI
2978);
2979
2981ULONG
2982NTAPI
2989 _Out_ PWSTR *PartName
2990);
2991
2994NTAPI
2997 _In_ PUNICODE_STRING PathString,
2998 _In_ PUNICODE_STRING FileNameString,
2999 _In_ PUNICODE_STRING ExtensionString,
3000 _In_ PUNICODE_STRING CallerBuffer,
3002 _Out_opt_ PUNICODE_STRING* FullNameOut,
3003 _Out_opt_ PSIZE_T FilePartSize,
3005);
3006
3008BOOLEAN
3009NTAPI
3011 _In_opt_z_ PCWSTR DosPathName,
3012 _Out_ PUNICODE_STRING NtPathName,
3013 _Out_opt_ PCWSTR *NtFileNamePart,
3014 _Out_opt_ PRTL_RELATIVE_NAME_U DirectoryInfo
3015);
3016
3017
3018#define RTL_UNCHANGED_UNK_PATH 1
3019#define RTL_CONVERTED_UNC_PATH 2
3020#define RTL_CONVERTED_NT_PATH 3
3021#define RTL_UNCHANGED_DOS_PATH 4
3022
3025NTAPI
3031);
3032
3033
3035BOOLEAN
3036NTAPI
3039 _Out_ PUNICODE_STRING NtName,
3040 _Out_ PCWSTR *PartName,
3041 _Out_ PRTL_RELATIVE_NAME_U RelativeName
3042);
3043
3047NTAPI
3053);
3054
3056ULONG
3057NTAPI
3061);
3062
3064ULONG
3065NTAPI
3068 _In_ ULONG Size,
3071);
3072
3073#if (NTDDI_VERSION >= NTDDI_WIN7)
3076NTAPI
3081 _Out_opt_ PWSTR *FilePart,
3082 _Out_opt_ RTL_PATH_TYPE *InputPathType
3083 );
3084#endif
3085
3087NTAPI
3093 _Out_opt_ PSIZE_T FilePartSize,
3097);
3098
3101NTAPI
3104 _In_ PCUNICODE_STRING PathString,
3106);
3107
3109ULONG
3110NTAPI
3112 VOID
3113);
3114
3116ULONG
3117NTAPI
3120);
3121
3123ULONG
3124NTAPI
3127);
3128
3132BOOLEAN
3133NTAPI
3138);
3139
3142NTAPI
3147);
3148
3149VOID
3150NTAPI
3152 _In_ PRTL_RELATIVE_NAME_U RelativeName
3153);
3154
3157NTAPI
3160);
3161
3164NTAPI
3169);
3170
3171//
3172// Critical Section/Resource Functions
3173//
3176NTAPI
3179);
3180
3183NTAPI
3186);
3187
3190NTAPI
3193);
3194
3197NTAPI
3200 _In_ ULONG SpinCount
3201);
3202
3204LOGICAL
3205NTAPI
3208);
3209
3211LOGICAL
3212NTAPI
3215);
3216
3219NTAPI
3222);
3223
3225LOGICAL
3226NTAPI
3229);
3230
3232VOID
3233NTAPI
3236);
3237
3240NTAPI
3243);
3244
3246BOOLEAN
3247NTAPI
3251);
3252
3254BOOLEAN
3255NTAPI
3259);
3260
3262VOID
3263NTAPI
3266);
3267
3269VOID
3270NTAPI
3273);
3274
3276VOID
3277NTAPI
3280);
3281
3283VOID
3284NTAPI
3287);
3288
3290VOID
3291NTAPI
3294);
3295
3297VOID
3298NTAPI
3301);
3302
3303//
3304// Compression Functions
3305//
3306NTSYSAPI //NT_RTL_COMPRESS_API
3308NTAPI
3310 _In_ USHORT CompressionFormatAndEngine,
3315 _In_ ULONG UncompressedChunkSize,
3316 _Out_ PULONG FinalCompressedSize,
3318);
3319
3321NTSYSAPI //NT_RTL_COMPRESS_API
3323NTAPI
3325 _In_ USHORT CompressionFormat,
3331);
3332
3335NTAPI
3337 _In_ USHORT CompressionFormatAndEngine,
3338 _Out_ PULONG CompressBufferWorkSpaceSize,
3339 _Out_ PULONG CompressFragmentWorkSpaceSize
3340);
3341
3342//
3343// Frame Functions
3344//
3346VOID
3347NTAPI
3350);
3351
3353VOID
3354NTAPI
3357);
3358
3361NTAPI
3363 VOID
3364);
3365
3366//
3367// Debug Info Functions
3368//
3371NTAPI
3373 _In_ ULONG Size,
3374 _In_ BOOLEAN EventPair
3375);
3376
3379NTAPI
3381
3384NTAPI
3387 _In_ ULONG DebugInfoClassMask,
3389);
3390
3391//
3392// Bitmap Functions
3393//
3394#ifdef NTOS_MODE_USER
3395
3397BOOLEAN
3398NTAPI
3400 _In_ PRTL_BITMAP BitMapHeader,
3403);
3404
3406BOOLEAN
3407NTAPI
3409 _In_ PRTL_BITMAP BitMapHeader,
3412);
3413
3415VOID
3416NTAPI
3418 _In_ PRTL_BITMAP BitMapHeader
3419);
3420
3422VOID
3423NTAPI
3425 _In_ PRTL_BITMAP BitMapHeader,
3426 _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber
3427);
3428
3430VOID
3431NTAPI
3433 _In_ PRTL_BITMAP BitMapHeader,
3434 _In_range_(0, BitMapHeader->SizeOfBitMap - NumberToClear) ULONG StartingIndex,
3435 _In_range_(0, BitMapHeader->SizeOfBitMap - StartingIndex) ULONG NumberToClear
3436);
3437
3439ULONG
3440NTAPI
3442 _In_ PRTL_BITMAP BitMapHeader,
3445);
3446
3448ULONG
3449NTAPI
3451 _In_ PRTL_BITMAP BitMapHeader,
3454);
3455
3457ULONG
3458NTAPI
3460 _In_ PRTL_BITMAP BitMapHeader,
3462);
3463
3465ULONG
3466NTAPI
3468 _In_ PRTL_BITMAP BitMapHeader,
3469 _Out_writes_to_(SizeOfRunArray, return) PRTL_BITMAP_RUN RunArray,
3470 _In_range_(>, 0) ULONG SizeOfRunArray,
3471 _In_ BOOLEAN LocateLongestRuns
3472);
3473
3475ULONG
3476NTAPI
3478 _In_ PRTL_BITMAP BitMapHeader,
3479 _In_ ULONG FromIndex,
3480 _Out_ PULONG StartingRunIndex
3481);
3482
3484CCHAR
3485NTAPI
3488);
3489
3491ULONG
3492NTAPI
3494 _In_ PRTL_BITMAP BitMapHeader,
3496);
3497
3499CCHAR
3500NTAPI
3503);
3504
3506ULONG
3507NTAPI
3509 _In_ PRTL_BITMAP BitMapHeader,
3510 _In_ ULONG FromIndex,
3511 _Out_ PULONG StartingRunIndex
3512);
3513
3515ULONG
3516NTAPI
3518 _In_ PRTL_BITMAP BitMapHeader,
3519 _In_ ULONG FromIndex,
3520 _Out_ PULONG StartingRunIndex
3521);
3522
3524ULONG
3525NTAPI
3527 _In_ PRTL_BITMAP BitMapHeader,
3530);
3531
3533ULONG
3534NTAPI
3536 _In_ PRTL_BITMAP BitMapHeader,
3539);
3540
3541#ifdef __REACTOS__ // ReactOS improvement
3542_At_(BitMapHeader->SizeOfBitMap, _Post_equal_to_(SizeOfBitMap))
3543_At_(BitMapHeader->Buffer, _Post_equal_to_(BitMapBuffer))
3544#endif
3546VOID
3547NTAPI
3549 _Out_ PRTL_BITMAP BitMapHeader,
3550 _In_opt_ __drv_aliasesMem PULONG BitMapBuffer,
3551 _In_opt_ ULONG SizeOfBitMap
3552);
3553
3555ULONG
3556NTAPI
3558 _In_ PRTL_BITMAP BitMapHeader
3559);
3560
3562ULONG
3563NTAPI
3565 _In_ PRTL_BITMAP BitMapHeader
3566);
3567
3569VOID
3570NTAPI
3571RtlSetBit(
3572 _In_ PRTL_BITMAP BitMapHeader,
3573 _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber
3574);
3575
3577VOID
3578NTAPI
3580 _In_ PRTL_BITMAP BitMapHeader,
3581 _In_range_(0, BitMapHeader->SizeOfBitMap - NumberToSet) ULONG StartingIndex,
3582 _In_range_(0, BitMapHeader->SizeOfBitMap - StartingIndex) ULONG NumberToSet
3583);
3584
3586VOID
3587NTAPI
3589 _In_ PRTL_BITMAP BitMapHeader
3590);
3591
3594BOOLEAN
3595NTAPI
3597 _In_ PRTL_BITMAP BitMapHeader,
3598 _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitNumber
3599);
3600
3601#if defined(_M_AMD64)
3604BOOLEAN
3606 _In_ PRTL_BITMAP BitMapHeader,
3607 _In_range_(<, BitMapHeader->SizeOfBitMap) ULONG BitPosition)
3608{
3609 return BitTest64((LONG64 CONST*)BitMapHeader->Buffer, (LONG64)BitPosition);
3610}
3611#else
3612#define RtlCheckBit(BMH,BP) (((((PLONG)(BMH)->Buffer)[(BP)/32]) >> ((BP)%32)) & 0x1)
3613#endif /* defined(_M_AMD64) */
3614
3615#endif // NTOS_MODE_USER
3616
3617
3618//
3619// Timer Functions
3620//
3623NTAPI
3625 _In_ HANDLE TimerQueue,
3626 _In_ PHANDLE phNewTimer,
3632);
3633
3636NTAPI
3637RtlCreateTimerQueue(PHANDLE TimerQueue);
3638
3641NTAPI
3643 _In_ HANDLE TimerQueue,
3645 _In_ HANDLE CompletionEvent
3646);
3647
3650NTAPI
3652 _In_ HANDLE TimerQueue,
3656);
3657
3660NTAPI
3662 _In_ HANDLE TimerQueue,
3663 _In_opt_ HANDLE CompletionEvent
3664);
3665
3668NTAPI
3669RtlDeleteTimerQueue(HANDLE TimerQueue);
3670
3671//
3672// SList functions
3673//
3677 _Inout_ PSLIST_HEADER ListHead,
3681);
3682
3683//
3684// Range List functions
3685//
3687VOID
3688NTAPI
3690 _Out_ PRTL_RANGE_LIST RangeList
3691);
3692
3694VOID
3695NTAPI
3697 _In_ PRTL_RANGE_LIST RangeList
3698);
3699
3702NTAPI
3704 _Out_ PRTL_RANGE_LIST CopyRangeList,
3705 _In_ PRTL_RANGE_LIST RangeList
3706);
3707
3710NTAPI
3712 _Out_ PRTL_RANGE_LIST MergedRangeList,
3713 _In_ PRTL_RANGE_LIST RangeList1,
3714 _In_ PRTL_RANGE_LIST RangeList2,
3716);
3717
3720NTAPI
3722 _Out_ PRTL_RANGE_LIST InvertedRangeList,
3723 _In_ PRTL_RANGE_LIST RangeList
3724);
3725
3728NTAPI
3730 _Inout_ PRTL_RANGE_LIST RangeList,
3732 _In_ ULONGLONG End,
3737);
3738
3741NTAPI
3743 _Inout_ PRTL_RANGE_LIST RangeList,
3745 _In_ ULONGLONG End,
3747);
3748
3751NTAPI
3753 _Inout_ PRTL_RANGE_LIST RangeList,
3755);
3756
3759NTAPI
3761 _In_ PRTL_RANGE_LIST RangeList,
3762 _In_ ULONGLONG Minimum,
3763 _In_ ULONGLONG Maximum,
3767 _In_ UCHAR AttributeAvailableMask,
3771);
3772
3775NTAPI
3777 _In_ PRTL_RANGE_LIST RangeList,
3779 _In_ ULONGLONG End,
3781 _In_ UCHAR AttributeAvailableMask,
3784 _Out_ PBOOLEAN Available
3785);
3786
3789NTAPI
3791 _In_ PRTL_RANGE_LIST RangeList,
3793 _Outptr_ PRTL_RANGE *Range
3794);
3795
3798NTAPI
3801 _Outptr_ PRTL_RANGE *Range,
3802 _In_ BOOLEAN MoveForwards
3803);
3804
3805//
3806// Debug Functions
3807//
3808ULONG
3809__cdecl
3812 ...
3813);
3814
3816ULONG
3817__cdecl
3822 ...
3823);
3824
3826ULONG
3827NTAPI
3829 _In_z_ PCCH Prompt,
3832);
3833
3834#undef DbgBreakPoint
3835VOID
3836NTAPI
3838 VOID
3839);
3840
3841VOID
3842NTAPI
3845 _In_ PVOID Base,
3847);
3848
3849VOID
3850NTAPI
3853 _In_ PVOID Base,
3855);
3856
3857VOID
3858NTAPI
3860 _In_ PCCH Name,
3862);
3863
3864//
3865// Handle Table Functions
3866//
3869NTAPI
3873);
3874
3876VOID
3877NTAPI
3880
3882BOOLEAN
3883NTAPI
3887);
3888
3890VOID
3891NTAPI
3894 _In_ ULONG HandleSize,
3896);
3897
3899BOOLEAN
3900NTAPI
3904);
3905
3906_Success_(return!=FALSE)
3908BOOLEAN
3909NTAPI
3914);
3915
3916//
3917// PE Functions
3918//
3921NTAPI
3924 _In_ ULONG Type,
3925 _In_ ULONG Language,
3926 _In_ ULONG MessageId,
3927 _Out_ PMESSAGE_RESOURCE_ENTRY *MessageResourceEntry
3928);
3929
3931ULONG
3932NTAPI
3934
3935_Success_(return!=NULL)
3937PVOID
3938NTAPI
3944);
3945
3947PVOID
3948NTAPI
3950 _In_ PIMAGE_NT_HEADERS NtHeader,
3952 _In_ ULONG Rva,
3953 _Inout_opt_ PIMAGE_SECTION_HEADER *SectionHeader
3954);
3955
3958NTAPI
3961
3964NTAPI
3969 _Out_ PIMAGE_NT_HEADERS *NtHeader
3970);
3971
3974NTAPI
3976 _In_ PIMAGE_NT_HEADERS NtHeader,
3978 _In_ ULONG Rva
3979);
3980
3981ULONG
3982NTAPI
3985 _In_ LONGLONG AdditionalBias,
3986 _In_opt_ PCSTR LoaderName,
3988 _In_ ULONG Conflict,
3990);
3991
3992//
3993// Activation Context Functions
3994//
3995#ifdef NTOS_MODE_USER
3998NTAPI
4001 _In_ PTEB Teb,
4004);
4005
4008NTAPI
4013);
4014
4016VOID
4017NTAPI
4020);
4021
4025RtlActivateActivationContextUnsafeFast(
4026 _In_ PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED Frame,
4028);
4029
4032NTAPI
4033RtlAllocateActivationContextStack(
4035);
4036
4039NTAPI
4042 _In_ PACTIVATION_CONTEXT_DATA ActivationContextData,
4043 _In_ ULONG ExtraBytes,
4044 _In_ PVOID NotificationRoutine,
4047);
4048
4051NTAPI
4054);
4055
4057VOID
4058NTAPI
4061);
4062
4065NTAPI
4068 _In_ ULONG_PTR ulCookie
4069);
4070
4072VOID
4073NTAPI
4076);
4077
4079VOID
4080NTAPI
4082
4086RtlDeactivateActivationContextUnsafeFast(
4087 _In_ PRTL_CALLER_ALLOCATED_ACTIVATION_CONTEXT_STACK_FRAME_EXTENDED Frame
4088);
4089
4092NTAPI
4095 _In_ PUNICODE_STRING OriginalName,
4100 _In_ PULONG NewFlags,
4101 _In_ PSIZE_T FileNameSize,
4103);
4104
4107NTAPI
4110 _In_ const GUID *ExtensionGuid,
4111 _In_ ULONG SectionType,
4112 _In_ const UNICODE_STRING *SectionName,
4113 _Inout_ PVOID ReturnedData
4114);
4115
4118NTAPI
4122 _In_opt_ PVOID pvSubInstance,
4123 _In_ ULONG ulInfoClass,
4124 _Out_bytecap_(cbBuffer) PVOID pvBuffer,
4125 _In_opt_ SIZE_T cbBuffer,
4126 _Out_opt_ SIZE_T *pcbWrittenOrRequired
4127);
4128
4131NTAPI
4132RtlQueryInformationActiveActivationContext(
4133 _In_ ULONG ulInfoClass,
4134 _Out_bytecap_(cbBuffer) PVOID pvBuffer,
4135 _In_opt_ SIZE_T cbBuffer,
4136 _Out_opt_ SIZE_T *pcbWrittenOrRequired
4137);
4138
4141NTAPI
4144);
4145
4146//
4147// WOW64 Functions
4148//
4151NTAPI
4153 _In_ BOOLEAN Wow64FsEnableRedirection
4154);
4155
4158NTAPI
4160 _In_ PVOID Wow64FsEnableRedirection,
4161 _Out_ PVOID *OldFsRedirectionLevel
4162);
4163
4164#endif
4165
4166//
4167// Registry Functions
4168//
4173NTAPI
4175 _In_ ULONG RelativeTo,
4177);
4178
4181NTAPI
4183 _In_ ULONG RelativeTo,
4185);
4186
4189NTAPI
4191 _Out_ _At_(KeyPath->Buffer, __drv_allocatesMem(Mem) _Post_bytecap_(KeyPath->MaximumLength) _Post_bytecount_(KeyPath->Length))
4192 PUNICODE_STRING KeyPath
4193);
4194
4197NTAPI
4201);
4202
4206NTAPI
4208 _In_ ULONG RelativeTo,
4210 _Inout_ _At_(*(*QueryTable).EntryContext, _Pre_unknown_)
4214);
4215
4219NTAPI
4221 _In_ ULONG RelativeTo,
4227);
4228
4229#ifdef NTOS_MODE_USER
4232NTAPI
4240);
4241
4244NTAPI
4250);
4251
4254NTAPI
4257);
4258
4261NTAPI
4267);
4268
4271NTAPI
4278);
4279
4282NTAPI
4285 _In_ ULONG Type,
4286 _In_ PVOID Data,
4288);
4289#endif
4290
4291//
4292// NLS Functions
4293//
4295VOID
4296NTAPI
4300);
4301
4303VOID
4304NTAPI
4306 _In_ PUSHORT AnsiTableBase,
4307 _In_ PUSHORT OemTableBase,
4308 _In_ PUSHORT CaseTableBase,
4309 _Out_ PNLSTABLEINFO NlsTable
4310);
4311
4314VOID
4315NTAPI
4317 _In_ PUSHORT TableBase,
4319);
4320
4322VOID
4323NTAPI
4325 _In_ PNLSTABLEINFO NlsTable);
4326
4327#if defined(NTOS_MODE_USER) && !defined(NO_RTL_INLINES)
4328
4329//
4330// Misc conversion functions
4331//
4332static __inline
4336 _In_ LONG SignedInteger
4337)
4338{
4340
4341 Result.QuadPart = SignedInteger;
4342 return Result;
4343}
4344
4345static __inline
4349 _In_ LONG Multiplicand,
4350 _In_ LONG Multiplier
4351)
4352{
4353 LARGE_INTEGER Product;
4354
4355 Product.QuadPart = (LONGLONG)Multiplicand * (ULONGLONG)Multiplier;
4356 return Product;
4357}
4358
4359static __inline
4360ULONG
4363 _In_ ULARGE_INTEGER Dividend,
4366)
4367{
4368 ULONG Quotient;
4369
4370 Quotient = (ULONG)(Dividend.QuadPart / Divisor);
4371 if (Remainder) {
4372 *Remainder = (ULONG)(Dividend.QuadPart % Divisor);
4373 }
4374
4375 return Quotient;
4376}
4377
4378static __inline
4382 _In_ ULONG Multiplicand,
4383 _In_ ULONG Multiplier
4384)
4385{
4386 LARGE_INTEGER Product;
4387
4388 Product.QuadPart = (ULONGLONG)Multiplicand * (ULONGLONG)Multiplier;
4389 return Product;
4390}
4391
4392#if defined(_AMD64_) || defined(_IA64_)
4393static __inline
4397 _In_ LARGE_INTEGER Dividend,
4400{
4402 ret.QuadPart = (ULONG64)Dividend.QuadPart / Divisor;
4403 if (Remainder)
4404 *Remainder = (ULONG)(Dividend.QuadPart % Divisor);
4405 return ret;
4406}
4407
4408#else
4411NTAPI
4413 _In_ LARGE_INTEGER Dividend,
4416);
4417
4418#endif /* defined(_AMD64_) || defined(_IA64_) */
4419
4420#endif
4421
4422
4424ULONG
4425NTAPI
4427 _In_ PULONG Seed
4428);
4429
4431ULONG
4432NTAPI
4434 _Inout_ PULONG Seed
4435);
4436
4438ULONG
4439NTAPI
4441 _In_ ULONG InitialCrc,
4442 _In_ const UCHAR *Buffer,
4444);
4445
4446//
4447// Network Functions
4448//
4450PSTR
4451NTAPI
4453 _In_ const struct in_addr *Addr,
4454 _Out_writes_(16) PCHAR S
4455);
4456
4458PWSTR
4459NTAPI
4461 _In_ const struct in_addr *Addr,
4463);
4464
4467NTAPI
4469 _In_ const struct in_addr *Address,
4471 _Out_writes_to_(*AddressStringLength, *AddressStringLength) PCHAR AddressString,
4472 _Inout_ PULONG AddressStringLength
4473);
4474
4476NTAPI
4478 _In_ const struct in_addr *Address,
4480 _Out_writes_to_(*AddressStringLength, *AddressStringLength) PWCHAR AddressString,
4481 _Inout_ PULONG AddressStringLength
4482);
4483
4486NTAPI
4489 _In_ BOOLEAN Strict,
4490 _Out_ PCSTR *Terminator,
4491 _Out_ struct in_addr *Addr
4492);
4493
4496NTAPI
4499 _In_ BOOLEAN Strict,
4500 _Out_ PCWSTR *Terminator,
4501 _Out_ struct in_addr *Addr
4502);
4503
4506NTAPI
4508 _In_ PCSTR AddressString,
4509 _In_ BOOLEAN Strict,
4510 _Out_ struct in_addr *Address,
4512);
4513
4516NTAPI
4518 _In_ PCWSTR AddressString,
4519 _In_ BOOLEAN Strict,
4520 _Out_ struct in_addr *Address,
4522);
4523
4525PSTR
4526NTAPI
4528 _In_ const struct in6_addr *Addr,
4529 _Out_writes_(46) PSTR S
4530);
4531
4533PWSTR
4534NTAPI
4536 _In_ const struct in6_addr *Addr,
4537 _Out_writes_(46) PWSTR S
4538);
4539
4542NTAPI
4544 _In_ const struct in6_addr *Address,
4545 _In_ ULONG ScopeId,
4547 _Out_writes_to_(*AddressStringLength, *AddressStringLength) PSTR AddressString,
4548 _Inout_ PULONG AddressStringLength
4549);
4550
4553NTAPI
4555 _In_ const struct in6_addr *Address,
4556 _In_ ULONG ScopeId,
4558 _Out_writes_to_(*AddressStringLength, *AddressStringLength) PWCHAR AddressString,
4559 _Inout_ PULONG AddressStringLength
4560);
4561
4564NTAPI
4567 _Out_ PCSTR *Terminator,
4568 _Out_ struct in6_addr *Addr
4569);
4570
4573NTAPI
4576 _Out_ PCWSTR *Terminator,
4577 _Out_ struct in6_addr *Addr
4578);
4579
4582NTAPI
4584 _In_ PCSTR AddressString,
4585 _Out_ struct in6_addr *Address,
4586 _Out_ PULONG ScopeId,
4588);
4589
4592NTAPI
4594 _In_ PCWSTR AddressString,
4595 _Out_ struct in6_addr *Address,
4596 _Out_ PULONG ScopeId,
4598);
4599
4600
4601//
4602// Time Functions
4603//
4605BOOLEAN
4606NTAPI
4608 _In_ PTIME_FIELDS CutoverTimeFields,
4609 _Out_ PLARGE_INTEGER SystemTime,
4610 _In_ PLARGE_INTEGER CurrentTime,
4611 _In_ BOOLEAN ThisYearsCutoverOnly);
4612
4615NTAPI
4617 _Out_ PRTL_TIME_ZONE_INFORMATION TimeZoneInformation);
4618
4620VOID
4621NTAPI
4623 _In_ ULONG SecondsSince1970,
4625);
4626
4629NTAPI
4631 _In_ PRTL_TIME_ZONE_INFORMATION TimeZoneInformation);
4632
4633_Success_(return != FALSE)
4635BOOLEAN
4636NTAPI
4640);
4641
4642_Success_(return != FALSE)
4644BOOLEAN
4645NTAPI
4649);
4650
4652VOID
4653NTAPI
4657);
4658
4661NTAPI
4663 _In_ PLARGE_INTEGER SystemTime,
4664 _Out_ PLARGE_INTEGER LocalTime
4665);
4666
4667//
4668// Version Functions
4669//
4674NTAPI
4679);
4680
4684NTAPI
4686 _Out_
4687 _At_(lpVersionInformation->dwOSVersionInfoSize, _Pre_ _Valid_)
4688 _When_(lpVersionInformation->dwOSVersionInfoSize == sizeof(RTL_OSVERSIONINFOEXW),
4691);
4692
4695BOOLEAN
4696NTAPI
4698
4699#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA)
4700//
4701// Synchronization functions
4702//
4704VOID
4705NTAPI
4707 _Out_ PRTL_CONDITION_VARIABLE ConditionVariable);
4708
4710VOID
4711NTAPI
4713 _Inout_ PRTL_CONDITION_VARIABLE ConditionVariable);
4714
4716VOID
4717NTAPI
4719 _Inout_ PRTL_CONDITION_VARIABLE ConditionVariable);
4720
4723NTAPI
4725 _Inout_ PRTL_CONDITION_VARIABLE ConditionVariable,
4727 _In_opt_ PLARGE_INTEGER TimeOut);
4728
4731NTAPI
4733 _Inout_ PRTL_CONDITION_VARIABLE ConditionVariable,
4734 _Inout_ PRTL_SRWLOCK SRWLock,
4735 _In_opt_ PLARGE_INTEGER TimeOut,
4736 _In_ ULONG Flags);
4737#endif
4738
4739//
4740// Synchronization functions
4741//
4743VOID
4744NTAPI
4746
4748VOID
4749NTAPI
4751
4753VOID
4754NTAPI
4756
4759NTAPI
4762 IN const PLARGE_INTEGER TimeOut OPTIONAL);
4763
4766NTAPI
4768 IN OUT PRTL_SRWLOCK SRWLock,
4769 IN PLARGE_INTEGER TimeOut OPTIONAL,
4770 IN ULONG Flags);
4771
4772VOID
4773NTAPI
4775
4776VOID
4777NTAPI
4779
4780VOID
4781NTAPI
4783
4784VOID
4785NTAPI
4787
4788VOID
4789NTAPI
4791
4792//
4793// Secure Memory Functions
4794//
4795#ifdef NTOS_MODE_USER
4798NTAPI
4800 _In_ PRTL_SECURE_MEMORY_CACHE_CALLBACK Callback);
4801
4803BOOLEAN
4804NTAPI
4806 _In_ PVOID MemoryCache,
4807 _In_opt_ SIZE_T MemoryLength
4808);
4809#endif
4810
4811//
4812// Boot Status Data Functions
4813//
4814#ifdef NTOS_MODE_USER
4817NTAPI
4819 VOID
4820);
4821
4824NTAPI
4827 _In_ BOOLEAN WriteMode,
4828 _In_ RTL_BSD_ITEM_TYPE DataClass,
4832);
4833
4836NTAPI
4839);
4840
4843NTAPI
4846);
4847#endif
4848
4849#ifdef NTOS_MODE_USER
4853NTAPI
4856 _Out_ GUID *Guid);
4857
4861NTAPI
4866
4869NTAPI
4873 _In_ ULONG ImportTableHashRevision
4874);
4875#endif
4876
4877//
4878// MemoryStream functions
4879//
4880#ifdef NTOS_MODE_USER
4881
4883VOID
4884NTAPI
4886 _Out_ PRTL_MEMORY_STREAM Stream
4887);
4888
4890VOID
4891NTAPI
4893 _Out_ PRTL_MEMORY_STREAM Stream
4894);
4895
4897VOID
4898NTAPI
4900 _In_ PRTL_MEMORY_STREAM Stream
4901);
4902
4904HRESULT
4905NTAPI
4907 _In_ struct IStream *This,
4908 _In_ REFIID RequestedIid,
4909 _Outptr_ PVOID *ResultObject
4910);
4911
4913ULONG
4914NTAPI
4916 _In_ struct IStream *This
4917);
4918
4920ULONG
4921NTAPI
4923 _In_ struct IStream *This
4924);
4925
4927HRESULT
4928NTAPI
4930 _In_ struct IStream *This,
4934);
4935
4937HRESULT
4938NTAPI
4940 _In_ struct IStream *This,
4944);
4945
4947HRESULT
4948NTAPI
4950 _In_ struct IStream *This,
4951 _In_ LARGE_INTEGER RelativeOffset,
4952 _In_ ULONG Origin,
4953 _Out_opt_ PULARGE_INTEGER ResultOffset
4954);
4955
4957HRESULT
4958NTAPI
4960 _In_ struct IStream *This,
4961 _In_ struct IStream *Target,
4965);
4966
4968HRESULT
4969NTAPI
4970RtlCopyOutOfProcessMemoryStreamTo(
4971 _In_ struct IStream *This,
4972 _In_ struct IStream *Target,
4976);
4977
4979HRESULT
4980NTAPI
4982 _In_ struct IStream *This,
4983 _Out_ struct tagSTATSTG *Stats,
4985);
4986
4987// Dummy functions
4989HRESULT
4990NTAPI
4992 _In_ struct IStream *This,
4996);
4997
4999HRESULT
5000NTAPI
5002 _In_ struct IStream *This,
5004);
5005
5007HRESULT
5008NTAPI
5010 _In_ struct IStream *This,
5011 _In_ ULONG CommitFlags
5012);
5013
5015HRESULT
5016NTAPI
5018 _In_ struct IStream *This
5019);
5020
5022HRESULT
5023NTAPI
5025 _In_ struct IStream *This,
5029);
5030
5032HRESULT
5033NTAPI
5035 _In_ struct IStream *This,
5039);
5040
5042HRESULT
5043NTAPI
5045 _In_ struct IStream *This,
5046 _Outptr_ struct IStream **ResultStream
5047);
5048
5051NTAPI
5053 _In_ SYSTEM_INFORMATION_CLASS SystemInformationClass,
5054 _Out_writes_bytes_to_opt_(SystemInformationLength, *ReturnLength) PVOID SystemInformation,
5055 _In_ ULONG SystemInformationLength,
5057);
5058
5059#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) || (DLL_EXPORT_VERSION >= _WIN32_WINNT_VISTA)
5060
5062VOID
5063NTAPI
5065 _Out_ PRTL_RUN_ONCE RunOnce);
5066
5070NTAPI
5072 _Inout_ PRTL_RUN_ONCE RunOnce,
5076
5080NTAPI
5082 _Inout_ PRTL_RUN_ONCE RunOnce,
5085
5088NTAPI
5090 _Inout_ PRTL_RUN_ONCE RunOnce,
5093
5094#endif
5095
5096#if (_WIN32_WINNT >= _WIN32_WINNT_VISTA) || (defined(__REACTOS__) && defined(_NTDLLBUILD_))
5097/* Put NTSYSAPI back when this will be really exported. Only statically linked for now */
5098// NTSYSAPI
5099VOID
5100NTAPI
5102
5103// NTSYSAPI
5104VOID
5105NTAPI
5107
5108// NTSYSAPI
5109VOID
5110NTAPI
5112
5113// NTSYSAPI
5114VOID
5115NTAPI
5117
5118// NTSYSAPI
5119VOID
5120NTAPI
5122
5125NTAPI
5127 _In_ LCID LcidValue,
5128 _In_ ULONG Base,
5129 _In_ ULONG Padding,
5130 _Out_writes_(Size) PWSTR pResultBuf,
5131 _In_ ULONG Size);
5132
5133_Success_(return != FALSE)
5135BOOLEAN
5136NTAPI
5137RtlCultureNameToLCID(
5139 _Out_ PLCID Lcid);
5140
5141_Success_(return != FALSE)
5143BOOLEAN
5144NTAPI
5145RtlLCIDToCultureName(
5146 _In_ LCID Lcid,
5148
5151NTAPI
5153 _In_ LCID Lcid,
5157
5160NTAPI
5164 _In_ ULONG Flags);
5165
5167BOOLEAN
5168NTAPI
5171 _In_ ULONG Flags);
5172
5173// Flags for RtlLocaleNameToLcid / RtlLcidToLocaleName / RtlIsValidLocaleName
5174#define RTL_LOCALE_ALLOW_NEUTRAL_NAMES 0x00000002 // Return locales like "en" or "de"
5175
5176#endif /* Win Vista or ReactOS Ntdll build */
5177
5178#if (_WIN32_WINNT >= _WIN32_WINNT_WIN7) || (defined(__REACTOS__) && defined(_NTDLLBUILD_))
5179
5180// NTSYSAPI
5181BOOLEAN
5182NTAPI
5184
5185// NTSYSAPI
5186BOOLEAN
5187NTAPI
5189
5190#endif /* Win7 or ReactOS Ntdll build */
5191
5192#endif // NTOS_MODE_USER
5193
5196NTAPI
5198 ULONG flags,
5199 const GUID *extguid,
5200 ULONG section_kind,
5201 const GUID *guid,
5202 void *ptr
5203);
5204
5205#ifdef __cplusplus
5206}
5207#endif
5208
5209#endif
static UCHAR NotificationContext
_In_ PVOID _In_ ULONG _Out_ PVOID _In_ ULONG _Inout_ PULONG ReturnLength
static _In_ LPCWSTR LocaleName
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 __inline
Definition: _wctype.cpp:15
#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
#define RtlUnwind
Definition: longjmp.c:9
@ 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:79
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:616
BOOLEAN NTAPI RtlFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN PVOID HeapBase)
Definition: heap.c:634
#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 RtlAreBitsSet
Definition: dbgbitmap.h:328
#define RtlFindClearBits
Definition: dbgbitmap.h:332
#define RtlClearBits
Definition: dbgbitmap.h:331
#define RtlAreBitsClear
Definition: dbgbitmap.h:327
#define RtlInitializeBitMap
Definition: dbgbitmap.h:326
#define RtlFindNextForwardRunClear
Definition: dbgbitmap.h:338
#define RtlClearAllBits
Definition: dbgbitmap.h:329
#define RtlFindLastBackwardRunClear
Definition: dbgbitmap.h:336
#define RtlClearBit
Definition: dbgbitmap.h:330
#define RtlFindClearBitsAndSet
Definition: dbgbitmap.h:333
#define RtlTestBit
Definition: dbgbitmap.h:347
#define RtlNumberOfSetBits
Definition: dbgbitmap.h:343
#define RtlFindNextForwardRunSet
Definition: dbgbitmap.h:339
#define RtlSetAllBits
Definition: dbgbitmap.h:346
#define RtlCheckBit
Definition: dbgbitmap.h:349
#define RtlFindLongestRunClear
Definition: dbgbitmap.h:337
#define RtlFindClearRuns
Definition: dbgbitmap.h:335
#define RtlFindFirstRunClear
Definition: dbgbitmap.h:334
#define RtlSetBit
Definition: dbgbitmap.h:344
#define RtlFindSetBitsAndClear
Definition: dbgbitmap.h:341
#define RtlNumberOfClearBits
Definition: dbgbitmap.h:342
#define RtlSetBits
Definition: dbgbitmap.h:345
#define RtlFindSetBits
Definition: dbgbitmap.h:340
#define BufferSize
Definition: mmc.h:75
LPWSTR Name
Definition: desk.c:124
#define NULL
Definition: types.h:112
#define FALSE
Definition: types.h:117
NTSYSAPI NTSTATUS NTAPI RtlWow64EnableFsRedirection(IN BOOLEAN Wow64FsEnableRedirection)
Definition: libsupp.c:1166
NTSYSAPI NTSTATUS NTAPI RtlDosApplyFileIsolationRedirection_Ustr(IN ULONG Flags, IN PUNICODE_STRING OriginalName, IN PUNICODE_STRING Extension, IN OUT PUNICODE_STRING StaticString, IN OUT PUNICODE_STRING DynamicString, IN OUT PUNICODE_STRING *NewName, IN PULONG NewFlags, IN PSIZE_T FileNameSize, IN PSIZE_T RequiredLength)
Definition: libsupp.c:820
NTSYSAPI NTSTATUS NTAPI RtlComputeImportTableHash(IN HANDLE FileHandle, OUT PCHAR Hash, IN ULONG ImportTableHashSize)
Definition: libsupp.c:1191
NTSYSAPI NTSTATUS NTAPI RtlWow64EnableFsRedirectionEx(IN PVOID Wow64FsEnableRedirection, OUT PVOID *OldFsRedirectionLevel)
Definition: libsupp.c:1178
BOOLEAN NTAPI RtlGetNtProductType(_Out_ PNT_PRODUCT_TYPE ProductType)
Definition: version.c:105
NTSTATUS NTAPI RtlGetVersion(IN OUT PRTL_OSVERSIONINFOW lpVersionInformation)
Definition: version.c:182
#define P(row, col)
static const ACEFLAG AceType[]
Definition: security.c:2583
#define RtlImageRvaToSection
Definition: compat.h:808
struct _WOW64_CONTEXT * PWOW64_CONTEXT
#define RtlComputeCrc32
Definition: compat.h:810
EXCEPTION_ROUTINE * PEXCEPTION_ROUTINE
Definition: compat.h:709
#define RtlImageDirectoryEntryToData
Definition: compat.h:809
#define RtlImageRvaToVa
Definition: compat.h:807
#define RtlImageNtHeader
Definition: compat.h:806
static CODEPAGE_ENTRY AnsiCodePage
Definition: nls.c:46
static CODEPAGE_ENTRY OemCodePage
Definition: nls.c:47
GUID guid
Definition: version.c:147
static int Hash(const char *)
Definition: reader.c:2237
enum _NT_PRODUCT_TYPE * PNT_PRODUCT_TYPE
static const WCHAR Message[]
Definition: register.c:74
@ AnsiString
Definition: dnslib.h:19
return ret
Definition: mutex.c:146
#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
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:1307
IN PLARGE_INTEGER IN PLARGE_INTEGER PEPROCESS ProcessId
Definition: fatprocs.h:2712
unsigned long DWORD
Definition: ntddk_ex.h:95
enum _SYSTEM_INFORMATION_CLASS SYSTEM_INFORMATION_CLASS
_Inout_opt_ PUNICODE_STRING Extension
Definition: fltkernel.h:1092
_Must_inspect_result_ _In_opt_ PFLT_INSTANCE _Out_ PHANDLE FileHandle
Definition: fltkernel.h:1231
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ SECURITY_INFORMATION _In_ ULONG _Out_opt_ PULONG LengthNeeded
Definition: fltkernel.h:1343
_In_opt_ PFILE_OBJECT _In_opt_ PETHREAD Thread
Definition: fltkernel.h:2653
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ SECURITY_INFORMATION SecurityInformation
Definition: fltkernel.h:1340
_Must_inspect_result_ _In_ USHORT NewSize
Definition: fltkernel.h:975
_In_ FILTER_INFORMATION_CLASS InformationClass
Definition: fltkernel.h:1713
std::wstring STRING
Definition: fontsub.cpp:33
_Must_inspect_result_ _In_ PLARGE_INTEGER _In_ PLARGE_INTEGER _In_ ULONG _In_ PFILE_OBJECT _In_ PVOID Process
Definition: fsrtlfuncs.h:223
_Must_inspect_result_ _In_ PFSRTL_PER_STREAM_CONTEXT Ptr
Definition: fsrtlfuncs.h:898
return pTarget Start()
Status
Definition: gdiplustypes.h:25
VOID NTAPI RtlInitializeGenericTable(IN PRTL_GENERIC_TABLE Table, IN PRTL_GENERIC_COMPARE_ROUTINE CompareRoutine, IN PRTL_GENERIC_ALLOCATE_ROUTINE AllocateRoutine, IN PRTL_GENERIC_FREE_ROUTINE FreeRoutine, IN PVOID TableContext)
Definition: generictable.c:100
ASMGENDATA Table[]
Definition: genincdata.c:61
GLbitfield flags
Definition: glext.h:7161
#define DbgPrint
Definition: hal.h:12
CPPORT Port[4]
Definition: headless.c:35
_Must_inspect_result_ _In_ USAGE _In_ USHORT _In_ USAGE Usage
Definition: hidpi.h:384
static XMS_HANDLE HandleTable[XMS_MAX_HANDLES]
Definition: himem.c:83
_In_ GUID _In_ PVOID ValueData
Definition: hubbusif.h:312
@ Unknown
Definition: i8042prt.h:114
VOID NTAPI RtlFreeOemString(POEM_STRING OemString)
BOOLEAN NTAPI RtlTimeToSecondsSince1970(PLARGE_INTEGER Time, PULONG ElapsedSeconds)
BOOLEAN NTAPI RtlIsNameLegalDOS8Dot3(_In_ PUNICODE_STRING Name, _Inout_opt_ POEM_STRING OemName, _Inout_opt_ PBOOLEAN NameContainsSpaces)
NTSYSAPI NTSTATUS WINAPI RtlActivateActivationContext(DWORD, HANDLE, ULONG_PTR *)
NTSYSAPI void WINAPI RtlReleasePebLock(void)
Definition: libsupp.c:84
NTSYSAPI WCHAR WINAPI RtlAnsiCharToUnicodeChar(LPSTR *)
NTSYSAPI BOOLEAN WINAPI RtlSetUserFlagsHeap(HANDLE, ULONG, void *, ULONG, ULONG)
NTSYSAPI ULONG WINAPI RtlNtStatusToDosErrorNoTeb(NTSTATUS)
NTSYSAPI void WINAPI RtlSetUnhandledExceptionFilter(PRTL_EXCEPTION_FILTER)
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:5874
NTSYSAPI ULONG WINAPI RtlLengthSecurityDescriptor(PSECURITY_DESCRIPTOR)
NTSYSAPI NTSTATUS WINAPI RtlZombifyActivationContext(HANDLE)
Definition: actctx.c:5396
NTSYSAPI void WINAPI RtlInitCodePageTable(USHORT *, CPTABLEINFO *)
NTSYSAPI NTSTATUS WINAPI RtlpNtMakeTemporaryKey(HANDLE)
NTSYSAPI CCHAR WINAPI RtlFindMostSignificantBit(ULONGLONG)
Definition: bitmap.c:211
NTSYSAPI NTSTATUS WINAPI RtlInitAnsiStringEx(PANSI_STRING, PCSZ)
NTSYSAPI NTSTATUS WINAPI RtlLocaleNameToLcid(const WCHAR *, LCID *, ULONG)
NTSYSAPI DWORD WINAPI RtlGetThreadErrorMode(void)
Definition: error.c:217
NTSYSAPI NTSTATUS WINAPI RtlpNtOpenKey(PHANDLE, ACCESS_MASK, OBJECT_ATTRIBUTES *)
NTSYSAPI NTSTATUS WINAPI RtlGUIDFromString(PUNICODE_STRING, GUID *)
NTSYSAPI BOOLEAN WINAPI RtlIsValidLocaleName(const WCHAR *, ULONG)
NTSYSAPI UINT WINAPI RtlEnlargedUnsignedDivide(ULONGLONG, UINT, UINT *)
NTSYSAPI PVOID WINAPI RtlReAllocateHeap(HANDLE, ULONG, PVOID, SIZE_T) __WINE_ALLOC_SIZE(4) __WINE_DEALLOC(RtlFreeHeap
NTSYSAPI PVOID WINAPI RtlEncodePointer(PVOID)
NTSYSAPI void WINAPI RtlAcquirePebLock(void)
Definition: libsupp.c:74
NTSYSAPI LONGLONG WINAPI RtlConvertLongToLargeInteger(LONG)
Definition: largeint.c:31
NTSYSAPI void WINAPI RtlSetLastWin32ErrorAndNtStatusFromNtStatus(NTSTATUS)
NTSYSAPI PVOID WINAPI RtlAddVectoredContinueHandler(ULONG, PVECTORED_EXCEPTION_HANDLER)
NTSYSAPI void WINAPI DbgBreakPoint(void)
NTSYSAPI NTSTATUS WINAPI RtlInitUnicodeStringEx(PUNICODE_STRING, PCWSTR)
NTSYSAPI void WINAPI RtlAddRefActivationContext(HANDLE)
Definition: actctx.c:5373
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 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:5515
NTSYSAPI NTSTATUS WINAPI RtlAddAccessAllowedAceEx(PACL, DWORD, DWORD, DWORD, PSID)
NTSYSAPI NTSTATUS WINAPI RtlSetThreadErrorMode(DWORD, LPDWORD)
NTSYSAPI NTSTATUS WINAPI RtlActivateActivationContextEx(ULONG, TEB *, HANDLE, ULONG_PTR *)
Definition: actctx.c:5417
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 NTSTATUS WINAPI RtlGetNativeSystemInformation(SYSTEM_INFORMATION_CLASS, void *, ULONG, ULONG *)
NTSYSAPI BOOLEAN WINAPI RtlTryAcquireSRWLockShared(RTL_SRWLOCK *)
NTSYSAPI void WINAPI RtlReleaseActivationContext(HANDLE)
Definition: actctx.c:5384
NTSYSAPI NTSTATUS WINAPI RtlStringFromGUID(REFGUID, PUNICODE_STRING)
NTSYSAPI NTSTATUS WINAPI RtlSetOwnerSecurityDescriptor(PSECURITY_DESCRIPTOR, PSID, BOOLEAN)
NTSYSAPI NTSTATUS WINAPI RtlLcidToLocaleName(LCID, UNICODE_STRING *, ULONG, BOOLEAN)
NTSYSAPI DWORD WINAPI RtlGetLongestNtPathLength(void)
Definition: path.c:1555
NTSYSAPI TEB_ACTIVE_FRAME *WINAPI RtlGetFrame(void)
Definition: debug.c:421
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:65
NTSYSAPI BOOLEAN WINAPI RtlValidRelativeSecurityDescriptor(PSECURITY_DESCRIPTOR, ULONG, SECURITY_INFORMATION)
NTSYSAPI NTSTATUS WINAPI RtlUpcaseUnicodeStringToCountedOemString(STRING *, const UNICODE_STRING *, BOOLEAN)
NTSYSAPI NTSTATUS WINAPI RtlCheckRegistryKey(ULONG, PWSTR)
NTSYSAPI NTSTATUS WINAPI RtlDecompressBuffer(USHORT, PUCHAR, ULONG, PUCHAR, ULONG, PULONG)
NTSYSAPI BOOLEAN WINAPI RtlUnlockHeap(HANDLE)
Definition: heap.c:3162
NTSYSAPI 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 BOOLEAN WINAPI RtlGetUserInfoHeap(HANDLE, ULONG, void *, void **, ULONG *)
NTSYSAPI NTSTATUS WINAPI RtlpNtSetValueKey(HANDLE, ULONG, const void *, ULONG)
NTSYSAPI NTSTATUS WINAPI RtlGetActiveActivationContext(HANDLE *)
Definition: actctx.c:5539
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:5572
NTSYSAPI NTSTATUS WINAPI RtlpNtCreateKey(PHANDLE, ACCESS_MASK, const OBJECT_ATTRIBUTES *, ULONG, const UNICODE_STRING *, ULONG, PULONG)
NTSYSAPI NTSTATUS WINAPI RtlpNtEnumerateSubKey(HANDLE, UNICODE_STRING *, ULONG)
NTSYSAPI BOOLEAN WINAPI RtlLockHeap(HANDLE)
NTSYSAPI void WINAPI RtlSetLastWin32Error(DWORD)
NTSYSAPI ULONG WINAPI RtlRemoveVectoredContinueHandler(PVOID)
NTSYSAPI ULONG WINAPI RtlGetNtGlobalFlags(void)
Definition: libsupp.c:95
NTSYSAPI BOOLEAN WINAPI RtlSetUserValueHeap(HANDLE, ULONG, void *, void *)
NTSYSAPI LONGLONG WINAPI RtlExtendedLargeIntegerDivide(LONGLONG, INT, INT *)
NTSYSAPI NTSTATUS WINAPI RtlAppendStringToString(STRING *, const STRING *)
NTSYSAPI void WINAPI RtlFreeActivationContextStack(ACTIVATION_CONTEXT_STACK *)
NTSYSAPI void WINAPI RtlCopyLuid(PLUID, const LUID *)
NTSYSAPI BOOLEAN WINAPI RtlCopySid(DWORD, PSID, PSID)
NTSYSAPI ULONG WINAPI RtlCompactHeap(HANDLE, ULONG)
Definition: heap.c:3103
HRESULT Next([in] ULONG celt, [out, size_is(celt), length_is(*pceltFetched)] STATPROPSETSTG *rgelt, [out] ULONG *pceltFetched)
__fastfail(FAST_FAIL_INVALID_ARG)
CRITICAL_SECTION CriticalSection
Definition: iprtprio.c:40
#define I(s)
#define DbgPrintEx(cmpid, lvl, fmt,...)
Definition: kdinit.c:24
_In_ PCWSTR _Out_ PVOID * ActCtx
Definition: ldrtypes.h:264
#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
#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
LPCWSTR LPCWSTR LPCWSTR DWORD dwFlags
Definition: env.c:37
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 _Post_bytecap_(size)
Definition: ms_sal.h:1376
#define _Out_cap_(size)
Definition: ms_sal.h:852
#define _In_count_(size)
Definition: ms_sal.h:810
#define _Deref_post_bytecap_(size)
Definition: ms_sal.h:1128
#define _Out_z_bytecap_(size)
Definition: ms_sal.h:885
#define __inner_callback
Definition: ms_sal.h:2636
#define _Out_opt_z_bytecap_(size)
Definition: ms_sal.h:886
#define _Ret_opt_z_
Definition: ms_sal.h:1220
#define _Post_bytecount_(size)
Definition: ms_sal.h:1380
#define _Out_bytecap_(size)
Definition: ms_sal.h:854
_In_ HANDLE hFile
Definition: mswsock.h:90
_In_ NDIS_STATUS _In_ ULONG _In_ USHORT _In_opt_ PVOID _In_ ULONG DataSize
Definition: ndis.h:4755
_Must_inspect_result_ _Out_ PNDIS_STATUS _In_ NDIS_HANDLE _In_ PNDIS_STRING SubKeyName
Definition: ndis.h:4725
_Must_inspect_result_ _Out_ PNDIS_STATUS _In_ NDIS_HANDLE _In_ ULONG _Out_ PNDIS_STRING _Out_ PNDIS_HANDLE KeyHandle
Definition: ndis.h:4715
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Reserved_ ULONG _In_opt_ PUNICODE_STRING _In_ ULONG _Out_opt_ PULONG Disposition
Definition: cmfuncs.h:56
_In_ HANDLE ProcessHandle
Definition: mmfuncs.h:403
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID * BaseAddress
Definition: mmfuncs.h:404
_In_ ACCESS_MASK _In_ ULONG _Out_ PHANDLE TokenHandle
Definition: psfuncs.h:726
NTSYSAPI NTSTATUS NTAPI RtlSetSecurityObject(_In_ SECURITY_INFORMATION SecurityInformation, _In_ PSECURITY_DESCRIPTOR ModificationDescriptor, _Out_ PSECURITY_DESCRIPTOR *ObjectsSecurityDescriptor, _In_ PGENERIC_MAPPING GenericMapping, _In_ HANDLE Token)
NTSYSAPI VOID NTAPI RtlInitializeConditionVariable(_Out_ PRTL_CONDITION_VARIABLE ConditionVariable)
NTSYSAPI NTSTATUS NTAPI RtlIsRangeAvailable(_In_ PRTL_RANGE_LIST RangeList, _In_ ULONGLONG Start, _In_ ULONGLONG End, _In_ ULONG Flags, _In_ UCHAR AttributeAvailableMask, _In_opt_ PVOID Context, _In_opt_ PRTL_CONFLICT_RANGE_CALLBACK Callback, _Out_ PBOOLEAN Available)
NTSYSAPI ULONG NTAPI RtlUniform(_In_ PULONG Seed)
NTSYSAPI NTSTATUS NTAPI RtlIpv6StringToAddressW(_In_ PCWSTR String, _Out_ PCWSTR *Terminator, _Out_ struct in6_addr *Addr)
Definition: network.c:1005
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:1625
_In_ PLUID SourceLuid
Definition: rtlfuncs.h:1349
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR AbsoluteSecurityDescriptor
Definition: rtlfuncs.h:1623
_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:1630
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:2404
NTSYSAPI PULONG NTAPI RtlSubAuthoritySid(_In_ PSID Sid, _In_ ULONG SubAuthority)
_Out_ _Inout_ POEM_STRING _In_ PCUNICODE_STRING SourceString
Definition: rtlfuncs.h:1957
NTSYSAPI NTSTATUS NTAPI RtlIpv6StringToAddressExW(_In_ PCWSTR AddressString, _Out_ struct in6_addr *Address, _Out_ PULONG ScopeId, _Out_ PUSHORT Port)
Definition: network.c:1021
_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:5946
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:1629
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:1177
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:4640
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:1631
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:2437
NTSYSAPI VOID NTAPI RtlDestroyHandleTable(_Inout_ PRTL_HANDLE_TABLE HandleTable)
NTSYSAPI NTSTATUS NTAPI RtlQueueWorkItem(_In_ WORKERCALLBACKFUNC Function, _In_opt_ PVOID Context, _In_ ULONG Flags)
NTSYSAPI VOID NTAPI RtlWakeAllConditionVariable(_Inout_ PRTL_CONDITION_VARIABLE ConditionVariable)
_In_ PSID_IDENTIFIER_AUTHORITY _In_ UCHAR SubAuthorityCount
Definition: rtlfuncs.h:1547
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:649
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:3941
_Out_ PCPTABLEINFO CodePageTable
Definition: rtlfuncs.h:4319
NTSYSAPI NTSTATUS NTAPI RtlCreateTimerQueue(PHANDLE TimerQueue)
Definition: threadpool.c:869
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:4677
_In_ PCWSTR _Inout_ _At_ QueryTable _Pre_unknown_ PRTL_QUERY_REGISTRY_TABLE QueryTable
Definition: rtlfuncs.h:4211
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:268
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:1628
_Inout_opt_ POEM_STRING _Out_opt_ PBOOLEAN NameContainsSpaces
Definition: rtlfuncs.h:3138
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:2082
NTSYSAPI NTSTATUS NTAPI RtlIpv4StringToAddressExA(_In_ PCSTR AddressString, _In_ BOOLEAN Strict, _Out_ struct in_addr *Address, _Out_ PUSHORT Port)
Definition: network.c:355
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:2406
_In_ ULONG _In_ ULONG AceFlags
Definition: rtlfuncs.h:1174
NTSYSAPI ULONG NTAPI RtlIsDosDeviceName_Ustr(_In_ PCUNICODE_STRING Name)
_In_opt_ PSID _In_opt_ BOOLEAN GroupDefaulted
Definition: rtlfuncs.h:1680
NTSYSAPI NTSTATUS NTAPI RtlSetIoCompletionCallback(_In_ HANDLE FileHandle, _In_ PIO_APC_ROUTINE Callback, _In_ ULONG Flags)
NTSYSAPI NTSTATUS NTAPI RtlSleepConditionVariableCS(_Inout_ PRTL_CONDITION_VARIABLE ConditionVariable, _Inout_ PRTL_CRITICAL_SECTION CriticalSection, _In_opt_ PLARGE_INTEGER TimeOut)
VOID NTAPI RtlReleaseRelativeName(_In_ PRTL_RELATIVE_NAME_U RelativeName)
NTSYSAPI VOID NTAPI RtlDestroyEnvironment(_In_ PWSTR Environment)
_In_ PSID _In_ BOOLEAN AllocateDestinationString
Definition: rtlfuncs.h:1381
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:3051
NTSYSAPI NTSTATUS NTAPI RtlSelfRelativeToAbsoluteSD2(_Inout_ PSECURITY_DESCRIPTOR SelfRelativeSD, _Out_ PULONG BufferSize)
_In_ PSID SourceSid
Definition: rtlfuncs.h:1391
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:4214
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:186
_In_ BOOLEAN DaclPresent
Definition: rtlfuncs.h:1667
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:510
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:2486
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)
VOID NTAPI RtlReleaseSRWLockExclusive(IN OUT PRTL_SRWLOCK SRWLock)
Definition: srw.c:710
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 LOGICAL NTAPI RtlTryEnterCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
NTSYSAPI NTSTATUS NTAPI RtlSystemTimeToLocalTime(_In_ PLARGE_INTEGER SystemTime, _Out_ PLARGE_INTEGER LocalTime)
NTSYSAPI NTSTATUS NTAPI RtlGetSaclSecurityDescriptor(_In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _Out_ PBOOLEAN SaclPresent, _Out_ PACL *Sacl, _Out_ PBOOLEAN SaclDefaulted)
NTSYSAPI VOID NTAPI RtlExitUserThread(_In_ NTSTATUS Status)
NTSYSAPI BOOLEAN NTAPI RtlValidSid(IN PSID Sid)
Definition: sid.c:21
NTSYSAPI NTSTATUS NTAPI RtlCopySecurityDescriptor(_In_ PSECURITY_DESCRIPTOR pSourceSecurityDescriptor, _Out_ PSECURITY_DESCRIPTOR *pDestinationSecurityDescriptor)
NTSYSAPI BOOLEAN NTAPI RtlIsValidHandle(_In_ PRTL_HANDLE_TABLE HandleTable, _In_ PRTL_HANDLE_TABLE_ENTRY Handle)
NTSYSAPI CHAR NTAPI RtlUpperChar(CHAR Source)
NTSYSAPI NTSTATUS NTAPI RtlMapSecurityErrorToNtStatus(_In_ ULONG SecurityError)
NTSYSAPI NTSTATUS NTAPI RtlpEnsureBufferSize(_In_ ULONG Flags, _Inout_ PRTL_BUFFER Buffer, _In_ SIZE_T RequiredSize)
NTSYSAPI VOID NTAPI RtlWakeConditionVariable(_Inout_ PRTL_CONDITION_VARIABLE ConditionVariable)
NTSYSAPI BOOLEAN NTAPI RtlEqualPrefixSid(PSID Sid1, PSID Sid2)
_In_ ULONG _In_ ULONGLONG ConditionMask
Definition: rtlfuncs.h:4679
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:1152
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:1704
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:1627
NTSYSAPI NTSTATUS NTAPI RtlpWaitForCriticalSection(_In_ PRTL_CRITICAL_SECTION CriticalSection)
_Out_ _Inout_ POEM_STRING DestinationString
Definition: rtlfuncs.h:1956
_In_ ULONG _In_ SECURITY_INFORMATION RequiredInformation
Definition: rtlfuncs.h:1748
NTSYSAPI VOID NTAPI RtlPopFrame(_In_ PTEB_ACTIVE_FRAME Frame)
NTSYSAPI PUCHAR NTAPI RtlSubAuthorityCountSid(_In_ PSID Sid)
_In_ ULONG _In_ ULONG CompressedBufferSize
Definition: rtlfuncs.h:3329
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:3331
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:757
NTSYSAPI NTSTATUS NTAPI RtlAppendUnicodeStringToString(PUNICODE_STRING Destination, PCUNICODE_STRING Source)
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:1633
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)
VOID NTAPI RtlInitializeSRWLock(OUT PRTL_SRWLOCK SRWLock)
Definition: srw.c:317
_In_ ULONG _In_ ACCESS_MASK _In_ PSID Sid
Definition: rtlfuncs.h:1165
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 LOGICAL NTAPI RtlIsCriticalSectionLockedByThread(_In_ PRTL_CRITICAL_SECTION CriticalSection)
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:4649
_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:1173
NTSYSAPI NTSTATUS NTAPI RtlIpv4StringToAddressA(_In_ PCSTR String, _In_ BOOLEAN Strict, _Out_ PCSTR *Terminator, _Out_ struct in_addr *Addr)
Definition: network.c:318
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)
VOID NTAPI RtlAcquireSRWLockExclusive(IN OUT PRTL_SRWLOCK SRWLock)
Definition: srw.c:591
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:1624
NTSYSAPI PSID_IDENTIFIER_AUTHORITY NTAPI RtlIdentifierAuthoritySid(PSID Sid)
_In_ ULONG SecurityDescriptorLength
Definition: rtlfuncs.h:1746
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:1162
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:2465
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:2623
NTSYSAPI NTSTATUS NTAPI RtlGetDaclSecurityDescriptor(_In_ PSECURITY_DESCRIPTOR SecurityDescriptor, _Out_ PBOOLEAN DaclPresent, _Out_ PACL *Dacl, _Out_ PBOOLEAN DaclDefaulted)
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:3136
_Out_writes_bytes_to_opt_ AbsoluteSecurityDescriptorSize PSECURITY_DESCRIPTOR _Inout_ PULONG _Out_writes_bytes_to_opt_ DaclSize PACL _Inout_ PULONG DaclSize
Definition: rtlfuncs.h:1626
_In_ ULONG UncompressedBufferSize
Definition: rtlfuncs.h:3327
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:1163
VOID NTAPI DbgUnLoadImageSymbols(_In_ PSTRING Name, _In_ PVOID Base, _In_ ULONG_PTR ProcessId)
_In_opt_ PSID Group
Definition: rtlfuncs.h:1678
NTSYSAPI BOOLEAN NTAPI RtlIsThreadWithinLoaderCallout(VOID)
Definition: libsupp.c:347
NTSYSAPI NTSTATUS NTAPI RtlUnicodeToOemN(PCHAR OemString, ULONG OemSize, PULONG ResultSize, PCWCH UnicodeString, ULONG UnicodeSize)
NTSYSAPI NTSTATUS NTAPI RtlSleepConditionVariableSRW(_Inout_ PRTL_CONDITION_VARIABLE ConditionVariable, _Inout_ PRTL_SRWLOCK SRWLock, _In_opt_ PLARGE_INTEGER TimeOut, _In_ ULONG Flags)
NTSYSAPI BOOLEAN NTAPI RtlEqualUnicodeString(PCUNICODE_STRING String1, PCUNICODE_STRING String2, BOOLEAN CaseInsensitive)
NTSYSAPI VOID NTAPI RtlCaptureContext(_Out_ PCONTEXT ContextRecord)
NTSYSAPI NTSTATUS NTAPI RtlDeleteTimerQueueEx(_In_ HANDLE TimerQueue, _In_opt_ HANDLE CompletionEvent)
NTSYSAPI BOOLEAN NTAPI RtlValidSecurityDescriptor(IN PSECURITY_DESCRIPTOR SecurityDescriptor)
Definition: sd.c:1054
*BytesInUnicodeString PWCH _In_ ULONG _Out_opt_ PULONG _In_ ULONG BytesInOemString
Definition: rtlfuncs.h:2085
NTSYSAPI NTSTATUS NTAPI RtlIpv6StringToAddressA(_In_ PCSTR String, _Out_ PCSTR *Terminator, _Out_ struct in6_addr *Addr)
Definition: network.c:725
#define RTL_STACK_WALKING_MODE_FRAMES_TO_SKIP_SHIFT
Definition: rtlfuncs.h:840
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)
VOID NTAPI RtlReleaseSRWLockShared(IN OUT PRTL_SRWLOCK SRWLock)
Definition: srw.c:526
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)
VOID NTAPI RtlAcquireSRWLockShared(IN OUT PRTL_SRWLOCK SRWLock)
Definition: srw.c:325
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:385
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:4177
NTSYSAPI LOGICAL NTAPI RtlIsCriticalSectionLocked(_In_ PRTL_CRITICAL_SECTION CriticalSection)
_In_ PSID_IDENTIFIER_AUTHORITY IdentifierAuthority
Definition: rtlfuncs.h:1545
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:1670
NTSYSAPI NTSTATUS NTAPI RtlIpv4StringToAddressExW(_In_ PCWSTR AddressString, _In_ BOOLEAN Strict, _Out_ struct in_addr *Address, _Out_ PUSHORT Port)
Definition: network.c:430
*BytesInUnicodeString PWCH _In_ ULONG MaxBytesInUnicodeString
Definition: rtlfuncs.h:2081
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:3914
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:574
@ HeapCompatibilityInformation
Definition: rtltypes.h:482
enum _RTL_BSD_ITEM_TYPE RTL_BSD_ITEM_TYPE
NTSTATUS(NTAPI * PRTL_EXIT_POOL_THREAD)(_In_ NTSTATUS ExitStatus)
Definition: rtltypes.h:581
ULONG(NTAPI * PTHREAD_START_ROUTINE)(PVOID Parameter)
Definition: rtltypes.h:560
VOID(NTAPI * WAITORTIMERCALLBACKFUNC)(PVOID pvContext, BOOLEAN fTimerOrWaitFired)
Definition: rtltypes.h:490
LONG(NTAPI * PVECTORED_EXCEPTION_HANDLER)(PEXCEPTION_POINTERS ExceptionPointers)
Definition: rtltypes.h:499
BOOLEAN(NTAPI * PRTL_CONFLICT_RANGE_CALLBACK)(PVOID Context, struct _RTL_RANGE *Range)
Definition: rtltypes.h:697
RTLP_UNHANDLED_EXCEPTION_FILTER * PRTLP_UNHANDLED_EXCEPTION_FILTER
Definition: rtltypes.h:546
enum _RTL_PATH_TYPE RTL_PATH_TYPE
enum _HEAP_INFORMATION_CLASS HEAP_INFORMATION_CLASS
VOID(NTAPI * WORKERCALLBACKFUNC)(_In_ PVOID Context)
Definition: rtltypes.h:507
_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
#define _Pre_unknown_
Definition: no_sal2.h:98
#define _In_reads_bytes_(s)
Definition: no_sal2.h:170
#define _In_reads_(s)
Definition: no_sal2.h:168
#define _Out_opt_
Definition: no_sal2.h:214
#define _Notnull_
Definition: no_sal2.h:54
#define _Inout_
Definition: no_sal2.h:162
#define _Ret_maybenull_
Definition: no_sal2.h:328
#define _Success_(c)
Definition: no_sal2.h:84
#define _At_(t, a)
Definition: no_sal2.h:40
#define _In_z_
Definition: no_sal2.h:164
#define _Check_return_
Definition: no_sal2.h:60
#define _In_opt_z_
Definition: no_sal2.h:218
#define _Outptr_
Definition: no_sal2.h:262
#define _Out_range_(l, h)
Definition: no_sal2.h:370
#define _On_failure_(a)
Definition: no_sal2.h:88
#define _Post_writable_byte_size_(s)
Definition: no_sal2.h:542
#define _Outptr_opt_result_maybenull_
Definition: no_sal2.h:268
#define _Maybenull_
Definition: no_sal2.h:56
#define _Valid_
Definition: no_sal2.h:80
#define _Out_writes_bytes_to_(s, c)
Definition: no_sal2.h:190
#define _Post_invalid_
Definition: no_sal2.h:524
#define _Inout_opt_
Definition: no_sal2.h:216
#define _Must_inspect_result_
Definition: no_sal2.h:62
#define _Out_writes_(s)
Definition: no_sal2.h:176
#define _Out_
Definition: no_sal2.h:160
#define _In_reads_opt_(s)
Definition: no_sal2.h:222
#define _In_
Definition: no_sal2.h:158
#define _Out_writes_bytes_all_(s)
Definition: no_sal2.h:194
#define _In_opt_
Definition: no_sal2.h:212
#define _Writable_bytes_(s)
Definition: no_sal2.h:70
#define _Out_writes_bytes_to_opt_(s, c)
Definition: no_sal2.h:240
#define _Const_
Definition: no_sal2.h:58
#define _Reserved_
Definition: no_sal2.h:504
#define _Post_equal_to_(e)
Definition: no_sal2.h:384
#define _Out_writes_to_(s, c)
Definition: no_sal2.h:188
#define _In_range_(l, h)
Definition: no_sal2.h:368
#define _Out_writes_bytes_(s)
Definition: no_sal2.h:178
#define _Maybe_raises_SEH_exception_
Definition: no_sal2.h:396
#define _Printf_format_string_
Definition: no_sal2.h:356
#define _Pre_
Definition: no_sal2.h:46
#define _In_reads_bytes_opt_(s)
Definition: no_sal2.h:224
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:880
* PLCID
Definition: ntbasedef.h:521
_IRQL_requires_same_ _In_ PVOID EstablisherFrame
Definition: ntbasedef.h:665
WCHAR * PWCH
Definition: ntbasedef.h:422
_IRQL_requires_same_ _In_ PVOID _Inout_ struct _CONTEXT * ContextRecord
Definition: ntbasedef.h:666
CHAR * PCH
Definition: ntbasedef.h:403
CONST WCHAR * PCWCH
Definition: ntbasedef.h:423
__GNU_EXTENSION typedef unsigned __int64 * PULONGLONG
Definition: ntbasedef.h:395
#define DECLSPEC_NORETURN
Definition: ntbasedef.h:179
CONST CHAR * PCCH
Definition: ntbasedef.h:404
_In_ ULONG _In_ ULONG Offset
Definition: ntddpcm.h:101
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
NTSYSAPI NTSTATUS NTAPI RtlSetGroupSecurityDescriptor(IN OUT PSECURITY_DESCRIPTOR SecurityDescriptor, IN PSID Group, IN BOOLEAN GroupDefaulted)
Definition: sd.c:410
NTSYSAPI NTSTATUS NTAPI RtlConvertSidToUnicodeString(OUT PUNICODE_STRING DestinationString, IN PVOID Sid, IN BOOLEAN AllocateDestinationString)
NTSYSAPI NTSTATUS NTAPI RtlAbsoluteToSelfRelativeSD(IN PSECURITY_DESCRIPTOR AbsoluteSecurityDescriptor, IN OUT PSECURITY_DESCRIPTOR SelfRelativeSecurityDescriptor, IN PULONG BufferLength)
Definition: sd.c:626
NTSYSAPI NTSTATUS NTAPI RtlInitializeSid(IN OUT PSID Sid, IN PSID_IDENTIFIER_AUTHORITY IdentifierAuthority, IN UCHAR SubAuthorityCount)
NTSTATUS NTAPI RtlFindCharInUnicodeString(_In_ ULONG Flags, _In_ PCUNICODE_STRING SearchString, _In_ PCUNICODE_STRING MatchString, _Out_ PUSHORT Position)
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:455
#define CONST
Definition: pedump.c:81
long LONG
Definition: pedump.c:60
unsigned short USHORT
Definition: pedump.c:61
static WCHAR Address[46]
Definition: ping.c:68
#define REFIID
Definition: guiddef.h:118
#define RtlUTF8ToUnicodeN
Definition: reactos.cpp:12
VOID NTAPI RtlAssert(IN PVOID FailedAssertion, IN PVOID FileName, IN ULONG LineNumber, IN PCHAR Message OPTIONAL)
Definition: rtlcompat.c:68
NTSYSAPI PEXCEPTION_ROUTINE WINAPI RtlVirtualUnwind(ULONG, ULONG_PTR, ULONG_PTR, RUNTIME_FUNCTION *, CONTEXT *, void **, ULONG_PTR *, KNONVOLATILE_CONTEXT_POINTERS *)
NTSYSAPI PRUNTIME_FUNCTION WINAPI RtlLookupFunctionEntry(ULONG_PTR, ULONG_PTR *, UNWIND_HISTORY_TABLE *)
@ Reserved3
Definition: sacdrv.h:1471
@ Reserved4
Definition: sacdrv.h:1472
@ Reserved5
Definition: sacdrv.h:1473
@ Restart
Definition: sacdrv.h:269
_Check_return_ unsigned long __cdecl _byteswap_ulong(_In_ unsigned long _Long)
_Check_return_ unsigned short __cdecl _byteswap_ushort(_In_ unsigned short _Short)
DWORD LCID
Definition: nls.h:13
_Check_return_ unsigned __int64 __cdecl _byteswap_uint64(_In_ unsigned __int64 _Number)
NTSTATUS NTAPI RtlSetInformationAcl(IN PACL Acl, IN PVOID Information, IN ULONG InformationLength, IN ACL_INFORMATION_CLASS InformationClass)
Definition: acl.c:785
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
LONG NTAPI RtlUnhandledExceptionFilter(_In_ PEXCEPTION_POINTERS ExceptionInfo)
Definition: exception.c:313
LONG NTAPI RtlUnhandledExceptionFilter2(_In_ PEXCEPTION_POINTERS ExceptionInfo, _In_ PCSTR Function)
Definition: exception.c:324
NTSTATUS NTAPI RtlUsageHeap(IN HANDLE Heap, IN ULONG Flags, OUT PRTL_HEAP_USAGE Usage)
Definition: heap.c:4001
ULONG NTAPI RtlMultipleFreeHeap(IN PVOID HeapHandle, IN ULONG Flags, IN ULONG Count, OUT PVOID *Array)
Definition: heap.c:4167
PWSTR NTAPI RtlQueryTagHeap(IN PVOID HeapHandle, IN ULONG Flags, IN USHORT TagIndex, IN BOOLEAN ResetCounters, OUT PRTL_HEAP_TAG_INFO HeapTagInfo)
Definition: heap.c:4012
ULONG NTAPI RtlCreateTagHeap(_In_ HANDLE HeapHandle, _In_ ULONG Flags, _In_opt_ PWSTR TagName, _In_ PWSTR TagSubName)
Definition: heap.c:4037
PVOID NTAPI RtlProtectHeap(IN PVOID HeapHandle, IN BOOLEAN ReadOnly)
Definition: heap.c:4058
ULONG NTAPI RtlExtendHeap(IN HANDLE Heap, IN ULONG Flags, IN PVOID P, IN SIZE_T Size)
Definition: heap.c:4025
ULONG NTAPI RtlMultipleAllocateHeap(IN PVOID HeapHandle, IN ULONG Flags, IN SIZE_T Size, IN ULONG Count, OUT PVOID *Array)
Definition: heap.c:4131
NTSYSAPI HANDLE NTAPI RtlDebugCreateHeap(ULONG Flags, PVOID Addr, SIZE_T TotalSize, SIZE_T CommitSize, PVOID Lock, PRTL_HEAP_PARAMETERS Parameters)
Definition: heapdbg.c:20
NTSTATUS NTAPI RtlConvertLCIDToString(_In_ LCID LcidValue, _In_ ULONG Base, _In_ ULONG Padding, _Out_writes_(Size) PWSTR pResultBuf, _In_ ULONG Size)
Definition: locale.c:945
PVOID NTAPI RtlEncodeSystemPointer(IN PVOID Pointer)
Definition: process.c:429
PVOID NTAPI RtlDecodeSystemPointer(IN PVOID Pointer)
Definition: process.c:439
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:936
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
PULONG MinorVersion OPTIONAL
Definition: CrossNt.h:68
_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:987
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:1932
Definition: rtltypes.h:1241
Definition: ntbasedef.h:640
struct _SINGLE_LIST_ENTRY * Next
Definition: ntbasedef.h:641
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: inet.h:67
Definition: tcpip.h:126
Definition: name.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:207
#define NTAPI_INLINE
Definition: umtypes.h:68
CONST char * PCSZ
Definition: umtypes.h:125
ULONG LOGICAL
Definition: umtypes.h:135
LONGLONG QuadPart
Definition: typedefs.h:114
BOOL Privilege(LPTSTR pszPrivilege, BOOL bEnable)
Definition: user_lib.cpp:531
unsigned long Ulong
Definition: utypes.h:42
_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:2664
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
Definition: wdfdevice.h:4539
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ ULONG _Out_ PVOID _Out_ PULONG RequiredSize
Definition: wdfdevice.h:4445
_In_ UCHAR _In_ UCHAR _In_ ULONG Code
Definition: wdfdevice.h:1707
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
Definition: wdfdevice.h:3777
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFSTRING String
Definition: wdfdevice.h:2439
_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_ DWORD _In_ int _In_ int _In_opt_ LPNLSVERSIONINFO lpVersionInformation
Definition: winnls.h:1267
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
_In_ CONST DEVPROPKEY _In_ LCID Lcid
Definition: iofuncs.h:2415
_Must_inspect_result_ typedef _Out_ PULONG TableSize
Definition: iotypes.h:4330
_In_ ULONG MaximumResponseLength
Definition: kdfuncs.h:11
_In_ LARGE_INTEGER _In_ ULONG Period
Definition: kefuncs.h:1313
_Out_ PCLIENT_ID ClientId
Definition: kefuncs.h:1151
_Out_ PBOOLEAN _Out_ PBOOLEAN _Out_ PSECURITY_IMPERSONATION_LEVEL ImpersonationLevel
Definition: psfuncs.h:156
NTSYSAPI BOOLEAN NTAPI RtlDeleteElementGenericTable(_In_ PRTL_GENERIC_TABLE Table, _In_ PVOID Buffer)
*UnicodeStringActualByteCount PWSTR _In_ ULONG _Out_ PULONG _In_ ULONG UTF8StringByteCount
Definition: rtlfuncs.h:2680
_In_ LARGE_INTEGER Divisor
Definition: rtlfuncs.h:3061
FORCEINLINE VOID PushEntryList(_Inout_ PSINGLE_LIST_ENTRY ListHead, _Inout_ __drv_aliasesMem PSINGLE_LIST_ENTRY Entry)
Definition: rtlfuncs.h:256
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:2550
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:612
FORCEINLINE LUID NTAPI_INLINE RtlConvertUlongToLuid(_In_ ULONG Val)
Definition: rtlfuncs.h:3558
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlLookupFirstMatchingElementGenericTableAvl(_In_ PRTL_AVL_TABLE Table, _In_ PVOID Buffer, _Out_ PVOID *RestartKey)
_Inout_ PUCHAR * CompressedBuffer
Definition: rtlfuncs.h:2291
_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:2430
_In_ ULONG AceRevision
Definition: rtlfuncs.h:1868
*UnicodeStringActualByteCount PWSTR _In_ ULONG UnicodeStringMaxByteCount
Definition: rtlfuncs.h:2677
_Must_inspect_result_ NTSYSAPI BOOLEAN NTAPI RtlIsGenericTableEmpty(_In_ PRTL_GENERIC_TABLE Table)
_In_ SIZE_T _In_ SIZE_T String2Length
Definition: rtlfuncs.h:518
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:613
_In_ ULONG _In_ ULONG _In_ ULONG AceListLength
Definition: rtlfuncs.h:1871
_In_ BOOLEAN _In_ ULONG HashAlgorithm
Definition: rtlfuncs.h:2055
_In_ ULONG _In_ ULONG _Out_ PULONG _In_ PVOID WorkSpace
Definition: rtlfuncs.h:2283
_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:3062
_Out_ PBOOLEAN _Out_ PACL _Out_ PBOOLEAN SaclDefaulted
Definition: rtlfuncs.h:2432
_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:243
*BytesInOemString PCHAR OemString
Definition: rtlfuncs.h:1577
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:1286
NTSYSAPI PRTL_SPLAY_LINKS NTAPI RtlSplay(_Inout_ PRTL_SPLAY_LINKS Links)
_In_ ULONG StartingIndex
Definition: rtlfuncs.h:398
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlGetElementGenericTable(_In_ PRTL_GENERIC_TABLE Table, _In_ ULONG I)
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlLookupElementGenericTableAvl(_In_ PRTL_AVL_TABLE Table, _In_ PVOID Buffer)
NTSYSAPI ULONG NTAPI RtlNumberGenericTableElements(_In_ PRTL_GENERIC_TABLE Table)
*UnicodeStringActualByteCount PWSTR UnicodeStringDestination
Definition: rtlfuncs.h:2676
_In_ SIZE_T String1Length
Definition: rtlfuncs.h:516
_In_ PSID Sid2
Definition: rtlfuncs.h:1772
_In_ PRTL_GENERIC_COMPARE_ROUTINE _In_ PRTL_GENERIC_ALLOCATE_ROUTINE _In_ PRTL_GENERIC_FREE_ROUTINE _In_opt_ PVOID TableContext
Definition: rtlfuncs.h:1108
_In_ PRTL_GENERIC_COMPARE_ROUTINE _In_ PRTL_GENERIC_ALLOCATE_ROUTINE _In_ PRTL_GENERIC_FREE_ROUTINE FreeRoutine
Definition: rtlfuncs.h:1107
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:1106
_In_ ULONG _In_ ULONG AclRevision
Definition: rtlfuncs.h:1860
_In_ ULONG AceIndex
Definition: rtlfuncs.h:1879
_Must_inspect_result_ NTSYSAPI BOOLEAN NTAPI RtlIsGenericTableEmptyAvl(_In_ PRTL_AVL_TABLE Table)
_In_ ULONG _In_ ULONG StartingAceIndex
Definition: rtlfuncs.h:1869
_In_ BOOLEAN _In_ ULONG _Out_ PULONG HashValue
Definition: rtlfuncs.h:2056
*UnicodeStringActualByteCount PWSTR _In_ ULONG _Out_ PULONG UnicodeStringActualByteCount
Definition: rtlfuncs.h:2678
*BytesInMultiByteString PCHAR MultiByteString
Definition: rtlfuncs.h:1544
NTSYSAPI PRTL_SPLAY_LINKS NTAPI RtlDelete(_In_ PRTL_SPLAY_LINKS Links)
_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:1105
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlEnumerateGenericTableWithoutSplaying(_In_ PRTL_GENERIC_TABLE Table, _Inout_ PVOID *RestartKey)
_Must_inspect_result_ NTSYSAPI PRTL_SPLAY_LINKS NTAPI RtlSubtreePredecessor(_In_ PRTL_SPLAY_LINKS Links)
_Must_inspect_result_ NTSYSAPI PVOID NTAPI RtlGetElementGenericTableAvl(_In_ PRTL_AVL_TABLE Table, _In_ ULONG I)
NTSYSAPI VOID NTAPI RtlDeleteNoSplay(_In_ PRTL_SPLAY_LINKS Links, _Inout_ PRTL_SPLAY_LINKS *Root)
_Must_inspect_result_ NTSYSAPI PRTL_SPLAY_LINKS NTAPI RtlRealSuccessor(_In_ PRTL_SPLAY_LINKS Links)
RTL_AVL_FREE_ROUTINE * PRTL_AVL_FREE_ROUTINE
Definition: rtltypes.h:421
TABLE_SEARCH_RESULT
Definition: rtltypes.h:386
_IRQL_requires_same_ _In_ PVOID _In_ PVOID MatchData
Definition: rtltypes.h:429
RTL_GENERIC_FREE_ROUTINE * PRTL_GENERIC_FREE_ROUTINE
Definition: rtltypes.h:488
#define PSLIST_ENTRY
Definition: rtltypes.h:134
RTL_AVL_MATCH_FUNCTION * PRTL_AVL_MATCH_FUNCTION
Definition: rtltypes.h:430
_Inout_opt_ PVOID Parameter
Definition: rtltypes.h:336
RTL_AVL_ALLOCATE_ROUTINE * PRTL_AVL_ALLOCATE_ROUTINE
Definition: rtltypes.h:413
RTL_GENERIC_COMPARE_ROUTINE * PRTL_GENERIC_COMPARE_ROUTINE
Definition: rtltypes.h:471
* PRTL_RUN_ONCE
Definition: rtltypes.h:327
RTL_GENERIC_ALLOCATE_ROUTINE * PRTL_GENERIC_ALLOCATE_ROUTINE
Definition: rtltypes.h:480
RTL_AVL_COMPARE_ROUTINE * PRTL_AVL_COMPARE_ROUTINE
Definition: rtltypes.h:404
RTL_RUN_ONCE_INIT_FN * PRTL_RUN_ONCE_INIT_FN
Definition: rtltypes.h:338
_In_opt_ PSECURITY_DESCRIPTOR _Out_ PSECURITY_DESCRIPTOR _In_ BOOLEAN IsDirectoryObject
Definition: sefuncs.h:31
_In_opt_ PSECURITY_DESCRIPTOR _Out_ PSECURITY_DESCRIPTOR * NewDescriptor
Definition: sefuncs.h:30
_In_ PSECURITY_SUBJECT_CONTEXT _In_ BOOLEAN _In_ ACCESS_MASK _In_ ACCESS_MASK _Outptr_opt_ PPRIVILEGE_SET _In_ PGENERIC_MAPPING _In_ KPROCESSOR_MODE _Out_ PACCESS_MASK GrantedAccess
Definition: sefuncs.h:20
* PSID_IDENTIFIER_AUTHORITY
Definition: setypes.h:464
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
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