move common code for opening the keytab to ktutil.c

git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@10383 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
Johan Danielsson
2001-07-23 09:46:41 +00:00
parent fd34ebd90c
commit 4d7d46d8b7
7 changed files with 36 additions and 79 deletions

View File

@@ -40,7 +40,7 @@ static int help_flag;
static int version_flag;
int verbose_flag;
char *keytab_string;
char keytab_buf[256];
static char keytab_buf[256];
static int help(int argc, char **argv);
@@ -108,6 +108,31 @@ static int num_args = sizeof(args) / sizeof(args[0]);
krb5_context context;
krb5_keytab
ktutil_open_keytab(void)
{
krb5_error_code ret;
krb5_keytab keytab;
if (keytab_string == NULL) {
ret = krb5_kt_default_modify_name (context, keytab_buf,
sizeof(keytab_buf));
if (ret) {
krb5_warn(context, ret, "krb5_kt_default_modify_name");
return NULL;
}
keytab_string = keytab_buf;
}
ret = krb5_kt_resolve(context, keytab_string, &keytab);
if (ret) {
krb5_warn(context, ret, "resolving keytab %s", keytab_string);
return NULL;
}
if (verbose_flag)
fprintf (stderr, "Using keytab %s\n", keytab_string);
return keytab;
}
static int
help(int argc, char **argv)
{