summaryrefslogtreecommitdiff
path: root/source4/librpc/idl
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2004-11-22 11:59:59 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:06:04 -0500
commitb6b61cec790e19862a600b023327d72dd33b3cb4 (patch)
tree93b1cad84ea4092692da82841d8218aa3fc16928 /source4/librpc/idl
parentca751e2638ca0fbb03b54e1aaa4ed1316e903947 (diff)
downloadsamba-b6b61cec790e19862a600b023327d72dd33b3cb4.tar.gz
samba-b6b61cec790e19862a600b023327d72dd33b3cb4.tar.bz2
samba-b6b61cec790e19862a600b023327d72dd33b3cb4.zip
r3907: * Rename lsa_Name to lsa_String
* Add new IDL to LSA, to query information about trusted domains (for cross-check with SamSync). Andrew Bartlett (This used to be commit 174c0778421b5154ff2ba809688ea6ef38a1478b)
Diffstat (limited to 'source4/librpc/idl')
-rw-r--r--source4/librpc/idl/lsa.idl91
1 files changed, 60 insertions, 31 deletions
diff --git a/source4/librpc/idl/lsa.idl b/source4/librpc/idl/lsa.idl
index f84addf150..15d1445250 100644
--- a/source4/librpc/idl/lsa.idl
+++ b/source4/librpc/idl/lsa.idl
@@ -30,13 +30,13 @@
/* Function: 0x02 */
typedef struct {
- [value(2*strlen_m(r->name))] uint16 name_len;
- [value(r->name_len)] uint16 name_size;
- unistr_noterm *name;
- } lsa_Name;
+ [value(2*strlen_m(r->string))] uint16 length;
+ [value(r->length)] uint16 size;
+ unistr_noterm *string;
+ } lsa_String;
typedef struct {
- lsa_Name name;
+ lsa_String name;
uint32 luid_low;
uint32 luid_high;
} lsa_PrivEntry;
@@ -122,12 +122,12 @@
} lsa_AuditEventsInfo;
typedef struct {
- lsa_Name name;
+ lsa_String name;
dom_sid2 *sid;
} lsa_DomainInfo;
typedef struct {
- lsa_Name name;
+ lsa_String name;
} lsa_PDAccountInfo;
typedef struct {
@@ -136,8 +136,8 @@
} lsa_ServerRole;
typedef struct {
- lsa_Name source;
- lsa_Name account;
+ lsa_String source;
+ lsa_String account;
} lsa_ReplicaSourceInfo;
typedef struct {
@@ -165,9 +165,9 @@
} lsa_AuditFullQueryInfo;
typedef struct {
- lsa_Name name;
- lsa_Name dns_domain;
- lsa_Name dns_forest;
+ lsa_String name;
+ lsa_String dns_domain;
+ lsa_String dns_forest;
GUID domain_guid;
dom_sid2 *sid;
} lsa_DnsDomainInfo;
@@ -248,8 +248,8 @@
/* Function: 0x0c */
typedef struct {
- lsa_Name name;
- dom_sid2 *sid;
+ lsa_String name;
+ dom_sid2 *sid;
} lsa_TrustInformation;
NTSTATUS lsa_CreateTrustedDomain(
@@ -264,7 +264,7 @@
/* Function: 0x0d */
typedef struct {
- lsa_Name name;
+ lsa_String name;
dom_sid2 *sid;
} lsa_DomainInformation;
@@ -304,7 +304,7 @@
NTSTATUS lsa_LookupNames (
[in,ref] policy_handle *handle,
[in,range(0,1000)] uint32 num_names,
- [in,ref,size_is(num_names)] lsa_Name *names,
+ [in,ref,size_is(num_names)] lsa_String *names,
[out] lsa_RefDomainList *domains,
[in,out,ref] lsa_TransSidArray *sids,
[in] uint16 level,
@@ -317,7 +317,7 @@
typedef struct {
uint16 sid_type;
- lsa_Name name;
+ lsa_String name;
uint32 sid_index;
} lsa_TranslatedName;
@@ -339,7 +339,7 @@
/* Function: 0x10 */
NTSTATUS lsa_CreateSecret(
[in,ref] policy_handle *handle,
- [in] lsa_Name name,
+ [in] lsa_String name,
[in] uint32 access_mask,
[out,ref] policy_handle *sec_handle
);
@@ -405,25 +405,54 @@
[out,ref] policy_handle *trustdom_handle
);
+ typedef [flag(NDR_PAHEX)] struct {
+ uint32 length;
+ uint32 size;
+ [size_is(size),length_is(length)] uint8 *data;
+ } lsa_DATA_BUF;
+
+ typedef struct {
+ lsa_String domain_name;
+ } lsa_TrustDomainInfo1;
+
+ typedef struct {
+ uint32 flags;
+ } lsa_TrustDomainInfo3;
+
+ typedef struct {
+ lsa_String name;
+ lsa_String name2;
+ dom_sid2 *sid;
+ uint32 unknown1;
+ uint32 unknown2;
+ uint32 unknown3;
+ } lsa_TrustDomainInfo6;
+
+ typedef union {
+ [case(1)] lsa_TrustDomainInfo1 info1;
+ [case(3)] lsa_TrustDomainInfo3 info3;
+ [case(6)] lsa_TrustDomainInfo6 info6;
+ } lsa_TrustedDomainInfo;
+
/* Function: 0x1a */
- NTSTATUS lsa_QueryInfoTrustedDomain();
+ NTSTATUS lsa_QueryInfoTrustedDomain(
+ [in,ref] policy_handle *trustdom_handle,
+ [in] uint16 level,
+ [out,switch_is(level)] lsa_TrustedDomainInfo *info
+ );
+
/* Function: 0x1b */
NTSTATUS lsa_SetInformationTrustedDomain();
/* Function: 0x1c */
NTSTATUS lsa_OpenSecret(
[in,ref] policy_handle *handle,
- [in] lsa_Name name,
+ [in] lsa_String name,
[in] uint32 access_mask,
[out,ref] policy_handle *sec_handle
);
/* Function: 0x1d */
- typedef [flag(NDR_PAHEX)] struct {
- uint32 length;
- uint32 size;
- [size_is(size),length_is(length)] uint8 *data;
- } lsa_DATA_BUF;
NTSTATUS lsa_SetSecret(
[in,ref] policy_handle *handle,
@@ -452,7 +481,7 @@
NTSTATUS lsa_LookupPrivName (
[in,ref] policy_handle *handle,
[in,ref] lsa_LUID *luid,
- [out] lsa_Name *name
+ [out] lsa_String *name
);
@@ -460,8 +489,8 @@
/* Function: 0x21 */
NTSTATUS lsa_LookupPrivDisplayName (
[in,ref] policy_handle *handle,
- [in,ref] lsa_Name *name,
- [out] lsa_Name *disp_name,
+ [in,ref] lsa_String *name,
+ [out] lsa_String *disp_name,
/* see http://www.microsoft.com/globaldev/nlsweb/ for
language definitions */
[in,out,ref] uint16 *language_id,
@@ -476,7 +505,7 @@
/* Function: 0x23 */
NTSTATUS lsa_EnumAccountsWithUserRight (
[in,ref] policy_handle *handle,
- [in] lsa_Name *name,
+ [in] lsa_String *name,
[out,ref] lsa_SidArray *sids
);
@@ -487,7 +516,7 @@
typedef struct {
uint32 count;
- [size_is(count)] lsa_Name *names;
+ [size_is(count)] lsa_String *names;
} lsa_RightSet;
NTSTATUS lsa_EnumAccountRights (
@@ -575,7 +604,7 @@
/* Function 0x37 */
NTSTATUS lsa_OpenTrustedDomainByName(
[in,ref] policy_handle *handle,
- [in] lsa_Name name,
+ [in] lsa_String name,
[in] uint32 access_mask,
[out,ref] policy_handle *trustdom_handle
);