diff options
author | Gerald Carter <jerry@samba.org> | 2002-10-04 19:11:36 +0000 |
---|---|---|
committer | Gerald Carter <jerry@samba.org> | 2002-10-04 19:11:36 +0000 |
commit | d2ea6d5ae759bd2c842b5836d778b5a52b8af477 (patch) | |
tree | 577e63715c35c09354bdebf482ea0882a36b5852 /source3/include | |
parent | ceaeb3ef90e088f8752b519d5e80e60ce79575a1 (diff) | |
download | samba-d2ea6d5ae759bd2c842b5836d778b5a52b8af477.tar.gz samba-d2ea6d5ae759bd2c842b5836d778b5a52b8af477.tar.bz2 samba-d2ea6d5ae759bd2c842b5836d778b5a52b8af477.zip |
merge of working dsrolegetprimdominfo() client code from APP_HEAD
(This used to be commit f70caa25e4ee198151b915cf2bc0a26b2d0e243d)
Diffstat (limited to 'source3/include')
-rw-r--r-- | source3/include/ntdomain.h | 1 | ||||
-rw-r--r-- | source3/include/rpc_dce.h | 1 | ||||
-rw-r--r-- | source3/include/rpc_ds.h | 91 | ||||
-rw-r--r-- | source3/include/smb.h | 2 |
4 files changed, 94 insertions, 1 deletions
diff --git a/source3/include/ntdomain.h b/source3/include/ntdomain.h index ffb9c96b72..628035885e 100644 --- a/source3/include/ntdomain.h +++ b/source3/include/ntdomain.h @@ -374,5 +374,6 @@ struct acct_info #include "rpc_wkssvc.h" #include "rpc_spoolss.h" #include "rpc_dfs.h" +#include "rpc_ds.h" #endif /* _NT_DOMAIN_H */ diff --git a/source3/include/rpc_dce.h b/source3/include/rpc_dce.h index 61316de89c..3e615dab80 100644 --- a/source3/include/rpc_dce.h +++ b/source3/include/rpc_dce.h @@ -89,6 +89,7 @@ enum NTLM_MESSAGE_TYPE /* Maximum PDU fragment size. */ #define MAX_PDU_FRAG_LEN 0x1630 +/* #define MAX_PDU_FRAG_LEN 0x10b8 this is what w2k sets */ /* * Actual structure of a DCE UUID diff --git a/source3/include/rpc_ds.h b/source3/include/rpc_ds.h new file mode 100644 index 0000000000..c01d10554e --- /dev/null +++ b/source3/include/rpc_ds.h @@ -0,0 +1,91 @@ +/* + Unix SMB/CIFS implementation. + SMB parameters and setup + Copyright (C) Gerald Carter 2002 + + 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 + the Free Software Foundation; either version 2 of the License, or + (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 + along with this program; if not, write to the Free Software + Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +*/ + +#ifndef _RPC_DS_H /* _RPC_LSA_H */ +#define _RPC_DS_H + +#include "rpc_misc.h" + + +/* Opcodes available on PIPE_LSARPC_DS */ + +#define DS_GETPRIMDOMINFO 0x00 + + +/* macros for RPC's */ + +#define DSROLE_PRIMARY_DS_RUNNING 0x00000001 +#define DSROLE_PRIMARY_DS_MIXED_MODE 0x00000002 +#define DSROLE_UPGRADE_IN_PROGRESS 0x00000004 +#define DSROLE_PRIMARY_DOMAIN_GUID_PRESENT 0x01000000 + +typedef struct +{ + uint16 machine_role; + uint16 unknown; /* 0x6173 -- maybe just alignment? */ + + uint32 flags; + + uint32 netbios_ptr; + uint32 dnsname_ptr; + uint32 forestname_ptr; + + GUID domain_guid; + + UNISTR2 netbios_domain; + /* these 2 might be reversed in order. I can't tell from + my tests as both values are the same --jerry */ + UNISTR2 dns_domain; + UNISTR2 forest_domain; +} DSROLE_PRIMARY_DOMAIN_INFO_BASIC; + +typedef struct +{ + DSROLE_PRIMARY_DOMAIN_INFO_BASIC *basic; +} DS_DOMINFO_CTR; + +/* info levels for ds_getprimdominfo() */ + +#define DsRolePrimaryDomainInfoBasic 1 + + +/* DS_Q_GETPRIMDOMINFO - DsGetPrimaryDomainInformation() request */ +typedef struct +{ + uint16 level; +} DS_Q_GETPRIMDOMINFO; + +/* DS_R_GETPRIMDOMINFO - DsGetPrimaryDomainInformation() response */ +typedef struct +{ + uint32 ptr; + + uint16 level; + uint16 unknown0; /* 0x455c -- maybe just alignment? */ + + DS_DOMINFO_CTR info; + + NTSTATUS status; +} DS_R_GETPRIMDOMINFO; + + + + +#endif /* _RPC_DS_H */ diff --git a/source3/include/smb.h b/source3/include/smb.h index 5bf79b75fe..b5ab504415 100644 --- a/source3/include/smb.h +++ b/source3/include/smb.h @@ -188,7 +188,7 @@ typedef smb_ucs2_t wfstring[FSTRING_LEN]; #define PIPE_NETDFS "\\PIPE\\netdfs" #define PI_LSARPC 0 -#define PI_LSARPC_V2 1 +#define PI_LSARPC_DS 1 #define PI_SAMR 2 #define PI_NETLOGON 3 #define PI_SRVSVC 4 |