Commit Graph

4139 Commits

Author SHA1 Message Date
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
Alexandre Julliard 4069c4a4d1 ntdll: Add a helper function for applying page protection bytes with mprotect.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-05 16:22:37 +02:00
Alexandre Julliard e4b5e5da8a ntdll: Add a helper function for setting bits in page protection bytes.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-05 16:21:47 +02:00
Alexandre Julliard 727b94842e ntdll: Add helper functions for getting and setting page protection bytes.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-09-05 16:21:45 +02:00
Alexandre Julliard b31583770f ntdll: Store the PEB lock pointer in the PEB.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-31 10:08:01 +02:00
Alistair Leslie-Hughes cb13ee3bf1 ntdll: Use standard wine_dbgstr_longlong.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-25 12:47:14 +02:00
Sebastian Lackner dee9eaa248 ntdll: Fix a TRACE in NtGetContextThread.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-12 11:11:55 +09:00
Alistair Leslie-Hughes 3b05f552e2 ntdll/tests: Use standard wine_dbgstr_longlong.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-08 20:13:55 +09:00
Martin Storsjo 4eb2c5532d ntdll: Simplify the arm version of a stub function.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-01 16:28:37 +02:00
Martin Storsjo dd30536044 ntdll: Implement allocate_stub for arm64.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-08-01 16:28:14 +02:00
Alexandre Julliard abe0b1c57b server: Initialize debug registers in new threads if necessary.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-27 17:04:04 +02:00
Alexandre Julliard f680ccb898 ntdll/tests: Test hardware breakpoints in newly created thread.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-26 22:14:00 +02:00
Michael Müller 26f9c73eb0 ntdll/tests: Test debug register values in newly created thread.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-26 22:13:58 +02:00
Alexandre Julliard ca20bddefc ntdll: Remove support for relay debugging of register functions.
The only remaining ones in krnl386 have been removed.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-26 10:41:27 +02:00
Alexandre Julliard bab6ece637 ntdll: Set thread context directly in assembly instead of using generated code.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-26 10:22:05 +02:00
Alexandre Julliard 38d45cbcc8 ntdll: Mark function that are only called from assembly as hidden.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-25 11:48:24 +02:00
André Hentschel 2e9611bbd0 ntdll: Make sure the stack is quad-word aligned on ARM64.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-24 20:05:19 +02:00
Alexandre Julliard dc63fbf98d ntdll: Use RtlCaptureContext also in RtlUnwind.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-24 18:58:30 +02:00
Alexandre Julliard 2bb668b1da ntdll: Get some values from the parent stackframe in RtlCaptureContext.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-24 18:58:30 +02:00
Alexandre Julliard 1c49905182 ntdll: Add an assembly wrapper to return correct values for the current thread in NtGetContextThread.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-24 18:58:29 +02:00
Alexandre Julliard 143143ad00 ntdll: Add small assembly wrappers for snooping instead of saving/restoring the entire context.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-20 16:18:45 +02:00
Alexandre Julliard a75e3f734d ntdll: Call NtRaiseException directly from RtlRaiseException on i386.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-20 13:54:43 +02:00
Alexandre Julliard 1522280e68 ntdll: Remove the raise_exception helper function on x86-64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-20 13:30:58 +02:00
Alexandre Julliard ac6244b55a ntdll: Call NtRaiseException directly from RtlRaiseException on x86-64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-20 13:00:10 +02:00
Alexandre Julliard a1b563f41c ntdll: Add support for debug registers in exceptions on x86-64.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-19 19:13:30 +02:00
Alexandre Julliard 9e59362ae3 ntdll: Move the plaform-specific thread data to the SystemReserved2 TEB field.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-19 19:13:30 +02:00
Alexandre Julliard b87c66dd65 ntdll: Move the plaform-independent thread data to the GdiTebBatch TEB field.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-19 19:13:29 +02:00
Alexandre Julliard f1ef8a4d9d ntdll: Add platform-specific versions of the thread data structure.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-19 19:13:29 +02:00
Alexandre Julliard fed30058bb ntdll: Don't copy cached debug registers from the parent thread.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:32 +02:00
Alexandre Julliard ce46de5a94 ntdll: Move NtGetContextThread implementation to the platform-specific files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:32 +02:00
Alexandre Julliard 675e8218f0 ntdll: Move NtSetContextThread implementation to the platform-specific files.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:32 +02:00
Alexandre Julliard 1e48417567 ntdll: Add helper functions for getting and setting thread context through the server.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:32 +02:00
Alexandre Julliard da6ca91e28 ntdll: Remove unnecessary helper to set debug registers.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-18 20:43:32 +02:00
Akihiro Sagawa 74b7fcfbdb ntdll: Allow map_view() to allocate fixed memory between reserved area and non-reserved area.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-13 13:48:55 +02:00
Jacek Caban 82e6713b75 server: Don't allow APCs on objects associated with completion port.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-10 20:51:11 +02:00
Martin Storsjo 114d8aded7 ntdll: Handle IMAGE_REL_BASED_DIR64 for arm64 in the same way as for x86_64.
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-07 19:48:32 +02:00
Francois Gouget e3b1437e1b ntdll/tests: A spelling fix in a comment.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-06 18:49:38 +02:00
Akihiro Sagawa 7c06d99e83 ntdll/tests: Add more tests if we have real VM counters.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-03 19:34:24 +02:00
Alistair Leslie-Hughes a3c1fbae2a ntdll/tests: Use standard wine_dbgstr_longlong.
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-07-03 15:57:45 +02:00
Jacek Caban 10c1f245e4 server: Use create_request_async in flush request handler.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 12:35:33 +02:00
Jacek Caban c56c42ff79 server: Use create_request_async in ioctl request handler.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 12:32:49 +02:00
Jacek Caban 4e02a3bb13 ntdll: Set iosb status in server_ioctl_file.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 12:29:48 +02:00
Jacek Caban 2bd828b13c server: Use create_request_async for write requests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 12:23:36 +02:00
Jacek Caban 879d46e456 server: Return async result directly instead of via APCs if it's available.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 12:23:35 +02:00
Jacek Caban 0e0834ae92 server: Close async wait handle when wait is satisfied.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-28 12:23:35 +02:00
Michael Müller 7c08e787b1 server: Implement setting a security descriptor when duplicating tokens.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-15 11:12:24 +02:00
Michael Müller af2d01c2fa server: Implement changing the label of a security descriptor.
Signed-off-by: Matteo Bruni <mbruni@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-15 11:08:59 +02:00
André Hentschel 58d527ef93 ntdll: Add support for relay debugging on ARM64.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-14 10:56:58 +02:00
Sebastian Lackner d2ec61105d ntdll: Do not cast unaligned pointer to M128A in set_context_reg.
GCC 7.x will assume 'val' is properly aligned when using a cast.

Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-05 19:48:44 +02:00
André Hentschel 99db4c697d ntdll: Fix Cpsr value in CONTEXT_ARM64.
The CPU can be configured to not allow reading DAIF in EL0t (User
Mode), and for debugging purpose NZCV might be more interesting.
Reported by Stefan Dösinger

Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-05 11:07:03 +02:00
Ken Thomases 27c71e09ad ntdll: On macOS, don't use clock_gettime() even if it's available.
The problem is building against the 10.12 or later SDK but deploying to 10.11
or earlier.  Support for clock_gettime() is new with 10.12 so configure finds
it and the code uses it, but the symbol is weak linked and resolves to NULL
when running on earlier versions.

Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-06-02 10:33:13 +02:00
Akihiro Sagawa 1afb369380 ntdll: Zero bits parameter must be less than 21.
Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-31 20:51:46 +02:00
Alex Henrie 146cf041d9 ntdll: Always fill PagefileUsage counter with a nonzero value on Linux.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-17 21:57:12 +02:00
Alex Henrie d6dfe19794 ntdll/tests: Dump entire VM_COUNTERS structure.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-17 21:57:12 +02:00
Akihiro Sagawa ea6e51744f ntdll: Avoid using isdigit() for WCHARs.
Found with Coccinelle.

