summaryrefslogtreecommitdiff
path: root/source4/librpc
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2004-08-23 05:51:38 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 12:58:15 -0500
commitaca6a1e1ee46fea49a5290613347d2f1d4b235c8 (patch)
tree80ec3511d9d0758e556c78af67718e48c4c7a1a2 /source4/librpc
parent0e5260c4f5defecce814243df18c0ab36dd7387b (diff)
downloadsamba-aca6a1e1ee46fea49a5290613347d2f1d4b235c8.tar.gz
samba-aca6a1e1ee46fea49a5290613347d2f1d4b235c8.tar.bz2
samba-aca6a1e1ee46fea49a5290613347d2f1d4b235c8.zip
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)
Diffstat (limited to 'source4/librpc')
-rw-r--r--source4/librpc/rpc/dcerpc_schannel.c7
1 files changed, 4 insertions, 3 deletions
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;
}