Commit Graph

469 Commits

Author SHA1 Message Date
Paul Gofman b91b4b6de1 ntoskrnl.exe: Add KdRefreshDebuggerNotPresent() function.
Signed-off-by: Paul Gofman <pgofman@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-25 20:19:36 +02:00
Zebediah Figura c750ae6b9d ntoskrnl.exe: Protect the two relocated pages independently.
They may have different protection flags.

This fixes a regression introduced by 22dfb0df10.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49198
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-22 19:50:48 +02:00
Jacek Caban 92e40853d8 ntoskrnl.exe: Export _chkstk from importlib.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-05 20:53:02 +02:00
Zebediah Figura 0e09d5ea74 ntoskrnl.exe: Implement IoIs32bitProcess().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=49088
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 12:39:09 +02:00
Zebediah Figura 22dfb0df10 ntoskrnl.exe: Protect relocated pages one at a time.
Blindwrite 7's ezplay.sys has sections which are consecutive in memory but not
page aligned.  Thus changing the protection to PROT_READWRITE one section at a
time has the effect that old_prot for all sections but the first is set to
PROT_READWRITE (actually, PROT_WRITECOPY), causing us to restore the wrong
protection and the driver to crash in its entry point.

To fix this, protect and unprotect one page at a time while processing it, i.e.
essentially revert 6c0a8c359.  To avoid reintroducing bug 28254, protect two
pages at a time instead of just one.

Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-05-04 12:39:09 +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 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
Louis Lenders ba8360be4e ntoskrnl.exe: Add stub for RtlIsNtDdiVersionAvailable.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48122
Signed-off-by: Louis Lenders <xerox.xerox2000x@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-01-31 10:47:54 +01:00
Alex Henrie f307e94c0e ntoskrnl: Add KeSetImportanceDpc stub.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=48358
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-12-26 21:11:59 +01:00
Zebediah Figura ca683dcaad ntoskrnl.exe: IoInvalidateDeviceRelations() receives the parent PDO.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-07 14:12:51 +01:00
Zebediah Figura 61928e8160 ntoskrnl.exe: Pass the correct output size to IoBuildDeviceIoControlRequest().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-11-04 22:43:01 +01:00
Austin English f0b09c3572 ntoskrnl.exe: Quiet a verbose FIXME.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=11908
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-28 18:32:17 +01:00
Alex Henrie 380d31b17a ntoskrnl: Implement IoCreateUnprotectedSymbolicLink.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47986
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-10-27 19:31:27 +01:00
Rémi Bernon e6138a52a9 ntoskrnl.exe: Use case-insensitive driver name comparison.
For instance winebus driver is sometimes referred as WineBus, when
loaded by winedevice.exe, and sometimes as winebus, when loaded from
devices. This makes Wine try to load it twice and initializes the
backend twice as well.

