summaryrefslogtreecommitdiff
path: root/source4/libnet/libnet_join.h
diff options
context:
space:
mode:
Diffstat (limited to 'source4/libnet/libnet_join.h')
-rw-r--r--source4/libnet/libnet_join.h66
1 files changed, 18 insertions, 48 deletions
diff --git a/source4/libnet/libnet_join.h b/source4/libnet/libnet_join.h
index 8614d59a77..5f1fcebfe9 100644
--- a/source4/libnet/libnet_join.h
+++ b/source4/libnet/libnet_join.h
@@ -21,60 +21,30 @@
#include "librpc/gen_ndr/ndr_netlogon.h"
-/* struct and enum for doing a remote domain join */
-enum libnet_JoinDomain_level {
- LIBNET_JOIN_DOMAIN_GENERIC,
- LIBNET_JOIN_DOMAIN_SAMR,
-};
-
-union libnet_JoinDomain {
+struct libnet_JoinDomain {
struct {
- enum libnet_JoinDomain_level level;
-
- struct _libnet_JoinDomain_in {
- const char *domain_name;
- const char *account_name;
- uint32_t acct_type;
- } in;
-
- struct _libnet_JoinDomain_out {
- const char *error_string;
- const char *join_password;
- } out;
- } generic;
+ const char *domain_name;
+ const char *account_name;
+ uint32_t acct_type;
+ } in;
struct {
- enum libnet_JoinDomain_level level;
- struct _libnet_JoinDomain_in in;
- struct _libnet_JoinDomain_out out;
- } samr;
-
+ const char *error_string;
+ const char *join_password;
+ struct dom_sid *domain_sid;
+ const char *domain_name;
+ const char *realm;
+ } out;
};
-/* struct and enum for doing a remote domain join */
-enum libnet_Join_level {
- LIBNET_JOIN_GENERIC,
- LIBNET_JOIN_PRIMARY,
-};
-
-union libnet_Join {
+struct libnet_Join {
struct {
- enum libnet_Join_level level;
-
- struct _libnet_Join_in {
- const char *domain_name;
- enum netr_SchannelType secure_channel_type;
- } in;
-
- struct _libnet_Join_out {
- const char *error_string;
- } out;
- } generic;
-
+ const char *domain_name;
+ enum netr_SchannelType secure_channel_type;
+ } in;
+
struct {
- enum libnet_Join_level level;
- struct _libnet_Join_in in;
- struct _libnet_Join_out out;
- } ldb;
+ const char *error_string;
+ } out;
};