ReactOS 0.4.15-dev-8241-g63935f8
iofuncs.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 iofuncs.h
8
9Abstract:
10
11 Function definitions for the I/O Manager.
12
13Author:
14
15 Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006
16
17--*/
18
19#ifndef _IOFUNCS_H
20#define _IOFUNCS_H
21
22//
23// Dependencies
24//
25#include <umtypes.h>
26#include <iotypes.h>
27
28#ifdef __cplusplus
29extern "C" {
30#endif
31
32//
33// I/O Functions
34//
35#ifndef NTOS_MODE_USER
36VOID
39 _In_ struct _LOADER_PARAMETER_BLOCK *LoaderBlock,
40 _In_ PSTRING NtDeviceName,
41 _Out_ PUCHAR NtSystemPath,
42 _Out_ PSTRING NtSystemPathString
43);
44
50);
51
55 _In_opt_ PUNICODE_STRING DriverName,
56 _In_ PDRIVER_INITIALIZE InitializationFunction
57);
58
59VOID
63);
64
69 _In_ PCM_RESOURCE_LIST RawResourceList,
70 _In_ PCM_RESOURCE_LIST TranslatedResourceList,
71 _In_ ULONG ResourceListSize
72);
73#endif
74
75//
76// Native calls
77//
82 _In_ PBOOT_ENTRY BootEntry,
84);
85
90 _In_ PEFI_DRIVER_ENTRY BootEntry,
92);
93
100);
101
105NTAPI
118);
119
122NTAPI
124 _Out_ PHANDLE IoCompletionHandle,
127 _In_ ULONG NumberOfConcurrentThreads
128);
129
132NTAPI
134 _Out_ PHANDLE MailSlotFileHandle,
140 _In_ ULONG MaxMessageSize,
141 _In_ PLARGE_INTEGER TimeOut
142);
143
146NTAPI
148 _Out_ PHANDLE NamedPipeFileHandle,
155 _In_ ULONG WriteModeMessage,
156 _In_ ULONG ReadModeMessage,
157 _In_ ULONG NonBlocking,
158 _In_ ULONG MaxInstances,
161 _In_ PLARGE_INTEGER DefaultTimeOut
162);
163
164
167NTAPI
170);
171
174NTAPI
177);
178
181NTAPI
184);
185
189NTAPI
201);
202
205NTAPI
209);
210
213NTAPI
217);
218
221NTAPI
225);
226
229NTAPI
231
235NTAPI
247);
248
251NTAPI
253 _In_ PUNICODE_STRING DriverServiceName
254);
255
258NTAPI
267 _In_ ULONG Key,
268 _In_ BOOLEAN FailImmediatedly,
270);
271
274NTAPI
276 _In_ PBOOT_ENTRY BootEntry
277);
278
281NTAPI
284);
285
288NTAPI
299);
300
303NTAPI
311);
312
315NTAPI
317 _Out_ PHANDLE CompetionPort,
320);
321
324NTAPI
328);
329
331NTAPI
333 _In_ PULONG Ids,
335);
336
339NTAPI
341 _In_ PULONG Ids,
343);
344
347NTAPI
350 _In_ PULONG BootOptionsLength
351);
352
356NTAPI
369);
370
373NTAPI
380 _In_opt_ PVOID EaList,
384);
385
388NTAPI
392);
393
397NTAPI
404);
405
408NTAPI
410 _In_ HANDLE IoCompletionHandle,
411 _In_ IO_COMPLETION_INFORMATION_CLASS IoCompletionInformationClass,
412 _Out_ PVOID IoCompletionInformation,
413 _In_ ULONG IoCompletionInformationLength,
415);
416
420NTAPI
429 _In_reads_bytes_opt_((8 + (4 * ((SID *)StartSid)->SubAuthorityCount))) // SeLengthSid()
432);
433
437NTAPI
441 _Out_writes_bytes_(Length) PVOID FsInformation,
444);
445
449NTAPI
460);
461
464NTAPI
468 _In_opt_ PIO_APC_ROUTINE UserApcRoutine,
469 _In_opt_ PVOID UserApcContext,
470 _Out_ PIO_STATUS_BLOCK UserIoStatusBlock,
471 _In_ FILE_SEGMENT_ELEMENT BufferDescription[],
475);
476
479NTAPI
481 _In_ HANDLE IoCompletionHandle,
482 _Out_ PVOID *CompletionKey,
486);
487
490NTAPI
492 _In_ PULONG Ids,
494);
495
498NTAPI
501 _In_ ULONG FieldsToChange
502);
503
505NTAPI
507 _In_ PULONG Ids,
509);
510
513NTAPI
518 ULONG EaBufferSize
519);
520
524NTAPI
531);
532
535NTAPI
537 _In_ HANDLE IoCompletionPortHandle,
538 _In_ PVOID CompletionKey,
540 _In_ NTSTATUS CompletionStatus,
541 _In_ ULONG CompletionInformation
542);
543
546NTAPI
552);
553
557NTAPI
561 _In_reads_bytes_(Length) PVOID FsInformation,
564);
565
568NTAPI
570 PFILE_PATH InputFilePath,
571 ULONG OutputType,
572 PFILE_PATH OutputFilePath,
573 ULONG OutputFilePathLength
574);
575
578NTAPI
580 _In_ PUNICODE_STRING DriverServiceName
581);
582
586NTAPI
593);
594
598NTAPI
609);
610
613NTAPI
620 _In_ FILE_SEGMENT_ELEMENT BufferDescription[],
624);
625
628NTAPI
630 _In_ PUNICODE_STRING EntryName,
631 _In_ PUNICODE_STRING EntryValue
632);
633
636NTAPI
640);
641
645NTAPI
646ZwCreateFile(
658);
659
662NTAPI
664 _Out_ PHANDLE IoCompletionHandle,
667 _In_ ULONG NumberOfConcurrentThreads
668);
669
672NTAPI
674 _Out_ PHANDLE MailSlotFileHandle,
680 _In_ ULONG MaxMessageSize,
681 _In_ PLARGE_INTEGER TimeOut
682);
683
686NTAPI
688 _Out_ PHANDLE NamedPipeFileHandle,
695 _In_ ULONG WriteModeMessage,
696 _In_ ULONG ReadModeMessage,
697 _In_ ULONG NonBlocking,
698 _In_ ULONG MaxInstances,
701 _In_ PLARGE_INTEGER DefaultTimeOut
702);
703
706NTAPI
708 _In_ PUNICODE_STRING EntryName,
709 _In_ PUNICODE_STRING EntryValue
710);
711
714NTAPI
717);
718
722NTAPI
734);
735
739NTAPI
743);
744
747NTAPI
749
753NTAPI
765);
766
767#ifdef NTOS_MODE_USER
770NTAPI
771ZwLoadDriver(
772 _In_ PUNICODE_STRING DriverServiceName
773);
774#endif
775
778NTAPI
787 _In_ ULONG Key,
788 _In_ BOOLEAN FailImmediatedly,
790);
791
794NTAPI
805);
806
809NTAPI
817);
818
821NTAPI
823 _Out_ PHANDLE CompetionPort,
826);
827
830NTAPI
834);
835
839NTAPI
840ZwQueryDirectoryFile(
852);
853
854#ifdef NTOS_MODE_USER
857NTAPI
858ZwQueryEaFile(
864 _In_opt_ PVOID EaList,
868);
869#endif
870
873NTAPI
877);
878
882NTAPI
883ZwQueryInformationFile(
889);
890
893NTAPI
895 _In_ HANDLE IoCompletionHandle,
896 _In_ IO_COMPLETION_INFORMATION_CLASS IoCompletionInformationClass,
897 _Out_ PVOID IoCompletionInformation,
898 _In_ ULONG IoCompletionInformationLength,
900);
901
904NTAPI
911 _In_opt_ PVOID SidList,
915);
916
920NTAPI
924 _Out_writes_bytes_(Length) PVOID FsInformation,
927);
928
932NTAPI
933ZwReadFile(
943);
944
947NTAPI
951 _In_opt_ PIO_APC_ROUTINE UserApcRoutine,
952 _In_opt_ PVOID UserApcContext,
953 _Out_ PIO_STATUS_BLOCK UserIoStatusBlock,
954 _In_ FILE_SEGMENT_ELEMENT BufferDescription[],
958);
959
962NTAPI
964 _In_ HANDLE IoCompletionHandle,
965 _Out_ PVOID *CompletionKey,
969);
970
971#ifdef NTOS_MODE_USER
974NTAPI
975ZwSetEaFile(
979 ULONG EaBufferSize
980);
981#endif
982
986NTAPI
987ZwSetInformationFile(
993);
994
997NTAPI
999 _In_ HANDLE IoCompletionPortHandle,
1000 _In_ PVOID CompletionKey,
1002 _In_ NTSTATUS CompletionStatus,
1003 _In_ ULONG CompletionInformation
1004);
1005
1008NTAPI
1014);
1015
1019NTAPI
1020ZwSetVolumeInformationFile(
1023 _In_reads_bytes_(Length) PVOID FsInformation,
1026);
1027
1030NTAPI
1032 _In_ PUNICODE_STRING DriverServiceName
1033);
1034
1037NTAPI
1044);
1045
1049NTAPI
1050ZwWriteFile(
1060);
1061
1064NTAPI
1071 _In_ FILE_SEGMENT_ELEMENT BufferDescription[],
1075);
1076
1077#ifdef __cplusplus
1078}
1079#endif
1080
1081#endif
1082
1083
DWORD Id
unsigned char BOOLEAN
Type
Definition: Type.h:7
LONG NTSTATUS
Definition: precomp.h:26
@ BootOptions
Definition: bl.h:898
#define NTSYSAPI
Definition: ntoskrnl.h:12
Definition: bufpool.h:45
DRIVER_INITIALIZE DriverEntry
Definition: condrv.c:21
#define _IRQL_requires_max_(irql)
Definition: driverspecs.h:230
#define PASSIVE_LEVEL
Definition: env_spec_w32.h:693
IN PLARGE_INTEGER IN PLARGE_INTEGER PEPROCESS ULONG BOOLEAN BOOLEAN ExclusiveLock
Definition: fatprocs.h:2714
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ ULONG _In_ BOOLEAN _In_ ULONG EaListLength
Definition: fltkernel.h:2297
_Must_inspect_result_ _In_opt_ PFLT_INSTANCE _Out_ PHANDLE FileHandle
Definition: fltkernel.h:1231
_Inout_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN _In_ BOOLEAN _In_ ULONG CompletionFilter
Definition: fltkernel.h:2243
_Inout_ PLIST_ENTRY _In_ PVOID _In_ PSTRING _In_ BOOLEAN WatchTree
Definition: fltkernel.h:2241
_Must_inspect_result_ _In_ PFILE_OBJECT _In_ ULONG _In_ BOOLEAN _In_ ULONG _In_opt_ PULONG EaIndex
Definition: fltkernel.h:2298
enum _FILE_INFORMATION_CLASS FILE_INFORMATION_CLASS
Definition: directory.c:44
enum _FSINFOCLASS FS_INFORMATION_CLASS
PWCHAR HalName
Definition: halacpi.c:45
static OUT PIO_STATUS_BLOCK OUT PVOID FileInformation
Definition: pipe.c:75
#define _Out_opt_
Definition: ms_sal.h:346
#define _In_reads_bytes_(size)
Definition: ms_sal.h:321
#define _Out_writes_bytes_(size)
Definition: ms_sal.h:350
#define _Out_
Definition: ms_sal.h:345
#define _In_
Definition: ms_sal.h:308
#define _In_reads_bytes_opt_(size)
Definition: ms_sal.h:322
#define _In_opt_
Definition: ms_sal.h:309
#define _Out_writes_bytes_opt_(size)
Definition: ms_sal.h:351
_Must_inspect_result_ _Out_ PNDIS_STATUS _Out_ PNDIS_STATUS _Out_ PNDIS_HANDLE _Out_ PUINT _In_ UINT _In_ NDIS_HANDLE _In_ NDIS_HANDLE _In_ PNDIS_STRING _In_ UINT OpenOptions
Definition: ndis.h:6017
NTSYSCALLAPI NTSTATUS NTAPI NtAddDriverEntry(_In_ PEFI_DRIVER_ENTRY BootEntry, _In_ ULONG Id)
NTSYSAPI NTSTATUS NTAPI ZwNotifyChangeDirectoryFile(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _Out_ PVOID Buffer, _In_ ULONG BufferSize, _In_ ULONG CompletionFilter, _In_ BOOLEAN WatchTree)
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtFsControlFile(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG FsControlCode, _In_reads_bytes_opt_(InputBufferLength) PVOID InputBuffer, _In_ ULONG InputBufferLength, _Out_writes_bytes_opt_(OutputBufferLength) PVOID OutputBuffer, _In_ ULONG OutputBufferLength)
NTSYSCALLAPI NTSTATUS NTAPI NtSetBootEntryOrder(_In_ PULONG Ids, _In_ PULONG Count)
_In_opt_ HANDLE _In_opt_ PIO_APC_ROUTINE _In_opt_ PVOID _Out_ PIO_STATUS_BLOCK _In_ ULONG _In_opt_ PLARGE_INTEGER ByteOffset
Definition: iofuncs.h:941
NTSTATUS NTAPI NtQueryDriverEntryOrder(_In_ PULONG Ids, _In_ PULONG Count)
NTSYSAPI NTSTATUS NTAPI ZwOpenIoCompletion(_Out_ PHANDLE CompetionPort, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
NTSYSCALLAPI NTSTATUS NTAPI NtFlushBuffersFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock)
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtDeviceIoControlFile(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG IoControlCode, _In_reads_bytes_opt_(InputBufferLength) PVOID InputBuffer, _In_ ULONG InputBufferLength, _Out_writes_bytes_opt_(OutputBufferLength) PVOID OutputBuffer, _In_ ULONG OutputBufferLength)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryEaFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _Out_ PVOID Buffer, _In_ ULONG Length, _In_ BOOLEAN ReturnSingleEntry, _In_opt_ PVOID EaList, _In_ ULONG EaListLength, _In_opt_ PULONG EaIndex, _In_ BOOLEAN RestartScan)
_Out_ PIO_STATUS_BLOCK _In_ ULONG _In_ FS_INFORMATION_CLASS FsInformationClass
Definition: iofuncs.h:927
VOID FASTCALL IoAssignDriveLetters(_In_ struct _LOADER_PARAMETER_BLOCK *LoaderBlock, _In_ PSTRING NtDeviceName, _Out_ PUCHAR NtSystemPath, _Out_ PSTRING NtSystemPathString)
NTSYSAPI NTSTATUS NTAPI ZwQueryAttributesFile(_In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PFILE_BASIC_INFORMATION FileInformation)
NTSYSCALLAPI NTSTATUS NTAPI NtModifyBootEntry(_In_ PBOOT_ENTRY BootEntry)
NTSYSCALLAPI NTSTATUS NTAPI NtAddBootEntry(_In_ PBOOT_ENTRY BootEntry, _In_ ULONG Id)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryBootEntryOrder(_In_ PULONG Ids, _In_ PULONG Count)
NTSYSAPI NTSTATUS NTAPI ZwQueryIoCompletion(_In_ HANDLE IoCompletionHandle, _In_ IO_COMPLETION_INFORMATION_CLASS IoCompletionInformationClass, _Out_ PVOID IoCompletionInformation, _In_ ULONG IoCompletionInformationLength, _Out_opt_ PULONG ResultLength)
NTSTATUS NTAPI IoCreateDriver(_In_opt_ PUNICODE_STRING DriverName, _In_ PDRIVER_INITIALIZE InitializationFunction)
Definition: driver.c:1576
NTSYSAPI NTSTATUS NTAPI ZwRemoveIoCompletion(_In_ HANDLE IoCompletionHandle, _Out_ PVOID *CompletionKey, _Out_ PVOID *CompletionContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_opt_ PLARGE_INTEGER Timeout)
NTSYSCALLAPI NTSTATUS NTAPI NtOpenIoCompletion(_Out_ PHANDLE CompetionPort, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes)
NTSYSAPI NTSTATUS NTAPI ZwLockFile(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ PLARGE_INTEGER ByteOffset, _In_ PLARGE_INTEGER Length, _In_ ULONG Key, _In_ BOOLEAN FailImmediatedly, _In_ BOOLEAN ExclusiveLock)
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Out_ PIO_STATUS_BLOCK _In_opt_ PLARGE_INTEGER _In_ ULONG _In_ ULONG ShareAccess
Definition: iofuncs.h:653
NTSYSAPI NTSTATUS NTAPI ZwCreateNamedPipeFile(_Out_ PHANDLE NamedPipeFileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG ShareAccess, _In_ ULONG CreateDisposition, _In_ ULONG CreateOptions, _In_ ULONG WriteModeMessage, _In_ ULONG ReadModeMessage, _In_ ULONG NonBlocking, _In_ ULONG MaxInstances, _In_ ULONG InBufferSize, _In_ ULONG OutBufferSize, _In_ PLARGE_INTEGER DefaultTimeOut)
NTSYSAPI NTSTATUS NTAPI ZwDeleteBootEntry(_In_ PUNICODE_STRING EntryName, _In_ PUNICODE_STRING EntryValue)
NTSYSAPI NTSTATUS NTAPI ZwCreateMailslotFile(_Out_ PHANDLE MailSlotFileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG FileAttributes, _In_ ULONG ShareAccess, _In_ ULONG MaxMessageSize, _In_ PLARGE_INTEGER TimeOut)
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Out_ PIO_STATUS_BLOCK _In_opt_ PLARGE_INTEGER AllocationSize
Definition: iofuncs.h:651
NTSYSCALLAPI NTSTATUS NTAPI NtCancelIoFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock)
NTSYSCALLAPI NTSTATUS NTAPI NtSetQuotaInformationFile(HANDLE FileHandle, PIO_STATUS_BLOCK IoStatusBlock, PVOID Buffer, ULONG BufferLength)
NTSYSAPI NTSTATUS NTAPI ZwUnloadDriver(_In_ PUNICODE_STRING DriverServiceName)
NTSYSCALLAPI NTSTATUS NTAPI NtRemoveIoCompletion(_In_ HANDLE IoCompletionHandle, _Out_ PVOID *CompletionKey, _Out_ PVOID *CompletionContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_opt_ PLARGE_INTEGER Timeout)
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtWriteFile(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_reads_bytes_(Length) PVOID Buffer, _In_ ULONG Length, _In_opt_ PLARGE_INTEGER ByteOffset, _In_opt_ PULONG Key)
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Out_ PIO_STATUS_BLOCK IoStatusBlock
Definition: iofuncs.h:650
VOID NTAPI IoDeleteDriver(_In_ PDRIVER_OBJECT DriverObject)
Definition: driver.c:1756
_In_opt_ HANDLE _In_opt_ PIO_APC_ROUTINE _In_opt_ PVOID _Out_ PIO_STATUS_BLOCK _In_ ULONG FsControlCode
Definition: iofuncs.h:760
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtCreateFile(_Out_ PHANDLE FileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_opt_ PLARGE_INTEGER AllocationSize, _In_ ULONG FileAttributes, _In_ ULONG ShareAccess, _In_ ULONG CreateDisposition, _In_ ULONG CreateOptions, _In_reads_bytes_opt_(EaLength) PVOID EaBuffer, _In_ ULONG EaLength)
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtQueryQuotaInformationFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _Out_writes_bytes_(Length) PVOID Buffer, _In_ ULONG Length, _In_ BOOLEAN ReturnSingleEntry, _In_reads_bytes_opt_(SidListLength) PVOID SidList, _In_ ULONG SidListLength, _In_reads_bytes_opt_((8+(4 *((SID *) StartSid) ->SubAuthorityCount))) PSID StartSid, _In_ BOOLEAN RestartScan)
_In_opt_ HANDLE _In_opt_ PIO_APC_ROUTINE _In_opt_ PVOID _Out_ PIO_STATUS_BLOCK _In_ ULONG _In_ FILE_INFORMATION_CLASS _In_ BOOLEAN _In_opt_ PUNICODE_STRING _In_ BOOLEAN RestartScan
Definition: iofuncs.h:852
NTSYSCALLAPI NTSTATUS NTAPI NtSetBootOptions(_In_ PBOOT_OPTIONS BootOptions, _In_ ULONG FieldsToChange)
NTSYSAPI NTSTATUS NTAPI ZwCreateIoCompletion(_Out_ PHANDLE IoCompletionHandle, _In_ ACCESS_MASK DesiredAccess, _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ ULONG NumberOfConcurrentThreads)
NTSYSCALLAPI NTSTATUS NTAPI NtCreateMailslotFile(_Out_ PHANDLE MailSlotFileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG FileAttributes, _In_ ULONG ShareAccess, _In_ ULONG MaxMessageSize, _In_ PLARGE_INTEGER TimeOut)
NTSYSCALLAPI NTSTATUS NTAPI NtWriteFileGather(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ FILE_SEGMENT_ELEMENT BufferDescription[], _In_ ULONG BufferLength, _In_ PLARGE_INTEGER ByteOffset, _In_opt_ PULONG Key)
NTSYSCALLAPI NTSTATUS NTAPI NtSetIoCompletion(_In_ HANDLE IoCompletionPortHandle, _In_ PVOID CompletionKey, _In_ PVOID CompletionContext, _In_ NTSTATUS CompletionStatus, _In_ ULONG CompletionInformation)
_In_opt_ HANDLE _In_opt_ PIO_APC_ROUTINE _In_opt_ PVOID ApcContext
Definition: iofuncs.h:727
NTSYSAPI NTSTATUS NTAPI ZwQueryFullAttributesFile(_In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PFILE_NETWORK_OPEN_INFORMATION FileInformation)
NTSYSCALLAPI NTSTATUS NTAPI NtModifyDriverEntry(_In_ PEFI_DRIVER_ENTRY DriverEntry)
NTSYSCALLAPI NTSTATUS NTAPI NtDeleteDriverEntry(_In_ ULONG Id)
NTSYSAPI NTSTATUS NTAPI ZwSetIoCompletion(_In_ HANDLE IoCompletionPortHandle, _In_ PVOID CompletionKey, _In_ PVOID CompletionContext, _In_ NTSTATUS CompletionStatus, _In_ ULONG CompletionInformation)
NTSYSCALLAPI NTSTATUS NTAPI NtCreateIoCompletion(_Out_ PHANDLE IoCompletionHandle, _In_ ACCESS_MASK DesiredAccess, _In_opt_ POBJECT_ATTRIBUTES ObjectAttributes, _In_ ULONG NumberOfConcurrentThreads)
NTSYSAPI NTSTATUS NTAPI ZwSetQuotaInformationFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ PVOID Buffer, _In_ ULONG BufferLength)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryAttributesFile(_In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PFILE_BASIC_INFORMATION FileInformation)
NTSYSCALLAPI NTSTATUS NTAPI NtReadFileScatter(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE UserApcRoutine, _In_opt_ PVOID UserApcContext, _Out_ PIO_STATUS_BLOCK UserIoStatusBlock, _In_ FILE_SEGMENT_ELEMENT BufferDescription[], _In_ ULONG BufferLength, _In_ PLARGE_INTEGER ByteOffset, _In_opt_ PULONG Key)
NTSYSAPI NTSTATUS NTAPI ZwAddBootEntry(_In_ PUNICODE_STRING EntryName, _In_ PUNICODE_STRING EntryValue)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryFullAttributesFile(_In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PFILE_NETWORK_OPEN_INFORMATION FileInformation)
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtQueryInformationFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _Out_writes_bytes_(Length) PVOID FileInformation, _In_ ULONG Length, _In_ FILE_INFORMATION_CLASS FileInformationClass)
_In_opt_ HANDLE _In_opt_ PIO_APC_ROUTINE _In_opt_ PVOID _Out_ PIO_STATUS_BLOCK _In_ ULONG _In_ FILE_INFORMATION_CLASS _In_ BOOLEAN ReturnSingleEntry
Definition: iofuncs.h:849
NTSYSCALLAPI NTSTATUS NTAPI NtDeleteBootEntry(_In_ ULONG Id)
NTSYSCALLAPI NTSTATUS NTAPI NtEnumerateDriverEntries(_In_ PVOID Buffer, _In_ PULONG BufferLength)
_In_opt_ HANDLE _In_opt_ PIO_APC_ROUTINE ApcRoutine
Definition: iofuncs.h:726
NTSYSAPI NTSTATUS NTAPI ZwCancelIoFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock)
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtSetVolumeInformationFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_reads_bytes_(Length) PVOID FsInformation, _In_ ULONG Length, _In_ FS_INFORMATION_CLASS FsInformationClass)
NTSYSCALLAPI NTSTATUS NTAPI NtNotifyChangeDirectoryFile(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _Out_ PVOID Buffer, _In_ ULONG BufferSize, _In_ ULONG CompletionFilter, _In_ BOOLEAN WatchTree)
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtReadFile(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _Out_writes_bytes_(Length) PVOID Buffer, _In_ ULONG Length, _In_opt_ PLARGE_INTEGER ByteOffset, _In_opt_ PULONG Key)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryIoCompletion(_In_ HANDLE IoCompletionHandle, _In_ IO_COMPLETION_INFORMATION_CLASS IoCompletionInformationClass, _Out_ PVOID IoCompletionInformation, _In_ ULONG IoCompletionInformationLength, _Out_opt_ PULONG ResultLength)
NTSYSAPI NTSTATUS NTAPI ZwWriteFileGather(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ FILE_SEGMENT_ELEMENT BufferDescription[], _In_ ULONG BufferLength, _In_ PLARGE_INTEGER ByteOffset, _In_opt_ PULONG Key)
NTSYSCALLAPI NTSTATUS NTAPI NtCreateNamedPipeFile(_Out_ PHANDLE NamedPipeFileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG ShareAccess, _In_ ULONG CreateDisposition, _In_ ULONG CreateOptions, _In_ ULONG WriteModeMessage, _In_ ULONG ReadModeMessage, _In_ ULONG NonBlocking, _In_ ULONG MaxInstances, _In_ ULONG InBufferSize, _In_ ULONG OutBufferSize, _In_ PLARGE_INTEGER DefaultTimeOut)
NTSYSCALLAPI NTSTATUS NTAPI NtEnumerateBootEntries(_In_ PVOID Buffer, _In_ PULONG BufferLength)
NTSYSCALLAPI NTSTATUS NTAPI NtLoadDriver(_In_ PUNICODE_STRING DriverServiceName)
NTSTATUS NTAPI NtSetDriverEntryOrder(_In_ PULONG Ids, _In_ PULONG Count)
NTSYSAPI NTSTATUS NTAPI ZwReadFileScatter(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE UserApcRoutine, _In_opt_ PVOID UserApcContext, _Out_ PIO_STATUS_BLOCK UserIoStatusBlock, _In_ FILE_SEGMENT_ELEMENT BufferDescription[], _In_ ULONG BufferLength, _In_ PLARGE_INTEGER ByteOffset, _In_opt_ PULONG Key)
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Out_ PIO_STATUS_BLOCK _In_opt_ PLARGE_INTEGER _In_ ULONG FileAttributes
Definition: iofuncs.h:652
NTSYSAPI NTSTATUS NTAPI ZwOpenFile(_Out_ PHANDLE FileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG ShareAccess, _In_ ULONG OpenOptions)
NTSYSCALLAPI NTSTATUS NTAPI NtLockFile(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ PLARGE_INTEGER ByteOffset, _In_ PLARGE_INTEGER Length, _In_ ULONG Key, _In_ BOOLEAN FailImmediatedly, _In_ BOOLEAN ExclusiveLock)
NTSYSAPI NTSTATUS NTAPI ZwDeleteFile(_In_ POBJECT_ATTRIBUTES ObjectAttributes)
NTSTATUS NTAPI IoReportHalResourceUsage(_In_ PUNICODE_STRING HalName, _In_ PCM_RESOURCE_LIST RawResourceList, _In_ PCM_RESOURCE_LIST TranslatedResourceList, _In_ ULONG ResourceListSize)
Reports hardware resources of the HAL in the \Registry\Machine\Hardware\ResourceMap tree.
Definition: iorsrce.c:1321
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Out_ PIO_STATUS_BLOCK _In_opt_ PLARGE_INTEGER _In_ ULONG _In_ ULONG _In_ ULONG _In_ ULONG _In_ ULONG EaLength
Definition: iofuncs.h:658
NTSYSAPI NTSTATUS NTAPI ZwUnlockFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ PLARGE_INTEGER ByteOffset, _In_ PLARGE_INTEGER Length, _In_opt_ ULONG Key)
NTSYSCALLAPI NTSTATUS NTAPI NtOpenFile(_Out_ PHANDLE FileHandle, _In_ ACCESS_MASK DesiredAccess, _In_ POBJECT_ATTRIBUTES ObjectAttributes, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ ULONG ShareAccess, _In_ ULONG OpenOptions)
NTSYSCALLAPI NTSTATUS NTAPI NtTranslateFilePath(PFILE_PATH InputFilePath, ULONG OutputType, PFILE_PATH OutputFilePath, ULONG OutputFilePathLength)
Definition: efi.c:141
NTSYSCALLAPI NTSTATUS NTAPI NtDeleteFile(_In_ POBJECT_ATTRIBUTES ObjectAttributes)
NTSYSCALLAPI NTSTATUS NTAPI NtUnloadDriver(_In_ PUNICODE_STRING DriverServiceName)
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtQueryVolumeInformationFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _Out_writes_bytes_(Length) PVOID FsInformation, _In_ ULONG Length, _In_ FS_INFORMATION_CLASS FsInformationClass)
NTSTATUS NTAPI IoSynchronousInvalidateDeviceRelations(_In_ PDEVICE_OBJECT DeviceObject, _In_ DEVICE_RELATION_TYPE Type)
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtUnlockFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_ PLARGE_INTEGER ByteOffset, _In_ PLARGE_INTEGER Length, _In_ ULONG Key)
NTSYSAPI NTSTATUS NTAPI ZwQueryQuotaInformationFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _Out_ PVOID Buffer, _In_ ULONG Length, _In_ BOOLEAN ReturnSingleEntry, _In_opt_ PVOID SidList, _In_ ULONG SidListLength, _In_opt_ PSID StartSid, _In_ BOOLEAN RestartScan)
NTSYSCALLAPI NTSTATUS NTAPI NtQueryBootOptions(_In_ PBOOT_OPTIONS BootOptions, _In_ PULONG BootOptionsLength)
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES ObjectAttributes
Definition: iofuncs.h:649
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtSetInformationFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _In_reads_bytes_(Length) PVOID FileInformation, _In_ ULONG Length, _In_ FILE_INFORMATION_CLASS FileInformationClass)
NTSYSCALLAPI NTSTATUS NTAPI NtSetEaFile(_In_ HANDLE FileHandle, _In_ PIO_STATUS_BLOCK IoStatusBlock, PVOID EaBuffer, ULONG EaBufferSize)
NTSYSAPI NTSTATUS NTAPI ZwFlushWriteBuffer(VOID)
NTSYSCALLAPI NTSTATUS NTAPI NtFlushWriteBuffer(VOID)
Definition: file.c:3938
_In_opt_ HANDLE _In_opt_ PIO_APC_ROUTINE _In_opt_ PVOID _Out_ PIO_STATUS_BLOCK _In_ ULONG _In_ FILE_INFORMATION_CLASS FileInformationClass
Definition: iofuncs.h:848
__kernel_entry NTSYSCALLAPI NTSTATUS NTAPI NtQueryDirectoryFile(_In_ HANDLE FileHandle, _In_opt_ HANDLE Event, _In_opt_ PIO_APC_ROUTINE ApcRoutine, _In_opt_ PVOID ApcContext, _Out_ PIO_STATUS_BLOCK IoStatusBlock, _Out_writes_bytes_(Length) PVOID FileInformation, _In_ ULONG Length, _In_ FILE_INFORMATION_CLASS FileInformationClass, _In_ BOOLEAN ReturnSingleEntry, _In_opt_ PUNICODE_STRING FileName, _In_ BOOLEAN RestartScan)
enum _IO_COMPLETION_INFORMATION_CLASS IO_COMPLETION_INFORMATION_CLASS
_In_ PSID_IDENTIFIER_AUTHORITY _In_ UCHAR SubAuthorityCount
Definition: rtlfuncs.h:1515
int Count
Definition: noreturn.cpp:7
ULONG ACCESS_MASK
Definition: nt_native.h:40
#define FASTCALL
Definition: nt_native.h:50
VOID(* PIO_APC_ROUTINE)(IN PVOID ApcContext, IN PIO_STATUS_BLOCK IoStatusBlock, IN ULONG Reserved)
Definition: nt_native.h:877
#define NTSYSCALLAPI
Definition: ntbasedef.h:204
_In_ ULONG _In_ ULONG _In_ ULONG Length
Definition: ntddpcm.h:102
NTSYSAPI NTSTATUS NTAPI ZwDeviceIoControlFile(IN HANDLE DeviceHandle, IN HANDLE Event OPTIONAL, IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL, IN PVOID UserApcContext OPTIONAL, OUT PIO_STATUS_BLOCK IoStatusBlock, IN ULONG IoControlCode, IN PVOID InputBuffer, IN ULONG InputBufferSize, OUT PVOID OutputBuffer, IN ULONG OutputBufferSize)
NTSYSAPI NTSTATUS NTAPI ZwFsControlFile(IN HANDLE DeviceHandle, IN HANDLE Event OPTIONAL, IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, IN PVOID ApcContext OPTIONAL, OUT PIO_STATUS_BLOCK IoStatusBlock, IN ULONG IoControlCode, IN PVOID InputBuffer, IN ULONG InputBufferSize, OUT PVOID OutputBuffer, IN ULONG OutputBufferSize)
NTSYSAPI NTSTATUS NTAPI ZwQueryVolumeInformationFile(IN HANDLE FileHandle, OUT PIO_STATUS_BLOCK IoStatusBlock, OUT PVOID FsInformation, IN ULONG Length, IN FS_INFORMATION_CLASS FsInformationClass)
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:455
static ULONG Timeout
Definition: ping.c:61
#define __kernel_entry
Definition: specstrings.h:355
Definition: iotypes.h:1023
Definition: iotypes.h:1038
uint32_t * PULONG
Definition: typedefs.h:59
#define NTAPI
Definition: typedefs.h:36
unsigned char * PUCHAR
Definition: typedefs.h:53
uint32_t ULONG
Definition: typedefs.h:59
_In_ PDEVICE_OBJECT DeviceObject
Definition: wdfdevice.h:2055
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG _Out_ PULONG ResultLength
Definition: wdfdevice.h:3776
_Must_inspect_result_ _In_ WDFDEVICE _In_ ULONG _In_ ACCESS_MASK DesiredAccess
Definition: wdfdevice.h:2658
_Must_inspect_result_ _In_ WDFDEVICE _In_ DEVICE_REGISTRY_PROPERTY _In_ ULONG BufferLength
Definition: wdfdevice.h:3771
_Must_inspect_result_ _In_ PDRIVER_OBJECT DriverObject
Definition: wdfdriver.h:213
_In_ WDFREQUEST _In_ size_t _In_ size_t _In_ ULONG IoControlCode
Definition: wdfio.h:325
_In_ WDFREQUEST _In_ size_t OutputBufferLength
Definition: wdfio.h:320
_In_ WDFREQUEST _In_ size_t _In_ size_t InputBufferLength
Definition: wdfio.h:322
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR OutputBuffer
Definition: wdfiotarget.h:863
_Must_inspect_result_ _In_ WDFIOTARGET _In_opt_ WDFREQUEST _In_opt_ PWDF_MEMORY_DESCRIPTOR InputBuffer
Definition: wdfiotarget.h:953
_In_ WDFMEMORY _Out_opt_ size_t * BufferSize
Definition: wdfmemory.h:254
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING _In_ ACCESS_MASK _In_ ULONG _Out_opt_ PULONG CreateDisposition
Definition: wdfregistry.h:120
_Must_inspect_result_ _In_opt_ WDFKEY _In_ PCUNICODE_STRING _In_ ACCESS_MASK _In_ ULONG CreateOptions
Definition: wdfregistry.h:118
_In_ WDFREQUEST _In_opt_ PFN_WDF_REQUEST_COMPLETION_ROUTINE _In_opt_ __drv_aliasesMem WDFCONTEXT CompletionContext
Definition: wdfrequest.h:898
_In_ ULONG OutBufferSize
Definition: wdfwmi.h:87
_In_ ULONG InBufferSize
Definition: wdfwmi.h:106
_In_ ACCESS_MASK _In_ POBJECT_ATTRIBUTES _Out_ PIO_STATUS_BLOCK _In_opt_ PLARGE_INTEGER _In_ ULONG _In_ ULONG _In_ ULONG _In_ ULONG _In_opt_ PVOID EaBuffer
Definition: iofuncs.h:845
enum _DEVICE_RELATION_TYPE DEVICE_RELATION_TYPE
DRIVER_INITIALIZE * PDRIVER_INITIALIZE
Definition: iotypes.h:2235
NTSYSAPI NTSTATUS NTAPI ZwFlushBuffersFile(_In_ HANDLE FileHandle, _Out_ PIO_STATUS_BLOCK IoStatusBlock)
_Out_ PIO_STATUS_BLOCK _In_ ULONG _In_ BOOLEAN _In_ ULONG _In_opt_ PSID StartSid
Definition: zwfuncs.h:1121
_Out_ PIO_STATUS_BLOCK _In_ ULONG _In_ BOOLEAN _In_ ULONG SidListLength
Definition: zwfuncs.h:1120