reactos/ntoskrnl/ex
George Bișoc 6438b85605
[NTOS:EX] Bail out on an invalid locale or language ID
NtSetDefaultLocale and ExpSetCurrentUserUILanguage do not probe the given locale or language ID,
and as a result of that these functions would happily take any given argument. This is problematic
because overwriting NLS data (specifically the Default registry key value as its gets set by the
NtSetDefaultLocale syscall itself) with garbage stuff, rendering the system completely unbootable.

In addition to that, these functions do not check the captured language/locale ID against pre-determined
locales or languages pre-installed in the system. This basically means an ID of 1, for example, is still
valid because it is not bogus albeit there is no such a locale of an ID of 1. That value would get passed
to the Default value key and that renders the system unbootable as well.

CORE-18100
2023-11-16 21:09:05 +01:00
..
arm
i386
atom.c [NTOSKRNL] Regroup the pool allocation tags in one dedicated place 2021-12-27 18:57:03 +01:00
callback.c
dbgctrl.c
efi.c
event.c [NTOSKRNL] Force a probe against ReturnLength on query & Misc ICIF stuff 2022-06-12 11:05:05 +02:00
evtpair.c
exintrin.c
fmutex.c
handle.c [NTOS] Include kdbg/kdb.h only in the files that really need it. 2023-04-11 00:44:10 +02:00
harderr.c [NTOSKRNL] Regroup the pool allocation tags in one dedicated place 2021-12-27 18:57:03 +01:00
hdlsterm.c
init.c [NTOS:EX] Add some missing PoNotifySystemTimeSet() calls. Stub out NtSetSystemTime() with NULL parameter. 2023-09-03 17:39:39 +02:00
interlocked.c
keyedevt.c
locale.c [NTOS:EX] Bail out on an invalid locale or language ID 2023-11-16 21:09:05 +01:00
lookas.c [NTOS] Swap MAXIMUM_PROCESSORS with NUMBER_POOL_LOOKASIDE_LISTS 2022-12-28 21:09:41 +01:00
mutant.c [NTOSKRNL] Force a probe against ReturnLength on query & Misc ICIF stuff 2022-06-12 11:05:05 +02:00
profile.c [NTOSKRNL] Regroup the pool allocation tags in one dedicated place 2021-12-27 18:57:03 +01:00
pushlock.c
resource.c [NTOS:EX] Initialize ExpResourceTimeoutCount also via the "Session Manager/ResourceTimeoutCount" registry value (#4089) 2023-09-21 13:33:28 +02:00
rundown.c
sem.c [NTOSKRNL] Force a probe against ReturnLength on query & Misc ICIF stuff 2022-06-12 11:05:05 +02:00
shutdown.c Fix typo "managment" -> "management" in our codebase... 2023-06-04 21:39:56 +02:00
sysinfo.c [KERNEL32][KERNEL32_APITEST] Implement user-mode UEFI / Firmware API (#5149) 2023-09-14 22:14:07 +03:00
time.c [NTOS:EX] Add some missing PoNotifySystemTimeSet() calls. Stub out NtSetSystemTime() with NULL parameter. 2023-09-03 17:39:39 +02:00
timer.c [NTOSKRNL] Force a probe against ReturnLength on query & Misc ICIF stuff 2022-06-12 11:05:05 +02:00
uuid.c
win32k.c
work.c
xipdisp.c
zone.c
zw.S