A free Windows-compatible Operating System - mirrored from GitHub
Find a file
Hermès Bélusca-Maïto 28842d99ad [CONSOLE.DLL-KERNEL32-CONSRV]
Fix the console properties dialog, when launching and transmitting console properties. Before, the properties dialog was directly launched by the console server (consrv), running with CSRSS (System) privileges, what constituted a security hole. Now, I create a remote thread in the running process owning the console for launching the properties dialog (thus it has only user privileges, and not System ones anymore). For that purpose, I basically took the technique described in the following paper (Cesar Cerrudo, "Story of a dumb patch", http://www.argeniss.com/research/MSBugPaper.pdf or http://www.scn.rain.com/~neighorn/PDF/MSBugPaper.pdf), where basically the console server shares the console properties via a shared memory section with the console properties dialog dll. The address of the thread which launches the dialog in the context of the console app is given to the console server the same way as we do for the control handler (called e.g. when you press Ctrl-C, etc...)
Of course this is quite hackish, because you have the GUI interface split between the console server and the console properties dialog dll. Something far more elegant would be to put all the GUI thingie into a dedicated dll or exe, running with the same privileges as the console program itself (a kind of console -- or terminal -- emulator).

[CONSOLE.DLL]
Fix retriving / setting colors.c and other things.

[CONSRV.DLL]
- Fix retrieving / setting console properties from the registry (via the HKCU\Console\* keys), via the shell shortcuts (not totally done at the moment, because somebody has to implement properly that thing : bb773359(v=vs.85).aspx (NT_CONSOLE_PROPS structure stored as a shortcut data block) (at application launching time), and via the console properties dialog.
- Few DPRINTs removed.

svn path=/branches/ros-csrss/; revision=58415
2013-03-03 15:35:12 +00:00
base [PSDK] 2013-02-20 22:28:14 +00:00
boot [BOOTDATA] 2013-02-23 18:30:47 +00:00
cmake
dll [CONSOLE.DLL-KERNEL32-CONSRV] 2013-03-03 15:35:12 +00:00
drivers
hal
include [CONSOLE.DLL-KERNEL32-CONSRV] 2013-03-03 15:35:12 +00:00
lib
media
modules
ntoskrnl
subsystems
win32ss [CONSOLE.DLL-KERNEL32-CONSRV] 2013-03-03 15:35:12 +00:00
.hgeol
apistatus.lst
CMakeLists.txt
configure.cmd
configure.sh
COPYING
COPYING.ARM
COPYING.LIB
COPYING3
COPYING3.LIB
CREDITS
depmap.xsl
Doxyfile
global.lds
INSTALL
PreLoad.cmake
README
toolchain-gcc.cmake
toolchain-msvc.cmake
vreport.xsl

========================
ReactOS Version 0.3.x
Updated Dec 16, 2006
========================

1. What is ReactOS?

   ReactOS is an Open Source effort to develop a quality operating system
that is compatible with Windows NT applications and drivers.

   The ReactOS project, although currently focused on Windows XP/2003
drivers compatibility, is always keeping an eye toward compatibility with
older version of Windows NT family ( NT 4.0, 2000 (NT 5.0)) and new
Windows NT releases (Vista, etc). Applications (Win32 API) compatibility
focus is Windows XP.

More information is available at http://www.reactos.org/.

2. Building ReactOS

See the INSTALL file for more details.

3. More information

See the media\doc subdirectory for some sparse notes.

4. Who is responsible

See the CREDITS file.