ReactOS
0.4.16-dev-959-g2ec3a19
Toggle main menu visibility
Main Page
Related Pages
Modules
Namespaces
Namespace List
Namespace Members
All
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
r
s
t
u
v
w
x
Functions
_
a
b
c
d
e
f
g
h
i
l
m
o
p
r
s
t
u
v
w
Variables
_
c
d
e
f
g
h
i
l
m
n
o
p
s
t
u
x
Typedefs
_
a
b
c
d
e
f
g
h
i
l
m
o
p
r
s
t
u
v
w
x
Enumerations
_
a
b
c
d
f
i
l
m
o
p
s
t
w
x
Enumerator
a
b
c
d
e
f
g
h
i
m
n
o
p
r
s
t
u
v
w
x
Classes
Class List
Class Index
Class Hierarchy
Class Members
All
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Functions
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
~
Variables
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
_
a
b
c
d
e
f
h
i
k
l
m
n
o
p
r
s
t
u
v
w
z
Enumerator
_
a
b
c
d
e
f
g
h
i
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Properties
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
z
Related Functions
_
a
b
c
d
e
f
g
h
i
l
m
n
o
p
q
r
s
t
v
x
Files
File List
File Members
All
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Functions
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Variables
$
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Typedefs
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerations
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Enumerator
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Macros
_
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
Examples
status.h
Go to the documentation of this file.
1
/*
2
* CSRSRV Status
3
*/
4
5
/* Organization
6
*
7
* api.c - Handles the LPC Reply/Request Threads which wait on Sb and Csr APIs.
8
* Also in charge of creating those threads and setting up the ports.
9
* Finally, it provides external APIs for validating the API buffers
10
* and doing server-to-server API calls.
11
*
12
* init.c - Handles initialization of CSRSRV, including command-line parsing,
13
* loading the Server DLLs, creating the Session Directories, setting
14
* up the DosDevices Object Directory, and initializing each component.
15
*
16
* procsup.c - Handles all internal functions dealing with the CSR Process Object,
17
* including de/allocation, de/referencing, un/locking, priority, and
18
* lookups. Also handles all external APIs which touch the CSR Process Object.
19
*
20
* server.c - Handles all internal functions related to loading and managing Server
21
* DLLs, as well as the routines handling the Shared Static Memory Section.
22
* Holds the API Dispatch/Valid/Name Tables and the public CSR_SERVER API
23
* interface. Also home of the SEH handler.
24
*
25
* session.c - Handles all internal functions dealing with the CSR Session Object,
26
* including de/allocation, de/referencing, and un/locking. Holds the SB API
27
* Dispatch/Name Tables and the public CsrSv API Interface for communication
28
* with the Session Manager.
29
*
30
* thredsup.c - Handles all internal functions dealing with the CSR Thread Object,
31
* including de/allocation, de/referencing, un/locking, impersonation, and
32
* lookups. Also handles all external APIs which touch the CSR Thread Object.
33
*
34
* wait.c - Handles all internal functions dealing with the CSR Wait Object,
35
* including de/allocation, de/referencing and un/locking. Also implements
36
* the external Wait API for creating, removing and/or notifying waits.
37
*/
38
39
/* Exported APIs Location Status
40
*------------------------------------------------------------
41
* CsrAddStaticServerThread 1 - server.c - IMPLEMENTED
42
* CsrCallServerFromServer 2 - api.c - IMPLEMENTED
43
* CsrConnectToUser 3 - api.c - IMPLEMENTED
44
* CsrCreateProcess 4 - procsup.c - IMPLEMENTED
45
* CsrCreateRemoteThread 5 - thredsup.c - IMPLEMENTED
46
* CsrCreateThread 6 - thredsup.c - IMPLEMENTED
47
* CsrCreateWait 7 - wait.c - IMPLEMENTED
48
* CsrDebugProcess 8 - procsup.c - IMPLEMENTED
49
* CsrDebugProcessStop 9 - procsup.c - IMPLEMENTED
50
* CsrDereferenceProcess 10 - procsup.c - IMPLEMENTED
51
* CsrDereferenceThread 11 - thredsup.c - IMPLEMENTED
52
* CsrDereferenceWait 12 - wait.c - IMPLEMENTED
53
* CsrDestroyProcess 13 - procsup.c - IMPLEMENTED
54
* CsrDestroyThread 14 - thredsup.c - IMPLEMENTED
55
* CsrExecServerThread 15 - thredsup.c - IMPLEMENTED
56
* CsrGetProcessLuid 16 - procsup.c - IMPLEMENTED
57
* CsrImpersonateClient 17 - thredsup.c - IMPLEMENTED
58
* CsrLockProcessByClientId 18 - procsup.c - IMPLEMENTED
59
* CsrLockThreadByClientId 19 - thredsup.c - IMPLEMENTED
60
* CsrMoveSatisfiedWait 20 - wait.c - IMPLEMENTED
61
* CsrNotifyWait 21 - wait.c - IMPLEMENTED
62
* CsrPopulateDosDevices 22 - init.c - IMPLEMENTED
63
* CsrQueryApiPort 23 - api.c - IMPLEMENTED
64
* CsrReferenceThread 24 - thredsup.c - IMPLEMENTED
65
* CsrRevertToSelf 25 - thredsup.c - IMPLEMENTED
66
* CsrServerInitialization 26 - server.c - IMPLEMENTED
67
* CsrSetBackgroundPriority 27 - procsup.c - IMPLEMENTED
68
* CsrSetCallingSpooler 28 - server.c - IMPLEMENTED
69
* CsrSetForegroundPriority 29 - procsup.c - IMPLEMENTED
70
* CsrShutdownProcesses 30 - procsup.c - IMPLEMENTED
71
* CsrUnhandledExceptionFilter 31 - server.c - IMPLEMENTED
72
* CsrUnlockProcess 32 - procsup.c - IMPLEMENTED
73
* CsrUnlockThread 33 - thredsup.c - IMPLEMENTED
74
* CsrValidateMessageBuffer 34 - api.c - IMPLEMENTED
75
* CsrValidateMessageString 35 - api.c - IMPLEMENTED
76
*/
77
78
/* Public CSR API Interface Status (server.c)
79
* CsrSrvClientConnect - IMPLEMENTED
80
* CsrSrvUnusedFunction - IMPLEMENTED
81
*/
82
83
/* Public SB API Interface Status (session.c)
84
* CsrSbCreateSession - IMPLEMENTED
85
* CsrSbForeignSessionComplete - IMPLEMENTED
86
* CsrSbTerminateSession - UNIMPLEMENTED
87
* CsrSbCreateProcess - UNIMPLEMENTED
88
*/
89
90
/* What's missing:
91
*
92
* - SMSS needs to be partly re-written to match some things done here.
93
* Among other things, SmConnectToSm, SmCompleteSession and the other
94
* Sm* Exported APIs have to be properly implemented, as well as the
95
* callback calling and SM LPC APIs. [PARTLY DONE!]
96
*
97
* - USER32 needs to register with winsrv properly. Additionally, it
98
* needs to have ClientThreadStartup implemented properly and do the
99
* syscall NtUserInitialize (I think) which also needs to be implemented
100
* in win32k.sys. All this should be less then 100 lines of code.
101
* [NOT DONE]
102
*/
subsystems
csr
csrsrv
status.h
Generated on Sun Apr 6 2025 06:17:57 for ReactOS by
1.9.6