Commit graph

3113 commits

Author SHA1 Message Date
Jinoh Kang a4ef56e1d9 server: Check for DELETE access in NtMakeTemporaryObject(). 2024-03-20 23:16:24 +01:00
Paul Gofman 4d56a33ab0 server: Ignore some ICMP-originated socket errors for connectionless sockets. 2024-03-15 23:48:52 +01:00
Jinoh Kang e368515eef server: Generalize server request make_temporary to set_object_permanence.
Required for implementing NtMakePermanentObject().
2024-03-15 15:06:33 +01:00
Brendan Shanks befd7abe10 server: Remove support for msg_accrights FD passing. 2024-03-11 18:12:03 +01:00
Rémi Bernon 28c52d4ac3 server: Remove desktop from their winstation list before looking for another input desktop. 2024-03-08 17:40:03 +01:00
Zebediah Figura e92ba2de43 server: Create processes using a limited administrator token by default.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=40613
2024-03-08 09:49:52 +01:00
Zebediah Figura 95a91bd816 ntdll: Implement NtSetInformationProcess(ProcessAccessToken). 2024-03-08 09:49:52 +01:00
Rémi Bernon 24ad74ee26 server: Send emulated mouse messages on primary pointer updates. 2024-03-06 19:20:09 +01:00
Rémi Bernon 40b65e28a7 server: Continuously send pointer update messages while it's down. 2024-03-06 19:20:09 +01:00
Rémi Bernon d8b8ac85eb server: Generate WM_POINTERENTER / WM_POINTERLEAVE messages. 2024-03-06 19:20:09 +01:00
Rémi Bernon 5b833c83be server: Stop waiting on LL-hooks for non-injected input. 2024-03-06 19:19:47 +01:00
Rémi Bernon 61d1c18957 server: Add support for sending and receiving WM_POINTER* messages. 2024-03-05 20:50:07 +01:00
Rémi Bernon bb5f0e122f win32u: Use a custom struct hid_input for NtUserSendHardwareInput. 2024-03-05 20:50:06 +01:00
Rémi Bernon 9591a36ee8 server: Dispatch rawinput messages using the rawinput process list. 2024-02-28 19:51:20 +01:00
Rémi Bernon c43b1ecbc3 server: Keep a list of processes that can receive rawinput messages. 2024-02-28 19:51:20 +01:00
Rémi Bernon f7303cf7b6 server: Keep a list of threads connected to each desktop. 2024-02-28 19:51:20 +01:00
Rémi Bernon 496eed7aaf server: Send hardware input to the visible input desktop.
When hwnd is specified, it is because it received a direct host input,
so switch the input desktop to match the one that is receiving it.

We don't validate that the sending thread uses the same desktop as the
target window: it may not even be the case for drivers with a separate
thread that listens on input events.
2024-02-28 19:51:20 +01:00
Rémi Bernon a1d63d109d server: Keep track of the winstation input desktop. 2024-02-28 19:51:20 +01:00
Eric Pouech 9897719562 server: Allow 0-write length in WriteProcessMemory().
Adapt to Win >= 10 behavior.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56357
Signed-off-by: Eric Pouech <epouech@codeweavers.com>
2024-02-26 22:44:35 +01:00
Rémi Bernon 74bf784b29 server: Use the startup info to connect the process winstation.
This changes the todos in the tests as it fixes the thread input not
being attached, but then exposes a different todo.
2024-02-23 17:11:00 +01:00
Marc-Aurel Zent 1eb8f41e54 server: Improve formatting in mach init_tracing_mechanism(). 2024-02-14 23:17:23 +01:00
Marc-Aurel Zent dee10199cc server: Use bootstrap_register2() instead of bootstrap_register(). 2024-02-14 23:17:23 +01:00
Marc-Aurel Zent 52f34cf976 server: Use __pthread_kill() syscall wrapper. 2024-02-14 23:17:23 +01:00
Zhiyi Zhang ca97cb8700 server: Inherit internal desktop flags when creating desktops.
Based on Rémi's idea.

