Fix some compilation errors
[reactos.git] / reactos / include / ndk / exfuncs.h
1 /*++ NDK Version: 0098
2
3 Copyright (c) Alex Ionescu. All rights reserved.
4
5 Header Name:
6
7 exfuncs.h
8
9 Abstract:
10
11 Function definitions for the Executive.
12
13 Author:
14
15 Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
16
17 --*/
18
19 #ifndef _EXFUNCS_H
20 #define _EXFUNCS_H
21
22 //
23 // Dependencies
24 //
25 #include <umtypes.h>
26 #include <pstypes.h>
27 #include <extypes.h>
28
29 //
30 // Don't include WMI headers just for one define
31 //
32 typedef struct _EVENT_TRACE_HEADER *PEVENT_TRACE_HEADER;
33
34 #ifndef NTOS_MODE_USER
35 //
36 // Fast Mutex functions
37 //
38 VOID
39 FASTCALL
40 ExEnterCriticalRegionAndAcquireFastMutexUnsafe(
41 PFAST_MUTEX FastMutex
42 );
43
44 VOID
45 FASTCALL
46 ExReleaseFastMutexUnsafeAndLeaveCriticalRegion(
47 PFAST_MUTEX FastMutex
48 );
49
50 //
51 // Pushlock functions
52 //
53 VOID
54 FASTCALL
55 ExfAcquirePushLockExclusive(
56 PEX_PUSH_LOCK PushLock
57 );
58
59 VOID
60 FASTCALL
61 ExfAcquirePushLockShared(
62 PEX_PUSH_LOCK PushLock
63 );
64
65 VOID
66 FASTCALL
67 ExfReleasePushLock(
68 PEX_PUSH_LOCK PushLock
69 );
70
71 VOID
72 FASTCALL
73 ExfReleasePushLockExclusive(
74 PEX_PUSH_LOCK PushLock
75 );
76
77 VOID
78 FASTCALL
79 ExfReleasePushLockShared(
80 PEX_PUSH_LOCK PushLock
81 );
82
83 VOID
84 FASTCALL
85 ExfTryToWakePushLock(
86 PEX_PUSH_LOCK PushLock
87 );
88
89 VOID
90 FASTCALL
91 ExfUnblockPushLock(
92 PEX_PUSH_LOCK PushLock,
93 PVOID CurrentWaitBlock
94 );
95
96 //
97 // Resource Functions
98 //
99 NTKERNELAPI
100 BOOLEAN
101 NTAPI
102 ExTryToAcquireResourceExclusiveLite(
103 IN PERESOURCE Resource
104 );
105
106 #endif
107
108 //
109 // Native Calls
110 //
111 NTSYSCALLAPI
112 NTSTATUS
113 NTAPI
114 NtAddAtom(
115 IN PWSTR AtomName,
116 IN ULONG AtomNameLength,
117 IN OUT PRTL_ATOM Atom
118 );
119
120 NTSYSCALLAPI
121 NTSTATUS
122 NTAPI
123 NtCancelTimer(
124 IN HANDLE TimerHandle,
125 OUT PBOOLEAN CurrentState OPTIONAL
126 );
127
128 NTSYSCALLAPI
129 NTSTATUS
130 NTAPI
131 NtClearEvent(
132 IN HANDLE EventHandle
133 );
134
135 NTSYSCALLAPI
136 NTSTATUS
137 NTAPI
138 NtCreateEvent(
139 OUT PHANDLE EventHandle,
140 IN ACCESS_MASK DesiredAccess,
141 IN POBJECT_ATTRIBUTES ObjectAttributes,
142 IN EVENT_TYPE EventType,
143 IN BOOLEAN InitialState
144 );
145
146 NTSYSCALLAPI
147 NTSTATUS
148 NTAPI
149 NtCreateEventPair(
150 OUT PHANDLE EventPairHandle,
151 IN ACCESS_MASK DesiredAccess,
152 IN POBJECT_ATTRIBUTES ObjectAttributes
153 );
154
155 NTSYSCALLAPI
156 NTSTATUS
157 NTAPI
158 NtCreateKeyedEvent(
159 OUT PHANDLE KeyedEventHandle,
160 IN ACCESS_MASK DesiredAccess,
161 IN POBJECT_ATTRIBUTES ObjectAttributes,
162 IN ULONG Flags
163 );
164
165 NTSYSCALLAPI
166 NTSTATUS
167 NTAPI
168 NtCreateMutant(
169 OUT PHANDLE MutantHandle,
170 IN ACCESS_MASK DesiredAccess,
171 IN POBJECT_ATTRIBUTES ObjectAttributes,
172 IN BOOLEAN InitialOwner
173 );
174
175 NTSYSCALLAPI
176 NTSTATUS
177 NTAPI
178 NtCreateSemaphore(
179 OUT PHANDLE SemaphoreHandle,
180 IN ACCESS_MASK DesiredAccess,
181 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
182 IN LONG InitialCount,
183 IN LONG MaximumCount
184 );
185
186 NTSYSCALLAPI
187 NTSTATUS
188 NTAPI
189 NtCreateTimer(
190 OUT PHANDLE TimerHandle,
191 IN ACCESS_MASK DesiredAccess,
192 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
193 IN TIMER_TYPE TimerType
194 );
195
196 NTSYSCALLAPI
197 NTSTATUS
198 NTAPI
199 NtDeleteAtom(
200 IN RTL_ATOM Atom
201 );
202
203 NTSYSCALLAPI
204 NTSTATUS
205 NTAPI
206 NtDisplayString(
207 IN PUNICODE_STRING DisplayString
208 );
209
210 NTSYSCALLAPI
211 NTSTATUS
212 NTAPI
213 NtEnumerateSystemEnvironmentValuesEx(
214 IN ULONG InformationClass,
215 IN PVOID Buffer,
216 IN ULONG BufferLength
217 );
218
219 NTSYSCALLAPI
220 NTSTATUS
221 NTAPI
222 NtFindAtom(
223 IN PWSTR AtomName,
224 IN ULONG AtomNameLength,
225 OUT PRTL_ATOM Atom OPTIONAL
226 );
227
228 NTSYSCALLAPI
229 NTSTATUS
230 NTAPI
231 NtOpenEvent(
232 OUT PHANDLE EventHandle,
233 IN ACCESS_MASK DesiredAccess,
234 IN POBJECT_ATTRIBUTES ObjectAttributes
235 );
236
237 NTSYSCALLAPI
238 NTSTATUS
239 NTAPI
240 NtOpenKeyedEvent(
241 OUT PHANDLE EventHandle,
242 IN ACCESS_MASK DesiredAccess,
243 IN POBJECT_ATTRIBUTES ObjectAttributes
244 );
245
246 NTSYSCALLAPI
247 NTSTATUS
248 NTAPI
249 NtOpenEventPair(
250 OUT PHANDLE EventPairHandle,
251 IN ACCESS_MASK DesiredAccess,
252 IN POBJECT_ATTRIBUTES ObjectAttributes
253 );
254
255 NTSYSCALLAPI
256 NTSTATUS
257 NTAPI
258 NtOpenMutant(
259 OUT PHANDLE MutantHandle,
260 IN ACCESS_MASK DesiredAccess,
261 IN POBJECT_ATTRIBUTES ObjectAttributes
262 );
263
264 NTSYSCALLAPI
265 NTSTATUS
266 NTAPI
267 NtOpenSemaphore(
268 OUT PHANDLE SemaphoreHandle,
269 IN ACCESS_MASK DesiredAcces,
270 IN POBJECT_ATTRIBUTES ObjectAttributes
271 );
272
273 NTSYSCALLAPI
274 NTSTATUS
275 NTAPI
276 NtOpenTimer(
277 OUT PHANDLE TimerHandle,
278 IN ACCESS_MASK DesiredAccess,
279 IN POBJECT_ATTRIBUTES ObjectAttributes
280 );
281
282 NTSYSCALLAPI
283 NTSTATUS
284 NTAPI
285 NtPulseEvent(
286 IN HANDLE EventHandle,
287 IN PLONG PulseCount OPTIONAL
288 );
289
290 NTSYSCALLAPI
291 NTSTATUS
292 NTAPI
293 NtQueryDefaultLocale(
294 IN BOOLEAN UserProfile,
295 OUT PLCID DefaultLocaleId
296 );
297
298 NTSYSCALLAPI
299 NTSTATUS
300 NTAPI
301 NtQueryDefaultUILanguage(
302 PLANGID LanguageId
303 );
304
305 NTSYSCALLAPI
306 NTSTATUS
307 NTAPI
308 NtQueryEvent(
309 IN HANDLE EventHandle,
310 IN EVENT_INFORMATION_CLASS EventInformationClass,
311 OUT PVOID EventInformation,
312 IN ULONG EventInformationLength,
313 OUT PULONG ReturnLength
314 );
315
316 NTSYSCALLAPI
317 NTSTATUS
318 NTAPI
319 NtQueryInformationAtom(
320 IN RTL_ATOM Atom,
321 IN ATOM_INFORMATION_CLASS AtomInformationClass,
322 OUT PVOID AtomInformation,
323 IN ULONG AtomInformationLength,
324 OUT PULONG ReturnLength OPTIONAL
325 );
326
327 NTSYSCALLAPI
328 NTSTATUS
329 NTAPI
330 NtQueryInstallUILanguage(
331 PLANGID LanguageId
332 );
333
334 NTSYSCALLAPI
335 NTSTATUS
336 NTAPI
337 NtQueryMutant(
338 IN HANDLE MutantHandle,
339 IN MUTANT_INFORMATION_CLASS MutantInformationClass,
340 OUT PVOID MutantInformation,
341 IN ULONG Length,
342 OUT PULONG ResultLength
343 );
344
345 NTSYSCALLAPI
346 NTSTATUS
347 NTAPI
348 NtQuerySemaphore(
349 IN HANDLE SemaphoreHandle,
350 IN SEMAPHORE_INFORMATION_CLASS SemaphoreInformationClass,
351 OUT PVOID SemaphoreInformation,
352 IN ULONG Length,
353 OUT PULONG ReturnLength
354 );
355
356 NTSYSCALLAPI
357 NTSTATUS
358 NTAPI
359 NtQuerySystemEnvironmentValue(
360 IN PUNICODE_STRING Name,
361 OUT PWSTR Value,
362 ULONG Length,
363 PULONG ReturnLength
364 );
365
366 NTSYSCALLAPI
367 NTSTATUS
368 NTAPI
369 NtQuerySystemEnvironmentValueEx(
370 IN PUNICODE_STRING VariableName,
371 IN LPGUID VendorGuid
372 );
373
374 NTSYSCALLAPI
375 NTSTATUS
376 NTAPI
377 NtQuerySystemInformation(
378 IN SYSTEM_INFORMATION_CLASS SystemInformationClass,
379 OUT PVOID SystemInformation,
380 IN SIZE_T Length,
381 OUT PSIZE_T ResultLength
382 );
383
384 NTSYSCALLAPI
385 NTSTATUS
386 NTAPI
387 NtQueryTimer(
388 IN HANDLE TimerHandle,
389 IN TIMER_INFORMATION_CLASS TimerInformationClass,
390 OUT PVOID TimerInformation,
391 IN ULONG Length,
392 OUT PULONG ResultLength
393 );
394
395 NTSYSCALLAPI
396 NTSTATUS
397 NTAPI
398 NtRaiseHardError(
399 IN NTSTATUS ErrorStatus,
400 IN ULONG NumberOfParameters,
401 IN ULONG UnicodeStringParameterMask,
402 IN PULONG_PTR Parameters,
403 IN ULONG ValidResponseOptions,
404 OUT PULONG Response
405 );
406
407 NTSYSCALLAPI
408 NTSTATUS
409 NTAPI
410 NtReleaseMutant(
411 IN HANDLE MutantHandle,
412 IN PLONG ReleaseCount OPTIONAL
413 );
414
415 NTSYSCALLAPI
416 NTSTATUS
417 NTAPI
418 NtReleaseKeyedEvent(
419 IN HANDLE EventHandle,
420 IN PVOID Key,
421 IN BOOLEAN Alertable,
422 IN PLARGE_INTEGER Timeout OPTIONAL
423 );
424
425 NTSYSCALLAPI
426 NTSTATUS
427 NTAPI
428 NtReleaseSemaphore(
429 IN HANDLE SemaphoreHandle,
430 IN LONG ReleaseCount,
431 OUT PLONG PreviousCount
432 );
433
434 NTSYSCALLAPI
435 NTSTATUS
436 NTAPI
437 NtResetEvent(
438 IN HANDLE EventHandle,
439 OUT PLONG NumberOfWaitingThreads OPTIONAL
440 );
441
442 NTSYSCALLAPI
443 NTSTATUS
444 NTAPI
445 NtSetDefaultLocale(
446 IN BOOLEAN UserProfile,
447 IN LCID DefaultLocaleId
448 );
449
450 NTSYSCALLAPI
451 NTSTATUS
452 NTAPI
453 NtSetDefaultUILanguage(
454 LANGID LanguageId
455 );
456
457 NTSYSCALLAPI
458 NTSTATUS
459 NTAPI
460 NtSetDefaultHardErrorPort(
461 IN HANDLE PortHandle
462 );
463
464 NTSYSCALLAPI
465 NTSTATUS
466 NTAPI
467 NtSetEvent(
468 IN HANDLE EventHandle,
469 OUT PLONG PreviousState OPTIONAL
470 );
471
472 NTSYSCALLAPI
473 NTSTATUS
474 NTAPI
475 NtSetEventBoostPriority(
476 IN HANDLE EventHandle
477 );
478
479 NTSYSCALLAPI
480 NTSTATUS
481 NTAPI
482 NtSetHighEventPair(
483 IN HANDLE EventPairHandle
484 );
485
486 NTSYSCALLAPI
487 NTSTATUS
488 NTAPI
489 NtSetHighWaitLowEventPair(
490 IN HANDLE EventPairHandle
491 );
492
493 NTSYSCALLAPI
494 NTSTATUS
495 NTAPI
496 NtSetLowEventPair(
497 HANDLE EventPair
498 );
499
500 NTSYSCALLAPI
501 NTSTATUS
502 NTAPI
503 NtSetLowWaitHighEventPair(
504 HANDLE EventPair
505 );
506
507 NTSYSCALLAPI
508 NTSTATUS
509 NTAPI
510 NtSetSystemEnvironmentValue(
511 IN PUNICODE_STRING VariableName,
512 IN PUNICODE_STRING Value
513 );
514
515 NTSYSCALLAPI
516 NTSTATUS
517 NTAPI
518 NtSetSystemEnvironmentValueEx(
519 IN PUNICODE_STRING VariableName,
520 IN LPGUID VendorGuid
521 );
522
523 NTSYSCALLAPI
524 NTSTATUS
525 NTAPI
526 NtSetSystemInformation(
527 IN SYSTEM_INFORMATION_CLASS SystemInformationClass,
528 IN PVOID SystemInformation,
529 IN SIZE_T SystemInformationLength
530 );
531
532 NTSYSCALLAPI
533 NTSTATUS
534 NTAPI
535 NtSetTimer(
536 IN HANDLE TimerHandle,
537 IN PLARGE_INTEGER DueTime,
538 IN PTIMER_APC_ROUTINE TimerApcRoutine,
539 IN PVOID TimerContext,
540 IN BOOLEAN WakeTimer,
541 IN LONG Period OPTIONAL,
542 OUT PBOOLEAN PreviousState OPTIONAL
543 );
544
545 NTSYSCALLAPI
546 NTSTATUS
547 NTAPI
548 NtSetUuidSeed(
549 IN PUCHAR UuidSeed
550 );
551
552 NTSYSCALLAPI
553 NTSTATUS
554 NTAPI
555 NtShutdownSystem(
556 IN SHUTDOWN_ACTION Action
557 );
558
559 NTSYSCALLAPI
560 NTSTATUS
561 NTAPI
562 NtWaitForKeyedEvent(
563 IN HANDLE EventHandle,
564 IN PVOID Key,
565 IN BOOLEAN Alertable,
566 IN PLARGE_INTEGER Timeout OPTIONAL
567 );
568
569 NTSYSCALLAPI
570 NTSTATUS
571 NTAPI
572 NtWaitHighEventPair(
573 IN HANDLE EventPairHandle
574 );
575
576 NTSYSCALLAPI
577 NTSTATUS
578 NTAPI
579 NtWaitLowEventPair(
580 IN HANDLE EventPairHandle
581 );
582
583 NTSYSCALLAPI
584 NTSTATUS
585 NTAPI
586 NtTraceEvent(
587 IN ULONG TraceHandle,
588 IN ULONG Flags,
589 IN ULONG TraceHeaderLength,
590 IN PEVENT_TRACE_HEADER TraceHeader
591 );
592
593 NTSYSAPI
594 NTSTATUS
595 NTAPI
596 ZwAddAtom(
597 IN PWSTR AtomName,
598 IN ULONG AtomNameLength,
599 IN OUT PRTL_ATOM Atom
600 );
601
602 #ifdef NTOS_MODE_USER
603 NTSYSAPI
604 NTSTATUS
605 NTAPI
606 ZwCancelTimer(
607 IN HANDLE TimerHandle,
608 OUT PBOOLEAN CurrentState OPTIONAL
609 );
610 #endif
611
612 NTSYSAPI
613 NTSTATUS
614 NTAPI
615 ZwClearEvent(
616 IN HANDLE EventHandle
617 );
618
619 NTSYSAPI
620 NTSTATUS
621 NTAPI
622 ZwCreateEvent(
623 OUT PHANDLE EventHandle,
624 IN ACCESS_MASK DesiredAccess,
625 IN POBJECT_ATTRIBUTES ObjectAttributes,
626 IN EVENT_TYPE EventType,
627 IN BOOLEAN InitialState
628 );
629
630 NTSYSAPI
631 NTSTATUS
632 NTAPI
633 ZwCreateEventPair(
634 OUT PHANDLE EventPairHandle,
635 IN ACCESS_MASK DesiredAccess,
636 IN POBJECT_ATTRIBUTES ObjectAttributes
637 );
638
639 NTSYSAPI
640 NTSTATUS
641 NTAPI
642 ZwCreateMutant(
643 OUT PHANDLE MutantHandle,
644 IN ACCESS_MASK DesiredAccess,
645 IN POBJECT_ATTRIBUTES ObjectAttributes,
646 IN BOOLEAN InitialOwner
647 );
648
649 NTSYSAPI
650 NTSTATUS
651 NTAPI
652 ZwCreateSemaphore(
653 OUT PHANDLE SemaphoreHandle,
654 IN ACCESS_MASK DesiredAccess,
655 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
656 IN LONG InitialCount,
657 IN LONG MaximumCount
658 );
659
660 #ifdef NTOS_MODE_USER
661 NTSYSAPI
662 NTSTATUS
663 NTAPI
664 ZwCreateTimer(
665 OUT PHANDLE TimerHandle,
666 IN ACCESS_MASK DesiredAccess,
667 IN POBJECT_ATTRIBUTES ObjectAttributes OPTIONAL,
668 IN TIMER_TYPE TimerType
669 );
670 #endif
671
672 NTSYSAPI
673 NTSTATUS
674 NTAPI
675 ZwDeleteAtom(
676 IN RTL_ATOM Atom
677 );
678
679 NTSYSAPI
680 NTSTATUS
681 NTAPI
682 ZwDisplayString(
683 IN PUNICODE_STRING DisplayString
684 );
685
686 NTSYSAPI
687 NTSTATUS
688 NTAPI
689 ZwFindAtom(
690 IN PWSTR AtomName,
691 IN ULONG AtomNameLength,
692 OUT PRTL_ATOM Atom OPTIONAL
693 );
694
695 NTSYSAPI
696 NTSTATUS
697 NTAPI
698 ZwOpenEvent(
699 OUT PHANDLE EventHandle,
700 IN ACCESS_MASK DesiredAccess,
701 IN POBJECT_ATTRIBUTES ObjectAttributes
702 );
703
704 NTSYSAPI
705 NTSTATUS
706 NTAPI
707 ZwOpenEventPair(
708 OUT PHANDLE EventPairHandle,
709 IN ACCESS_MASK DesiredAccess,
710 IN POBJECT_ATTRIBUTES ObjectAttributes
711 );
712
713 NTSYSAPI
714 NTSTATUS
715 NTAPI
716 ZwOpenMutant(
717 OUT PHANDLE MutantHandle,
718 IN ACCESS_MASK DesiredAccess,
719 IN POBJECT_ATTRIBUTES ObjectAttributes
720 );
721
722 NTSYSAPI
723 NTSTATUS
724 NTAPI
725 ZwOpenSemaphore(
726 OUT PHANDLE SemaphoreHandle,
727 IN ACCESS_MASK DesiredAcces,
728 IN POBJECT_ATTRIBUTES ObjectAttributes
729 );
730
731 #ifdef NTOS_MODE_USER
732 NTSYSAPI
733 NTSTATUS
734 NTAPI
735 ZwOpenTimer(
736 OUT PHANDLE TimerHandle,
737 IN ACCESS_MASK DesiredAccess,
738 IN POBJECT_ATTRIBUTES ObjectAttributes
739 );
740 #endif
741
742 NTSYSAPI
743 NTSTATUS
744 NTAPI
745 ZwPulseEvent(
746 IN HANDLE EventHandle,
747 IN PLONG PulseCount OPTIONAL
748 );
749
750 NTSYSAPI
751 NTSTATUS
752 NTAPI
753 ZwQueryDefaultLocale(
754 IN BOOLEAN UserProfile,
755 OUT PLCID DefaultLocaleId
756 );
757
758 NTSYSAPI
759 NTSTATUS
760 NTAPI
761 ZwQueryDefaultUILanguage(
762 PLANGID LanguageId
763 );
764
765 NTSYSAPI
766 NTSTATUS
767 NTAPI
768 ZwQueryEvent(
769 IN HANDLE EventHandle,
770 IN EVENT_INFORMATION_CLASS EventInformationClass,
771 OUT PVOID EventInformation,
772 IN ULONG EventInformationLength,
773 OUT PULONG ReturnLength
774 );
775
776 NTSYSAPI
777 NTSTATUS
778 NTAPI
779 ZwQueryInformationAtom(
780 IN RTL_ATOM Atom,
781 IN ATOM_INFORMATION_CLASS AtomInformationClass,
782 OUT PVOID AtomInformation,
783 IN ULONG AtomInformationLength,
784 OUT PULONG ReturnLength OPTIONAL
785 );
786
787 NTSYSAPI
788 NTSTATUS
789 NTAPI
790 ZwQueryInstallUILanguage(
791 PLANGID LanguageId
792 );
793
794 NTSYSAPI
795 NTSTATUS
796 NTAPI
797 ZwQueryMutant(
798 IN HANDLE MutantHandle,
799 IN MUTANT_INFORMATION_CLASS MutantInformationClass,
800 OUT PVOID MutantInformation,
801 IN ULONG Length,
802 OUT PULONG ResultLength
803 );
804
805 NTSYSAPI
806 NTSTATUS
807 NTAPI
808 ZwQuerySemaphore(
809 IN HANDLE SemaphoreHandle,
810 IN SEMAPHORE_INFORMATION_CLASS SemaphoreInformationClass,
811 OUT PVOID SemaphoreInformation,
812 IN ULONG Length,
813 OUT PULONG ReturnLength
814 );
815
816 NTSYSAPI
817 NTSTATUS
818 NTAPI
819 ZwQuerySystemEnvironmentValue(
820 IN PUNICODE_STRING Name,
821 OUT PWSTR Value,
822 ULONG Length,
823 PULONG ReturnLength
824 );
825
826 NTSYSAPI
827 NTSTATUS
828 NTAPI
829 ZwQuerySystemInformation(
830 IN SYSTEM_INFORMATION_CLASS SystemInformationClass,
831 OUT PVOID SystemInformation,
832 IN SIZE_T Length,
833 OUT PSIZE_T ResultLength
834 );
835
836 NTSYSAPI
837 NTSTATUS
838 NTAPI
839 ZwQueryTimer(
840 IN HANDLE TimerHandle,
841 IN TIMER_INFORMATION_CLASS TimerInformationClass,
842 OUT PVOID TimerInformation,
843 IN ULONG Length,
844 OUT PULONG ResultLength
845 );
846
847 NTSYSAPI
848 NTSTATUS
849 NTAPI
850 ZwRaiseHardError(
851 IN NTSTATUS ErrorStatus,
852 IN ULONG NumberOfParameters,
853 IN ULONG UnicodeStringParameterMask,
854 IN PULONG_PTR Parameters,
855 IN ULONG ValidResponseOptions,
856 OUT PULONG Response
857 );
858
859 NTSYSAPI
860 NTSTATUS
861 NTAPI
862 ZwReleaseMutant(
863 IN HANDLE MutantHandle,
864 IN PLONG ReleaseCount OPTIONAL
865 );
866
867 NTSYSAPI
868 NTSTATUS
869 NTAPI
870 ZwReleaseSemaphore(
871 IN HANDLE SemaphoreHandle,
872 IN LONG ReleaseCount,
873 OUT PLONG PreviousCount
874 );
875
876 NTSYSAPI
877 NTSTATUS
878 NTAPI
879 ZwResetEvent(
880 IN HANDLE EventHandle,
881 OUT PLONG NumberOfWaitingThreads OPTIONAL
882 );
883
884 NTSYSAPI
885 NTSTATUS
886 NTAPI
887 ZwSetDefaultLocale(
888 IN BOOLEAN UserProfile,
889 IN LCID DefaultLocaleId
890 );
891
892 NTSYSAPI
893 NTSTATUS
894 NTAPI
895 ZwSetDefaultUILanguage(
896 LANGID LanguageId
897 );
898
899 NTSYSAPI
900 NTSTATUS
901 NTAPI
902 ZwSetDefaultHardErrorPort(
903 IN HANDLE PortHandle
904 );
905
906 NTSYSAPI
907 NTSTATUS
908 NTAPI
909 ZwSetEvent(
910 IN HANDLE EventHandle,
911 OUT PLONG PreviousState OPTIONAL
912 );
913
914 NTSYSAPI
915 NTSTATUS
916 NTAPI
917 ZwSetHighEventPair(
918 IN HANDLE EventPairHandle
919 );
920
921 NTSYSAPI
922 NTSTATUS
923 NTAPI
924 ZwSetHighWaitLowEventPair(
925 IN HANDLE EventPairHandle
926 );
927
928 NTSYSAPI
929 NTSTATUS
930 NTAPI
931 ZwSetLowEventPair(
932 HANDLE EventPair
933 );
934
935 NTSYSAPI
936 NTSTATUS
937 NTAPI
938 ZwSetLowWaitHighEventPair(
939 HANDLE EventPair
940 );
941
942 NTSYSAPI
943 NTSTATUS
944 NTAPI
945 ZwSetSystemEnvironmentValue(
946 IN PUNICODE_STRING VariableName,
947 IN PUNICODE_STRING Value
948 );
949
950 NTSYSAPI
951 NTSTATUS
952 NTAPI
953 ZwSetSystemInformation(
954 IN SYSTEM_INFORMATION_CLASS SystemInformationClass,
955 IN PVOID SystemInformation,
956 IN SIZE_T SystemInformationLength
957 );
958
959 #ifdef NTOS_MODE_USER
960 NTSYSAPI
961 NTSTATUS
962 NTAPI
963 ZwSetTimer(
964 IN HANDLE TimerHandle,
965 IN PLARGE_INTEGER DueTime,
966 IN PTIMER_APC_ROUTINE TimerApcRoutine,
967 IN PVOID TimerContext,
968 IN BOOLEAN WakeTimer,
969 IN LONG Period OPTIONAL,
970 OUT PBOOLEAN PreviousState OPTIONAL
971 );
972 #endif
973
974 NTSYSAPI
975 NTSTATUS
976 NTAPI
977 ZwSetUuidSeed(
978 IN PUCHAR UuidSeed
979 );
980
981 NTSYSAPI
982 NTSTATUS
983 NTAPI
984 ZwShutdownSystem(
985 IN SHUTDOWN_ACTION Action
986 );
987
988 NTSYSAPI
989 NTSTATUS
990 NTAPI
991 ZwWaitHighEventPair(
992 IN HANDLE EventPairHandle
993 );
994
995 NTSYSAPI
996 NTSTATUS
997 NTAPI
998 ZwWaitLowEventPair(
999 IN HANDLE EventPairHandle
1000 );
1001
1002 NTSYSAPI
1003 NTSTATUS
1004 NTAPI
1005 ZwTraceEvent(
1006 IN ULONG TraceHandle,
1007 IN ULONG Flags,
1008 IN ULONG TraceHeaderLength,
1009 IN PEVENT_TRACE_HEADER TraceHeader
1010 );
1011 #endif