From aca6a1e1ee46fea49a5290613347d2f1d4b235c8 Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Mon, 23 Aug 2004 05:51:38 +0000 Subject: r1993: Allow WinXP domain logon to progress a bit further (it seems broken for me). Fix indent, and add a few more useful debug messages. Send a fault, if the bind is not accepted - don't just leave the client hanging. Andrew Bartlett (This used to be commit 486215edc1148ad754632be37760dc0d38b0340d) --- source4/librpc/rpc/dcerpc_schannel.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'source4/librpc') diff --git a/source4/librpc/rpc/dcerpc_schannel.c b/source4/librpc/rpc/dcerpc_schannel.c index bf5d835d44..b3d7048501 100644 --- a/source4/librpc/rpc/dcerpc_schannel.c +++ b/source4/librpc/rpc/dcerpc_schannel.c @@ -101,6 +101,7 @@ static NTSTATUS dcerpc_schannel_update(struct gensec_security *gensec_security, struct schannel_bind bind_schannel; struct schannel_bind_ack bind_schannel_ack; const char *account_name; + *out = data_blob(NULL, 0); switch (gensec_security->gensec_role) { case GENSEC_CLIENT: @@ -138,7 +139,7 @@ static NTSTATUS dcerpc_schannel_update(struct gensec_security *gensec_security, if (dce_schan_state->state != DCERPC_SCHANNEL_STATE_START) { /* no third leg on this protocol */ - return NT_STATUS_OK; + return NT_STATUS_INVALID_PARAMETER; } /* parse the schannel startup blob */ @@ -187,7 +188,7 @@ static NTSTATUS dcerpc_schannel_update(struct gensec_security *gensec_security, dce_schan_state->state = DCERPC_SCHANNEL_STATE_UPDATE_1; - return NT_STATUS_MORE_PROCESSING_REQUIRED; + return NT_STATUS_OK; } return NT_STATUS_INVALID_PARAMETER; } @@ -244,7 +245,7 @@ NTSTATUS dcerpc_schannel_creds(struct gensec_security *gensec_security, struct dcerpc_schannel_state *dce_schan_state = gensec_security->private_data; *creds = talloc_p(mem_ctx, struct creds_CredentialState); - if (*creds) { + if (!*creds) { return NT_STATUS_NO_MEMORY; } -- cgit