From 1342185e333cb8139b7a70b7fe43571bcc2716a7 Mon Sep 17 00:00:00 2001 From: Andrew Bartlett Date: Thu, 11 Nov 2010 11:27:33 +1100 Subject: s4:heimdal: import lorikeet-heimdal-201011102149 (commit 5734d03c20e104c8f45533d07f2a2cbbd3224f29) --- source4/heimdal/lib/gssapi/krb5/init_sec_context.c | 27 +++++++++++----------- 1 file changed, 13 insertions(+), 14 deletions(-) (limited to 'source4/heimdal/lib/gssapi/krb5') diff --git a/source4/heimdal/lib/gssapi/krb5/init_sec_context.c b/source4/heimdal/lib/gssapi/krb5/init_sec_context.c index 4538a5376e..53855ca045 100644 --- a/source4/heimdal/lib/gssapi/krb5/init_sec_context.c +++ b/source4/heimdal/lib/gssapi/krb5/init_sec_context.c @@ -768,22 +768,21 @@ repl_mutual /* There is no OID wrapping. */ indata.length = input_token->length; indata.data = input_token->value; - kret = krb5_rd_rep (context, - ctx->auth_context, - &indata, - &repl); - if (kret >= ASN1_BAD_TIMEFORMAT && kret <= ASN1_INDEF_EXTRA_DATA) { - ret = _gsskrb5_decapsulate (minor_status, - input_token, - &indata, - "\x03\x00", - GSS_KRB5_MECHANISM); + kret = krb5_rd_rep(context, + ctx->auth_context, + &indata, + &repl); + if (kret) { + ret = _gsskrb5_decapsulate(minor_status, + input_token, + &indata, + "\x03\x00", + GSS_KRB5_MECHANISM); if (ret == GSS_S_COMPLETE) { - *minor_status = handle_error_packet(context, ctx, indata); - return GSS_S_FAILURE; + *minor_status = handle_error_packet(context, ctx, indata); + } else { + *minor_status = kret; } - } else if (kret) { - *minor_status = kret; return GSS_S_FAILURE; } } else { -- cgit