[LSASRV][MSV1_0]
[reactos.git] / reactos / dll / win32 / lsasrv / lsasrv.h
index de709d6..16c7b3c 100644 (file)
@@ -7,13 +7,17 @@
  * PROGRAMMERS:     Eric Kohl
  */
 
+#include <stdarg.h>
+
 #define WIN32_NO_STATUS
 #define _INC_WINDOWS
 #define COM_NO_WINDOWS_H
-#include <stdarg.h>
+
 #include <windef.h>
 #include <winbase.h>
 #include <winreg.h>
+#include <winuser.h>
+
 #define NTOS_MODE_USER
 #include <ndk/cmfuncs.h>
 #include <ndk/kefuncs.h>
 #include <ndk/psfuncs.h>
 #include <ndk/rtlfuncs.h>
 #include <ndk/setypes.h>
+#include <ndk/sefuncs.h>
 #include <ndk/umfuncs.h>
 
 #include <ntsam.h>
 #include <ntlsa.h>
-//#include <ntsecapi.h>
 #include <sddl.h>
 
-//#include <string.h>
-
 #include <lsass.h>
 #include <lsa_s.h>
 
 #include <wine/debug.h>
+WINE_DEFAULT_DEBUG_CHANNEL(lsasrv);
 
+#include "resources.h"
 
 typedef enum _LSA_DB_OBJECT_TYPE
 {
@@ -69,6 +73,12 @@ typedef struct _LSAP_POLICY_AUDIT_EVENTS_DATA
     DWORD AuditEvents[0];
 } LSAP_POLICY_AUDIT_EVENTS_DATA, *PLSAP_POLICY_AUDIT_EVENTS_DATA;
 
+typedef struct _LSAP_LOGON_CONTEXT
+{
+    LIST_ENTRY Entry;
+    HANDLE ClientProcessHandle;
+    HANDLE ConnectionHandle;
+} LSAP_LOGON_CONTEXT, *PLSAP_LOGON_CONTEXT;
 
 extern SID_IDENTIFIER_AUTHORITY NullSidAuthority;
 extern SID_IDENTIFIER_AUTHORITY WorldSidAuthority;
@@ -81,13 +91,24 @@ extern UNICODE_STRING BuiltinDomainName;
 extern PSID AccountDomainSid;
 extern UNICODE_STRING AccountDomainName;
 
+extern PSID LsapLocalSystemSid;
+
+
 /* authpackage.c */
 NTSTATUS
 LsapInitAuthPackages(VOID);
 
 NTSTATUS
-LsapLookupAuthenticationPackageByName(IN PSTRING PackageName,
-                                      OUT PULONG PackageId);
+LsapLookupAuthenticationPackage(PLSA_API_MSG RequestMsg,
+                                PLSAP_LOGON_CONTEXT LogonContext);
+
+NTSTATUS
+LsapCallAuthenticationPackage(PLSA_API_MSG RequestMsg,
+                              PLSAP_LOGON_CONTEXT LogonContext);
+
+NTSTATUS
+LsapLogonUser(PLSA_API_MSG RequestMsg,
+              PLSAP_LOGON_CONTEXT LogonContext);
 
 /* authport.c */
 NTSTATUS
@@ -366,4 +387,26 @@ NTSTATUS
 LsapCreateSecretSd(PSECURITY_DESCRIPTOR *SecretSd,
                    PULONG SecretSdSize);
 
+/* session.c */
+VOID
+LsapInitLogonSessions(VOID);
+
+NTSTATUS
+NTAPI
+LsapCreateLogonSession(IN PLUID LogonId);
+
+NTSTATUS
+NTAPI
+LsapDeleteLogonSession(IN PLUID LogonId);
+
+NTSTATUS
+LsapSetLogonSessionData(IN PLUID LogonId);
+
+/* utils.c */
+INT
+LsapLoadString(HINSTANCE hInstance,
+               UINT uId,
+               LPWSTR lpBuffer,
+               INT nBufferMax);
+
 /* EOF */