Commit Graph

471 Commits

Author SHA1 Message Date
Alexandre Julliard 9e3893cc29 ntdll: Use FSCTL_GET_OBJECT_ID to compare file identities.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-22 12:06:19 +02:00
Alexandre Julliard e84ec36a62 ntdll: Move the thread get/set information functions to the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-18 14:48:15 +02:00
Alexandre Julliard e9e5c95058 ntdll: Move the process information functions to the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-16 18:36:30 +02:00
Alexandre Julliard c3e2013b61 ntdll: Move the get/set file information functions to the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-14 19:35:20 +02:00
Damjan Jovanovic f728a5f3f9 ntdll: Interpretation of l_addr depends on FreeBSD version.
FreeBSD changed l_addr to mean the relocation offset like it
does on other OSes, and provided a dynamic linker symbol,
"_rtld_version_laddr_offset", that can be used to check the
meaning.

Signed-off-by: Damjan Jovanovic <damjan.jov@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-10 08:32:33 +02:00
Alexandre Julliard 552bc8aa47 ntdll: Move the wait on address implementation to the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-09 15:47:30 +02:00
Alexandre Julliard 2333099c52 ntdll: Move signal handlers to the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-09 15:25:52 +02:00
Alexandre Julliard 20c91c5e80 ntdll: Use NtContinue() to set the thread initial context.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-06 15:41:38 +02:00
Alexandre Julliard 4ffe39573b ntdll: Move mapping of the user shared data to the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 22:36:38 +02:00
Alexandre Julliard cd0c598802 ntdll: Consolidate some of the init routines into the init_threading() entry point.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-04 22:36:38 +02:00
Alexandre Julliard c96ef78b6d ntdll: Move the virtual memory functions to the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-06-02 17:19:12 +02:00
Alexandre Julliard 1a743c9af3 ntdll: Move fd cache functions to the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-29 20:05:30 +02:00
Alexandre Julliard 8a63b688ac ntdll: Move server initialization functions to the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-29 20:05:30 +02:00
Alexandre Julliard e854ea34cc ntdll: Create user shared data section in the server, and initialize it in wineboot.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-29 16:17:32 +02:00
Alexandre Julliard f5e703042a ntdll: Fix off-by-one buffer size error.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49262
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-27 16:08:12 +02:00
Alexandre Julliard ca13f489e1 ntdll: Make the windows directory a global variable.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-21 17:06:04 +02:00
Alexandre Julliard e619429035 ntdll: Move configuration paths setup to the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-19 12:35:54 +02:00
Damjan Jovanovic 0fd3f0266e ntdll: Fix ELF initializer address calculations on FreeBSD.
dlinfo() doesn't conform to a standard, each platform implements in differently,
if at all. On GNU and NetBSD its l_addr field returned is the "relocbase",
the relative offset between addresses wanted by the file and addresses obtained
in memory (==0 when no relocation occurred), which we add to d_un.d_ptr to
obtain the memory address where the initializer is. On FreeBSD (and possibly
Solaris) this won't work, as l_addr is the "mapbase" instead, the absolute
starting memory address where the binary was loaded, resulting in wrong
calculations and crashes on startup as we call into wrong addresses.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49139
Signed-off-by: Damjan Jovanovic <damjan.jov@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-18 12:08:36 +02:00
Alexandre Julliard 45a63e5b3c ntdll: Store main() arguments in the Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-17 16:54:39 +02:00
Alexandre Julliard b7150570d3 ntdll: Allow ntdll.so to be loaded before wine_init() has run.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Alexandre Julliard b7b1ad0962 ntdll: Initial version of the ntdll.so Unix library.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 23:12:31 +02:00
Alexandre Julliard 6a12d93b88 ntdll: Handle already relocated .dynamic entries.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49139
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-14 20:59:36 +02:00
Alexandre Julliard 39e4b788d6 ntdll: Use the standard Interlocked* functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-02 15:10:04 +02:00
Alexandre Julliard ba1495f7c2 ntdll: Avoid using wine_dll_enum_load_path() from libwine.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-27 12:35:39 +02:00
Alexandre Julliard 3e0c90e4c7 ntdll: Avoid using wine_get_build/data_dir() from libwine.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-27 12:35:19 +02:00
Zebediah Figura ea753c384e include: Rename the other In*OrderModuleList fields to In*OrderLinks for consistency.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 10:13:49 +02:00
Zebediah Figura 09db718d99 include: Rename BaseAddress to DllBase.
To match Microsoft's public definition.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 10:13:46 +02:00
Zebediah Figura 4b3e820e07 include: Rename InMemoryOrderModuleList to InMemoryOrderLinks.
To match Microsoft's public definition.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 10:13:43 +02:00
Zebediah Figura feeb1c7c24 include: Rename LDR_MODULE to LDR_DATA_TABLE_ENTRY.
This name is used in Microsoft's public winternl.h.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-24 10:13:39 +02:00
Alexandre Julliard d2b70aa57a ntdll: Add a helper function to allocate module dependencies.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-22 16:02:10 +02:00
Alexandre Julliard 68e675d73d ntdll: The builtin load callback is no longer used for ntdll itself.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-22 15:51:23 +02:00
Alexandre Julliard 6f4272ce3e ntdll: Call TLS callbacks also for the main exe.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48971
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-22 14:14:40 +02:00
Alexandre Julliard 3872dc55ef ntdll: Support loading ntdll without a constructor.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-21 11:27:11 +02:00
Alexandre Julliard 0a72ec1dac ntdll: Make sure we don't try to attach the main exe a second time.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48961
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-21 11:23:15 +02:00
Gerald Pfeifer 973138c068 ntdll: Fix call_constructor build on FreeBSD.
Signed-off-by: Gerald Pfeifer <gerald@pfeifer.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-20 12:49:11 +02:00
Alistair Leslie-Hughes ccce5f769d ntdll: Correct compile error under macos.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-17 14:15:13 +02:00
Alexandre Julliard 081c8e1c73 ntdll: Execute .so constructors during module initialization.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:03 +02:00
Alexandre Julliard 3935acd4da ntdll: Use a Wine-specific field in WINE_MODREF for the .so handle.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:03 +02:00
Alexandre Julliard 0a3e42e271 ntdll: Load .so builtin modules without using libwine.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-16 22:10:03 +02:00
Alexandre Julliard 6ac357667e ntdll: Support loading builtin modules that don't use a constructor.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-15 19:50:21 +02:00
Alexandre Julliard a55feef63a ntdll: Always use the loaded path as builtin module file name.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 22:04:07 +02:00
Alexandre Julliard 19c48204bb ntdll: Allow the module file name to not be null-terminated.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 21:59:19 +02:00
Alexandre Julliard fd7992972b ntdll: Don't call entry point for the main process so that we don't need to check the dll flag.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48817
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-14 12:55:38 +02:00
Alexandre Julliard f64e34b014 ntdll: Use standard dlopen() instead of the libwine wrappers.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-07 14:26:19 +02:00
Nikolay Sivov 064c7bdbb4 ntdll: Fix trace pointer returned from RtlGetUnloadEventTraceEx().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-04-02 11:41:05 +02:00
Alexandre Julliard e003b9884e ntdll: Use wcslen() instead of strlenW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard 4b5cd5e66d ntdll: Use wcstoul() instead of strtoulW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard 285c5490a4 ntdll: Use wcsrchr() instead of strrchrW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard 6de0ab276b ntdll: Use wcschr() instead of strchrW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard 80005ee016 ntdll: Use wcscat() instead of strcatW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard 18411a19b4 ntdll: Use wcscpy() instead of strcpyW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-31 15:53:53 +02:00
Alexandre Julliard 6fc9088789 ntdll: Avoid using memrchrW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-30 23:10:06 +02:00
Alexandre Julliard 7a974814cd ntdll: Avoid using tolowerW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-30 23:10:06 +02:00
Alexandre Julliard 0d3ba59e13 ntdll: Use the ascii_to_unicode() helper to compare relay module names.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Alexandre Julliard 2f7cc584ce ntdll: Use RtlCompareUnicodeStrings() instead of strncmpiW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Alexandre Julliard 4d93bafe96 ntdll: Use RtlEqualUnicodeString() instead of strcmpiW().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Alexandre Julliard 3e049b6b96 ntdll: Use wcsicmp() instead of strcmpiW() where possible.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-27 21:16:13 +01:00
Jacek Caban 1a05b7da63 ntdll: Support device paths in LdrGetDllPath.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48698
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-03-25 15:26:33 +01:00
Kevin Puetz b6e91fa44b ntdll: Allow NULL lpAssemblyDirectoryName in find_actctx_dll.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-02-05 21:32:00 +01:00
Alexandre Julliard c599ec1494 libwine: Make some loader functions obsolete.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-29 20:14:54 +01:00
Alexandre Julliard f391ae901e ntdll: Fix loading the main binary as PE file with an explicit dll override.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-17 16:55:15 +01:00
Alexandre Julliard 30e5f1215e kernel32: Remove __wine_kernel_init().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-10 18:24:32 +01:00
Alexandre Julliard 7ac7a902c8 ntdll: Implement RtlLocaleNameToLcid().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-19 23:15:04 +01:00
Alexandre Julliard 4538a137e0 ntdll: Move locale functions to a new locale.c file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-19 23:15:04 +01:00
Alexandre Julliard 83e520f556 kernel32: Move exec process functionality to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-11 22:58:00 +01:00
Alexandre Julliard b0199ea2fe ntdll: Load the main binary directly in ntdll when possible.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-07 19:24:19 +01:00
Alexandre Julliard 608d086f1b ntdll: Move some initializations out of thread_init().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-07 17:05:56 +01:00
Alexandre Julliard b7db0b52ce ntdll: Initialize earlier things that need the executable name.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-07 16:54:31 +01:00
Alexandre Julliard 3dadd980bf ntdll: Directly allocate the final process parameters structure.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-05 13:25:03 +01:00
Brendan Shanks aa51aee1a9 ntdll: Enable WoW64 filesystem redirection when loading libraries.
This matches the behavior seen on Windows 7/2008R2 and newer.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47912
Signed-off-by: Brendan Shanks <bshanks@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-28 21:11:48 +01:00
Alexandre Julliard 075741b681 kernel32: Move image path name initialization to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-22 23:04:26 +02:00
Vijay Kiran Kamuju 1aff1e6a37 ntdll: Fix the SYSTEM_MODULE struct field names.
Based on https://www.geoffchappell.com/studies/windows/km/ntoskrnl/api/rtl/ldrreloc/process_module_information.htm?ts=0,44

