From d9e764ed9b134f3c7e0869bd5567dbf49513d45f Mon Sep 17 00:00:00 2001 From: Stefan Metzmacher Date: Thu, 13 Jul 2017 16:20:59 +0200 Subject: auth/spnego: introduce an early return in gensec_spnego_create_negTokenInit() This avoids print two debug message for the same failure. Signed-off-by: Stefan Metzmacher Reviewed-by: Andreas Schneider --- auth/gensec/spnego.c | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) (limited to 'auth') diff --git a/auth/gensec/spnego.c b/auth/gensec/spnego.c index c91ae3833d0..d8c62b350e3 100644 --- a/auth/gensec/spnego.c +++ b/auth/gensec/spnego.c @@ -214,7 +214,7 @@ static NTSTATUS gensec_spnego_create_negTokenInit(struct gensec_security *gensec DATA_BLOB *out) { int i; - NTSTATUS status = NT_STATUS_INVALID_PARAMETER; + NTSTATUS status; const char **mechTypes = NULL; DATA_BLOB unwrapped_out = data_blob_null; const struct gensec_security_ops_wrapper *all_sec; @@ -302,15 +302,21 @@ static NTSTATUS gensec_spnego_create_negTokenInit(struct gensec_security *gensec spnego_state->sub_sec_security->ops->name, principal, next, nt_errstr(status))); + if (next == NULL) { + /* + * A hard error without a possible fallback. + */ + return status; + } + /* * Pretend we never started it */ gensec_spnego_update_sub_abort(spnego_state); } - DBG_WARNING("Failed to setup SPNEGO negTokenInit request: %s\n", - nt_errstr(status)); - return status; + DBG_WARNING("Failed to setup SPNEGO negTokenInit request\n"); + return NT_STATUS_INVALID_PARAMETER; reply: spnego_out.type = SPNEGO_NEG_TOKEN_INIT; -- cgit v1.2.1