Rémi Bernon
f67b4f6bf4
ntoskrnl.exe: Open symbolic link with DELETE before making them temporary.
2024-03-21 22:19:58 +01:00
Alex Henrie
cba29adf06
ntoskrnl: Reimplement ExAllocatePool* on top of ExAllocatePool2.
...
Microsoft deprecated all of these functions except ExAllocatePool2 and
ExAllocatePool3, so it's a safe bet that in Windows the old functions
are just wrappers around the new ones now.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54362
2024-01-22 14:22:21 +01:00
Hans Leidekker
860a6d762f
ntoskrnl: Stub EtwRegisterClassicProvider() and EtwUnregister().
2023-11-22 20:03:05 +01:00
Alexandre Julliard
23daba9abe
ntoskrnl.exe: Use nameless union/structs.
2023-07-05 17:03:30 +02:00
Andrey Gusev
5e2c9b1255
ntoskrnl.exe: Add PsSetLoadImageNotifyRoutineEx semi-stub.
...
BattlEye says it's missing.
2023-07-03 22:15:42 +02:00
Olivier F. R. Dierick
58e81212fc
ntoskrnl.exe: Add Ke386QueryIoAccessMap stub.
...
Simply print a FIXME, instead of triggering the display of a terminal window to show 'call to unimplemented function' debugging info.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54380
2023-06-19 17:41:28 +02:00
Alexandre Julliard
36203f1b86
include: Update the PEB and TEB structures.
...
According to Geoff Chappell's information.
2023-04-19 16:44:54 +02:00
Bernhard Übelacker
07c0cd6ba5
ntoskrnl: Do not leak memory by setting input buffer to NULL.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52322
2023-04-17 18:55:41 +02:00
Alex Henrie
b9627b996f
ntoskrnl: Add ExGetPreviousMode and test.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=54378
2023-03-01 21:39:30 +01:00
Eric Pouech
84cf6aa20d
ntdll: Implement RtlU(short|long)ByteSwap() using fastcall bits.
...
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-12-16 18:48:30 +01:00
Eric Pouech
495711c251
ntdll: Fix export and calling convention of RtlUlonglongByteSwap().
...
The RtlU*ByteSwap() family:
- has FASTCALL calling convention
- is only exported from ntdll and ntoskrnl.exe in 32bit mode
(didn't check ARM though)
Wine's support for RtlUlonglongByteSwap() doesn't follow these constraints.
Note: in __fastcall, 64bit paramaters are passed on the stack, to
RtlUlonglongByteSwap() calling convention acts as __stdcall.
So:
- fix ntdll.spec (resp. ntoskrnl.exe.spec) to only export
(resp. forward) RtlUlonglongByteSwap for i386
- always provide an inline implementation in winternl.h
- reimplement ntdll.RtlUlonglongByteSwap() for i386 with
__fastcall calling convention.
- fix ntdll/tests/rtl.c to use correct calling convention.
- add test in ntdll/tests/rtl.c for inlined version.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53536
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
2022-12-16 18:48:30 +01:00
Etaash Mathamsetty
5fd79c32ed
ntoskrnl.exe: Use KeQueryMaximumProcessorCountEx for KeQueryMaximumProcessorCount.
2022-12-09 17:52:25 +01:00
Etaash Mathamsetty
22e9093c80
ntoskrnl.exe: Implement KeQueryActiveProcessorCount.
2022-11-18 14:00:04 +01:00
Etaash Mathamsetty
38577522ea
ntoskrnl.exe: Implement KeQueryMaximumProcessorCount/Ex.
2022-11-18 14:00:04 +01:00
Etaash Mathamsetty
42c0ec8a1f
ntoskrnl.exe: Use LoadLibraryW for MmGetSystemRoutineAddress.
2022-10-20 17:21:45 +02:00
Etaash Mathamsetty
e740eaee08
ntoskrnl.exe: Implement IoCreateNotificationEvent.
2022-10-20 17:21:44 +02:00
Etaash Mathamsetty
92d74369c8
ntoskrnl.exe: KeInsertQueueDpc stub.
2022-10-11 12:28:29 +02:00
Etaash Mathamsetty
e2a5bf7540
ntoskrnl: Implement KeGetCurrentProcessorNumberEx.
2022-09-21 21:29:20 +02:00
Etaash Mathamsetty
d1e23696df
ntoskrnl: KeSetTargetProcessorDpcEx stub.
...
Required by mrac anti cheat.
2022-09-20 09:22:47 +02:00
Etaash Mathamsetty
e934e746be
ntoskrnl: Implement IoCreateFileEx.
2022-08-23 16:18:51 -05:00
Etaash Mathamsetty
bafb181c42
ntoskrnl.exe: Implement KeAreAllApcsDisabled.
...
Required for vgk.sys (vanguard anti-cheat).
2022-08-23 16:18:51 -05:00
Alexander Wilms
1a2aa0b0be
ntoskrnl: Add KeQueryPriorityThread stub.
...
Signed-off-by: Alexander Wilms <f.alexander.wilms@gmail.com>
2022-07-05 16:40:49 +02:00
Alex Henrie
f185a3acb9
ntoskrnl: Add KeLowerIrql stub.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53076
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
2022-05-31 22:52:44 +02:00
Alex Henrie
ddca4eb838
ntoskrnl: Add KfRaiseIrql stub.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53076
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
2022-05-31 22:52:23 +02:00
Alex Henrie
942eb6008d
ntoskrnl: Add ExNotifyCallback stub.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=53051
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
2022-05-30 22:07:43 +02:00
Eric Pouech
c23de97946
ntoskrnl.exe: Enable compilation with long types.
...
Signed-off-by: Eric Pouech <eric.pouech@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2022-02-16 17:16:52 +01:00
Dmitry Timoshkov
162991a03c
ntoskrnl: Add IoCreateDeviceSecure semi-stub.
...
Signed-off-by: Dmitry Timoshkov <dmitry@baikal.ru>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-11-19 18:31:38 +01:00
Daniel Lehman
de0e9ad965
ntoskrnl.exe: Fix use-after-free when freeing IRP.
...
Signed-off-by: Daniel Lehman <dlehman@esri.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-10-08 15:27:25 +02:00
Chip Davis
7c0f642005
ntoskrnl: Always copy the output buffer for non-buffered ioctls.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=30155
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-14 18:30:25 +02:00
Zebediah Figura
097685aa9e
ntoskrnl: Report separately whether an IRP was marked pending.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-13 11:33:19 +02:00
Zebediah Figura
484b78bda0
ntoskrnl: Report the initial status of an IRP separately from the IOSB status.
...
Based on a patch by Chip Davis.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=30155
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-13 11:32:18 +02:00
Zebediah Figura
69ea35a954
ntoskrnl: Report IRP completion via get_next_device_request if possible.
...
Although there is arguably an advantage to saving a server request, the impetus
for this patch is make it easier for the server to process the IRP return status
before (or at the same time as) it processes the IOSB status. This allows
simpler handling of the case where the IRP handler returns STATUS_PENDING but
completes the IRP before returning.
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-13 11:31:17 +02:00
Zebediah Figura
32347fcf08
server: Queue a cancel IRP in the device file cancel_async callback.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-09-09 22:30:45 +02:00
Alistair Leslie-Hughes
5aec01a7af
ntoskrnl.exe: Implement PsGetCurrentProcessSessionId.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=36887
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-27 18:06:29 +02:00
Zebediah Figura
2f08e95b4b
ntoskrnl: Clear the pending flags for the current stack location before calling the previous location's completion routine.
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 22:03:21 +02:00
Zebediah Figura
14d1855a0c
ntoskrnl: Set the PendingReturned field in IoCompleteRequest().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-25 22:03:19 +02:00
Zebediah Figura
e56e4f97a4
ntoskrnl: Dereference the device children in IoDeleteDevice().
...
Signed-off-by: Zebediah Figura <zfigura@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-23 11:57:05 +02:00
Alex Henrie
c5c9c58974
ntoskrnl: Add MmGetPhysicalAddress semi-stub.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=47047
Signed-off-by: Alex Henrie <alexhenrie24@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-08-10 19:58:31 +02:00
Zebediah Figura
364df14842
ntoskrnl: Forbid unloading a driver with running root PnP devices.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-14 20:51:11 +02:00
Zebediah Figura
73bfe36eab
winedevice: Introduce a custom service control to reënumerate root PnP devices.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-02 21:15:25 +02:00
Zebediah Figura
6977b81807
ntoskrnl: Store root PnP devices per driver.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-04-02 21:14:27 +02:00
Alexandre Julliard
53ffeb67ee
winedevice: Add the drivers directory to the dll search path.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-29 18:42:46 +02:00
Alexandre Julliard
31816a90c6
ntoskrnl: Load driver dependencies from the driver directory.
...
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-03-17 11:49:23 +01:00
Erich E. Hoover
a656ca5e32
ntoskrnl.exe: Implement volume information queries for device files.
...
Signed-off-by: Erich E. Hoover <erich.e.hoover@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-15 16:20:42 +01:00
Zebediah Figura
c4cd339a21
ntoskrnl: Copy the IRP I/O status block to the user I/O status block in IoCompleteRequest().
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-11 22:26:36 +01:00
Austin English
e8cb99466b
ntoskrnl.exe: Add KdDisableDebugger/KdEnableDebugger stubs.
...
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=50599
Signed-off-by: Austin English <austinenglish@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2021-02-02 10:00:28 +01:00
Martin Storsjo
a1955bfb6e
ntdll: Implement a no-op __chkstk for arm64.
...
Signed-off-by: Martin Storsjo <martin@martin.st>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-12-21 16:55:53 +01:00
Myah Caron
c6d0d7f02a
ntoskrnl.exe: Stub MmProtectMdlSystemAddress.
...
Signed-off-by: Myah Caron <qsniyg@protonmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-10-09 10:51:44 +02:00
Derek Lesho
65df36c115
ntoskrnl.exe: Implement ObOpenObjectByName.
...
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-08-04 20:22:38 +02:00
Zebediah Figura
088ababfc2
ntoskrnl.exe: Create symbolic links as permanent objects.
...
Signed-off-by: Zebediah Figura <z.figura12@gmail.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
2020-07-17 00:04:13 +02:00