reactos.git
2 months ago[SDK] wine/typeof.h: Remove duplicate ImeGetRegisterWordStyle line
Serge Gautherie [Tue, 8 Sep 2020 02:28:50 +0000 (04:28 +0200)]
[SDK] wine/typeof.h: Remove duplicate ImeGetRegisterWordStyle line

Fix msbuild amd64
'...\sdk\include\reactos\wine/typeof.h(50,64): error C2059: syntax error: '<parameter-list>' [D:\a\reactos\reactos\build\dll\win32\msxml3\msxml3.vcxproj]'

Addendum to 32072cf (r42469).

2 months ago[CMAKE] CMakeLists.txt: Print CMAKE_CONFIGURATION_TYPES
Serge Gautherie [Tue, 8 Sep 2020 02:28:50 +0000 (04:28 +0200)]
[CMAKE] CMakeLists.txt: Print CMAKE_CONFIGURATION_TYPES

Follow-up to d10728a.

3 months ago[USETUP] Loop over MUI entries of the same ID 2553/head
George Bișoc [Tue, 28 Apr 2020 11:08:55 +0000 (13:08 +0200)]
[USETUP] Loop over MUI entries of the same ID

MUI entries can have the same ID pointed by TextID member of MUI_ENTRY structure. For this matter, altering a certain entry such as deleting a portion of text with MUIClearStyledText() only removes that portion of text when the given ID argument and the retrieved ID match.

However, MUIClearStyledText() only removes the first instance of text in the console leaving other entries with the same ID as is. Therefore we must ensure that we also iterate over other entries with the same ID as well. Besides the aforementioned function, do the same with MUIClearText(), MUISetText() and MUISetStyledText() too.

