2 lsa interface definition
5 [ uuid(12345778-1234-abcd-ef00-0123456789ab),
7 pointer_default(unique)
13 [in,out,ref] policy_handle *handle
20 [in,ref] policy_handle *handle
40 [size_is(count)] lsa_PrivEntry *privs;
43 NTSTATUS lsa_EnumPrivs (
44 [in,ref] policy_handle *handle,
45 [in,out,ref] uint32 *resume_handle,
46 [in] uint32 max_count,
47 [out,ref] lsa_PrivArray *privs
52 NTSTATUS lsa_QuerySecObj ();
56 NTSTATUS lsa_SetSecObj ();
60 NTSTATUS lsa_ChangePassword ();
66 [struct_len] uint32 _len;
67 uint16 impersonation_level;
73 [struct_len] uint32 _len;
77 security_descriptor *sec_desc;
79 } lsa_ObjectAttribute;
81 /* notice the screwup with the system_name - thats why MS created
83 NTSTATUS lsa_OpenPolicy (
84 [in] uint16 *system_name,
85 [in,ref] lsa_ObjectAttribute *attr,
86 [in] uint32 desired_access,
87 [out,ref] policy_handle *handle
94 NTSTATUS lsa_QueryInfoPolicy ();
98 NTSTATUS lsa_SetInfoPolicy ();
102 NTSTATUS lsa_ClearAuditLog ();
106 NTSTATUS lsa_CreateAccount ();
117 [size_is(num_sids)] lsa_SidPtr *sids;
120 NTSTATUS lsa_EnumAccounts (
121 [in,ref] policy_handle *handle,
122 [in,out,ref] uint32 *resume_handle,
123 [in] uint32 num_entries,
124 [out,ref] lsa_SidArray *sids
128 /*************************************************/
130 NTSTATUS lsa_CreateTrustDom ();
139 } lsa_DomainInformation;
143 [size_is(count)] lsa_DomainInformation *domains;
146 NTSTATUS lsa_EnumTrustDom (
147 [in,ref] policy_handle *handle,
148 [in,out,ref] uint32 *resume_handle,
149 [in] uint32 num_entries,
150 [out,ref] lsa_DomainList *domains
165 [size_is(count)] lsa_TranslatedSid *sids;
171 } lsa_TrustInformation;
175 [size_is(count)] lsa_TrustInformation *domains;
179 NTSTATUS lsa_LookupNames (
180 [in,ref] policy_handle *handle,
181 [in] uint32 num_names,
182 [in,ref,size_is(num_names)] lsa_Name *names,
183 [out] lsa_RefDomainList *domains,
184 [in,out,ref] lsa_TransSidArray *sids,
186 [in,out,ref] uint32 *count
197 } lsa_TranslatedName;
201 [size_is(count)] lsa_TranslatedName *names;
202 } lsa_TransNameArray;
204 NTSTATUS lsa_LookupSids (
205 [in,ref] policy_handle *handle,
206 [in,ref] lsa_SidArray *sids,
207 [out] lsa_RefDomainList *domains,
208 [in,out,ref] lsa_TransNameArray *names,
210 [in,out,ref] uint32 *count
215 NTSTATUS CREATESECRET ();
218 /*****************************************/
220 NTSTATUS lsa_OpenAccount (
221 [in,ref] policy_handle *handle,
222 [in,ref] dom_sid2 *sid,
223 [in] uint32 desired_access,
224 [out,ref] policy_handle *acct_handle
229 NTSTATUS ENUMPRIVSACCOUNT ();
231 NTSTATUS ADDPRIVS ();
233 NTSTATUS REMOVEPRIVS ();
235 NTSTATUS GETQUOTAS ();
237 NTSTATUS SETQUOTAS ();
239 NTSTATUS GETSYSTEMACCOUNT ();
241 NTSTATUS SETSYSTEMACCOUNT ();
243 NTSTATUS OPENTRUSTDOM ();
245 NTSTATUS QUERYTRUSTDOM ();
247 NTSTATUS SETINFOTRUSTDOM ();
249 NTSTATUS OPENSECRET ();
251 NTSTATUS SETSECRET ();
253 NTSTATUS QUERYSECRET ();
255 NTSTATUS LOOKUPPRIVVALUE ();
257 NTSTATUS LOOKUPPRIVNAME ();
259 NTSTATUS PRIV_GET_DISPNAME ();
261 NTSTATUS DELETEOBJECT ();
263 NTSTATUS ENUMACCTWITHRIGHT ();
265 NTSTATUS ENUMACCTRIGHTS ();
267 NTSTATUS ADDACCTRIGHTS ();
269 NTSTATUS REMOVEACCTRIGHTS ();
271 NTSTATUS QUERYTRUSTDOMINFO ();
273 NTSTATUS SETTRUSTDOMINFO ();
275 NTSTATUS DELETETRUSTDOM ();
277 NTSTATUS STOREPRIVDATA ();
279 NTSTATUS RETRPRIVDATA ();
282 /**********************/
284 NTSTATUS lsa_OpenPolicy2 (
285 [in] unistr *system_name,
286 [in,ref] lsa_ObjectAttribute *attr,
287 [in] uint32 desired_access,
288 [out,ref] policy_handle *handle
293 NTSTATUS UNK_GET_CONNUSER ();
295 NTSTATUS QUERYINFO2 ();