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
Alexandre Julliard
d10410eac2
ntdll: Add fallback implementations for the Unix library functions.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-02 20:20:39 +01:00
Alexandre Julliard
679a2f531b
ntdll: Don't try to convert binaries to 64-bit in Wow64 mode.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-02 20:20:39 +01:00
Alexandre Julliard
e5e857c290
ntdll: Add support for dispatching exception from 32-bit code in Wow64 mode.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-12-01 18:13:53 +01:00
Zebediah Figura
bfbccf1a03
ntdll: Prevent loading Wine system dependencies in place of identically named application DLLs.
...
That is, load Wine system dependencies only when they are imported from Wine
builtins or other system dependencies, and do not match a Wine system dependency
by its base name when looking for already-loaded modules.
The reasoning is that it is possible for an application to ship, and expect to
use, a newer version of a MinGW-compiled library, or one with custom patches, or
possibly an unrelated library with the same name. We don't want to offer Wine's
system dependencies in place of the application's, or vice versa.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 15:30:10 +01:00
Zebediah Figura
7e926a9aa9
ntdll: Allow loading system DLLs from a path specified at configure time.
...
Many distributions provide MinGW-compiled system DLLs which are currently
bundled with Wine. Unfortunately, while MinGW pkg-config can be used to detect
the linking path, there is no standardized runtime path, and many distributions
in fact use different paths.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 15:30:09 +01:00
Alexandre Julliard
f10a85de60
ntdll: Merge the calls to find_builtin_without_file().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 14:58:12 +01:00
Alexandre Julliard
afb6f1696e
ntdll: Add a helper function to append .dll to a module name.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 14:58:12 +01:00
Alexandre Julliard
eb6a9151d6
ntdll: Add a helper function to build an import dll name.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-24 14:58:12 +01:00
Nick Fox
ef26f7bd5c
ntdll: Fix LdrGetDllPath with LOAD_WITH_ALTERED_SEARCH_PATH without a path.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=26350
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51821
Signed-off-by: Nick Fox <nick@foxsec.net>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-22 22:20:50 +01:00
Jan Sikorski
064dd051d8
ntdll: Save status from attaching dependencies in process_attach().
...
Signed-off-by: Jan Sikorski <jsikorski@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-22 22:20:50 +01:00
Alexandre Julliard
62d335053f
makefiles: Don't append .fake extension to fake dlls.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-20 13:07:47 +01:00
Henri Verbeet
deff68bb72
ntdll: Only add a module dependency if import_dll() returned a modref.
...
In particular, if import_dll() skips an unused import, it will return TRUE,
but set *pwm to NULL. This fixes a regression in 3DMark03 version 3.4.0,
introduced by commit 0dd37b02f9
.
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-18 20:15:19 +01:00
Paul Gofman
aa234f3a58
ntdll: Don't add dependencies for system dlls.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-03 21:06:48 +01:00
Paul Gofman
250c113169
ntdll: Factor out is_import_dll_system() function.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-03 21:06:48 +01:00
Paul Gofman
0dd37b02f9
ntdll: Store module dependencies in DDAG structure.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-03 21:06:48 +01:00
Paul Gofman
06f925c599
ntdll: Pass DDAG node to process_attach().
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-03 21:06:48 +01:00
Paul Gofman
41c7652bbe
ntdll: Allocate DDAG node for module.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-03 21:06:48 +01:00
Paul Gofman
1ab32c6b3b
ntdll: Store module check sum in WINE_MODREF.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-20 20:19:32 +02:00
Nikolay Sivov
ed38d12833
ntdll: Double dll name buffer size for relay traces.
...
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-05 21:46:17 +02:00
Paul Gofman
39a3549093
ntdll: Implement LdrGetDllFullName() function.
...
Based on a patch by Alex Henrie.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-29 08:52:46 +02:00
Paul Gofman
cf0a828b02
ntdll: Implement LdrGetDllHandleEx() function.
...
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-27 17:40:15 +02:00
Alexandre Julliard
e9cfc97d46
Revert "ntdll: Add a Wine-specific class in NtQueryVirtualMemory to retrieve the init functions of a module."
...
This reverts commits e5339ecbc6
and
18408b18f3
.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51596
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-10 20:22:11 +02:00
Alexandre Julliard
b56a4b3efc
ntdll: Implement KiUserCallbackDispatcher().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-17 11:55:39 +02:00
Alexandre Julliard
0bce76d830
ntdll: Move the loading of the global options to the Unix side.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-04 11:45:51 +02:00
Alexandre Julliard
e5339ecbc6
ntdll: Add a Wine-specific class in NtQueryVirtualMemory to retrieve the init functions of a module.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-03 23:41:05 +02:00
Alexandre Julliard
669d1cce03
ntdll: Add a magic parameter to NtFreeVirtualMemory() for releasing address space.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-03 23:41:05 +02:00
Alexandre Julliard
eb6fcd3cb9
ntdll: Rename the SYSTEM_MODULE and SYSTEM_MODULE_INFORMATION structures.
...
To be consistent with the _EX version.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-27 16:39:55 +02:00
Alexandre Julliard
c4b194f4d9
ntdll: Load wow64.dll in 64-bit Wow64 processes.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-21 15:03:49 +02:00
Alexandre Julliard
3a32ea8e91
ntdll: Add support for LdrSystemDllInitBlock.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-07-07 16:33:29 +02:00
Bernhard Übelacker
cbf7a10176
ntdll: Allow 16-bit executables to be loaded from build directory.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51214
Signed-off-by: Bernhard Übelacker <bernhardu@mailbox.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-29 12:42:22 +02:00
Alexandre Julliard
364099f528
ntdll: Avoid crash on shutting down partially initialized thread.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-27 19:32:48 +02:00
Alexandre Julliard
1bd4473484
ntdll: Create a thread to run the ctrl-C routine instead of raising an exception.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-09 23:38:43 +02:00
Roman Pišl
a0425b9610
ntdll: Allow loading of native libraries for Win16.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=51224
Signed-off-by: Roman Pišl <rpisl@seznam.cz>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-06-08 22:28:44 +02:00
Alexandre Julliard
a71cb210f1
ntdll: Remove no longer used syswow64 directory string.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-26 21:24:53 +02:00
Alexandre Julliard
78cbc26957
ntdll: Fill the Wow64 PEB and process parameters.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-25 21:13:00 +02:00
Alexandre Julliard
4dca2cc797
ntdll: Always send the native TEB pointer to the server.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-13 16:45:28 +02:00
Alexandre Julliard
87b7132b37
ntdll: Implement RtlFindExportedRoutineByName().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-05-05 21:52:22 +02:00
Henri Verbeet
b9070e1153
ntdll: Clear ret->Buffer on failure in get_env_var() (Valgrind).
...
Signed-off-by: Henri Verbeet <hverbeet@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 21:34:02 +02:00
Alexandre Julliard
893febda14
makefiles: Install PE fake dlls in the architecture-specific directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 21:34:02 +02:00
Alexandre Julliard
f93713b157
ntdll: Support loading builtins from the architecture-specific PE directory.
...
Based on a patch by Jacek Caban.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-26 21:34:02 +02:00
Alexandre Julliard
aaa501fe93
ntdll: Fix buffer allocation size in get_env_var().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-21 17:08:06 +02:00
Alexandre Julliard
1cf2ae1907
ntdll: Support a full path name in the loadFrom dll redirection entry.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50978
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-21 08:55:38 +02:00
Alexandre Julliard
55d98c572c
ntdll: Use the loadFrom directory to load dlls from the activation context.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50978
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-19 15:39:55 +02:00
Alexandre Julliard
8ffb9b31d0
ntdll: Initialize version and session id on the Unix side.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-13 13:05:29 +02:00
Alexandre Julliard
277a5728da
ntdll: Don't try to open the file in the prefix for 16-bit builtins.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-08 18:16:52 +02:00
Alexandre Julliard
446f7e3aa8
ntdll: Add a WINEBOOTSTRAPMODE environment variable to allow loading non-existent builtins.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50905
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-08 18:16:00 +02:00
Alexandre Julliard
6d5a6c3466
ntdll: Avoid closing a handle twice.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-06 22:46:12 +02:00
Alexandre Julliard
beff5c56cd
ntdll: Move the PEB initialization to LdrInitializeThunk().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-05 12:08:09 +02:00
Alexandre Julliard
04762b3576
ntdll: Move the global options initialization to LdrInitializeThunk().
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-05 12:08:09 +02:00