3 months ago[PEFIXUP] Section names are case-sensitive, so we can just use strncmp() instead...
Hermès Bélusca-Maïto [Sun, 11 Apr 2021 00:24:19 +0000 (02:24 +0200)]
[PEFIXUP] Section names are case-sensitive, so we can just use strncmp() instead of the non-standard strncasecmp() for names comparisons. (#3598)

3 months ago[PEFIXUP] Avoid multi-level nesting of code with the error handling done at the very...
Hermès Bélusca-Maïto [Sat, 10 Apr 2021 18:21:43 +0000 (20:21 +0200)]
[PEFIXUP] Avoid multi-level nesting of code with the error handling done at the very end. Use size_t variables for file sizes. (#3598)

3 months ago[PEFIXUP] Only recalculate the PE checksum if the image is not from a reproducible...
Hermès Bélusca-Maïto [Sat, 10 Apr 2021 18:06:56 +0000 (20:06 +0200)]
[PEFIXUP] Only recalculate the PE checksum if the image is not from a reproducible build (original checksum == 0). (#3598)

3 months ago[PEFIXUP] Use vfprintf() with the va_args list. (#3598)
Hermès Bélusca-Maïto [Sat, 10 Apr 2021 18:05:18 +0000 (20:05 +0200)]
[PEFIXUP] Use vfprintf() with the va_args list. (#3598)

3 months ago[CSRSRV] Fix uninitialized variable warning detected by Clang. (#3619) 3619/head
Hermès Bélusca-Maïto [Wed, 21 Apr 2021 17:48:58 +0000 (19:48 +0200)]
[CSRSRV] Fix uninitialized variable warning detected by Clang. (#3619)
CORE-17545

subsystems/win32/csrsrv/api.c:63:9: warning: variable 'ServerDll' is used uninitialized whenever '||' condition is true [-Wsometimes-uninitialized]
    if ((ServerId >= CSR_SERVER_DLL_MAX) ||
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
subsystems/win32/csrsrv/api.c:67:76: note: uninitialized use occurs here
        DPRINT1("CSRSS: %lx is invalid ServerDllIndex (%08x)\n", ServerId, ServerDll);
                                                                           ^~~~~~~~~

3 months ago[CSRSRV] Display some other DPRINTs only when CSRSRV is compiled in debugging mode.
Hermès Bélusca-Maïto [Wed, 21 Apr 2021 17:47:36 +0000 (19:47 +0200)]
[CSRSRV] Display some other DPRINTs only when CSRSRV is compiled in debugging mode.
Addendum to 835f3ef1.

3 months ago[CONSRV] wcwidth.c: Fix out-of-range comparisons Clang warnings for wchar_t's, that...
Hermès Bélusca-Maïto [Wed, 21 Apr 2021 17:12:43 +0000 (19:12 +0200)]
[CONSRV] wcwidth.c: Fix out-of-range comparisons Clang warnings for wchar_t's, that are only 2 bytes long on NT. (#3619)
CORE-17545

win32ss/user/winsrv/consrv/frontends/wcwidth.c:203:30: warning: result of comparison of constant 262141 with expression of type 'wchar_t' (aka 'unsigned short') is always true [-Wtautological-constant-out-of-range-compare]
      (ucs >= 0x30000 && ucs <= 0x3fffd)));
                         ~~~ ^  ~~~~~~~
win32ss/user/winsrv/consrv/frontends/wcwidth.c:203:12: warning: result of comparison of constant 196608 with expression of type 'wchar_t' (aka 'unsigned short') is always false [-Wtautological-constant-out-of-range-compare]
      (ucs >= 0x30000 && ucs <= 0x3fffd)));
       ~~~ ^  ~~~~~~~
win32ss/user/winsrv/consrv/frontends/wcwidth.c:202:30: warning: result of comparison of constant 196605 with expression of type 'wchar_t' (aka 'unsigned short') is always true [-Wtautological-constant-out-of-range-compare]
      (ucs >= 0x20000 && ucs <= 0x2fffd) ||
                         ~~~ ^  ~~~~~~~
win32ss/user/winsrv/consrv/frontends/wcwidth.c:202:12: warning: result of comparison of constant 131072 with expression of type 'wchar_t' (aka 'unsigned short') is always false [-Wtautological-constant-out-of-range-compare]
      (ucs >= 0x20000 && ucs <= 0x2fffd) ||
       ~~~ ^  ~~~~~~~

3 months ago[PSDK] Remove a buggy GNU-specific "PACKED" attribute in KEY_EVENT_RECORD structure...
Hermès Bélusca-Maïto [Wed, 21 Apr 2021 17:03:00 +0000 (19:03 +0200)]
[PSDK] Remove a buggy GNU-specific "PACKED" attribute in KEY_EVENT_RECORD structure declaration. (#3619)
CORE-17545

No other public header out there (in MS PSDK, MinGW, Wine, etc...) does have
this hack (that was introduced back in the days in r15141 / commit 01df92bc).

Add static assert on KEY_EVENT_RECORD's uChar member to ensure it's properly aligned.

May fix Clang warning:

win32ss/user/winsrv/consrv/lineinput.c:457:62: warning: taking address of packed member 'uChar' of class or structure '_KEY_EVENT_RECORD' may result in an unaligned pointer value [-Waddress-of-packed-member]
            LineInputEdit(Console, (Overstrike ? 1 : 0), 1, &KeyEvent->uChar.UnicodeChar);
                                                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~
and whatnot...

3 months ago[CONSRV] Fix uninitialized variables warnings detected by Clang. (#3619)
Hermès Bélusca-Maïto [Wed, 21 Apr 2021 16:45:35 +0000 (18:45 +0200)]
[CONSRV] Fix uninitialized variables warnings detected by Clang. (#3619)
CORE-17545

Fix 3 warnings:

win32ss/user/winsrv/consrv/alias.c:648:16: warning: variable 'Status' is used uninitialized whenever 'while' loop exits because its condition is false [-Wsometimes-uninitialized]
        while (CurEntry)
               ^~~~~~~~
win32ss/user/winsrv/consrv/alias.c:693:12: note: uninitialized use occurs here
    return Status;
           ^~~~~~

win32ss/user/winsrv/consrv/alias.c:715:9: warning: variable 'Status' is used uninitialized whenever 'if' condition is false [-Wsometimes-uninitialized]
    if (Header)
        ^~~~~~
win32ss/user/winsrv/consrv/alias.c:727:12: note: uninitialized use occurs here
    return Status;
           ^~~~~~

win32ss/user/winsrv/consrv/alias.c:771:16: warning: variable 'Status' is used uninitialized whenever 'while' loop exits because its condition is false [-Wsometimes-uninitialized]
        while (RootHeader)
               ^~~~~~~~~~
win32ss/user/winsrv/consrv/alias.c:807:12: note: uninitialized use occurs here
    return Status;

3 months ago[SYSDM] Fix uninitialized variables warnings detected by Clang. (#3619)
Hermès Bélusca-Maïto [Wed, 21 Apr 2021 16:29:11 +0000 (18:29 +0200)]
[SYSDM] Fix uninitialized variables warnings detected by Clang. (#3619)
CORE-17545

Addendum to commit d635ce0c.

dll/cpl/sysdm/general.c:156:25: warning: variable 'hCreditsDC' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
                    if (hDC == NULL)
                        ^~~~~~~~~~~
dll/cpl/sysdm/general.c:216:25: note: uninitialized use occurs here
                    if (hCreditsDC != NULL) DeleteDC(hCreditsDC);
                        ^~~~~~~~~~

and the same for hLogoDC:

dll/cpl/sysdm/general.c:215:25: note: uninitialized use occurs here
                    if (hLogoDC != NULL) DeleteDC(hLogoDC);
                        ^~~~~~~

3 months ago[SYSDM][USERINIT] Fix uninitialized variables warnings detected by Clang. (#3619)
Hermès Bélusca-Maïto [Wed, 21 Apr 2021 16:18:41 +0000 (18:18 +0200)]
[SYSDM][USERINIT] Fix uninitialized variables warnings detected by Clang. (#3619)
CORE-17545

Addendum to commit d635ce0c.

- Move the HDC variables initialization via function calls, out of
  the variables declaration block.

- Fix warnings (and identical for base/system/userinit/livecd.c):

dll/cpl/sysdm/general.c:72:9: warning: variable 'hLogo' is used uninitialized whenever 'if' condition is true [-Wsometimes-uninitialized]
    if (hDC == NULL || hDCLogo == NULL || hDCMask == NULL)
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
dll/cpl/sysdm/general.c:130:9: note: uninitialized use occurs here
    if (hLogo != NULL) DeleteObject(hLogo);
        ^~~~~

and similar for hMask too:

dll/cpl/sysdm/general.c:129:9: note: uninitialized use occurs here
    if (hMask != NULL) DeleteObject(hMask);
        ^~~~~

3 months ago[SYSDM][USERINIT] Rewrite a if-condition in order to fail early, and save one level...
Hermès Bélusca-Maïto [Wed, 21 Apr 2021 16:11:17 +0000 (18:11 +0200)]
[SYSDM][USERINIT] Rewrite a if-condition in order to fail early, and save one level of code indentation.

3 months ago[USETUP] Fix letter encoding in translation. (#3619)
Hermès Bélusca-Maïto [Wed, 21 Apr 2021 15:55:45 +0000 (17:55 +0200)]
[USETUP] Fix letter encoding in translation. (#3619)
CORE-17545

Fix Clang warning:

base/setup/usetup/lang/de-DE.h:1099:24: warning: illegal character encoding in string literal [-Winvalid-source-encoding]
        "die Partition <E4>ndern, die derzeit als aktiv markiert ist.",
                       ^~~~

3 months ago[TRANSLATION] indonesian add and update apps/shell translation
Mas Ahmad Muhammad [Mon, 26 Apr 2021 14:47:12 +0000 (21:47 +0700)]
[TRANSLATION] indonesian add and update apps/shell translation

3 months ago[CMDUTILS][FC] Implement FC wildcard handling (#3640)
Katayama Hirofumi MZ [Wed, 5 May 2021 03:23:16 +0000 (12:23 +0900)]
[CMDUTILS][FC] Implement FC wildcard handling (#3640)

Implement wildcard handling on FC (file comparison) command. And fix the bugs on zero-sized files. CORE-17500

3 months ago[GITHUB] Improve logic to cache RosBE build
Jérôme Gardou [Tue, 4 May 2021 08:57:24 +0000 (10:57 +0200)]
[GITHUB] Improve logic to cache RosBE build

+ Minor implrovements:
  Use cmake args instead of forcing command working directory
  Give specific names to artifacts - bootcd/livecd

3 months ago[NTOS:MM] First shot for Working Set list support
Jérôme Gardou [Mon, 12 Apr 2021 09:36:19 +0000 (11:36 +0200)]
[NTOS:MM] First shot for Working Set list support

- Initialize
- Add private page (no shared page support yet)
- Remove pages
- Trim

Yes, this is C++ in the kernel.

3 months ago[NDK] Make kefuncs.h C++ aware
Jérôme Gardou [Fri, 26 Mar 2021 09:08:26 +0000 (10:08 +0100)]
[NDK] Make kefuncs.h C++ aware

3 months ago[NTOS] Make some internal headers C++ aware
Jérôme Gardou [Fri, 26 Mar 2021 08:32:34 +0000 (09:32 +0100)]
[NTOS] Make some internal headers C++ aware

3 months ago[NTOS:MM] Introduce MI_IS_PROCESS_WORKING_SET helper function
Jérôme Gardou [Tue, 30 Mar 2021 16:13:59 +0000 (18:13 +0200)]
[NTOS:MM] Introduce MI_IS_PROCESS_WORKING_SET helper function

3 months ago[NTOS:MM] Implement turning working set shared lock to exclusive
Jérôme Gardou [Tue, 23 Feb 2021 16:21:26 +0000 (17:21 +0100)]
[NTOS:MM] Implement turning working set shared lock to exclusive

3 months ago[NTOS/MM] Implement Mi(Un)lockWorkingSetShared
Jérôme Gardou [Thu, 22 Oct 2020 13:24:33 +0000 (15:24 +0200)]
[NTOS/MM] Implement Mi(Un)lockWorkingSetShared

Also fix checks when exclusively locking

3 months ago[CMDUTILS][FC] Implement text file comparison (#3625)
Katayama Hirofumi MZ [Tue, 4 May 2021 09:05:57 +0000 (18:05 +0900)]
[CMDUTILS][FC] Implement text file comparison (#3625)

Implement text file comparison by using file mappings (both Unicode and ANSI). CORE-17500

3 months ago[NTOS:SE] Get the session ID and assign it to the new token 3639/head
George Bișoc [Mon, 3 May 2021 19:23:02 +0000 (21:23 +0200)]
[NTOS:SE] Get the session ID and assign it to the new token

SeExchangePrimaryToken doesn't assign the session ID to the new token, which could lead to incorrect behaviour in the long run. Let's fix that.

3 months ago[HALX86] Disable Lazy IRQL in APIC HAL (#3609)
Justin Miller [Tue, 4 May 2021 01:29:50 +0000 (18:29 -0700)]
[HALX86] Disable Lazy IRQL in APIC HAL (#3609)

Lazy IRQL feature has issues with interrupt delivery on VirtualBox, so disable it for now.
For the feature description, see commit d28eae967a04320931241f06c88c801aa86397bd

Meanwhile, merge and clean up APIC headers a bit

3 months ago[GITHUB] Use full paths on build-linux, as RosBE.sh overwrites them
Victor Perevertkin [Mon, 3 May 2021 22:32:21 +0000 (01:32 +0300)]
[GITHUB] Use full paths on build-linux, as RosBE.sh overwrites them

Addendum to 167c60a5c8c20cb0e58c78ff1449e5c220208c16 and 823ddc3d82b8a6d035c699d9366cf95cc7f94f8f

3 months ago[GITHUB] Remove working-directory for configure
Victor Perevertkin [Mon, 3 May 2021 22:21:40 +0000 (01:21 +0300)]
[GITHUB] Remove working-directory for configure

Addendum to 167c60a5c8c20cb0e58c78ff1449e5c220208c16

3 months ago[GITHUB] Use cmake's -S and -B options explicitly
Victor Perevertkin [Mon, 3 May 2021 22:10:22 +0000 (01:10 +0300)]
[GITHUB] Use cmake's -S and -B options explicitly

3 months ago[GITHUB] Add clang-cl amd64 build to CI
Jérôme Gardou [Mon, 3 May 2021 13:48:53 +0000 (15:48 +0200)]
[GITHUB] Add clang-cl amd64 build to CI

As before, use a matrix for Ninja+Msvc build

3 months ago[FDEBUG] Use VK_ identifiers with VIRTKEY
Jérôme Gardou [Mon, 3 May 2021 13:47:56 +0000 (15:47 +0200)]
[FDEBUG] Use VK_ identifiers with VIRTKEY

3 months ago[PSEH] Fix use of dummy implementation in C++
Jérôme Gardou [Mon, 3 May 2021 14:09:34 +0000 (16:09 +0200)]
[PSEH] Fix use of dummy implementation in C++

3 months ago[PSEH] Use dummy PSEH for clang(-cl) amd64 build
Jérôme Gardou [Mon, 3 May 2021 13:29:50 +0000 (15:29 +0200)]
[PSEH] Use dummy PSEH for clang(-cl) amd64 build

3 months ago[NOTEPAD] Fix resource file
Jérôme Gardou [Fri, 30 Apr 2021 15:36:49 +0000 (17:36 +0200)]
[NOTEPAD] Fix resource file

VIRTKEY can't be preceded with ^
and is useless anyway

3 months ago[CMAKE] Do not use a flag which clang doesn't know
Jérôme Gardou [Fri, 30 Apr 2021 12:15:39 +0000 (14:15 +0200)]
[CMAKE] Do not use a flag which clang doesn't know

3 months ago[KERNEL32] Sync NLS RC files with wine 6.7
Jérôme Gardou [Fri, 30 Apr 2021 11:55:17 +0000 (13:55 +0200)]
[KERNEL32] Sync NLS RC files with wine 6.7

Mostly for having them UTF-8 encoded

3 months ago[CRT] Also use alias _rot functions for clang-cl amd64 build
Jérôme Gardou [Thu, 29 Apr 2021 21:33:05 +0000 (23:33 +0200)]
[CRT] Also use alias _rot functions for clang-cl amd64 build

3 months ago[CMAKE] Do not define _M_AMD64 when using amd64 clang-cl
Jérôme Gardou [Thu, 29 Apr 2021 20:28:33 +0000 (22:28 +0200)]
[CMAKE] Do not define _M_AMD64 when using amd64 clang-cl

3 months ago[CRT] Do not define builtin functions if not needed
Jérôme Gardou [Thu, 29 Apr 2021 20:25:54 +0000 (22:25 +0200)]
[CRT] Do not define builtin functions if not needed

3 months ago[CMAKE] Always use cl to build host tools
Jérôme Gardou [Thu, 29 Apr 2021 20:14:41 +0000 (22:14 +0200)]
[CMAKE] Always use cl to build host tools

3 months ago[GITHUB] Enable GCC+clang amd64 build
Jérôme Gardou [Wed, 28 Apr 2021 12:13:31 +0000 (14:13 +0200)]
[GITHUB] Enable GCC+clang amd64 build

Use github cache to build & retrieve RosBE on linux,
for now using a custom build script until Next RosBE is out

Use a matrix to manage linux gcc + clang build

3 months ago[FRAMEDYN] Fix the whole situation with regards to wchar_t
Jérôme Gardou [Thu, 29 Apr 2021 08:53:08 +0000 (10:53 +0200)]
[FRAMEDYN] Fix the whole situation with regards to wchar_t

Alias CHSTRING_WCHAR to unsigned short and use inline wrappers
to be able to use the thing with modern compilers

Put the GCC aliases into the public header.

Enable build with clang-cl

3 months ago[SPEC2DEF] Fix imports of C++ stdcall exports
Jérôme Gardou [Thu, 29 Apr 2021 13:30:59 +0000 (15:30 +0200)]
[SPEC2DEF] Fix imports of C++ stdcall exports

Too much mangling mangles it too much

3 months ago[CMAKE] Use SEH exceptions for c++ in clang amd64 build
Jérôme Gardou [Wed, 28 Apr 2021 21:52:45 +0000 (23:52 +0200)]
[CMAKE] Use SEH exceptions for c++ in clang amd64 build

3 months ago[CRT] Fix SEH macros for clang x64
Jérôme Gardou [Wed, 28 Apr 2021 15:25:15 +0000 (17:25 +0200)]
[CRT] Fix SEH macros for clang x64

3 months agoRevert "[CMAKE] Disable SSE instruction on GCC amd64 builds"
Jérôme Gardou [Wed, 28 Apr 2021 15:17:02 +0000 (17:17 +0200)]
Revert "[CMAKE] Disable SSE instruction on GCC amd64 builds"

The right fix is to ensure that the stack is properly 16-bit aligned
This reverts commit 63944988a25335a5ac97f4028e759aede04a8458.

3 months ago[GDI32] Fix wrong ordering of parameters in NtGdiDdGetDC call (#3637)
Oleg Dubinskiy [Mon, 3 May 2021 16:11:18 +0000 (19:11 +0300)]
[GDI32] Fix wrong ordering of parameters in NtGdiDdGetDC call (#3637)

It allows to properly pass the surface handle (and palette entry pointer) from MS ddraw into win32k.
Otherwise, they are passing into the wrong parameters of actual NtGdi* function, and due to this,
since they're detected as invalid, they become NULL, and that function does not work correctly.

See https://docs.microsoft.com/en-us/windows/win32/devnotes/-dxgkernel-ntgdiddgetdc for the reference
(and confirmed by our headers).

Required by MS DirectDraw stack (ddraw.dll & dxg.sys).
CORE-17561

3 months ago[NTOS:PS] Add some data structures 2906/head
George Bișoc [Sun, 2 May 2021 19:03:09 +0000 (21:03 +0200)]
[NTOS:PS] Add some data structures

These are needed for API tests. The following structures are taken from Process Hacker.

3 months ago[NTOSKRNL] Use IQS_SAME instead of ICI_SQ_SAME
George Bișoc [Sun, 2 May 2021 19:00:51 +0000 (21:00 +0200)]
[NTOSKRNL] Use IQS_SAME instead of ICI_SQ_SAME

And remove the redundant ICI_SQ_SAME macro as it's no longer needed in the codebase.

3 months ago[NTDLL_APITEST] Add alignment probing tests for Query/Set information thread related...
George Bișoc [Sun, 2 May 2021 18:58:40 +0000 (20:58 +0200)]
[NTDLL_APITEST] Add alignment probing tests for Query/Set information thread related routines

3 months ago[NTDLL_APITEST] Add alignment probing tests for Query/Set information process related...
George Bișoc [Sun, 2 May 2021 18:56:14 +0000 (20:56 +0200)]
[NTDLL_APITEST] Add alignment probing tests for Query/Set information process related routines

3 months ago[NTOS:PS] Bring the threads/processes information classes table back
George Bișoc [Sun, 2 May 2021 18:52:18 +0000 (20:52 +0200)]
[NTOS:PS] Bring the threads/processes information classes table back

These were removed in bf493b9, for whatever apparent reason. It's time to import them back.

3 months ago[NTOSKRNL] Move the ICIF related code and stuff into a separate header file
George Bișoc [Sun, 2 May 2021 18:49:06 +0000 (20:49 +0200)]
[NTOSKRNL] Move the ICIF related code and stuff into a separate header file

For easier accessibility for the APITESTs and whatnot.

3 months ago[NTDLL_APITEST] Implement alignment probing library code
George Bișoc [Sun, 2 May 2021 18:45:57 +0000 (20:45 +0200)]
[NTDLL_APITEST] Implement alignment probing library code

The probing library code only probes data types for threads/processes information classes in Process Structure subsystem for now.

3 months ago[NTDLL_APITEST] Include the internal headers from the kernel and the probing library...
George Bișoc [Sun, 2 May 2021 18:42:19 +0000 (20:42 +0200)]
[NTDLL_APITEST] Include the internal headers from the kernel and the probing library file

3 months ago[NTOS:PS] Make sure we can impersonate the given token first 3605/head
George Bișoc [Mon, 12 Apr 2021 12:42:52 +0000 (14:42 +0200)]
[NTOS:PS] Make sure we can impersonate the given token first

PsImpersonateClient blindly impersonates the requested client even though it doesn't know if the actual token given to the call can be impersonated for the thread of the client which we are going to begin impersonation. In the case where impersonation is not possible, make a copy of the given token and assign the newly one for impersonation instead.
CORE-17539

3 months ago[NTOS:SE] Implement SeTokenCanImpersonate routine
George Bișoc [Mon, 12 Apr 2021 12:33:42 +0000 (14:33 +0200)]
[NTOS:SE] Implement SeTokenCanImpersonate routine

SeTokenCanImpersonate ensures whether the client impersonation can occur, and if not, the call signals this to the caller.

3 months ago[NTOS:PS] Revert 4d7062abb6bcdfefd1c25d391020d98cb6538576 on request
Eric Kohl [Sun, 2 May 2021 14:26:11 +0000 (16:26 +0200)]
[NTOS:PS] Revert 4d7062abb6bcdfefd1c25d391020d98cb6538576 on request

3 months ago[NTOS:PS] Add the missing privilege check to NtSetInformationThread:ThreadPriority
Eric Kohl [Sun, 2 May 2021 13:28:26 +0000 (15:28 +0200)]
[NTOS:PS] Add the missing privilege check to NtSetInformationThread:ThreadPriority

This fixes the remaining failure in the NtSetInformationThread test.

3 months ago[NTOS:PS] Add ThreadInformation probing to NtSetInformationThread
Eric Kohl [Sun, 2 May 2021 11:55:29 +0000 (13:55 +0200)]
[NTOS:PS] Add ThreadInformation probing to NtSetInformationThread

Also get rid of unused buffer check code.
This fixes two test failures.

3 months ago[NTOS:PS] Rewrite NtSetInformationThread to match NtQueryInformationThread
Eric Kohl [Sun, 2 May 2021 11:46:22 +0000 (13:46 +0200)]
[NTOS:PS] Rewrite NtSetInformationThread to match NtQueryInformationThread

The Information length must always be checked before referencing the thread object. This fixes a test failure.

3 months ago[NTOS:PS] Rewrite NtQueryInformationThread to match NtQueryInformationProcess
Eric Kohl [Sun, 2 May 2021 10:46:19 +0000 (12:46 +0200)]
[NTOS:PS] Rewrite NtQueryInformationThread to match NtQueryInformationProcess

The information length must always be checked before referencing the thread object. This fixes the remaining test failure.

3 months ago[REACTOS] Fix parameter types on some exports (#3217)
Serge Gautherie [Sat, 1 May 2021 19:11:34 +0000 (21:11 +0200)]
[REACTOS] Fix parameter types on some exports (#3217)

Fix some wrong parameter types on some exports in NTDLL, KERNEL32, WTSAPI32, and NTOSKRNL.

3 months ago[NTOS:OB] ObQueryDeviceMapInformation(): Fix annotations
Serge Gautherie [Thu, 12 Nov 2020 00:22:46 +0000 (01:22 +0100)]
[NTOS:OB] ObQueryDeviceMapInformation(): Fix annotations

3 months ago[PSDK] UnlockResource(): Improve definition
Serge Gautherie [Thu, 12 Nov 2020 00:22:46 +0000 (01:22 +0100)]
[PSDK] UnlockResource(): Improve definition

Sync' with
https://source.winehq.org/git/wine.git/commit/a9e50da352e32d4c1bc8d0a686efa1e1bb7a84da

3 months ago[CMD_APITEST] Follow-up of #3632 (0c2230a)
Katayama Hirofumi MZ [Fri, 30 Apr 2021 01:48:33 +0000 (10:48 +0900)]
[CMD_APITEST] Follow-up of #3632 (0c2230a)

CORE-17500

3 months ago[INF] Remove stray file. Addendum to commit a1fc312a.
Hermès Bélusca-Maïto [Fri, 30 Apr 2021 00:42:35 +0000 (02:42 +0200)]
[INF] Remove stray file. Addendum to commit a1fc312a.

3 months ago[NTOS:PS] NtQueryInformationProcess(): Fix ProcessDeviceMap case
Serge Gautherie [Thu, 12 Nov 2020 00:22:46 +0000 (01:22 +0100)]
[NTOS:PS] NtQueryInformationProcess(): Fix ProcessDeviceMap case

Fix Clang-Cl
'...\ntoskrnl\ps\query.c(583,33): warning: variable 'Status' is uninitialized when used here [-Wuninitialized]'

Addendum to 1074a9a.

3 months ago[NTOS:PS] NtQueryInformationProcess(): Sync' annotations
Serge Gautherie [Thu, 12 Nov 2020 00:22:46 +0000 (01:22 +0100)]
[NTOS:PS] NtQueryInformationProcess(): Sync' annotations

3 months ago[FC] Fix typo s/IDS_RESYNCH_/IDS_RESYNC_/ s/Resynch/Resync/
Katayama Hirofumi MZ [Thu, 29 Apr 2021 07:59:20 +0000 (16:59 +0900)]
[FC] Fix typo s/IDS_RESYNCH_/IDS_RESYNC_/ s/Resynch/Resync/

CORE-17500

3 months ago[CMD_APITEST] Add FC testcase (#3632)
Katayama Hirofumi MZ [Thu, 29 Apr 2021 07:39:13 +0000 (16:39 +0900)]
[CMD_APITEST] Add FC testcase (#3632)

Add a testcase for FC (file comparison) command to investigate FC command. CORE-17500

3 months ago[NE2000] Use the real MAC address instead of a fake one
Hervé Poussineau [Wed, 21 Apr 2021 22:32:33 +0000 (00:32 +0200)]
[NE2000] Use the real MAC address instead of a fake one

These lines were added 15 years ago, in r18445.

3 months ago[NTOS:KDBG] Fix invalid DBG print
Jérôme Gardou [Wed, 28 Apr 2021 13:58:01 +0000 (15:58 +0200)]
[NTOS:KDBG] Fix invalid DBG print

3 months ago[KDGDB] Remove debugging leftover
Jérôme Gardou [Wed, 28 Apr 2021 12:52:05 +0000 (14:52 +0200)]
[KDGDB] Remove debugging leftover

3 months ago[NTOS:KDBG] Begin port for amd64.
Jérôme Gardou [Tue, 27 Apr 2021 08:23:37 +0000 (10:23 +0200)]
[NTOS:KDBG] Begin port for amd64.

Not really functional, but it prints debug output.
Take this as an opportunity to add consistancy between some i386 & amd64 intrinsics

3 months ago[CRT] Sync tlssup.c with mingw-w64
Jérôme Gardou [Fri, 23 Apr 2021 13:30:41 +0000 (15:30 +0200)]
[CRT] Sync tlssup.c with mingw-w64

This allows amd64 built binary to be loaded.

3 months ago[CRT] We never use the mthread library
Jérôme Gardou [Fri, 23 Apr 2021 13:30:18 +0000 (15:30 +0200)]
[CRT] We never use the mthread library

3 months ago[KDGDB] Avoid looping for ever when something unexpected happens
Jérôme Gardou [Fri, 23 Apr 2021 13:26:33 +0000 (15:26 +0200)]
[KDGDB] Avoid looping for ever when something unexpected happens

3 months ago[SDK] Use GAS SEH capabilities instead of CFI
Jérôme Gardou [Thu, 22 Apr 2021 15:35:54 +0000 (17:35 +0200)]
[SDK] Use GAS SEH capabilities instead of CFI

Also remove a hack for x86 GAS which no longer holds

3 months ago[NTOS:KE] Explicitly use sysretq instruction
Jérôme Gardou [Thu, 22 Apr 2021 15:33:24 +0000 (17:33 +0200)]
[NTOS:KE] Explicitly use sysretq instruction

3 months ago[CMAKE] Disable SSE instruction on GCC amd64 builds
Jérôme Gardou [Thu, 22 Apr 2021 15:31:39 +0000 (17:31 +0200)]
[CMAKE] Disable SSE instruction on GCC amd64 builds

Except for user-mode modules

3 months ago[PSEH] Add implementation for GCC amd64
Jérôme Gardou [Thu, 22 Apr 2021 09:11:34 +0000 (11:11 +0200)]
[PSEH] Add implementation for GCC amd64

Also, put include directory next to the library and use
target_include_directories(.. INTERFACE ..) to get this right.
This is because :
 - Having includes & implementation in two different places buggers me
 - This makes sure that there is no "if it compiles everything is fine" behaviour from anyone
   because now even static libraries need it for GCC amd64 build
Also add __USE_PSEH2__ define for the non SEH-aware compilers out there and use it in a few headers
where we define macros involving __try

3 months ago[CRT] Do not include unneeded PSEH header
Jérôme Gardou [Fri, 23 Apr 2021 14:22:01 +0000 (16:22 +0200)]
[CRT] Do not include unneeded PSEH header

3 months ago[REACTOS] Explicitly link against pseh & include pseh headers in a few places
Jérôme Gardou [Thu, 22 Apr 2021 15:28:52 +0000 (17:28 +0200)]
[REACTOS] Explicitly link against pseh & include pseh headers in a few places

3 months ago[CMAKE] Introduce a GCC plugin for helping with amd64 SEH implementation
Jérôme Gardou [Thu, 22 Apr 2021 08:37:50 +0000 (10:37 +0200)]
[CMAKE] Introduce a GCC plugin for helping with amd64 SEH implementation

\#pragma REACTOS SEH(except)
\#pragma REACTOS SEH(finally)
What it does is counting the number of SEH __try blocks and emit the proper assembly statements at function prologue
It also checks for mixing C++ & SEH exception handling, which wouldn't work

3 months ago[RTL] Use addressing relative to rip
Jérôme Gardou [Wed, 21 Apr 2021 17:52:58 +0000 (19:52 +0200)]
[RTL] Use addressing relative to rip

3 months ago[PSEH] Make the dummy PSEH at least usable.
Jérôme Gardou [Wed, 21 Apr 2021 17:50:31 +0000 (19:50 +0200)]
[PSEH] Make the dummy PSEH at least usable.

Not screwing the code flow when no exception happens would be the least

3 months ago[HALX86] Use addressing relative to RIP
Jérôme Gardou [Wed, 21 Apr 2021 17:46:59 +0000 (19:46 +0200)]
[HALX86] Use addressing relative to RIP

3 months ago[BTRFS] Use addressing relative to RIP
Jérôme Gardou [Wed, 21 Apr 2021 17:46:30 +0000 (19:46 +0200)]
[BTRFS] Use addressing relative to RIP

3 months ago[KDGDB] Adapt to amd64
Jérôme Gardou [Wed, 14 Apr 2021 11:36:17 +0000 (13:36 +0200)]
[KDGDB] Adapt to amd64

3 months ago[REGEDIT] Fix declaration of DbgPrint
Jérôme Gardou [Wed, 14 Apr 2021 08:07:16 +0000 (10:07 +0200)]
[REGEDIT] Fix declaration of DbgPrint

3 months ago[CRT] Fix __ll_lshift, __ll_rshift and __ull_rshift intrinsics on gcc-amd64
Jérôme Gardou [Tue, 13 Apr 2021 08:45:10 +0000 (10:45 +0200)]
[CRT] Fix __ll_lshift, __ll_rshift and __ull_rshift intrinsics on gcc-amd64

3 months ago[CMAKE:GCC] Enforce file alignment on driver & kernel images
Jérôme Gardou [Mon, 12 Apr 2021 17:59:52 +0000 (19:59 +0200)]
[CMAKE:GCC] Enforce file alignment on driver & kernel images

3 months ago[NDK] Add some missing defines for EFLAGS on amd64
Jérôme Gardou [Mon, 12 Apr 2021 13:51:33 +0000 (15:51 +0200)]
[NDK] Add some missing defines for EFLAGS on amd64

3 months ago[NTOS] Do not force-align an integer value
Jérôme Gardou [Mon, 12 Apr 2021 12:17:14 +0000 (14:17 +0200)]
[NTOS] Do not force-align an integer value

3 months ago[FREELDR] Save used register when calling PNPBIOS
Jérôme Gardou [Mon, 12 Apr 2021 12:16:49 +0000 (14:16 +0200)]
[FREELDR] Save used register when calling PNPBIOS

3 months ago[FREELDR] Force alignment of .text section on disk
Jérôme Gardou [Mon, 12 Apr 2021 12:15:33 +0000 (14:15 +0200)]
[FREELDR] Force alignment of .text section on disk

Fixes boot for clang & GCC-amd64 build
Also rename freeldr_i386.lds to freeldr_gcc.lds for better clarity

3 months ago[PSDK] Do not compare to max value if we can make sure that the value fits in target...
Jérôme Gardou [Mon, 12 Apr 2021 08:28:11 +0000 (10:28 +0200)]
[PSDK] Do not compare to max value if we can make sure that the value fits in target type

This fixes clang warning -Wtautological-constant-out-of-range-compare