+++ /dev/null
-/*
- * 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 - UNIMPLEMENTED
- * 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. [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!]
- */
-