1 /* header auto-generated by pidl */
5 #include "libcli/util/ntstatus.h"
7 #include "librpc/gen_ndr/misc.h"
8 #include "librpc/gen_ndr/security.h"
10 #define _HEADER_lsarpc
12 #define LSA_POLICY_ALL_ACCESS ( (STANDARD_RIGHTS_REQUIRED_ACCESS|LSA_POLICY_VIEW_LOCAL_INFORMATION|LSA_POLICY_VIEW_AUDIT_INFORMATION|LSA_POLICY_GET_PRIVATE_INFORMATION|LSA_POLICY_TRUST_ADMIN|LSA_POLICY_CREATE_ACCOUNT|LSA_POLICY_CREATE_SECRET|LSA_POLICY_CREATE_PRIVILEGE|LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS|LSA_POLICY_SET_AUDIT_REQUIREMENTS|LSA_POLICY_AUDIT_LOG_ADMIN|LSA_POLICY_SERVER_ADMIN|LSA_POLICY_LOOKUP_NAMES) )
13 #define LSA_POLICY_READ ( (STANDARD_RIGHTS_READ_ACCESS|LSA_POLICY_VIEW_LOCAL_INFORMATION|LSA_POLICY_VIEW_AUDIT_INFORMATION|LSA_POLICY_GET_PRIVATE_INFORMATION) )
14 #define LSA_POLICY_WRITE ( (STANDARD_RIGHTS_READ_ACCESS|LSA_POLICY_TRUST_ADMIN|LSA_POLICY_CREATE_ACCOUNT|LSA_POLICY_CREATE_SECRET|LSA_POLICY_CREATE_PRIVILEGE|LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS|LSA_POLICY_SET_AUDIT_REQUIREMENTS|LSA_POLICY_AUDIT_LOG_ADMIN|LSA_POLICY_SERVER_ADMIN) )
15 #define LSA_POLICY_EXECUTE ( (STANDARD_RIGHTS_EXECUTE_ACCESS|LSA_POLICY_VIEW_LOCAL_INFORMATION|LSA_POLICY_LOOKUP_NAMES) )
16 #define LSA_ACCOUNT_ALL_ACCESS ( (STANDARD_RIGHTS_REQUIRED_ACCESS|LSA_ACCOUNT_VIEW|LSA_ACCOUNT_ADJUST_PRIVILEGES|LSA_ACCOUNT_ADJUST_QUOTAS|LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS) )
17 #define LSA_ACCOUNT_READ ( (STANDARD_RIGHTS_READ_ACCESS|LSA_ACCOUNT_VIEW) )
18 #define LSA_ACCOUNT_WRITE ( (STANDARD_RIGHTS_READ_ACCESS|LSA_ACCOUNT_ADJUST_PRIVILEGES|LSA_ACCOUNT_ADJUST_QUOTAS|LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS) )
19 #define LSA_ACCOUNT_EXECUTE ( (STANDARD_RIGHTS_EXECUTE_ACCESS) )
20 #define LSA_SECRET_ALL_ACCESS ( (LSA_SECRET_QUERY_VALUE|LSA_SECRET_SET_VALUE|SEC_STD_DELETE|STANDARD_RIGHTS_READ_ACCESS|SEC_STD_WRITE_DAC|SEC_STD_WRITE_OWNER) )
21 #define LSA_SECRET_READ ( (LSA_SECRET_QUERY_VALUE|STANDARD_RIGHTS_READ_ACCESS) )
22 #define LSA_SECRET_WRITE ( (LSA_SECRET_SET_VALUE|STANDARD_RIGHTS_READ_ACCESS) )
23 #define LSA_SECRET_EXECUTE ( (STANDARD_RIGHTS_READ_ACCESS) )
24 #define LSA_TRUSTED_DOMAIN_ALL_ACCESS ( (LSA_TRUSTED_QUERY_DOMAIN_NAME|LSA_TRUSTED_QUERY_CONTROLLERS|LSA_TRUSTED_SET_CONTROLLERS|LSA_TRUSTED_QUERY_POSIX|LSA_TRUSTED_SET_POSIX|LSA_TRUSTED_SET_AUTH|LSA_TRUSTED_QUERY_AUTH|SEC_STD_DELETE|STANDARD_RIGHTS_READ_ACCESS|SEC_STD_WRITE_DAC|SEC_STD_WRITE_OWNER) )
25 #define LSA_TRUSTED_DOMAIN_READ ( (LSA_TRUSTED_QUERY_DOMAIN_NAME|STANDARD_RIGHTS_READ_ACCESS) )
26 #define LSA_TRUSTED_DOMAIN_WRITE ( (LSA_TRUSTED_SET_CONTROLLERS|LSA_TRUSTED_SET_POSIX|LSA_TRUSTED_SET_AUTH|STANDARD_RIGHTS_READ_ACCESS) )
27 #define LSA_TRUSTED_DOMAIN_EXECUTE ( (LSA_TRUSTED_QUERY_DOMAIN_NAME|LSA_TRUSTED_QUERY_POSIX|STANDARD_RIGHTS_READ_ACCESS) )
28 #define LSA_ENUM_TRUST_DOMAIN_MULTIPLIER ( 60 )
29 #define LSA_REF_DOMAIN_LIST_MULTIPLIER ( 32 )
30 #define LSA_ENUM_TRUST_DOMAIN_EX_MULTIPLIER ( 82 )
31 #define LSA_CLIENT_REVISION_NO_DNS ( 0x00000001 )
32 #define LSA_CLIENT_REVISION_DNS ( 0x00000002 )
33 #define LSA_LOOKUP_OPTIONS_NO_ISOLATED ( 0x80000000 )
35 uint16_t length
;/* [value(2*strlen_m(string))] */
36 uint16_t size
;/* [value(2*strlen_m(string))] */
37 const char *string
;/* [unique,charset(UTF16),length_is(length/2),size_is(size/2)] */
40 struct lsa_StringLarge
{
41 uint16_t length
;/* [value(2*strlen_m(string))] */
42 uint16_t size
;/* [value(2*strlen_m_term(string))] */
43 const char *string
;/* [unique,charset(UTF16),length_is(length/2),size_is(size/2)] */
48 struct lsa_String
*names
;/* [unique,size_is(count)] */
51 struct lsa_AsciiString
{
52 uint16_t length
;/* [value(strlen_m(string))] */
53 uint16_t size
;/* [value(strlen_m(string))] */
54 const char *string
;/* [unique,charset(DOS),length_is(length),size_is(size)] */
57 struct lsa_AsciiStringLarge
{
58 uint16_t length
;/* [value(strlen_m(string))] */
59 uint16_t size
;/* [value(strlen_m_term(string))] */
60 const char *string
;/* [unique,charset(DOS),length_is(length),size_is(size)] */
63 struct lsa_BinaryString
{
66 uint16_t *array
;/* [unique,length_is(length/2),size_is(size/2)] */
74 struct lsa_PrivEntry
{
75 struct lsa_StringLarge name
;
79 struct lsa_PrivArray
{
81 struct lsa_PrivEntry
*privs
;/* [unique,size_is(count)] */
86 uint16_t impersonation_level
;
88 uint8_t effective_only
;
91 struct lsa_ObjectAttribute
{
93 uint8_t *root_dir
;/* [unique] */
94 const char *object_name
;/* [unique,charset(UTF16)] */
96 struct security_descriptor
*sec_desc
;/* [unique] */
97 struct lsa_QosInfo
*sec_qos
;/* [unique] */
100 /* bitmap lsa_PolicyAccessMask */
101 #define LSA_POLICY_VIEW_LOCAL_INFORMATION ( 0x00000001 )
102 #define LSA_POLICY_VIEW_AUDIT_INFORMATION ( 0x00000002 )
103 #define LSA_POLICY_GET_PRIVATE_INFORMATION ( 0x00000004 )
104 #define LSA_POLICY_TRUST_ADMIN ( 0x00000008 )
105 #define LSA_POLICY_CREATE_ACCOUNT ( 0x00000010 )
106 #define LSA_POLICY_CREATE_SECRET ( 0x00000020 )
107 #define LSA_POLICY_CREATE_PRIVILEGE ( 0x00000040 )
108 #define LSA_POLICY_SET_DEFAULT_QUOTA_LIMITS ( 0x00000080 )
109 #define LSA_POLICY_SET_AUDIT_REQUIREMENTS ( 0x00000100 )
110 #define LSA_POLICY_AUDIT_LOG_ADMIN ( 0x00000200 )
111 #define LSA_POLICY_SERVER_ADMIN ( 0x00000400 )
112 #define LSA_POLICY_LOOKUP_NAMES ( 0x00000800 )
113 #define LSA_POLICY_NOTIFICATION ( 0x00001000 )
115 /* bitmap lsa_AccountAccessMask */
116 #define LSA_ACCOUNT_VIEW ( 0x00000001 )
117 #define LSA_ACCOUNT_ADJUST_PRIVILEGES ( 0x00000002 )
118 #define LSA_ACCOUNT_ADJUST_QUOTAS ( 0x00000004 )
119 #define LSA_ACCOUNT_ADJUST_SYSTEM_ACCESS ( 0x00000008 )
121 /* bitmap lsa_SecretAccessMask */
122 #define LSA_SECRET_SET_VALUE ( 0x00000001 )
123 #define LSA_SECRET_QUERY_VALUE ( 0x00000002 )
125 /* bitmap lsa_TrustedAccessMask */
126 #define LSA_TRUSTED_QUERY_DOMAIN_NAME ( 0x00000001 )
127 #define LSA_TRUSTED_QUERY_CONTROLLERS ( 0x00000002 )
128 #define LSA_TRUSTED_SET_CONTROLLERS ( 0x00000004 )
129 #define LSA_TRUSTED_QUERY_POSIX ( 0x00000008 )
130 #define LSA_TRUSTED_SET_POSIX ( 0x00000010 )
131 #define LSA_TRUSTED_SET_AUTH ( 0x00000020 )
132 #define LSA_TRUSTED_QUERY_AUTH ( 0x00000040 )
134 struct lsa_AuditLogInfo
{
135 uint32_t percent_full
;
136 uint32_t maximum_log_size
;
137 uint64_t retention_time
;
138 uint8_t shutdown_in_progress
;
139 uint64_t time_to_shutdown
;
140 uint32_t next_audit_record
;
143 enum lsa_PolicyAuditPolicy
144 #ifndef USE_UINT_ENUMS
146 LSA_AUDIT_POLICY_NONE
=(int)(0),
147 LSA_AUDIT_POLICY_SUCCESS
=(int)(1),
148 LSA_AUDIT_POLICY_FAILURE
=(int)(2),
149 LSA_AUDIT_POLICY_ALL
=(int)((LSA_AUDIT_POLICY_SUCCESS
|LSA_AUDIT_POLICY_FAILURE
)),
150 LSA_AUDIT_POLICY_CLEAR
=(int)(4)
153 { __donnot_use_enum_lsa_PolicyAuditPolicy
=0x7FFFFFFF}
154 #define LSA_AUDIT_POLICY_NONE ( 0 )
155 #define LSA_AUDIT_POLICY_SUCCESS ( 1 )
156 #define LSA_AUDIT_POLICY_FAILURE ( 2 )
157 #define LSA_AUDIT_POLICY_ALL ( (LSA_AUDIT_POLICY_SUCCESS|LSA_AUDIT_POLICY_FAILURE) )
158 #define LSA_AUDIT_POLICY_CLEAR ( 4 )
162 enum lsa_PolicyAuditEventType
163 #ifndef USE_UINT_ENUMS
165 LSA_AUDIT_CATEGORY_SYSTEM
=(int)(0),
166 LSA_AUDIT_CATEGORY_LOGON
=(int)(1),
167 LSA_AUDIT_CATEGORY_FILE_AND_OBJECT_ACCESS
=(int)(2),
168 LSA_AUDIT_CATEGORY_USE_OF_USER_RIGHTS
=(int)(3),
169 LSA_AUDIT_CATEGORY_PROCCESS_TRACKING
=(int)(4),
170 LSA_AUDIT_CATEGORY_SECURITY_POLICY_CHANGES
=(int)(5),
171 LSA_AUDIT_CATEGORY_ACCOUNT_MANAGEMENT
=(int)(6),
172 LSA_AUDIT_CATEGORY_DIRECTORY_SERVICE_ACCESS
=(int)(7),
173 LSA_AUDIT_CATEGORY_ACCOUNT_LOGON
=(int)(8)
176 { __donnot_use_enum_lsa_PolicyAuditEventType
=0x7FFFFFFF}
177 #define LSA_AUDIT_CATEGORY_SYSTEM ( 0 )
178 #define LSA_AUDIT_CATEGORY_LOGON ( 1 )
179 #define LSA_AUDIT_CATEGORY_FILE_AND_OBJECT_ACCESS ( 2 )
180 #define LSA_AUDIT_CATEGORY_USE_OF_USER_RIGHTS ( 3 )
181 #define LSA_AUDIT_CATEGORY_PROCCESS_TRACKING ( 4 )
182 #define LSA_AUDIT_CATEGORY_SECURITY_POLICY_CHANGES ( 5 )
183 #define LSA_AUDIT_CATEGORY_ACCOUNT_MANAGEMENT ( 6 )
184 #define LSA_AUDIT_CATEGORY_DIRECTORY_SERVICE_ACCESS ( 7 )
185 #define LSA_AUDIT_CATEGORY_ACCOUNT_LOGON ( 8 )
189 struct lsa_AuditEventsInfo
{
190 uint32_t auditing_mode
;
191 enum lsa_PolicyAuditPolicy
*settings
;/* [unique,size_is(count)] */
195 struct lsa_DomainInfo
{
196 struct lsa_StringLarge name
;
197 struct dom_sid2
*sid
;/* [unique] */
200 struct lsa_PDAccountInfo
{
201 struct lsa_String name
;
205 #ifndef USE_UINT_ENUMS
207 LSA_ROLE_BACKUP
=(int)(2),
208 LSA_ROLE_PRIMARY
=(int)(3)
211 { __donnot_use_enum_lsa_Role
=0x7FFFFFFF}
212 #define LSA_ROLE_BACKUP ( 2 )
213 #define LSA_ROLE_PRIMARY ( 3 )
217 struct lsa_ServerRole
{
221 struct lsa_ReplicaSourceInfo
{
222 struct lsa_String source
;
223 struct lsa_String account
;
226 struct lsa_DefaultQuotaInfo
{
228 uint32_t non_paged_pool
;
235 struct lsa_ModificationInfo
{
236 uint64_t modified_id
;
237 NTTIME db_create_time
;
240 struct lsa_AuditFullSetInfo
{
241 uint8_t shutdown_on_full
;
244 struct lsa_AuditFullQueryInfo
{
245 uint8_t shutdown_on_full
;
249 struct lsa_DnsDomainInfo
{
250 struct lsa_StringLarge name
;
251 struct lsa_StringLarge dns_domain
;
252 struct lsa_StringLarge dns_forest
;
253 struct GUID domain_guid
;
254 struct dom_sid2
*sid
;/* [unique] */
258 #ifndef USE_UINT_ENUMS
260 LSA_POLICY_INFO_AUDIT_LOG
=(int)(1),
261 LSA_POLICY_INFO_AUDIT_EVENTS
=(int)(2),
262 LSA_POLICY_INFO_DOMAIN
=(int)(3),
263 LSA_POLICY_INFO_PD
=(int)(4),
264 LSA_POLICY_INFO_ACCOUNT_DOMAIN
=(int)(5),
265 LSA_POLICY_INFO_ROLE
=(int)(6),
266 LSA_POLICY_INFO_REPLICA
=(int)(7),
267 LSA_POLICY_INFO_QUOTA
=(int)(8),
268 LSA_POLICY_INFO_MOD
=(int)(9),
269 LSA_POLICY_INFO_AUDIT_FULL_SET
=(int)(10),
270 LSA_POLICY_INFO_AUDIT_FULL_QUERY
=(int)(11),
271 LSA_POLICY_INFO_DNS
=(int)(12),
272 LSA_POLICY_INFO_DNS_INT
=(int)(13),
273 LSA_POLICY_INFO_L_ACCOUNT_DOMAIN
=(int)(14)
276 { __donnot_use_enum_lsa_PolicyInfo
=0x7FFFFFFF}
277 #define LSA_POLICY_INFO_AUDIT_LOG ( 1 )
278 #define LSA_POLICY_INFO_AUDIT_EVENTS ( 2 )
279 #define LSA_POLICY_INFO_DOMAIN ( 3 )
280 #define LSA_POLICY_INFO_PD ( 4 )
281 #define LSA_POLICY_INFO_ACCOUNT_DOMAIN ( 5 )
282 #define LSA_POLICY_INFO_ROLE ( 6 )
283 #define LSA_POLICY_INFO_REPLICA ( 7 )
284 #define LSA_POLICY_INFO_QUOTA ( 8 )
285 #define LSA_POLICY_INFO_MOD ( 9 )
286 #define LSA_POLICY_INFO_AUDIT_FULL_SET ( 10 )
287 #define LSA_POLICY_INFO_AUDIT_FULL_QUERY ( 11 )
288 #define LSA_POLICY_INFO_DNS ( 12 )
289 #define LSA_POLICY_INFO_DNS_INT ( 13 )
290 #define LSA_POLICY_INFO_L_ACCOUNT_DOMAIN ( 14 )
294 union lsa_PolicyInformation
{
295 struct lsa_AuditLogInfo audit_log
;/* [case(LSA_POLICY_INFO_AUDIT_LOG)] */
296 struct lsa_AuditEventsInfo audit_events
;/* [case(LSA_POLICY_INFO_AUDIT_EVENTS)] */
297 struct lsa_DomainInfo domain
;/* [case(LSA_POLICY_INFO_DOMAIN)] */
298 struct lsa_PDAccountInfo pd
;/* [case(LSA_POLICY_INFO_PD)] */
299 struct lsa_DomainInfo account_domain
;/* [case(LSA_POLICY_INFO_ACCOUNT_DOMAIN)] */
300 struct lsa_ServerRole role
;/* [case(LSA_POLICY_INFO_ROLE)] */
301 struct lsa_ReplicaSourceInfo replica
;/* [case(LSA_POLICY_INFO_REPLICA)] */
302 struct lsa_DefaultQuotaInfo quota
;/* [case(LSA_POLICY_INFO_QUOTA)] */
303 struct lsa_ModificationInfo mod
;/* [case(LSA_POLICY_INFO_MOD)] */
304 struct lsa_AuditFullSetInfo auditfullset
;/* [case(LSA_POLICY_INFO_AUDIT_FULL_SET)] */
305 struct lsa_AuditFullQueryInfo auditfullquery
;/* [case(LSA_POLICY_INFO_AUDIT_FULL_QUERY)] */
306 struct lsa_DnsDomainInfo dns
;/* [case(LSA_POLICY_INFO_DNS)] */
307 struct lsa_DomainInfo l_account_domain
;/* [case(LSA_POLICY_INFO_L_ACCOUNT_DOMAIN)] */
308 }/* [switch_type(uint16)] */;
311 struct dom_sid2
*sid
;/* [unique] */
314 struct lsa_SidArray
{
315 uint32_t num_sids
;/* [range(0,20480)] */
316 struct lsa_SidPtr
*sids
;/* [unique,size_is(num_sids)] */
319 struct lsa_DomainList
{
321 struct lsa_DomainInfo
*domains
;/* [unique,size_is(count)] */
325 #ifndef USE_UINT_ENUMS
327 SID_NAME_USE_NONE
=(int)(0),
328 SID_NAME_USER
=(int)(1),
329 SID_NAME_DOM_GRP
=(int)(2),
330 SID_NAME_DOMAIN
=(int)(3),
331 SID_NAME_ALIAS
=(int)(4),
332 SID_NAME_WKN_GRP
=(int)(5),
333 SID_NAME_DELETED
=(int)(6),
334 SID_NAME_INVALID
=(int)(7),
335 SID_NAME_UNKNOWN
=(int)(8),
336 SID_NAME_COMPUTER
=(int)(9)
339 { __donnot_use_enum_lsa_SidType
=0x7FFFFFFF}
340 #define SID_NAME_USE_NONE ( 0 )
341 #define SID_NAME_USER ( 1 )
342 #define SID_NAME_DOM_GRP ( 2 )
343 #define SID_NAME_DOMAIN ( 3 )
344 #define SID_NAME_ALIAS ( 4 )
345 #define SID_NAME_WKN_GRP ( 5 )
346 #define SID_NAME_DELETED ( 6 )
347 #define SID_NAME_INVALID ( 7 )
348 #define SID_NAME_UNKNOWN ( 8 )
349 #define SID_NAME_COMPUTER ( 9 )
353 struct lsa_TranslatedSid
{
354 enum lsa_SidType sid_type
;
359 struct lsa_TransSidArray
{
360 uint32_t count
;/* [range(0,1000)] */
361 struct lsa_TranslatedSid
*sids
;/* [unique,size_is(count)] */
364 struct lsa_RefDomainList
{
365 uint32_t count
;/* [range(0,1000)] */
366 struct lsa_DomainInfo
*domains
;/* [unique,size_is(count)] */
370 enum lsa_LookupNamesLevel
371 #ifndef USE_UINT_ENUMS
373 LSA_LOOKUP_NAMES_ALL
=(int)(1),
374 LSA_LOOKUP_NAMES_DOMAINS_ONLY
=(int)(2),
375 LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY
=(int)(3),
376 LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY
=(int)(4),
377 LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY
=(int)(5),
378 LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2
=(int)(6),
379 LSA_LOOKUP_NAMES_RODC_REFERRAL_TO_FULL_DC
=(int)(7)
382 { __donnot_use_enum_lsa_LookupNamesLevel
=0x7FFFFFFF}
383 #define LSA_LOOKUP_NAMES_ALL ( 1 )
384 #define LSA_LOOKUP_NAMES_DOMAINS_ONLY ( 2 )
385 #define LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY ( 3 )
386 #define LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY ( 4 )
387 #define LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY ( 5 )
388 #define LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2 ( 6 )
389 #define LSA_LOOKUP_NAMES_RODC_REFERRAL_TO_FULL_DC ( 7 )
393 struct lsa_TranslatedName
{
394 enum lsa_SidType sid_type
;
395 struct lsa_String name
;
399 struct lsa_TransNameArray
{
400 uint32_t count
;/* [range(0,20480)] */
401 struct lsa_TranslatedName
*names
;/* [unique,size_is(count)] */
404 struct lsa_LUIDAttribute
{
405 struct lsa_LUID luid
;
409 struct lsa_PrivilegeSet
{
410 uint32_t count
;/* [range(0,1000)] */
412 struct lsa_LUIDAttribute
*set
;/* [size_is(count)] */
415 /* bitmap lsa_SystemAccessModeFlags */
416 #define LSA_POLICY_MODE_INTERACTIVE ( 0x00000001 )
417 #define LSA_POLICY_MODE_NETWORK ( 0x00000002 )
418 #define LSA_POLICY_MODE_BATCH ( 0x00000004 )
419 #define LSA_POLICY_MODE_SERVICE ( 0x00000010 )
420 #define LSA_POLICY_MODE_PROXY ( 0x00000020 )
421 #define LSA_POLICY_MODE_DENY_INTERACTIVE ( 0x00000040 )
422 #define LSA_POLICY_MODE_DENY_NETWORK ( 0x00000080 )
423 #define LSA_POLICY_MODE_DENY_BATCH ( 0x00000100 )
424 #define LSA_POLICY_MODE_DENY_SERVICE ( 0x00000200 )
425 #define LSA_POLICY_MODE_REMOTE_INTERACTIVE ( 0x00000400 )
426 #define LSA_POLICY_MODE_DENY_REMOTE_INTERACTIVE ( 0x00000800 )
427 #define LSA_POLICY_MODE_ALL ( 0x00000FF7 )
428 #define LSA_POLICY_MODE_ALL_NT4 ( 0x00000037 )
430 struct lsa_DATA_BUF
{
433 uint8_t *data
;/* [unique,length_is(length),size_is(size)] */
434 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
436 struct lsa_DATA_BUF2
{
437 uint32_t size
;/* [range(0,65536)] */
438 uint8_t *data
;/* [unique,size_is(size)] */
439 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
441 enum lsa_TrustDomInfoEnum
442 #ifndef USE_UINT_ENUMS
444 LSA_TRUSTED_DOMAIN_INFO_NAME
=(int)(1),
445 LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS
=(int)(2),
446 LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET
=(int)(3),
447 LSA_TRUSTED_DOMAIN_INFO_PASSWORD
=(int)(4),
448 LSA_TRUSTED_DOMAIN_INFO_BASIC
=(int)(5),
449 LSA_TRUSTED_DOMAIN_INFO_INFO_EX
=(int)(6),
450 LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO
=(int)(7),
451 LSA_TRUSTED_DOMAIN_INFO_FULL_INFO
=(int)(8),
452 LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL
=(int)(9),
453 LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL
=(int)(10),
454 LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL
=(int)(11),
455 LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL
=(int)(12),
456 LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRYPTION_TYPES
=(int)(13)
459 { __donnot_use_enum_lsa_TrustDomInfoEnum
=0x7FFFFFFF}
460 #define LSA_TRUSTED_DOMAIN_INFO_NAME ( 1 )
461 #define LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS ( 2 )
462 #define LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET ( 3 )
463 #define LSA_TRUSTED_DOMAIN_INFO_PASSWORD ( 4 )
464 #define LSA_TRUSTED_DOMAIN_INFO_BASIC ( 5 )
465 #define LSA_TRUSTED_DOMAIN_INFO_INFO_EX ( 6 )
466 #define LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO ( 7 )
467 #define LSA_TRUSTED_DOMAIN_INFO_FULL_INFO ( 8 )
468 #define LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL ( 9 )
469 #define LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL ( 10 )
470 #define LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL ( 11 )
471 #define LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL ( 12 )
472 #define LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRYPTION_TYPES ( 13 )
476 /* bitmap lsa_TrustDirection */
477 #define LSA_TRUST_DIRECTION_INBOUND ( 0x00000001 )
478 #define LSA_TRUST_DIRECTION_OUTBOUND ( 0x00000002 )
481 #ifndef USE_UINT_ENUMS
483 LSA_TRUST_TYPE_DOWNLEVEL
=(int)(0x00000001),
484 LSA_TRUST_TYPE_UPLEVEL
=(int)(0x00000002),
485 LSA_TRUST_TYPE_MIT
=(int)(0x00000003)
488 { __donnot_use_enum_lsa_TrustType
=0x7FFFFFFF}
489 #define LSA_TRUST_TYPE_DOWNLEVEL ( 0x00000001 )
490 #define LSA_TRUST_TYPE_UPLEVEL ( 0x00000002 )
491 #define LSA_TRUST_TYPE_MIT ( 0x00000003 )
495 /* bitmap lsa_TrustAttributes */
496 #define LSA_TRUST_ATTRIBUTE_NON_TRANSITIVE ( 0x00000001 )
497 #define LSA_TRUST_ATTRIBUTE_UPLEVEL_ONLY ( 0x00000002 )
498 #define LSA_TRUST_ATTRIBUTE_QUARANTINED_DOMAIN ( 0x00000004 )
499 #define LSA_TRUST_ATTRIBUTE_FOREST_TRANSITIVE ( 0x00000008 )
500 #define LSA_TRUST_ATTRIBUTE_CROSS_ORGANIZATION ( 0x00000010 )
501 #define LSA_TRUST_ATTRIBUTE_WITHIN_FOREST ( 0x00000020 )
502 #define LSA_TRUST_ATTRIBUTE_TREAT_AS_EXTERNAL ( 0x00000040 )
503 #define LSA_TRUST_ATTRIBUTE_USES_RC4_ENCRYPTION ( 0x00000080 )
505 struct lsa_TrustDomainInfoName
{
506 struct lsa_StringLarge netbios_name
;
509 struct lsa_TrustDomainInfoControllers
{
511 struct lsa_StringLarge
*netbios_names
;/* [unique,size_is(entries)] */
514 struct lsa_TrustDomainInfoPosixOffset
{
515 uint32_t posix_offset
;
518 struct lsa_TrustDomainInfoPassword
{
519 struct lsa_DATA_BUF
*password
;/* [unique] */
520 struct lsa_DATA_BUF
*old_password
;/* [unique] */
523 struct lsa_TrustDomainInfoBasic
{
524 struct lsa_String netbios_name
;
525 struct dom_sid2
*sid
;/* [unique] */
528 struct lsa_TrustDomainInfoInfoEx
{
529 struct lsa_StringLarge domain_name
;
530 struct lsa_StringLarge netbios_name
;
531 struct dom_sid2
*sid
;/* [unique] */
532 uint32_t trust_direction
;
533 enum lsa_TrustType trust_type
;
534 uint32_t trust_attributes
;
537 enum lsa_TrustAuthType
538 #ifndef USE_UINT_ENUMS
540 TRUST_AUTH_TYPE_NONE
=(int)(0),
541 TRUST_AUTH_TYPE_NT4OWF
=(int)(1),
542 TRUST_AUTH_TYPE_CLEAR
=(int)(2),
543 TRUST_AUTH_TYPE_VERSION
=(int)(3)
546 { __donnot_use_enum_lsa_TrustAuthType
=0x7FFFFFFF}
547 #define TRUST_AUTH_TYPE_NONE ( 0 )
548 #define TRUST_AUTH_TYPE_NT4OWF ( 1 )
549 #define TRUST_AUTH_TYPE_CLEAR ( 2 )
550 #define TRUST_AUTH_TYPE_VERSION ( 3 )
554 struct lsa_TrustDomainInfoBuffer
{
555 NTTIME last_update_time
;
556 enum lsa_TrustAuthType AuthType
;
557 struct lsa_DATA_BUF2 data
;
560 struct lsa_TrustDomainInfoAuthInfo
{
561 uint32_t incoming_count
;
562 struct lsa_TrustDomainInfoBuffer
*incoming_current_auth_info
;/* [unique] */
563 struct lsa_TrustDomainInfoBuffer
*incoming_previous_auth_info
;/* [unique] */
564 uint32_t outgoing_count
;
565 struct lsa_TrustDomainInfoBuffer
*outgoing_current_auth_info
;/* [unique] */
566 struct lsa_TrustDomainInfoBuffer
*outgoing_previous_auth_info
;/* [unique] */
569 struct lsa_TrustDomainInfoFullInfo
{
570 struct lsa_TrustDomainInfoInfoEx info_ex
;
571 struct lsa_TrustDomainInfoPosixOffset posix_offset
;
572 struct lsa_TrustDomainInfoAuthInfo auth_info
;
575 struct lsa_TrustDomainInfoAuthInfoInternal
{
576 struct lsa_DATA_BUF2 auth_blob
;
579 struct lsa_TrustDomainInfoFullInfoInternal
{
580 struct lsa_TrustDomainInfoInfoEx info_ex
;
581 struct lsa_TrustDomainInfoPosixOffset posix_offset
;
582 struct lsa_TrustDomainInfoAuthInfoInternal auth_info
;
585 struct lsa_TrustDomainInfoInfoEx2Internal
{
586 struct lsa_TrustDomainInfoInfoEx info_ex
;
587 uint32_t forest_trust_length
;
588 uint8_t *forest_trust_data
;/* [unique,size_is(forest_trust_length)] */
591 struct lsa_TrustDomainInfoFullInfo2Internal
{
592 struct lsa_TrustDomainInfoInfoEx2Internal info
;
593 struct lsa_TrustDomainInfoPosixOffset posix_offset
;
594 struct lsa_TrustDomainInfoAuthInfo auth_info
;
597 struct lsa_TrustDomainInfoSupportedEncTypes
{
601 union lsa_TrustedDomainInfo
{
602 struct lsa_TrustDomainInfoName name
;/* [case(LSA_TRUSTED_DOMAIN_INFO_NAME)] */
603 struct lsa_TrustDomainInfoControllers controllers
;/* [case(LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS)] */
604 struct lsa_TrustDomainInfoPosixOffset posix_offset
;/* [case(LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET)] */
605 struct lsa_TrustDomainInfoPassword password
;/* [case(LSA_TRUSTED_DOMAIN_INFO_PASSWORD)] */
606 struct lsa_TrustDomainInfoBasic info_basic
;/* [case(LSA_TRUSTED_DOMAIN_INFO_BASIC)] */
607 struct lsa_TrustDomainInfoInfoEx info_ex
;/* [case(LSA_TRUSTED_DOMAIN_INFO_INFO_EX)] */
608 struct lsa_TrustDomainInfoAuthInfo auth_info
;/* [case(LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO)] */
609 struct lsa_TrustDomainInfoFullInfo full_info
;/* [case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO)] */
610 struct lsa_TrustDomainInfoAuthInfoInternal auth_info_internal
;/* [case(LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO_INTERNAL)] */
611 struct lsa_TrustDomainInfoFullInfoInternal full_info_internal
;/* [case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_INTERNAL)] */
612 struct lsa_TrustDomainInfoInfoEx2Internal info_ex2_internal
;/* [case(LSA_TRUSTED_DOMAIN_INFO_INFO_EX2_INTERNAL)] */
613 struct lsa_TrustDomainInfoFullInfo2Internal full_info2_internal
;/* [case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO_2_INTERNAL)] */
614 struct lsa_TrustDomainInfoSupportedEncTypes enc_types
;/* [case(LSA_TRUSTED_DOMAIN_SUPPORTED_ENCRYPTION_TYPES)] */
615 }/* [switch_type(lsa_TrustDomInfoEnum)] */;
617 struct lsa_DATA_BUF_PTR
{
618 struct lsa_DATA_BUF
*buf
;/* [unique] */
621 struct lsa_RightAttribute
{
622 const char *name
;/* [unique,charset(UTF16)] */
625 struct lsa_RightSet
{
626 uint32_t count
;/* [range(0,256)] */
627 struct lsa_StringLarge
*names
;/* [unique,size_is(count)] */
630 struct lsa_DomainListEx
{
632 struct lsa_TrustDomainInfoInfoEx
*domains
;/* [unique,size_is(count)] */
635 struct lsa_DomainInfoKerberos
{
636 uint32_t enforce_restrictions
;
637 uint64_t service_tkt_lifetime
;
638 uint64_t user_tkt_lifetime
;
639 uint64_t user_tkt_renewaltime
;
644 struct lsa_DomainInfoEfs
{
646 uint8_t *efs_blob
;/* [unique,size_is(blob_size)] */
649 enum lsa_DomainInfoEnum
650 #ifndef USE_UINT_ENUMS
652 LSA_DOMAIN_INFO_POLICY_EFS
=(int)(2),
653 LSA_DOMAIN_INFO_POLICY_KERBEROS
=(int)(3)
656 { __donnot_use_enum_lsa_DomainInfoEnum
=0x7FFFFFFF}
657 #define LSA_DOMAIN_INFO_POLICY_EFS ( 2 )
658 #define LSA_DOMAIN_INFO_POLICY_KERBEROS ( 3 )
662 union lsa_DomainInformationPolicy
{
663 struct lsa_DomainInfoEfs efs_info
;/* [case(LSA_DOMAIN_INFO_POLICY_EFS)] */
664 struct lsa_DomainInfoKerberos kerberos_info
;/* [case(LSA_DOMAIN_INFO_POLICY_KERBEROS)] */
665 }/* [switch_type(uint16)] */;
667 struct lsa_TranslatedName2
{
668 enum lsa_SidType sid_type
;
669 struct lsa_String name
;
674 struct lsa_TransNameArray2
{
675 uint32_t count
;/* [range(0,1000)] */
676 struct lsa_TranslatedName2
*names
;/* [unique,size_is(count)] */
679 enum lsa_LookupOptions
680 #ifndef USE_UINT_ENUMS
682 LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES
=(int)(0x00000000),
683 LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES_LOCAL
=(int)(0x80000000)
686 { __donnot_use_enum_lsa_LookupOptions
=0x7FFFFFFF}
687 #define LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES ( 0x00000000 )
688 #define LSA_LOOKUP_OPTION_SEARCH_ISOLATED_NAMES_LOCAL ( 0x80000000 )
692 enum lsa_ClientRevision
693 #ifndef USE_UINT_ENUMS
695 LSA_CLIENT_REVISION_1
=(int)(0x00000001),
696 LSA_CLIENT_REVISION_2
=(int)(0x00000002)
699 { __donnot_use_enum_lsa_ClientRevision
=0x7FFFFFFF}
700 #define LSA_CLIENT_REVISION_1 ( 0x00000001 )
701 #define LSA_CLIENT_REVISION_2 ( 0x00000002 )
705 struct lsa_TranslatedSid2
{
706 enum lsa_SidType sid_type
;
712 struct lsa_TransSidArray2
{
713 uint32_t count
;/* [range(0,1000)] */
714 struct lsa_TranslatedSid2
*sids
;/* [unique,size_is(count)] */
717 struct lsa_TranslatedSid3
{
718 enum lsa_SidType sid_type
;
719 struct dom_sid2
*sid
;/* [unique] */
724 struct lsa_TransSidArray3
{
725 uint32_t count
;/* [range(0,1000)] */
726 struct lsa_TranslatedSid3
*sids
;/* [unique,size_is(count)] */
729 struct lsa_ForestTrustBinaryData
{
730 uint32_t length
;/* [range(0,131072)] */
731 uint8_t *data
;/* [unique,size_is(length)] */
734 struct lsa_ForestTrustDomainInfo
{
735 struct dom_sid2
*domain_sid
;/* [unique] */
736 struct lsa_StringLarge dns_domain_name
;
737 struct lsa_StringLarge netbios_domain_name
;
740 union lsa_ForestTrustData
{
741 struct lsa_String top_level_name
;/* [case(LSA_FOREST_TRUST_TOP_LEVEL_NAME)] */
742 struct lsa_StringLarge top_level_name_ex
;/* [case(LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX)] */
743 struct lsa_ForestTrustDomainInfo domain_info
;/* [case(LSA_FOREST_TRUST_DOMAIN_INFO)] */
744 struct lsa_ForestTrustBinaryData data
;/* [default] */
745 }/* [switch_type(uint32)] */;
747 enum lsa_ForestTrustRecordType
748 #ifndef USE_UINT_ENUMS
750 LSA_FOREST_TRUST_TOP_LEVEL_NAME
=(int)(0),
751 LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX
=(int)(1),
752 LSA_FOREST_TRUST_DOMAIN_INFO
=(int)(2),
753 LSA_FOREST_TRUST_RECORD_TYPE_LAST
=(int)(3)
756 { __donnot_use_enum_lsa_ForestTrustRecordType
=0x7FFFFFFF}
757 #define LSA_FOREST_TRUST_TOP_LEVEL_NAME ( 0 )
758 #define LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX ( 1 )
759 #define LSA_FOREST_TRUST_DOMAIN_INFO ( 2 )
760 #define LSA_FOREST_TRUST_RECORD_TYPE_LAST ( 3 )
764 struct lsa_ForestTrustRecord
{
766 enum lsa_ForestTrustRecordType level
;
768 union lsa_ForestTrustData forest_trust_data
;/* [switch_is(level)] */
771 struct lsa_ForestTrustInformation
{
772 uint32_t count
;/* [range(0,4000)] */
773 struct lsa_ForestTrustRecord
**entries
;/* [unique,size_is(count)] */
779 struct policy_handle
*handle
;/* [ref] */
783 struct policy_handle
*handle
;/* [ref] */
792 struct policy_handle
*handle
;/* [ref] */
802 struct lsa_EnumPrivs
{
804 struct policy_handle
*handle
;/* [ref] */
806 uint32_t *resume_handle
;/* [ref] */
810 struct lsa_PrivArray
*privs
;/* [ref] */
811 uint32_t *resume_handle
;/* [ref] */
818 struct lsa_QuerySecurity
{
820 struct policy_handle
*handle
;/* [ref] */
825 struct sec_desc_buf
**sdbuf
;/* [ref] */
832 struct lsa_SetSecObj
{
834 struct policy_handle
*handle
;/* [ref] */
836 struct sec_desc_buf
*sdbuf
;/* [ref] */
846 struct lsa_ChangePassword
{
854 struct lsa_OpenPolicy
{
856 uint16_t *system_name
;/* [unique] */
857 struct lsa_ObjectAttribute
*attr
;/* [ref] */
858 uint32_t access_mask
;
862 struct policy_handle
*handle
;/* [ref] */
869 struct lsa_QueryInfoPolicy
{
871 struct policy_handle
*handle
;/* [ref] */
872 enum lsa_PolicyInfo level
;
876 union lsa_PolicyInformation
**info
;/* [ref,switch_is(level)] */
883 struct lsa_SetInfoPolicy
{
885 struct policy_handle
*handle
;/* [ref] */
886 enum lsa_PolicyInfo level
;
887 union lsa_PolicyInformation
*info
;/* [ref,switch_is(level)] */
897 struct lsa_ClearAuditLog
{
905 struct lsa_CreateAccount
{
907 struct policy_handle
*handle
;/* [ref] */
908 struct dom_sid2
*sid
;/* [ref] */
909 uint32_t access_mask
;
913 struct policy_handle
*acct_handle
;/* [ref] */
920 struct lsa_EnumAccounts
{
922 struct policy_handle
*handle
;/* [ref] */
923 uint32_t num_entries
;/* [range(0,8192)] */
924 uint32_t *resume_handle
;/* [ref] */
928 struct lsa_SidArray
*sids
;/* [ref] */
929 uint32_t *resume_handle
;/* [ref] */
936 struct lsa_CreateTrustedDomain
{
938 struct policy_handle
*policy_handle
;/* [ref] */
939 struct lsa_DomainInfo
*info
;/* [ref] */
940 uint32_t access_mask
;
944 struct policy_handle
*trustdom_handle
;/* [ref] */
951 struct lsa_EnumTrustDom
{
953 struct policy_handle
*handle
;/* [ref] */
955 uint32_t *resume_handle
;/* [ref] */
959 struct lsa_DomainList
*domains
;/* [ref] */
960 uint32_t *resume_handle
;/* [ref] */
967 struct lsa_LookupNames
{
969 struct policy_handle
*handle
;/* [ref] */
970 uint32_t num_names
;/* [range(0,1000)] */
971 struct lsa_String
*names
;/* [size_is(num_names)] */
972 enum lsa_LookupNamesLevel level
;
973 struct lsa_TransSidArray
*sids
;/* [ref] */
974 uint32_t *count
;/* [ref] */
978 struct lsa_RefDomainList
**domains
;/* [ref] */
979 struct lsa_TransSidArray
*sids
;/* [ref] */
980 uint32_t *count
;/* [ref] */
987 struct lsa_LookupSids
{
989 struct policy_handle
*handle
;/* [ref] */
990 struct lsa_SidArray
*sids
;/* [ref] */
991 enum lsa_LookupNamesLevel level
;
992 struct lsa_TransNameArray
*names
;/* [ref] */
993 uint32_t *count
;/* [ref] */
997 struct lsa_RefDomainList
**domains
;/* [ref] */
998 struct lsa_TransNameArray
*names
;/* [ref] */
999 uint32_t *count
;/* [ref] */
1006 struct lsa_CreateSecret
{
1008 struct policy_handle
*handle
;/* [ref] */
1009 struct lsa_String name
;
1010 uint32_t access_mask
;
1014 struct policy_handle
*sec_handle
;/* [ref] */
1021 struct lsa_OpenAccount
{
1023 struct policy_handle
*handle
;/* [ref] */
1024 struct dom_sid2
*sid
;/* [ref] */
1025 uint32_t access_mask
;
1029 struct policy_handle
*acct_handle
;/* [ref] */
1036 struct lsa_EnumPrivsAccount
{
1038 struct policy_handle
*handle
;/* [ref] */
1042 struct lsa_PrivilegeSet
**privs
;/* [ref] */
1049 struct lsa_AddPrivilegesToAccount
{
1051 struct policy_handle
*handle
;/* [ref] */
1052 struct lsa_PrivilegeSet
*privs
;/* [ref] */
1062 struct lsa_RemovePrivilegesFromAccount
{
1064 struct policy_handle
*handle
;/* [ref] */
1066 struct lsa_PrivilegeSet
*privs
;/* [unique] */
1076 struct lsa_GetQuotasForAccount
{
1084 struct lsa_SetQuotasForAccount
{
1092 struct lsa_GetSystemAccessAccount
{
1094 struct policy_handle
*handle
;/* [ref] */
1098 uint32_t *access_mask
;/* [ref] */
1105 struct lsa_SetSystemAccessAccount
{
1107 struct policy_handle
*handle
;/* [ref] */
1108 uint32_t access_mask
;
1118 struct lsa_OpenTrustedDomain
{
1120 struct policy_handle
*handle
;/* [ref] */
1121 struct dom_sid2
*sid
;/* [ref] */
1122 uint32_t access_mask
;
1126 struct policy_handle
*trustdom_handle
;/* [ref] */
1133 struct lsa_QueryTrustedDomainInfo
{
1135 struct policy_handle
*trustdom_handle
;/* [ref] */
1136 enum lsa_TrustDomInfoEnum level
;
1140 union lsa_TrustedDomainInfo
**info
;/* [ref,switch_is(level)] */
1147 struct lsa_SetInformationTrustedDomain
{
1149 struct policy_handle
*trustdom_handle
;/* [ref] */
1150 enum lsa_TrustDomInfoEnum level
;
1151 union lsa_TrustedDomainInfo
*info
;/* [ref,switch_is(level)] */
1161 struct lsa_OpenSecret
{
1163 struct policy_handle
*handle
;/* [ref] */
1164 struct lsa_String name
;
1165 uint32_t access_mask
;
1169 struct policy_handle
*sec_handle
;/* [ref] */
1176 struct lsa_SetSecret
{
1178 struct policy_handle
*sec_handle
;/* [ref] */
1179 struct lsa_DATA_BUF
*new_val
;/* [unique] */
1180 struct lsa_DATA_BUF
*old_val
;/* [unique] */
1190 struct lsa_QuerySecret
{
1192 struct policy_handle
*sec_handle
;/* [ref] */
1193 struct lsa_DATA_BUF_PTR
*new_val
;/* [unique] */
1194 NTTIME
*new_mtime
;/* [unique] */
1195 struct lsa_DATA_BUF_PTR
*old_val
;/* [unique] */
1196 NTTIME
*old_mtime
;/* [unique] */
1200 struct lsa_DATA_BUF_PTR
*new_val
;/* [unique] */
1201 NTTIME
*new_mtime
;/* [unique] */
1202 struct lsa_DATA_BUF_PTR
*old_val
;/* [unique] */
1203 NTTIME
*old_mtime
;/* [unique] */
1210 struct lsa_LookupPrivValue
{
1212 struct policy_handle
*handle
;/* [ref] */
1213 struct lsa_String
*name
;/* [ref] */
1217 struct lsa_LUID
*luid
;/* [ref] */
1224 struct lsa_LookupPrivName
{
1226 struct policy_handle
*handle
;/* [ref] */
1227 struct lsa_LUID
*luid
;/* [ref] */
1231 struct lsa_StringLarge
**name
;/* [ref] */
1238 struct lsa_LookupPrivDisplayName
{
1240 struct policy_handle
*handle
;/* [ref] */
1241 struct lsa_String
*name
;/* [ref] */
1242 uint16_t language_id
;
1243 uint16_t language_id_sys
;
1247 struct lsa_StringLarge
**disp_name
;/* [ref] */
1248 uint16_t *returned_language_id
;/* [ref] */
1255 struct lsa_DeleteObject
{
1257 struct policy_handle
*handle
;/* [ref] */
1261 struct policy_handle
*handle
;/* [ref] */
1268 struct lsa_EnumAccountsWithUserRight
{
1270 struct policy_handle
*handle
;/* [ref] */
1271 struct lsa_String
*name
;/* [unique] */
1275 struct lsa_SidArray
*sids
;/* [ref] */
1282 struct lsa_EnumAccountRights
{
1284 struct policy_handle
*handle
;/* [ref] */
1285 struct dom_sid2
*sid
;/* [ref] */
1289 struct lsa_RightSet
*rights
;/* [ref] */
1296 struct lsa_AddAccountRights
{
1298 struct policy_handle
*handle
;/* [ref] */
1299 struct dom_sid2
*sid
;/* [ref] */
1300 struct lsa_RightSet
*rights
;/* [ref] */
1310 struct lsa_RemoveAccountRights
{
1312 struct policy_handle
*handle
;/* [ref] */
1313 struct dom_sid2
*sid
;/* [ref] */
1315 struct lsa_RightSet
*rights
;/* [ref] */
1325 struct lsa_QueryTrustedDomainInfoBySid
{
1327 struct policy_handle
*handle
;/* [ref] */
1328 struct dom_sid2
*dom_sid
;/* [ref] */
1329 enum lsa_TrustDomInfoEnum level
;
1333 union lsa_TrustedDomainInfo
**info
;/* [ref,switch_is(level)] */
1340 struct lsa_SetTrustedDomainInfo
{
1342 struct policy_handle
*handle
;/* [ref] */
1343 struct dom_sid2
*dom_sid
;/* [ref] */
1344 enum lsa_TrustDomInfoEnum level
;
1345 union lsa_TrustedDomainInfo
*info
;/* [ref,switch_is(level)] */
1355 struct lsa_DeleteTrustedDomain
{
1357 struct policy_handle
*handle
;/* [ref] */
1358 struct dom_sid2
*dom_sid
;/* [ref] */
1368 struct lsa_StorePrivateData
{
1370 struct policy_handle
*handle
;/* [ref] */
1371 struct lsa_String
*name
;/* [ref] */
1372 struct lsa_DATA_BUF
*val
;/* [unique] */
1382 struct lsa_RetrievePrivateData
{
1384 struct policy_handle
*handle
;/* [ref] */
1385 struct lsa_String
*name
;/* [ref] */
1386 struct lsa_DATA_BUF
**val
;/* [ref] */
1390 struct lsa_DATA_BUF
**val
;/* [ref] */
1397 struct lsa_OpenPolicy2
{
1399 const char *system_name
;/* [unique,charset(UTF16)] */
1400 struct lsa_ObjectAttribute
*attr
;/* [ref] */
1401 uint32_t access_mask
;
1405 struct policy_handle
*handle
;/* [ref] */
1412 struct lsa_GetUserName
{
1414 const char *system_name
;/* [unique,charset(UTF16)] */
1415 struct lsa_String
**account_name
;/* [ref] */
1416 struct lsa_String
**authority_name
;/* [unique] */
1420 struct lsa_String
**account_name
;/* [ref] */
1421 struct lsa_String
**authority_name
;/* [unique] */
1428 struct lsa_QueryInfoPolicy2
{
1430 struct policy_handle
*handle
;/* [ref] */
1431 enum lsa_PolicyInfo level
;
1435 union lsa_PolicyInformation
**info
;/* [ref,switch_is(level)] */
1442 struct lsa_SetInfoPolicy2
{
1444 struct policy_handle
*handle
;/* [ref] */
1445 enum lsa_PolicyInfo level
;
1446 union lsa_PolicyInformation
*info
;/* [ref,switch_is(level)] */
1456 struct lsa_QueryTrustedDomainInfoByName
{
1458 struct policy_handle
*handle
;/* [ref] */
1459 struct lsa_String
*trusted_domain
;/* [ref] */
1460 enum lsa_TrustDomInfoEnum level
;
1464 union lsa_TrustedDomainInfo
**info
;/* [ref,switch_is(level)] */
1471 struct lsa_SetTrustedDomainInfoByName
{
1473 struct policy_handle
*handle
;/* [ref] */
1474 struct lsa_String trusted_domain
;
1475 enum lsa_TrustDomInfoEnum level
;
1476 union lsa_TrustedDomainInfo
*info
;/* [unique,switch_is(level)] */
1486 struct lsa_EnumTrustedDomainsEx
{
1488 struct policy_handle
*handle
;/* [ref] */
1490 uint32_t *resume_handle
;/* [ref] */
1494 struct lsa_DomainListEx
*domains
;/* [ref] */
1495 uint32_t *resume_handle
;/* [ref] */
1502 struct lsa_CreateTrustedDomainEx
{
1504 struct policy_handle
*policy_handle
;/* [ref] */
1505 struct lsa_TrustDomainInfoInfoEx
*info
;/* [ref] */
1506 struct lsa_TrustDomainInfoAuthInfoInternal
*auth_info
;/* [ref] */
1507 uint32_t access_mask
;
1511 struct policy_handle
*trustdom_handle
;/* [ref] */
1518 struct lsa_CloseTrustedDomainEx
{
1520 struct policy_handle
*handle
;/* [ref] */
1524 struct policy_handle
*handle
;/* [ref] */
1531 struct lsa_QueryDomainInformationPolicy
{
1533 struct policy_handle
*handle
;/* [ref] */
1538 union lsa_DomainInformationPolicy
**info
;/* [ref,switch_is(level)] */
1545 struct lsa_SetDomainInformationPolicy
{
1547 struct policy_handle
*handle
;/* [ref] */
1549 union lsa_DomainInformationPolicy
*info
;/* [unique,switch_is(level)] */
1559 struct lsa_OpenTrustedDomainByName
{
1561 struct policy_handle
*handle
;/* [ref] */
1562 struct lsa_String name
;
1563 uint32_t access_mask
;
1567 struct policy_handle
*trustdom_handle
;/* [ref] */
1574 struct lsa_TestCall
{
1582 struct lsa_LookupSids2
{
1584 struct policy_handle
*handle
;/* [ref] */
1585 struct lsa_SidArray
*sids
;/* [ref] */
1586 enum lsa_LookupNamesLevel level
;
1587 enum lsa_LookupOptions lookup_options
;
1588 enum lsa_ClientRevision client_revision
;
1589 struct lsa_TransNameArray2
*names
;/* [ref] */
1590 uint32_t *count
;/* [ref] */
1594 struct lsa_RefDomainList
**domains
;/* [ref] */
1595 struct lsa_TransNameArray2
*names
;/* [ref] */
1596 uint32_t *count
;/* [ref] */
1603 struct lsa_LookupNames2
{
1605 struct policy_handle
*handle
;/* [ref] */
1606 uint32_t num_names
;/* [range(0,1000)] */
1607 struct lsa_String
*names
;/* [size_is(num_names)] */
1608 enum lsa_LookupNamesLevel level
;
1609 enum lsa_LookupOptions lookup_options
;
1610 enum lsa_ClientRevision client_revision
;
1611 struct lsa_TransSidArray2
*sids
;/* [ref] */
1612 uint32_t *count
;/* [ref] */
1616 struct lsa_RefDomainList
**domains
;/* [ref] */
1617 struct lsa_TransSidArray2
*sids
;/* [ref] */
1618 uint32_t *count
;/* [ref] */
1625 struct lsa_CreateTrustedDomainEx2
{
1627 struct policy_handle
*policy_handle
;/* [ref] */
1628 struct lsa_TrustDomainInfoInfoEx
*info
;/* [ref] */
1629 struct lsa_TrustDomainInfoAuthInfoInternal
*auth_info
;/* [ref] */
1630 uint32_t access_mask
;
1634 struct policy_handle
*trustdom_handle
;/* [ref] */
1641 struct lsa_CREDRWRITE
{
1649 struct lsa_CREDRREAD
{
1657 struct lsa_CREDRENUMERATE
{
1665 struct lsa_CREDRWRITEDOMAINCREDENTIALS
{
1673 struct lsa_CREDRREADDOMAINCREDENTIALS
{
1681 struct lsa_CREDRDELETE
{
1689 struct lsa_CREDRGETTARGETINFO
{
1697 struct lsa_CREDRPROFILELOADED
{
1705 struct lsa_LookupNames3
{
1707 struct policy_handle
*handle
;/* [ref] */
1708 uint32_t num_names
;/* [range(0,1000)] */
1709 struct lsa_String
*names
;/* [size_is(num_names)] */
1710 enum lsa_LookupNamesLevel level
;
1711 enum lsa_LookupOptions lookup_options
;
1712 enum lsa_ClientRevision client_revision
;
1713 struct lsa_TransSidArray3
*sids
;/* [ref] */
1714 uint32_t *count
;/* [ref] */
1718 struct lsa_RefDomainList
**domains
;/* [ref] */
1719 struct lsa_TransSidArray3
*sids
;/* [ref] */
1720 uint32_t *count
;/* [ref] */
1727 struct lsa_CREDRGETSESSIONTYPES
{
1735 struct lsa_LSARREGISTERAUDITEVENT
{
1743 struct lsa_LSARGENAUDITEVENT
{
1751 struct lsa_LSARUNREGISTERAUDITEVENT
{
1759 struct lsa_lsaRQueryForestTrustInformation
{
1761 struct policy_handle
*handle
;/* [ref] */
1762 struct lsa_String
*trusted_domain_name
;/* [ref] */
1767 struct lsa_ForestTrustInformation
**forest_trust_info
;/* [ref] */
1774 struct lsa_LSARSETFORESTTRUSTINFORMATION
{
1782 struct lsa_CREDRRENAME
{
1790 struct lsa_LookupSids3
{
1792 struct lsa_SidArray
*sids
;/* [ref] */
1793 enum lsa_LookupNamesLevel level
;
1794 enum lsa_LookupOptions lookup_options
;
1795 enum lsa_ClientRevision client_revision
;
1796 struct lsa_TransNameArray2
*names
;/* [ref] */
1797 uint32_t *count
;/* [ref] */
1801 struct lsa_RefDomainList
**domains
;/* [ref] */
1802 struct lsa_TransNameArray2
*names
;/* [ref] */
1803 uint32_t *count
;/* [ref] */
1810 struct lsa_LookupNames4
{
1812 uint32_t num_names
;/* [range(0,1000)] */
1813 struct lsa_String
*names
;/* [size_is(num_names)] */
1814 enum lsa_LookupNamesLevel level
;
1815 enum lsa_LookupOptions lookup_options
;
1816 enum lsa_ClientRevision client_revision
;
1817 struct lsa_TransSidArray3
*sids
;/* [ref] */
1818 uint32_t *count
;/* [ref] */
1822 struct lsa_RefDomainList
**domains
;/* [ref] */
1823 struct lsa_TransSidArray3
*sids
;/* [ref] */
1824 uint32_t *count
;/* [ref] */
1831 struct lsa_LSAROPENPOLICYSCE
{
1839 struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE
{
1847 struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE
{
1855 struct lsa_LSARADTREPORTSECURITYEVENT
{
1862 #endif /* _HEADER_lsarpc */