From ae181ee52e3ef391464d18447f12c89561808353 Mon Sep 17 00:00:00 2001 From: Nicolas Williams Date: Tue, 25 Jan 2022 12:47:47 -0600 Subject: [PATCH] krb5: Check for KRB5_CC_NOSUPP in krb5_cc_move() The KCM cache can return KRB5_CC_NOSUPP instead of ENOTSUP. --- lib/krb5/cache.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/krb5/cache.c b/lib/krb5/cache.c index 35c03adf4..65825c542 100644 --- a/lib/krb5/cache.c +++ b/lib/krb5/cache.c @@ -1651,7 +1651,7 @@ krb5_cc_move(krb5_context context, krb5_ccache from, krb5_ccache to) ret = (*to->ops->move)(context, from, to); if (ret == 0) return 0; - if (ret != EXDEV && ret != ENOTSUP) + if (ret != EXDEV && ret != ENOTSUP && ret != KRB5_CC_NOSUPP) return ret; /* Fallback to high-level copy */ } /* Else high-level copy */ @@ -1764,7 +1764,7 @@ krb5_cc_set_config(krb5_context context, krb5_ccache id, /* Remove old configuration */ ret = krb5_cc_remove_cred(context, id, 0, &cred); - if (ret && ret != KRB5_CC_NOTFOUND) + if (ret && ret != KRB5_CC_NOTFOUND && ret != KRB5_CC_NOSUPP) goto out; if (data) {