[CSRSRV] Update the status.h file with updated information.

This commit is contained in:
Hermès Bélusca-Maïto 2021-11-22 00:07:48 +01:00
parent 7353af1e3d
commit c17aeec031
No known key found for this signature in database
GPG key ID: 3B2539C65E7B93D0

View file

@ -36,57 +36,55 @@
* the external Wait API for creating, removing and/or notifying waits.
*/
/* Exported APIs Location Status
*-------------------------------------------------------------------
* CsrAddStaticServerThread 753E679E 1 - server.c - IMPLEMENTED
* CsrCallServerFromServer 753E4FD9 2 - api.c - IMPLEMENTED
* CsrConnectToUser 753E4E48 3 - api.c - IMPLEMENTED
* CsrCreateProcess 753E6FD3 4 - procsup.c - IMPLEMENTED
* CsrCreateRemoteThread 753E73BD 5 - thredsup.c - IMPLEMENTED
* CsrCreateThread 753E72DA 6 - thredsup.c - IMPLEMENTED
* CsrCreateWait 753E770E 7 - wait.c - IMPLEMENTED
* CsrDebugProcess 753E7682 8 - procsup.c - IMPLEMENTED
* CsrDebugProcessStop 753E768A 9 - procsup.c - IMPLEMENTED
* CsrDereferenceProcess 753E6281 10 - procsup.c - IMPLEMENTED
* CsrDereferenceThread 753E6964 11 - thredsup.c - IMPLEMENTED
* CsrDereferenceWait 753E7886 12 - wait.c - IMPLEMENTED
* CsrDestroyProcess 753E7225 13 - procsup.c - IMPLEMENTED
* CsrDestroyThread 753E7478 14 - thredsup.c - IMPLEMENTED
* CsrExecServerThread 753E6841 15 - thredsup.c - IMPLEMENTED
* CsrGetProcessLuid 753E632F 16 - procsup.c - IMPLEMENTED
* CsrImpersonateClient 753E60F8 17 - thredsup.c - IMPLEMENTED
* CsrLockProcessByClientId 753E668F 18 - procsup.c - IMPLEMENTED
* CsrLockThreadByClientId 753E6719 19 - thredsup.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 - thredsup.c - IMPLEMENTED
* CsrRevertToSelf 753E615A 25 - thredsup.c - IMPLEMENTED
* CsrServerInitialization 753E3D75 26 - server.c - IMPLEMENTED
* CsrSetBackgroundPriority 753E5E87 27 - procsup.c - IMPLEMENTED
* CsrSetCallingSpooler 753E6425 28 - server.c - IMPLEMENTED
* CsrSetForegroundPriority 753E5E67 29 - procsup.c - IMPLEMENTED
* CsrShutdownProcesses 753E7547 30 - procsup.c - IMPLEMENTED
* CsrUnhandledExceptionFilter 753E3FE3 31 - server.c - IMPLEMENTED
* CsrUnlockProcess 753E66FD 32 - procsup.c - IMPLEMENTED
* CsrUnlockThread 753E7503 33 - thredsup.c - IMPLEMENTED
* CsrValidateMessageBuffer 753E528D 34 - api.c - IMPLEMENTED
* CsrValidateMessageString 753E5323 35 - api.c - IMPLEMENTED
/* Exported APIs Location Status
*------------------------------------------------------------
* CsrAddStaticServerThread 1 - server.c - IMPLEMENTED
* CsrCallServerFromServer 2 - api.c - IMPLEMENTED
* CsrConnectToUser 3 - api.c - IMPLEMENTED
* CsrCreateProcess 4 - procsup.c - IMPLEMENTED
* CsrCreateRemoteThread 5 - thredsup.c - IMPLEMENTED
* CsrCreateThread 6 - thredsup.c - IMPLEMENTED
* CsrCreateWait 7 - wait.c - IMPLEMENTED
* CsrDebugProcess 8 - procsup.c - IMPLEMENTED
* CsrDebugProcessStop 9 - procsup.c - IMPLEMENTED
* CsrDereferenceProcess 10 - procsup.c - IMPLEMENTED
* CsrDereferenceThread 11 - thredsup.c - IMPLEMENTED
* CsrDereferenceWait 12 - wait.c - IMPLEMENTED
* CsrDestroyProcess 13 - procsup.c - IMPLEMENTED
* CsrDestroyThread 14 - thredsup.c - IMPLEMENTED
* CsrExecServerThread 15 - thredsup.c - IMPLEMENTED
* CsrGetProcessLuid 16 - procsup.c - IMPLEMENTED
* CsrImpersonateClient 17 - thredsup.c - IMPLEMENTED
* CsrLockProcessByClientId 18 - procsup.c - IMPLEMENTED
* CsrLockThreadByClientId 19 - thredsup.c - IMPLEMENTED
* CsrMoveSatisfiedWait 20 - wait.c - IMPLEMENTED
* CsrNotifyWait 21 - wait.c - IMPLEMENTED
* CsrPopulateDosDevices 22 - init.c - IMPLEMENTED
* CsrQueryApiPort 23 - api.c - IMPLEMENTED
* CsrReferenceThread 24 - thredsup.c - IMPLEMENTED
* CsrRevertToSelf 25 - thredsup.c - IMPLEMENTED
* CsrServerInitialization 26 - server.c - IMPLEMENTED
* CsrSetBackgroundPriority 27 - procsup.c - IMPLEMENTED
* CsrSetCallingSpooler 28 - server.c - IMPLEMENTED
* CsrSetForegroundPriority 29 - procsup.c - IMPLEMENTED
* CsrShutdownProcesses 30 - procsup.c - IMPLEMENTED
* CsrUnhandledExceptionFilter 31 - server.c - IMPLEMENTED
* CsrUnlockProcess 32 - procsup.c - IMPLEMENTED
* CsrUnlockThread 33 - thredsup.c - IMPLEMENTED
* CsrValidateMessageBuffer 34 - api.c - IMPLEMENTED
* CsrValidateMessageString 35 - api.c - IMPLEMENTED
*/
/* Public CSR API Interface Status (server.c)
* CsrSrvClientConnect - IMPLEMENTED
* CsrSrvUnusedFunction - IMPLEMENTED
* CsrSrvIdentifyAlertableThread - IMPLEMENTED
* CsrSrvSetPriorityClass - IMPLEMENTED
* CsrSrvClientConnect - IMPLEMENTED
* CsrSrvUnusedFunction - IMPLEMENTED
*/
/* Public SB API Interface Status (session.c)
* CsrSbCreateSession - IMPLEMENTED
* CsrSbForeignSessionComplete - IMPLEMENTED
* CsrSbTerminateSession - UNIMPLEMENTED
* CsrSbCreateProcess - UNIMPLEMENTED
* CsrSbCreateSession - IMPLEMENTED
* CsrSbForeignSessionComplete - IMPLEMENTED
* CsrSbTerminateSession - UNIMPLEMENTED
* CsrSbCreateProcess - UNIMPLEMENTED
*/
/* What's missing:
@ -94,18 +92,11 @@
* - 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!]
* callback calling and SM LPC APIs. [PARTLY 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. [DONE!]
*
* - The kernel's LPC implementation needs to be made compatible. [DONE!]
* - USER32 needs to register with winsrv properly. Additionally, it
* 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.
* [NOT DONE]
*/