Signed-off-by: Vijay Kiran Kamuju <infyquest@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-21 19:56:26 +02:00
Alexandre Julliard a5d45e9ae5 kernel32: Move exe path functions to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 22:58:06 +02:00
Alexandre Julliard 619bd16e7a kernel32: Move dll path functions to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-03 22:56:14 +02:00
Alexandre Julliard a0a2b25a44 kernel32: Move Get/SetDllDirectory() implementation to ntdll.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-01 15:14:08 +02:00
Alexandre Julliard 5f938bb51b ntdll: Implement RtlGetSearchPath().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-01 15:14:08 +02:00
Alexandre Julliard 444933ae04 ntdll: Implement RtlSetSearchPathMode().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-01 09:43:27 +02:00
Sebastian Lackner b45d612549 ntdll: Execute queued APCs before starting a process.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=35561
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-23 19:44:17 +02:00
Rémi Bernon 1aa963efd7 ntdll: Add alloc_type parameter to virtual_map_section and top_down to map_image.
NtMapViewOfSection also accepts the MEM_TOP_DOWN parameter that can
be used in combination with zero_bits to map memory on the highest
possible address.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-13 12:11:02 +02:00
Alexandre Julliard 9b6d2d3310 ntdll: Silence FIXME for LdrResolveDelayLoadedAPI().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-07 00:12:25 +02:00
Fabian Maurer 6525a16673 ntdll: Check the activation context before looking for the module basename.
Signed-off-by: Fabian Maurer <dark.shadow4@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-24 10:50:53 +02:00
Alexandre Julliard 91bbc46c99 ntdll: Try to use the name of the PE file also when loading .so builtin.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-24 10:50:53 +02:00
Alexandre Julliard a226e2b7a9 ntdll: Use .so builtin if found instead of falling back to the installed PE file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-19 11:47:34 +02:00
Zebediah Figura 90c3b78bec ntdll: Implement RtlCreateUserStack() and RtlFreeUserStack().
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-17 20:50:10 +02:00
Alexandre Julliard c36b3d3e4a ntdll: Don't use native subsystem heuristic against builtin modules.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-11 18:15:31 +02:00
Alexandre Julliard 9019c12fac ntdll: Load the file we got when we can't locate the corresponding builtin.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-05 21:40:55 +02:00
Alexandre Julliard 370abd32d1 ntdll: Add a helper function to load a dll from a .so file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-05 21:40:55 +02:00
Alexandre Julliard 295f10aa80 ntdll: Add a helper function to find a module from its dlopen handle.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-05 17:26:35 +02:00
Alexandre Julliard d96fd000d3 ntdll: Fix off-by-one allocation error.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47311
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-03 10:28:29 +02:00
Alexandre Julliard 1943fb29bf ntdll: Don't pass DLL_WINE_PREATTACH to the TLS callbacks.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-24 11:25:44 +02:00
Alexandre Julliard b8743f1f0b ntdll: Set LDR_WINE_INTERNAL flag also for PE builtins.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-20 10:15:17 +02:00
Alexandre Julliard 6c41cc6152 winebuild: Support relay debugging for PE builtin dlls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-16 22:55:50 +02:00
Martin Storsjo 044461e8a6 ntdll: Avoid truncating a nonzero exit code to zero in unix.
On Windows, the exit codes can use the full 32 bit range, while
on unix, they are truncated to the lowest 8 bits. If the intended
exit code is nonzero, to indicate failure, but the lower 8 bits
are zero (like when winedbg tries to exit with EXCEPTION_WINE_STUB,
80000100), the observed exit code used to be zero, indicating
successful execution.

Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-15 22:04:39 +02:00
Nikolay Sivov 9fcb2c8822 ntdll: Account for null terminating char in unload traces (Coverity).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-30 20:05:27 +02:00
Nikolay Sivov 5431409bd3 ntdll: Implement RtlGetUnloadEventTrace()/RtlGetUnloadEventTraceEx().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-23 23:50:44 +02:00
Alexandre Julliard 948fc85186 ntdll: Add support for loading PE builtin dlls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-22 11:40:33 +02:00
Alexandre Julliard ea9cc97e2e ntdll: Only pass the NT path name to open_dll_file().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-22 11:36:39 +02:00
Alexandre Julliard f7cf3c1806 ntdll: Move open_dll_file() to avoid forward declarations.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-22 11:34:55 +02:00
Alexandre Julliard 9f0d669239 ntdll: Rename attach_dlls() to LdrInitializeThunk().
Based on a patch by Andrew Wesie.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 17:57:09 +01:00
Alexandre Julliard 42df4dccd5 ntdll: Return the kernel process start address from __wine_kernel_init().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-02-14 17:57:09 +01:00