summaryrefslogtreecommitdiffstats
path: root/ipa-client/ipa-rmkeytab.c
diff options
context:
space:
mode:
authorRob Crittenden <rcritten@redhat.com>2009-12-17 14:29:54 -0500
committerJason Gerard DeRose <jderose@redhat.com>2009-12-18 05:20:15 -0700
commitbf9d4c598408ff7ced3b085163ae0a41d02f0e52 (patch)
treea10abb91eee3ef6b8e0eab830d75bcf7ce210fb3 /ipa-client/ipa-rmkeytab.c
parentaf20a1a2da19a43d2dd7a28c596c0e2f908e8d3e (diff)
downloadfreeipa-bf9d4c598408ff7ced3b085163ae0a41d02f0e52.tar.gz
freeipa-bf9d4c598408ff7ced3b085163ae0a41d02f0e52.tar.xz
freeipa-bf9d4c598408ff7ced3b085163ae0a41d02f0e52.zip
Need to supsend looping through the keytab entries when doing a delete.
Diffstat (limited to 'ipa-client/ipa-rmkeytab.c')
-rw-r--r--ipa-client/ipa-rmkeytab.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/ipa-client/ipa-rmkeytab.c b/ipa-client/ipa-rmkeytab.c
index d3f1ded3..245c9f2d 100644
--- a/ipa-client/ipa-rmkeytab.c
+++ b/ipa-client/ipa-rmkeytab.c
@@ -116,6 +116,11 @@ remove_realm(krb5_context context, krb5_keytab ktid, const char *realm, int debu
goto done;
}
+
+ /* keytab entries are locked when looping. Temporarily suspend
+ * the looping. */
+ krb5_kt_end_seq_get(context, ktid, &kt_cursor);
+
if (strstr(entry_princ_s, realm) != NULL) {
rval = remove_principal(context, ktid, entry_princ_s, debug);
if (rval != 0)