ReactOS  0.4.15-dev-3440-g915569a
kefuncs.h
Go to the documentation of this file.
1 /*++ NDK Version: 0098
2 
3 Copyright (c) Alex Ionescu. All rights reserved.
4 
5 Header Name:
6 
7  kefuncs.h
8 
9 Abstract:
10 
11  Functions definitions for the Kernel services.
12 
13 Author:
14 
15  Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
16 
17 --*/
18 
19 #ifndef _KEFUNCS_H
20 #define _KEFUNCS_H
21 
22 //
23 // Dependencies
24 //
25 #include <umtypes.h>
26 #include <ketypes.h>
27 #include <section_attribs.h>
28 
29 #ifdef __cplusplus
30 extern "C"
31 {
32 #endif
33 
34 #ifndef NTOS_MODE_USER
35 
36 //
37 // APC Functions
38 //
39 VOID
40 NTAPI
42  _In_ PKAPC Apc,
44  _In_ KAPC_ENVIRONMENT TargetEnvironment,
45  _In_ PKKERNEL_ROUTINE KernelRoutine,
46  _In_opt_ PKRUNDOWN_ROUTINE RundownRoutine,
47  _In_ PKNORMAL_ROUTINE NormalRoutine,
50 );
51 
52 BOOLEAN
53 NTAPI
55  _In_ PKAPC Apc,
59 );
60 
61 VOID
62 NTAPI
65 #ifdef _M_AMD64
66  _In_ PKEXCEPTION_FRAME ExceptionFrame,
67 #else
68  _Reserved_ PKEXCEPTION_FRAME ExceptionFrame,
69 #endif
70  _In_ PKTRAP_FRAME TrapFrame
71 );
72 
73 //
74 // Process/Thread Functions
75 //
76 VOID
77 NTAPI
80 );
81 
82 BOOLEAN
83 NTAPI
85  VOID
86 );
87 
88 VOID
89 NTAPI
93 );
94 
96 NTAPI
100 );
101 
102 PKPROCESS
103 NTAPI
105  VOID
106 );
107 
108 BOOLEAN
109 NTAPI
113  _In_ ULONG Limit,
116 );
117 
118 //
119 // Spinlock Functions
120 //
121 VOID
122 FASTCALL
125 );
126 
127 VOID
128 FASTCALL
131 );
132 
133 KIRQL
134 FASTCALL
136  _In_ KSPIN_LOCK_QUEUE_NUMBER LockNumber
137 );
138 
139 BOOLEAN
140 FASTCALL
142  _In_ KSPIN_LOCK_QUEUE_NUMBER LockNumber,
144 );
145 
146 VOID
147 FASTCALL
151 );
152 
153 
154 //
155 // Interrupt Functions
156 //
157 VOID
158 NTAPI
164  _In_ ULONG Vector,
165  _In_ KIRQL Irql,
169  _In_ CHAR ProcessorNumber,
171 );
172 
173 BOOLEAN
174 NTAPI
177 );
178 
179 BOOLEAN
180 NTAPI
183 );
184 
185 VOID
186 NTAPI
188  VOID
189 );
190 
191 VOID
192 NTAPI
194  VOID
195 );
196 
198 VOID
199 __cdecl
201  VOID
202 );
203 
204 VOID
205 NTAPI
207  VOID
208 );
209 
210 BOOLEAN
211 NTAPI
213  VOID
214 );
215 
216 BOOLEAN
217 NTAPI
219  _In_ PKTRAP_FRAME TrapFrame,
220 #ifdef _M_AMD64
221  _In_ PKEXCEPTION_FRAME ExceptionFrame
222 #else
223  _Reserved_ PKEXCEPTION_FRAME ExceptionFrame
224 #endif
225 );
226 
227 //
228 // Generic DPC Routines
229 //
230 VOID
231 NTAPI
233  _In_ PKDEFERRED_ROUTINE Routine,
235 );
236 
237 VOID
238 NTAPI
241 );
242 
243 BOOLEAN
244 NTAPI
247 );
248 
249 //
250 // ARC Configuration Functions. Only enabled if you have ARC Support
251 //
252 #ifdef _ARC_
254 NTAPI
259  _In_opt_ PULONG ComponentKey,
261 );
262 
264 NTAPI
269  _In_opt_ PULONG ComponentKey
270 );
271 #endif
272 
273 //
274 // Low-level Hardware/CPU Control Functions
275 //
276 VOID
277 NTAPI
279  _In_ BOOLEAN Invalid,
280  _In_ BOOLEAN AllProcessors
281 );
282 
283 VOID
284 NTAPI
286  _In_ ULONG Coherency
287 );
288 
289 VOID
291  _In_ ULONG Entry,
292  _In_ ULONG Value1,
293  _In_ ULONG Value2
294 );
295 
296 VOID
297 NTAPI
299  _In_ PKTRAP_FRAME TrapFrame
300 );
301 
302 VOID
303 NTAPI
305  _In_ PKTRAP_FRAME TrapFrame,
307 );
308 
309 VOID
310 NTAPI
312  _In_ KIRQL ProfileIrql
313 );
314 
315 VOID
316 NTAPI
318  _In_ ULONG MaxIncrement,
319  _In_ ULONG MinIncrement
320 );
321 
322 NTSTATUS
323 NTAPI
325  _In_ ULONG BiosCommand,
326  _Inout_ PCONTEXT BiosArguments
327 );
328 
329 //
330 // Misc. Functions
331 //
332 NTSTATUS
333 NTAPI
335  _In_ ULONG FunctionID,
336  _In_reads_opt_(InputLength) PVOID InputBuffer,
337  _In_ ULONG InputLength,
338  _Outptr_result_buffer_(*OutputLength) PVOID *OutputBuffer,
339  _Out_ PULONG OutputLength
340 );
341 
342 NTSTATUS
343 NTAPI
346 );
347 
348 #endif
349 
350 //
351 // Native Calls
352 //
354 NTSTATUS
355 NTAPI
356 NtContinue(
358  _In_ BOOLEAN TestAlert
359 );
360 
362 NTSTATUS
363 NTAPI
365  _In_ PVOID Result,
368 );
369 
371 NTSTATUS
372 NTAPI
374  _Out_ PHANDLE ProfileHandle,
376  _In_ PVOID ImageBase,
377  _In_ SIZE_T ImageSize,
378  _In_ ULONG Granularity,
380  _In_ ULONG ProfilingSize,
382  _In_ KAFFINITY ProcessorMask
383 );
384 
386 NTSTATUS
387 NTAPI
389  _Out_ PHANDLE ProfileHandle,
391  _In_ PVOID ImageBase,
392  _In_ SIZE_T ImageSize,
393  _In_ ULONG Granularity,
395  _In_ ULONG ProfilingSize,
397  _In_ USHORT GroupCount,
399 );
400 
402 NTSTATUS
403 NTAPI
407 );
408 
409 ULONG
410 NTAPI
412  VOID
413 );
414 
416 NTSTATUS
417 NTAPI
419  _In_ HANDLE ThreadHandle,
421 );
422 
424 ULONG
425 NTAPI
427  VOID
428 );
429 
431 NTSTATUS
432 NTAPI
434  _In_ KPROFILE_SOURCE ProfileSource,
436 );
437 
439 NTSTATUS
440 NTAPI
444 );
445 
447 NTSTATUS
448 NTAPI
450  _Out_ PLARGE_INTEGER CurrentTime
451 );
452 
454 NTSTATUS
455 NTAPI
457  _Out_ PULONG MinimumResolution,
458  _Out_ PULONG MaximumResolution,
459  _Out_ PULONG ActualResolution
460 );
461 
463 NTSTATUS
464 NTAPI
466  _In_ HANDLE ThreadHandle,
468  _In_opt_ PVOID NormalContext,
471 );
472 
474 NTSTATUS
475 NTAPI
477  _In_ HANDLE ThreadHandle,
478  _In_opt_ HANDLE UserApcReserveHandle,
480  _In_opt_ PVOID NormalContext,
483 );
484 
486 NTSTATUS
487 NTAPI
489  _In_ PEXCEPTION_RECORD ExceptionRecord,
491  _In_ BOOLEAN SearchFrames
492 );
493 
495 NTSTATUS
496 NTAPI
498  _In_ HANDLE ThreadHandle,
500 );
501 
503 NTSTATUS
504 NTAPI
507  _In_ KPROFILE_SOURCE ClockSource
508 );
509 
511 NTSTATUS
512 NTAPI
514  _In_ ULONG Selector1,
515  _In_ LDT_ENTRY LdtEntry1,
516  _In_ ULONG Selector2,
517  _In_ LDT_ENTRY LdtEntry2
518 );
519 
521 NTSTATUS
522 NTAPI
524  _In_ PLARGE_INTEGER SystemTime,
525  _In_opt_ PLARGE_INTEGER NewSystemTime
526 );
527 
529 NTSTATUS
530 NTAPI
532  _In_ ULONG RequestedResolution,
533  _In_ BOOLEAN SetOrUnset,
534  _Out_ PULONG ActualResolution
535 );
536 
538 NTSTATUS
539 NTAPI
541  _In_ HANDLE ProfileHandle
542 );
543 
545 NTSTATUS
546 NTAPI
548  _In_ HANDLE ProfileHandle
549 );
550 
552 NTSTATUS
553 NTAPI
555  VOID
556 );
557 
559 NTSTATUS
560 NTAPI
563  _In_ PVOID ControlData
564 );
565 
567 NTSTATUS
568 NTAPI
569 NtW32Call(
570  _In_ ULONG RoutineIndex,
571  _In_ PVOID Argument,
572  _In_ ULONG ArgumentLength,
575 );
576 
578 NTSTATUS
579 NTAPI
581  VOID
582 );
583 
584 NTSYSAPI
585 NTSTATUS
586 NTAPI
587 ZwContinue(
589  _In_ BOOLEAN TestAlert
590 );
591 
592 NTSYSAPI
593 NTSTATUS
594 NTAPI
596  _In_ PVOID Result,
599 );
600 
601 NTSYSAPI
602 NTSTATUS
603 NTAPI
605  _Out_ PHANDLE ProfileHandle,
607  _In_ PVOID ImageBase,
608  _In_ ULONG ImageSize,
609  _In_ ULONG Granularity,
611  _In_ ULONG ProfilingSize,
613  _In_ KAFFINITY ProcessorMask
614 );
615 
616 NTSYSAPI
617 NTSTATUS
618 NTAPI
622 );
623 
624 NTSYSAPI
625 NTSTATUS
626 NTAPI
630  _In_ ULONG NumberOfBytesToFlush
631 );
632 
633 NTSYSAPI
634 NTSTATUS
635 NTAPI
637  _In_ HANDLE ThreadHandle,
639 );
640 
641 NTSYSAPI
642 ULONG
643 NTAPI
645  VOID
646 );
647 
648 NTSYSAPI
649 NTSTATUS
650 NTAPI
652  _In_ KPROFILE_SOURCE ProfileSource,
654 );
655 
656 NTSYSAPI
657 NTSTATUS
658 NTAPI
662 );
663 
664 NTSYSAPI
665 NTSTATUS
666 NTAPI
668  _Out_ PLARGE_INTEGER CurrentTime
669 );
670 
671 NTSYSAPI
672 NTSTATUS
673 NTAPI
675  _Out_ PULONG MinimumResolution,
676  _Out_ PULONG MaximumResolution,
677  _Out_ PULONG ActualResolution
678 );
679 
680 NTSYSAPI
681 NTSTATUS
682 NTAPI
684  _In_ HANDLE ThreadHandle,
686  _In_opt_ PVOID NormalContext,
689 );
690 
691 NTSYSAPI
692 NTSTATUS
693 NTAPI
695  _In_ PEXCEPTION_RECORD ExceptionRecord,
697  _In_ BOOLEAN SearchFrames
698 );
699 
700 NTSYSAPI
701 NTSTATUS
702 NTAPI
704  _In_ HANDLE ThreadHandle,
706 );
707 
708 NTSYSAPI
709 NTSTATUS
710 NTAPI
713  _In_ KPROFILE_SOURCE ClockSource
714 );
715 
716 NTSYSAPI
717 NTSTATUS
718 NTAPI
720  _In_ ULONG Selector1,
721  _In_ LDT_ENTRY LdtEntry1,
722  _In_ ULONG Selector2,
723  _In_ LDT_ENTRY LdtEntry2
724 );
725 
726 NTSYSAPI
727 NTSTATUS
728 NTAPI
730  _In_ PLARGE_INTEGER SystemTime,
731  _In_opt_ PLARGE_INTEGER NewSystemTime
732 );
733 
734 NTSYSAPI
735 NTSTATUS
736 NTAPI
738  _In_ ULONG RequestedResolution,
739  _In_ BOOLEAN SetOrUnset,
740  _Out_ PULONG ActualResolution
741 );
742 
743 NTSYSAPI
744 NTSTATUS
745 NTAPI
747  _In_ HANDLE ProfileHandle
748 );
749 
750 NTSYSAPI
751 NTSTATUS
752 NTAPI
754  _In_ HANDLE ProfileHandle
755 );
756 
757 NTSYSAPI
758 NTSTATUS
759 NTAPI
761  VOID
762 );
763 
764 NTSYSAPI
765 NTSTATUS
766 NTAPI
769  _In_ PVOID ControlData
770 );
771 
772 NTSYSAPI
773 NTSTATUS
774 NTAPI
775 ZwW32Call(
776  _In_ ULONG RoutineIndex,
777  _In_ PVOID Argument,
778  _In_ ULONG ArgumentLength,
781 );
782 
783 NTSYSAPI
784 NTSTATUS
785 NTAPI
787  VOID
788 );
789 #endif
790 
791 #ifdef __cplusplus
792 } // extern "C"
793 #endif
NTSYSAPI NTSTATUS NTAPI ZwW32Call(_In_ ULONG RoutineIndex, _In_ PVOID Argument, _In_ ULONG ArgumentLength, _Out_opt_ PVOID *Result, _Out_opt_ PULONG ResultLength)
NTSYSAPI NTSTATUS NTAPI ZwQueryPerformanceCounter(_Out_ PLARGE_INTEGER Counter, _Out_opt_ PLARGE_INTEGER Frequency)
_Inout_ PIRP _In_ NTSTATUS ExceptionCode
Definition: cdprocs.h:1772
BOOLEAN NTAPI KeDisconnectInterrupt(_Inout_ PKINTERRUPT InterruptObject)
VOID NTAPI KeInitializeApc(_In_ PKAPC Apc, _In_ PKTHREAD Thread, _In_ KAPC_ENVIRONMENT TargetEnvironment, _In_ PKKERNEL_ROUTINE KernelRoutine, _In_opt_ PKRUNDOWN_ROUTINE RundownRoutine, _In_ PKNORMAL_ROUTINE NormalRoutine, _In_ KPROCESSOR_MODE Mode, _In_ PVOID Context)
VOID NTAPI KiCoprocessorError(VOID)
Definition: cpu.c:1350
NTSYSCALLAPI NTSTATUS NTAPI NtYieldExecution(VOID)
Definition: thrdschd.c:744
NTSYSAPI NTSTATUS NTAPI ZwFlushInstructionCache(_In_ HANDLE ProcessHandle, _In_ PVOID BaseAddress, _In_ ULONG NumberOfBytesToFlush)
NTSYSCALLAPI NTSTATUS NTAPI NtCreateProfile(_Out_ PHANDLE ProfileHandle, _In_ HANDLE ProcessHandle, _In_ PVOID ImageBase, _In_ SIZE_T ImageSize, _In_ ULONG Granularity, _Out_ PVOID Buffer, _In_ ULONG ProfilingSize, _In_ KPROFILE_SOURCE Source, _In_ KAFFINITY ProcessorMask)
NTSYSCALLAPI NTSTATUS NTAPI NtSetContextThread(_In_ HANDLE ThreadHandle, _In_ PCONTEXT Context)
NTSTATUS NTAPI KeUserModeCallback(_In_ ULONG FunctionID, _In_reads_opt_(InputLength) PVOID InputBuffer, _In_ ULONG InputLength, _Outptr_result_buffer_(*OutputLength) PVOID *OutputBuffer, _Out_ PULONG OutputLength)
NTSYSAPI NTSTATUS NTAPI ZwTestAlert(VOID)
_In_ LONG Count
Definition: kefuncs.h:315
_In_ PKSERVICE_ROUTINE _In_opt_ PVOID _In_opt_ PKSPIN_LOCK _In_ ULONG _In_ KIRQL _In_ KIRQL _In_ KINTERRUPT_MODE InterruptMode
Definition: iofuncs.h:800
BOOLEAN NTAPI KeConnectInterrupt(_Inout_ PKINTERRUPT InterruptObject)
#define _In_opt_
Definition: ms_sal.h:309
VOID NTAPI KeEnterKernelDebugger(VOID)
Definition: bug.c:1438
KAFFINITY NTAPI KeSetAffinityThread(_Inout_ PKTHREAD Thread, _In_ KAFFINITY Affinity)
enum _KAPC_ENVIRONMENT KAPC_ENVIRONMENT
#define _Inout_
Definition: ms_sal.h:378
#define __cdecl
Definition: accygwin.h:79
_In_ ULONG Mode
Definition: hubbusif.h:303
#define _Out_
Definition: ms_sal.h:345
_In_ PKSERVICE_ROUTINE _In_opt_ PVOID _In_opt_ PKSPIN_LOCK _In_ ULONG _In_ KIRQL _In_ KIRQL _In_ KINTERRUPT_MODE _In_ BOOLEAN ShareVector
Definition: iofuncs.h:800
NTSYSAPI NTSTATUS NTAPI ZwStopProfile(_In_ HANDLE ProfileHandle)
unsigned char * PUCHAR
Definition: retypes.h:3
char CHAR
Definition: xmlstorage.h:175
VOID NTAPI KiDeliverApc(_In_ KPROCESSOR_MODE PreviousMode, _Reserved_ PKEXCEPTION_FRAME ExceptionFrame, _In_ PKTRAP_FRAME TrapFrame)
BOOLEAN FASTCALL KeTryToAcquireQueuedSpinLockRaiseToSynch(_In_ KSPIN_LOCK_QUEUE_NUMBER LockNumber, _In_ PKIRQL OldIrql)
BOOLEAN NTAPI KeIsAttachedProcess(VOID)
Definition: procobj.c:693
NTSYSAPI NTSTATUS NTAPI ZwStartProfile(_In_ HANDLE ProfileHandle)
LONG NTSTATUS
Definition: precomp.h:26
NTSYSAPI NTSTATUS NTAPI ZwRaiseException(_In_ PEXCEPTION_RECORD ExceptionRecord, _In_ PCONTEXT Context, _In_ BOOLEAN SearchFrames)
_In_opt_ ULONG Base
Definition: rtlfuncs.h:2386
NTSYSAPI NTSTATUS NTAPI ZwDelayExecution(_In_ BOOLEAN Alertable, _In_ LARGE_INTEGER *Interval)
NTSYSCALLAPI NTSTATUS NTAPI NtQuerySystemTime(_Out_ PLARGE_INTEGER CurrentTime)
NTSYSCALLAPI NTSTATUS NTAPI NtStopProfile(_In_ HANDLE ProfileHandle)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryIntervalProfile(_In_ KPROFILE_SOURCE ProfileSource, _Out_ PULONG Interval)
#define NTSYSCALLAPI
Definition: ntbasedef.h:204
VOID FASTCALL KiAcquireSpinLock(_Inout_ PKSPIN_LOCK SpinLock)
NTSYSAPI ULONG NTAPI ZwGetTickCount(VOID)
VOID NTAPI KeSetEventBoostPriority(_In_ PKEVENT Event, _In_opt_ PKTHREAD *Thread)
NTSYSAPI NTSTATUS NTAPI ZwGetContextThread(_In_ HANDLE ThreadHandle, _Out_ PCONTEXT Context)
BOOLEAN NTAPI KeInsertQueueApc(_In_ PKAPC Apc, _In_ PVOID SystemArgument1, _In_ PVOID SystemArgument2, _In_ KPRIORITY PriorityBoost)
KSPIN_LOCK * PKSPIN_LOCK
Definition: env_spec_w32.h:73
BOOLEAN NTAPI KeIsExecutingDpc(VOID)
Definition: dpc.c:947
VOID NTAPI KeProfileInterruptWithSource(_In_ PKTRAP_FRAME TrapFrame, _In_ KPROFILE_SOURCE Source)
#define FASTCALL
Definition: nt_native.h:50
#define NTSYSAPI
Definition: ntoskrnl.h:14
_Out_ PKIRQL Irql
Definition: csq.h:179
#define _In_reads_opt_(size)
Definition: ms_sal.h:320
#define DECLSPEC_NORETURN
Definition: ntbasedef.h:176
LONG KPRIORITY
Definition: compat.h:662
NTSYSCALLAPI NTSTATUS NTAPI NtSetSystemTime(_In_ PLARGE_INTEGER SystemTime, _In_opt_ PLARGE_INTEGER NewSystemTime)
NTSYSCALLAPI NTSTATUS NTAPI NtSetLdtEntries(_In_ ULONG Selector1, _In_ LDT_ENTRY LdtEntry1, _In_ ULONG Selector2, _In_ LDT_ENTRY LdtEntry2)
KSERVICE_ROUTINE * PKSERVICE_ROUTINE
Definition: ketypes.h:500
PCONFIGURATION_COMPONENT_DATA NTAPI KeFindConfigurationEntry(IN PCONFIGURATION_COMPONENT_DATA Child, IN CONFIGURATION_CLASS Class, IN CONFIGURATION_TYPE Type, IN PULONG ComponentKey OPTIONAL)
Definition: config.c:22
#define _Reserved_
Definition: ms_sal.h:295
NTSYSAPI NTSTATUS NTAPI ZwContinue(_In_ PCONTEXT Context, _In_ BOOLEAN TestAlert)
NTSYSAPI NTSTATUS NTAPI ZwCallbackReturn(_In_ PVOID Result, _In_ ULONG ResultLength, _In_ NTSTATUS Status)
NTSYSCALLAPI NTSTATUS NTAPI NtRaiseException(_In_ PEXCEPTION_RECORD ExceptionRecord, _In_ PCONTEXT Context, _In_ BOOLEAN SearchFrames)
UCHAR KIRQL
Definition: env_spec_w32.h:591
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
NTSYSAPI NTSTATUS NTAPI ZwQueryTimerResolution(_Out_ PULONG MinimumResolution, _Out_ PULONG MaximumResolution, _Out_ PULONG ActualResolution)
_In_ WDFREQUEST _In_ NTSTATUS _In_ CCHAR PriorityBoost
Definition: wdfrequest.h:1011
_Must_inspect_result_ _In_ WDFDEVICE _In_ WDFDEVICE Child
Definition: wdffdo.h:533
_Must_inspect_result_ _In_opt_ PWDF_OBJECT_ATTRIBUTES _Out_ WDFSPINLOCK * SpinLock
Definition: wdfsync.h:225
VOID NTAPI KeSetDmaIoCoherency(_In_ ULONG Coherency)
NTSYSAPI NTSTATUS NTAPI ZwYieldExecution(VOID)
unsigned char BOOLEAN
enum _KPROFILE_SOURCE KPROFILE_SOURCE
PKPROCESS NTAPI KeGetCurrentProcess(VOID)
enum _KINTERRUPT_MODE KINTERRUPT_MODE
_In_ PKSERVICE_ROUTINE _In_opt_ PVOID _In_opt_ PKSPIN_LOCK _In_ ULONG _In_ KIRQL _In_ KIRQL SynchronizeIrql
Definition: iofuncs.h:800
_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:426
#define _In_
Definition: ms_sal.h:308
VOID(NTAPI * PKKERNEL_ROUTINE)(IN struct _KAPC *Apc, IN OUT PKNORMAL_ROUTINE *NormalRoutine OPTIONAL, IN OUT PVOID *NormalContext OPTIONAL, IN OUT PVOID *SystemArgument1 OPTIONAL, IN OUT PVOID *SystemArgument2 OPTIONAL)
Definition: ketypes.h:684
_IRQL_requires_same_ typedef _In_ ULONG ControlCode
Definition: wmitypes.h:55
Definition: bufpool.h:45
_In_ KPRIORITY Increment
Definition: kefuncs.h:88
NTSYSAPI NTSTATUS NTAPI ZwQuerySystemTime(_Out_ PLARGE_INTEGER CurrentTime)
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR OutputBuffer
Definition: wdfiotarget.h:859
VOID NTAPI KeSetTimeIncrement(_In_ ULONG MaxIncrement, _In_ ULONG MinIncrement)
Status
Definition: gdiplustypes.h:24
_In_opt_ PVOID _In_opt_ PVOID SystemArgument1
Definition: ketypes.h:675
NTSYSAPI NTSTATUS NTAPI ZwSetTimerResolution(_In_ ULONG RequestedResolution, _In_ BOOLEAN SetOrUnset, _Out_ PULONG ActualResolution)
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR InputBuffer
Definition: wdfiotarget.h:949
_In_ KPROCESSOR_MODE PreviousMode
Definition: sefuncs.h:103
_In_ HANDLE _Outptr_result_bytebuffer_ ViewSize PVOID * BaseAddress
Definition: mmfuncs.h:404
NTSYSAPI NTSTATUS NTAPI ZwVdmControl(_In_ ULONG ControlCode, _In_ PVOID ControlData)
VOID(NTAPI * PKRUNDOWN_ROUTINE)(IN struct _KAPC *Apc)
Definition: ketypes.h:680
VOID FASTCALL KeAcquireInStackQueuedSpinLockRaiseToSynch(_In_ PKSPIN_LOCK SpinLock, _In_ PKLOCK_QUEUE_HANDLE LockHandle)
_In_ WDFCOLLECTION _In_ ULONG Index
NTSYSAPI NTSTATUS NTAPI ZwSetContextThread(_In_ HANDLE ThreadHandle, _In_ PCONTEXT Context)
NTSYSAPI NTSTATUS NTAPI ZwSetIntervalProfile(_In_ ULONG Interval, _In_ KPROFILE_SOURCE ClockSource)
NTSYSCALLAPI NTSTATUS NTAPI NtDelayExecution(_In_ BOOLEAN Alertable, _In_ LARGE_INTEGER *Interval)
NTSYSCALLAPI NTSTATUS NTAPI NtStartProfile(_In_ HANDLE ProfileHandle)
Type
Definition: Type.h:6
_In_ ULONG _In_ ULONG _In_ ULONG _Out_ PKIRQL _Out_ PKAFFINITY Affinity
Definition: halfuncs.h:170
_In_opt_ PFILE_OBJECT _In_opt_ PETHREAD Thread
Definition: fltkernel.h:2652
NTSYSCALLAPI ULONG NTAPI NtGetTickCount(VOID)
_In_ BOOLEAN Alertable
Definition: kefuncs.h:270
NTSYSCALLAPI NTSTATUS NTAPI NtContinue(_In_ PCONTEXT Context, _In_ BOOLEAN TestAlert)
CCHAR KPROCESSOR_MODE
Definition: ketypes.h:7
DECLSPEC_NORETURN VOID __cdecl KiUnexpectedInterrupt(VOID)
Definition: interrupt.c:51
_In_ PKSERVICE_ROUTINE _In_opt_ PVOID ServiceContext
Definition: iofuncs.h:800
_In_opt_ HANDLE _In_opt_ PIO_APC_ROUTINE ApcRoutine
Definition: iofuncs.h:719
VOID NTAPI KeInitializeInterrupt(_Out_ PKINTERRUPT InterruptObject, _In_ PKSERVICE_ROUTINE ServiceRoutine, _In_ PVOID ServiceContext, _In_ PKSPIN_LOCK SpinLock, _In_ ULONG Vector, _In_ KIRQL Irql, _In_ KIRQL SynchronizeIrql, _In_ KINTERRUPT_MODE InterruptMode, _In_ BOOLEAN ShareVector, _In_ CHAR ProcessorNumber, _In_ BOOLEAN FloatingSave)
NTSTATUS NTAPI Ke386CallBios(_In_ ULONG BiosCommand, _Inout_ PCONTEXT BiosArguments)
NTSYSAPI NTSTATUS NTAPI ZwSetLdtEntries(_In_ ULONG Selector1, _In_ LDT_ENTRY LdtEntry1, _In_ ULONG Selector2, _In_ LDT_ENTRY LdtEntry2)
VOID FASTCALL KiReleaseSpinLock(_Inout_ PKSPIN_LOCK SpinLock)
NTSYSCALLAPI NTSTATUS NTAPI NtTestAlert(VOID)
Definition: state.c:465
VOID NTAPI KeSetProfileIrql(_In_ KIRQL ProfileIrql)
_Requires_lock_held_ Interrupt _Releases_lock_ Interrupt _In_ _IRQL_restores_ KIRQL OldIrql
Definition: kefuncs.h:790
KDEFERRED_ROUTINE * PKDEFERRED_ROUTINE
Definition: ketypes.h:678
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:454
ULONG NTAPI NtGetCurrentProcessorNumber(VOID)
Definition: sysinfo.c:3054
_In_ PKSERVICE_ROUTINE _In_opt_ PVOID _In_opt_ PKSPIN_LOCK _In_ ULONG _In_ KIRQL _In_ KIRQL _In_ KINTERRUPT_MODE _In_ BOOLEAN _In_ KAFFINITY _In_ BOOLEAN FloatingSave
Definition: iofuncs.h:800
KIRQL * PKIRQL
Definition: env_spec_w32.h:592
Definition: ketypes.h:535
CONFIGURATION_TYPE
Definition: iotypes.h:4393
NTSYSCALLAPI NTSTATUS NTAPI NtQueryTimerResolution(_Out_ PULONG MinimumResolution, _Out_ PULONG MaximumResolution, _Out_ PULONG ActualResolution)
NTSYSCALLAPI NTSTATUS NTAPI NtQueueApcThread(_In_ HANDLE ThreadHandle, _In_ PKNORMAL_ROUTINE ApcRoutine, _In_opt_ PVOID NormalContext, _In_opt_ PVOID SystemArgument1, _In_opt_ PVOID SystemArgument2)
#define _In_reads_(size)
Definition: ms_sal.h:319
_In_opt_ PENTER_STATE_SYSTEM_HANDLER _In_opt_ PVOID _In_ LONG _In_opt_ LONG volatile * Number
Definition: ntpoapi.h:204
BOOLEAN NTAPI KiIpiServiceRoutine(_In_ PKTRAP_FRAME TrapFrame, _Reserved_ PKEXCEPTION_FRAME ExceptionFrame)
_In_opt_ PVOID _In_opt_ PVOID _In_opt_ PVOID SystemArgument2
Definition: ketypes.h:675
BOOLEAN NTAPI KeSignalCallDpcSynchronize(_In_ PVOID SystemArgument2)
Definition: compat.h:636
VOID NTAPI KeFlushEntireTb(_In_ BOOLEAN Invalid, _In_ BOOLEAN AllProcessors)
enum _CONFIGURATION_CLASS CONFIGURATION_CLASS
ULONG_PTR SIZE_T
Definition: typedefs.h:80
enum _KSPIN_LOCK_QUEUE_NUMBER KSPIN_LOCK_QUEUE_NUMBER
NTSYSCALLAPI NTSTATUS NTAPI NtVdmControl(_In_ ULONG ControlCode, _In_ PVOID ControlData)
unsigned short USHORT
Definition: pedump.c:61
ULONG_PTR KAFFINITY
Definition: compat.h:85
NTSYSCALLAPI NTSTATUS NTAPI NtSetTimerResolution(_In_ ULONG RequestedResolution, _In_ BOOLEAN SetOrUnset, _Out_ PULONG ActualResolution)
VOID NTAPI KeGenericCallDpc(_In_ PKDEFERRED_ROUTINE Routine, _In_ PVOID Context)
#define _Out_opt_
Definition: ms_sal.h:346
unsigned int * PULONG
Definition: retypes.h:1
NTSYSCALLAPI NTSTATUS NTAPI NtSetIntervalProfile(_In_ ULONG Interval, _In_ KPROFILE_SOURCE ClockSource)
static LARGE_INTEGER Frequency
Definition: clock.c:41
VOID KeSetGdtSelector(_In_ ULONG Entry, _In_ ULONG Value1, _In_ ULONG Value2)
VOID NTAPI KiDispatchInterrupt(VOID)
Definition: thrdini.c:295
static LARGE_INTEGER Counter
Definition: clock.c:43
KIRQL FASTCALL KeAcquireQueuedSpinLockRaiseToSynch(_In_ KSPIN_LOCK_QUEUE_NUMBER LockNumber)
NTSTATUS NTAPI KeRaiseUserException(_In_ NTSTATUS ExceptionCode)
Definition: exp.c:266
VOID NTAPI KeTerminateThread(_In_ KPRIORITY Increment)
unsigned int ULONG
Definition: retypes.h:1
NTSYSAPI NTSTATUS NTAPI ZwSetSystemTime(_In_ PLARGE_INTEGER SystemTime, _In_opt_ PLARGE_INTEGER NewSystemTime)
uint32_t * PULONG_PTR
Definition: typedefs.h:65
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG _Out_ PULONG ResultLength
Definition: wdfdevice.h:3776
_In_ UINT _In_ UINT _In_ PNDIS_PACKET Source
Definition: ndis.h:3167
#define _Outptr_result_buffer_(size)
Definition: ms_sal.h:456
NTSYSCALLAPI NTSTATUS NTAPI NtCallbackReturn(_In_ PVOID Result, _In_ ULONG ResultLength, _In_ NTSTATUS Status)
Definition: usercall.c:329
*LockHandle LockHandle _Out_ PKLOCK_QUEUE_HANDLE LockHandle
Definition: kefuncs.h:729
NTSYSAPI NTSTATUS NTAPI ZwQueueApcThread(_In_ HANDLE ThreadHandle, _In_ PKNORMAL_ROUTINE ApcRoutine, _In_opt_ PVOID NormalContext, _In_opt_ PVOID SystemArgument1, _In_opt_ PVOID SystemArgument2)
_In_ BOOLEAN _In_ PLARGE_INTEGER Interval
Definition: kefuncs.h:270
PCONFIGURATION_COMPONENT_DATA NTAPI KeFindConfigurationNextEntry(IN PCONFIGURATION_COMPONENT_DATA Child, IN CONFIGURATION_CLASS Class, IN CONFIGURATION_TYPE Type, IN PULONG ComponentKey OPTIONAL, IN PCONFIGURATION_COMPONENT_DATA *NextLink)
Definition: config.c:42
VOID(NTAPI * PKNORMAL_ROUTINE)(IN PVOID NormalContext OPTIONAL, IN PVOID SystemArgument1 OPTIONAL, IN PVOID SystemArgument2 OPTIONAL)
Definition: ketypes.h:674
NTSYSCALLAPI NTSTATUS NTAPI NtCreateProfileEx(_Out_ PHANDLE ProfileHandle, _In_ HANDLE ProcessHandle, _In_ PVOID ImageBase, _In_ SIZE_T ImageSize, _In_ ULONG Granularity, _Out_ PVOID Buffer, _In_ ULONG ProfilingSize, _In_ KPROFILE_SOURCE Source, _In_ USHORT GroupCount, _In_reads_(GroupCount) PGROUP_AFFINITY Affinity)
_In_ HANDLE ProcessHandle
Definition: mmfuncs.h:403
NTSYSCALLAPI NTSTATUS NTAPI NtGetContextThread(_In_ HANDLE ThreadHandle, _Out_ PCONTEXT Context)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryPerformanceCounter(_Out_ PLARGE_INTEGER Counter, _Out_opt_ PLARGE_INTEGER Frequency)
VOID NTAPI KeSignalCallDpcDone(_In_ PVOID SystemArgument1)
NTSYSAPI NTSTATUS NTAPI ZwQueryIntervalProfile(_In_ KPROFILE_SOURCE ProfileSource, _Out_ PULONG Interval)
NTSYSAPI NTSTATUS NTAPI ZwCreateProfile(_Out_ PHANDLE ProfileHandle, _In_ HANDLE ProcessHandle, _In_ PVOID ImageBase, _In_ ULONG ImageSize, _In_ ULONG Granularity, _Out_ PVOID Buffer, _In_ ULONG ProfilingSize, _In_ KPROFILE_SOURCE Source, _In_ KAFFINITY ProcessorMask)
NTSYSCALLAPI NTSTATUS NTAPI NtW32Call(_In_ ULONG RoutineIndex, _In_ PVOID Argument, _In_ ULONG ArgumentLength, _Out_opt_ PVOID *Result, _Out_opt_ PULONG ResultLength)
BOOLEAN NTAPI KeAddSystemServiceTable(_In_ PULONG_PTR Base, _In_opt_ PULONG Count, _In_ ULONG Limit, _In_ PUCHAR Number, _In_ ULONG Index)
_In_ LONG _In_ LONG Limit
Definition: kefuncs.h:315
base of all file and directory entries
Definition: entries.h:82
VOID NTAPI KeProfileInterrupt(_In_ PKTRAP_FRAME TrapFrame)
NTSYSCALLAPI NTSTATUS NTAPI NtQueueApcThreadEx(_In_ HANDLE ThreadHandle, _In_opt_ HANDLE UserApcReserveHandle, _In_ PKNORMAL_ROUTINE ApcRoutine, _In_opt_ PVOID NormalContext, _In_opt_ PVOID SystemArgument1, _In_opt_ PVOID SystemArgument2)
_In_ PKSERVICE_ROUTINE ServiceRoutine
Definition: iofuncs.h:800