Signed-off-by: Akihiro Sagawa <sagawa.aki@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-17 16:11:15 +02:00
Jacek Caban 4370073bbf ntdll/tests: Added FSCTL_PIPE_PEEK tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-10 11:58:09 -05:00
Alex Henrie 19a79f4228 ntdll: Implement ProcessVmCounters for Linux for other processes.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-09 16:37:42 -05:00
Nikolay Sivov 77887b474e ntdll: Move EventWrite() to ntdll.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-07 16:17:03 -05:00
Nikolay Sivov 9f55292085 ntdll: Move EventEnabled() to ntdll.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-05 19:17:35 +02:00
Alexandre Julliard e77873da73 server: Implement IOCTL_SERIAL_GET_WAIT_MASK as an ioctl on the server side.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-05 14:11:15 +02:00
Alexandre Julliard b7b9c4eaa6 server: Implement IOCTL_SERIAL_SET_WAIT_MASK as an ioctl on the server side.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-05 14:11:14 +02:00
Alexandre Julliard 84e97cf604 server: Implement IOCTL_SERIAL_SET_TIMEOUTS as an ioctl on the server side.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-05 13:04:20 +02:00
Alexandre Julliard a682420b58 server: Implement IOCTL_SERIAL_GET_TIMEOUTS as an ioctl on the server side.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-05 13:04:20 +02:00
Alex Henrie b1203af6ba mountmgr: Create devices and registry entries for parallel ports.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-02 22:49:44 +02:00
Alex Henrie a6cdfea1c1 mountmgr: Create devices and registry entries for serial ports.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-02 22:49:44 +02:00
Jacek Caban 4bf58b6e10 ntdll/tests: Added more completion port tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-02 20:49:08 +02:00
Michael Müller 5a96399b66 ntdll: Implement LdrEnumerateLoadedModules.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-01 19:29:13 +02:00
Michael Müller e5ad8ae123 ntdll/tests: Add tests for LdrEnumerateLoadedModules.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-05-01 19:29:13 +02:00
Alexandre Julliard d3bbd03c8f ntdll: Also store dynamic loader information in the PEB on Linux.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-25 20:53:04 +02:00
Michael Müller 62ae2ae1a1 ntdll: Add stub for JobObjectBasicAccountingInformation and JobObjectBasicProcessIdList.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-24 11:09:46 +02:00
Michael Müller a345265614 ntdll: Mark LDR data as initialized.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-24 11:08:50 +02:00
Jacek Caban aa1580398e server: Remove no longer needed blocking requests arguments.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-12 19:12:52 +02:00
Jacek Caban f8e9cdcaeb ntdll: Remove no longer needed APC from async_fileio.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-11 19:59:10 +02:00
Jacek Caban e2469b2c3d ntdll: Remove no longer needed APC handling from APC_ASYNC_IO callbacks.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-11 19:59:06 +02:00
Jacek Caban fbf241034c server: Removed no longed needed APC from APC_ASYNC_IO reply.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-11 19:58:40 +02:00
Jacek Caban 28c339031f server: Pass APC in async_data_t.
Also don't pass callback pointer that's not used anymore.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-11 19:57:34 +02:00
Jacek Caban d92bb525b1 ntdll: Introduce server_async helper.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-11 19:56:58 +02:00
Jacek Caban 05410c4aa6 ntdll: Use callback stored in async user for calling APC_ASYNC_IO.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-11 19:56:52 +02:00
Jacek Caban b82782a9c1 ntdll: Store async callback in async_fileio struct.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-11 19:56:45 +02:00
Christian Inci 8335d9152f ntdll/tests: Check debug registers of a newly created thread.
Signed-off-by: Christian Inci <chris.wine@broke-the-inter.net>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-10 21:51:40 +02:00
André Hentschel 72aecacf94 ntdll: Bump Win 10 version to 15063.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-04-10 21:51:40 +02:00
Jacek Caban e024094b75 ntdll/tests: Added tests of partial reads and reads with invalid wait handle.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-29 17:17:15 +02:00
Jacek Caban 0d6b783c80 ntdll/tests: Run read tests in all modes and directions.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-29 17:17:15 +02:00
Jacek Caban 7c26ebfc99 ntdll/tests: Moved pipe read tests to pipe.c.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-28 13:21:42 +02:00
Jacek Caban b682e1c41d server: Use server-side I/O for message mode named pipes.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-24 21:07:09 +01:00
Jacek Caban 134c83203a server: Added server-side FSCTL_PIPE_PEEK implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-22 18:52:58 +01:00
Alex Henrie bf7a97e5d3 ntdll: Implement ProcessVmCounters for Linux.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-21 20:52:38 +01:00
Alex Henrie 08ea8280d3 ntdll: Don't report false memory statistics for other processes.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-21 20:52:38 +01:00
Francois Gouget 5a2aa5e1d9 ntdll/tests: A spelling fix in an ok() message.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-13 19:27:49 +01:00
Andrew Wesie 9eecacbeb1 ntdll: Save rdi and rsi in raise_func_trampoline.
Signed-off-by: Andrew Wesie <awesie@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 21:59:22 +01:00
Sebastian Lackner 2c733057e9 ntdll: Implement FileAccessInformation class in NtQueryInformationFile.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 17:47:45 +01:00
Sebastian Lackner 9d0a48da0f ntdll: Use FD_CLOEXEC instead of hardcoded values.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 16:33:38 +01:00
Jacek Caban 14206495e3 ntdll: Don't modify LockCount in RtlLeaveCriticalSection if section is not acquired.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-07 16:33:36 +01:00
Józef Kucia c530fb9e28 ntdll: Fix NtFlushBuffersFile() for files with FILE_APPEND_DATA access.
Fixes a regression introduced by commit
f7d40d45da.

Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-03 20:43:40 +01:00
Józef Kucia a0aac49591 ntdll/tests: Add test for flushing file with FILE_APPEND_DATA access.
Signed-off-by: Józef Kucia <jkucia@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-03 20:43:39 +01:00
Paul Gofman f7d40d45da ntdll: NtFlushBuffersFile should fail if the file handle has no write access.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-02 15:48:01 +01:00
Paul Gofman 85aa2067b0 ntdll/tests: Add test for NtFlushBuffersFile error conditions.
Signed-off-by: Paul Gofman <gofmanp@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-03-02 15:47:59 +01:00
Jacek Caban bede6499ed server: Create async object in ioctl request handler.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-21 14:24:11 +01:00
Sebastian Lackner f9ede5c4c1 ntdll/tests: Add tests for FileIoCompletionNotificationInformation info class.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-17 20:54:04 +01:00
Michael Müller 641ca44c97 ntdll: Implement RtlAddMandatoryAce.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-17 20:54:04 +01:00
Sebastian Lackner 627829daa3 ntdll: Implement FileIdInformation class in NtQueryInformationFile.
Based on a patch by Jonathan Doron.

Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-16 19:08:39 +01:00
Sebastian Lackner 8b3d43acab ntdll/tests: Add tests for FileIdInformation class.
Based on a patch by Jonathan Doron.

Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-16 19:08:39 +01:00
Jacek Caban 21d1410494 ntdll: Don't set io->Information in server_read_file and server_write_file.
Currently we set Information, but not Status. According to tests,
depending on error type, none or both should be set. Both will be set
when APC is used.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-14 22:46:58 +01:00
Jonathan Doron 9c72376c8c ntdll: Define more file information classes.
Signed-off-by: Jonathan Doron <jond@wizery.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-10 21:39:29 +01:00
Andrew Wesie 06c5a9ab55 ntdll: Read entry point in LdrInitializeThunk.
Overwatch overwrites the PE header contents in a TLS callback. This results in
a crash on wine, because the entry point will be incorrect in start_process.

