Commit graph

765 commits

Author SHA1 Message Date
Eric Kohl 13bb5e2317 [umpnpmgr][ndk] Implement PNP_RequestDeviceEject() and update unknown type in PLUGPLAY_CONTROL_QUERY_REMOVE_DATA 2019-10-15 22:40:06 +02:00
Hermès Bélusca-Maïto fb4591c48c
[SDK] Fix a typo, caught by Stas'M :) 2019-10-14 01:36:42 +02:00
Mark Harmstone 43a8d871bf
[FREELDR] Set LDRP_IMAGE_INTEGRITY_FORCED if necessary. (Part of PR #1905)
+ Add extra information.
Co-authored-by: Hermès Bélusca-Maïto <hermes.belusca-maito@reactos.org>
2019-10-14 00:49:00 +02:00
Eric Kohl e83b256f65 [NDK] Fix coding style and indentation. No code changes! 2019-10-13 23:50:22 +02:00
Hermès Bélusca-Maïto 7d5577c21e
[SDK][NDK] Add two missing documented GDT selector names.
Add KGDT_NULL and KGDT_VDM_TILE to the list of known GDT name defines.
See https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/dg--display-selector-
2019-10-13 19:57:54 +02:00
Eric Kohl 7633ebcfde [NDK] Add PLUGPLAY_CONTROL_QUERY_REMOVE_DATA type 2019-10-13 15:25:47 +02:00
Katayama Hirofumi MZ 31d7680a53 [SDK][INCLUDE] Update msgdump.h 2019-10-13 10:45:17 +09:00
Hermès Bélusca-Maïto 912268762e
[SDK:CRT] For intrinsics that don't exist on MSVC 2010 we cannot use an implementation in inlined ASM for x64 builds. 2019-10-07 02:54:05 +02:00
Joachim Henze 81cffd7658 [D3D8][D3D9][DDRAW][D3DCOMPILER_43][WINED3D] Revert to Wine Staging 3.3
Avoid regressions CORE-14955 "Ddraw fullscreen crashes" and CORE-15652

This brings us back to before guilty commit 0.4.10-dev-55-g
7af3969e9f

and therefore downgrades
dll/directx/wine/
D3D8,D3D9,DDRAW,D3DCOMPILER_43,WINED3D
to WineStaging 3.3.
Also downgrades related header sdk/include/reactos/wine/wined3d.h
and for the first time also media/doc/README.WINE

Same versions of these dlls we had in every ros rls since 0.4.10rls.
Amine Khaldi agreed to perform this revert also for master now.

Purpose of this revert is to fix crashes when Ddraw apps switch
into fullscreen with VBEMP and inbuilt Mesa.
I tested, before:
 DxDiag crashed when switching to fullscreen (CORE-14955),
 Diablo II crashed immediately (CORE-15652),
 Monster-Truck-Madness 2 demo crashed after main menu

Afterwards all of these apps do run.
DXTN does still work after that, even with VBEMP and inbuilt Mesa.

squashed commit of 0.4.13-RC-2-g
67dd70e5ef
and 0.4.13-RC-3-g
9f1e2cd172
2019-10-03 18:38:29 +02:00
Pierre Schweitzer 8c7b84bb5c
[SDK] Define RtlGetNativeSystemInformation() 2019-10-02 10:50:59 +02:00
Joachim Henze 43a6843e9d [SDK] Raise KERNEL_VERSION_PATCH_LEVEL to 14 in the version.cmake 2019-09-30 18:15:39 +02:00
Pierre Schweitzer 3f63f236ba
[SDK] Make our MEMORY_SECTION_NAME definitions consistent.
I choose the definition which is also used by Wine & Chromium.

CORE-12043
2019-09-29 14:18:11 +02:00
Thomas Faber be1f95527a
[SHELL] IPersistIDList/IShellLink use P(C)IDLIST_ABSOLUTE. CORE-16385 2019-09-29 12:09:39 +02:00
Thomas Faber b2992e7a5e
[SHELL] IShellExtInit::Initialize uses PCIDLIST_ABSOLUTE. CORE-16385 2019-09-29 12:09:02 +02:00
Thomas Faber c2b476bd77
[SHELL] IPersistFolder::Initialize takes a PCIDLIST_ABSOLUTE. CORE-16385 2019-09-22 16:19:11 +02:00
Thomas Faber b90c24d640
[SHELL] IPersistFolder2::GetCurFolder takes a PIDLIST_ABSOLUTE*. CORE-16385 2019-09-22 16:19:09 +02:00
Bișoc George b6654c0fb5 [PSDK] Add missing declaration of WTSGetActiveConsoleSessionId() (#1920)
This allows this function to be used.
2019-09-21 18:51:28 +02:00
Eric Kohl af7456a1e4 [CABMAN] Third addendum to 7afc888: Also use the the old code in the Trucate() method on Linux 2019-09-19 15:36:18 +02:00
Eric Kohl 0e4dd0fcbc [CABMAN] Second addendum to 7afc888: Use the old code to make Linux happy.
Sorry for the noise, but I do not have a Linux machine to test the build. :-/
2019-09-19 15:25:23 +02:00
Eric Kohl 2949b2f08b [CABMAN] Addendum to 7afc8882: Use PATH_MAX instead of MAX_PATH 2019-09-19 15:07:57 +02:00
Eric Kohl 7afc888279 [CABMAN] Do not use tmpfile() because it does not work well on Windows XP
- Use tempnam() and fopen() instead.
- Prevent the use of file names with a leading slash or backslash.
- Also prevent the use of file names with a trailing dot.
- Remove temporary files after use.
2019-09-19 14:56:50 +02:00
Hermès Bélusca-Maïto 97f31ac396
[SDK:NT] Remove Win32-isms. 2019-09-19 02:39:59 +02:00
Eric Kohl a66c7d2ecc [LSA][SECUR32] Check for untrusted clients
Calls  to LsapCallAuthenticationPackage are routed to LsaApCallPackageUntrusted instead of LsaApCallPackage for  untrusted clients.
2019-09-17 12:58:11 +02:00
Brock Mammen 41d7b3700d [SHELLFIND] Add search command events 2019-09-15 19:46:36 +03:00
Brock Mammen ccf9ce324f [SHELLFIND] Add CFindFolder 2019-09-15 19:46:36 +03:00
Timo Kreuzer e8ab2736e7 [SPEC2DEF] Refactor to avoid parsing multiple times 2019-09-15 14:12:42 +02:00
Timo Kreuzer 9cff65970f [SPEC2DEF] Fix decorated exports on non-x86 2019-09-15 14:12:42 +02:00
Timo Kreuzer 824e08c710 [SPEC2DEF] Handle auto-naming of "@()" functions during output
This allows to do the parsing and output separately, since the generated name is no longer stored on the stack during parsing.
2019-09-15 14:12:42 +02:00
Timo Kreuzer 80c0b083d8 [SPEC2DEF] Use const properly 2019-09-15 12:06:47 +02:00
Timo Kreuzer c95b5e6f9b [SPEC2DEF] Improve error output 2019-09-15 12:06:47 +02:00
Pierre Schweitzer b804b7fa9e
[SDK] Define DO_UNLOAD_PENDING
Based on: http://www.perisoft.net/engineer/wdmcard.htm

CORE-13882
2019-09-13 20:08:39 +02:00
Timo Kreuzer 2adbfdf6cd [PSDK] Add fltdefs.h 2019-09-08 16:23:46 +02:00
Pierre Schweitzer ddc853a4be
[SDK] Workaround MSVC2010 not having _Bool type
CORE-16366
2019-09-06 08:56:58 +02:00
Pierre Schweitzer 255ef2c332
[UBTRFS] Upgrade to 1.4
CORE-16354
2019-09-02 08:19:49 +02:00
Pierre Schweitzer a0592b71e9
[CRT] Import stdbool.h from CLANG
CORE-16354
2019-09-02 08:19:48 +02:00
Timo Kreuzer 99fe069ce6 [CRT][MSVCRT] Add __DestructExceptionObject from wine 2019-09-01 16:29:26 +02:00
Timo Kreuzer 43c93faa16 Revert "[CABMAN] Fix a problem with creating temp files on some Windows system"
This reverts commit bcb0d7c6c9.
2019-09-01 16:26:01 +02:00
James Tabor a02b3da183 Update Header
Add missing structure.
2019-08-29 15:47:56 -05:00
Colin Finck c8681feee9
Fix the ntstrsafe.h tests to make sense, actually succeed using ntstrsafe.h from Win10 (10.0.15063), and fix ReactOS' ntstrsafe.h to also pass these tests. (#1859) 2019-08-28 22:42:52 +02:00
Colin Finck 46ed46c73f
Fix and unify function prototypes for ntstrsafe functions taking variadic arguments. 2019-08-28 22:35:01 +02:00
Colin Finck 331e331209
[FORMATTING] Restore some kind of style to ntstrsafe.h, considering all comments in PR #522 and #523. 2019-08-28 22:32:49 +02:00
Hernán Di Pietro 99818568ed
[DDK] RtlUnicodeStringPrintf(Ex) implementations and ntstrsafe.h tests (#522, #523)
[KMTESTS:RTL] (CORE-14565)

+ Added buffer overrun tests.
+ New style header.
+ ISO C90 compatibility

[DDK] (CORE-9819): RtlUnicodeStringPrintf(Ex) and RtlUnicodeStringValidate(Ex) fixes plus formatting.

[DDK]: Cosmetic changes  (NTSTATUS variable naming and tabs)

[DDK] First implementation of Unicode functions for NtStrSafe (CORE-9819)

+ This implementation does not modify the interface of previous functions.
+ Since we need length returned for the destination UNICODE_STRING.Length field:
  - an intermediate "Len" postfixed function was added with optional
    argument to return the _vsnwprintf character count.
  - Wide Printf(Ex) functions already existent work now call new Rtlp
    private worker functions.
+ For several UnicodeStringPrintf(Ex) tests, see work going on CORE-14565

NOTES:

+ MSDN says they won't insert NULL characters on formatted strings. But
  seems this is incorrect at MSDN (interpret this as DONT ASSUME NULL-termination).
  We return zero-terminated strings, and MS functions seems to do the same.
  (XP DDK 7.1)

[DDK] First implementation of Unicode functions for NtStrSafe (CORE-9819)

+ This implementation does not modify the interface of previous functions.
+ Since we need length returned for the destination UNICODE_STRING.Length field:
  - an intermediate "Len" postfixed function was added with optional
    argument to return the _vsnwprintf character count.
  - Wide Printf(Ex) functions already existent work now call new Rtlp
    private worker functions.
+ For several UnicodeStringPrintf(Ex) tests, see work going on CORE-14565

NOTES:

+ MSDN says they won't insert NULL characters on formatted strings. But
  seems this is incorrect at MSDN (interpret this as DONT ASSUME NULL-termination).
  We return zero-terminated strings, and MS functions seems to do the same.
  (XP DDK 7.1)

[DDK] Fixed bad NtStrSafe.h va_start call (CORE-9819)

Update on RtlUnicodeStringPrintfEx plus cosmetic changes.

[DDK] First implementation of Unicode functions for NtStrSafe (CORE-9819)

+ This implementation does not modify the interface of previous functions.
+ Since we need length returned for the destination UNICODE_STRING.Length field:
  - an intermediate "Len" postfixed function was added with optional
    argument to return the _vsnwprintf character count.
  - Wide Printf(Ex) functions already existent work now call new Rtlp
    private worker functions.
+ For several UnicodeStringPrintf(Ex) tests, see work going on CORE-14565

NOTES:

+ MSDN says they won't insert NULL characters on formatted strings. But
  seems this is incorrect at MSDN (interpret this as DONT ASSUME NULL-termination).
  We return zero-terminated strings, and MS functions seems to do the same.
  (XP DDK 7.1)

[KMTESTS:RTL] Tests for new RtlUnicodePrintf(Ex) functions (CORE-14565)

+ 45 Tests working.
+ Lacks remaining non-Unicode functions in NtStrSafe.h for now.
+ Used for first tests on CORE-9819

[KMTESTS/RTL] Fixed test not taking care of null (CORE-14565)

[DDK] Fixed bad NtStrSafe.h va_start call (CORE-9819)

[KMTESTS:RTL] First Test.

Update on RtlUnicodeStringPrintfEx plus cosmetic changes.

[KMTESTS] Added NtStrSafe to test lists (CORE-14565)

First commit: Skeleton for test implementation + Addition to COMMON SOURCES in kmtests Cmake lists.

WIP.
+Implementation of RtlStringVPrintfWorkerLenW, RtlStringVPrintfExWorkerLenW to avoid changing existing public functions. This is required as existent functions did not return vsnprintf result, so we didn't have any return info to update UNICODE_STRING.Length.
+Additional implementation of RtlUnicodeStringValidate for checking purposes.
+Former RtlStringVPrintfWorker(ex) refactored to RtlInternalStringVPrintf(Ex)WorkerW.
+No ANSI functions affected as we didn't need them for Unicode printf's.

WIP: RtlUnicodeStringPrintf
2019-08-28 22:28:13 +02:00
maharmstone e6a9aafe58 [CMLIB] Clean volatile registry entries in the same manner as Windows (#1883)
This fixes the crashes in HvpGetCellMapped on Windows Server 2003 when booting from Freeloader, as mentioned in maharmstone/btrfs#16.

When the bootloader loads the system hive, it cleans the data pertaining to any volatile keys. The Windows bootloader does this by setting SubKeyCounts[Volatile] to 0. After boot, the kernel marks any cell where this is 0 but SubKeyLists[Volatile] isn't HCELL_NIL as dirty, meaning that the sanitized version will then get flushed to the disk.

Because Freeloader sets SubKeyLists[Volatile] to HCELL_NIL straightaway, Windows thinks the cell is clean, and can unload it without flushing. If it then reads it from the disk, it will crash in HvpGetCellMapped due to the stale volatile pointers.

If you break on nt!CmpInitializeSystemHive on Windows and "gu" to the let the function run, you'll see that DirtyVector of the HHIVE has only the first 8 bits set. If you run it using the official bootloader, it'll have a lot more than that.
2019-08-27 02:39:27 +02:00
Ioannis Adamopoulos e419195d37 [HEADERS] Move some helpers from undocshell.h to shellutils.h as they didn't cover anything undocumented. Merge traycmd.h in undocshell.h as both contain just undocumented shell definitions. 2019-08-25 12:20:52 +03:00
Timo Kreuzer 767d424b0a [CMAKE] Turn C4715: "'function': not all control paths return a value" into an error on MSVC builds 2019-08-23 14:47:39 +02:00
Mark Jansen 029b8f2cf9
[NTDLL] Use the embedded manifest from the process to check compatibility. 2019-08-21 18:57:52 +02:00
Mark Jansen b445fef904
[SDK] Update Int32x32To64 macro for arm 2019-08-20 22:28:11 +02:00
Mark Jansen 35aeaa2397
[RUNTMCHK] Provide fallback memset for arm builds 2019-08-20 22:28:11 +02:00
Mark Jansen 8a86264f14
[NDK][ARM] Stub a few required types for bootlib 2019-08-20 22:28:11 +02:00
Mark Jansen b5dc79c963
[CMAKE] Some arm cmake fixes 2019-08-20 22:27:59 +02:00