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 server: Use l_intl.nls for case mappings. 2020-11-27 18:28:35 +01:00
async.c ntdll: Avoid accessing the I/O status block in wait_async(). 2021-05-24 11:32:28 +02:00
atom.c server: Remove support for process-local handle tables. 2021-02-16 11:13:41 +01:00
change.c server: Do not forbid closing fd handles in other processes. 2021-03-23 12:29:10 +01:00
class.c server: Ignore low word of a class instance when looking up for a window class. 2020-02-27 23:34:51 +01:00
clipboard.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
completion.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
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 ntoskrnl.exe: Implement volume information queries for device files. 2021-02-15 16:20:42 +01:00
directory.c server: Add a request to return all object types. 2021-02-05 22:53:46 +01:00
event.c server: Make pulse_event() static. 2021-03-18 22:04:01 +01:00
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 ntdll: Use a kernel APC to call NtDuplicateObject() if DUPLICATE_CLOSE_SOURCE is used on another process. 2021-03-23 12:29:10 +01:00
handle.h server: Inherit standard handles together with explicit handle list. 2020-09-29 21:04:13 +02:00
hook.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
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 server: Create the NLS section object for the l_intl.nls file. 2020-11-27 18:28:35 +01:00
mapping.c server: Only the first mapping needs to be an image in NtAreMappedFilesTheSame(). 2021-04-30 22:59:30 +02:00
mutex.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
named_pipe.c server: Do not forbid closing fd handles in other processes. 2021-03-23 12:29:10 +01:00
object.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
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 ntdll: Implement NtQueryInformationToken(TokenLinkedToken). 2021-02-17 21:41:59 +01:00
semaphore.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
serial.c server: Do not forbid closing fd handles in other processes. 2021-03-23 12:29:10 +01:00
signal.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
sock.c server: Introduce IOCTL_AFD_WINE_SHUTDOWN. 2021-05-19 10:32:59 +02:00
symlink.c server: Use the object type information to implement access mapping. 2021-02-05 22:53:46 +01:00
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 server: Merge the various token information queries. 2021-02-17 21:42:18 +01:00
trace.c ntdll: Validate job handles at process creation. 2021-05-20 21:48:57 +02:00
unicode.c server: Store the NT name in the fd object. 2021-02-09 14:17:51 +01:00
unicode.h server: Create the NLS section object for the l_intl.nls file. 2020-11-27 18:28:35 +01:00
user.c
user.h server: Track desktop users per thread instead of per process. 2021-04-21 21:00:33 +02:00
window.c server: Store length of window text instead of null-terminating it. 2020-03-23 11:40:04 +01:00
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