summaryrefslogtreecommitdiff
path: root/source3/utils/net_rpc.c
diff options
context:
space:
mode:
authorStefan Metzmacher <metze@samba.org>2012-08-01 10:48:53 +0200
committerStefan Metzmacher <metze@samba.org>2012-08-01 14:17:15 +0200
commit0068a9fd930331e6f2ee49aa79489c333ae4e722 (patch)
tree962f67b0b130db046ffde5008a6486ea6d2d2437 /source3/utils/net_rpc.c
parent616206a806761bb19bd7b6025d6068a867510bf5 (diff)
downloadsamba-0068a9fd930331e6f2ee49aa79489c333ae4e722.tar.gz
samba-0068a9fd930331e6f2ee49aa79489c333ae4e722.tar.bz2
samba-0068a9fd930331e6f2ee49aa79489c333ae4e722.zip
s3:utils/net_rpc*: make use of cli_get_session_key()
metze
Diffstat (limited to 'source3/utils/net_rpc.c')
-rw-r--r--source3/utils/net_rpc.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/source3/utils/net_rpc.c b/source3/utils/net_rpc.c
index 49b405f75f..46c3c91779 100644
--- a/source3/utils/net_rpc.c
+++ b/source3/utils/net_rpc.c
@@ -5776,6 +5776,7 @@ static NTSTATUS rpc_trustdom_add_internals(struct net_context *c,
union samr_UserInfo info;
unsigned int orig_timeout;
struct dcerpc_binding_handle *b = pipe_hnd->binding_handle;
+ DATA_BLOB session_key = data_blob_null;
if (argc != 2) {
d_printf("%s\n%s",
@@ -5797,6 +5798,13 @@ static NTSTATUS rpc_trustdom_add_internals(struct net_context *c,
init_lsa_String(&lsa_acct_name, acct_name);
+ status = cli_get_session_key(mem_ctx, pipe_hnd, &session_key);
+ if (!NT_STATUS_IS_OK(status)) {
+ DEBUG(0,("Error getting session_key of SAM pipe. Error was %s\n",
+ nt_errstr(status)));
+ goto done;
+ }
+
/* Get samr policy handle */
status = dcerpc_samr_Connect2(b, mem_ctx,
pipe_hnd->desthost,
@@ -5867,7 +5875,7 @@ static NTSTATUS rpc_trustdom_add_internals(struct net_context *c,
ZERO_STRUCT(info.info23);
init_samr_CryptPassword(argv[1],
- &cli->user_session_key,
+ &session_key,
&crypt_pwd);
info.info23.info.fields_present = SAMR_FIELD_ACCT_FLAGS |
@@ -5894,6 +5902,7 @@ static NTSTATUS rpc_trustdom_add_internals(struct net_context *c,
done:
SAFE_FREE(acct_name);
+ data_blob_clear_free(&session_key);
return status;
}