]> git.ipfire.org Git - thirdparty/krb5.git/commitdiff
Remove sent_nontrivial_preauth field
authorGreg Hudson <ghudson@mit.edu>
Mon, 16 Jan 2017 18:42:18 +0000 (13:42 -0500)
committerGreg Hudson <ghudson@mit.edu>
Thu, 2 Feb 2017 20:10:05 +0000 (15:10 -0500)
In krb5_init_creds_context, the selected_preauth_type field subsumes
the need for sent_nontrivial_preauth.  Use it instead.

src/lib/krb5/krb/get_in_tkt.c
src/lib/krb5/krb/init_creds_ctx.h

index b3cea6bd8c11683b59734e05e7d49d8ad68adcaa..e48ade10cc7eb173b92902a2ee48f1a0cb940ef6 100644 (file)
@@ -1377,8 +1377,6 @@ init_creds_step_request(krb5_context context,
         krb5_free_data(context, ctx->encoded_previous_request);
         ctx->encoded_previous_request = NULL;
     }
-    if (ctx->request->padata)
-        ctx->sent_nontrivial_preauth = TRUE;
     if (ctx->enc_pa_rep_permitted) {
         code = add_padata(&ctx->request->padata, KRB5_ENCPADATA_REQ_ENC_PA_REP,
                           NULL, 0);
@@ -1503,7 +1501,7 @@ init_creds_step_reply(krb5_context context,
             ctx->restarted = TRUE;
             code = restart_init_creds_loop(context, ctx, TRUE);
         } else if (!ctx->restarted && reply_code == KDC_ERR_PREAUTH_FAILED &&
-                   !ctx->sent_nontrivial_preauth) {
+                   ctx->selected_preauth_type == KRB5_PADATA_NONE) {
             /* The KDC didn't like our informational padata (probably a pre-1.7
              * MIT krb5 KDC).  Retry without it. */
             ctx->enc_pa_rep_permitted = FALSE;
@@ -1543,7 +1541,6 @@ init_creds_step_reply(krb5_context context,
                 goto cleanup;
             /* Reset per-realm negotiation state. */
             ctx->restarted = FALSE;
-            ctx->sent_nontrivial_preauth = FALSE;
             ctx->enc_pa_rep_permitted = TRUE;
             code = restart_init_creds_loop(context, ctx, FALSE);
         } else {
index a7cded94251802de08b8ebb956756a362ba1ff19..8c8b7494bdb8ae09ddfdd453bcd9745f09500680 100644 (file)
@@ -58,7 +58,6 @@ struct _krb5_init_creds_context {
     krb5_enctype etype;
     krb5_boolean enc_pa_rep_permitted;
     krb5_boolean restarted;
-    krb5_boolean sent_nontrivial_preauth;
     krb5_boolean preauth_required;
     struct krb5_responder_context_st rctx;
     krb5_preauthtype selected_preauth_type;