Sweden-Number/server
Zebediah Figura 97afac469f ntdll: Avoid accessing the I/O status block in wait_async().
Steam uses WSASend() with completion ports, reusing OVERLAPPED structures as
soon as they are returned from GetQueuedCompletionStatus(). Since completion is
queued during the select request in wait_async(), the I/O status block can be
reused even before the call to NtDeviceIoControl exits.

This works fine with current Wine, because WSASend() doesn't access the I/O
status block after queuing completion. However, a patch that changes it to use
wait_async() like other async requests causes NtDeviceIoControlFile to
consistently return garbage status codes.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-24 11:32:28 +02:00
..
Makefile.in
async.c ntdll: Avoid accessing the I/O status block in wait_async(). 2021-05-24 11:32:28 +02:00
atom.c
change.c server: Do not forbid closing fd handles in other processes. 2021-03-23 12:29:10 +01:00
class.c
clipboard.c
completion.c
console.c server: Do not forbid closing fd handles in other processes. 2021-03-23 12:29:10 +01:00
debugger.c ntdll: Always send the native TEB pointer to the server. 2021-05-13 16:45:28 +02:00
device.c
directory.c
event.c
fd.c server: Allow polling on an fd after it was removed. 2021-05-18 09:56:23 +02:00
file.c server: Map a SD group to Unix group modes if the SD owner is present anywhere in the current user's token. 2021-04-22 21:12:57 +02:00
file.h server: Do not forbid closing fd handles in other processes. 2021-03-23 12:29:10 +01:00
handle.c
handle.h
hook.c
mach.c server: Get rid of the CPU type and functions. 2021-04-27 10:42:04 +02:00
mailslot.c server: Do not forbid closing fd handles in other processes. 2021-03-23 12:29:10 +01:00
main.c
mapping.c server: Only the first mapping needs to be an image in NtAreMappedFilesTheSame(). 2021-04-30 22:59:30 +02:00
mutex.c
named_pipe.c server: Do not forbid closing fd handles in other processes. 2021-03-23 12:29:10 +01:00
object.c
object.h server: Get rid of the CPU type and functions. 2021-04-27 10:42:04 +02:00
process.c server: Support process job lists. 2021-05-20 21:48:57 +02:00
process.h server: Get rid of the CPU type and functions. 2021-04-27 10:42:04 +02:00
procfs.c
protocol.def ntdll: Validate job handles at process creation. 2021-05-20 21:48:57 +02:00
ptrace.c server: Store a machine ID instead of a CPU in the context structure. 2021-04-27 10:40:53 +02:00
queue.c server: Implement WM_INPUT_DEVICE_CHANGE message dispatch. 2021-05-11 21:51:46 +02:00
region.c
registry.c server: Create the Wow64 key and system directory for all supported architectures. 2021-04-27 10:43:35 +02:00
request.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
request.h ntdll: Validate job handles at process creation. 2021-05-20 21:48:57 +02:00
security.h
semaphore.c
serial.c server: Do not forbid closing fd handles in other processes. 2021-03-23 12:29:10 +01:00
signal.c
sock.c server: Introduce IOCTL_AFD_WINE_SHUTDOWN. 2021-05-19 10:32:59 +02:00
symlink.c
thread.c ntdll: Avoid accessing the I/O status block in wait_async(). 2021-05-24 11:32:28 +02:00
thread.h ntdll: Avoid accessing the I/O status block in wait_async(). 2021-05-24 11:32:28 +02:00
timer.c server: Don't bother queuing APC_NONE apcs. 2021-04-30 19:32:30 +02:00
token.c
trace.c ntdll: Validate job handles at process creation. 2021-05-20 21:48:57 +02:00
unicode.c
unicode.h
user.c
user.h server: Track desktop users per thread instead of per process. 2021-04-21 21:00:33 +02:00
window.c
wineserver.de.UTF-8.man.in
wineserver.fr.UTF-8.man.in
wineserver.man.in
winstation.c server: Track desktop users per thread instead of per process. 2021-04-21 21:00:33 +02:00