Fix krb5_cc_move() issues

Move init/copy/destroy fallback sequence from fcc_move() to
krb5_cc_move().

Make sure all backends's move() method calls krb5_cc_destroy() on the
source on success (and only on success).

In text_cc make sure that we can find in the destination the cred
stored into the source.
This commit is contained in:
Nicolas Williams
2019-09-09 19:19:53 -05:00
parent cf16e60f3b
commit ec84667763
8 changed files with 73 additions and 107 deletions

View File

@@ -992,8 +992,7 @@ acc_move(krb5_context context, krb5_ccache from, krb5_ccache to)
error = (*ato->ccache->func->move)(afrom->ccache, ato->ccache);
acc_destroy(context, from);
krb5_cc_destroy(context, from);
return translate_cc_error(context, error);
}