#include "libcli/util/ntstatus.h"
#include "librpc/gen_ndr/lsa.h"
+#include "librpc/gen_ndr/netlogon.h"
#ifndef _HEADER_wbint
#define _HEADER_wbint
+struct wbint_userinfo {
+ const char *acct_name;/* [unique,charset(UTF8)] */
+ const char *full_name;/* [unique,charset(UTF8)] */
+ const char *homedir;/* [unique,charset(UTF8)] */
+ const char *shell;/* [unique,charset(UTF8)] */
+ uint64_t primary_gid;
+ struct dom_sid user_sid;
+ struct dom_sid group_sid;
+}/* [public] */;
+
+struct wbint_SidArray {
+ uint32_t num_sids;
+ struct dom_sid *sids;/* [size_is(num_sids)] */
+}/* [public] */;
+
+struct wbint_RidArray {
+ uint32_t num_rids;
+ uint32_t *rids;/* [size_is(num_rids)] */
+}/* [public] */;
+
+struct wbint_Principal {
+ struct dom_sid sid;
+ enum lsa_SidType type;
+ const char *name;/* [unique,charset(UTF8)] */
+}/* [public] */;
+
+struct wbint_Principals {
+ int32_t num_principals;
+ struct wbint_Principal *principals;/* [size_is(num_principals)] */
+}/* [public] */;
+
+struct wbint_userinfos {
+ uint32_t num_userinfos;
+ struct wbint_userinfo *userinfos;/* [size_is(num_userinfos)] */
+}/* [public] */;
+
+enum wbint_IdType
+#ifndef USE_UINT_ENUMS
+ {
+ WBINT_ID_TYPE_NOT_SPECIFIED,
+ WBINT_ID_TYPE_UID,
+ WBINT_ID_TYPE_GID
+}
+#else
+ { __donnot_use_enum_wbint_IdType=0x7FFFFFFF}
+#define WBINT_ID_TYPE_NOT_SPECIFIED ( 0 )
+#define WBINT_ID_TYPE_UID ( 1 )
+#define WBINT_ID_TYPE_GID ( 2 )
+#endif
+;
+
struct wbint_Ping {
struct {
};
+
+struct wbint_LookupName {
+ struct {
+ const char *domain;/* [ref,charset(UTF8)] */
+ const char *name;/* [ref,charset(UTF8)] */
+ uint32_t flags;
+ } in;
+
+ struct {
+ enum lsa_SidType *type;/* [ref] */
+ struct dom_sid *sid;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_Sid2Uid {
+ struct {
+ const char *dom_name;/* [unique,charset(UTF8)] */
+ struct dom_sid *sid;/* [ref] */
+ } in;
+
+ struct {
+ uint64_t *uid;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_Sid2Gid {
+ struct {
+ const char *dom_name;/* [unique,charset(UTF8)] */
+ struct dom_sid *sid;/* [ref] */
+ } in;
+
+ struct {
+ uint64_t *gid;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_Uid2Sid {
+ struct {
+ const char *dom_name;/* [unique,charset(UTF8)] */
+ uint64_t uid;
+ } in;
+
+ struct {
+ struct dom_sid *sid;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_Gid2Sid {
+ struct {
+ const char *dom_name;/* [unique,charset(UTF8)] */
+ uint64_t gid;
+ } in;
+
+ struct {
+ struct dom_sid *sid;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_AllocateUid {
+ struct {
+ uint64_t *uid;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_AllocateGid {
+ struct {
+ uint64_t *gid;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_QueryUser {
+ struct {
+ struct dom_sid *sid;/* [ref] */
+ } in;
+
+ struct {
+ struct wbint_userinfo *info;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_LookupUserAliases {
+ struct {
+ struct wbint_SidArray *sids;/* [ref] */
+ } in;
+
+ struct {
+ struct wbint_RidArray *rids;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_LookupUserGroups {
+ struct {
+ struct dom_sid *sid;/* [ref] */
+ } in;
+
+ struct {
+ struct wbint_SidArray *sids;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_QuerySequenceNumber {
+ struct {
+ uint32_t *sequence;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_LookupGroupMembers {
+ struct {
+ struct dom_sid *sid;/* [ref] */
+ enum lsa_SidType type;
+ } in;
+
+ struct {
+ struct wbint_Principals *members;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_QueryUserList {
+ struct {
+ struct wbint_userinfos *users;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_QueryGroupList {
+ struct {
+ struct wbint_Principals *groups;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_DsGetDcName {
+ struct {
+ const char *domain_name;/* [ref,charset(UTF8)] */
+ struct GUID *domain_guid;/* [unique] */
+ const char *site_name;/* [unique,charset(UTF8)] */
+ uint32_t flags;
+ } in;
+
+ struct {
+ struct netr_DsRGetDCNameInfo **dc_info;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_LookupRids {
+ struct {
+ struct wbint_RidArray *rids;/* [ref] */
+ } in;
+
+ struct {
+ struct wbint_Principals *names;/* [ref] */
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_CheckMachineAccount {
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_ChangeMachineAccount {
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_SetMapping {
+ struct {
+ struct dom_sid *sid;/* [ref] */
+ enum wbint_IdType type;
+ uint64_t id;
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_RemoveMapping {
+ struct {
+ struct dom_sid *sid;/* [ref] */
+ enum wbint_IdType type;
+ uint64_t id;
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
+
+struct wbint_SetHWM {
+ struct {
+ enum wbint_IdType type;
+ uint64_t id;
+ } in;
+
+ struct {
+ NTSTATUS result;
+ } out;
+
+};
+
#endif /* _HEADER_wbint */