ReactOS Fundraising Campaign 2012
 
€ 4,410 / € 30,000

Information | Donate

Home | Info | Community | Development | myReactOS | Contact Us

  1. Home
  2. Community
  3. Development
  4. myReactOS
  5. Fundraiser 2012

  1. Main Page
  2. Alphabetical List
  3. Data Structures
  4. Directories
  5. File List
  6. Data Fields
  7. Globals
  8. Related Pages

ReactOS Development > Doxygen

status.h
Go to the documentation of this file.
00001 /*
00002  * CSRSRV Status 
00003  */
00004 
00005 /* Organization
00006  *
00007  * api.c     - Handles the LPC Reply/Request Threads which wait on Sb and Csr APIs.
00008  *             Also in charge of creating those threads and setting up the ports.
00009  *             Finally, it provides external APIs for validating the API buffers
00010  *             and doing server-to-server API calls.
00011  *
00012  * init.c    - Handles initialization of CSRSRV, including command-line parsing,
00013  *             loading the Server DLLs, creating the Session Directories, setting
00014  *             up the DosDevices Object Directory, and initializing each component.
00015  *
00016  * process.c - Handles all internal functions dealing with the CSR Process Object,
00017  *             including de/allocation, de/referencing, un/locking, prority, and 
00018  *             lookups. Also handles all external APIs which touch the CSR Process Object.
00019  *
00020  * server.c  - Handles all internal functions related to loading and managing Server
00021  *             DLLs, as well as the routines handling the Shared Static Memory Section.
00022  *             Holds the API Dispatch/Valid/Name Tables and the public CSR_SERVER API
00023  *             interface. Also home of the SEH handler.
00024  *
00025  * session.c - Handles all internal functions dealing with the CSR Session Object,
00026  *             including de/allocation, de/referencing, and un/locking. Holds the SB API
00027  *             Dispatch/Name Tables and the public CsrSv API Interface for commmunication
00028  *             with the Session Manager.
00029  *
00030  * thread.c  - Handles all internal functions dealing with the CSR Thread Object,
00031  *             including de/allocation, de/referencing, un/locking, impersonation, and
00032  *             lookups. Also handles all external APIs which touch the CSR Thread Object.
00033  *
00034  * wait.c   -  Handles all internal functions dealing with the CSR Wait Object,
00035  *             including de/allocation, de/referencing and un/locking. Also implements
00036  *             the external Wait API for creating, removing and/or notifying waits.
00037  */
00038 
00039 /* Exported APIs, their location, and their status
00040  * CsrAddStaticServerThread    753E679E 1  - server.c  - IMPLEMENTED
00041  * CsrCallServerFromServer     753E4FD9 2  - api.c     - IMPLEMENTED
00042  * CsrConnectToUser            753E4E48 3  - api.c     - IMPLEMENTED
00043  * CsrCreateProcess            753E6FD3 4  - process.c - IMPLEMENTED
00044  * CsrCreateRemoteThread       753E73BD 5  - thread.c  - IMPLEMENTED
00045  * CsrCreateThread             753E72DA 6  - thread.c  - IMPLEMENTED
00046  * CsrCreateWait               753E770E 7  - wait.c    - IMPLEMENTED
00047  * CsrDebugProcess             753E7682 8  - process.c - IMPLEMENTED
00048  * CsrDebugProcessStop         753E768A 9  - process.c - IMPLEMENTED
00049  * CsrDereferenceProcess       753E6281 10 - process.c - IMPLEMENTED
00050  * CsrDereferenceThread        753E6964 11 - thread.c  - IMPLEMENTED
00051  * CsrDereferenceWait          753E7886 12 - wait.c    - IMPLEMENTED
00052  * CsrDestroyProcess           753E7225 13 - process.c - IMPLEMENTED
00053  * CsrDestroyThread            753E7478 14 - thread.c  - IMPLEMENTED
00054  * CsrExecServerThread         753E6841 15 - thread.c  - IMPLEMENTED
00055  * CsrGetProcessLuid           753E632F 16 - process.c - IMPLEMENTED
00056  * CsrImpersonateClient        753E60F8 17 - thread.c  - IMPLEMENTED
00057  * CsrLockProcessByClientId    753E668F 18 - process.c - IMPLEMENTED
00058  * CsrLockThreadByClientId     753E6719 19 - thread.c  - IMPLEMENTED
00059  * CsrMoveSatisfiedWait        753E7909 20 - wait.c    - IMPLEMENTED
00060  * CsrNotifyWait               753E782F 21 - wait.c    - IMPLEMENTED
00061  * CsrPopulateDosDevices       753E37A5 22 - init.c    - IMPLEMENTED
00062  * CsrQueryApiPort             753E4E42 23 - api.c     - IMPLEMENTED
00063  * CsrReferenceThread          753E61E5 24 - thread.c  - IMPLEMENTED
00064  * CsrRevertToSelf             753E615A 25 - thread.c  - IMPLEMENTED
00065  * CsrServerInitialization     753E3D75 26 - server.c  - IMPLEMENTED
00066  * CsrSetBackgroundPriority    753E5E87 27 - process.c - IMPLEMENTED
00067  * CsrSetCallingSpooler        753E6425 28 - server.c  - IMPLEMENTED
00068  * CsrSetForegroundPriority    753E5E67 29 - process.c - IMPLEMENTED
00069  * CsrShutdownProcesses        753E7547 30 - process.c - IMPLEMENTED
00070  * CsrUnhandledExceptionFilter 753E3FE3 31 - server.c  - IMPLEMENTED
00071  * CsrUnlockProcess            753E66FD 32 - process.c - IMPLEMENTED
00072  * CsrUnlockThread             753E7503 33 - thread.c  - IMPLEMENTED
00073  * CsrValidateMessageBuffer    753E528D 34 - api.c     - IMPLEMENTED
00074  * CsrValidateMessageString    753E5323 35 - api.c     - UNIMPLEMENTED
00075  */
00076 
00077 /* Public CSR API Interface Status (server.c)
00078  * CsrSrvClientConnect                                 - IMPLEMENTED
00079  * CsrSrvUnusedFunction                                - IMPLEMENTED
00080  * CsrSrvIdentifyAlertableThread                       - IMPLEMENTED
00081  * CsrSrvSetPriorityClass                              - IMPLEMENTED
00082  */
00083 
00084 /* Public SB API Interface Status (session.c)
00085  * CsrSbCreateSession                                  - IMPLEMENTED
00086  * CsrSbForeignSessionComplete                         - IMPLEMENTED
00087  * CsrSbTerminateSession                               - UNIMPLEMENTED
00088  * CsrSbCreateProcess                                  - UNIMPLEMENTED
00089  */
00090 
00091 /* What's missing:
00092  *
00093  * - SMSS needs to be partly re-written to match some things done here.
00094  *   Among other things, SmConnectToSm, SmCompleteSession and the other
00095  *   Sm* Exported APIs have to be properly implemented, as well as the
00096  *   callback calling and SM LPC APIs. [DONE!]
00097  *
00098  * - NTDLL needs to get the Csr* routines properly implemented. [DONE!]
00099  *
00100  * - KERNEL32, USER32 need to register with their servers properly.
00101  *   Additionally, user32 needs to have ClientThreadStartup implemented
00102  *   properly and do the syscall NtUserInitialize (I think) which also
00103  *   needs to be implemented in win32k.sys. All this should be less then
00104  *   100 lines of code. [KERNEL32 50% DONE, USER32 NOT DONE]
00105  *
00106  * - The skeleton code for winsrv and basesrv which connects with CSR/CSRSRV
00107  *   needs to be written. [NOT DONE]
00108  *
00109  * - The kernel's LPC implementation needs to be made compatible. [DONE!]
00110  */
00111 

Generated on Thu May 24 2012 04:38:03 for ReactOS by doxygen 1.7.6.1

ReactOS is a registered trademark or a trademark of ReactOS Foundation in the United States and other countries.