summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2012-12-19 13:53:23 +0100
committerAndreas Schneider <asn@samba.org>2013-08-05 10:30:00 +0200
commita9d5b2fdf03a25e7669258de6c83288be3335cef (patch)
treef9ae1fdea8bf980f26e4b8caa096568a1e36400e
parentb19e7e6638a5dd53e3c6e6701f78bf31184ed493 (diff)
downloadsamba-a9d5b2fdf03a25e7669258de6c83288be3335cef.tar.gz
samba-a9d5b2fdf03a25e7669258de6c83288be3335cef.tar.bz2
samba-a9d5b2fdf03a25e7669258de6c83288be3335cef.zip
libcli/auth: also set secure channel type in netlogon_creds_client_init().
Signed-off-by: Günther Deschner <gd@samba.org> Reviewed-by: Stefan Metzmacher <metze@samba.org> Reviewed-by: Andreas Schneider <asn@samba.org>
-rw-r--r--libcli/auth/credentials.c2
-rw-r--r--libcli/auth/proto.h1
-rw-r--r--source3/rpc_client/cli_netlogon.c1
-rw-r--r--source4/librpc/rpc/dcerpc_schannel.c1
-rw-r--r--source4/torture/ntp/ntp_signd.c1
-rw-r--r--source4/torture/rpc/lsa.c1
-rw-r--r--source4/torture/rpc/netlogon.c3
-rw-r--r--source4/torture/rpc/samba3rpc.c2
8 files changed, 12 insertions, 0 deletions
diff --git a/libcli/auth/credentials.c b/libcli/auth/credentials.c
index 7c8d53cf8d..fb77ede197 100644
--- a/libcli/auth/credentials.c
+++ b/libcli/auth/credentials.c
@@ -263,6 +263,7 @@ next comes the client specific functions
struct netlogon_creds_CredentialState *netlogon_creds_client_init(TALLOC_CTX *mem_ctx,
const char *client_account,
const char *client_computer_name,
+ uint16_t secure_channel_type,
const struct netr_Credential *client_challenge,
const struct netr_Credential *server_challenge,
const struct samr_Password *machine_password,
@@ -277,6 +278,7 @@ struct netlogon_creds_CredentialState *netlogon_creds_client_init(TALLOC_CTX *me
creds->sequence = time(NULL);
creds->negotiate_flags = negotiate_flags;
+ creds->secure_channel_type = secure_channel_type;
creds->computer_name = talloc_strdup(creds, client_computer_name);
if (!creds->computer_name) {
diff --git a/libcli/auth/proto.h b/libcli/auth/proto.h
index 89a732e052..6bc18d7820 100644
--- a/libcli/auth/proto.h
+++ b/libcli/auth/proto.h
@@ -26,6 +26,7 @@ next comes the client specific functions
struct netlogon_creds_CredentialState *netlogon_creds_client_init(TALLOC_CTX *mem_ctx,
const char *client_account,
const char *client_computer_name,
+ uint16_t secure_channel_type,
const struct netr_Credential *client_challenge,
const struct netr_Credential *server_challenge,
const struct samr_Password *machine_password,
diff --git a/source3/rpc_client/cli_netlogon.c b/source3/rpc_client/cli_netlogon.c
index 66a50a8f2d..3d6a3e1a0a 100644
--- a/source3/rpc_client/cli_netlogon.c
+++ b/source3/rpc_client/cli_netlogon.c
@@ -89,6 +89,7 @@ NTSTATUS rpccli_netlogon_setup_creds(struct rpc_pipe_client *cli,
cli->dc = netlogon_creds_client_init(cli,
mach_acct,
clnt_name,
+ sec_chan_type,
&clnt_chal_send,
&srv_chal_recv,
&password,
diff --git a/source4/librpc/rpc/dcerpc_schannel.c b/source4/librpc/rpc/dcerpc_schannel.c
index be1ab240bd..1480486c32 100644
--- a/source4/librpc/rpc/dcerpc_schannel.c
+++ b/source4/librpc/rpc/dcerpc_schannel.c
@@ -187,6 +187,7 @@ static void continue_srv_challenge(struct tevent_req *subreq)
s->creds = netlogon_creds_client_init(s,
s->a.in.account_name,
s->a.in.computer_name,
+ s->a.in.secure_channel_type,
&s->credentials1, &s->credentials2,
s->mach_pwd, &s->credentials3,
s->local_negotiate_flags);
diff --git a/source4/torture/ntp/ntp_signd.c b/source4/torture/ntp/ntp_signd.c
index 89eb1a0022..5f097fedd0 100644
--- a/source4/torture/ntp/ntp_signd.c
+++ b/source4/torture/ntp/ntp_signd.c
@@ -113,6 +113,7 @@ static bool test_ntp_signd(struct torture_context *tctx,
creds = netlogon_creds_client_init(tctx, a.in.account_name,
a.in.computer_name,
+ a.in.secure_channel_type,
&credentials1, &credentials2,
pwhash, &credentials3,
negotiate_flags);
diff --git a/source4/torture/rpc/lsa.c b/source4/torture/rpc/lsa.c
index 107af11088..7385ad4b91 100644
--- a/source4/torture/rpc/lsa.c
+++ b/source4/torture/rpc/lsa.c
@@ -2715,6 +2715,7 @@ static bool check_pw_with_ServerAuthenticate3(struct dcerpc_pipe *p,
creds = netlogon_creds_client_init(tctx, a.in.account_name,
a.in.computer_name,
+ a.in.secure_channel_type,
&credentials1, &credentials2,
&mach_password, &credentials3,
negotiate_flags);
diff --git a/source4/torture/rpc/netlogon.c b/source4/torture/rpc/netlogon.c
index dadf8bc4f9..c7bdf49a50 100644
--- a/source4/torture/rpc/netlogon.c
+++ b/source4/torture/rpc/netlogon.c
@@ -173,6 +173,7 @@ bool test_SetupCredentials(struct dcerpc_pipe *p, struct torture_context *tctx,
creds = netlogon_creds_client_init(tctx, a.in.account_name,
a.in.computer_name,
+ a.in.secure_channel_type,
&credentials1, &credentials2,
mach_password, &credentials3,
0);
@@ -243,6 +244,7 @@ bool test_SetupCredentials2(struct dcerpc_pipe *p, struct torture_context *tctx,
creds = netlogon_creds_client_init(tctx, a.in.account_name,
a.in.computer_name,
+ a.in.secure_channel_type,
&credentials1, &credentials2,
mach_password, &credentials3,
negotiate_flags);
@@ -310,6 +312,7 @@ bool test_SetupCredentials3(struct dcerpc_pipe *p, struct torture_context *tctx,
creds = netlogon_creds_client_init(tctx, a.in.account_name,
a.in.computer_name,
+ a.in.secure_channel_type,
&credentials1, &credentials2,
&mach_password, &credentials3,
negotiate_flags);
diff --git a/source4/torture/rpc/samba3rpc.c b/source4/torture/rpc/samba3rpc.c
index 9443d5e848..432e9d5350 100644
--- a/source4/torture/rpc/samba3rpc.c
+++ b/source4/torture/rpc/samba3rpc.c
@@ -1015,6 +1015,7 @@ static bool auth2(struct torture_context *tctx,
creds_state = netlogon_creds_client_init(mem_ctx,
a.in.account_name,
a.in.computer_name,
+ a.in.secure_channel_type,
r.in.credentials,
r.out.return_credentials, &mach_pw,
&netr_cred, negotiate_flags);
@@ -2146,6 +2147,7 @@ static bool torture_samba3_rpc_randomauth2(struct torture_context *torture)
creds_state = netlogon_creds_client_init(mem_ctx,
a.in.account_name,
a.in.computer_name,
+ a.in.secure_channel_type,
r.in.credentials,
r.out.return_credentials, &mach_pw,
&netr_cred, negotiate_flags);