summaryrefslogtreecommitdiff
path: root/source4/auth/gensec/schannel_sign.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_sign.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_sign.c')
-rw-r--r--source4/auth/gensec/schannel_sign.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/source4/auth/gensec/schannel_sign.c b/source4/auth/gensec/schannel_sign.c
index f143ccd4c7..b4549ddefd 100644
--- a/source4/auth/gensec/schannel_sign.c
+++ b/source4/auth/gensec/schannel_sign.c
@@ -105,7 +105,7 @@ NTSTATUS schannel_unseal_packet(struct gensec_security *gensec_security,
const uint8_t *whole_pdu, size_t pdu_length,
const DATA_BLOB *sig)
{
- struct schannel_state *state = gensec_security->private_data;
+ struct schannel_state *state = talloc_get_type(gensec_security->private_data, struct schannel_state);
uint8_t digest_final[16];
uint8_t confounder[8];
@@ -156,7 +156,7 @@ NTSTATUS schannel_check_packet(struct gensec_security *gensec_security,
const uint8_t *whole_pdu, size_t pdu_length,
const DATA_BLOB *sig)
{
- struct schannel_state *state = gensec_security->private_data;
+ struct schannel_state *state = talloc_get_type(gensec_security->private_data, struct schannel_state);
uint8_t digest_final[16];
uint8_t seq_num[8];
@@ -204,7 +204,7 @@ NTSTATUS schannel_seal_packet(struct gensec_security *gensec_security,
const uint8_t *whole_pdu, size_t pdu_length,
DATA_BLOB *sig)
{
- struct schannel_state *state = gensec_security->private_data;
+ struct schannel_state *state = talloc_get_type(gensec_security->private_data, struct schannel_state);
uint8_t digest_final[16];
uint8_t confounder[8];
@@ -252,7 +252,7 @@ NTSTATUS schannel_sign_packet(struct gensec_security *gensec_security,
const uint8_t *whole_pdu, size_t pdu_length,
DATA_BLOB *sig)
{
- struct schannel_state *state = gensec_security->private_data;
+ struct schannel_state *state = talloc_get_type(gensec_security->private_data, struct schannel_state);
uint8_t digest_final[16];
uint8_t seq_num[8];