Alexandre Julliard
3ac808e46e
ntdll: Set Wow64 user space limit based on LARGE_ADDRESS_AWARE.
...
Based on a patch by Billy Laws.
2023-08-16 15:31:54 +02:00
Jacek Caban
dcf0bf1f38
ntdll: Inherit ConsoleHandle only by CUI processes.
2023-06-26 15:04:26 +02:00
Alexandre Julliard
a82238fad5
ntdll: Allocate 64-bit and kernel stacks in high memory.
2023-06-13 22:10:56 +02:00
Alexandre Julliard
11cd51139d
ntdll: Support the lower memory limit in MEM_ADDRESS_REQUIREMENTS.
2023-06-13 22:10:56 +02:00
Alexandre Julliard
931292f1a6
ntdll: Use the sysv ABI for __wine_syscall_dispatcher_return().
...
Missing from b337c5b1a1
, spotted by Fan
WenJie.
2023-06-09 23:37:14 +02:00
Alexandre Julliard
1aa2f0d128
ntdll: Store the PE function pointers as simple void pointers.
...
Their prototypes are not meaningful on the Unix side.
2023-06-01 17:24:06 +02:00
Alexandre Julliard
d5f23441ad
ntdll: Use nameless unions/structs for IO_STATUS_BLOCK.
2023-05-30 12:12:09 +02:00
Alexandre Julliard
71d9f327f0
ntdll: Allocate the ARM64EC code map when the first ARM64X binary is loaded.
2023-05-26 21:24:14 +02:00
Alexandre Julliard
4356fe0d83
ntdll: Support the PS_ATTRIBUTE_MACHINE_TYPE attribute for new processes.
2023-05-24 15:43:54 +02:00
Alexandre Julliard
0433db1eb1
ntdll: Add a helper function to map the main exe module.
2023-05-23 14:43:11 +02:00
Alexandre Julliard
ebc1b09915
ntdll: Support the machine extended parameter in NtMapViewOfSectionEx().
2023-05-23 13:24:32 +02:00
Alexandre Julliard
f5d272f561
ntdll: Move the Unix function tables to avoid forward declarations, and make them static.
2023-05-11 22:53:14 +02:00
Alexandre Julliard
04ef02f6ff
ntdll: Pass limit instead of zero bits to internal memory mapping functions.
2023-05-10 17:08:48 +02:00
Alexandre Julliard
c722353c87
ntdll: Support the ARM64EC code map.
2023-05-09 14:11:19 +02:00
Alexandre Julliard
871f333d55
ntdll: Use a separate memory allocation for the kernel stack.
2023-04-25 18:00:38 +02:00
Alexandre Julliard
e588e218f0
ntdll: Only fall back to start.exe when using a different loader.
2023-03-28 11:58:30 +02:00
Alexandre Julliard
dd7b4431a6
ntdll: Add a helper function to check for Wow64 mode.
2023-03-23 14:20:16 +01:00
Alexandre Julliard
f3d90fd55b
ntdll: Add a helper function to check for old-style Wow64 mode.
2023-03-23 14:20:14 +01:00
Alexandre Julliard
46d0da53b6
ntdll: Replace the wine_server_handle_to_fd() syscall by a Unix call.
2023-02-14 20:57:09 +01:00
Alexandre Julliard
6d27bcbe2c
ntdll: Replace the wine_server_fd_to_handle() syscall by a Unix call.
2023-02-14 20:57:09 +01:00
Alexandre Julliard
8a3ba513ff
ntdll: Replace the wine_server_call() syscall by a Unix call.
2023-02-14 20:57:09 +01:00
Alexandre Julliard
a14b4c7d0d
ntdll: Replace the __wine_unix_spawnvp() syscall by a Unix call.
2023-02-14 20:57:09 +01:00
Alexandre Julliard
5c62fe0bfe
ntdll: Replace the __wine_dbg_write() syscall by a Unix call.
2023-02-14 20:57:09 +01:00
Alexandre Julliard
7406583e5b
ntdll: Store the unixlib handle at ntdll load time.
2023-02-14 20:57:09 +01:00
Alexandre Julliard
bef0969722
ntdll: Move the .so module initialization to winecrt0.
...
Use new ELF tag ids to avoid breaking backwards compatibility.
2022-12-04 22:00:43 +01:00
Alexandre Julliard
911789e757
ntdll: Implement a faster Unix call dispatcher on i386.
...
Inspired by a patch from Rémi Bernon.
2022-12-01 20:35:47 +01:00
Martin Storsjö
d6829bdcba
ntdll: Avoid accidentally picking up ntdll's __wine_unix_call_funcs for other DLLs.
...
When f7332ab4a6
switched load_so_dll
over to a proper Unix syscall, ntdll.so started providing the
symbol __wine_unix_call_funcs.
When a DLL calls NtQueryVirtualMemory(MemoryWineUnixFuncs), it can
do so speculatively, not knowing whether the corresponding unix
lib actually does provide anything.
When ntdll.so started providing this symbol, then such speculative
calls to NtQueryVirtualMemory(MemoryWineUnixFuncs) would end up
returning ntdll's __wine_unix_call_funcs if the intended DLL's
unix library lacked one.
This is the case with bcrypt, where the unix library doesn't
provide __wine_unix_call_funcs if gnutls is unavailable.
This fixes crashes after f7332ab4a6
,
in builds without gnutls.
Signed-off-by: Martin Storsjö <martin@martin.st>
2022-11-23 20:35:06 +01:00
Alexandre Julliard
af4378d46d
ntdll: Use unsigned int for the return value of server calls.
...
To avoid typecasts in debug traces.
2022-11-21 18:03:53 +01:00
Alexandre Julliard
1a7cacc489
ntdll: Use unsigned int instead of NTSTATUS in async callbacks.
...
To avoid typecasts in debug traces.
2022-11-21 18:03:53 +01:00
Alexandre Julliard
7afd11232e
ntdll: Use UINT instead of ULONG in ioctl helpers.
...
To avoid typecasts in debug traces.
2022-11-21 18:03:53 +01:00
Jinoh Kang
282120a9c5
ntdll: Use an acquire/release pair on the IOSB status.
2022-11-14 13:17:31 +01:00
Alexandre Julliard
4b65a7027f
ntdll: Use a proper Unix syscall for RtlGetSystemTimePrecise().
2022-11-10 10:38:12 +01:00
Alexandre Julliard
1fe7b8dd6d
ntdll: Use a proper Unix syscall for unwind_builtin_dll().
2022-11-10 10:33:37 +01:00
Alexandre Julliard
f7332ab4a6
ntdll: Use a proper Unix syscall for load_so_dll().
2022-11-10 10:33:37 +01:00
Alexandre Julliard
d3a68e434e
ntdll: Move the initialization of the thread register into signal_start_thread().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-11-10 09:50:53 +01:00
Alexandre Julliard
6ecc803950
ntdll: Use a pthread key for the TEB on all platforms.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-11-10 09:50:41 +01:00
Zebediah Figura
6b16ead607
ntdll: The async handle passed to set_async_direct_result() cannot be NULL.
2022-10-21 17:05:13 +02:00
Zebediah Figura
cb8937801d
ntdll: Use the send_socket request for NtWriteFile() on a socket.
...
send_socket does some extra bookkeeping that's currently missing from the
register_async path. Instead of adding it to sock_queue_async(), let's just
centralize all send requests so that they go through send_socket.
2022-07-14 10:29:12 +02:00
Zebediah Figura
9783e2e16c
ntdll: Use the recv_socket request for NtReadFile() on a socket.
...
recv_socket does some extra bookkeeping that's currently missing from the
register_async path. Instead of adding it to sock_queue_async(), let's just
centralize all recv requests so that they go through recv_socket.
2022-07-14 10:29:11 +02:00
Brendan Shanks
f99cb3297f
ntdll: Add zero_bits parameter to load_builtin.
...
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
2022-06-20 10:37:48 +02:00
Brendan Shanks
9bed3adc72
ntdll: Add zero_bits parameter to virtual_map_builtin_module.
...
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
2022-06-20 10:37:46 +02:00
Paul Gofman
dfd5f109fb
ntdll: Increase kernel stack size.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-04-13 11:00:33 +02:00
Jinoh Kang
be9a875fc1
server: Add mark_pending field to set_async_direct_result request.
...
The client can set mark_pending to indicate that the full-blown I/O
completion mechanism shall be triggered (asynchronous completion) even
if the status indicates failure.
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-22 18:38:18 +01:00
Alexandre Julliard
cd4fcf9a11
ntdll: Add a helper function to map a section.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-03-21 14:28:10 +01:00
Alexandre Julliard
a31f3374e6
ntdll: Add a global variable for the WoW PEB.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-21 18:55:22 +01:00
Jinoh Kang
e5ce4fa917
server: Attempt to complete I/O request immediately in recv_socket.
...
Make recv_socket alert the async immediately if poll() call detects that
there are incoming data in the socket, bypassing the wineserver's main
polling loop.
Signed-off-by: Jinoh Kang <jinoh.kang.kr@gmail.com>
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-10 20:18:39 +01:00
Alexandre Julliard
e16ccaf05d
ntdll: Support debugger attach from a 64-bit process to a 32-bit process.
...
This is needed until 64-bit ntdll can be mapped in all
processes. Partial revert of 8dc6987ba5
.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52157
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-01-03 17:46:39 +01:00
Alexandre Julliard
3e73437ae8
ntdll: Preserve the startup Unix directory unless it's on a removable device.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52256
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-27 18:51:16 +01:00
Zebediah Figura
7bea24f6e1
ntdll: Factor out in_wow64_call().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-10 22:00:17 +01:00
Alexandre Julliard
4f58d8144c
ntdll: Remove __wine_init_unix_lib() and the old Unix library interface.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-09 17:14:59 +01:00