Commit Graph

68 Commits

Author SHA1 Message Date
Francois Gouget
c27db9b07c Assorted spelling fixes. 2004-09-14 19:31:22 +00:00
Mike McCormack
03425cb09d Added stub implementations for NtDeleteFile and NtCancelIoFile. 2004-08-27 19:11:01 +00:00
Robert Shearman
f84a53c099 Handle ECONNRESET in FILE_GetNtStatus. 2004-08-19 02:41:55 +00:00
Robert Shearman
eee6adc9b6 - Errors should only be reported to I/O completion routine after
NtReadFile has succeeded.
- Test case for this behaviour.
2004-08-19 02:34:51 +00:00
Emmanuel Maillard
2300ce663a - Update build system to support IOKit and CoreFoundation frameworks
on Darwin.
- Add support for the -framework "name" linker option.
- NtQueryVolumeInformationFile set device info on Darwin.
2004-08-19 01:20:45 +00:00
Rein Klazes
6293769f52 Do not make a directory read-only. 2004-08-18 20:57:30 +00:00
Alexandre Julliard
6a27b48895 Fd type is no longer used, get rid of it. 2004-08-18 00:04:58 +00:00
Eric Pouech
1ffddb4d0c - better support for non-blocking COMM and socket read/writes:
+ added necessary semantics to fd flags
  + no longer uses fd type (but fd flags) read/write semantic behavior
- fixed socket code to use the proper manifest constants
- fixes for kernel32.GetOverlappedResult without hEvent set
- in ntdll.Nt{Read|Write}File
  + always reset the event
  + added support for longlong offsets
  + better object disposal in error handling code paths
2004-08-17 23:37:55 +00:00
Mike McCormack
278f743a4c Stub implementation and declaration for NtCreateNamedPipeFile. 2004-08-16 21:08:38 +00:00
Alexandre Julliard
2bcef9e1fb Don't use lseek when truncating a file to avoid corrupting the current
file position.
2004-06-17 23:05:48 +00:00
Alexandre Julliard
8c29b5f0cc Removed the no longer used SMB file I/O support, we can't do reliable
file I/O in user space anyway.
2004-05-14 22:24:48 +00:00
Alexandre Julliard
b592cbbc18 Reimplemented GetFileType and SetEndOfFile using ntdll functions. 2004-05-01 02:44:00 +00:00
Alexandre Julliard
d4874d6406 Added a few more info classes in NtQueryInformationFile.
Use NT file names in CreateNamedPipeW.
Reimplemented GetFileInformationByHandle, GetFileSize and GetFileTime
using ntdll functions.
2004-04-30 21:03:09 +00:00
Alexandre Julliard
ff07c20446 Moved support for opening named pipes to ntdll. 2004-04-30 19:04:19 +00:00
Alexandre Julliard
ffcc67abf1 Added auto-detection of DOS drive devices based on finding the
corresponding mount point in /etc/mtab or /etc/fstab.
2004-04-29 20:04:48 +00:00
Alexandre Julliard
cf67839bc4 Pass the creation disposition to wine_nt_to_unix_file_name so that it
can return the correct error code in all cases.
Changed MoveFileExW to use wine_nt_to_unix_file_name to avoid
computing the NT name twice.
Fixed crash in GetDriveTypeW with a NULL root.
2004-04-27 02:15:52 +00:00
Alexandre Julliard
9db147e5e4 Make DIR_nt_to_unix return STATUS_NO_SUCH_FILE instead of
STATUS_OBJECT_NAME_NOT_FOUND to indicate that the last component
didn't exist to allow distinguishing it from legitimate errors.
Export it from ntdll, renamed to wine_nt_to_unix_file_name.
2004-04-23 02:46:18 +00:00
Alexandre Julliard
4bb759e8ad Properly set IO_STATUS_BLOCK.Information in NtCreateFile. 2004-04-21 22:26:44 +00:00
Alexandre Julliard
e4409325d2 Reimplemented GetFileAttributesExW and GetCompressedFileSizeW using
the corresponding ntdll functionality.
2004-04-20 04:06:49 +00:00
Alexandre Julliard
174e2a6464 Reimplemented GetFileAttributesW, SetFileAttributesW and SetFileTime
using the corresponding ntdll functionality.
2004-04-20 00:36:29 +00:00
Alexandre Julliard
716878c5b1 Fixed a number of NT status values to be closer to NT behavior. 2004-04-16 23:32:40 +00:00
Alexandre Julliard
e792fb74ba Implemented NtCreatelFile using the new symlink scheme.
Use NtCreateFile in the loader, and get rid of the CreateFileW upcall
hack.
2004-04-12 23:31:09 +00:00
Alexandre Julliard
743997fa38 Replace the get_file_info request by an fstat() on the client side. 2004-04-08 04:39:59 +00:00
Alexandre Julliard
db4517010b Handle the set_file_pointer request on the client side. 2004-04-07 22:02:09 +00:00
Alexandre Julliard
0adec9a7c1 Better support for device handles in NtQueryVolumeInformationFile. 2004-04-07 03:58:55 +00:00
Alexandre Julliard
670711ef25 Handle file mappings on removable media entirely inside ntdll. 2004-04-06 23:13:47 +00:00
Alexandre Julliard
01c5ef37cc Partial implementation of NtQueryVolumeInformationFile. 2004-04-06 04:19:41 +00:00
Alexandre Julliard
f30cfa8858 Implemented NtQueryDirectoryFile (partly based on a patch by Eric
Pouech).
2004-03-16 01:32:02 +00:00
Alexandre Julliard
fe8ead56a8 Get rid of ntdll_get_process_heap and ntdll_get_process_pmts by using
standard APIs instead.
2004-03-12 01:59:35 +00:00
Alexandre Julliard
954c570ae3 Reimplemented GetVolumeInformation and SetVolumeLabel; volume label
and serial number are now stored in the filesystem instead of in the
config file (partly based on a patch by Eric Pouech).
2004-03-09 01:03:03 +00:00
Alexandre Julliard
db692c8f39 Open a real file handle for drive devices, and get rid of the server
device hacks (based on a patch by Eric Pouech).
2004-03-04 23:00:18 +00:00
Ge van Geldorp
399901e054 Rename LARGE_INTEGER and ULARGE_INTEGER members "s" to "u" to conform
with PSDK.
2004-01-23 01:51:33 +00:00
Marcus Meissner
41beb71636 Allow offset of NULL to NtWriteFile. 2004-01-09 20:09:08 +00:00
Alexandre Julliard
f3f435ffa1 Added wine_server_release_fd function to release the fd returned by
wine_server_handle_to_fd. Fixed a couple of potential fd leaks.
2003-12-01 23:01:12 +00:00
Robert Shearman
3842103c74 Handle EIO file error. 2003-11-21 23:53:44 +00:00
Carlos Lozano
b40a287e03 NtReadFile checks that offset is not null. 2003-11-11 21:57:07 +00:00
Alexandre Julliard
953849f2fc Added hack to call CreateFileW through a pointer so that we don't need
to link to kernel functions.
Commented out SMB support in NtReadFile for now.
2003-10-08 03:51:31 +00:00
Alexandre Julliard
01def427b7 Pass the cdrom device path in CDROM_InitRegistry so that ntdll doesn't
need to call DRIVE_GetDevice.
Get rid of GetDriveType calls.
2003-10-08 02:59:22 +00:00
Eric Pouech
a851c88001 Regression fixes for Nt{Read|Write}File:
- actually block in TIMEOUT mode
- in overlapped mode, if any data is already available then process it
  without returning a pending status code
