diff options
author | Stefan Metzmacher <metze@samba.org> | 2017-07-18 11:42:43 +0200 |
---|---|---|
committer | Andreas Schneider <asn@cryptomilk.org> | 2017-07-25 13:51:11 +0200 |
commit | 3e6daa30f5594c25da190773be79003eef9b157a (patch) | |
tree | 72eab555e044966156aadfa216dbd9b54551ea02 | |
parent | a97057d5b88c02bb3874f2dfe2ed5a8c2edfc596 (diff) | |
download | samba-3e6daa30f5594c25da190773be79003eef9b157a.tar.gz |
auth/spnego: generate a valid packet if gensec_spnego_client_negTokenTarg() gives MORE_PROCESSING_REQUIRED
If we wait for the mechListMIC from the server we should send a valid paket
instead of an empty blob.
Signed-off-by: Stefan Metzmacher <metze@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
-rw-r--r-- | auth/gensec/spnego.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/auth/gensec/spnego.c b/auth/gensec/spnego.c index 22abad342b1..5eb75ad47aa 100644 --- a/auth/gensec/spnego.c +++ b/auth/gensec/spnego.c @@ -829,10 +829,6 @@ static NTSTATUS gensec_spnego_client_negTokenTarg(struct gensec_security *gensec spnego_state->needs_mic_sign = false; } - if (spnego_state->needs_mic_check) { - status = NT_STATUS_MORE_PROCESSING_REQUIRED; - } - client_response: if (GENSEC_UPDATE_IS_NTERROR(status)) { DBG_WARNING("SPNEGO(%s) login failed: %s\n", @@ -856,8 +852,10 @@ static NTSTATUS gensec_spnego_client_negTokenTarg(struct gensec_security *gensec return NT_STATUS_INVALID_PARAMETER; } - spnego_state->state_position = SPNEGO_DONE; - return status; + if (!spnego_state->needs_mic_check) { + spnego_state->state_position = SPNEGO_DONE; + return NT_STATUS_OK; + } } /* compose reply */ |