summaryrefslogtreecommitdiff
path: root/source4/librpc
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2004-11-29 11:13:56 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:06:12 -0500
commit114b43a167e8470666125ff0b2ac08c4b5c4f14d (patch)
tree99d167dab0a227d910abf03fc6a7ae01fb55a9cf /source4/librpc
parentee0d68dc30a18b86a9d56e41e84903c2750c0173 (diff)
downloadsamba-114b43a167e8470666125ff0b2ac08c4b5c4f14d.tar.gz
samba-114b43a167e8470666125ff0b2ac08c4b5c4f14d.tar.bz2
samba-114b43a167e8470666125ff0b2ac08c4b5c4f14d.zip
r3999: - reply with the same DsBindInfo blob as w2k3 in the server function
- add idl for drsuapi_DsReplicaSync() not yet complete - just return WERR_OK for the drsuapi_DsReplicaSync() server function metze (This used to be commit e896925ac0b58bd48b5b9cc2d675682409d09ae1)
Diffstat (limited to 'source4/librpc')
-rw-r--r--source4/librpc/idl/drsuapi.idl39
1 files changed, 37 insertions, 2 deletions
diff --git a/source4/librpc/idl/drsuapi.idl b/source4/librpc/idl/drsuapi.idl
index 481c1a1de1..b4784da95b 100644
--- a/source4/librpc/idl/drsuapi.idl
+++ b/source4/librpc/idl/drsuapi.idl
@@ -20,6 +20,18 @@ interface drsuapi
/* this is a magic guid you need to pass to DsBind to make drsuapi_DsWriteAccountSpn() work */
const string DRSUAPI_DS_BIND_GUID = "e24d201a-4fd6-11d1-a3da-0000f875ae0d";
+ /* this are the bind info blobs returned (seemed to be const):
+ w2k3 7ffbff1f81a6ff5d80139441a372e9b779d70268f801000000000000
+ w2k 7ffb1f00cb7fb9102391c143bda81fc90e0ff452f4000000
+ */
+ const uint8 DRSUAPI_DS_BIND_INFO_RESPONSE_W2K3[] = { 0x7f,0xfb,0xff,0x1f,0x81,0xa6,0xff,0x5d,
+ 0x80,0x13,0x94,0x41,0xa3,0x72,0xe9,0xb7,
+ 0x79,0xd7,0x02,0x68,0xf8,0x01,0x00,0x00,
+ 0x00,0x00,0x00,0x00};
+ const uint8 DRSUAPI_DS_BIND_INFO_RESPONSE_W2K[] = { 0x7f,0xfb,0x1f,0x00,0xcb,0x7f,0xb9,0x10,
+ 0x23,0x91,0xc1,0x43,0xbd,0xa8,0x1f,0xc9,
+ 0x0e,0x0f,0xf4,0x52,0xf4,0x00,0x00,0x00};
+
WERROR drsuapi_DsBind(
[in] GUID *bind_guid,
[in,out] drsuapi_DsBindInfo *bind_info,
@@ -33,8 +45,31 @@ interface drsuapi
);
/*****************/
- /* Function 0x02 */
- WERROR DRSUAPI_REPLICA_SYNC();
+ /* Function 0x02 */
+ typedef struct {
+ uint32 unknown1;
+ uint32 unknown2;
+ GUID guid1;
+ [size_is(28)] uint8 unknown3[28];
+ [flag(STR_LEN4|STR_CHARLEN)] string nc_dn;
+ } drsuapi_DsReplicaSyncRequest1Info;
+
+ typedef struct {
+ drsuapi_DsReplicaSyncRequest1Info *info;
+ GUID guid1;
+ asclstr string1;
+ uint32 unknown1;
+ } drsuapi_DsReplicaSyncRequest1;
+
+ typedef union {
+ [case(1)] drsuapi_DsReplicaSyncRequest1 req1;
+ } drsuapi_DsReplicaSyncRequest;
+
+ WERROR drsuapi_DsReplicaSync(
+ [in,ref] policy_handle *bind_handle,
+ [in] uint32 level,
+ [in,switch_is(level)] drsuapi_DsReplicaSyncRequest req
+ );
/*****************/
/* Function 0x03 */