summaryrefslogtreecommitdiff
path: root/source4/auth/gensec/schannel.c
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2006-02-09 02:30:43 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:51:53 -0500
commit5cecce1761c06b0641190cf7bb8e93bff9a88cf4 (patch)
tree749d647c537a3d7ed2c1081c3bef705d95a26227 /source4/auth/gensec/schannel.c
parent4c78d1bfa21947f649b061279e7388c478f77fe0 (diff)
downloadsamba-5cecce1761c06b0641190cf7bb8e93bff9a88cf4.tar.gz
samba-5cecce1761c06b0641190cf7bb8e93bff9a88cf4.tar.bz2
samba-5cecce1761c06b0641190cf7bb8e93bff9a88cf4.zip
r13402: Make Samba4 pass a nastier RPC-SCHANNEL test.
The new RPC-SCHANNEL test shows that the full credentials state must be kept in some shared memory, for some length of time. In particular, clients will reconnect with SCHANNEL (after loosing all connections) and expect that the credentials chain will remain in the same place. To achive this, we do the server-side crypto in a transaction, including the fetch/store of the shared state. Andrew Bartlett (This used to be commit 982a6aa871c9fce17410a9712cd9fa726025ff90)
Diffstat (limited to 'source4/auth/gensec/schannel.c')
-rw-r--r--source4/auth/gensec/schannel.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/source4/auth/gensec/schannel.c b/source4/auth/gensec/schannel.c
index dd0bc1eddd..10c8f9853a 100644
--- a/source4/auth/gensec/schannel.c
+++ b/source4/auth/gensec/schannel.c
@@ -149,7 +149,7 @@ NTSTATUS dcerpc_schannel_creds(struct gensec_security *gensec_security,
TALLOC_CTX *mem_ctx,
struct creds_CredentialState **creds)
{
- struct schannel_state *state = gensec_security->private_data;
+ struct schannel_state *state = talloc_get_type(gensec_security->private_data, struct schannel_state);
*creds = talloc_reference(mem_ctx, state->creds);
if (!*creds) {
@@ -167,7 +167,7 @@ NTSTATUS dcerpc_schannel_creds(struct gensec_security *gensec_security,
static NTSTATUS schannel_session_info(struct gensec_security *gensec_security,
struct auth_session_info **_session_info)
{
- struct schannel_state *state = gensec_security->private_data;
+ struct schannel_state *state = talloc_get_type(gensec_security->private_data, struct schannel_state);
return auth_anonymous_session_info(state, _session_info);
}