Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygeniofuncs.h
Go to the documentation of this file.
00001 /*++ NDK Version: 0098 00002 00003 Copyright (c) Alex Ionescu. All rights reserved. 00004 00005 Header Name: 00006 00007 iofuncs.h 00008 00009 Abstract: 00010 00011 Function definitions for the I/O Manager. 00012 00013 Author: 00014 00015 Alex Ionescu (alexi@tinykrnl.org) - Updated - 27-Feb-2006 00016 00017 --*/ 00018 00019 #ifndef _IOFUNCS_H 00020 #define _IOFUNCS_H 00021 00022 // 00023 // Dependencies 00024 // 00025 #include <umtypes.h> 00026 #include <iotypes.h> 00027 00028 // 00029 // I/O Functions 00030 // 00031 #ifndef NTOS_MODE_USER 00032 VOID 00033 FASTCALL 00034 IoAssignDriveLetters( 00035 IN struct _LOADER_PARAMETER_BLOCK *LoaderBlock, 00036 IN PSTRING NtDeviceName, 00037 OUT PUCHAR NtSystemPath, 00038 OUT PSTRING NtSystemPathString 00039 ); 00040 00041 NTSTATUS 00042 NTAPI 00043 IoSynchronousInvalidateDeviceRelations( 00044 IN PDEVICE_OBJECT DeviceObject, 00045 IN DEVICE_RELATION_TYPE Type 00046 ); 00047 00048 NTSTATUS 00049 NTAPI 00050 IoCreateDriver( 00051 IN PUNICODE_STRING DriverName OPTIONAL, 00052 IN PDRIVER_INITIALIZE InitializationFunction 00053 ); 00054 00055 NTSTATUS 00056 NTAPI 00057 IoReportHalResourceUsage( 00058 IN PUNICODE_STRING HalName, 00059 IN PCM_RESOURCE_LIST RawResourceList, 00060 IN PCM_RESOURCE_LIST TranslatedResourceList, 00061 IN ULONG ResourceListSize 00062 ); 00063 #endif 00064 00065 // 00066 // Native calls 00067 // 00068 NTSYSCALLAPI 00069 NTSTATUS 00070 NTAPI 00071 NtAddBootEntry( 00072 IN PBOOT_ENTRY BootEntry, 00073 IN ULONG Id 00074 ); 00075 00076 NTSYSCALLAPI 00077 NTSTATUS 00078 NTAPI 00079 NtAddDriverEntry( 00080 IN PEFI_DRIVER_ENTRY BootEntry, 00081 IN ULONG Id 00082 ); 00083 00084 NTSYSCALLAPI 00085 NTSTATUS 00086 NTAPI 00087 NtCancelIoFile( 00088 IN HANDLE FileHandle, 00089 OUT PIO_STATUS_BLOCK IoStatusBlock 00090 ); 00091 00092 NTSYSCALLAPI 00093 NTSTATUS 00094 NTAPI 00095 NtCreateFile( 00096 OUT PHANDLE FileHandle, 00097 IN ACCESS_MASK DesiredAccess, 00098 IN POBJECT_ATTRIBUTES ObjectAttributes, 00099 OUT PIO_STATUS_BLOCK IoStatusBlock, 00100 IN PLARGE_INTEGER AllocationSize OPTIONAL, 00101 IN ULONG FileAttributes, 00102 IN ULONG ShareAccess, 00103 IN ULONG CreateDisposition, 00104 IN ULONG CreateOptions, 00105 IN PVOID EaBuffer OPTIONAL, 00106 IN ULONG EaLength 00107 ); 00108 00109 NTSYSCALLAPI 00110 NTSTATUS 00111 NTAPI 00112 NtCreateIoCompletion( 00113 OUT PHANDLE IoCompletionHandle, 00114 IN ACCESS_MASK DesiredAccess, 00115 IN POBJECT_ATTRIBUTES ObjectAttributes, 00116 IN ULONG NumberOfConcurrentThreads 00117 ); 00118 00119 NTSYSCALLAPI 00120 NTSTATUS 00121 NTAPI 00122 NtCreateMailslotFile( 00123 OUT PHANDLE MailSlotFileHandle, 00124 IN ACCESS_MASK DesiredAccess, 00125 IN POBJECT_ATTRIBUTES ObjectAttributes, 00126 OUT PIO_STATUS_BLOCK IoStatusBlock, 00127 IN ULONG FileAttributes, 00128 IN ULONG ShareAccess, 00129 IN ULONG MaxMessageSize, 00130 IN PLARGE_INTEGER TimeOut 00131 ); 00132 00133 NTSYSCALLAPI 00134 NTSTATUS 00135 NTAPI 00136 NtCreateNamedPipeFile( 00137 OUT PHANDLE NamedPipeFileHandle, 00138 IN ACCESS_MASK DesiredAccess, 00139 IN POBJECT_ATTRIBUTES ObjectAttributes, 00140 OUT PIO_STATUS_BLOCK IoStatusBlock, 00141 IN ULONG ShareAccess, 00142 IN ULONG CreateDisposition, 00143 IN ULONG CreateOptions, 00144 IN ULONG WriteModeMessage, 00145 IN ULONG ReadModeMessage, 00146 IN ULONG NonBlocking, 00147 IN ULONG MaxInstances, 00148 IN ULONG InBufferSize, 00149 IN ULONG OutBufferSize, 00150 IN PLARGE_INTEGER DefaultTimeOut 00151 ); 00152 00153 00154 NTSYSCALLAPI 00155 NTSTATUS 00156 NTAPI 00157 NtDeleteDriverEntry( 00158 IN ULONG Id 00159 ); 00160 00161 NTSYSCALLAPI 00162 NTSTATUS 00163 NTAPI 00164 NtDeleteBootEntry( 00165 IN ULONG Id 00166 ); 00167 00168 NTSYSCALLAPI 00169 NTSTATUS 00170 NTAPI 00171 NtDeleteFile( 00172 IN POBJECT_ATTRIBUTES ObjectAttributes 00173 ); 00174 00175 NTSYSCALLAPI 00176 NTSTATUS 00177 NTAPI 00178 NtDeviceIoControlFile( 00179 IN HANDLE DeviceHandle, 00180 IN HANDLE Event OPTIONAL, 00181 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL, 00182 IN PVOID UserApcContext OPTIONAL, 00183 OUT PIO_STATUS_BLOCK IoStatusBlock, 00184 IN ULONG IoControlCode, 00185 IN PVOID InputBuffer, 00186 IN ULONG InputBufferSize, 00187 OUT PVOID OutputBuffer, 00188 IN ULONG OutputBufferSize 00189 ); 00190 00191 NTSYSCALLAPI 00192 NTSTATUS 00193 NTAPI 00194 NtEnumerateBootEntries( 00195 IN PVOID Buffer, 00196 IN PULONG BufferLength 00197 ); 00198 00199 NTSYSCALLAPI 00200 NTSTATUS 00201 NTAPI 00202 NtEnumerateDriverEntries( 00203 IN PVOID Buffer, 00204 IN PULONG BufferLength 00205 ); 00206 00207 NTSYSCALLAPI 00208 NTSTATUS 00209 NTAPI 00210 NtFlushBuffersFile( 00211 IN HANDLE FileHandle, 00212 OUT PIO_STATUS_BLOCK IoStatusBlock 00213 ); 00214 00215 NTSYSCALLAPI 00216 NTSTATUS 00217 NTAPI 00218 NtFlushWriteBuffer(VOID); 00219 00220 NTSYSCALLAPI 00221 NTSTATUS 00222 NTAPI 00223 NtFsControlFile( 00224 IN HANDLE DeviceHandle, 00225 IN HANDLE Event OPTIONAL, 00226 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, 00227 IN PVOID ApcContext OPTIONAL, 00228 OUT PIO_STATUS_BLOCK IoStatusBlock, 00229 IN ULONG IoControlCode, 00230 IN PVOID InputBuffer, 00231 IN ULONG InputBufferSize, 00232 OUT PVOID OutputBuffer, 00233 IN ULONG OutputBufferSize 00234 ); 00235 00236 NTSYSCALLAPI 00237 NTSTATUS 00238 NTAPI 00239 NtLoadDriver( 00240 IN PUNICODE_STRING DriverServiceName 00241 ); 00242 00243 NTSYSCALLAPI 00244 NTSTATUS 00245 NTAPI 00246 NtLockFile( 00247 IN HANDLE FileHandle, 00248 IN HANDLE Event OPTIONAL, 00249 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, 00250 IN PVOID ApcContext OPTIONAL, 00251 OUT PIO_STATUS_BLOCK IoStatusBlock, 00252 IN PLARGE_INTEGER ByteOffset, 00253 IN PLARGE_INTEGER Length, 00254 IN ULONG Key, 00255 IN BOOLEAN FailImmediatedly, 00256 IN BOOLEAN ExclusiveLock 00257 ); 00258 00259 NTSYSCALLAPI 00260 NTSTATUS 00261 NTAPI 00262 NtModifyBootEntry( 00263 IN PBOOT_ENTRY BootEntry 00264 ); 00265 00266 NTSYSCALLAPI 00267 NTSTATUS 00268 NTAPI 00269 NtModifyDriverEntry( 00270 IN PEFI_DRIVER_ENTRY DriverEntry 00271 ); 00272 00273 NTSYSCALLAPI 00274 NTSTATUS 00275 NTAPI 00276 NtNotifyChangeDirectoryFile( 00277 IN HANDLE FileHandle, 00278 IN HANDLE Event OPTIONAL, 00279 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, 00280 IN PVOID ApcContext OPTIONAL, 00281 OUT PIO_STATUS_BLOCK IoStatusBlock, 00282 OUT PVOID Buffer, 00283 IN ULONG BufferSize, 00284 IN ULONG CompletionFilter, 00285 IN BOOLEAN WatchTree 00286 ); 00287 00288 NTSYSCALLAPI 00289 NTSTATUS 00290 NTAPI 00291 NtOpenFile( 00292 OUT PHANDLE FileHandle, 00293 IN ACCESS_MASK DesiredAccess, 00294 IN POBJECT_ATTRIBUTES ObjectAttributes, 00295 OUT PIO_STATUS_BLOCK IoStatusBlock, 00296 IN ULONG ShareAccess, 00297 IN ULONG OpenOptions 00298 ); 00299 00300 NTSYSCALLAPI 00301 NTSTATUS 00302 NTAPI 00303 NtOpenIoCompletion( 00304 OUT PHANDLE CompetionPort, 00305 IN ACCESS_MASK DesiredAccess, 00306 IN POBJECT_ATTRIBUTES ObjectAttributes 00307 ); 00308 00309 NTSYSCALLAPI 00310 NTSTATUS 00311 NTAPI 00312 NtQueryAttributesFile( 00313 IN POBJECT_ATTRIBUTES ObjectAttributes, 00314 OUT PFILE_BASIC_INFORMATION FileInformation 00315 ); 00316 00317 NTSTATUS 00318 NTAPI 00319 NtQueryDriverEntryOrder( 00320 IN PULONG Ids, 00321 IN PULONG Count 00322 ); 00323 00324 NTSYSCALLAPI 00325 NTSTATUS 00326 NTAPI 00327 NtQueryBootEntryOrder( 00328 IN PULONG Ids, 00329 IN PULONG Count 00330 ); 00331 00332 NTSYSCALLAPI 00333 NTSTATUS 00334 NTAPI 00335 NtQueryBootOptions( 00336 IN PBOOT_OPTIONS BootOptions, 00337 IN PULONG BootOptionsLength 00338 ); 00339 00340 NTSYSCALLAPI 00341 NTSTATUS 00342 NTAPI 00343 NtQueryDirectoryFile( 00344 IN HANDLE FileHandle, 00345 IN HANDLE Event OPTIONAL, 00346 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, 00347 IN PVOID ApcContext OPTIONAL, 00348 OUT PIO_STATUS_BLOCK IoStatusBlock, 00349 OUT PVOID FileInformation, 00350 IN ULONG Length, 00351 IN FILE_INFORMATION_CLASS FileInformationClass, 00352 IN BOOLEAN ReturnSingleEntry, 00353 IN PUNICODE_STRING FileName OPTIONAL, 00354 IN BOOLEAN RestartScan 00355 ); 00356 00357 NTSYSCALLAPI 00358 NTSTATUS 00359 NTAPI 00360 NtQueryEaFile( 00361 IN HANDLE FileHandle, 00362 OUT PIO_STATUS_BLOCK IoStatusBlock, 00363 OUT PVOID Buffer, 00364 IN ULONG Length, 00365 IN BOOLEAN ReturnSingleEntry, 00366 IN PVOID EaList OPTIONAL, 00367 IN ULONG EaListLength, 00368 IN PULONG EaIndex OPTIONAL, 00369 IN BOOLEAN RestartScan 00370 ); 00371 00372 NTSYSCALLAPI 00373 NTSTATUS 00374 NTAPI 00375 NtQueryFullAttributesFile( 00376 IN POBJECT_ATTRIBUTES ObjectAttributes, 00377 OUT PFILE_NETWORK_OPEN_INFORMATION FileInformation 00378 ); 00379 00380 NTSYSCALLAPI 00381 NTSTATUS 00382 NTAPI 00383 NtQueryInformationFile( 00384 IN HANDLE FileHandle, 00385 OUT PIO_STATUS_BLOCK IoStatusBlock, 00386 OUT PVOID FileInformation, 00387 IN ULONG Length, 00388 IN FILE_INFORMATION_CLASS FileInformationClass 00389 ); 00390 00391 NTSYSCALLAPI 00392 NTSTATUS 00393 NTAPI 00394 NtQueryIoCompletion( 00395 IN HANDLE IoCompletionHandle, 00396 IN IO_COMPLETION_INFORMATION_CLASS IoCompletionInformationClass, 00397 OUT PVOID IoCompletionInformation, 00398 IN ULONG IoCompletionInformationLength, 00399 OUT PULONG ResultLength OPTIONAL 00400 ); 00401 00402 NTSYSCALLAPI 00403 NTSTATUS 00404 NTAPI 00405 NtQueryQuotaInformationFile( 00406 IN HANDLE FileHandle, 00407 OUT PIO_STATUS_BLOCK IoStatusBlock, 00408 OUT PVOID Buffer, 00409 IN ULONG Length, 00410 IN BOOLEAN ReturnSingleEntry, 00411 IN PVOID SidList OPTIONAL, 00412 IN ULONG SidListLength, 00413 IN PSID StartSid OPTIONAL, 00414 IN BOOLEAN RestartScan 00415 ); 00416 00417 NTSYSCALLAPI 00418 NTSTATUS 00419 NTAPI 00420 NtQueryVolumeInformationFile( 00421 IN HANDLE FileHandle, 00422 OUT PIO_STATUS_BLOCK IoStatusBlock, 00423 OUT PVOID FsInformation, 00424 IN ULONG Length, 00425 IN FS_INFORMATION_CLASS FsInformationClass 00426 ); 00427 00428 NTSYSCALLAPI 00429 NTSTATUS 00430 NTAPI 00431 NtReadFile( 00432 IN HANDLE FileHandle, 00433 IN HANDLE Event OPTIONAL, 00434 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL, 00435 IN PVOID UserApcContext OPTIONAL, 00436 OUT PIO_STATUS_BLOCK IoStatusBlock, 00437 OUT PVOID Buffer, 00438 IN ULONG BufferLength, 00439 IN PLARGE_INTEGER ByteOffset OPTIONAL, 00440 IN PULONG Key OPTIONAL 00441 ); 00442 00443 NTSYSCALLAPI 00444 NTSTATUS 00445 NTAPI 00446 NtReadFileScatter( 00447 IN HANDLE FileHandle, 00448 IN HANDLE Event OPTIONAL, 00449 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL, 00450 IN PVOID UserApcContext OPTIONAL, 00451 OUT PIO_STATUS_BLOCK UserIoStatusBlock, 00452 IN FILE_SEGMENT_ELEMENT BufferDescription[], 00453 IN ULONG BufferLength, 00454 IN PLARGE_INTEGER ByteOffset, 00455 IN PULONG Key OPTIONAL 00456 ); 00457 00458 NTSYSCALLAPI 00459 NTSTATUS 00460 NTAPI 00461 NtRemoveIoCompletion( 00462 IN HANDLE IoCompletionHandle, 00463 OUT PVOID *CompletionKey, 00464 OUT PVOID *CompletionContext, 00465 OUT PIO_STATUS_BLOCK IoStatusBlock, 00466 IN PLARGE_INTEGER Timeout OPTIONAL 00467 ); 00468 00469 NTSYSCALLAPI 00470 NTSTATUS 00471 NTAPI 00472 NtSetBootEntryOrder( 00473 IN PULONG Ids, 00474 IN PULONG Count 00475 ); 00476 00477 NTSYSCALLAPI 00478 NTSTATUS 00479 NTAPI 00480 NtSetBootOptions( 00481 IN PBOOT_OPTIONS BootOptions, 00482 IN ULONG FieldsToChange 00483 ); 00484 00485 NTSTATUS 00486 NTAPI 00487 NtSetDriverEntryOrder( 00488 IN PULONG Ids, 00489 IN PULONG Count 00490 ); 00491 00492 NTSYSCALLAPI 00493 NTSTATUS 00494 NTAPI 00495 NtSetEaFile( 00496 IN HANDLE FileHandle, 00497 IN PIO_STATUS_BLOCK IoStatusBlock, 00498 PVOID EaBuffer, 00499 ULONG EaBufferSize 00500 ); 00501 00502 NTSYSCALLAPI 00503 NTSTATUS 00504 NTAPI 00505 NtSetInformationFile( 00506 IN HANDLE FileHandle, 00507 IN PIO_STATUS_BLOCK IoStatusBlock, 00508 IN PVOID FileInformation, 00509 IN ULONG Length, 00510 IN FILE_INFORMATION_CLASS FileInformationClass 00511 ); 00512 00513 NTSYSCALLAPI 00514 NTSTATUS 00515 NTAPI 00516 NtSetIoCompletion( 00517 IN HANDLE IoCompletionPortHandle, 00518 IN PVOID CompletionKey, 00519 IN PVOID CompletionContext, 00520 IN NTSTATUS CompletionStatus, 00521 IN ULONG CompletionInformation 00522 ); 00523 00524 NTSYSCALLAPI 00525 NTSTATUS 00526 NTAPI 00527 NtSetQuotaInformationFile( 00528 HANDLE FileHandle, 00529 PIO_STATUS_BLOCK IoStatusBlock, 00530 PVOID Buffer, 00531 ULONG BufferLength 00532 ); 00533 00534 NTSYSCALLAPI 00535 NTSTATUS 00536 NTAPI 00537 NtSetVolumeInformationFile( 00538 IN HANDLE FileHandle, 00539 OUT PIO_STATUS_BLOCK IoStatusBlock, 00540 IN PVOID FsInformation, 00541 IN ULONG Length, 00542 IN FS_INFORMATION_CLASS FsInformationClass 00543 ); 00544 00545 NTSYSCALLAPI 00546 NTSTATUS 00547 NTAPI 00548 NtTranslateFilePath( 00549 PFILE_PATH InputFilePath, 00550 ULONG OutputType, 00551 PFILE_PATH OutputFilePath, 00552 ULONG OutputFilePathLength 00553 ); 00554 00555 NTSYSCALLAPI 00556 NTSTATUS 00557 NTAPI 00558 NtUnloadDriver( 00559 IN PUNICODE_STRING DriverServiceName 00560 ); 00561 00562 NTSYSCALLAPI 00563 NTSTATUS 00564 NTAPI 00565 NtUnlockFile( 00566 IN HANDLE FileHandle, 00567 OUT PIO_STATUS_BLOCK IoStatusBlock, 00568 IN PLARGE_INTEGER ByteOffset, 00569 IN PLARGE_INTEGER Lenght, 00570 OUT ULONG Key OPTIONAL 00571 ); 00572 00573 NTSYSCALLAPI 00574 NTSTATUS 00575 NTAPI 00576 NtWriteFile( 00577 IN HANDLE FileHandle, 00578 IN HANDLE Event OPTIONAL, 00579 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, 00580 IN PVOID ApcContext OPTIONAL, 00581 OUT PIO_STATUS_BLOCK IoStatusBlock, 00582 IN PVOID Buffer, 00583 IN ULONG Length, 00584 IN PLARGE_INTEGER ByteOffset, 00585 IN PULONG Key OPTIONAL 00586 ); 00587 00588 NTSYSCALLAPI 00589 NTSTATUS 00590 NTAPI 00591 NtWriteFileGather( 00592 IN HANDLE FileHandle, 00593 IN HANDLE Event OPTIONAL, 00594 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, 00595 IN PVOID ApcContext OPTIONAL, 00596 OUT PIO_STATUS_BLOCK IoStatusBlock, 00597 IN FILE_SEGMENT_ELEMENT BufferDescription[], 00598 IN ULONG BufferLength, 00599 IN PLARGE_INTEGER ByteOffset, 00600 IN PULONG Key OPTIONAL 00601 ); 00602 00603 NTSYSAPI 00604 NTSTATUS 00605 NTAPI 00606 ZwAddBootEntry( 00607 IN PUNICODE_STRING EntryName, 00608 IN PUNICODE_STRING EntryValue 00609 ); 00610 00611 NTSYSAPI 00612 NTSTATUS 00613 NTAPI 00614 ZwCancelIoFile( 00615 IN HANDLE FileHandle, 00616 OUT PIO_STATUS_BLOCK IoStatusBlock 00617 ); 00618 00619 NTSYSAPI 00620 NTSTATUS 00621 NTAPI 00622 ZwCreateFile( 00623 OUT PHANDLE FileHandle, 00624 IN ACCESS_MASK DesiredAccess, 00625 IN POBJECT_ATTRIBUTES ObjectAttributes, 00626 OUT PIO_STATUS_BLOCK IoStatusBlock, 00627 IN PLARGE_INTEGER AllocationSize OPTIONAL, 00628 IN ULONG FileAttributes, 00629 IN ULONG ShareAccess, 00630 IN ULONG CreateDisposition, 00631 IN ULONG CreateOptions, 00632 IN PVOID EaBuffer OPTIONAL, 00633 IN ULONG EaLength 00634 ); 00635 00636 NTSYSAPI 00637 NTSTATUS 00638 NTAPI 00639 ZwCreateIoCompletion( 00640 OUT PHANDLE IoCompletionHandle, 00641 IN ACCESS_MASK DesiredAccess, 00642 IN POBJECT_ATTRIBUTES ObjectAttributes, 00643 IN ULONG NumberOfConcurrentThreads 00644 ); 00645 00646 NTSYSAPI 00647 NTSTATUS 00648 NTAPI 00649 ZwCreateMailslotFile( 00650 OUT PHANDLE MailSlotFileHandle, 00651 IN ACCESS_MASK DesiredAccess, 00652 IN POBJECT_ATTRIBUTES ObjectAttributes, 00653 OUT PIO_STATUS_BLOCK IoStatusBlock, 00654 IN ULONG FileAttributes, 00655 IN ULONG ShareAccess, 00656 IN ULONG MaxMessageSize, 00657 IN PLARGE_INTEGER TimeOut 00658 ); 00659 00660 NTSYSAPI 00661 NTSTATUS 00662 NTAPI 00663 ZwCreateNamedPipeFile( 00664 OUT PHANDLE NamedPipeFileHandle, 00665 IN ACCESS_MASK DesiredAccess, 00666 IN POBJECT_ATTRIBUTES ObjectAttributes, 00667 OUT PIO_STATUS_BLOCK IoStatusBlock, 00668 IN ULONG ShareAccess, 00669 IN ULONG CreateDisposition, 00670 IN ULONG CreateOptions, 00671 IN ULONG WriteModeMessage, 00672 IN ULONG ReadModeMessage, 00673 IN ULONG NonBlocking, 00674 IN ULONG MaxInstances, 00675 IN ULONG InBufferSize, 00676 IN ULONG OutBufferSize, 00677 IN PLARGE_INTEGER DefaultTimeOut 00678 ); 00679 00680 NTSYSAPI 00681 NTSTATUS 00682 NTAPI 00683 ZwDeleteBootEntry( 00684 IN PUNICODE_STRING EntryName, 00685 IN PUNICODE_STRING EntryValue 00686 ); 00687 00688 NTSYSAPI 00689 NTSTATUS 00690 NTAPI 00691 ZwDeleteFile( 00692 IN POBJECT_ATTRIBUTES ObjectAttributes 00693 ); 00694 00695 NTSYSAPI 00696 NTSTATUS 00697 NTAPI 00698 ZwDeviceIoControlFile( 00699 IN HANDLE DeviceHandle, 00700 IN HANDLE Event OPTIONAL, 00701 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL, 00702 IN PVOID UserApcContext OPTIONAL, 00703 OUT PIO_STATUS_BLOCK IoStatusBlock, 00704 IN ULONG IoControlCode, 00705 IN PVOID InputBuffer, 00706 IN ULONG InputBufferSize, 00707 OUT PVOID OutputBuffer, 00708 IN ULONG OutputBufferSize 00709 ); 00710 00711 NTSYSAPI 00712 NTSTATUS 00713 NTAPI 00714 ZwFlushBuffersFile( 00715 IN HANDLE FileHandle, 00716 OUT PIO_STATUS_BLOCK IoStatusBlock 00717 ); 00718 00719 NTSYSAPI 00720 NTSTATUS 00721 NTAPI 00722 ZwFlushWriteBuffer(VOID); 00723 00724 NTSYSAPI 00725 NTSTATUS 00726 NTAPI 00727 ZwFsControlFile( 00728 IN HANDLE DeviceHandle, 00729 IN HANDLE Event OPTIONAL, 00730 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, 00731 IN PVOID ApcContext OPTIONAL, 00732 OUT PIO_STATUS_BLOCK IoStatusBlock, 00733 IN ULONG IoControlCode, 00734 IN PVOID InputBuffer, 00735 IN ULONG InputBufferSize, 00736 OUT PVOID OutputBuffer, 00737 IN ULONG OutputBufferSize 00738 ); 00739 00740 #ifdef NTOS_MODE_USER 00741 NTSYSAPI 00742 NTSTATUS 00743 NTAPI 00744 ZwLoadDriver( 00745 IN PUNICODE_STRING DriverServiceName 00746 ); 00747 #endif 00748 00749 NTSYSAPI 00750 NTSTATUS 00751 NTAPI 00752 ZwLockFile( 00753 IN HANDLE FileHandle, 00754 IN HANDLE Event OPTIONAL, 00755 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, 00756 IN PVOID ApcContext OPTIONAL, 00757 OUT PIO_STATUS_BLOCK IoStatusBlock, 00758 IN PLARGE_INTEGER ByteOffset, 00759 IN PLARGE_INTEGER Length, 00760 IN ULONG Key, 00761 IN BOOLEAN FailImmediatedly, 00762 IN BOOLEAN ExclusiveLock 00763 ); 00764 00765 NTSYSAPI 00766 NTSTATUS 00767 NTAPI 00768 ZwNotifyChangeDirectoryFile( 00769 IN HANDLE FileHandle, 00770 IN HANDLE Event OPTIONAL, 00771 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, 00772 IN PVOID ApcContext OPTIONAL, 00773 OUT PIO_STATUS_BLOCK IoStatusBlock, 00774 OUT PVOID Buffer, 00775 IN ULONG BufferSize, 00776 IN ULONG CompletionFilter, 00777 IN BOOLEAN WatchTree 00778 ); 00779 00780 NTSYSAPI 00781 NTSTATUS 00782 NTAPI 00783 ZwOpenFile( 00784 OUT PHANDLE FileHandle, 00785 IN ACCESS_MASK DesiredAccess, 00786 IN POBJECT_ATTRIBUTES ObjectAttributes, 00787 OUT PIO_STATUS_BLOCK IoStatusBlock, 00788 IN ULONG ShareAccess, 00789 IN ULONG OpenOptions 00790 ); 00791 00792 NTSYSAPI 00793 NTSTATUS 00794 NTAPI 00795 ZwOpenIoCompletion( 00796 OUT PHANDLE CompetionPort, 00797 IN ACCESS_MASK DesiredAccess, 00798 IN POBJECT_ATTRIBUTES ObjectAttributes 00799 ); 00800 00801 NTSYSAPI 00802 NTSTATUS 00803 NTAPI 00804 ZwQueryAttributesFile( 00805 IN POBJECT_ATTRIBUTES ObjectAttributes, 00806 OUT PFILE_BASIC_INFORMATION FileInformation 00807 ); 00808 00809 NTSYSAPI 00810 NTSTATUS 00811 NTAPI 00812 ZwQueryDirectoryFile( 00813 IN HANDLE FileHandle, 00814 IN HANDLE Event OPTIONAL, 00815 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, 00816 IN PVOID ApcContext OPTIONAL, 00817 OUT PIO_STATUS_BLOCK IoStatusBlock, 00818 OUT PVOID FileInformation, 00819 IN ULONG Length, 00820 IN FILE_INFORMATION_CLASS FileInformationClass, 00821 IN BOOLEAN ReturnSingleEntry, 00822 IN PUNICODE_STRING FileName OPTIONAL, 00823 IN BOOLEAN RestartScan 00824 ); 00825 00826 #ifdef NTOS_MODE_USER 00827 NTSYSAPI 00828 NTSTATUS 00829 NTAPI 00830 ZwQueryEaFile( 00831 IN HANDLE FileHandle, 00832 OUT PIO_STATUS_BLOCK IoStatusBlock, 00833 OUT PVOID Buffer, 00834 IN ULONG Length, 00835 IN BOOLEAN ReturnSingleEntry, 00836 IN PVOID EaList OPTIONAL, 00837 IN ULONG EaListLength, 00838 IN PULONG EaIndex OPTIONAL, 00839 IN BOOLEAN RestartScan 00840 ); 00841 #endif 00842 00843 NTSYSAPI 00844 NTSTATUS 00845 NTAPI 00846 ZwQueryFullAttributesFile( 00847 IN POBJECT_ATTRIBUTES ObjectAttributes, 00848 OUT PFILE_NETWORK_OPEN_INFORMATION FileInformation 00849 ); 00850 00851 NTSYSAPI 00852 NTSTATUS 00853 NTAPI 00854 ZwQueryInformationFile( 00855 IN HANDLE FileHandle, 00856 OUT PIO_STATUS_BLOCK IoStatusBlock, 00857 OUT PVOID FileInformation, 00858 IN ULONG Length, 00859 IN FILE_INFORMATION_CLASS FileInformationClass 00860 ); 00861 00862 NTSYSAPI 00863 NTSTATUS 00864 NTAPI 00865 ZwQueryIoCompletion( 00866 IN HANDLE IoCompletionHandle, 00867 IN IO_COMPLETION_INFORMATION_CLASS IoCompletionInformationClass, 00868 OUT PVOID IoCompletionInformation, 00869 IN ULONG IoCompletionInformationLength, 00870 OUT PULONG ResultLength OPTIONAL 00871 ); 00872 00873 NTSYSAPI 00874 NTSTATUS 00875 NTAPI 00876 ZwQueryQuotaInformationFile( 00877 IN HANDLE FileHandle, 00878 OUT PIO_STATUS_BLOCK IoStatusBlock, 00879 OUT PVOID Buffer, 00880 IN ULONG Length, 00881 IN BOOLEAN ReturnSingleEntry, 00882 IN PVOID SidList OPTIONAL, 00883 IN ULONG SidListLength, 00884 IN PSID StartSid OPTIONAL, 00885 IN BOOLEAN RestartScan 00886 ); 00887 00888 NTSYSAPI 00889 NTSTATUS 00890 NTAPI 00891 ZwQueryVolumeInformationFile( 00892 IN HANDLE FileHandle, 00893 OUT PIO_STATUS_BLOCK IoStatusBlock, 00894 OUT PVOID FsInformation, 00895 IN ULONG Length, 00896 IN FS_INFORMATION_CLASS FsInformationClass 00897 ); 00898 00899 NTSYSAPI 00900 NTSTATUS 00901 NTAPI 00902 ZwReadFile( 00903 IN HANDLE FileHandle, 00904 IN HANDLE Event OPTIONAL, 00905 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL, 00906 IN PVOID UserApcContext OPTIONAL, 00907 OUT PIO_STATUS_BLOCK IoStatusBlock, 00908 OUT PVOID Buffer, 00909 IN ULONG BufferLength, 00910 IN PLARGE_INTEGER ByteOffset OPTIONAL, 00911 IN PULONG Key OPTIONAL 00912 ); 00913 00914 NTSYSAPI 00915 NTSTATUS 00916 NTAPI 00917 ZwReadFileScatter( 00918 IN HANDLE FileHandle, 00919 IN HANDLE Event OPTIONAL, 00920 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL, 00921 IN PVOID UserApcContext OPTIONAL, 00922 OUT PIO_STATUS_BLOCK UserIoStatusBlock, 00923 IN FILE_SEGMENT_ELEMENT BufferDescription[], 00924 IN ULONG BufferLength, 00925 IN PLARGE_INTEGER ByteOffset, 00926 IN PULONG Key OPTIONAL 00927 ); 00928 00929 NTSYSAPI 00930 NTSTATUS 00931 NTAPI 00932 ZwRemoveIoCompletion( 00933 IN HANDLE IoCompletionHandle, 00934 OUT PVOID *CompletionKey, 00935 OUT PVOID *CompletionContext, 00936 OUT PIO_STATUS_BLOCK IoStatusBlock, 00937 IN PLARGE_INTEGER Timeout OPTIONAL 00938 ); 00939 00940 #ifdef NTOS_MODE_USER 00941 NTSYSAPI 00942 NTSTATUS 00943 NTAPI 00944 ZwSetEaFile( 00945 IN HANDLE FileHandle, 00946 IN PIO_STATUS_BLOCK IoStatusBlock, 00947 PVOID EaBuffer, 00948 ULONG EaBufferSize 00949 ); 00950 #endif 00951 00952 NTSYSAPI 00953 NTSTATUS 00954 NTAPI 00955 ZwSetInformationFile( 00956 IN HANDLE FileHandle, 00957 IN PIO_STATUS_BLOCK IoStatusBlock, 00958 IN PVOID FileInformation, 00959 IN ULONG Length, 00960 IN FILE_INFORMATION_CLASS FileInformationClass 00961 ); 00962 00963 NTSYSAPI 00964 NTSTATUS 00965 NTAPI 00966 ZwSetIoCompletion( 00967 IN HANDLE IoCompletionPortHandle, 00968 IN PVOID CompletionKey, 00969 IN PVOID CompletionContext, 00970 IN NTSTATUS CompletionStatus, 00971 IN ULONG CompletionInformation 00972 ); 00973 00974 NTSYSAPI 00975 NTSTATUS 00976 NTAPI 00977 ZwSetQuotaInformationFile( 00978 HANDLE FileHandle, 00979 PIO_STATUS_BLOCK IoStatusBlock, 00980 PVOID Buffer, 00981 ULONG BufferLength 00982 ); 00983 00984 NTSYSAPI 00985 NTSTATUS 00986 NTAPI 00987 ZwSetVolumeInformationFile( 00988 IN HANDLE FileHandle, 00989 OUT PIO_STATUS_BLOCK IoStatusBlock, 00990 IN PVOID FsInformation, 00991 IN ULONG Length, 00992 IN FS_INFORMATION_CLASS FsInformationClass 00993 ); 00994 00995 NTSYSAPI 00996 NTSTATUS 00997 NTAPI 00998 ZwUnloadDriver( 00999 IN PUNICODE_STRING DriverServiceName 01000 ); 01001 01002 NTSYSAPI 01003 NTSTATUS 01004 NTAPI 01005 ZwUnlockFile( 01006 IN HANDLE FileHandle, 01007 OUT PIO_STATUS_BLOCK IoStatusBlock, 01008 IN PLARGE_INTEGER ByteOffset, 01009 IN PLARGE_INTEGER Lenght, 01010 OUT ULONG Key OPTIONAL 01011 ); 01012 01013 NTSYSAPI 01014 NTSTATUS 01015 NTAPI 01016 ZwWriteFile( 01017 IN HANDLE FileHandle, 01018 IN HANDLE Event OPTIONAL, 01019 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, 01020 IN PVOID ApcContext OPTIONAL, 01021 OUT PIO_STATUS_BLOCK IoStatusBlock, 01022 IN PVOID Buffer, 01023 IN ULONG Length, 01024 IN PLARGE_INTEGER ByteOffset, 01025 IN PULONG Key OPTIONAL 01026 ); 01027 01028 NTSYSAPI 01029 NTSTATUS 01030 NTAPI 01031 ZwWriteFileGather( 01032 IN HANDLE FileHandle, 01033 IN HANDLE Event OPTIONAL, 01034 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL, 01035 IN PVOID ApcContext OPTIONAL, 01036 OUT PIO_STATUS_BLOCK IoStatusBlock, 01037 IN FILE_SEGMENT_ELEMENT BufferDescription[], 01038 IN ULONG BufferLength, 01039 IN PLARGE_INTEGER ByteOffset, 01040 IN PULONG Key OPTIONAL 01041 ); 01042 01043 #endif 01044 01045 Generated on Sun May 27 2012 04:30:51 for ReactOS by
1.7.6.1
|