2003-08-18 19:45:53 +00:00
Jon Griffiths
7787587587 Documentation updates. 2003-07-18 22:55:28 +00:00
Paul Rupe
eede817da2 register_new_async sets status already. Do not overwrite it with the
function's return value.
2003-07-11 21:44:17 +00:00
Alexandre Julliard
217fdab78f Implemented NtDelayExecution and make Sleep call it.
The handle count must not be 0 in NtWaitForMultipleObjects (spotted by
Troy Rollo).
2003-06-30 21:00:15 +00:00
Eric Pouech
9bd4f6bf15 - made async.h ready for use in ntdll: replaced all calls to kernel32
functions with ntdll equivalent
- replaced status setter/getter for wine async structures with direct
  access to a (now included) IO_STATUS_BLOCK structure
- since we now have a IO_STATUS_BLOCK in async_private, we no longer
  need in most of the user (derivated) structures a field for
  LPOVERLAPPED (it's stored as the IO_STATUS_BLOCK)
- rewrote the async.h users accordingly
- implemented ntdll.Nt{Read|Write}File and let
  kernel32.{Read|Write}File(Ex)? use those new ntdll functions
- rewrote smb read/write interfaces to be more ntdll stylish (no
  overlapped yet)
2003-06-26 02:08:17 +00:00
Eric Pouech
583bb3fd3e - started implementing ntdll.NtDeviceIoControlFile and made
kernel32.DeviceIoControl call it
- changed cdrom ioctl function's prototype to stick to
  ntdll.NtDeviceIoControlFile signature
2003-06-24 19:28:21 +00:00
Eric Pouech
f6a70969e1 - start moving a few file related functions from files/file.c to
dlls/kernel subdir (also splitting 16bit APIs in a separate file)
- implemented ntdll.Nt{Lock|Unlock}File, and made use of those for the
  kernel32 equivalent
- implemented a few information classes in NtQueryInformationFile and
  NtSetInformationFile (still lots of missing classes)
- enhanced the get_file_info server request in order to implement
  correctly NtQueryInformationFile (change time & file alloc size)
- rewrote registry loading to comply with latest changes
2003-06-24 02:32:01 +00:00
Francois Gouget
9591836ffb 'sizeof type' is best avoided as it won't always compile (e.g. 'int
main() {return sizeof int;}'). Use 'sizeof(type)' instead.
2003-06-18 19:45:22 +00:00
Mike McCormack
ef8b94622a - rewrite of the named pipe code
- allow NtFileFlushBuffers to wait
- allow DisconnectNamedPipe to invalidate client cached fd
- fix the pipe test now that one extra test passes
2003-05-15 04:22:45 +00:00
Eric Pouech
b6338878a8 Moved kernel32.FlushFileBuffers to ntdll.NtFlushBuffersFile. 2003-04-22 04:04:17 +00:00
Dimitrie O. Paun
297f3d898d Define NONAMELESS{STRUCT,UNION} explicitly in the files that need them. 2003-01-07 20:36:20 +00:00
Patrik Stridvall
75dee506ae Replace 0x%p with %p. 2002-12-05 19:56:15 +00:00