George Bișoc [Sun, 23 May 2021 10:21:47 +0000 (12:21 +0200)]
[NTOS:SE] Implement logon session deletion
And declare a prototype for SepCleanupLUIDDeviceMapDirectory and annotate it with SAL.
Serge Gautherie [Mon, 24 May 2021 06:56:17 +0000 (08:56 +0200)]
[CMAKE] CMakeLists.txt: Remove NO_UNDERSCORE_PREFIX leftovers
And switch to add_compile_definitions().
Addendum to
9efafd6.
Katayama Hirofumi MZ [Tue, 1 Jun 2021 02:11:23 +0000 (11:11 +0900)]
[WIN32SS][NTUSER] ShowWindow.SW_MINIMIZE should show window (#3700)
- user32!ShowWindow.SW_MINIMIZE should show the window.
- Fix the return value of ShowWindow function on invalid parameter.
CORE-15669
Serge Gautherie [Mon, 24 May 2021 06:56:17 +0000 (08:56 +0200)]
[GITHUB] build.yml: Define CLANG_VERSION for clang only
Addendum to
a66214c.
Serge Gautherie [Mon, 24 May 2021 06:56:17 +0000 (08:56 +0200)]
[GITHUB] build.yml: Properly define LLVM_VERSION
Addendum to
a66214c.
Katayama Hirofumi MZ [Mon, 31 May 2021 04:08:06 +0000 (13:08 +0900)]
[WIN32SS][NTUSER] Improve HSHELL_WINDOWCREATED condition (#3697)
Modify the condition of generating HSHELL_WINDOWCREATED, especially on WS_CHILD window style. CORE-15669
Eric Kohl [Sun, 30 May 2021 19:12:58 +0000 (21:12 +0200)]
[NETCFGX] Create unique network connection names
Katayama Hirofumi MZ [Sun, 30 May 2021 00:37:38 +0000 (09:37 +0900)]
[USER32_APITEST] Add ShowWindow testcase (#3689)
Investigate the implementation of user32!ShowWindow. CORE-15669
Timo Kreuzer [Fri, 2 Mar 2018 23:13:37 +0000 (00:13 +0100)]
[RTL/x64] Implement RtlRestoreContext
Timo Kreuzer [Fri, 2 Mar 2018 07:02:13 +0000 (08:02 +0100)]
[RTL/x64] Improve RtlCaptureContext
Use movaps instead of movdqa, it does the same thing, but is one byte shorter.
Shuffle instructions around a bit to maximize parallel execution.
Timo Kreuzer [Mon, 6 Jan 2020 09:46:01 +0000 (10:46 +0100)]
[RTL/x64] Improve RtlInitializeContext
George Bișoc [Sat, 22 May 2021 17:47:19 +0000 (19:47 +0200)]
[NTOS:SE] Do some cleanup on ICIF flags in token information classes
A few of these classes have fixed size lengths, the rest are arbitrary. Also the TokenAuditPolicy class hasn't a size length type specified in the table, which is wrong (and move the corresponding TOKEN_AUDIT_POLICY_INFORMATION structure into the private header).
Katayama Hirofumi MZ [Sat, 29 May 2021 00:33:46 +0000 (09:33 +0900)]
[SHELL32_APITEST] Strengthen and improve ShellHook testcase (#3687)
- Add tests to find the missing parameters against HSHELL_WINDOWCREATED conditions.
- Improve code readability. CORE-15669
Timo Kreuzer [Mon, 5 Oct 2020 13:43:47 +0000 (15:43 +0200)]
[USBPORT] Make unload work
Timo Kreuzer [Mon, 29 Jan 2018 17:41:18 +0000 (18:41 +0100)]
[CRT] Use the asm version of sqrt on amd64
Timo Kreuzer [Mon, 9 Mar 2020 06:01:05 +0000 (07:01 +0100)]
[NTOS:KE] Add IRQL checks and fix KiInitiateUserApc
Timo Kreuzer [Thu, 8 Mar 2018 11:23:45 +0000 (12:23 +0100)]
[NTOS:KE] Improve KiSystemCallEntry64
Timo Kreuzer [Wed, 21 Mar 2018 09:33:31 +0000 (10:33 +0100)]
[NTOS:KE] Fix stack alignment issues
Timo Kreuzer [Sun, 23 May 2021 12:50:10 +0000 (14:50 +0200)]
[NTOS:KE] Remove duplicated EFlag definitions
Timo Kreuzer [Sat, 24 Mar 2018 10:06:18 +0000 (11:06 +0100)]
[ASM] Clear interrupt flag in ExitTrap before returning
Timo Kreuzer [Thu, 8 Mar 2018 23:04:54 +0000 (00:04 +0100)]
[WIN32K][USER32] Change mechanism for storing dialog info pointer
DLGWINDOWEXTRA is 30 (both on win32 and win64). This has storage for the following entries: DWLP_MSGRESULT (0), DWLP_DLGPROC (8), DWLP_USER (16)
We used to store the dialog info pointer using SetWindowLongPtr (DWLP_ROS_DIALOGINFO == DWLP_USER+sizeof(ULONG_PTR) == 24), which was fine on win32, but failed on win64, since there wasn't enough space left (24 + 8 = 32 > 30).
Rewrite the way the DLGINFO pointer is stored, by adding an additional field to the WND structure and set it using NtUserxSetDialogPointer (which is what it is for).
Also fix too small cbWndExtra for the button class.
Timo Kreuzer [Sun, 23 May 2021 12:02:09 +0000 (14:02 +0200)]
[WIN32K] Fix wrong calculation in DIB_32BPP_BitBltSrcCopy
Using an unsigned integer will cause the calculations to be unsigned, which on x64 leads to wrong results, when adding it to a pointer.
Mark Jansen [Wed, 26 May 2021 20:57:43 +0000 (22:57 +0200)]
[SHELL32] CDefView: Prevent use after free
While updating the item, the LVIF_STATE would be requested,
for which the old lParam would be accessed.
Katayama Hirofumi MZ [Wed, 26 May 2021 12:11:10 +0000 (21:11 +0900)]
[REGEDIT] Use InitCommonControlsEx instead of InitCommonControls (#3686)
NOTE: Windows sets 0xFFFF to icce.dwICC but we use better value.
Jérôme Gardou [Wed, 26 May 2021 09:03:34 +0000 (11:03 +0200)]
[NTOS:IO] Be more specific for chasing CORE-17587
Addendum to
42ec1388d7
Jérôme Gardou [Wed, 26 May 2021 08:48:29 +0000 (10:48 +0200)]
[NTOS:IO] Break on IoRaiseInformationalHardError
This one will eventually be reverted. For now, this will help debugging CORE-17587
Hermès Bélusca-Maïto [Tue, 25 May 2021 23:19:10 +0000 (01:19 +0200)]
[CMD] Reset the current thread UI language at startup, and when updating the local code page cache.
CORE-17601
Hermès Bélusca-Maïto [Tue, 25 May 2021 18:17:43 +0000 (20:17 +0200)]
[MODE] Reset the current thread UI language and streams codepage after changing the console codepage. Add extra error handling.
CORE-17601
Hermès Bélusca-Maïto [Tue, 25 May 2021 18:04:01 +0000 (20:04 +0200)]
[CHCP] Reset the current thread UI language and streams codepage after changing the console codepage.
CORE-17601
Hermès Bélusca-Maïto [Tue, 25 May 2021 22:12:10 +0000 (00:12 +0200)]
[CONUTILS] Implement ConSetThreadUILanguage() as a wrapper for kernel32!SetThreadUILanguage().
CORE-17601
Dynamically load SetThreadUILanguage(), so as to support systems where this API is not present.
Hopefully implemented in a thread-safe manner.
Hermès Bélusca-Maïto [Tue, 25 May 2021 22:01:26 +0000 (00:01 +0200)]
[CONUTILS][CMD] Add and use a helper ConStdStreamsSetCacheCodePage() macro instead of repeatedly calling ConStreamSetCacheCodePage() on the standard streams.
Hermès Bélusca-Maïto [Tue, 25 May 2021 21:34:01 +0000 (23:34 +0200)]
[CONUTILS] Update some documentation.
Hervé Poussineau [Tue, 25 May 2021 19:12:41 +0000 (21:12 +0200)]
[NTOS:MM] Remove wrong cleaning of PDEs at session cleanup
Hervé Poussineau [Tue, 25 May 2021 17:02:16 +0000 (19:02 +0200)]
[SMLIB] Implement SmStartCsr and SmStopCsr
Hervé Poussineau [Mon, 24 May 2021 09:50:16 +0000 (11:50 +0200)]
[SMSS] Implement SmpStartCsr
Hervé Poussineau [Mon, 24 May 2021 09:51:51 +0000 (11:51 +0200)]
[NTOS:MM] Finish implementation of MmSessionDelete
Hervé Poussineau [Mon, 24 May 2021 14:38:57 +0000 (16:38 +0200)]
[NTOS:MM] MiDereferenceSession: return as soon as session is destroyed
This leads to some simplifications in the following code.
Timo Kreuzer [Sun, 23 May 2021 11:25:59 +0000 (13:25 +0200)]
[NTOS:CC] Fix use of unintialized variable (caught by RTC1)
Timo Kreuzer [Sun, 23 May 2021 15:01:30 +0000 (17:01 +0200)]
[NTOS:MM] MiIsPdeForAddressValid is NOT an INIT function!
Mark Jansen [Sun, 23 May 2021 15:16:56 +0000 (17:16 +0200)]
[GITHUB] Add ARM builder
This only builds rapps for now
CORE-17517
Mark Jansen [Sun, 11 Apr 2021 13:57:14 +0000 (15:57 +0200)]
[HOST-TOOLS] Configure environment for MSVC cross-compiling
This makes ARM builds on a non-arm host work again.
CORE-17542
CORE-17517
Mark Jansen [Sun, 11 Apr 2021 13:56:18 +0000 (15:56 +0200)]
[SDK] Remove duplicate definition
Mark Jansen [Sun, 11 Apr 2021 13:55:23 +0000 (15:55 +0200)]
[CMAKE] Add some arm/arm64 specific paths
CORE-17517 CORE-17518
Stanislav Motylkov [Mon, 24 May 2021 15:06:17 +0000 (18:06 +0300)]
[FREELDR][HALXBOX] Initialize PCI bridge secondary & subordinate bus values
This fixes the recursion when pci.sys attempts to get PCI bridge children
devices, which in fact are non-existing.
Note that the problem in pci.sys itself also deserves a separate fix.
CORE-16319 CORE-16216
Stanislav Motylkov [Mon, 24 May 2021 15:02:16 +0000 (18:02 +0300)]
[FREELDR] Replace CONFIG_CMD macro with a straightforward bitfield struct
Also fix magic values related to PCI registers.
Stanislav Motylkov [Mon, 24 May 2021 14:24:24 +0000 (17:24 +0300)]
[HAL] HalpDebugPciDumpBus: Fix parsing bugs
- Bridge devices don't have Subsystem ID and Subsystem Vendor ID
- Also they have only two BARs, don't parse data outside of bounds
Addendum to
b232efe1. CORE-16319 CORE-16216
Eric Kohl [Mon, 24 May 2021 13:18:58 +0000 (15:18 +0200)]
[DHCPCSRV] Send an ARP request to check if an automatic private address is available
Eric Kohl [Mon, 24 May 2021 12:43:30 +0000 (14:43 +0200)]
[dnsapi][dnsrslvr] Implement DnsFlushResolverCacheEntry_A/_UTF8/_W
Stanislav Motylkov [Sun, 23 May 2021 12:48:21 +0000 (15:48 +0300)]
[HAL] HalpDebugPciDumpBus: Print details about PCI bridges
CORE-16319 CORE-16216
Mark Jansen [Sat, 3 Apr 2021 13:10:38 +0000 (15:10 +0200)]
[CMAKE] Store and re-use M4 and BISON_PKGDATADIR env variables
ROSBE-174
Mark Jansen [Sat, 22 May 2021 14:34:54 +0000 (16:34 +0200)]
[SHELL32] Include the folder path in logging
Mark Jansen [Sat, 22 May 2021 14:33:19 +0000 (16:33 +0200)]
[RTL][KERNEL32] Move the STUB printing code to a place where it's actually called
Mark Jansen [Sat, 22 May 2021 14:31:31 +0000 (16:31 +0200)]
[WIN32SS] Skip . and .. when enumerating fonts
Jérôme Gardou [Fri, 21 May 2021 08:49:53 +0000 (10:49 +0200)]
[NTOS:KE] Do not call MmSetPageProtect for the Pentium Lock Errata
CORE-17589
Mark Jansen [Wed, 19 May 2021 20:52:49 +0000 (22:52 +0200)]
[USBHUB] Mute debug spam
Mark Jansen [Wed, 19 May 2021 20:52:10 +0000 (22:52 +0200)]
[USBCCGP] Mute debug spam
Jérôme Gardou [Wed, 19 May 2021 22:19:43 +0000 (00:19 +0200)]
Revert "[NTOS:MM] Add private pages to process working sets"
This is so full of bugs, I don't know what to say.
This reverts commit
374fef2d59f39b714ff3152f1590f6af843c8bf5.
Jérôme Gardou [Wed, 19 May 2021 21:53:57 +0000 (23:53 +0200)]
[NTOS:MM] Move software PTE specific check after it's been tested for being one
Caught by The_DarkFire, only soul on earth actually *running* our SMP kernel
Jérôme Gardou [Wed, 19 May 2021 20:20:38 +0000 (22:20 +0200)]
[NTOS:MM] Do not map Process Working Set List in kernel space
This is not needed anymore and causes havoc on amd64
Jérôme Gardou [Tue, 18 May 2021 21:07:07 +0000 (23:07 +0200)]
[RTL] SAL-annotate RtlUnicodeStringToCountedOemString
Brought to you by Hermès
Jérôme Gardou [Tue, 18 May 2021 19:16:48 +0000 (21:16 +0200)]
[NLS] Use files provided by Microsoft to generate most of our NLS files
Instead of binary blobs coming from who-knows-where
CORE-17571
Jérôme Gardou [Tue, 18 May 2021 15:10:41 +0000 (17:10 +0200)]
[TXT2NLS] Rewrite the tool
With support for multibyte codepages & glyph tables
CORE-17571
Jérôme Gardou [Tue, 18 May 2021 07:27:52 +0000 (09:27 +0200)]
[SDK] Turn txt2nls into a host tool
Jérôme Gardou [Mon, 17 May 2021 15:40:26 +0000 (17:40 +0200)]
[RTL] Properly truncate 8dot3 names when using a MultiByte OEM code page
CORE-17571
Jérôme Gardou [Mon, 17 May 2021 14:14:26 +0000 (16:14 +0200)]
[RTL] Fix RtlIsValidOemCharacter implementation for Multibyte code pages
CORE-17571
Jérôme Gardou [Mon, 17 May 2021 14:10:48 +0000 (16:10 +0200)]
[RTL] Properly implement RtlUnicodeToOemN
CORE-17571
Jérôme Gardou [Mon, 17 May 2021 10:07:26 +0000 (12:07 +0200)]
[NTDLL_APITEST] Add some tests for RtlUnicodeToOemN
CORE-17571
Jérôme Gardou [Wed, 12 May 2021 21:31:20 +0000 (23:31 +0200)]
[NTDLL_APITEST] Add some tests for RtlUnicodeStringToCountedOemString
CORE-17571
Jérôme Gardou [Tue, 18 May 2021 21:00:58 +0000 (23:00 +0200)]
[NTDLL_APITEST] Add tests for RtlxUnicodeStringToAnsiSize & RtlxUnicodeStringToOemSize
CORE-17571
Jérôme Gardou [Tue, 18 May 2021 21:00:38 +0000 (23:00 +0200)]
[NTDLL_APITEST] Add some Japanese to RtlGenerate8dot3Name test case
CORE-17571
Dmitry Borisov [Wed, 12 May 2021 14:15:42 +0000 (20:15 +0600)]
[XDK] Update the prototype of IO_COMPLETION_ROUTINE
Dmitry Borisov [Mon, 10 May 2021 19:45:01 +0000 (01:45 +0600)]
[NTOS:PO] Check for optional parameter in the completion routine
The CompletionFunction parameter is really optional.
This fixes a bugcheck caused by shutdown with IDE driver stack.
CORE-17401
Jérôme Gardou [Wed, 19 May 2021 12:13:51 +0000 (14:13 +0200)]
[CMAKE] Allow compiling amd64 port with GCC on Windows
Dedicated to Daniel
Serge Gautherie [Tue, 8 Sep 2020 02:28:50 +0000 (04:28 +0200)]
[GITHUB] build.yml: Remove superfluous '${{github.workspace}}'
Serge Gautherie [Tue, 8 Sep 2020 02:28:50 +0000 (04:28 +0200)]
[GITHUB] build.yml: Sync' 'if:' syntax
Addendum to
3644f3e.
Jérôme Gardou [Tue, 18 May 2021 22:12:05 +0000 (00:12 +0200)]
[NTOS:MM] Fix build on whatever MSVC version triggered this
There is no real need to put static or extern "C" function in a special namespace anyway
Jérôme Gardou [Tue, 30 Mar 2021 14:21:11 +0000 (16:21 +0200)]
[NTOS:MM] Add private pages to process working sets
Jérôme Gardou [Tue, 11 May 2021 10:03:52 +0000 (12:03 +0200)]
[NTOS:MM] Relax requirements with regards to PFN lock when adding & removing entries in Working Sets
Once a page is used, holding the WS lock is enough until you want to free it.
Jérôme Gardou [Tue, 11 May 2021 14:14:03 +0000 (16:14 +0200)]
[NTOS] Introduce KiQueuedSpinLockGuard, similar to std::lock_guard for Queued Spin lock
And use it in Mm as MiPfnLockGuard
Stanislav Motylkov [Tue, 18 May 2021 17:22:22 +0000 (20:22 +0300)]
[INF] Remove remnants of XboxVmp driver which has its own INF file
Dmitry Borisov [Wed, 12 May 2021 20:17:27 +0000 (02:17 +0600)]
[PC98VID] Fix MSVC 2015 build for PC-98 target
Addendum to
3adf45086743d5f075e4270af7af64017eb01d63
Also isolate the constant structures into page section
and restore the previous sections for start IO and entrypoint routines.
Stanislav Motylkov [Tue, 18 May 2021 11:24:10 +0000 (14:24 +0300)]
[WIN32SS] Always build all video miniport drivers
But include registry changes and INF files depending on SARCH variable.
This commit is expected to uncover pc98vid build error on MSVC 2015.
Addendum to
8c475e4. CORE-17529
Stanislav Motylkov [Tue, 18 May 2021 11:18:01 +0000 (14:18 +0300)]
[PC98VID] Use unique target name but rename as vga.sys
This allows building pc98vid driver without conflict with vga_new.
Piotr Hetnarowicz [Wed, 12 May 2021 05:32:55 +0000 (07:32 +0200)]
[DISK_NEW] Add Polish (pl-PL) translation (#3660)
Addendum to
f144b8c1 and
da4ee18c. CORE-17129
Piotr Hetnarowicz [Wed, 12 May 2021 05:20:18 +0000 (07:20 +0200)]
[CDROM_NEW] Add Polish (pl-PL) translation (#3659)
Addendum to
83b85e21. CORE-17129
Co-authored-by: Adam Słaboń <asaillen@protonmail.com>
Serge Gautherie [Tue, 8 Sep 2020 02:28:50 +0000 (04:28 +0200)]
[LOCALSPL] InitializePrinterDrivers(): Fix LocalGetPrinterDriverDirectory) call
Fix Clang-Cl
'...\printerdrivers.c(97,98): warning: variable 'cbBuf' is uninitialized when used here [-Wuninitialized]'
Addendum to
62c4b82.
CORE-14306
George Bișoc [Sun, 16 May 2021 15:18:29 +0000 (17:18 +0200)]
[NTOS:SE] Capture the groups length when creating a token
The groups length is already returned by SeCaptureSidAndAttributesArray, it doesn't make sense to not use it.
Hermès Bélusca-Maïto [Sat, 15 May 2021 17:38:19 +0000 (19:38 +0200)]
[MORE] Add code to load the current 'command extensions' enable status from the registry.
Joachim Henze [Sat, 15 May 2021 01:44:48 +0000 (03:44 +0200)]
[SHELL32] *.rc Whitespace fixes just, no functional change
Motivation to fix them in master is to avoid having to also port them back
when porting back nearby code.
Serge Gautherie [Fri, 5 Oct 2018 16:49:17 +0000 (18:49 +0200)]
[CMAKE] winetests/: Move '/wd4334' to 3 sub-modules only
Addendum to
42d2d5e.
Jérôme Gardou [Fri, 7 May 2021 10:52:37 +0000 (12:52 +0200)]
[GITHUB] Make sure things get compiled with MSVC 2015 & 2017
Also unify again ISO artifacts and upload debug symbols
for MSVC builds while we're at it
Also don't fail early in case things go wrong, which helps fixing build errors in one go
instead of incremental trial & error
Jérôme Gardou [Tue, 11 May 2021 15:13:14 +0000 (17:13 +0200)]
[REACTOS] Addendum to
5c7ce4475e246560d1622b8cc60dc603e3955f66 - Fix MSVC 2015 build
Put data into PAGEDATA or INITDATA sections
Keep section declaration for prototypes
CORE-17540
Serge Gautherie [Tue, 8 Sep 2020 02:28:50 +0000 (04:28 +0200)]
[CMAKE] winetests/: Move '/wd4101' to kernel32/ only
Also add matching remove_target_compile_option().
Addendum to
42d2d5e.
Jérôme Gardou [Thu, 6 May 2021 16:32:44 +0000 (18:32 +0200)]
[KDGDB] Implement TIB address retrieval
George Bișoc [Sat, 8 May 2021 15:25:33 +0000 (17:25 +0200)]
[KMTESTS:SE] Remove erroneous tests regarding impersonation level
These tests didn't make much sense. The captured token from the subject context is not an impersonation token and both Windows and ReactOS ultimately fail on those tests.
Katayama Hirofumi MZ [Tue, 11 May 2021 05:37:49 +0000 (14:37 +0900)]
[CMDUTILS][WHERE] Implement WHERE command (#3642)
WHERE is a Windows command that finds the file location from a executable file name. This PR implements it in ReactOS. CORE-17443
Jérôme Gardou [Mon, 10 May 2021 17:09:53 +0000 (19:09 +0200)]
[NTOS:PS] Use KD routine to safely read memory from thread stack
Should fix a crash when hitting TAB+(Whatever I typed that triggerred this)
Dmitry Borisov [Thu, 8 Apr 2021 13:43:30 +0000 (19:43 +0600)]
[PCIIDE] Make the resource section not discardable. CORE-17401 (#3594)
[PCIX] Make the resource section not discardable.
These drivers need to be able to access their message resources at any time.
Dmitry Borisov [Thu, 8 Apr 2021 14:50:51 +0000 (20:50 +0600)]
[PEFIXUP] Fixup of resource sections in GCC builds. (#3594)
Make resource sections discardable for kernel-mode drivers and DLLs.
George Bișoc [Sun, 9 May 2021 16:17:53 +0000 (18:17 +0200)]
[NDK][NTOS:SE] Fix the member offsets in TOKEN, again...
The member offsets in comments were wrong again, whoops....