Commit Graph

4138 Commits

Author SHA1 Message Date
Michael Müller ab3c0a3e0a ntdll: Implement ProcessPriorityClass in NtQueryInformationProcess.
Allows Process Hacker to show process priority.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-03-01 19:25:56 +01:00
Michael Müller 556ba38dd1 ntdll: Fix error code when querying too large memory address.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 17:24:36 +01:00
Alexandre Julliard 1cee60d068 ntdll: Check file identity in addition to file name to find a loaded module.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 17:24:36 +01:00
Alexandre Julliard 97b0907439 ntdll: Allow loading 32-bit IL-only binaries on 64-bit.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 10:10:28 +01:00
Alexandre Julliard 6d6669fb2d ntdll: Add a helper function to open a dll file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-28 10:02:51 +01:00
Alexandre Julliard bf35c2612c ntoskrnl: Avoid forwarding to ntdll, link directly instead.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-27 13:47:47 +01:00
Sebastian Lackner 004d32dae6 ntdll: Fix condition mask handling in RtlVerifyVersionInfo.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-27 12:47:45 +01:00
Jacek Caban 1ce2201ed8 server: Share security descriptor among all pipe instances.
Based on patch by Jonathan Doron.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-27 11:06:43 +01:00
Alexandre Julliard 8b35892b15 ntdll: Print a diagnostic when mscoree cannot be loaded.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-26 18:47:32 +01:00
Sebastian Lackner 5c2523c6f3 ntdll: Don't fail in NtUnmapViewOfSection when trying to unmap builtin view.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-23 15:54:45 +01:00
Alexandre Julliard 39c8875ff8 ntdll: Add support for running IL-only .NET executables.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-21 09:55:05 +01:00
Nikolay Sivov f8cca445fb ntdll: Allow closing tags for 'supportedOS' elements.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-20 20:14:20 +01:00
Jacek Caban c0d08e13c8 ntdll/tests: Added pipe security descriptor tests.
Based on patch by Jonathan Doron.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-20 18:39:19 +01:00
Alexandre Julliard 12276796c9 ntdll: Hardcode the windows and system directories.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 19:38:29 +01:00
Michael Müller 37c983966b ntdll: Implement RunlevelInformationInActivationContext in RtlQueryInformationActivationContext.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 16:55:08 +01:00
Michael Müller 5875dcd6f9 ntdll: Parse execution level information in manifest data.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-19 16:55:08 +01:00
Alexandre Julliard 5d088206d2 ntdll: Use the image information data when mapping an image file.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-15 12:23:23 +01:00
Alexandre Julliard 1e036633e8 include: Add definitions for SECTION_IMAGE_INFORMATION flags.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-13 20:23:26 +01:00
Mark Jansen 0f1cb96b69 ntdll: Parse manifest compatibility section.
Signed-off-by: Mark Jansen <mark.jansen@reactos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-12 17:20:36 +01:00
Alistair Leslie-Hughes 4bbbc261d1 ntdll: Support TokenLogonSid in NtQueryInformationToken.
Based on a patch by Andrew Wesie.

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-07 19:38:29 +01:00
Alexandre Julliard 7ccae68f6c ntdll: Fix crash on nested thread exit.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-06 19:38:30 +01:00
Alexandre Julliard b1f8a91e6c ntdll: Use MAP_SHARED also for read-only mappings.
This essentially reverts commit dac252ecb4.
It's necessary for macOS.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-06 14:28:10 +01:00
Alexandre Julliard 73d1b89a12 ntdll: Get rid of the vm86 structure in the TEB.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-05 17:16:44 +01:00
Alexandre Julliard 4a5890811d ntdll: Block signals during process-wide exit.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-05 16:43:34 +01:00
Alexandre Julliard e7202687fc ntdll: Remove support for vm86 mode.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-02-01 22:24:57 +01:00
Alexandre Julliard a8a74134e8 ntdll: Check for file mappings that cannot be loaded as dlls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-30 15:10:24 +01:00
Alexandre Julliard 60e6331520 ntdll: Move file mapping functionality to a helper function.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-30 15:10:23 +01:00
Alexandre Julliard 41275cbabf ntdll: Don't return 64-bit image info to 32-bit processes.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-30 10:59:12 +01:00
Martin Storsjo 4415653f84 ntdll: Implement NtFlushInstructionCache using __clear_cache where available.
The configure check needs to be done with a more elaborate test than
just AC_CHECK_FUNC, since it's a built-in function in clang and errors
out if invoked with no parameters.

Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-22 22:26:46 +01:00
Alexandre Julliard 9d911a5736 ntdll: Move suspending a thread on startup back to the platform-specific files.
This partially reverts f64d2688d2.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-22 22:26:46 +01:00
Alexandre Julliard a83532d8dd ntdll: Store the context on the thread stack after the initial suspend.
The initial stack pointer may have been modified during suspend.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-22 22:26:45 +01:00
Alexandre Julliard 3e80093410 ntdll: Implement RtlPushFrame, RtlPopFrame and RtlGetFrame.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-22 16:26:13 +01:00
Alexandre Julliard 03d31ea81d server: Only update the modified parts of the context on thread suspend.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-22 15:18:48 +01:00
André Hentschel dfe813e34f ntdll: Determine write fault based on failed instruction on ARM64.
Based on code from Qemu. Reported by Stefan Dösinger.

Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-22 10:20:07 +01:00
Alexandre Julliard 8a62752fe9 ntdll: Use DWORDs for ARM assembly instructions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-18 19:20:10 +01:00
Alexandre Julliard 7bcb214158 ntdll: Export strnlen.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-18 19:19:28 +01:00
Thomas Faber 42f742e1be ntdll: Handle RtlReAllocateHeap failure in com_class_add_progid (Coverity).
Signed-off-by: Thomas Faber <thomas.faber@reactos.org>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-18 18:45:12 +01:00
Alexandre Julliard 3e26caf0d8 ntdll: Avoid the strd ARM instruction.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-17 09:35:12 +01:00
Alexandre Julliard 62a1410a07 ntdll: Fix source/destination confusion in vsscanf.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-05 16:09:30 +01:00
Andrey Gusev c4dd0ff5ec ntdll/tests: Fix resource leak.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-04 11:56:41 +01:00
Alexandre Julliard 5020fb7c47 ntdll: Don't set floating point registers from initial context.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2018-01-02 15:52:21 +01:00
Alexandre Julliard d108ff79d5 ntdll: NtQuerySection takes SIZE_T parameters.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-28 13:06:43 +01:00
Alexandre Julliard 6fe15e6c41 ntdll: Round the pthread stack size to a page boundary.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-26 10:14:38 +01:00
Jacek Caban d4d6330f0a server: Add support for querying FileNameInformation on named pipes.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-22 12:19:43 +01:00
Jacek Caban 6b08e60f03 server: Introduce get_file_info request for server-side NtQueryInformationFile implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-22 12:19:43 +01:00
Jacek Caban 514a157541 ntdll/tests: Add NtQueryInformationFile(FileNameInformation) on named pipes tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-22 11:52:51 +01:00
Alexandre Julliard c2f34d1b24 ntdll: Reset the exit frame when switching back to it.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-15 12:36:16 +01:00
Alexandre Julliard 6eab1e93f3 ntdll: Define PTHREAD_STACK_MIN if it's missing.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-14 20:28:48 +01:00
Alexandre Julliard d147c4c323 ntdll: Switch back to the initial stack for thread exit on ARM.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-14 20:28:48 +01:00
Alexandre Julliard f492efdb3c ntdll: Reimplement thread initialization in assembler on ARM.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-14 18:34:46 +01:00
Alexandre Julliard 8a07ee48fa ntdll: Set all registers in set_cpu_context() on ARM.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-14 18:34:19 +01:00
Alexandre Julliard 5e3534ee41 ntdll: Fix handling of floating point arguments in relay debugging on ARM.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-14 13:50:55 +01:00
Alexandre Julliard 7e9f1878db ntdll: Run the thread/process detach code on the thread stack.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-14 10:54:56 +01:00
Akihiro Sagawa 081eae7ac3 ntdll/tests: Add tests for time zone names.
Test shows internal NT API returns an indirect string, e.g.
@tzres.dll,-32, not a localized one in Vista or later.

Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-12 18:30:14 +01:00
Alexandre Julliard dac252ecb4 ntdll: Only require MAP_SHARED for writable mappings.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-12 15:15:02 +01:00
Akihiro Sagawa 35d93e02d1 ntdll: Return correct time zone names for Asia/Tokyo and Asia/Yakutsk.
Without this change, for Japan, Wine returns "Korea Standard Time",
not "Tokyo Standard Time" as seen in Bug 42719.