CEF applications create their own desktops and so is_virtual_desktop() could incorrectly
report that virtual desktop is off if DF_WINE_VIRTUAL_DESKTOP is not inherited.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55810
2024-02-13 22:37:50 +01:00
Zhiyi Zhang 2990a4f8c3 include: Rename DF_WINE_CREATE_DESKTOP to DF_WINE_VIRTUAL_DESKTOP. 2024-02-13 22:37:50 +01:00
Rémi Bernon 1664ad7d50 server: Fix rawinput buffer sizes and alignment on WoW64. 2024-02-09 11:14:07 +01:00
Rémi Bernon 2eb8950392 server: Move rawinput message conversion from win32u.
Appending the entire RAWMOUSE / RAWKEYBOARD / RAWHID + report structs
after the hardware message data, instead of using a custom intermediate
structure.
2024-02-09 11:14:07 +01:00
Rémi Bernon c8bf3ba2da server: Stop using hardware_msg_data in rawinput_message. 2024-02-08 23:31:24 +01:00
Rémi Bernon f86cca3897 server: Stop using union rawinput in hw_input_t. 2024-02-08 23:31:24 +01:00
Rémi Bernon c62ca2e1aa server: Combine HID usage page and usage together. 2024-02-08 23:31:24 +01:00
Alexandre Julliard de988eeea0 server: Add hybrid flag in image mapping information. 2024-02-08 17:07:22 +01:00
Alexandre Julliard e05c6c8211 server: Don't update the entry point in the image information for ARM64EC modules. 2024-02-08 17:07:22 +01:00
Alexandre Julliard bd703632fd server: Don't update the machine in the image information for ARM64EC modules. 2024-02-08 13:05:28 +01:00
Alexandre Julliard 4022fb9ba3 server: Don't report alternate 64-bit machines as supported. 2024-02-07 22:28:00 +01:00
Eric Pouech 626b2f1898 server: Preserve handle flags when inheriting a std handle.
Signed-off-by: Eric Pouech <epouech@codeweavers.com>
2024-02-06 11:39:58 +01:00
Eric Pouech 1c7e1f1fc6 server: Implement support for DUPLICATE_SAME_ATTRIBUTES in DuplicateHandle().
This flag is documented on MSDN in ZwDuplicateObject() but not in
DuplicateHandle(). Yet functional on both.

Signed-off-by: Eric Pouech <epouech@codeweavers.com>
2024-02-06 11:39:58 +01:00
Paul Gofman da6e707850 server: Check if we have waiting asyncs in sock_dispatch_asyncs() before clearing POLLOUT. 2024-02-02 13:02:04 +01:00
Paul Gofman aac0998262 server: Check if we have waiting asyncs in (send_socket) before enforcing blocking send. 2024-02-02 13:01:55 +01:00
Gabriel Brand 6361a20c52 server: Return failure in bind if the address is not found. 2024-01-25 21:00:06 +01:00
Bernhard Übelacker 26e383c8df server: Avoid unloading of HKU .Default registry branch.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55000
2024-01-25 20:30:53 +01:00
Bernhard Übelacker 702aeb3acb server: Allow VirtualQueryEx on "limited" handle.
A handle created with just PROCESS_QUERY_LIMITED_INFORMATION
should allow VirtualQueryEx / APC_VIRTUAL_QUERY.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56093
2024-01-18 18:08:48 +01:00
Alexandre Julliard 1d81a5cb4c server: Remove WINESERVER documentation from the man page.
That variable is not used by the server.
2024-01-02 14:04:29 +01:00
Brendan Shanks 6b4eae4088 server: Fix compile error on FreeBSD/NetBSD.
F_GETPATH is currently only implemented on macOS.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56047
2023-12-27 12:14:14 +01:00
Rémi Bernon d1789fbb40 server: Change desktop cursor only when inside the thread's windows.
Getting rid of the desktop cursor handle at the same time.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55961
2023-12-21 18:39:04 +01:00
Rémi Bernon 9dc80b13be server: Introduce a new get_desktop_cursor_thread_input helper.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55961
2023-12-21 18:39:04 +01:00
Brendan McGrath fa873804fb server: Always release internal hardware messages. 2023-12-21 18:38:59 +01:00
Rémi Bernon 2e90c01696 server: Ignore the capture window wrt desktop cursor changes.
This partially reverts commit c3dcf1e269.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55306
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=56046
2023-12-18 22:14:57 +01:00
Rémi Bernon bb496ea847 server: Always queue mouse messages delivered to another window.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55306
2023-12-18 22:14:57 +01:00
Rémi Bernon c3dcf1e269 server: Use the capture window as cursor window if it is set.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55306
2023-12-15 21:10:17 +01:00
Rémi Bernon 82642e34e1 server: Update the desktop cursor position / window on click.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=55306
2023-12-15 21:10:17 +01:00