aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLuke Howard <lukeh@padl.com>2009-11-16 09:30:30 +0000
committerLuke Howard <lukeh@padl.com>2009-11-16 09:30:30 +0000
commitd398fb617ddfaf460187ce8e0f6b57dc179d268c (patch)
tree994975cc7afc7720220ec4ed6bea29a77551c3fd
parent256e1f54744f80b698c1791d96cb124295447d53 (diff)
downloadkrb5-d398fb617ddfaf460187ce8e0f6b57dc179d268c.zip
krb5-d398fb617ddfaf460187ce8e0f6b57dc179d268c.tar.gz
krb5-d398fb617ddfaf460187ce8e0f6b57dc179d268c.tar.bz2
cleanup
git-svn-id: svn://anonsvn.mit.edu/krb5/users/lhoward/iakerb@23235 dc483132-0cff-0310-8789-dd5450dbe970
-rw-r--r--src/lib/krb5/krb/get_in_tkt.c16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/lib/krb5/krb/get_in_tkt.c b/src/lib/krb5/krb/get_in_tkt.c
index acf098e..6a99ad6 100644
--- a/src/lib/krb5/krb/get_in_tkt.c
+++ b/src/lib/krb5/krb/get_in_tkt.c
@@ -1844,6 +1844,12 @@ cleanup:
return code;
}
+/*
+ * Do next step of credentials acquisition.
+ *
+ * On success returns 0 or KRB5KRB_ERR_RESPONSE_TOO_BIG if the request
+ * should be sent with TCP.
+ */
krb5_error_code KRB5_CALLCONV
krb5_init_creds_step(krb5_context context,
krb5_init_creds_context ctx,
@@ -1852,7 +1858,7 @@ krb5_init_creds_step(krb5_context context,
krb5_data *realm,
unsigned int *flags)
{
- krb5_error_code code;
+ krb5_error_code code, code2;
*flags = 0;
@@ -1865,9 +1871,11 @@ krb5_init_creds_step(krb5_context context,
if (in->length != 0) {
code = init_creds_step_reply(context, ctx, in, flags);
if (code == KRB5KRB_ERR_RESPONSE_TOO_BIG) {
- code = krb5int_copy_data_contents(context,
- ctx->encoded_previous_request,
- out);
+ code2 = krb5int_copy_data_contents(context,
+ ctx->encoded_previous_request,
+ out);
+ if (code2 != 0)
+ code = code2;
}
if (code != 0 || (*flags & KRB5_INIT_CREDS_STEP_FLAG_COMPLETE))
goto cleanup;