3 #include "debugtools.h"
4 #include "ntdll_misc.h"
8 DEFAULT_DEBUG_CHANNEL(ntdll
)
10 /**************************************************************************
11 * NtOpenFile [NTDLL.127]
12 * FUNCTION: Opens a file
14 * FileHandle Variable that receives the file handle on return
15 * DesiredAccess Access desired by the caller to the file
16 * ObjectAttributes Structue describing the file to be opened
17 * IoStatusBlock Receives details about the result of the operation
18 * ShareAccess Type of shared access the caller requires
19 * OpenOptions Options for the file open
21 NTSTATUS WINAPI
NtOpenFile(
22 OUT PHANDLE FileHandle
,
23 ACCESS_MASK DesiredAccess
,
24 POBJECT_ATTRIBUTES ObjectAttributes
,
25 OUT PIO_STATUS_BLOCK IoStatusBlock
,
29 FIXME("(%p,0x%08lx,%p,%p,0x%08lx,0x%08lx) stub\n",
30 FileHandle
, DesiredAccess
, ObjectAttributes
,
31 IoStatusBlock
, ShareAccess
, OpenOptions
);
32 dump_ObjectAttributes (ObjectAttributes
);
36 /**************************************************************************
37 * NtCreateFile [NTDLL.73]
38 * FUNCTION: Either causes a new file or directory to be created, or it opens
39 * an existing file, device, directory or volume, giving the caller a handle
40 * for the file object. This handle can be used by subsequent calls to
41 * manipulate data within the file or the file object's state of attributes.
43 * FileHandle Points to a variable which receives the file handle on return
44 * DesiredAccess Desired access to the file
45 * ObjectAttributes Structure describing the file
46 * IoStatusBlock Receives information about the operation on return
47 * AllocationSize Initial size of the file in bytes
48 * FileAttributes Attributes to create the file with
49 * ShareAccess Type of shared access the caller would like to the file
50 * CreateDisposition Specifies what to do, depending on whether the file already exists
51 * CreateOptions Options for creating a new file
52 * EaBuffer Undocumented
53 * EaLength Undocumented
55 NTSTATUS WINAPI
NtCreateFile(
56 OUT PHANDLE FileHandle
,
57 ACCESS_MASK DesiredAccess
,
58 POBJECT_ATTRIBUTES ObjectAttributes
,
59 OUT PIO_STATUS_BLOCK IoStatusBlock
,
60 PLARGE_INTEGER AllocateSize
,
63 ULONG CreateDisposition
,
68 FIXME("(%p,0x%08lx,%p,%p,%p,0x%08lx,0x%08lx,0x%08lx,0x%08lx,%p,0x%08lx) stub\n",
69 FileHandle
,DesiredAccess
,ObjectAttributes
,
70 IoStatusBlock
,AllocateSize
,FileAttributes
,
71 ShareAccess
,CreateDisposition
,CreateOptions
,EaBuffer
,EaLength
);
72 dump_ObjectAttributes (ObjectAttributes
);
76 /******************************************************************************
82 * HANDLE32 Event OPTIONAL
83 * PIO_APC_ROUTINE ApcRoutine OPTIONAL
84 * PVOID ApcContext OPTIONAL
85 * PIO_STATUS_BLOCK IoStatusBlock
88 * PLARGE_INTEGER ByteOffset OPTIONAL
91 NTSTATUS WINAPI
NtReadFile (
94 PIO_APC_ROUTINE ApcRoutine
,
96 PIO_STATUS_BLOCK IoStatusBlock
,
99 PLARGE_INTEGER ByteOffset
,
102 FIXME("(0x%08x,0x%08x,%p,%p,%p,%p,0x%08lx,%p,%p),stub!\n",
103 FileHandle
,EventHandle
,ApcRoutine
,ApcContext
,IoStatusBlock
,Buffer
,Length
,ByteOffset
,Key
);
107 /**************************************************************************
108 * NtDeviceIoControlFile [NTDLL.94]
110 NTSTATUS WINAPI
NtDeviceIoControlFile(
111 IN HANDLE DeviceHandle
,
112 IN HANDLE Event OPTIONAL
,
113 IN PIO_APC_ROUTINE UserApcRoutine OPTIONAL
,
114 IN PVOID UserApcContext OPTIONAL
,
115 OUT PIO_STATUS_BLOCK IoStatusBlock
,
116 IN ULONG IoControlCode
,
117 IN PVOID InputBuffer
,
118 IN ULONG InputBufferSize
,
119 OUT PVOID OutputBuffer
,
120 IN ULONG OutputBufferSize
)
122 FIXME("(0x%08x,0x%08x,%p,%p,%p,0x%08lx,%p,0x%08lx,%p,0x%08lx): empty stub\n",
123 DeviceHandle
, Event
, UserApcRoutine
, UserApcContext
,
124 IoStatusBlock
, IoControlCode
, InputBuffer
, InputBufferSize
, OutputBuffer
, OutputBufferSize
);
128 /******************************************************************************
129 * NtFsControlFile [NTDLL.108]
131 NTSTATUS WINAPI
NtFsControlFile(
132 IN HANDLE DeviceHandle
,
133 IN HANDLE Event OPTIONAL
,
134 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL
,
135 IN PVOID ApcContext OPTIONAL
,
136 OUT PIO_STATUS_BLOCK IoStatusBlock
,
137 IN ULONG IoControlCode
,
138 IN PVOID InputBuffer
,
139 IN ULONG InputBufferSize
,
140 OUT PVOID OutputBuffer
,
141 IN ULONG OutputBufferSize
)
143 FIXME("(0x%08x,0x%08x,%p,%p,%p,0x%08lx,%p,0x%08lx,%p,0x%08lx): stub\n",
144 DeviceHandle
,Event
,ApcRoutine
,ApcContext
,IoStatusBlock
,IoControlCode
,
145 InputBuffer
,InputBufferSize
,OutputBuffer
,OutputBufferSize
);
149 /******************************************************************************
150 * NtSetVolumeInformationFile [NTDLL]
152 NTSTATUS WINAPI
NtSetVolumeInformationFile(
153 IN HANDLE FileHandle
,
154 PIO_STATUS_BLOCK IoStatusBlock
,
157 FS_INFORMATION_CLASS FsInformationClass
)
159 FIXME("(0x%08x,%p,%p,0x%08lx,0x%08x) stub\n",
160 FileHandle
,IoStatusBlock
,FsInformation
,Length
,FsInformationClass
);
164 /******************************************************************************
165 * NtQueryInformationFile [NTDLL]
167 NTSTATUS WINAPI
NtQueryInformationFile(
169 PIO_STATUS_BLOCK IoStatusBlock
,
170 PVOID FileInformation
,
172 FILE_INFORMATION_CLASS FileInformationClass
)
174 FIXME("(0x%08x,%p,%p,0x%08lx,0x%08x),stub!\n",
175 FileHandle
,IoStatusBlock
,FileInformation
,Length
,FileInformationClass
);
179 /******************************************************************************
180 * NtSetInformationFile [NTDLL]
182 NTSTATUS WINAPI
NtSetInformationFile(
184 PIO_STATUS_BLOCK IoStatusBlock
,
185 PVOID FileInformation
,
187 FILE_INFORMATION_CLASS FileInformationClass
)
189 FIXME("(0x%08x,%p,%p,0x%08lx,0x%08x)\n",
190 FileHandle
,IoStatusBlock
,FileInformation
,Length
,FileInformationClass
);
194 /******************************************************************************
195 * NtQueryDirectoryFile [NTDLL]
196 * ZwQueryDirectoryFile
198 NTSTATUS WINAPI
NtQueryDirectoryFile(
199 IN HANDLE FileHandle
,
200 IN HANDLE Event OPTIONAL
,
201 IN PIO_APC_ROUTINE ApcRoutine OPTIONAL
,
202 IN PVOID ApcContext OPTIONAL
,
203 OUT PIO_STATUS_BLOCK IoStatusBlock
,
204 OUT PVOID FileInformation
,
206 IN FILE_INFORMATION_CLASS FileInformationClass
,
207 IN BOOLEAN ReturnSingleEntry
,
208 IN PUNICODE_STRING FileName OPTIONAL
,
209 IN BOOLEAN RestartScan
)
211 FIXME("(0x%08x 0x%08x %p %p %p %p 0x%08lx 0x%08x 0x%08x %p 0x%08x\n",
212 FileHandle
, Event
, ApcRoutine
, ApcContext
, IoStatusBlock
, FileInformation
,
213 Length
, FileInformationClass
, ReturnSingleEntry
,
214 debugstr_us(FileName
),RestartScan
);
218 /******************************************************************************
219 * NtQueryVolumeInformationFile [NTDLL]
221 NTSTATUS WINAPI
NtQueryVolumeInformationFile (
222 IN HANDLE FileHandle
,
223 OUT PIO_STATUS_BLOCK IoStatusBlock
,
224 OUT PVOID FSInformation
,
226 IN FS_INFORMATION_CLASS FSInformationClass
)
228 TRACE("(0x%08x %p %p 0x%08lx 0x%08x) stub\n",
229 FileHandle
, IoStatusBlock
, FSInformation
, Length
, FSInformationClass
);
230 return STATUS_SUCCESS
;