2005-01-13 10:50:09 +03:00
/*
Unix SMB / CIFS implementation .
Copyright ( C ) Stefan Metzmacher 2004
Copyright ( C ) Andrew Bartlett < abartlet @ samba . org > 2005
2005-09-25 16:26:07 +04:00
Copyright ( C ) Brad Henry 2005
2005-01-13 10:50:09 +03:00
This program is free software ; you can redistribute it and / or modify
it under the terms of the GNU General Public License as published by
2007-07-10 06:07:03 +04:00
the Free Software Foundation ; either version 3 of the License , or
2005-01-13 10:50:09 +03:00
( at your option ) any later version .
This program is distributed in the hope that it will be useful ,
but WITHOUT ANY WARRANTY ; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE . See the
GNU General Public License for more details .
You should have received a copy of the GNU General Public License
2007-07-10 06:07:03 +04:00
along with this program . If not , see < http : //www.gnu.org/licenses/>.
2005-01-13 10:50:09 +03:00
*/
2006-03-14 18:03:25 +03:00
# ifndef __LIBNET_JOIN_H__
# define __LIBNET_JOIN_H__
2006-03-16 03:23:11 +03:00
# include "librpc/gen_ndr/netlogon.h"
2005-01-16 01:13:18 +03:00
2005-09-25 16:26:07 +04:00
enum libnet_Join_level {
LIBNET_JOIN_AUTOMATIC ,
LIBNET_JOIN_SPECIFIED ,
} ;
enum libnet_JoinDomain_level {
LIBNET_JOINDOMAIN_AUTOMATIC ,
LIBNET_JOINDOMAIN_SPECIFIED ,
} ;
2005-07-29 14:58:05 +04:00
struct libnet_JoinDomain {
2005-01-13 10:50:09 +03:00
struct {
2005-07-29 14:58:05 +04:00
const char * domain_name ;
const char * account_name ;
2005-09-25 16:26:07 +04:00
const char * netbios_name ;
const char * binding ;
enum libnet_JoinDomain_level level ;
2005-07-29 14:58:05 +04:00
uint32_t acct_type ;
2007-08-27 22:10:19 +04:00
bool recreate_account ;
2011-11-16 16:06:19 +04:00
const char * account_pass ;
2005-07-29 14:58:05 +04:00
} in ;
2005-01-13 10:50:09 +03:00
struct {
2005-07-29 14:58:05 +04:00
const char * error_string ;
const char * join_password ;
struct dom_sid * domain_sid ;
const char * domain_name ;
const char * realm ;
2005-09-25 16:26:07 +04:00
const char * domain_dn_str ;
const char * account_dn_str ;
const char * server_dn_str ;
uint32_t kvno ; /* msDS-KeyVersionNumber */
struct dcerpc_pipe * samr_pipe ;
2014-02-12 15:23:28 +04:00
const struct dcerpc_binding * samr_binding ;
2005-09-25 16:26:07 +04:00
struct policy_handle * user_handle ;
struct dom_sid * account_sid ;
2006-12-12 02:59:03 +03:00
struct GUID account_guid ;
2005-07-29 14:58:05 +04:00
} out ;
2005-01-13 10:50:09 +03:00
} ;
2011-05-16 16:55:29 +04:00
struct libnet_Join_member {
2005-01-16 01:13:18 +03:00
struct {
2005-07-29 14:58:05 +04:00
const char * domain_name ;
2005-09-25 16:26:07 +04:00
const char * netbios_name ;
enum libnet_Join_level level ;
2011-11-16 16:06:19 +04:00
const char * account_pass ;
2005-07-29 14:58:05 +04:00
} in ;
2005-01-16 01:13:18 +03:00
struct {
2005-07-29 14:58:05 +04:00
const char * error_string ;
2005-09-25 16:26:07 +04:00
const char * join_password ;
struct dom_sid * domain_sid ;
2005-12-22 09:58:26 +03:00
const char * domain_name ;
2005-07-29 14:58:05 +04:00
} out ;
2005-01-16 01:13:18 +03:00
} ;
2008-04-09 08:56:24 +04:00
struct libnet_set_join_secrets {
struct {
const char * domain_name ;
const char * realm ;
const char * netbios_name ;
const char * account_name ;
enum netr_SchannelType join_type ;
const char * join_password ;
int kvno ;
struct dom_sid * domain_sid ;
} in ;
struct {
const char * error_string ;
} out ;
} ;
2006-03-14 18:03:25 +03:00
# endif /* __LIBNET_JOIN_H__ */