Alexandre Julliard
152d65c6f3
ntdll: Don't consider a 0-byte read from a serial port as a broken pipe.
2008-05-07 20:18:09 +02:00
Alexandre Julliard
2e3287bc6a
ntdll: Serial with ReadIntervalTimeout set to MAXDWORD should return immediately even if nothing was read.
2008-05-07 13:29:18 +02:00
Alexandre Julliard
2d6366fc29
ntdll: Implemented NtWriteFileGather.
2008-03-15 10:58:38 +01:00
Alexandre Julliard
81e4a0f6f3
ntdll: Implemented NtReadFileScatter.
2008-03-15 10:58:38 +01:00
Alexandre Julliard
5625c6079e
Get rid of the global thread.h header.
2008-03-01 11:57:00 +01:00
Rob Shearman
e70848ed01
ntdll: The FileMailslotSetInformation and FileCompletionInformation cases of NtSetInformationFile don't need the fd.
...
So don't do an extra server call to get the fd to avoid a performance
penalty and to make these cases work when an fd isn't available.
2008-02-05 12:19:37 +01:00
Alexandre Julliard
5b71d645f0
ntdll: Fall back to a server device ioctl for files with no associated fd.
2008-01-16 14:57:20 +01:00
Alexandre Julliard
44dbb07441
ntdll: Return a proper Information field also when opening a server file object.
2008-01-07 12:17:42 +01:00
Andrey Turkin
7a9210fa85
server: Pass Information field from async I/O APCs.
2007-11-15 14:24:50 +01:00
Andrey Turkin
793453f768
ntdll: Make async i/o functions generate completion messages.
2007-11-15 14:23:37 +01:00
Andrey Turkin
c702a91a3c
server: Allow async i/o operations to send completion messages.
2007-11-15 14:20:29 +01:00
Rob Shearman
5f5df83281
server: Pass the security descriptor into create_file, if one is specified, and set the initial mode for the file appropriately.
2007-10-30 14:18:27 +01:00
Alexandre Julliard
235532ce28
server: Use the file_pos_t type for file sizes and offsets in the protocol structures.
2007-10-10 14:06:25 +02:00
Andrey Turkin
d1a8155882
server: Allow completion object to be attached to an fd object.
2007-09-28 13:17:18 +02:00
Alexandre Julliard
eb22539efa
ntdll: Fix an error message.
2007-09-17 13:42:01 +02:00
Rob Shearman
247b0c9b8e
ntdll: Add a stub implementation of FSCTL_PIPE_IMPERSONATE that just impersonates the token of the current process.
2007-09-14 14:23:38 +02:00
Alexandre Julliard
8765a0da83
ntdll: Fixed file system name comparison on *BSD.
2007-08-29 12:02:13 +02:00
Alexandre Julliard
1b57c3bf90
ntdll: Don't print traces from async I/O callbacks.
2007-06-29 13:40:42 +02:00
Andrew Talbot
87791cfe71
ntdll: Constify some variables.
2007-06-26 12:56:05 +02:00
Alexandre Julliard
7c6bc78b90
ntdll: Get rid of the num_async_io counter in the TEB.
2007-06-04 18:17:16 +02:00
Alexandre Julliard
8992f89f27
server: Remove the extra apc_arg parameter now that user APCs all require the same arg as the kernel APC.
2007-06-04 15:20:49 +02:00
Alexandre Julliard
f6a3a4689f
ntdll: Queue an intermediate user APC routine to free the async info.
2007-06-04 15:20:49 +02:00
Alexandre Julliard
197bddfb87
ntdll: Report end of file instead of broken pipe on char devices.
2007-05-31 12:19:03 +02:00
Alexandre Julliard
be59e2bb53
Fix a couple of overflowing heap allocations revealed by the previous change.
2007-05-22 11:59:36 +02:00
Alexandre Julliard
aafcfe7663
server: Add support for retrieving results of queued ioctls once they are done.
2007-05-08 20:45:44 +02:00
Konstantin Kondratyuk
e84d270252
ntdll: Correct a copy/paste mistake in NtWriteFile.
2007-05-04 12:39:13 +02:00
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