(main): parse kdc.conf
From: Jeffrey Hutzelman <jhutz@cmu.edu> git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@13122 ec53bebd-3082-4978-b11e-865c3cabbd6b
This commit is contained in:
@@ -469,6 +469,7 @@ verify (krb5_auth_context *auth_context,
|
|||||||
return 0;
|
return 0;
|
||||||
out:
|
out:
|
||||||
krb5_free_ticket (context, *ticket);
|
krb5_free_ticket (context, *ticket);
|
||||||
|
ticket = NULL;
|
||||||
return 1;
|
return 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -652,6 +653,7 @@ char *realm_str;
|
|||||||
int version_flag;
|
int version_flag;
|
||||||
int help_flag;
|
int help_flag;
|
||||||
char *port_str;
|
char *port_str;
|
||||||
|
char *config_file;
|
||||||
|
|
||||||
struct getargs args[] = {
|
struct getargs args[] = {
|
||||||
#ifdef HAVE_DLOPEN
|
#ifdef HAVE_DLOPEN
|
||||||
@@ -662,6 +664,7 @@ struct getargs args[] = {
|
|||||||
#endif
|
#endif
|
||||||
{ "keytab", 'k', arg_string, &keytab_str,
|
{ "keytab", 'k', arg_string, &keytab_str,
|
||||||
"keytab to get authentication key from", "kspec" },
|
"keytab to get authentication key from", "kspec" },
|
||||||
|
{ "config-file", 'c', arg_string, &config_file },
|
||||||
{ "realm", 'r', arg_string, &realm_str, "default realm", "realm" },
|
{ "realm", 'r', arg_string, &realm_str, "default realm", "realm" },
|
||||||
{ "port", 'p', arg_string, &port_str, "port" },
|
{ "port", 'p', arg_string, &port_str, "port" },
|
||||||
{ "version", 0, arg_flag, &version_flag },
|
{ "version", 0, arg_flag, &version_flag },
|
||||||
@@ -675,6 +678,7 @@ main (int argc, char **argv)
|
|||||||
int optind;
|
int optind;
|
||||||
krb5_keytab keytab;
|
krb5_keytab keytab;
|
||||||
krb5_error_code ret;
|
krb5_error_code ret;
|
||||||
|
char **files;
|
||||||
int port;
|
int port;
|
||||||
|
|
||||||
optind = krb5_program_setup(&context, argc, argv, args, num_args, NULL);
|
optind = krb5_program_setup(&context, argc, argv, args, num_args, NULL);
|
||||||
@@ -686,6 +690,18 @@ main (int argc, char **argv)
|
|||||||
exit(0);
|
exit(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (config_file == NULL)
|
||||||
|
config_file = HDB_DB_DIR "/kdc.conf";
|
||||||
|
|
||||||
|
ret = krb5_prepend_config_files_default(config_file, &files);
|
||||||
|
if (ret)
|
||||||
|
krb5_err(context, 1, ret, "getting configuration files");
|
||||||
|
|
||||||
|
ret = krb5_set_config_files(context, files);
|
||||||
|
krb5_free_config_files(files);
|
||||||
|
if (ret)
|
||||||
|
krb5_err(context, 1, ret, "reading configuration files");
|
||||||
|
|
||||||
if(realm_str)
|
if(realm_str)
|
||||||
krb5_set_default_realm(context, realm_str);
|
krb5_set_default_realm(context, realm_str);
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user