1
0
mirror of https://github.com/samba-team/samba.git synced 2025-03-08 04:58:40 +03:00

129 lines
2.7 KiB
Plaintext
Raw Normal View History

2009-08-03 23:44:46 +02:00
#include "idl_types.h"
import "lsa.idl";
[
uuid("bf09192c-ed60-4928-9dff-d0d7bcb03ed8"),
endpoint("ncalrpc:"),
pointer_default(unique),
version(1.0),
helpstring("winbind parent-child protocol")
]
interface wbint
{
void wbint_Ping(
[in] uint32 in_data,
[out] uint32 *out_data
);
2009-08-03 23:44:46 +02:00
NTSTATUS wbint_LookupSid(
[in] dom_sid *sid,
[out] lsa_SidType *type,
[out,string,charset(UTF8)] char **domain,
[out,string,charset(UTF8)] char **name
);
2009-08-04 07:22:34 -04:00
NTSTATUS wbint_LookupName(
[in,string,charset(UTF8)] char *domain,
[in,string,charset(UTF8)] char *name,
[in] uint32 flags,
[out] lsa_SidType *type,
[out] dom_sid *sid
);
2009-08-04 13:28:59 -04:00
NTSTATUS wbint_Sid2Uid(
[in,unique,string,charset(UTF8)] char *dom_name,
[in] dom_sid *sid,
[out] hyper *uid
);
2009-08-04 13:38:52 -04:00
NTSTATUS wbint_Sid2Gid(
[in,unique,string,charset(UTF8)] char *dom_name,
[in] dom_sid *sid,
[out] hyper *gid
);
2009-08-04 13:52:39 -04:00
NTSTATUS wbint_Uid2Sid(
[in,unique,string,charset(UTF8)] char *dom_name,
[in] hyper uid,
[out] dom_sid *sid
);
2009-08-04 14:19:03 -04:00
NTSTATUS wbint_Gid2Sid(
[in,unique,string,charset(UTF8)] char *dom_name,
[in] hyper gid,
[out] dom_sid *sid
);
2009-08-04 15:23:13 -04:00
typedef [public] struct {
[string,charset(UTF8)] char *acct_name;
[string,charset(UTF8)] char *full_name;
[string,charset(UTF8)] char *homedir;
[string,charset(UTF8)] char *shell;
hyper primary_gid;
dom_sid user_sid;
dom_sid group_sid;
} wbint_userinfo;
NTSTATUS wbint_QueryUser(
[in] dom_sid *sid,
[out] wbint_userinfo *info
);
typedef [public] struct {
uint32 num_sids;
[size_is(num_sids)] dom_sid sids[];
} wbint_SidArray;
typedef [public] struct {
uint32 num_rids;
[size_is(num_rids)] uint32 rids[];
} wbint_RidArray;
NTSTATUS wbint_LookupUserAliases(
[in] wbint_SidArray *sids,
[out] wbint_RidArray *rids
);
NTSTATUS wbint_LookupUserGroups(
[in] dom_sid *sid,
[out] wbint_SidArray *sids
);
2009-08-15 11:16:28 +02:00
NTSTATUS wbint_QuerySequenceNumber(
[out] uint32 *sequence
);
2009-08-16 10:58:43 +02:00
typedef [public] struct {
dom_sid sid;
lsa_SidType type;
[string,charset(UTF8)] char *name;
} wbint_Principal;
2009-08-16 10:58:43 +02:00
typedef [public] struct {
int num_principals;
[size_is(num_principals)] wbint_Principal principals[];
} wbint_Principals;
2009-08-16 10:58:43 +02:00
NTSTATUS wbint_LookupGroupMembers(
[in] dom_sid *sid,
[in] lsa_SidType type,
[out] wbint_Principals *members
2009-08-16 10:58:43 +02:00
);
2009-08-17 22:40:19 +02:00
typedef [public] struct {
uint32 num_userinfos;
[size_is(num_userinfos)] wbint_userinfo userinfos[];
} wbint_userinfos;
NTSTATUS wbint_QueryUserList(
[out] wbint_userinfos *users
);
NTSTATUS wbint_DsGetDcName(
[in,string,charset(UTF8)] char *domain_name,
[in,unique] GUID *domain_guid,
[in,string,unique,charset(UTF8)] char *site_name,
[in] uint32 flags,
[out] netr_DsRGetDCNameInfo **dc_info
);
}