summaryrefslogtreecommitdiff
path: root/source4/rpc_server/remote/dcesrv_remote.c
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2010-02-19 18:02:46 +1100
committerAndrew Bartlett <abartlet@samba.org>2010-02-20 02:55:29 +1100
commitf74ce57cb584d9e9d99b26e0467cc0c4b541f84d (patch)
treeb29c48fa0065acdc2c5c9213c09b65993e353882 /source4/rpc_server/remote/dcesrv_remote.c
parent9f222841fedd3796c238146081c20591ae72747b (diff)
downloadsamba-f74ce57cb584d9e9d99b26e0467cc0c4b541f84d.tar.gz
samba-f74ce57cb584d9e9d99b26e0467cc0c4b541f84d.tar.bz2
samba-f74ce57cb584d9e9d99b26e0467cc0c4b541f84d.zip
s4:rpc_server Add a 'if_version' parameter to the bind operation.
This allows the interface version to be forwarded to the remote server in the RPC proxy, both in the endpoint lookup and the subsequent bind. Andrew Bartlett
Diffstat (limited to 'source4/rpc_server/remote/dcesrv_remote.c')
-rw-r--r--source4/rpc_server/remote/dcesrv_remote.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/source4/rpc_server/remote/dcesrv_remote.c b/source4/rpc_server/remote/dcesrv_remote.c
index 9c4174be96..45944bc227 100644
--- a/source4/rpc_server/remote/dcesrv_remote.c
+++ b/source4/rpc_server/remote/dcesrv_remote.c
@@ -37,7 +37,7 @@ static NTSTATUS remote_op_reply(struct dcesrv_call_state *dce_call, TALLOC_CTX *
return NT_STATUS_OK;
}
-static NTSTATUS remote_op_bind(struct dcesrv_call_state *dce_call, const struct dcesrv_interface *iface)
+static NTSTATUS remote_op_bind(struct dcesrv_call_state *dce_call, const struct dcesrv_interface *iface, uint32_t if_version)
{
NTSTATUS status;
const struct ndr_interface_table *table;
@@ -121,6 +121,8 @@ static NTSTATUS remote_op_bind(struct dcesrv_call_state *dce_call, const struct
b->assoc_group_id = dce_call->context->assoc_group->proxied_id;
}
+ b->object.if_version = if_version;
+
pipe_conn_req = dcerpc_pipe_connect_b_send(dce_call->context, b, table,
credentials, dce_call->event_ctx, dce_call->conn->dce_ctx->lp_ctx);
status = dcerpc_pipe_connect_b_recv(pipe_conn_req, dce_call->context, &(priv->c_pipe));