From cf2442bdcb68d75582da98ba15da8928c37fb058 Mon Sep 17 00:00:00 2001 From: Volker Lendecke Date: Sun, 20 Apr 2008 00:01:52 +0200 Subject: Use rpc_pipe_client->user_name instead of rpc_pipe_client->cli->user_name Also make sure that rpc_pipe_client->user_name is always talloced. (This used to be commit 3f6c5b99664a75a6f490ee3b6980b89cacf7f579) --- source3/rpc_client/cli_pipe.c | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'source3/rpc_client/cli_pipe.c') diff --git a/source3/rpc_client/cli_pipe.c b/source3/rpc_client/cli_pipe.c index 64fcc16bde..bc9a4268d0 100644 --- a/source3/rpc_client/cli_pipe.c +++ b/source3/rpc_client/cli_pipe.c @@ -2275,6 +2275,15 @@ struct rpc_pipe_client *cli_rpc_pipe_open_noauth(struct cli_state *cli, int pipe return NULL; } + result->domain = talloc_strdup(result, cli->domain); + result->user_name = talloc_strdup(result, cli->user_name); + + if ((result->domain == NULL) || (result->user_name == NULL)) { + *perr = NT_STATUS_NO_MEMORY; + cli_rpc_pipe_close(result); + return NULL; + } + *perr = rpc_pipe_bind(result, PIPE_AUTH_TYPE_NONE, PIPE_AUTH_LEVEL_NONE); if (!NT_STATUS_IS_OK(*perr)) { int lvl = 0; @@ -2330,8 +2339,14 @@ static struct rpc_pipe_client *cli_rpc_pipe_open_ntlmssp_internal(struct cli_sta result->auth.cli_auth_data_free_func = cli_ntlmssp_auth_free; - result->domain = domain; - result->user_name = username; + result->domain = talloc_strdup(result, domain); + result->user_name = talloc_strdup(result, username); + + if ((result->domain == NULL) || (result->user_name == NULL)) { + *perr = NT_STATUS_NO_MEMORY; + goto err; + } + pwd_set_cleartext(&result->pwd, password); *perr = ntlmssp_client_start(&ntlmssp_state); -- cgit