1 /* header auto-generated by pidl */
5 #include "librpc/gen_ndr/security.h"
9 #define LSA_ENUM_TRUST_DOMAIN_MULTIPLIER ( 60 )
10 #define LSA_REF_DOMAIN_LIST_MULTIPLIER ( 32 )
11 #define LSA_ENUM_TRUST_DOMAIN_EX_MULTIPLIER ( 82 )
13 uint16_t length;/* [value(2*strlen_m(string))] */
14 uint16_t size;/* [value(2*strlen_m(string))] */
15 const char *string;/* [unique,charset(UTF16),length_is(length/2),size_is(size/2)] */
16 }/* [public,noejs] */;
18 struct lsa_StringLarge {
19 uint16_t length;/* [value(2*strlen_m(string))] */
20 uint16_t size;/* [value(2*(strlen_m(string)+1))] */
21 const char *string;/* [unique,charset(UTF16),length_is(length/2),size_is(size/2)] */
26 struct lsa_String *names;/* [unique,size_is(count)] */
29 struct lsa_AsciiString {
30 uint16_t length;/* [value(strlen_m(string))] */
31 uint16_t size;/* [value(strlen_m(string))] */
32 const char * string;/* [unique,flag(LIBNDR_FLAG_STR_NOTERM|LIBNDR_FLAG_STR_ASCII|LIBNDR_FLAG_STR_SIZE4|LIBNDR_FLAG_STR_LEN4)] */
40 struct lsa_PrivEntry {
41 struct lsa_StringLarge name;
45 struct lsa_PrivArray {
47 struct lsa_PrivEntry *privs;/* [unique,size_is(count)] */
52 uint16_t impersonation_level;
54 uint8_t effective_only;
57 struct lsa_ObjectAttribute {
59 uint8_t *root_dir;/* [unique] */
60 const char *object_name;/* [unique,charset(UTF16)] */
62 struct security_descriptor *sec_desc;/* [unique] */
63 struct lsa_QosInfo *sec_qos;/* [unique] */
66 struct lsa_AuditLogInfo {
67 uint32_t percent_full;
69 NTTIME retention_time;
70 uint8_t shutdown_in_progress;
71 NTTIME time_to_shutdown;
72 uint32_t next_audit_record;
76 enum lsa_PolicyAuditPolicy
77 #ifndef USE_UINT_ENUMS
79 LSA_AUDIT_POLICY_NONE=0,
80 LSA_AUDIT_POLICY_SUCCESS=1,
81 LSA_AUDIT_POLICY_FAILURE=2,
82 LSA_AUDIT_POLICY_ALL=(LSA_AUDIT_POLICY_SUCCESS|LSA_AUDIT_POLICY_FAILURE),
83 LSA_AUDIT_POLICY_CLEAR=4
86 { __donnot_use_enum_lsa_PolicyAuditPolicy=0x7FFFFFFF}
87 #define LSA_AUDIT_POLICY_NONE ( 0 )
88 #define LSA_AUDIT_POLICY_SUCCESS ( 1 )
89 #define LSA_AUDIT_POLICY_FAILURE ( 2 )
90 #define LSA_AUDIT_POLICY_ALL ( (LSA_AUDIT_POLICY_SUCCESS|LSA_AUDIT_POLICY_FAILURE) )
91 #define LSA_AUDIT_POLICY_CLEAR ( 4 )
95 enum lsa_PolicyAuditEventType
96 #ifndef USE_UINT_ENUMS
98 LSA_AUDIT_CATEGORY_SYSTEM=0,
99 LSA_AUDIT_CATEGORY_LOGON=1,
100 LSA_AUDIT_CATEGORY_FILE_AND_OBJECT_ACCESS=2,
101 LSA_AUDIT_CATEGORY_USE_OF_USER_RIGHTS=3,
102 LSA_AUDIT_CATEGORY_PROCCESS_TRACKING=4,
103 LSA_AUDIT_CATEGORY_SECURITY_POLICY_CHANGES=5,
104 LSA_AUDIT_CATEGORY_ACCOUNT_MANAGEMENT=6,
105 LSA_AUDIT_CATEGORY_DIRECTORY_SERVICE_ACCESS=7,
106 LSA_AUDIT_CATEGORY_ACCOUNT_LOGON=8
109 { __donnot_use_enum_lsa_PolicyAuditEventType=0x7FFFFFFF}
110 #define LSA_AUDIT_CATEGORY_SYSTEM ( 0 )
111 #define LSA_AUDIT_CATEGORY_LOGON ( 1 )
112 #define LSA_AUDIT_CATEGORY_FILE_AND_OBJECT_ACCESS ( 2 )
113 #define LSA_AUDIT_CATEGORY_USE_OF_USER_RIGHTS ( 3 )
114 #define LSA_AUDIT_CATEGORY_PROCCESS_TRACKING ( 4 )
115 #define LSA_AUDIT_CATEGORY_SECURITY_POLICY_CHANGES ( 5 )
116 #define LSA_AUDIT_CATEGORY_ACCOUNT_MANAGEMENT ( 6 )
117 #define LSA_AUDIT_CATEGORY_DIRECTORY_SERVICE_ACCESS ( 7 )
118 #define LSA_AUDIT_CATEGORY_ACCOUNT_LOGON ( 8 )
122 struct lsa_AuditEventsInfo {
123 uint32_t auditing_mode;
124 enum lsa_PolicyAuditPolicy *settings;/* [unique,size_is(count)] */
128 struct lsa_DomainInfo {
129 struct lsa_StringLarge name;
130 struct dom_sid2 *sid;/* [unique] */
133 struct lsa_PDAccountInfo {
134 struct lsa_String name;
137 struct lsa_ServerRole {
142 struct lsa_ReplicaSourceInfo {
143 struct lsa_String source;
144 struct lsa_String account;
147 struct lsa_DefaultQuotaInfo {
149 uint32_t non_paged_pool;
156 struct lsa_ModificationInfo {
157 uint64_t modified_id;
158 NTTIME db_create_time;
161 struct lsa_AuditFullSetInfo {
162 uint8_t shutdown_on_full;
165 struct lsa_AuditFullQueryInfo {
167 uint8_t shutdown_on_full;
171 struct lsa_DnsDomainInfo {
172 struct lsa_StringLarge name;
173 struct lsa_StringLarge dns_domain;
174 struct lsa_StringLarge dns_forest;
175 struct GUID domain_guid;
176 struct dom_sid2 *sid;/* [unique] */
180 #ifndef USE_UINT_ENUMS
182 LSA_POLICY_INFO_AUDIT_LOG=1,
183 LSA_POLICY_INFO_AUDIT_EVENTS=2,
184 LSA_POLICY_INFO_DOMAIN=3,
185 LSA_POLICY_INFO_PD=4,
186 LSA_POLICY_INFO_ACCOUNT_DOMAIN=5,
187 LSA_POLICY_INFO_ROLE=6,
188 LSA_POLICY_INFO_REPLICA=7,
189 LSA_POLICY_INFO_QUOTA=8,
190 LSA_POLICY_INFO_DB=9,
191 LSA_POLICY_INFO_AUDIT_FULL_SET=10,
192 LSA_POLICY_INFO_AUDIT_FULL_QUERY=11,
193 LSA_POLICY_INFO_DNS=12
196 { __donnot_use_enum_lsa_PolicyInfo=0x7FFFFFFF}
197 #define LSA_POLICY_INFO_AUDIT_LOG ( 1 )
198 #define LSA_POLICY_INFO_AUDIT_EVENTS ( 2 )
199 #define LSA_POLICY_INFO_DOMAIN ( 3 )
200 #define LSA_POLICY_INFO_PD ( 4 )
201 #define LSA_POLICY_INFO_ACCOUNT_DOMAIN ( 5 )
202 #define LSA_POLICY_INFO_ROLE ( 6 )
203 #define LSA_POLICY_INFO_REPLICA ( 7 )
204 #define LSA_POLICY_INFO_QUOTA ( 8 )
205 #define LSA_POLICY_INFO_DB ( 9 )
206 #define LSA_POLICY_INFO_AUDIT_FULL_SET ( 10 )
207 #define LSA_POLICY_INFO_AUDIT_FULL_QUERY ( 11 )
208 #define LSA_POLICY_INFO_DNS ( 12 )
212 union lsa_PolicyInformation {
213 struct lsa_AuditLogInfo audit_log;/* [case(LSA_POLICY_INFO_AUDIT_LOG)] */
214 struct lsa_AuditEventsInfo audit_events;/* [case(LSA_POLICY_INFO_AUDIT_EVENTS)] */
215 struct lsa_DomainInfo domain;/* [case(LSA_POLICY_INFO_DOMAIN)] */
216 struct lsa_PDAccountInfo pd;/* [case(LSA_POLICY_INFO_PD)] */
217 struct lsa_DomainInfo account_domain;/* [case(LSA_POLICY_INFO_ACCOUNT_DOMAIN)] */
218 struct lsa_ServerRole role;/* [case(LSA_POLICY_INFO_ROLE)] */
219 struct lsa_ReplicaSourceInfo replica;/* [case(LSA_POLICY_INFO_REPLICA)] */
220 struct lsa_DefaultQuotaInfo quota;/* [case(LSA_POLICY_INFO_QUOTA)] */
221 struct lsa_ModificationInfo db;/* [case(LSA_POLICY_INFO_DB)] */
222 struct lsa_AuditFullSetInfo auditfullset;/* [case(LSA_POLICY_INFO_AUDIT_FULL_SET)] */
223 struct lsa_AuditFullQueryInfo auditfullquery;/* [case(LSA_POLICY_INFO_AUDIT_FULL_QUERY)] */
224 struct lsa_DnsDomainInfo dns;/* [case(LSA_POLICY_INFO_DNS)] */
225 }/* [switch_type(uint16)] */;
228 struct dom_sid2 *sid;/* [unique] */
231 struct lsa_SidArray {
232 uint32_t num_sids;/* [range(0,1000)] */
233 struct lsa_SidPtr *sids;/* [unique,size_is(num_sids)] */
236 struct lsa_DomainList {
238 struct lsa_DomainInfo *domains;/* [unique,size_is(count)] */
242 #ifndef USE_UINT_ENUMS
256 { __donnot_use_enum_lsa_SidType=0x7FFFFFFF}
257 #define SID_NAME_USE_NONE ( 0 )
258 #define SID_NAME_USER ( 1 )
259 #define SID_NAME_DOM_GRP ( 2 )
260 #define SID_NAME_DOMAIN ( 3 )
261 #define SID_NAME_ALIAS ( 4 )
262 #define SID_NAME_WKN_GRP ( 5 )
263 #define SID_NAME_DELETED ( 6 )
264 #define SID_NAME_INVALID ( 7 )
265 #define SID_NAME_UNKNOWN ( 8 )
266 #define SID_NAME_COMPUTER ( 9 )
270 struct lsa_TranslatedSid {
271 enum lsa_SidType sid_type;
276 struct lsa_TransSidArray {
277 uint32_t count;/* [range(0,1000)] */
278 struct lsa_TranslatedSid *sids;/* [unique,size_is(count)] */
281 struct lsa_RefDomainList {
282 uint32_t count;/* [range(0,1000)] */
283 struct lsa_DomainInfo *domains;/* [unique,size_is(count)] */
287 enum lsa_LookupNamesLevel
288 #ifndef USE_UINT_ENUMS
290 LSA_LOOKUP_NAMES_ALL=1,
291 LSA_LOOKUP_NAMES_DOMAINS_ONLY=2,
292 LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY=3,
293 LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY=4,
294 LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY=5,
295 LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2=6
298 { __donnot_use_enum_lsa_LookupNamesLevel=0x7FFFFFFF}
299 #define LSA_LOOKUP_NAMES_ALL ( 1 )
300 #define LSA_LOOKUP_NAMES_DOMAINS_ONLY ( 2 )
301 #define LSA_LOOKUP_NAMES_PRIMARY_DOMAIN_ONLY ( 3 )
302 #define LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY ( 4 )
303 #define LSA_LOOKUP_NAMES_FOREST_TRUSTS_ONLY ( 5 )
304 #define LSA_LOOKUP_NAMES_UPLEVEL_TRUSTS_ONLY2 ( 6 )
308 struct lsa_TranslatedName {
309 enum lsa_SidType sid_type;
310 struct lsa_String name;
314 struct lsa_TransNameArray {
315 uint32_t count;/* [range(0,1000)] */
316 struct lsa_TranslatedName *names;/* [unique,size_is(count)] */
319 struct lsa_LUIDAttribute {
320 struct lsa_LUID luid;
324 struct lsa_PrivilegeSet {
325 uint32_t count;/* [range(0,1000)] */
327 struct lsa_LUIDAttribute *set;/* [size_is(count)] */
330 struct lsa_DATA_BUF {
333 uint8_t *data;/* [unique,length_is(length),size_is(size)] */
334 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
336 struct lsa_DATA_BUF2 {
337 uint32_t size;/* [range(0,65536)] */
338 uint8_t *data;/* [unique,size_is(size)] */
339 }/* [flag(LIBNDR_PRINT_ARRAY_HEX)] */;
341 enum lsa_TrustDomInfoEnum
342 #ifndef USE_UINT_ENUMS
344 LSA_TRUSTED_DOMAIN_INFO_NAME=1,
345 LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS_INFO=2,
346 LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET=3,
347 LSA_TRUSTED_DOMAIN_INFO_PASSWORD=4,
348 LSA_TRUSTED_DOMAIN_INFO_BASIC=5,
349 LSA_TRUSTED_DOMAIN_INFO_INFO_EX=6,
350 LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO=7,
351 LSA_TRUSTED_DOMAIN_INFO_FULL_INFO=8,
352 LSA_TRUSTED_DOMAIN_INFO_11=11,
353 LSA_TRUSTED_DOMAIN_INFO_INFO_ALL=12
356 { __donnot_use_enum_lsa_TrustDomInfoEnum=0x7FFFFFFF}
357 #define LSA_TRUSTED_DOMAIN_INFO_NAME ( 1 )
358 #define LSA_TRUSTED_DOMAIN_INFO_CONTROLLERS_INFO ( 2 )
359 #define LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET ( 3 )
360 #define LSA_TRUSTED_DOMAIN_INFO_PASSWORD ( 4 )
361 #define LSA_TRUSTED_DOMAIN_INFO_BASIC ( 5 )
362 #define LSA_TRUSTED_DOMAIN_INFO_INFO_EX ( 6 )
363 #define LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO ( 7 )
364 #define LSA_TRUSTED_DOMAIN_INFO_FULL_INFO ( 8 )
365 #define LSA_TRUSTED_DOMAIN_INFO_11 ( 11 )
366 #define LSA_TRUSTED_DOMAIN_INFO_INFO_ALL ( 12 )
370 struct lsa_TrustDomainInfoName {
371 struct lsa_StringLarge netbios_name;
374 struct lsa_TrustDomainInfoPosixOffset {
375 uint32_t posix_offset;
378 struct lsa_TrustDomainInfoPassword {
379 struct lsa_DATA_BUF *password;/* [unique] */
380 struct lsa_DATA_BUF *old_password;/* [unique] */
383 struct lsa_TrustDomainInfoBasic {
384 struct lsa_String netbios_name;
385 struct dom_sid2 *sid;/* [unique] */
388 struct lsa_TrustDomainInfoInfoEx {
389 struct lsa_StringLarge domain_name;
390 struct lsa_StringLarge netbios_name;
391 struct dom_sid2 *sid;/* [unique] */
392 uint32_t trust_direction;
394 uint32_t trust_attributes;
397 struct lsa_TrustDomainInfoBuffer {
398 NTTIME last_update_time;
399 uint32_t secret_type;
400 struct lsa_DATA_BUF2 data;
403 struct lsa_TrustDomainInfoAuthInfo {
404 uint32_t incoming_count;
405 struct lsa_TrustDomainInfoBuffer *incoming_current_auth_info;/* [unique] */
406 struct lsa_TrustDomainInfoBuffer *incoming_previous_auth_info;/* [unique] */
407 uint32_t outgoing_count;
408 struct lsa_TrustDomainInfoBuffer *outgoing_current_auth_info;/* [unique] */
409 struct lsa_TrustDomainInfoBuffer *outgoing_previous_auth_info;/* [unique] */
412 struct lsa_TrustDomainInfoFullInfo {
413 struct lsa_TrustDomainInfoInfoEx info_ex;
414 struct lsa_TrustDomainInfoPosixOffset posix_offset;
415 struct lsa_TrustDomainInfoAuthInfo auth_info;
418 struct lsa_TrustDomainInfo11 {
419 struct lsa_TrustDomainInfoInfoEx info_ex;
420 struct lsa_DATA_BUF2 data1;
423 struct lsa_TrustDomainInfoInfoAll {
424 struct lsa_TrustDomainInfoInfoEx info_ex;
425 struct lsa_DATA_BUF2 data1;
426 struct lsa_TrustDomainInfoPosixOffset posix_offset;
427 struct lsa_TrustDomainInfoAuthInfo auth_info;
430 union lsa_TrustedDomainInfo {
431 struct lsa_TrustDomainInfoName name;/* [case(LSA_TRUSTED_DOMAIN_INFO_NAME)] */
432 struct lsa_TrustDomainInfoPosixOffset posix_offset;/* [case(LSA_TRUSTED_DOMAIN_INFO_POSIX_OFFSET)] */
433 struct lsa_TrustDomainInfoPassword password;/* [case(LSA_TRUSTED_DOMAIN_INFO_PASSWORD)] */
434 struct lsa_TrustDomainInfoBasic info_basic;/* [case(LSA_TRUSTED_DOMAIN_INFO_BASIC)] */
435 struct lsa_TrustDomainInfoInfoEx info_ex;/* [case(LSA_TRUSTED_DOMAIN_INFO_INFO_EX)] */
436 struct lsa_TrustDomainInfoAuthInfo auth_info;/* [case(LSA_TRUSTED_DOMAIN_INFO_AUTH_INFO)] */
437 struct lsa_TrustDomainInfoFullInfo full_info;/* [case(LSA_TRUSTED_DOMAIN_INFO_FULL_INFO)] */
438 struct lsa_TrustDomainInfo11 info11;/* [case(LSA_TRUSTED_DOMAIN_INFO_11)] */
439 struct lsa_TrustDomainInfoInfoAll info_all;/* [case(LSA_TRUSTED_DOMAIN_INFO_INFO_ALL)] */
440 }/* [switch_type(lsa_TrustDomInfoEnum)] */;
442 struct lsa_DATA_BUF_PTR {
443 struct lsa_DATA_BUF *buf;/* [unique] */
446 struct lsa_RightAttribute {
447 const char *name;/* [unique,charset(UTF16)] */
450 struct lsa_RightSet {
452 struct lsa_StringLarge *names;/* [unique,size_is(count)] */
455 struct lsa_StringPointer {
456 struct lsa_String *string;/* [unique] */
459 struct lsa_DomainListEx {
461 struct lsa_TrustDomainInfoInfoEx *domains;/* [unique,size_is(count)] */
464 struct lsa_DomainInfoKerberos {
465 uint32_t enforce_restrictions;
466 uint64_t service_tkt_lifetime;
467 uint64_t user_tkt_lifetime;
468 uint64_t user_tkt_renewaltime;
473 struct lsa_DomainInfoEfs {
475 uint8_t *efs_blob;/* [unique,size_is(blob_size)] */
478 enum lsa_DomainInfoEnum
479 #ifndef USE_UINT_ENUMS
481 LSA_DOMAIN_INFO_POLICY_EFS=2,
482 LSA_DOMAIN_INFO_POLICY_KERBEROS=3
485 { __donnot_use_enum_lsa_DomainInfoEnum=0x7FFFFFFF}
486 #define LSA_DOMAIN_INFO_POLICY_EFS ( 2 )
487 #define LSA_DOMAIN_INFO_POLICY_KERBEROS ( 3 )
491 union lsa_DomainInformationPolicy {
492 struct lsa_DomainInfoEfs efs_info;/* [case(LSA_DOMAIN_INFO_POLICY_EFS)] */
493 struct lsa_DomainInfoKerberos kerberos_info;/* [case(LSA_DOMAIN_INFO_POLICY_KERBEROS)] */
494 }/* [switch_type(uint16)] */;
496 struct lsa_TranslatedName2 {
497 enum lsa_SidType sid_type;
498 struct lsa_String name;
503 struct lsa_TransNameArray2 {
504 uint32_t count;/* [range(0,1000)] */
505 struct lsa_TranslatedName2 *names;/* [unique,size_is(count)] */
508 struct lsa_TranslatedSid2 {
509 enum lsa_SidType sid_type;
515 struct lsa_TransSidArray2 {
516 uint32_t count;/* [range(0,1000)] */
517 struct lsa_TranslatedSid2 *sids;/* [unique,size_is(count)] */
520 struct lsa_TranslatedSid3 {
521 enum lsa_SidType sid_type;
522 struct dom_sid2 *sid;/* [unique] */
527 struct lsa_TransSidArray3 {
528 uint32_t count;/* [range(0,1000)] */
529 struct lsa_TranslatedSid3 *sids;/* [unique,size_is(count)] */
532 struct lsa_ForestTrustBinaryData {
533 uint32_t length;/* [range(0,131072)] */
534 uint8_t *data;/* [unique,size_is(length)] */
537 struct lsa_ForestTrustDomainInfo {
538 struct dom_sid2 *domain_sid;/* [unique] */
539 struct lsa_StringLarge dns_domain_name;
540 struct lsa_StringLarge netbios_domain_name;
543 union lsa_ForestTrustData {
544 struct lsa_String top_level_name;/* [case(LSA_FOREST_TRUST_TOP_LEVEL_NAME)] */
545 struct lsa_StringLarge top_level_name_ex;/* [case(LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX)] */
546 struct lsa_ForestTrustDomainInfo domain_info;/* [case(LSA_FOREST_TRUST_DOMAIN_INFO)] */
547 struct lsa_ForestTrustBinaryData data;/* [default] */
548 }/* [switch_type(uint32)] */;
550 enum lsa_ForestTrustRecordType
551 #ifndef USE_UINT_ENUMS
553 LSA_FOREST_TRUST_TOP_LEVEL_NAME=0,
554 LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX=1,
555 LSA_FOREST_TRUST_DOMAIN_INFO=2,
556 LSA_FOREST_TRUST_RECORD_TYPE_LAST=3
559 { __donnot_use_enum_lsa_ForestTrustRecordType=0x7FFFFFFF}
560 #define LSA_FOREST_TRUST_TOP_LEVEL_NAME ( 0 )
561 #define LSA_FOREST_TRUST_TOP_LEVEL_NAME_EX ( 1 )
562 #define LSA_FOREST_TRUST_DOMAIN_INFO ( 2 )
563 #define LSA_FOREST_TRUST_RECORD_TYPE_LAST ( 3 )
567 struct lsa_ForestTrustRecord {
569 enum lsa_ForestTrustRecordType level;
571 union lsa_ForestTrustData forest_trust_data;/* [switch_is(level)] */
574 struct lsa_ForestTrustInformation {
575 uint32_t count;/* [range(0,4000)] */
576 struct lsa_ForestTrustRecord **entries;/* [unique,size_is(count)] */
582 struct policy_handle *handle;/* [ref] */
586 struct policy_handle *handle;/* [ref] */
595 struct policy_handle *handle;/* [ref] */
605 struct lsa_EnumPrivs {
607 struct policy_handle *handle;/* [ref] */
609 uint32_t *resume_handle;/* [ref] */
613 struct lsa_PrivArray *privs;/* [ref] */
614 uint32_t *resume_handle;/* [ref] */
621 struct lsa_QuerySecurity {
623 struct policy_handle *handle;/* [ref] */
628 struct sec_desc_buf **sdbuf;/* [ref] */
635 struct lsa_SetSecObj {
637 struct policy_handle *handle;/* [ref] */
639 struct sec_desc_buf *sdbuf;/* [ref] */
649 struct lsa_ChangePassword {
657 struct lsa_OpenPolicy {
659 uint16_t *system_name;/* [unique] */
660 struct lsa_ObjectAttribute *attr;/* [ref] */
661 uint32_t access_mask;
665 struct policy_handle *handle;/* [ref] */
672 struct lsa_QueryInfoPolicy {
674 struct policy_handle *handle;/* [ref] */
675 enum lsa_PolicyInfo level;
679 union lsa_PolicyInformation *info;/* [unique,switch_is(level)] */
686 struct lsa_SetInfoPolicy {
688 struct policy_handle *handle;/* [ref] */
689 enum lsa_PolicyInfo level;
690 union lsa_PolicyInformation *info;/* [ref,switch_is(level)] */
700 struct lsa_ClearAuditLog {
708 struct lsa_CreateAccount {
710 struct policy_handle *handle;/* [ref] */
711 struct dom_sid2 *sid;/* [ref] */
712 uint32_t access_mask;
716 struct policy_handle *acct_handle;/* [ref] */
723 struct lsa_EnumAccounts {
725 struct policy_handle *handle;/* [ref] */
726 uint32_t num_entries;/* [range(0,8192)] */
727 uint32_t *resume_handle;/* [ref] */
731 struct lsa_SidArray *sids;/* [ref] */
732 uint32_t *resume_handle;/* [ref] */
739 struct lsa_CreateTrustedDomain {
741 struct policy_handle *handle;/* [ref] */
742 struct lsa_DomainInfo *info;/* [ref] */
743 uint32_t access_mask;
747 struct policy_handle *trustdom_handle;/* [ref] */
754 struct lsa_EnumTrustDom {
756 struct policy_handle *handle;/* [ref] */
758 uint32_t *resume_handle;/* [ref] */
762 struct lsa_DomainList *domains;/* [ref] */
763 uint32_t *resume_handle;/* [ref] */
770 struct lsa_LookupNames {
772 struct policy_handle *handle;/* [ref] */
773 uint32_t num_names;/* [range(0,1000)] */
774 struct lsa_String *names;/* [size_is(num_names)] */
775 enum lsa_LookupNamesLevel level;
776 struct lsa_TransSidArray *sids;/* [ref] */
777 uint32_t *count;/* [ref] */
781 struct lsa_RefDomainList *domains;/* [unique] */
782 struct lsa_TransSidArray *sids;/* [ref] */
783 uint32_t *count;/* [ref] */
790 struct lsa_LookupSids {
792 struct policy_handle *handle;/* [ref] */
793 struct lsa_SidArray *sids;/* [ref] */
795 struct lsa_TransNameArray *names;/* [ref] */
796 uint32_t *count;/* [ref] */
800 struct lsa_RefDomainList *domains;/* [unique] */
801 struct lsa_TransNameArray *names;/* [ref] */
802 uint32_t *count;/* [ref] */
809 struct lsa_CreateSecret {
811 struct policy_handle *handle;/* [ref] */
812 struct lsa_String name;
813 uint32_t access_mask;
817 struct policy_handle *sec_handle;/* [ref] */
824 struct lsa_OpenAccount {
826 struct policy_handle *handle;/* [ref] */
827 struct dom_sid2 *sid;/* [ref] */
828 uint32_t access_mask;
832 struct policy_handle *acct_handle;/* [ref] */
839 struct lsa_EnumPrivsAccount {
841 struct policy_handle *handle;/* [ref] */
845 struct lsa_PrivilegeSet *privs;/* [unique] */
852 struct lsa_AddPrivilegesToAccount {
854 struct policy_handle *handle;/* [ref] */
855 struct lsa_PrivilegeSet *privs;/* [ref] */
865 struct lsa_RemovePrivilegesFromAccount {
867 struct policy_handle *handle;/* [ref] */
869 struct lsa_PrivilegeSet *privs;/* [unique] */
879 struct lsa_GetQuotasForAccount {
887 struct lsa_SetQuotasForAccount {
895 struct lsa_GetSystemAccessAccount {
903 struct lsa_SetSystemAccessAccount {
911 struct lsa_OpenTrustedDomain {
913 struct policy_handle *handle;/* [ref] */
914 struct dom_sid2 *sid;/* [ref] */
915 uint32_t access_mask;
919 struct policy_handle *trustdom_handle;/* [ref] */
926 struct lsa_QueryTrustedDomainInfo {
928 struct policy_handle *trustdom_handle;/* [ref] */
929 enum lsa_TrustDomInfoEnum level;
933 union lsa_TrustedDomainInfo *info;/* [unique,switch_is(level)] */
940 struct lsa_SetInformationTrustedDomain {
948 struct lsa_OpenSecret {
950 struct policy_handle *handle;/* [ref] */
951 struct lsa_String name;
952 uint32_t access_mask;
956 struct policy_handle *sec_handle;/* [ref] */
963 struct lsa_SetSecret {
965 struct policy_handle *sec_handle;/* [ref] */
966 struct lsa_DATA_BUF *new_val;/* [unique] */
967 struct lsa_DATA_BUF *old_val;/* [unique] */
977 struct lsa_QuerySecret {
979 struct policy_handle *sec_handle;/* [ref] */
980 struct lsa_DATA_BUF_PTR *new_val;/* [unique] */
981 NTTIME *new_mtime;/* [unique] */
982 struct lsa_DATA_BUF_PTR *old_val;/* [unique] */
983 NTTIME *old_mtime;/* [unique] */
987 struct lsa_DATA_BUF_PTR *new_val;/* [unique] */
988 NTTIME *new_mtime;/* [unique] */
989 struct lsa_DATA_BUF_PTR *old_val;/* [unique] */
990 NTTIME *old_mtime;/* [unique] */
997 struct lsa_LookupPrivValue {
999 struct policy_handle *handle;/* [ref] */
1000 struct lsa_String *name;/* [ref] */
1004 struct lsa_LUID *luid;/* [ref] */
1011 struct lsa_LookupPrivName {
1013 struct policy_handle *handle;/* [ref] */
1014 struct lsa_LUID *luid;/* [ref] */
1018 struct lsa_StringLarge *name;/* [unique] */
1025 struct lsa_LookupPrivDisplayName {
1027 struct policy_handle *handle;/* [ref] */
1028 struct lsa_String *name;/* [ref] */
1030 uint16_t *language_id;/* [ref] */
1034 struct lsa_StringLarge *disp_name;/* [unique] */
1035 uint16_t *language_id;/* [ref] */
1042 struct lsa_DeleteObject {
1044 struct policy_handle **handle;/* [ref] */
1048 struct policy_handle **handle;/* [ref] */
1055 struct lsa_EnumAccountsWithUserRight {
1057 struct policy_handle *handle;/* [ref] */
1058 struct lsa_String *name;/* [unique] */
1062 struct lsa_SidArray *sids;/* [ref] */
1069 struct lsa_EnumAccountRights {
1071 struct policy_handle *handle;/* [ref] */
1072 struct dom_sid2 *sid;/* [ref] */
1076 struct lsa_RightSet *rights;/* [ref] */
1083 struct lsa_AddAccountRights {
1085 struct policy_handle *handle;/* [ref] */
1086 struct dom_sid2 *sid;/* [ref] */
1087 struct lsa_RightSet *rights;/* [ref] */
1097 struct lsa_RemoveAccountRights {
1099 struct policy_handle *handle;/* [ref] */
1100 struct dom_sid2 *sid;/* [ref] */
1102 struct lsa_RightSet *rights;/* [ref] */
1112 struct lsa_QueryTrustedDomainInfoBySid {
1114 struct policy_handle *handle;/* [ref] */
1115 struct dom_sid2 *dom_sid;/* [ref] */
1116 enum lsa_TrustDomInfoEnum level;
1120 union lsa_TrustedDomainInfo *info;/* [unique,switch_is(level)] */
1127 struct lsa_SetTrustedDomainInfo {
1135 struct lsa_DeleteTrustedDomain {
1137 struct policy_handle *handle;/* [ref] */
1138 struct dom_sid2 *dom_sid;/* [ref] */
1148 struct lsa_StorePrivateData {
1156 struct lsa_RetrievePrivateData {
1164 struct lsa_OpenPolicy2 {
1166 const char *system_name;/* [unique,charset(UTF16)] */
1167 struct lsa_ObjectAttribute *attr;/* [ref] */
1168 uint32_t access_mask;
1172 struct policy_handle *handle;/* [ref] */
1179 struct lsa_GetUserName {
1181 const char *system_name;/* [unique,charset(UTF16)] */
1182 struct lsa_String *account_name;/* [unique] */
1183 struct lsa_StringPointer *authority_name;/* [unique] */
1187 struct lsa_String *account_name;/* [unique] */
1188 struct lsa_StringPointer *authority_name;/* [unique] */
1195 struct lsa_QueryInfoPolicy2 {
1197 struct policy_handle *handle;/* [ref] */
1198 enum lsa_PolicyInfo level;
1202 union lsa_PolicyInformation *info;/* [unique,switch_is(level)] */
1209 struct lsa_SetInfoPolicy2 {
1211 struct policy_handle *handle;/* [ref] */
1212 enum lsa_PolicyInfo level;
1213 union lsa_PolicyInformation *info;/* [ref,switch_is(level)] */
1223 struct lsa_QueryTrustedDomainInfoByName {
1225 struct policy_handle *handle;/* [ref] */
1226 struct lsa_String trusted_domain;
1227 enum lsa_TrustDomInfoEnum level;
1231 union lsa_TrustedDomainInfo *info;/* [unique,switch_is(level)] */
1238 struct lsa_SetTrustedDomainInfoByName {
1240 struct policy_handle *handle;/* [ref] */
1241 struct lsa_String trusted_domain;
1242 enum lsa_TrustDomInfoEnum level;
1243 union lsa_TrustedDomainInfo *info;/* [unique,switch_is(level)] */
1253 struct lsa_EnumTrustedDomainsEx {
1255 struct policy_handle *handle;/* [ref] */
1257 uint32_t *resume_handle;/* [ref] */
1261 struct lsa_DomainListEx *domains;/* [ref] */
1262 uint32_t *resume_handle;/* [ref] */
1269 struct lsa_CreateTrustedDomainEx {
1277 struct lsa_CloseTrustedDomainEx {
1279 struct policy_handle *handle;/* [ref] */
1283 struct policy_handle *handle;/* [ref] */
1290 struct lsa_QueryDomainInformationPolicy {
1292 struct policy_handle *handle;/* [ref] */
1297 union lsa_DomainInformationPolicy *info;/* [unique,switch_is(level)] */
1304 struct lsa_SetDomainInformationPolicy {
1306 struct policy_handle *handle;/* [ref] */
1308 union lsa_DomainInformationPolicy *info;/* [unique,switch_is(level)] */
1318 struct lsa_OpenTrustedDomainByName {
1320 struct policy_handle *handle;/* [ref] */
1321 struct lsa_String name;
1322 uint32_t access_mask;
1326 struct policy_handle *trustdom_handle;/* [ref] */
1333 struct lsa_TestCall {
1341 struct lsa_LookupSids2 {
1343 struct policy_handle *handle;/* [ref] */
1344 struct lsa_SidArray *sids;/* [ref] */
1348 struct lsa_TransNameArray2 *names;/* [ref] */
1349 uint32_t *count;/* [ref] */
1353 struct lsa_RefDomainList *domains;/* [unique] */
1354 struct lsa_TransNameArray2 *names;/* [ref] */
1355 uint32_t *count;/* [ref] */
1362 struct lsa_LookupNames2 {
1364 struct policy_handle *handle;/* [ref] */
1365 uint32_t num_names;/* [range(0,1000)] */
1366 struct lsa_String *names;/* [size_is(num_names)] */
1367 enum lsa_LookupNamesLevel level;
1370 struct lsa_TransSidArray2 *sids;/* [ref] */
1371 uint32_t *count;/* [ref] */
1375 struct lsa_RefDomainList *domains;/* [unique] */
1376 struct lsa_TransSidArray2 *sids;/* [ref] */
1377 uint32_t *count;/* [ref] */
1384 struct lsa_CreateTrustedDomainEx2 {
1392 struct lsa_CREDRWRITE {
1400 struct lsa_CREDRREAD {
1408 struct lsa_CREDRENUMERATE {
1416 struct lsa_CREDRWRITEDOMAINCREDENTIALS {
1424 struct lsa_CREDRREADDOMAINCREDENTIALS {
1432 struct lsa_CREDRDELETE {
1440 struct lsa_CREDRGETTARGETINFO {
1448 struct lsa_CREDRPROFILELOADED {
1456 struct lsa_LookupNames3 {
1458 struct policy_handle *handle;/* [ref] */
1459 uint32_t num_names;/* [range(0,1000)] */
1460 struct lsa_String *names;/* [size_is(num_names)] */
1461 enum lsa_LookupNamesLevel level;
1464 struct lsa_TransSidArray3 *sids;/* [ref] */
1465 uint32_t *count;/* [ref] */
1469 struct lsa_RefDomainList *domains;/* [unique] */
1470 struct lsa_TransSidArray3 *sids;/* [ref] */
1471 uint32_t *count;/* [ref] */
1478 struct lsa_CREDRGETSESSIONTYPES {
1486 struct lsa_LSARREGISTERAUDITEVENT {
1494 struct lsa_LSARGENAUDITEVENT {
1502 struct lsa_LSARUNREGISTERAUDITEVENT {
1510 struct lsa_lsaRQueryForestTrustInformation {
1512 struct policy_handle *handle;/* [ref] */
1513 struct lsa_String *trusted_domain_name;/* [ref] */
1518 struct lsa_ForestTrustInformation **forest_trust_info;/* [ref] */
1525 struct lsa_LSARSETFORESTTRUSTINFORMATION {
1533 struct lsa_CREDRRENAME {
1541 struct lsa_LookupSids3 {
1543 struct lsa_SidArray *sids;/* [ref] */
1547 struct lsa_TransNameArray2 *names;/* [ref] */
1548 uint32_t *count;/* [ref] */
1552 struct lsa_RefDomainList *domains;/* [unique] */
1553 struct lsa_TransNameArray2 *names;/* [ref] */
1554 uint32_t *count;/* [ref] */
1561 struct lsa_LookupNames4 {
1563 uint32_t num_names;/* [range(0,1000)] */
1564 struct lsa_String *names;/* [size_is(num_names)] */
1565 enum lsa_LookupNamesLevel level;
1568 struct lsa_TransSidArray3 *sids;/* [ref] */
1569 uint32_t *count;/* [ref] */
1573 struct lsa_RefDomainList *domains;/* [unique] */
1574 struct lsa_TransSidArray3 *sids;/* [ref] */
1575 uint32_t *count;/* [ref] */
1582 struct lsa_LSAROPENPOLICYSCE {
1590 struct lsa_LSARADTREGISTERSECURITYEVENTSOURCE {
1598 struct lsa_LSARADTUNREGISTERSECURITYEVENTSOURCE {
1606 struct lsa_LSARADTREPORTSECURITYEVENT {
1613 #endif /* _HEADER_lsarpc */