mirror of
https://github.com/reactos/reactos.git
synced 2024-08-29 22:58:34 +00:00
- Fix Alex's csrss compilation, however it won't link due to missing functionality in smss.
svn path=/trunk/; revision=31371
This commit is contained in:
parent
68075a2152
commit
ad11e66d58
|
@ -3,6 +3,7 @@
|
|||
<group>
|
||||
<module name="csr" type="nativecui" installbase="system32" installname="csr.exe">
|
||||
<include base="csr">.</include>
|
||||
<include base="ReactOS">include/reactos/subsys</include>
|
||||
<define name="_WIN32_WINNT">0x0600</define>
|
||||
<define name="WINVER">0x0501</define>
|
||||
<library>nt</library>
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -4,10 +4,10 @@
|
|||
<importlibrary definition="csrsrv.def" />
|
||||
<include base="csrsrv">.</include>
|
||||
<include base="csr">.</include>
|
||||
<include base="ReactOS">include/reactos/subsys</include>
|
||||
<define name="_DISABLE_TIDENTS" />
|
||||
<library>ntdll</library>
|
||||
<library>pseh</library>
|
||||
<library>intrlck</library>
|
||||
<file>api.c</file>
|
||||
<file>init.c</file>
|
||||
<file>process.c</file>
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
/* PSDK/NDK Headers */
|
||||
#define NTOS_MODE_USER
|
||||
#include <stdio.h>
|
||||
#define WIN32_NO_STATUS
|
||||
#include <windows.h>
|
||||
#include <winnt.h>
|
||||
#include <ndk/ntndk.h>
|
||||
|
|
|
@ -1,111 +1,111 @@
|
|||
/*
|
||||
* CSRSRV Status
|
||||
*/
|
||||
|
||||
/* Organization
|
||||
*
|
||||
* api.c - Handles the LPC Reply/Request Threads which wait on Sb and Csr APIs.
|
||||
* Also in charge of creating those threads and setting up the ports.
|
||||
* Finally, it provides external APIs for validating the API buffers
|
||||
* and doing server-to-server API calls.
|
||||
*
|
||||
* init.c - Handles initialization of CSRSRV, including command-line parsing,
|
||||
* loading the Server DLLs, creating the Session Directories, setting
|
||||
* up the DosDevices Object Directory, and initializing each component.
|
||||
*
|
||||
* process.c - Handles all internal functions dealing with the CSR Process Object,
|
||||
* including de/allocation, de/referencing, un/locking, prority, and
|
||||
* lookups. Also handles all external APIs which touch the CSR Process Object.
|
||||
*
|
||||
* server.c - Handles all internal functions related to loading and managing Server
|
||||
* DLLs, as well as the routines handling the Shared Static Memory Section.
|
||||
* Holds the API Dispatch/Valid/Name Tables and the public CSR_SERVER API
|
||||
* interface. Also home of the SEH handler.
|
||||
*
|
||||
* session.c - Handles all internal functions dealing with the CSR Session Object,
|
||||
* including de/allocation, de/referencing, and un/locking. Holds the SB API
|
||||
* Dispatch/Name Tables and the public CsrSv API Interface for commmunication
|
||||
* with the Session Manager.
|
||||
*
|
||||
* thread.c - Handles all internal functions dealing with the CSR Thread Object,
|
||||
* including de/allocation, de/referencing, un/locking, impersonation, and
|
||||
* lookups. Also handles all external APIs which touch the CSR Thread Object.
|
||||
*
|
||||
* wait.c - Handles all internal functions dealing with the CSR Wait Object,
|
||||
* including de/allocation, de/referencing and un/locking. Also implements
|
||||
* the external Wait API for creating, removing and/or notifying waits.
|
||||
*/
|
||||
|
||||
/* Exported APIs, their location, and their status
|
||||
* CsrAddStaticServerThread 753E679E 1 - server.c - IMPLEMENTED
|
||||
* CsrCallServerFromServer 753E4FD9 2 - api.c - IMPLEMENTED
|
||||
* CsrConnectToUser 753E4E48 3 - api.c - IMPLEMENTED
|
||||
* CsrCreateProcess 753E6FD3 4 - process.c - IMPLEMENTED
|
||||
* CsrCreateRemoteThread 753E73BD 5 - thread.c - IMPLEMENTED
|
||||
* CsrCreateThread 753E72DA 6 - thread.c - IMPLEMENTED
|
||||
* CsrCreateWait 753E770E 7 - wait.c - IMPLEMENTED
|
||||
* CsrDebugProcess 753E7682 8 - process.c - IMPLEMENTED
|
||||
* CsrDebugProcessStop 753E768A 9 - process.c - IMPLEMENTED
|
||||
* CsrDereferenceProcess 753E6281 10 - process.c - IMPLEMENTED
|
||||
* CsrDereferenceThread 753E6964 11 - thread.c - IMPLEMENTED
|
||||
* CsrDereferenceWait 753E7886 12 - wait.c - IMPLEMENTED
|
||||
* CsrDestroyProcess 753E7225 13 - process.c - IMPLEMENTED
|
||||
* CsrDestroyThread 753E7478 14 - thread.c - IMPLEMENTED
|
||||
* CsrExecServerThread 753E6841 15 - thread.c - IMPLEMENTED
|
||||
* CsrGetProcessLuid 753E632F 16 - process.c - IMPLEMENTED
|
||||
* CsrImpersonateClient 753E60F8 17 - thread.c - IMPLEMENTED
|
||||
* CsrLockProcessByClientId 753E668F 18 - process.c - IMPLEMENTED
|
||||
* CsrLockThreadByClientId 753E6719 19 - thread.c - IMPLEMENTED
|
||||
* CsrMoveSatisfiedWait 753E7909 20 - wait.c - IMPLEMENTED
|
||||
* CsrNotifyWait 753E782F 21 - wait.c - IMPLEMENTED
|
||||
* CsrPopulateDosDevices 753E37A5 22 - init.c - IMPLEMENTED
|
||||
* CsrQueryApiPort 753E4E42 23 - api.c - IMPLEMENTED
|
||||
* CsrReferenceThread 753E61E5 24 - thread.c - IMPLEMENTED
|
||||
* CsrRevertToSelf 753E615A 25 - thread.c - IMPLEMENTED
|
||||
* CsrServerInitialization 753E3D75 26 - server.c - IMPLEMENTED
|
||||
* CsrSetBackgroundPriority 753E5E87 27 - process.c - IMPLEMENTED
|
||||
* CsrSetCallingSpooler 753E6425 28 - server.c - IMPLEMENTED
|
||||
* CsrSetForegroundPriority 753E5E67 29 - process.c - IMPLEMENTED
|
||||
* CsrShutdownProcesses 753E7547 30 - process.c - IMPLEMENTED
|
||||
* CsrUnhandledExceptionFilter 753E3FE3 31 - server.c - IMPLEMENTED
|
||||
* CsrUnlockProcess 753E66FD 32 - process.c - IMPLEMENTED
|
||||
* CsrUnlockThread 753E7503 33 - thread.c - IMPLEMENTED
|
||||
* CsrValidateMessageBuffer 753E528D 34 - api.c - IMPLEMENTED
|
||||
* CsrValidateMessageString 753E5323 35 - api.c - UNIMPLEMENTED
|
||||
*/
|
||||
|
||||
/* Public CSR API Interface Status (server.c)
|
||||
* CsrSrvClientConnect - IMPLEMENTED
|
||||
* CsrSrvUnusedFunction - IMPLEMENTED
|
||||
* CsrSrvIdentifyAlertableThread - IMPLEMENTED
|
||||
* CsrSrvSetPriorityClass - IMPLEMENTED
|
||||
*/
|
||||
|
||||
/* Public SB API Interface Status (session.c)
|
||||
* CsrSbCreateSession - IMPLEMENTED
|
||||
* CsrSbForeignSessionComplete - IMPLEMENTED
|
||||
* CsrSbTerminateSession - IMPLEMENTED
|
||||
* CsrSbCreateProcess - UNIMPLEMENTED
|
||||
*/
|
||||
|
||||
/* What's missing:
|
||||
*
|
||||
* - SMSS needs to be partly re-written to match some things done here.
|
||||
* Among other things, SmConnectToSm, SmCompleteSession and the other
|
||||
* Sm* Exported APIs have to be properly implemented, as well as the
|
||||
* callback calling and SM LPC APIs. [NOT DONE]
|
||||
*
|
||||
* - NTDLL needs to get the Csr* routines properly implemented. [DONE!]
|
||||
*
|
||||
* - KERNEL32, USER32 need to register with their servers properly.
|
||||
* Additionally, user32 needs to have ClientThreadStartup implemented
|
||||
* properly and do the syscall NtUserInitialize (I think) which also
|
||||
* needs to be implemented in win32k.sys. All this should be less then
|
||||
* 100 lines of code. [KERNEL32 50% DONE, USER32 NOT DONE]
|
||||
*
|
||||
* - The skeleton code for winsrv and basesrv which connects with CSR/CSRSRV
|
||||
* needs to be written. [NOT DONE]
|
||||
*
|
||||
* - The kernel's LPC implementation needs to be made compatible. [NOT DONE]
|
||||
*/
|
||||
|
||||
/*
|
||||
* CSRSRV Status
|
||||
*/
|
||||
|
||||
/* Organization
|
||||
*
|
||||
* api.c - Handles the LPC Reply/Request Threads which wait on Sb and Csr APIs.
|
||||
* Also in charge of creating those threads and setting up the ports.
|
||||
* Finally, it provides external APIs for validating the API buffers
|
||||
* and doing server-to-server API calls.
|
||||
*
|
||||
* init.c - Handles initialization of CSRSRV, including command-line parsing,
|
||||
* loading the Server DLLs, creating the Session Directories, setting
|
||||
* up the DosDevices Object Directory, and initializing each component.
|
||||
*
|
||||
* process.c - Handles all internal functions dealing with the CSR Process Object,
|
||||
* including de/allocation, de/referencing, un/locking, prority, and
|
||||
* lookups. Also handles all external APIs which touch the CSR Process Object.
|
||||
*
|
||||
* server.c - Handles all internal functions related to loading and managing Server
|
||||
* DLLs, as well as the routines handling the Shared Static Memory Section.
|
||||
* Holds the API Dispatch/Valid/Name Tables and the public CSR_SERVER API
|
||||
* interface. Also home of the SEH handler.
|
||||
*
|
||||
* session.c - Handles all internal functions dealing with the CSR Session Object,
|
||||
* including de/allocation, de/referencing, and un/locking. Holds the SB API
|
||||
* Dispatch/Name Tables and the public CsrSv API Interface for commmunication
|
||||
* with the Session Manager.
|
||||
*
|
||||
* thread.c - Handles all internal functions dealing with the CSR Thread Object,
|
||||
* including de/allocation, de/referencing, un/locking, impersonation, and
|
||||
* lookups. Also handles all external APIs which touch the CSR Thread Object.
|
||||
*
|
||||
* wait.c - Handles all internal functions dealing with the CSR Wait Object,
|
||||
* including de/allocation, de/referencing and un/locking. Also implements
|
||||
* the external Wait API for creating, removing and/or notifying waits.
|
||||
*/
|
||||
|
||||
/* Exported APIs, their location, and their status
|
||||
* CsrAddStaticServerThread 753E679E 1 - server.c - IMPLEMENTED
|
||||
* CsrCallServerFromServer 753E4FD9 2 - api.c - IMPLEMENTED
|
||||
* CsrConnectToUser 753E4E48 3 - api.c - IMPLEMENTED
|
||||
* CsrCreateProcess 753E6FD3 4 - process.c - IMPLEMENTED
|
||||
* CsrCreateRemoteThread 753E73BD 5 - thread.c - IMPLEMENTED
|
||||
* CsrCreateThread 753E72DA 6 - thread.c - IMPLEMENTED
|
||||
* CsrCreateWait 753E770E 7 - wait.c - IMPLEMENTED
|
||||
* CsrDebugProcess 753E7682 8 - process.c - IMPLEMENTED
|
||||
* CsrDebugProcessStop 753E768A 9 - process.c - IMPLEMENTED
|
||||
* CsrDereferenceProcess 753E6281 10 - process.c - IMPLEMENTED
|
||||
* CsrDereferenceThread 753E6964 11 - thread.c - IMPLEMENTED
|
||||
* CsrDereferenceWait 753E7886 12 - wait.c - IMPLEMENTED
|
||||
* CsrDestroyProcess 753E7225 13 - process.c - IMPLEMENTED
|
||||
* CsrDestroyThread 753E7478 14 - thread.c - IMPLEMENTED
|
||||
* CsrExecServerThread 753E6841 15 - thread.c - IMPLEMENTED
|
||||
* CsrGetProcessLuid 753E632F 16 - process.c - IMPLEMENTED
|
||||
* CsrImpersonateClient 753E60F8 17 - thread.c - IMPLEMENTED
|
||||
* CsrLockProcessByClientId 753E668F 18 - process.c - IMPLEMENTED
|
||||
* CsrLockThreadByClientId 753E6719 19 - thread.c - IMPLEMENTED
|
||||
* CsrMoveSatisfiedWait 753E7909 20 - wait.c - IMPLEMENTED
|
||||
* CsrNotifyWait 753E782F 21 - wait.c - IMPLEMENTED
|
||||
* CsrPopulateDosDevices 753E37A5 22 - init.c - IMPLEMENTED
|
||||
* CsrQueryApiPort 753E4E42 23 - api.c - IMPLEMENTED
|
||||
* CsrReferenceThread 753E61E5 24 - thread.c - IMPLEMENTED
|
||||
* CsrRevertToSelf 753E615A 25 - thread.c - IMPLEMENTED
|
||||
* CsrServerInitialization 753E3D75 26 - server.c - IMPLEMENTED
|
||||
* CsrSetBackgroundPriority 753E5E87 27 - process.c - IMPLEMENTED
|
||||
* CsrSetCallingSpooler 753E6425 28 - server.c - IMPLEMENTED
|
||||
* CsrSetForegroundPriority 753E5E67 29 - process.c - IMPLEMENTED
|
||||
* CsrShutdownProcesses 753E7547 30 - process.c - IMPLEMENTED
|
||||
* CsrUnhandledExceptionFilter 753E3FE3 31 - server.c - IMPLEMENTED
|
||||
* CsrUnlockProcess 753E66FD 32 - process.c - IMPLEMENTED
|
||||
* CsrUnlockThread 753E7503 33 - thread.c - IMPLEMENTED
|
||||
* CsrValidateMessageBuffer 753E528D 34 - api.c - IMPLEMENTED
|
||||
* CsrValidateMessageString 753E5323 35 - api.c - UNIMPLEMENTED
|
||||
*/
|
||||
|
||||
/* Public CSR API Interface Status (server.c)
|
||||
* CsrSrvClientConnect - IMPLEMENTED
|
||||
* CsrSrvUnusedFunction - IMPLEMENTED
|
||||
* CsrSrvIdentifyAlertableThread - IMPLEMENTED
|
||||
* CsrSrvSetPriorityClass - IMPLEMENTED
|
||||
*/
|
||||
|
||||
/* Public SB API Interface Status (session.c)
|
||||
* CsrSbCreateSession - IMPLEMENTED
|
||||
* CsrSbForeignSessionComplete - IMPLEMENTED
|
||||
* CsrSbTerminateSession - IMPLEMENTED
|
||||
* CsrSbCreateProcess - UNIMPLEMENTED
|
||||
*/
|
||||
|
||||
/* What's missing:
|
||||
*
|
||||
* - SMSS needs to be partly re-written to match some things done here.
|
||||
* Among other things, SmConnectToSm, SmCompleteSession and the other
|
||||
* Sm* Exported APIs have to be properly implemented, as well as the
|
||||
* callback calling and SM LPC APIs. [NOT DONE]
|
||||
*
|
||||
* - NTDLL needs to get the Csr* routines properly implemented. [DONE!]
|
||||
*
|
||||
* - KERNEL32, USER32 need to register with their servers properly.
|
||||
* Additionally, user32 needs to have ClientThreadStartup implemented
|
||||
* properly and do the syscall NtUserInitialize (I think) which also
|
||||
* needs to be implemented in win32k.sys. All this should be less then
|
||||
* 100 lines of code. [KERNEL32 50% DONE, USER32 NOT DONE]
|
||||
*
|
||||
* - The skeleton code for winsrv and basesrv which connects with CSR/CSRSRV
|
||||
* needs to be written. [NOT DONE]
|
||||
*
|
||||
* - The kernel's LPC implementation needs to be made compatible. [DONE!]
|
||||
*/
|
||||
|
||||
|
|
|
@ -28,6 +28,7 @@
|
|||
|
||||
/* INCLUDES ******************************************************************/
|
||||
|
||||
#define WIN32_NO_STATUS
|
||||
#include <windows.h>
|
||||
#define NTOS_MODE_USER
|
||||
#include <ndk/ntndk.h>
|
||||
|
|
Loading…
Reference in a new issue