Signed-off-by: Rémi Bernon <rbernon@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-09-19 22:42:03 +02:00
Zebediah Figura ca1c153422 ntoskrnl.exe: Implement IoGetRequestorProcess().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47623
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-22 09:50:28 +02:00
Zebediah Figura 37652d5cc4 ntoskrnl.exe: Set the IRP thread also for create and close requests.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47623
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-22 09:50:25 +02:00
Zebediah Figura 8ce1c66b5e ntoskrnl.exe: Stub IoRegisterBootDriverReinitialization().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47623
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-22 09:50:22 +02:00
Zebediah Figura da23da3952 ntoskrnl.exe: Allocate pool memory from an executable heap.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45843
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-22 09:50:19 +02:00
Zebediah Figura c0b05a2c74 ntoskrnl.exe: Implement IoReleaseRemoveLockAndWaitEx().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-20 09:10:17 +02:00
Zebediah Figura 2a92951769 ntoskrnl.exe: Implement IoAcquireRemoveLockEx().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-20 09:10:11 +02:00
Zebediah Figura afe444f75a ntoskrnl.exe: Implement IoInitializeRemoveLockEx().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47623
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-20 09:10:08 +02:00
Zebediah Figura 92d8ec7954 ntoskrnl.exe: Make the driver object accessible by name while in its entry point.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 11:29:28 +02:00
Zebediah Figura 32b2497645 ntoskrnl.exe: Implement ObQueryNameString().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 11:29:28 +02:00
Zebediah Figura 2543f37932 ntoskrnl.exe: Fix a typo in a debug trace.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-19 11:29:28 +02:00
Alex Henrie f04e7d2650 ntoskrnl: Add stub for SeLocateProcessImageName.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47601
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-09 10:04:01 +02:00
Alex Henrie 558d7fd1b2 ntoskrnl: Add stub for SePrivilegeCheck.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47601
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-09 10:03:57 +02:00
Zebediah Figura b9919c2e7f ntoskrnl.exe: Set the IRP output buffer unless the status has both high bits set.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-08 09:15:43 +02:00
Alex Henrie 433c14b064 ntoskrnl: Add MmIsThisAnNtAsSystem().
This function returns FALSE on all server and non-server versions of
Windows since XP except for Windows Server 2003.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47578
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-07 21:59:29 +02:00
Zebediah Figura dfc7132f50 ntoskrnl.exe: Always set the IRP return size.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-08-07 19:57:20 +02:00
Zebediah Figura b06740ecde ntoskrnl.exe: Load a driver's root PnP devices when the driver is started.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-25 19:25:40 +02:00
Zebediah Figura d4c91cc6f9 ntoskrnl.exe: Add a stub PnP manager driver.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-25 19:25:01 +02:00
Jacek Caban 39d4f9d8af ntoskrnl.exe: Implement KeBugCheck and KeBugCheckEx.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45656
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-25 19:22:21 +02:00
Jacek Caban 7e14df06f1 ntoskrnl.exe: Implement ExDeletePagedLookasideList.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-24 21:21:10 +02:00
Jacek Caban fac633495d ntoskrnl.exe: Implement ExInitializePagedLookasideList.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47014
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-24 21:21:07 +02:00
Jacek Caban 8b787945ef ntoskrnl.exe: Implement IoGetStackLimits.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47017
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-24 21:21:04 +02:00
Alexandre Julliard a1cdcc5290 ntoskrnl: Build with msvcrt.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-17 09:28:35 +02:00
Zebediah Figura 365f162fb1 ntoskrnl.exe: Implement automatically generated device names.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-06 17:42:08 +02:00
Zebediah Figura 4820d9d76c ntoskrnl.exe: Dispatch user IRPs to the top of the device stack.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-06 17:41:37 +02:00
Zebediah Figura 3b2592a2bc ntoskrnl.exe: Move PNP code to a separate file.
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-06-03 22:33:30 +02:00
Jacek Caban 828ac9880d ntoskrnl.exe: Set IRP caller thread.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-30 21:53:27 +02:00
Jacek Caban e80b507f1e ntoskrnl.exe: Dispatch server IRPs in critical region.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-30 21:53:26 +02:00
Derek Lesho 51a732163f ntoskrnl.exe: Implement KeAreApcsDisabled.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-30 21:53:26 +02:00
Jacek Caban 9157129fc8 ntoskrnl.exe: Cancel IRPs terminated by server.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-28 20:17:39 +02:00
Jacek Caban b724024d5a server: Notify kernel when IRP is terminated by server.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-28 20:17:36 +02:00
Jacek Caban 101da2b512 server: Store IRP client pointer on server side.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-28 20:17:03 +02:00
Piotr Caban 294cfaf077 ntoskrnl.exe: Fix IoAttachDeviceToDeviceStack implementation.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-27 20:41:05 +02:00
Piotr Caban e0e795cfe9 ntoskrnl.exe: Add IoDetachDevice implementation.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-27 20:41:00 +02:00
Michael Stefaniuc 94e958c61a ntoskrnl: Add a macro to declare a static CRITICAL_SECTION.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-27 14:40:35 +02:00
Jacek Caban 7287611606 ntoskrnl.exe: Set irp context handle in dispatch_irp.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-27 14:40:33 +02:00
Jacek Caban 0138da5025 ntoskrnl.exe: Reuse IRP input buffer if it wasn't used.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-27 14:40:31 +02:00
Jacek Caban 6870bb74d4 ntoskrnl.exe: Pass context as a structure to IRP dispatchers.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-27 14:40:29 +02:00
Jacek Caban 2f7e7863e0 ntoskrnl.exe: Implement PsGetThreadProcessId.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-21 18:08:37 +02:00
Jacek Caban 07e249e431 ntddk.h: Add a few more declarations.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-16 20:54:23 +02:00
Jacek Caban 850fd237bd ntoskrnl.exe: Implement PsGetProcessInheritedFromUniqueProcessId.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-16 20:54:23 +02:00
Alexandre Julliard 10584d2057 include: Use the __fastcall attribute directly for the Windows build.
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-16 14:07:15 +02:00
Francois Gouget 3f0ca3c7a4 ntoskrnl.exe: Make run_work_item_worker() static.
Signed-off-by: Francois Gouget <fgouget@free.fr>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-09 08:20:23 -05:00
Rafał Harabień 6c0a8c3592 ntoskrnl.exe: Fix handling relocations on page boundary.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=28254
Signed-off-by: Rafał Harabień <rafalh92@outlook.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-06 09:32:24 -05:00
Jacek Caban 7223f11d4a ntoskrnl.exe: Don't keep reference to driver created file objects on client side.
Server keeps instead.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-03 21:18:05 +02:00
Jacek Caban bd94c43fcf ntoskrnl.exe: Associate file object with server object before calling IRP routine.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-03 21:18:02 +02:00
Jacek Caban b1e1111d7b server: Don't use IRP_MJ_* constants for ntoskrnl.exe communication.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-03 21:16:56 +02:00
Jacek Caban 8bce6309ac server: Pass IRP output size in irp_params_t.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-03 21:15:46 +02:00
Jacek Caban 0ee017f2ed ntoskrnl.exe: Support UserEvent in IoCompleteRequest.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:37 +02:00
Jacek Caban 0a8c36b8e3 ntoskrnl.exe: Set IRP DeviceObject in IoCallDriver.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:37 +02:00
Jacek Caban 5f10c86d5b ntoskrnl.exe: Implement IoCancelIrp.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:37 +02:00
Jacek Caban a11cdd2231 ntoskrnl.exe: Implement IoBuildAsynchronousFsdRequest.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-02 17:10:37 +02:00
Jacek Caban 43ba0a1bec ntoskrnl.exe: Implement IoQueueWorkItem.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-01 22:46:52 +02:00
Jacek Caban 322f0b57a8 ntoskrnl.exe: Implement IoAllocateWorkItem and IoFreeWorkItem.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-01 22:46:52 +02:00
Jacek Caban 73b99d296c ntoskrnl.exe: Use ObGetObjectType in kernel_object_from_handle.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-05-01 22:46:52 +02:00
Jacek Caban 73568dab0b ntoskrnl.exe: Support NULL offset in IoBuildSynchronousFsdRequest.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-30 20:09:38 +02:00
Jacek Caban b781a00b14 ntoskrnl.exe: Support SL_INVOKE_ON_CANCEL in IoCompleteRequest.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-30 20:09:34 +02:00
Jacek Caban 332035fb94 ntoskrnl.exe: Use ObOpenObjectByPointer to get handle for kernel object.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-30 20:09:28 +02:00
Jacek Caban bfe3dfb535 ntoskrnl.exe: Implement ObOpenObjectByPointer.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-30 20:09:15 +02:00
Michael Stefaniuc 4905bc740d ntoskrnl.exe: Correctly initialize two CRITICAL_SECTION_DEBUGs.
Signed-off-by: Michael Stefaniuc <mstefani@winehq.org>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-29 22:23:38 +02:00
Jacek Caban 82860424bf ntoskrnl.exe: Implement PsGetThreadId.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-29 18:46:25 +02:00
Jacek Caban eb1146a500 ntoskrnl.exe: Implement PsGetProcessId.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-29 18:46:25 +02:00
Derek Lesho 1c2d517242 ntoskrnl.exe: Implement PsIsSystemThread.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-29 18:46:25 +02:00
Derek Lesho 1064e20a3f ntoskrnl.exe: Export and set PsInitialSystemProcess.
Signed-off-by: Derek Lesho <dereklesho52@Gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-29 18:46:25 +02:00
Jacek Caban 6ebc223955 ntoskrnl.exe: Implement IoGetCurrentProcess.
Based on patch by Derek Lesho.

Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=29460
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-29 18:46:25 +02:00
Jacek Caban 52ff9bd3ac server: Use generic kernel object list to store client device file pointer.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-25 17:28:11 +02:00
Jacek Caban 9784c3fd6f ntoskrnl.exe: Add MmUnmapLockedPages stub.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-23 23:50:45 +02:00
Jacek Caban 95bd82eee5 ntoskrnl.exe: Return error codes compatible with recent Windows versions in PsLookupThreadByThreadId.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-23 23:50:45 +02:00
Derek Lesho ae6ae91d1a ntoskrnl.exe: Implement PsLookupProcessByProcessId.
Signed-off-by: Derek Lesho <dereklesho52@Gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-20 00:18:23 +02:00
Derek Lesho e5bbb5e6ca ntoskrnl.exe: Implement process object constructor.
Signed-off-by: Derek Lesho <dereklesho52@Gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-20 00:18:19 +02:00
Derek Lesho 7498c15b0d ntoskrnl.exe: Implement PsLookupThreadByThreadId.
Signed-off-by: Derek Lesho <dereklesho52@Gmail.com>
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-20 00:18:03 +02:00
Jacek Caban 2017db7d0a ntoskrnl.exe: Open thread with THREAD_QUERY_INFORMATION access in KeGetCurrentThread.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-12 15:33:48 +02:00
Jacek Caban c1fb240f0c ntoskrnl.exe: Use proper device handle in DevicePropertyPhysicalDeviceObjectName implementation.
Spotted by Huw Davies.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-11 19:29:42 +02:00
Zebediah Figura 5698bb29a3 ntoskrnl.exe: Implement ExDeleteResourceLite().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-09 15:46:03 +02:00
Zebediah Figura aeed70689c ntoskrnl.exe: Implement ExReleaseResourceLite().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-09 15:46:03 +02:00
Zebediah Figura 9dfa9f6b26 ntoskrnl.exe: Implement ExReleaseResourceForThreadLite().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-09 15:46:03 +02:00
Zebediah Figura 257c56f5f3 ntoskrnl.exe: Implement ExAcquireResourceExclusiveLite().
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-09 15:46:03 +02:00
Zebediah Figura 1304b4c71b ntoskrnl.exe: Implement ExInitializeResourceLite().
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45819
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-09 15:46:03 +02:00
Jacek Caban 2ee040382f server: Return client thread object pointer from get_next_device_request if available.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-08 19:50:40 +02:00
Jacek Caban d9d55bb1d0 ntoskrnl.exe: Reimplement PsGetCurrentProcessId and PsGetCurrentThreadId on top of KeGetCurrentThread.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-08 19:50:40 +02:00
Jacek Caban f680eda832 ntoskrnl.exe: Implement KeGetCurrentThread.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=45844
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-08 19:50:40 +02:00
Jacek Caban b0b89cb569 ntoskrnl.exe: Implement thread object constructor.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46205
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-08 19:50:40 +02:00
Jacek Caban 80d53026bf ntoskrnl.exe: Don't add device to the list if IoCreateDevice fails.
Spotted by Zebediah Figura.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-08 19:50:40 +02:00
Jacek Caban fd8bc0c16d ntoskrnl.exe: Implement IoCreateSynchronizationEvent.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=46804
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-05 22:16:31 +02:00
Jacek Caban b4f78d6896 server: Use generic kernel object list to store client device pointer.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-05 22:16:31 +02:00
Piotr Caban 5e80774131 ntoskrnl.exe: Don't use strcasecmp.
Signed-off-by: Piotr Caban <piotr@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-04-02 19:23:23 +02:00
Jacek Caban f57a383d09 ntoskrnl.exe: Support waiting on kernel objects.
Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2019-03-26 13:59:04 +01:00