Commit Graph

379 Commits

Author SHA1 Message Date
Alexandre Julliard 46fe7177c1 server: Allocate the wait event for FSCTL_PIPE_WAIT on the server side. 2007-05-03 17:44:32 +02:00
Alexandre Julliard 63a2372526 server: Allocate the wait event for FSCTL_PIPE_LISTEN on the server side. 2007-05-03 17:44:05 +02:00
Alexandre Julliard fd59e158a7 server: Infrastructure to return a wait handle for blocking ioctls. 2007-05-03 17:43:18 +02:00
Alexandre Julliard 133b8bc3ed server: Return a more correct fd type for anonymous files. 2007-04-23 15:13:22 +02:00
Alexandre Julliard 6105a93be6 server: Moved the FSCTL_PIPE_LISTEN implementation to the server. 2007-04-18 16:26:37 +02:00
Alexandre Julliard 3684dc181c server: Move the FSCTL_PIPE_WAIT ioctl implementation to the server. 2007-04-17 22:07:07 +02:00
Alexandre Julliard aaf477f292 server: Change the timeout handling to use NT-style 64-bit timeouts everywhere. 2007-04-17 20:08:59 +02:00
Alexandre Julliard 2669af73df server: Move the server part of device unmounting to the ioctl processing. 2007-04-16 14:54:52 +02:00
Alexandre Julliard 8c46095484 server: Implement the FSCTL_PIPE_DISCONNECT ioctl on the server side. 2007-04-16 14:51:29 +02:00
Alexandre Julliard 635714397f server: Add infrastructure for ioctl server request. 2007-04-16 14:45:03 +02:00
Alexandre Julliard d85121f199 ntdll: Store the file access and options in the fd cache, and get rid of the dynamic flags.
This avoids server round-trips for all file I/O.
2007-04-10 22:32:46 +02:00
Alexandre Julliard bc426ab059 server: Explicitly shutdown closed pipes to prevent access from file descriptors cached in the client. 2007-04-10 21:30:37 +02:00
Alexandre Julliard 64ba011dba ntdll: Determine the async read avail_mode flag from the client side. 2007-04-10 17:27:50 +02:00
Alexandre Julliard 6dcb280bc5 ntdll: Simplify the async read/write code now that most of the work is done in the server. 2007-04-10 17:19:24 +02:00
Alexandre Julliard 72bff2e445 server: Add support for restarting an async I/O when the client side couldn't finish it right away. 2007-04-10 17:07:27 +02:00
Marcus Meissner 6c2e14e5b0 ntdll: Remove superflous NULL checks. 2007-04-09 12:23:17 +02:00
Alexandre Julliard c915215ba6 ntdll: Use send(2) instead of write(2) for zero-byte writes to sockets. 2007-04-09 12:21:24 +02:00
Alexandre Julliard 7df060fc43 ntdll: Rely on the server to queue the final APC for asynchronous read/write. 2007-04-06 20:17:08 +02:00
Alexandre Julliard 55f3605c37 ntdll: Reimplement NtWriteFile.
Always try a write() before queuing an async I/O.
Handle timeout waits for synchronous I/O entirely on the client side.
Queue the final APC as a proper user APC.
2007-04-06 16:06:16 +02:00
Alexandre Julliard 539d5863e6 ntdll: Reimplement NtReadFile.
Always try a read() before queuing an async I/O.
Handle timeout waits for synchronous I/O entirely on the client side.
Queue the final APC as a proper user APC.
2007-04-06 16:05:53 +02:00
Alexandre Julliard 7165e19a24 ntdll: Avoid relying on the IO_STATUS_BLOCK for storing the current transfer count. 2007-04-05 11:03:38 +02:00
Alexandre Julliard e57749d5a8 ntdll: Avoid setting status in IO_STATUS_BLOCK until the I/O operation is done. 2007-04-05 10:55:40 +02:00
Alexandre Julliard c16eb8efd9 server: Add support for queuing a user APC upon async I/O completion. 2007-03-27 16:42:27 +02:00
Alexandre Julliard 589ce2bb8d server: Always return STATUS_PENDING when an async I/O operation has been queued. 2007-03-26 19:13:21 +02:00
Alexandre Julliard c0fca0a186 ntdll: Avoid overwriting the result of the async I/O callback in NtFsControlFile. 2007-03-23 14:02:13 +01:00
Alexandre Julliard de1866d4fd server: Implement the open_file method for named pipes.
Get rid of the open_named_pipe request, we can now use a normal open_file_object.
2007-03-22 16:47:46 +01:00
Alexandre Julliard 806bb49eda server: Implement the open_file method for mailslots.
Get rid of the open_mailslot request, we can now use a normal open_file_object.
2007-03-22 16:36:54 +01:00
Alexandre Julliard 928d28f688 server: Don't enforce mailslots path format in ntdll, only in the server. 2007-03-22 14:41:37 +01:00
Alexandre Julliard 50c4800405 server: Don't enforce named pipes path format in ntdll, only in the server. 2007-03-22 14:40:41 +01:00
Alexandre Julliard 94655c8493 server: Implemented the open_file method for named pipe and mailslot devices. 2007-03-22 11:52:40 +01:00
Alexandre Julliard a133ad56f9 server: Move the signalling of the named pipe completion event to the server. 2007-03-21 14:31:54 +01:00
Alexandre Julliard ed016f9bb6 server: Move the signalling of the completion event for NtRead/WriteFile to the server. 2007-03-21 14:29:19 +01:00
Alexandre Julliard 111610c45e server: Add an async_data_t structure to store parameters for async I/O requests. 2007-03-20 20:21:12 +01:00
Alexandre Julliard eb3728d34e server: Use the common pattern for async I/O parameters in named pipe requests. 2007-03-20 19:21:15 +01:00
Jeff Latimer 8b2a86a892 ntdll: Test object attributes in NtCreateMailslotFile. 2007-02-28 13:31:26 +01:00
Jeff Latimer 74db5a192e ntdll: Set default timeout in NtCreateMailslotFile if parameter is NULL. 2007-02-28 13:29:53 +01:00
Jeff Latimer cb489f7a25 ntdll: Check for passing a NULL handle to NtCreateMailslotFile and add a test. 2007-02-28 13:29:16 +01:00
Marcus Meissner a4c47c9ec3 ntdll: Initialize needs_close to FALSE. 2007-02-09 11:48:55 +01:00
Rob Shearman 8132707bce kernel32: Handle the SECURITY_* flags passed into CreateFileW by filling out the SECURITY_QUALITY_OF_SERVICE structure and passing it to NtCreateFile.
Print a fixme in NtCreateFile if the SECURITY_QUALITY_OF_SERVICE
structure is specified, since it isn't handled yet.
2007-01-22 12:02:04 +01:00
Alexandre Julliard 027491f6af ntdll: Avoid heap allocation in fd cache. Fixed a couple of races. 2007-01-18 12:18:29 +01:00
Jeff Latimer 588a350f6d ntdll: Remove an unnecessary NULL check. 2007-01-02 12:09:03 +01:00
Dmitry Timoshkov b5cce1e525 ntdll: Map ESPIPE to STATUS_ILLEGAL_FUNCTION. 2007-01-01 17:04:40 +01:00
Alexandre Julliard a902632483 ntdll: Don't bother with async I/O on regular files. 2006-11-20 14:15:43 +01:00
Alexandre Julliard 83ce958793 ntdll: Store the fd type in the cache and return it in server_get_unix_fd. 2006-11-20 14:15:06 +01:00
Alexandre Julliard df51cf5c83 ntdll: Re-add sys/ioctl.h that got lost in the PeekNamedPipe move. 2006-11-09 09:18:43 +01:00
Alexandre Julliard 02fc886302 ntdll: Retrieve mailslot message info from the client side. 2006-11-03 17:53:04 +01:00
Alexandre Julliard 511e0bb671 ntdll: FILE_GetDeviceInfo no longer needs to be public. 2006-11-03 15:20:21 +01:00
Alexandre Julliard d384871bc3 ntdll: Don't store the unix file descriptor in the async structure, retrieve it as needed. 2006-11-03 11:56:51 +01:00
Alexandre Julliard 9ddb9294da ntdll: Added a server_get_unix_fd function that avoids doing a dup() of the fd when not required. 2006-11-03 11:38:44 +01:00
Alexandre Julliard 28418cc919 ntdll: Maintain a file descriptor cache on the client side. 2006-11-02 20:48:19 +01:00
Alexandre Julliard 313d93e491 kernel32: Moved PeekNamedPipe implementation to ntdll. 2006-11-01 16:24:36 +01:00
Alexandre Julliard 0d29ba96d3 ntdll: Added NetBSD fstatvfs support. 2006-11-01 13:15:57 +01:00
Hans Leidekker f7b0ba7aa7 ntdll: Win64 printf format warning fixes. 2006-10-18 12:35:26 +02:00
Alexandre Julliard e57118b2fd ntdll: Added error mapping for ENXIO. 2006-10-03 15:06:41 +02:00
Alexandre Julliard c727986499 ntdll: Remove the IOKit code and reuse the FreeBSD implementation for MacOS.
FILE_GetDeviceInfo needs to be efficient, and IOKit is much too slow
to be used here.
2006-09-12 09:43:37 +02:00
Detlef Riekenberg ace8fd7298 ntdll: attr is never NULL inside NtCreateFile. 2006-09-08 12:44:09 +02:00
Eric Pouech 1d6e2590e0 ntdll/kernel32: Pipe information.
- implemented ntdll.NtQueryInformationFile's FilePipeLocalInformation control code 
- reimplemented kernel32.GetNamedPipeInfo on top of it
- enhance current features to make this work both on client and server handles
- now also returning the number of instances
2006-05-27 12:31:01 +02:00
Francois Gouget 5d51d4c87b ntdll: Return FILE_DEVICE_CD_ROM_FILE_SYSTEM for supermount filesystems. 2006-05-25 11:01:18 +02:00
Jonathan Ernst 360a3f9142 Update the address of the Free Software Foundation. 2006-05-23 14:11:13 +02:00
Bernd Buschinski da6031fbab ntdll: Stub implementation of FSCTL_LOCK_VOLUME/FSCTL_UNLOCK_VOLUME. 2006-05-10 19:37:30 +02:00
Robert Millan 55b74483de configure: For sys/mount.h, sys/statfs.h and sys/vfs.h, always include
them if present.
2006-02-06 21:53:27 +01:00
Robert Millan 8800352477 Enable for GNU/kFreeBSD the same kernel-specific interface/parameter
that is used with FreeBSD.
2006-02-05 13:06:50 +01:00
Alexandre Julliard 8b0feb253b server: Make the FILE_SHARE_DELETE sharing checks depend on DELETE
access instead of on the FILE_DELETE_ON_CLOSE flag (based on a patch
by Mike McCormack).
2006-01-27 15:50:38 +01:00
Hans Leidekker 0844b702b4 ntdll: Add implementation of tape IOCTLs. 2006-01-26 13:23:08 +01:00
Alexandre Julliard 4202824e9e ntdll: Cleaned up the ioctl functions.
Renamed function parameters to something usable.
Fixed potential event leaks.
2006-01-18 17:18:22 +01:00
Eric Pouech 2cdace2760 ntdll: Created infrastructure to support IOCTL for serial devices.
- created infrastructure in ntdll to support IOCTL for serial devices
- implemented IOCTLs in ntdll for serial break support
- implemented the kernel32 equivalent on top of those IOCTLs
2006-01-12 13:32:51 +01:00
Vitaliy Margolen b05340a523 ntdll: Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
Implement FSCTL_PIPE_WAIT NtFsControlFile ioctl.
Modify WaitNamedPipeW to use NtFsControlFile.
Replace struct overlapped with event.
2005-12-14 11:14:02 +01:00
Alexandre Julliard 59797f292e Pass specific access rights to wine_server_handle_to_fd. 2005-12-12 17:15:26 +01:00
Alexandre Julliard 67505c00af server: Support for opening devices.
Added support for opening devices directly with the server when they
don't correspond to a Unix file.
2005-12-12 14:27:45 +01:00
Alexandre Julliard 27b1aec925 server: Use attributes instead of inherit flag in file requests. 2005-12-09 12:00:48 +01:00
Vitaliy Margolen cf21d4d7ca Move mailslot devices into directory name space. 2005-12-05 13:30:26 +01:00
Vitaliy Margolen babfa79436 Move named pipe objects into directory name space.
Change tests accordingly.
Add small test for WaitNamedPipe.
2005-12-05 13:09:35 +01:00
Alexandre Julliard e21a97da85 Fixed some compiler warnings on Darwin. 2005-12-01 12:36:05 +01:00
Ge van Geldorp 1a1583a364 Match PSDK STATUS_* definitions. 2005-11-28 17:32:54 +01:00
Alexandre Julliard 86397e1d43 Fixed handling of mailslot read timeout to avoid compiler warnings. 2005-11-21 15:23:49 +00:00
Eric Pouech ca4ae96f33 NtReadFile: now returning correct status in NtReadFile for EOF
conditions (on files) and broken pipe (on named pipes).
2005-11-14 15:11:11 +00:00
Alexandre Julliard a2fb7c1644 Added an implementation of the FSCTL_DISMOUNT_VOLUME ioctl that
attempts to unmount the Unix device.
2005-10-28 16:45:24 +00:00
Vitaliy Margolen a996000ad5 - Send whole OBJECT_ATTRIBUTES.Attributes to the server not just an
inherit flag.
- Pass DesiredAccess to the server when creating mailslot.
2005-10-27 18:30:37 +00:00
Vitaliy Margolen eb8478002d Cosmetic changes to NtCreateNamedPipeFile change "oa" to "attr". 2005-10-26 10:11:08 +00:00
Eric Pouech e21aa6a184 - now passing access rights when creating a named pipe in NTDLL
- reimplemented Kernel32.CreatePipe purely on top of NTDLL APIs
- anonymous pipe handles should have the SYNCHRONIZE bit set
2005-09-26 11:02:45 +00:00
Ivan Leo Puoti f0db7ab06b Added FSCTL_PIPE_LISTEN support. 2005-09-06 14:09:42 +00:00
Alexandre Julliard bc22e2f03d Moved the FileFsDeviceInformation query to a separate function. 2005-08-24 18:27:27 +00:00
Ivan Leo Puoti aab12f5f7c Implement FSCTL_PIPE_DISCONNECT in NtFsControlFile and make
DisconnectNamedPipe call it.
2005-08-18 10:59:26 +00:00
Ivan Leo Puoti 9f3af964c7 Improve NtCreateNamedPipe trace. 2005-08-16 15:57:59 +00:00
Ivan Leo Puoti dfb887dc9f NtCreateNamedPipeFile is no longer a stub, so fix TRACE() call. 2005-08-16 11:13:21 +00:00
Vincent Béron ca26076164 Use proper macro for using IOKit includes. 2005-07-24 16:15:06 +00:00
Uwe Bonnes 38eb243bc1 Wait for the object multiple times until TIMEOUT is met. 2005-07-11 14:23:24 +00:00
Pierre d'Herbemont cca2b04ab7 Move the (Mac OS X) IOKit headers to the top of the file to prevent a
compilation failure.
2005-06-20 10:31:04 +00:00
Robert Shearman 0c5118144a - Don't free the fileio object because it will be freed anyway in
fileio_terminate on error.
- Print out statuses in hex, rather than decimal.
2005-06-09 09:45:42 +00:00
Robert Shearman e51dd36453 Implement overlapped I/O with named pipes. 2005-06-08 19:11:46 +00:00
Uwe Bonnes 271a8f99be Call fileio_terminate for FILE_AsyncWriteService. 2005-05-26 16:07:53 +00:00
Juan Lang f23e8fec10 Implement NtQueryVolumeInformationFile for type
FileFsDeviceInformation on FreeBSD.
2005-05-20 19:16:37 +00:00
Alexandre Julliard e4412a618c Removed the special casing of kernel32 and ntdll for the TEB
definition in winternl.h.
2005-05-16 17:52:10 +00:00
Robert Lunnon 9e40b70d90 Implement NtQueryVolumeInformation for Solaris. 2005-05-07 12:16:21 +00:00
Ivan Leo Puoti 26d2b8bf5e Add parameter checking to NtReadFile/NtWriteFile. 2005-04-25 16:02:16 +00:00
Alexandre Julliard 240d4ee9e1 Remove a few more instances of strncpy. 2005-04-25 15:51:45 +00:00
Eric Pouech 5a2591d96d - moved named pipe creation to ntdll
- server now handles the named pipe flags as the NTDLL values (not the
  KERNEL32 ones)
