summaryrefslogtreecommitdiffstats
path: root/source/lib/msrpc-client.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/lib/msrpc-client.c')
-rw-r--r--source/lib/msrpc-client.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/source/lib/msrpc-client.c b/source/lib/msrpc-client.c
index 051a051093e..60924ed81c5 100644
--- a/source/lib/msrpc-client.c
+++ b/source/lib/msrpc-client.c
@@ -195,7 +195,8 @@ static BOOL msrpc_authenticate(struct msrpc_state *msrpc,
command = usr != NULL ? AGENT_CMD_CON : AGENT_CMD_CON_ANON;
- if (!create_user_creds(&ps, msrpc->pipe_name, 0x0, command, usr))
+ if (!create_user_creds(&ps, msrpc->pipe_name, 0x0, command,
+ msrpc->pid, usr))
{
DEBUG(0,("could not parse credentials\n"));
close(sock);
@@ -274,11 +275,12 @@ static BOOL msrpc_init_redirect(struct msrpc_state *msrpc,
}
BOOL msrpc_connect_auth(struct msrpc_state *msrpc,
+ uint32 pid,
const char* pipename,
const struct user_creds *usr)
{
ZERO_STRUCTP(msrpc);
- if (!msrpc_initialise(msrpc))
+ if (!msrpc_initialise(msrpc, pid))
{
DEBUG(0,("unable to initialise msrpcent connection.\n"));
return False;
@@ -298,7 +300,7 @@ BOOL msrpc_connect_auth(struct msrpc_state *msrpc,
/****************************************************************************
initialise a msrpcent structure
****************************************************************************/
-struct msrpc_state *msrpc_initialise(struct msrpc_state *msrpc)
+struct msrpc_state *msrpc_initialise(struct msrpc_state *msrpc, uint32 pid)
{
if (!msrpc) {
msrpc = (struct msrpc_state *)malloc(sizeof(*msrpc));
@@ -323,6 +325,7 @@ struct msrpc_state *msrpc_initialise(struct msrpc_state *msrpc)
msrpc->initialised = 1;
msrpc_init_creds(msrpc, NULL);
+ msrpc->pid = pid;
return msrpc;
}