- Remove the unneeded CallProcessCreated function since the same functionality is programmed and executed in CSRSRV when CsrInsertProcess is called via a call of CsrCreateProcess.
- Remove some hacks in process creation.
- In BaseSrvExitProcess, use the 'Reply = 2' value instead of the old hack 'ApiMessage->ApiNumber = 0xBABE'.
[USER32/WINSRV]
- Make SetLogonNotifyWindow call our 'RosSetLogonNotifyWindow' hack and explicitely mark it as a hack.
- CsrSetLogonNotifyWindow --> RosSetLogonNotifyWindow to emphasize that it is a ReactOS-specific hack.
svn path=/branches/ros-csrss/; revision=57694
- Use the DLL instance for getting its win23 resources.
- Use the CONSOLE_PROCESS_DATA structure (see r57686) for accessing console-specific fields of the processes (instead of using them implemented in the CSR_PROCESS structure).
- Win32CsrDuplicateHandleTable --> ConsoleNewProcess since it's the callback function called when a new process is created, and start to move some hacks currently present in BaseSrvCreateProcess.
TODO: suppress the starting-application-related hacks in BaseSrvCreateProcess (in basesrv).
svn path=/branches/ros-csrss/; revision=57689
- Use the new PCONSOLE_PROCESS_DATA type instead of PCSR_PROCESS, for accessing console-specific fields inside a console structure (the code modifications inside these functions will follow in the next commits).
- Remove unneeded included header files in consrv.h.
- Use a DLL instance in order to facilitate the access to win32 resources.
- Activate the declaration of server apis (or rename existing ones to the Windows scheme from the http://j00ru.vexillium.org/csrss_list/api_list.html#Windows_2k3 list).
- Comment the Win32CsrValidateBuffer helper (because it should be replaced by the usage of CsrValidateMessageBuffer).
- Add the list of the old APIs (just for me, to remember at the end to check that I didn't forget ome of them during the process of moving / renaming).
svn path=/branches/ros-csrss/; revision=57686
- Remove the now unneeded CSR messaging support.
- CsrInit() goes away also and the usage of the CsrProcess is replaced by that of gpepCSRSS.
[WINSRV]
- Use a DLL instance for loading resources, instead of calling GetModuleHandle.
[KERNEL32/NTDLL]
- Remove unneeded variables.
svn path=/branches/ros-csrss/; revision=57665
- Correct an enumeration identificator initialization.
- Move the call of CSR for registering the logon application, from kernel-mode win32k to user-mode user32
and therefore remove the unneeded co_CsrNotify function (plus some other unneeded defines).
- Comment some non-working code (#if 0) in user32/misc/misc.c and winsrv/shutdown.c.
svn path=/branches/ros-csrss/; revision=57664
[WIN32CSR/BOOTDATA]
- Finally get rid of win32csr, being replaced by winsrv and consrv.
- Remove it from the subsystem command-line.
[WINSRV]
- Move a hack from win32csr to winsrv.
svn path=/branches/ros-csrss/; revision=57635
- Use the new subsystems header winmsg.h
- Use the new USER_API_MESSAGE structure, and adapt co_CsrNotify in consequence.
- Code formatting.
[KERNEL32]
- Use the new subsystems headers basemsg.h, conmsg.h, winmsg.h, etc...
[NTDLL]
- Code formatting only.
svn path=/branches/ros-csrss/; revision=57628
- Fix structures usage and headers inclusions.
- Make winsrv compile.
- Deactivate some code related to processes enumeration (for testing purposes).
svn path=/branches/ros-csrss/; revision=57620
- Move the last APIs which should be in winsrv and remove unneeded files and resources from win32csr. Keep only the desktop things.
- I'm waiting for the patch of Giannis which would act on win32csr, then I will transfer the needed changes into winsrv and I will remove definitively win32csr.
At the moment, winsrv doesn't compile, but win32csr does.
svn path=/branches/ros-csrss/; revision=57611
- Add consrv to compilation. It compiles now \o/
- Convert the used console-csrss structures to the new ones.
[CSR]
- Continue to move some structures, and temporary activate a symbol.
[WIN32CSR]
- Clean a header.
svn path=/branches/ros-csrss/; revision=57602
- Move all the console subsystem from win32csr to a new server dll called consrv.dll (instead of putting it directly to winsrv.dll). It's because I want to rework on this later on.
Many things must be done in order to achieve the moving (renaming functions, etc...). Tables & symbol names come from http://j00ru.vexillium.org/csrss_list/api_list.html as usual,
but here I took the Win 2k3 ones and I added few Win 7 functions which already existed in our codebase. The other table names are guessed based on what originally existed in csrsrv
and so on. Many stubs are also missing.
Cultural remark: consrv.dll originally existed in Beta releases of Windows NT 3.1 (e.g. the October 1991 one), but was soon merged with winsrv.dll and thus, in subsequent versions of
Windows, the console subsystem is also found in winsrv.dll. See http://www.logotypes.se/NT310CSRSS.txt and http://j00ru.vexillium.org/?p=349#comment-1883. One has to wait until
Windows 7 to see it moving again to conhost.exe.
[CSRSRV]
- Add an explanation comment on what the ValidTable member in the CSR_SERVER_DLL structure is for.
svn path=/branches/ros-csrss/; revision=57597
- Use new naming scheme.
[CSRSRV]
- Continuing headers reorganization.
- Activate new code.
[CSRSRV/WIN32CSR]
- Move some code into basesrv.
[BASESRV]
- Add basesrv.dll
The names of the APIs tables come from http://j00ru.vexillium.org/csrss_list/api_list.html as usual,
however I used the NT 4 ones for testing purposes only. After that I will update them to 2k3 version
and add function stubs. Also some variable names are deduced from the subsystems/win32/csrss/csrsrv/server.c ones.
svn path=/branches/ros-csrss/; revision=57587
- Use the new messaging structures and the new macros, plus the new CSR_API function's signature (--> and rename some variables).
- Code cleaning & formatting.
[CSRSS/NDK]
- Reorganize all the header files in logical units (server.h for server-side of CSR, client.h for client-side, and msg.h for messaging), removing duplicated definitions.
- Code cleaning & formatting.
The next step would be to activate the code of server-dll loading inside csrsrv, then moving all the console-related APIs from win32csr to winsrv, the latter built with the same structure as csrsrv's.
svn path=/branches/ros-csrss/; revision=57570