- named pipes in server now use the async IO mechanism for
  connect/wait ops
2005-04-18 14:57:04 +00:00
Mike McCormack 016206c1e1 Move mailslot set and query info implementation to ntdll. 2005-04-11 14:20:49 +00:00
Mike McCormack 2ab6a775bd Implement mailslots. 2005-03-30 19:02:15 +00:00
Mike McCormack 6c42be25e7 Implement CreateMailslot using NtCreateMailslotFile. 2005-03-28 10:03:56 +00:00
Francois Gouget 93416cdaf7 Assorted spelling fixes. 2005-03-23 13:15:18 +00:00
Ivan Leo Puoti 627d2fa7a2 Improve parameter checking in NtCreateFile.
Add documentation for ea_buffer and ea_length.
2005-03-21 10:28:23 +00:00
Ulrich Czekalla e3b59eac24 Don't mark a file as readonly if it has any write bit set. 2005-03-16 19:48:42 +00:00
Alexandre Julliard d0ee9f9309 Avoid spaces before preprocessor directives, that's not portable. 2005-03-02 12:23:20 +00:00
Eric Pouech 4634447d6b - got rid of include/async.h
- fixed some overlapped issues in socket handling
- moved kernel32.CancelIo implementation to ntdll
2005-01-14 19:54:38 +00:00
Rein Klazes 3058548eb8 On Linux, use fstatfs instead of fstatvfs. It is too buggy. 2005-01-06 20:44:52 +00:00
Eric Pouech 9dc3843cba Fixed some regressions from the previous change. 2005-01-03 14:43:15 +00:00
Dmitry Timoshkov e04da6bb72 Add a test for ReadFile/WriteFile fault handling, make it pass under
Wine.
2004-11-28 14:58:11 +00:00
Eric Pouech 6d0712a375 Moved kernel32.DeleteFileW core implementation to ntdll.NtDeleteFile. 2004-11-21 15:29:44 +00:00
Hamish 630273d34a Fix for async writes to comm ports. 2004-11-09 20:12:18 +00:00
Alexandre Julliard efb8be7e82 Added a fallback implementation of futimes. 2004-10-07 04:25:05 +00:00
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
Andrew John Hughes ed800c69c8 Build ntdll with -DSTRICT. 2002-11-21 03:45:01 +00:00
Patrik Stridvall 9c1de6de30 Moved all the content of the DDK files ntdef.h and ntddk.h to
winternl.h.
2002-09-12 22:07:02 +00:00
Dmitry Timoshkov d75aed2c92 Convert most of the file APIs to Unicode. 2002-08-27 01:13:58 +00:00
Patrik Stridvall d016f819f1 Added include protection for unistd.h and sys/time.h. 2002-08-17 00:43:16 +00:00
Mike McCormack 55d1ea7c75 Partially implement NtOpenFile and NtReadFile. 2002-06-14 00:36:20 +00:00
Vincent Béron 9a62491660 Removed trailing whitespace. 2002-05-31 23:06:46 +00:00
Juergen Schmied 76a9fa12f7 Types and partial implementation for NtQueryVolumeInformationFile. 2002-05-09 19:40:30 +00:00
Alexandre Julliard 0799c1a780 Added LGPL standard comment, and copyright notices where necessary.
Global replacement of debugtools.h by wine/debug.h.
2002-03-09 23:29:33 +00:00
Dmitry Timoshkov 4e78461b5e Print FIXME() for not implemented NtQueryVolumeInformationFile. 2002-01-04 18:24:51 +00:00
Patrik Stridvall 044855c6ec Documentation fixes. 2001-07-11 18:56:41 +00:00
Patrik Stridvall 3ca9823941 Documentation ordinal fixes. 2001-06-20 23:03:14 +00:00
Patrik Stridvall 8b216b3d02 Documentation ordinal fixes. 2001-06-19 18:20:47 +00:00
Dimitrie O. Paun 529da54394 Require {DECLARE,DEFAULT}_DEBUG_CHANNEL statements to end in a ; 2000-11-27 23:54:25 +00:00
Juergen Schmied 02d45e52c5 - implementation of RtlReg* (read access), RtlEvent*, RtlSemaphore*,
NtAllocateLocallyUniqueId
- implementation or stubs for NtAccessCheck, NtSetSecurityObject,
  RtlClearBits, RtlEqualPrefixSid, RtlFindClearBits,
  RtlFormatCurrentUserKeyPath, RtlGetControlSecurityDescriptor,
  RtlIdentifierAuthoritySid, RtlImpersonateSelf, RtlInitializeBitMap,
  RtlInitializeGenericTable, RtlMakeSelfRelativeSD,
  RtlPrefixUnicodeString, RtlSetBits, RtlUnicodeToMultiByteN,
  RtlUpcaseUnicodeStringToOemString, RtlUpcaseUnicodeToOemN,
  RtlValidSid, RtlxUnicodeStringToOemSize
- corrected most RtlString* functions, added documentation
- more fixes and partial implementations
2000-01-23 22:35:33 +00:00
Patrik Stridvall b8684a266b Fixed some of the issues reported by winapi-check. 1999-07-31 17:32:05 +00:00
Alexandre Julliard 156570906f Converted to the new debug interface, using script written by Patrik
Stridvall.
1999-05-23 10:25:25 +00:00
Patrik Stridvall b4b9fae671 New debug scheme with explicit debug channels declaration. 1999-04-19 14:56:29 +00:00
Juergen Schmied 026d9db8c5 - sorted API by groups
- new stubs:  NtQueryDirectoryFile,  ZwQueryDirectoryFile
- impl.: RtlAllocateHeap, RtlCreateHeap, RtlDestroyHeap, RtlFreeHeap,
  RtlGetDaclSecurityDescriptor, RtlGetSaclSecurityDescriptor
- impl. by Rex Jolliff (rex@lvcablemodem.com): RtlTimeToTimeFields,
  RtlTimeFieldsToTime
1999-03-09 17:47:51 +00:00