Fix backwards flag output in krb5_init_creds_step()
authorGreg Hudson <ghudson@mit.edu>
Mon, 29 Mar 2010 22:08:21 +0000 (22:08 +0000)
committerGreg Hudson <ghudson@mit.edu>
Mon, 29 Mar 2010 22:08:21 +0000 (22:08 +0000)
krb5_init_creds_step() is taken from Heimdal, which sets *flags to 1
for "continue" and 0 for "stop".  Unfortunately, we got it backwards
in 1.8; fix it for 1.8.1.

ticket: 6693
tags: pullup
target_version: 1.8.1

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@23844 dc483132-0cff-0310-8789-dd5450dbe970

src/lib/krb5/krb/get_in_tkt.c

index ab92ee115308004a18c7075fcb918e0f796681ee..b1b837d06cd5f9eabdcd783b08fdf15cc6d7c8b4 100644 (file)
@@ -1083,7 +1083,7 @@ init_creds_get(krb5_context context,
                                     &flags);
         if (code == KRB5KRB_ERR_RESPONSE_TOO_BIG && !tcp_only)
             tcp_only = 1;
-        else if (code != 0 || (flags & KRB5_INIT_CREDS_STEP_FLAG_COMPLETE))
+        else if (code != 0 || (flags & 1) == 0)
             break;
 
         krb5_free_data_contents(context, &reply);
@@ -2065,7 +2065,7 @@ cleanup:
         }
     }
 
-    *flags = (ctx->flags & KRB5_INIT_CREDS_STEP_FLAG_COMPLETE);
+    *flags = (ctx->flags & KRB5_INIT_CREDS_STEP_FLAG_COMPLETE) ? 0 : 1;
 
     return code;
 }