Home | Info | Community | Development | myReactOS | Contact Us
ReactOS Development > Doxygenlsasrv.h
Go to the documentation of this file.
00001 /* 00002 * COPYRIGHT: See COPYING in the top level directory 00003 * PROJECT: Local Security Authority (LSA) Server 00004 * FILE: reactos/dll/win32/lsasrv/lsasrv.h 00005 * PURPOSE: Common header file 00006 * 00007 * PROGRAMMERS: Eric Kohl 00008 */ 00009 00010 #define WIN32_NO_STATUS 00011 #include <windows.h> 00012 #define NTOS_MODE_USER 00013 #include <ndk/cmfuncs.h> 00014 #include <ndk/lpctypes.h> 00015 #include <ndk/lpcfuncs.h> 00016 #include <ndk/obfuncs.h> 00017 #include <ndk/rtlfuncs.h> 00018 #include <ndk/setypes.h> 00019 00020 #include <ntlsa.h> 00021 #include <ntsecapi.h> 00022 #include <sddl.h> 00023 00024 #include <string.h> 00025 00026 #include "lsass.h" 00027 #include "lsa_s.h" 00028 00029 #include <wine/debug.h> 00030 00031 00032 typedef enum _LSA_DB_OBJECT_TYPE 00033 { 00034 LsaDbIgnoreObject, 00035 LsaDbContainerObject, 00036 LsaDbPolicyObject, 00037 LsaDbAccountObject, 00038 LsaDbDomainObject, 00039 LsaDbSecretObject 00040 } LSA_DB_OBJECT_TYPE, *PLSA_DB_OBJECT_TYPE; 00041 00042 typedef struct _LSA_DB_OBJECT 00043 { 00044 ULONG Signature; 00045 LSA_DB_OBJECT_TYPE ObjectType; 00046 ULONG RefCount; 00047 ACCESS_MASK Access; 00048 HANDLE KeyHandle; 00049 struct _LSA_DB_OBJECT *ParentObject; 00050 } LSA_DB_OBJECT, *PLSA_DB_OBJECT; 00051 00052 #define LSAP_DB_SIGNATURE 0x12345678 00053 00054 00055 /* authport.c */ 00056 NTSTATUS 00057 StartAuthenticationPort(VOID); 00058 00059 /* database.c */ 00060 NTSTATUS 00061 LsapInitDatabase(VOID); 00062 00063 NTSTATUS 00064 LsapCreateDbObject(IN PLSA_DB_OBJECT ParentObject, 00065 IN LPWSTR ObjectName, 00066 IN LSA_DB_OBJECT_TYPE HandleType, 00067 IN ACCESS_MASK DesiredAccess, 00068 OUT PLSA_DB_OBJECT *DbObject); 00069 00070 NTSTATUS 00071 LsapOpenDbObject(IN PLSA_DB_OBJECT ParentObject, 00072 IN LPWSTR ObjectName, 00073 IN LSA_DB_OBJECT_TYPE ObjectType, 00074 IN ACCESS_MASK DesiredAccess, 00075 OUT PLSA_DB_OBJECT *DbObject); 00076 00077 NTSTATUS 00078 LsapValidateDbObject(IN LSAPR_HANDLE Handle, 00079 IN LSA_DB_OBJECT_TYPE HandleType, 00080 IN ACCESS_MASK GrantedAccess, 00081 OUT PLSA_DB_OBJECT *DbObject); 00082 00083 NTSTATUS 00084 LsapCloseDbObject(IN PLSA_DB_OBJECT DbObject); 00085 00086 NTSTATUS 00087 LsapGetObjectAttribute(PLSA_DB_OBJECT DbObject, 00088 LPWSTR AttributeName, 00089 LPVOID AttributeData, 00090 PULONG AttributeSize); 00091 00092 NTSTATUS 00093 LsapSetObjectAttribute(PLSA_DB_OBJECT DbObject, 00094 LPWSTR AttributeName, 00095 LPVOID AttributeData, 00096 ULONG AttributeSize); 00097 00098 /* lsarpc.c */ 00099 VOID 00100 LsarStartRpcServer(VOID); 00101 00102 /* policy.c */ 00103 NTSTATUS 00104 LsarQueryAuditEvents(PLSA_DB_OBJECT PolicyObject, 00105 PLSAPR_POLICY_INFORMATION *PolicyInformation); 00106 00107 NTSTATUS 00108 LsarQueryPrimaryDomain(PLSA_DB_OBJECT PolicyObject, 00109 PLSAPR_POLICY_INFORMATION *PolicyInformation); 00110 00111 NTSTATUS 00112 LsarQueryAccountDomain(PLSA_DB_OBJECT PolicyObject, 00113 PLSAPR_POLICY_INFORMATION *PolicyInformation); 00114 00115 NTSTATUS 00116 LsarQueryDnsDomain(PLSA_DB_OBJECT PolicyObject, 00117 PLSAPR_POLICY_INFORMATION *PolicyInformation); 00118 00119 NTSTATUS 00120 LsarSetPrimaryDomain(PLSA_DB_OBJECT PolicyObject, 00121 PLSAPR_POLICY_PRIMARY_DOM_INFO Info); 00122 00123 NTSTATUS 00124 LsarSetAccountDomain(PLSA_DB_OBJECT PolicyObject, 00125 PLSAPR_POLICY_ACCOUNT_DOM_INFO Info); 00126 00127 NTSTATUS 00128 LsarSetDnsDomain(PLSA_DB_OBJECT PolicyObject, 00129 PLSAPR_POLICY_DNS_DOMAIN_INFO Info); 00130 00131 /* privileges.c */ 00132 NTSTATUS 00133 LsarpLookupPrivilegeName(PLUID Value, 00134 PUNICODE_STRING *Name); 00135 00136 NTSTATUS 00137 LsarpLookupPrivilegeValue(PUNICODE_STRING Name, 00138 PLUID Value); 00139 00140 /* sids.h */ 00141 NTSTATUS 00142 LsapInitSids(VOID); 00143 00144 NTSTATUS 00145 LsapLookupSids(PLSAPR_SID_ENUM_BUFFER SidEnumBuffer, 00146 PLSAPR_TRANSLATED_NAME OutputNames); 00147 Generated on Sat May 26 2012 04:23:10 for ReactOS by
1.7.6.1
|