summaryrefslogtreecommitdiff
path: root/source4/librpc/rpc/dcerpc_auth.c
diff options
context:
space:
mode:
authorAndrew Bartlett <abartlet@samba.org>2005-01-10 11:09:31 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:08:37 -0500
commite2c71f0bf5c8555e902ee2660a47433f6199f45a (patch)
treedf5583b8d002ddcce48847f928cbc33e4d4ebfd0 /source4/librpc/rpc/dcerpc_auth.c
parent7db9de3ea9d0b3693aea08b3050f378a4ca9cf0b (diff)
downloadsamba-e2c71f0bf5c8555e902ee2660a47433f6199f45a.tar.gz
samba-e2c71f0bf5c8555e902ee2660a47433f6199f45a.tar.bz2
samba-e2c71f0bf5c8555e902ee2660a47433f6199f45a.zip
r4636: Per tridge's wish (and probably correct behaviour), don't key off a
specific GENSEC mech type, but on the behaviour of the mech. Andrew Bartlett (This used to be commit f2bd7a5a699b91d99d7dc2a0b3b6c7006274a59c)
Diffstat (limited to 'source4/librpc/rpc/dcerpc_auth.c')
-rw-r--r--source4/librpc/rpc/dcerpc_auth.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/source4/librpc/rpc/dcerpc_auth.c b/source4/librpc/rpc/dcerpc_auth.c
index 1c73bde6e4..c506c8fd4c 100644
--- a/source4/librpc/rpc/dcerpc_auth.c
+++ b/source4/librpc/rpc/dcerpc_auth.c
@@ -100,12 +100,14 @@ NTSTATUS dcerpc_bind_auth(struct dcerpc_pipe *p, uint8_t auth_type, uint8_t auth
p->conn->security_state.auth_info->credentials = credentials;
- if (auth_type == DCERPC_AUTH_TYPE_SPNEGO) {
+ if (NT_STATUS_EQUAL(status, NT_STATUS_MORE_PROCESSING_REQUIRED)) {
+ /* We are demanding a reply, so use a request that will get us one */
status = dcerpc_alter_context(p, tmp_ctx, &p->syntax, &p->transfer_syntax);
if (!NT_STATUS_IS_OK(status)) {
break;
}
} else {
+ /* NO reply expected, so just send it */
status = dcerpc_auth3(p->conn, tmp_ctx);
credentials = data_blob(NULL, 0);
if (!NT_STATUS_IS_OK(status)) {