Signed-off-by: Andrew Wesie <awesie@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-09 21:37:08 +01:00
Piotr Caban 05ab8b98be ntdll: Add stub implementation of NtQueryInformationThread(ThreadIsIoPending).
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-08 10:53:32 +01:00
Austin English 6737ac70d6 wine.inf: Set default Windows version to win7.
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-08 10:49:30 +01:00
Andrew Wesie a39d67d8c9 ntdll: Prevent NULL dereference in NtSuspendThread.
Overwatch calls NtSuspendThread directly, and expects to be able to pass in a
NULL pointer for the count argument.

Signed-off-by: Andrew Wesie <awesie@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-03 19:05:10 +01:00
Sebastian Lackner beab000a53 ntdll: Mark ZwLoadKey2 export as private.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-03 09:37:42 +01:00
Austin English 6d89be5496 ntdll: Add a stub for NtLoadKey2.
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-01 21:19:38 +01:00
Jacek Caban 534ec7f5fb ntdll: Always set iosb->Information in irp_completion.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-02-01 21:19:38 +01:00
André Hentschel f130a5acef ntdll: Remove dead initializations (clang).
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-31 08:51:59 +01:00
Jacek Caban 0d23bfd398 ntdll: Check output buffer before server_write_file call.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-30 21:38:53 +01:00
Jacek Caban a240bfcf9b ntdll: Check input buffer before server_read_file call and don't touch event on error.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-30 21:38:53 +01:00
André Hentschel c716bfd9ad ntdll: Fix even more spec file entries.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-27 16:31:42 +01:00
Sebastian Lackner b60b50ba35 ntdll: Catch page faults in NtQueryPerformanceCounter.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-26 19:05:43 +01:00
Andrey Gusev 03d22addd1 ntdll: Move UnregisterTraceGuids from advapi32 to ntdll.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-26 10:35:50 +01:00
André Hentschel 726698a1bf ntdll: Fix some more spec file entries.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-26 10:30:50 +01:00
Bruno Jesus eefc1c471c ntdll: Fake success if changing system date is a no-op.
Signed-off-by: Bruno Jesus <00cpxxx@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-25 17:16:32 +01:00
André Hentschel a8956794c1 ntdll: Fix some spec file entries.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2017-01-19 16:18:30 +01:00
Alexandre Julliard df3b7958a7 ntdll: Check for invalid WINEARCH values.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-16 15:20:18 +01:00
Jacek Caban d055d3d121 server: Use async object to transfer IRP result to client.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-05 16:11:03 +01:00
Michael Müller 7ce4ae6895 ntdll: Move EventSetInformation from advapi32 to ntdll.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-12-02 15:55:46 +01:00
Nikolay Sivov 1289a860de ntdll: Fix RtlAssert() prototype.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-29 12:18:37 +01:00
Huw Davies 8d8507808e ntdll/tests: The fpu exception offset is broken on 32-bit Windows 8 too.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-25 19:49:50 +01:00
Huw Davies 9c5b15aaa4 ntdll/tests: Listen on the pipe to allow the client to connect on Windows 8 and 10.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-23 22:36:40 +01:00
Jacek Caban 2f1d068abd ntdll: Added TokenIsAppContainer semi-stub implementation.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-15 16:08:16 -06:00
Michael Müller 900366fd07 ntdll: Move EventRegister/Unregister from advapi32 to ntdll.
Signed-off-by: Andrey Gusev <andrey.goosev@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-11-02 17:03:09 +01:00
Jacek Caban 3b30002aec ntdll: Cache error information for cacheable handles with no fd.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-28 18:35:53 +02:00
Huw Davies 47303892ac ntdll: Zero-init the buffer for non-linux versions of SystemProcessorPerformanceInformation.
This ensures that the unused fields are set to zero, which matches the linux version.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-24 19:42:30 +02:00
Sebastian Lackner eb7ac554d1 ntoskrnl.exe: Add support for METHOD_IN_DIRECT/METHOD_OUT_DIRECT ioctls.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-17 16:19:47 -07:00
Jacek Caban e891be17b2 ntdll: Return NULL key on NtCreateKey failure.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-17 16:19:47 -07:00
Jacek Caban eeb4ed4c70 ntdll/tests: Added more registry symlink tests.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-17 16:19:47 -07:00
Alexandre Julliard 624deeb49d ntdll: Prevent importing the Zw functions.
It's better to consistently use the Nt ones.

Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-14 09:39:34 +02:00
Jacek Caban 86b5ec3fd1 ntdll/tests: Added a test of using NtCancelIoEx on iosb associated with pipe listening.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-12 22:33:22 +02:00
Hans Leidekker f94784ddba ntdll: SzCSDVersion is an empty string on Windows 8 and up.
Signed-off-by: Hans Leidekker <hans@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-04 13:56:24 +02:00
Detlef Riekenberg 1ebbfb1a1d ntdll/tests: Use case insensitive compare for filenames.
Signed-off-by: Detlef Riekenberg <wine.dev@web.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-10-01 15:14:10 +02:00
Sebastian Lackner 808619b72d server: Allow to create win32 prefix when directory already exists.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-22 12:46:01 +09:00
Michael Müller 6f2f307b1d ntdll: Open current working directory with FILE_TRAVERSE access.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-22 12:44:35 +09:00
Sebastian Lackner be74d3a5d5 ntdll: Simplify RtlFormatCurrentUserKeyPath using GetCurrentThreadEffectiveToken.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-09-02 11:34:34 +09:00
Piotr Caban 67f2a1eaf9 ntdll: Don't incorrectly overwrite orig_context in call_stack_handlers.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-26 23:23:40 +09:00
Daniel Lehman 594ddb6140 ntdll: Set Rip in for longjmp in RtlRestoreContext.
Signed-off-by: Daniel Lehman <dlehman@esri.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-26 23:23:39 +09:00
Michael Gilbert 29fdc48790 ntdll: Add missing stdint.h include for kfreebsd architectures.
Signed-off-by: Jens Reyer <jre.winesim@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-25 21:35:26 +09:00
Piotr Caban b4991f20cb ntdll: Remove no longer accessible TEB frames in RtlRestoreContext.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-23 14:17:31 +09:00
Bruno Jesus 3b3c0d9e09 ntdll: Use a helper to allocate threadpool workers.
Signed-off-by: Bruno Jesus <00cpxxx@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-23 12:16:49 +09:00
Keno Fischer 90173ce448 ntdll: Tolerate null handle in DeregisterWait.
Signed-off-by: Keno Fischer <keno@juliacomputing.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 23:05:22 +09:00
Sebastian Lackner a9f648ef69 ntdll: Do not call group cancel callback for finished simple callbacks.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 12:51:24 +09:00
Sebastian Lackner be7bcdc0f9 ntdll: Group cancel callbacks should be executed after waiting for pending callbacks.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 12:50:50 +09:00
Sebastian Lackner a8830a2478 ntdll: Call group cancel callback with the correct arguments.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 12:50:44 +09:00
Sebastian Lackner 5144708392 ntdll/tests: Add tests for releasing threadpool objects during TpReleaseCleanupGroupMembers.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 12:50:39 +09:00
Sebastian Lackner 53db77b5d7 ntdll: Allow to release threadpool objects while waiting for group.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 12:50:33 +09:00
Sebastian Lackner 914d597eb3 ntdll/tests: Use longer waits to reduce risk of random failures on the testbot.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 12:50:28 +09:00
Austin English 0f137a0b89 ntdll: Forward DecodeSystemPointer/EncodeSystemPointer to DecodePointer/EncodePointer.
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 12:47:51 +09:00
André Hentschel 24031fef65 ntdll: Bump Win 10 version to 14393.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-22 12:42:08 +09:00
Austin English 08f04c5a6e ntdll: Add NtResumeProcess stub.
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-19 17:31:56 +09:00
Sebastian Lackner d085042ab9 ntdll: Convert an ERR to a WARN when wait is triggered while destroying threadpool object.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-19 16:15:01 +09:00
Huw Davies 92fe612acb ntdll/tests: Skip broken SYSTEM_HANDLE_INFORMATION behaviour.
Vista and 2008 only copy the first handle's information into the
buffer.

Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 20:38:15 +09:00
Piotr Caban 4af2012729 ntdll: Pass updated context inside dispatch.ContextRecord in call_stack_handlers.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 11:57:01 +09:00
Piotr Caban 10fa7c6e45 ntdll: Print fixme message in case of nested exception.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 11:56:45 +09:00
Piotr Caban b23de3cd4a ntdll: Add support for exceptions inside termination handlers in __C_specific_handler.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 11:56:29 +09:00
Piotr Caban 7c060d0061 ntdll: Call exception handler with correct context.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 11:56:16 +09:00
Piotr Caban abebb81412 ntdll: Add support for ExceptionCollidedUnwind return from exception handler.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 11:55:59 +09:00
Piotr Caban 66567dbdf1 ntdll: Add support for collided unwinds.
Based on work by Alexandre Julliard.

Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 11:55:16 +09:00
Huw Davies cf22192b28 ntdll/tests: Dump the handle table on failure.
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-18 00:09:39 +09:00
Sebastian Lackner 9815806f16 configure: Explicitly check for sysinfo function.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-11 20:18:00 +09:00
Daniel Lehman 0b6e5fae74 ntdll: Call __finally blocks in __C_specific_handler.
Signed-off-by: Daniel Lehman <dlehman@esri.com>
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-10 22:22:07 +09:00
Austin English bd6f749c16 ntdll: Add NtSuspendProcess stub.
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-09 21:59:58 +09:00
André Hentschel d22964d952 ntdll: Implement 64-bit shifts.
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 21:47:06 +09:00
Piotr Caban 978ee87a25 ntdll: Fix KNONVOLATILE_CONTEXT_POINTERS parameter handling in RtlVirtualUnwind.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 18:41:30 +09:00
Matt Robinson 4a6bd3d200 ntdll: Catch page fault in RtlWow64EnableFsRedirectionEx.
Signed-off-by: Matt Robinson <git@nerdoftheherd.com>
Signed-off-by: André Hentschel <nerv@dawncrow.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-08 12:39:18 +09:00
Nikolay Sivov 7de025c970 ntdll: Fix its vs it's typos.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-08-01 20:57:23 -05:00
Piotr Caban f333bf47a8 ntdll: Keep drive letter size in RtlGetFullPathName_U when full path is specified.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-29 23:12:11 +09:00
Ken Thomases 3d8efb2388 ntdll: For Mac 64-bit, poke NtCurrentTeb()->ThreadLocalStoragePointer to the corresponding offset from %gs.
64-bit Windows apps have hard-coded accesses to %gs:0x58 baked into them.  They
need to find the ThreadLocalStoragePointer there.

