From 74edc033f1357fb09898b304b784b0c42a5a41cd Mon Sep 17 00:00:00 2001 From: Derrick Brashear Date: Thu, 15 Mar 2012 11:51:39 -0400 Subject: [PATCH] osx: deal with more kerberos damage the number of things which can return success without succeeding is truly sad. Reviewed-on: http://gerrit.openafs.org/6911 Reviewed-by: Jeffrey Altman Tested-by: BuildBot Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear (cherry picked from commit 59b57ff85acbef10bcec9724c42e3bad78538687) Change-Id: Ie41cb88f9b58945b8ae486eab671b00fe0cf10a6 Reviewed-on: http://gerrit.openafs.org/6964 Reviewed-by: Derrick Brashear Tested-by: Derrick Brashear --- src/platform/DARWIN/AFSPreference/Krb5Util.m | 40 ++++++++++---------- 1 file changed, 20 insertions(+), 20 deletions(-) diff --git a/src/platform/DARWIN/AFSPreference/Krb5Util.m b/src/platform/DARWIN/AFSPreference/Krb5Util.m index fff03caad..b6050d0fd 100644 --- a/src/platform/DARWIN/AFSPreference/Krb5Util.m +++ b/src/platform/DARWIN/AFSPreference/Krb5Util.m @@ -150,26 +150,26 @@ in.client = me; } if ((ret == 0) && (in.client)) { - ret = krb5_build_principal_ext(kcontext, &server, - krb5_princ_realm(kcontext, - in.client)->length, - krb5_princ_realm(kcontext, - in.client)->data, - 6, "krbtgt", - krb5_princ_realm(kcontext, - in.client)->length, - krb5_princ_realm(kcontext, - in.client)->data, - 0); - } - if (ret == 0) { - in.server = server; - ret = krb5_get_renewed_creds(kcontext, &in, me, id, server); - } - if (ret == 0) { - ret = krb5_cc_initialize (kcontext, id, me); - ret = krb5_cc_store_cred(kcontext, id, &in); - krb5_cc_close(kcontext,id); + ret = krb5_build_principal_ext(kcontext, &server, + krb5_princ_realm(kcontext, + in.client)->length, + krb5_princ_realm(kcontext, + in.client)->data, + 6, "krbtgt", + krb5_princ_realm(kcontext, + in.client)->length, + krb5_princ_realm(kcontext, + in.client)->data, + 0); + if (ret == 0 && server) { + in.server = server; + ret = krb5_get_renewed_creds(kcontext, &in, me, id, server); + if (ret == 0) { + ret = krb5_cc_initialize (kcontext, id, me); + ret = krb5_cc_store_cred(kcontext, id, &in); + krb5_cc_close(kcontext,id); + } + } } krb5_free_principal(kcontext, server); #else -- 2.39.5