ReactOS  0.4.14-dev-115-g4576127
lsasrv.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

NTSTATUS WINAPI LsapInitLsa (VOID)
 
NTSTATUS WINAPI ServiceInit (VOID)
 

Function Documentation

◆ LsapInitLsa()

NTSTATUS WINAPI LsapInitLsa ( VOID  )

Definition at line 275 of file lsasrv.c.

276 {
278  BOOLEAN PrivilegeEnabled;
279 
280  TRACE("LsapInitLsa()\n");
281 
282  /* Get the product type */
284 
285  /* Initialize the well known SIDs */
286  LsapInitSids();
287 
288  /* Initialize the SRM server */
290  if (!NT_SUCCESS(Status))
291  {
292  ERR("LsapRmInitializeServer() failed (Status 0x%08lx)\n", Status);
293  return Status;
294  }
295 
296  /* Initialize the LSA database */
298 
299  /* Initialize logon sessions */
301 
302  /* Initialize the notification list */
304 
305  /* Initialize registered authentication packages */
307  if (!NT_SUCCESS(Status))
308  {
309  ERR("LsapInitAuthPackages() failed (Status 0x%08lx)\n", Status);
310  return Status;
311  }
312 
313  /* Enable the token creation privilege for the rest of our lifetime */
315  if (!NT_SUCCESS(Status))
316  {
317  ERR("RtlAdjustPrivilege(SE_CREATE_TOKEN_PRIVILEGE) failed, ignoring (Status 0x%08lx)\n", Status);
318  }
319 
320  /* Start the authentication LPC port thread */
322  if (!NT_SUCCESS(Status))
323  {
324  ERR("StartAuthenticationPort() failed (Status 0x%08lx)\n", Status);
325  return Status;
326  }
327 
328  /* Start the RPC server */
330  if (!NT_SUCCESS(Status))
331  {
332  ERR("LsarStartRpcServer() failed (Status 0x%08lx)\n", Status);
333  return Status;
334  }
335 
336  return STATUS_SUCCESS;
337 }
NTSTATUS LsapRmInitializeServer(VOID)
Definition: srm.c:167
#define TRUE
Definition: types.h:120
#define SE_CREATE_TOKEN_PRIVILEGE
Definition: security.c:656
NTSTATUS StartAuthenticationPort(VOID)
Definition: authport.c:327
VOID LsapInitNotificationList(VOID)
Definition: notify.c:26
LONG NTSTATUS
Definition: precomp.h:26
NTSYSAPI NTSTATUS NTAPI RtlAdjustPrivilege(_In_ ULONG Privilege, _In_ BOOLEAN NewValue, _In_ BOOLEAN ForThread, _Out_ PBOOLEAN OldValue)
NTSTATUS LsapInitDatabase(VOID)
Definition: database.c:537
BOOLEAN NTAPI RtlGetNtProductType(PNT_PRODUCT_TYPE ProductType)
Definition: version.c:96
NT_PRODUCT_TYPE LsapProductType
Definition: lsasrv.c:13
unsigned char BOOLEAN
NTSTATUS LsarStartRpcServer(VOID)
Definition: lsarpc.c:40
NTSTATUS LsapInitAuthPackages(VOID)
Definition: authpackage.c:474
#define TRACE(s)
Definition: solgame.cpp:4
#define NT_SUCCESS(StatCode)
Definition: apphelp.c:32
VOID LsapInitLogonSessions(VOID)
Definition: session.c:36
NTSTATUS LsapInitSids(VOID)
Definition: lookup.c:173
Status
Definition: gdiplustypes.h:24
#define ERR(fmt,...)
Definition: debug.h:109
return STATUS_SUCCESS
Definition: btrfs.c:2966

Referenced by wWinMain().

◆ ServiceInit()

NTSTATUS WINAPI ServiceInit ( VOID  )

Definition at line 132 of file service.c.

133 {
134  HANDLE hThread;
136 
137  TRACE("ServiceInit()\n");
138 
140  0,
142  NULL,
143  0,
144  &dwThreadId);
145  if (hThread == NULL)
146  return (NTSTATUS)GetLastError();
147 
148  return STATUS_SUCCESS;
149 }
LONG NTSTATUS
Definition: precomp.h:26
DWORD WINAPI GetLastError(VOID)
Definition: except.c:1059
HANDLE WINAPI DECLSPEC_HOTPATCH CreateThread(IN LPSECURITY_ATTRIBUTES lpThreadAttributes, IN DWORD dwStackSize, IN LPTHREAD_START_ROUTINE lpStartAddress, IN LPVOID lpParameter, IN DWORD dwCreationFlags, OUT LPDWORD lpThreadId)
Definition: thread.c:136
smooth NULL
Definition: ftsmooth.c:416
#define TRACE(s)
Definition: solgame.cpp:4
unsigned long DWORD
Definition: ntddk_ex.h:95
DWORD dwThreadId
Definition: fdebug.c:31
static DWORD WINAPI DispatcherThread(_In_ PVOID pParameter)
Definition: service.c:75
HANDLE hThread
Definition: wizard.c:27
return STATUS_SUCCESS
Definition: btrfs.c:2966