aboutsummaryrefslogtreecommitdiff
path: root/crypto/krb5/src/kadmin/cli/keytab.c
diff options
context:
space:
mode:
Diffstat (limited to 'crypto/krb5/src/kadmin/cli/keytab.c')
-rw-r--r--crypto/krb5/src/kadmin/cli/keytab.c14
1 files changed, 9 insertions, 5 deletions
diff --git a/crypto/krb5/src/kadmin/cli/keytab.c b/crypto/krb5/src/kadmin/cli/keytab.c
index b0c8378b40b6..408eac929807 100644
--- a/crypto/krb5/src/kadmin/cli/keytab.c
+++ b/crypto/krb5/src/kadmin/cli/keytab.c
@@ -50,14 +50,14 @@ static int quiet;
static int norandkey;
static void
-add_usage()
+add_usage(void)
{
fprintf(stderr, _("Usage: ktadd [-k[eytab] keytab] [-q] [-e keysaltlist] "
"[-norandkey] [principal | -glob princ-exp] [...]\n"));
}
static void
-rem_usage()
+rem_usage(void)
{
fprintf(stderr, _("Usage: ktremove [-k[eytab] keytab] [-q] principal "
"[kvno|\"all\"|\"old\"]\n"));
@@ -111,7 +111,7 @@ process_keytab(krb5_context my_context, char **keytab_str,
}
void
-kadmin_keytab_add(int argc, char **argv)
+kadmin_keytab_add(int argc, char **argv, int sci_idx, void *info_ptr)
{
krb5_keytab keytab = 0;
char *keytab_str = NULL, **princs;
@@ -203,7 +203,7 @@ kadmin_keytab_add(int argc, char **argv)
}
void
-kadmin_keytab_remove(int argc, char **argv)
+kadmin_keytab_remove(int argc, char **argv, int sci_idx, void *info_ptr)
{
krb5_keytab keytab = 0;
char *keytab_str = NULL;
@@ -363,7 +363,7 @@ remove_principal(char *keytab_str, krb5_keytab keytab,
{
krb5_principal princ = NULL;
krb5_keytab_entry entry;
- krb5_kt_cursor cursor;
+ krb5_kt_cursor cursor = NULL;
enum { UNDEF, SPEC, HIGH, ALL, OLD } mode;
int code, did_something;
krb5_kvno kvno;
@@ -443,6 +443,7 @@ remove_principal(char *keytab_str, krb5_keytab keytab,
_("while temporarily ending keytab scan"));
goto cleanup;
}
+ cursor = NULL;
code = krb5_kt_remove_entry(context, keytab, &entry);
if (code != 0) {
com_err(whoami, code, _("while deleting entry from keytab"));
@@ -471,6 +472,7 @@ remove_principal(char *keytab_str, krb5_keytab keytab,
com_err(whoami, code, _("while ending keytab scan"));
goto cleanup;
}
+ cursor = NULL;
/*
* If !did_someting then mode must be OLD or we would have
@@ -483,6 +485,8 @@ remove_principal(char *keytab_str, krb5_keytab keytab,
}
cleanup:
+ if (cursor != NULL)
+ (void)krb5_kt_end_seq_get(context, keytab, &cursor);
krb5_free_principal(context, princ);
}