Technically, the gsbase register and the memory it points to belong to the
pthread implementation on macOS.  It's used for the pthread TLS implementation.
Slot 11 (offset 0x58) is currently used for the implementation of the ttyname()
system library function.  We do not anticipate that Wine or any of the system
libraries or frameworks it uses will call ttyname().  Furthermore, Apple has
made it so that future releases of macOS will no longer use that slot.  So, we
hijack it for our purposes.

Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-29 12:04:10 +09:00
Ken Thomases 7501942008 ntdll: For Mac 64-bit, poke the TEB address to %gs:0x30 and re-enable the inlining of NtCurrentTeb().
64-bit Windows apps have hard-coded accesses to %gs:0x30 baked into them.  They
need to find the TEB self pointer there.

Technically, the gsbase register and the memory it points to belong to the
pthread implementation on macOS.  It's used for the pthread TLS implementation.
However, study of the sources and experimentation reveal that TLS slot 6
(offset 0x30) is not currently used.  Furthermore, Apple has promised to not
use that slot in the future.  So, we hijack it for our purposes.

Signed-off-by: Ken Thomases <ken@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-28 21:38:01 +09:00
Alexandre Julliard 32c7153fdb server: Avoid rounding mapping sizes on the server side.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-27 17:03:03 +09:00
Alexandre Julliard 6f0979b983 ntdll: Implement the SectionImageInformation class of NtQuerySection.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-26 20:33:16 +09:00
Alexandre Julliard 2602df14d8 ntdll: Implement the SectionBasicInformation class of NtQuerySection.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-26 20:32:10 +09:00
Alexandre Julliard 1ddc636051 server: Store the section flags separately from the protection.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-26 14:20:02 +09:00
Michael Müller 1311c8157b ntdll: NtUnmapViewOfSection should succeed for all offsets within the mapped range.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-19 22:03:21 +09:00
Alexandre Julliard 2f514becdb kernel32: Store synchronization objects under the session directory.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-18 16:21:24 +09:00
Dmitry Timoshkov d039d188f4 ntdll: Add support for fs segment in ThreadDescriptorTableEntry query.
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 11:16:59 +09:00
Sebastian Lackner fb45a20b4c ntdll/tests: Use inline implementation of NtCurrentTeb for rtl tests.
Also enable HardErrorDisabled TEB tests on x86_64.

Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 11:13:28 +09:00
Sebastian Lackner 8e8e03de63 ntdll/tests: Use inline implementation of NtCurrentTeb for exception tests.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-15 11:13:24 +09:00
Michael Müller d0832cdf42 ntdll: Use sysinfo to report correct number of physical pages.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-14 17:52:35 +09:00
Michael Stefaniuc 7c8832b23a ntdll: Remove a redundant NULL check before RtlFreeHeap().
Signed-off-by: Michael Stefaniuc <mstefani@redhat.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-08 20:14:04 +09:00
Michael Müller 77be592845 ntdll: Do not sort InMemoryOrderModuleList by memory address.
Signed-off-by: Michael Müller <michael@fds-team.de>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-07 21:23:26 +09:00
Piotr Caban 4c50ef6995 ntdll: Add RtlRestoreContext implementation.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-06 11:49:33 +09:00
Francois Gouget 75c1622b01 ntdll: Fix typos in some comments.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-07-04 11:01:20 +09:00
Alex Henrie 84fcaafb89 ntdll: Skip synchronous read if a serial read interval timeout is set.
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-09 15:39:57 +09:00
Alexandre Julliard 7a8ebc828e ntdll: Add a helper function for registering a file read async I/O.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-09 15:31:00 +09:00
Austin English 4f3607f754 ntdll: Add WinSqmEndSession/WinSqmStartSession stubs.
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-06-01 22:12:21 +09:00
Nikolay Sivov b10312d078 ntdll/tests: Fix some string leaks (Valgrind).
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-30 11:10:43 +09:00
Frédéric Delanoy 07a87666a1 ntdll: Fix a typo in an comment.
Signed-off-by: Frédéric Delanoy <frederic.delanoy@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-18 21:18:17 +09:00
Daniel Lehman 4c89d567f6 ntdll: Remove stub from trace.
Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-05 17:18:32 +09:00
Sebastian Lackner bb48b11508 ntdll: Fix buffer allocation check in get_dir_data_space.
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-05 01:27:50 +09:00
Alexandre Julliard 6261e26764 ntdll: Support remaining information classes in NtQueryDirectoryFile.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-05 01:27:50 +09:00
Daniel Lehman ad83e2cd57 ntdll: Add trace for NtQueryEvent/Semaphore.
Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-04 01:03:27 +09:00
Daniel Lehman 7950562e9e ntdll: Fix prev_count from NtReleaseMutant.
Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-04 01:03:27 +09:00
Daniel Lehman 142730ea66 ntdll: Add NtQueryMutant.
Signed-off-by: Daniel Lehman <dlehman25@gmail.com>
Signed-off-by: Sebastian Lackner <sebastian@fds-team.de>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-04 01:03:26 +09:00
Alexandre Julliard d18c14c311 ntdll/tests: Add tests for directory sorting.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2016-05-04 01:03:26 +09:00