Actually, this is a regression by d666143f88.
The new code relies on offsets from UTC and DST change timings.  However,
Northeast Asia regions don't use daylight saving time.  Thus, Wine can't
distinguish between these regions.

Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-07 19:15:19 +01:00
Andrew Eikum f87a2f0e4c ntdll: Don't require full-page reads in NtReadFileScatter.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-07 19:13:52 +01:00
Andrew Eikum 64edbfa6fe ntdll: Don't return an error when reading past EOF in NtReadFileScatter.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-07 19:13:41 +01:00
Andrew Eikum 5262761135 ntdll: Report NtReadFileScatter results asynchronously.
Signed-off-by: Andrew Eikum <aeikum@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-07 19:13:37 +01:00
Alexandre Julliard 8c1bb2aa61 ntdll: Display floating point arguments in relay debugging on i386 and x86-64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-07 11:14:02 +01:00
Alexandre Julliard d12717b9a8 server: Add floating point and debug registers to the ARM64 context.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-05 20:30:04 +01:00
Alexandre Julliard 4ba0f628f9 server: Add floating point and debug registers to the ARM context.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-05 20:30:04 +01:00
Alexandre Julliard 21c12ddc64 ntdll: Fix CONTEXT definition for ARM64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-05 20:30:01 +01:00
Alexandre Julliard eb337adcc2 ntdll: Fix CONTEXT definition for ARM.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-05 13:21:31 +01:00
Alexandre Julliard b526a48a24 ntdll: Pass the stack pointer to virtual_clear_thread_stack().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-04 15:03:55 +01:00
Alexandre Julliard 23ec3ce2a3 ntdll: Start process execution directly at the kernel32 process entry point.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-04 15:03:55 +01:00
Alexandre Julliard f64d2688d2 ntdll: Move suspending a thread on startup into attach_dlls().
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-01 20:32:12 +01:00
Alexandre Julliard c3dd077d34 ntdll: Run the entire thread initialization code on the thread stack on remaining platforms.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-01 19:26:10 +01:00
Alexandre Julliard 32c2cfb861 ntdll: Run the entire thread initialization code on the thread stack on x86-64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-01 19:20:22 +01:00
Alexandre Julliard a89fdd58ec ntdll: Run the entire thread initialization code on the thread stack on i386.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-12-01 19:18:57 +01:00
Alexandre Julliard 70b69f3e5f ntdll: Don't return from attach_dlls on failure.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-30 19:06:44 +01:00
Alexandre Julliard 6c61ea6a13 ntdll: Suspend a thread with its start context explicitly before attaching dlls.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-30 12:15:51 +01:00
Alexandre Julliard 53e4c36ef8 ntdll: Add a platform-specific helper for starting a thread.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-29 20:15:30 +01:00
Alexandre Julliard afb16abc0f ntdll: Add a platform-specific helper for starting a process.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-29 17:18:23 +01:00
Alexandre Julliard f8e0bd1b0d ntdll: Put the initial pthread stack at the end of the Win32 stack.
Create a separate view for it so that the main stack can be freed
independently.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-29 10:44:21 +01:00
Alexandre Julliard 93eceba03e ntdll: Move freeing the thread stack to a common helper.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-29 10:43:39 +01:00
Alexandre Julliard 74b50e27e1 ntdll: Fix stack alignment in relay calls on ARM.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-27 16:15:24 +01:00
Alexandre Julliard 822e142403 ntdll: Support magic \1 prefix in debug format for relay traces.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-25 12:05:40 +01:00
Alexandre Julliard ab9c5625ec ntdll: Print thread id by default in all traces.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-25 11:42:28 +01:00
Hans Leidekker fdc51fc278 ntdll: Fix size returned from RtlMakeSelfRelativeSD on 64-bit.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-24 16:48:02 +01:00
Alexandre Julliard 5e3cf758d1 ntdll: Set the initial process context on ARM.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-21 21:47:42 +01:00
Alexandre Julliard 9e093936e2 ntdll: Use a separate stack when starting new threads.
Based on a patch by Sebastian Lackner.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-21 15:05:50 +01:00
Alexandre Julliard ed893d3591 ntdll: Delay attaching to dlls loaded because of a forwarded entry point.
Based on a patch by Sebastian Lackner.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-21 13:14:16 +01:00
Alexandre Julliard 8477ae27a8 ntdll: Fixup imports in the first thread that runs, even if it's not the main one.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-20 20:24:39 +01:00
Alexandre Julliard 03993b456c ntdll: Also check for EACCES to detect noexec failures.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-17 12:02:16 +01:00
Alexandre Julliard 2e364d25cc ntdll: Fall back to read() on noexec filesystems also for non-image mappings.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-17 12:02:16 +01:00
Alexandre Julliard 42b79375d3 ntdll: Fall back to read() earlier on noexec filesystems.
This avoid running into problems setting permissions later on.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-16 21:48:44 +01:00
Sebastian Lackner 959d240cbe ntdll: Avoid crash when trying to access page prot of address beyond address space limit.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-16 14:14:01 +01:00
Alexandre Julliard 5996398360 ntdll: Don't change packing of fd cache entries.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 19:12:08 +01:00
Alexandre Julliard a5b67f3fdd ntdll: Use WINAPIV calling convention for variadic functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-11-02 10:16:54 +01:00
Nikolay Sivov 3a3392acc6 ntdll: RtlGetCurrentDirectory_U() returns length, not status.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-23 10:33:50 +02:00
Nikolay Sivov 86370cc345 ntdll: Added RtlDosPathNameToNtPathName_U_WithStatus().
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-23 10:33:44 +02:00
Andrey Gusev 4895156369 ntdll: Remove redundant comparison.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-12 15:59:24 +02:00
Zebediah Figura 7477792b4c server: FSCTL_PIPE_LISTEN on a pipe client should return STATUS_ILLEGAL_FUNCTION.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-10 19:52:36 +02:00
Zebediah Figura cd4dc08b30 ntdll/tests: Don't abort if NtCancelFileIoEx() is missing.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-10 19:52:22 +02:00
Jacek Caban f449146ae3 ntdll: Remove no longer needed handling of FD_TYPE_PIPE.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-09 19:53:59 +02:00
Jacek Caban 4e17ff7c98 ntdll/tests: Remove no longer needed Sleep calls.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-09 19:52:38 +02:00
Huw Davies 2175852f5a ntdll: Add free list buckets for every arena size up to 0x100.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-09 19:52:29 +02:00
Alexandre Julliard 49d3cac9ce ntdll: Don't try to unmap system views on the server side.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-09 10:45:10 +02:00
Alexandre Julliard 0374d86c57 ntdll: Ignore the preload start address if it is zero.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-09 10:45:10 +02:00
Jacek Caban 1e87417e7f ntdll: Always use server ioctl for FSCTL_PIPE_PEEK.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-05 19:33:09 +02:00
Louis Lenders 9a53298eed ntdll: Add stub for RtlGetUnloadEventTrace.
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-04 22:27:00 +02:00
Jacek Caban 7eb7854161 server: Use server side named pipe implementation in byte mode.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-04 21:40:56 +02:00
Alexandre Julliard dc203dd833 ws2_32: Lock the user output buffer during receives.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-03 13:38:29 +02:00
Jacek Caban 3f07c6e256 server: Add FileFsDeviceInformation implementation for named pipes.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-03 09:41:19 +02:00
Jacek Caban 2ab2f31f18 server: Allow server side NtQueryVolumeInformationFile implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-03 09:39:52 +02:00
Akihiro Sagawa f9a5ad1348 ntdll: Treat CIFS/SMB2 file systems as remote devices.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-10-02 10:14:13 +02:00
Alex Henrie 71e04aaa38 ntdll: Add stub for RtlIpv4StringToAddressW.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-28 11:01:49 +02:00
Michael Müller e0392c3ba8 ntdll: Fix parameters of RtlIpv4StringToAddressExW.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-28 11:01:41 +02:00
Alexandre Julliard a27f187503 ntdll: Support loading binaries that start inside the DOS area.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-27 09:30:05 +02:00
Alexandre Julliard 5fa8713ddc ntdll: No longer store the mapping handle with the view.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 17:01:45 +02:00
Alexandre Julliard ab182dbf06 server: No longer store the mapping object in the dll structure.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 17:01:45 +02:00
Alexandre Julliard aa90910e93 server: Implement NtAreMappedFilesTheSame functionality on the server side.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 17:01:45 +02:00
Alexandre Julliard 26314a56d3 server: Access the list of committed ranges directly from the mapped view.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 17:01:44 +02:00
Alexandre Julliard a557934c76 server: Keep track of mapped memory views.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-26 17:01:44 +02:00
Jacek Caban 4df0162caf ntdll/tests: Test NtQueryVolumeInformationFile calls on named pipe object.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-25 23:29:10 +02:00
Stefan Dösinger bf6025e0e1 ntdll: Do not queue a completion status if pipe ops fail synchronously.
This fixes random crashes when exiting Chromium or shutting down CEF.
It is similar to 7a1142035d, just for pipes.

Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-25 23:29:10 +02:00
Alexandre Julliard 51d348c8c2 ntdll: Add helpers to lock the user output buffer during file reads.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-22 15:10:42 +02:00
Alexandre Julliard a20c4e11df ntdll: Add a helper to lock the user output buffer during a server call.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-22 15:10:21 +02:00
Alexandre Julliard af045a52e2 ntdll: Add helper functions for verifying write access to a memory range.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-22 15:05:26 +02:00
Alexandre Julliard 8bc95aa74b ntdll: Handle pages faults without fetching the view pointer when possible.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-22 15:05:26 +02:00
Alexandre Julliard 1049acc28f ntdll: Handle stack faults without fetching the view pointer.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-22 15:05:25 +02:00
Alexandre Julliard 872228da4c ntdll: Remove some unnecessary parameters in helper functions.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-22 15:05:25 +02:00
Alexandre Julliard 0eefa76791 ntdll: Suspend the process before attaching dlls, using the process initial context.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-19 12:43:00 +02:00
Alexandre Julliard e6f68708c5 ntdll: Set the initial process context on x86_64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-19 12:24:31 +02:00
Alexandre Julliard 8b929bd759 ntdll: Set the initial process context on i386.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-19 12:14:11 +02:00
Alexandre Julliard 8c103f298b ntdll: Add support for setting a platform-specific initial context.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-19 12:10:14 +02:00
Alexandre Julliard 9979c793e8 ntdll: Don't clear the last page of the initial stack.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-19 12:03:09 +02:00
Alexandre Julliard a003f0aed8 ntdll: Store the kernel32 process entry point in a global variable.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-19 11:59:58 +02:00
Alexandre Julliard bf8e71bcab ntdll: Don't use the mapping handle to detect file mappings.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-13 11:49:19 +02:00
Alexandre Julliard 3f0362ec3c ntdll: Also release memory past the last view in remove_reserved_area.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-13 10:12:14 +02:00
Jonathan Doron fbf2631dcb ntdll: Apply owner and group regardless of the SE_OWNER_DEFAULTED or SE_GROUP_DEFAULTED flags.
Signed-off-by: Jonathan Doron <jond@wizery.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-13 08:41:29 +02:00
Alexandre Julliard b8d0a59a2e ntdll: Get rid of the VPROT_VALLOC flag.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 20:32:01 +02:00
Alexandre Julliard 1c8a36a91c ntdll: Pass the mapping file access instead of the protection bits to the server.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 20:32:01 +02:00
Alexandre Julliard f448be618b ntdll: Verify page protection against the mapping protections in VirtualAlloc and VirtualProtect.
This partially reverts 3a5ee02735.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 20:32:01 +02:00
Alexandre Julliard 94872cc84f ntdll: Fix access rights checks for mapping objects.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-12 20:32:01 +02:00
Alexandre Julliard 78ab8aa46a ntdll: Trace views once they are properly initialized.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-11 19:51:43 +02:00
Alexandre Julliard 8dc8b3e9c0 ntdll: Avoid accessing builtin views outside of the critical section.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-11 19:50:30 +02:00
Alexandre Julliard 26c59d845e ntdll: Ignore attempts to commit pages in an already committed anonymous mapping.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-08 16:23:15 +02:00
Alexandre Julliard 5073beaefe ntdll: Store the SEC_* section flags directly in the view protection.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-08 16:23:15 +02:00
Alexandre Julliard b2624ab99a ntdll: Remove the no longer used VPROT_NOEXEC flag.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-08 16:23:15 +02:00
Alexandre Julliard 08acac0864 ntdll: Disallow changing PAGE_NOCACHE flag for individual pages.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-08 16:23:15 +02:00
Alexandre Julliard 2967e3efb6 ntdll: Store memory views in a binary tree instead of a list.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-07 19:32:29 +02:00
Alexandre Julliard 917d98a457 ntdll: Use the find_view_range helper function to check for overlapping views.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-07 19:07:32 +02:00
Stefan Dösinger af35aada9b ntdll: Make RtlDeregisterWaitEx(handle, INVALID_HANDLE_VALUE) thread safe.
Chromium signals the wait semaphore and calls DeregisterWaitEx with
CompletionHandle = INVALID_HANDLE_VALUE in close succession. Sometimes
the worker thread decides to run the callback, but before it sets
CallbackInProgress RtlDeregisterWaitEx decides that the callback is not
running and returns STATUS_SUCCESS. Chromium then releases resources
that the callback needs to run, resulting in random crashes.

Signed-off-by: Stefan Dösinger <stefan@codeweavers.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-06 20:32:07 +02:00
Alexandre Julliard 3bfd7973a4 ntdll: Don't do partial writes in virtual_uninterrupted_write_memory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-06 17:31:00 +02:00
Alexandre Julliard a0f64e1231 ntdll: Allocate views out of a memory block instead of using a heap.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-06 10:01:07 +02:00
Alexandre Julliard 2e12f7cdd6 ntdll: Remove the view parameter from the page protection helpers.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-05 16:53:37 +02:00
Alexandre Julliard 3ecf069e45 ntdll: Allocate the per-page protection byte separately from the view.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-05 16:53:37 +02:00
Alexandre Julliard eb5c187254 ntdll: Pass the allocation size to the alloc_virtual_heap function.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-05 16:22:38 +02:00