From 9883b1f3e596c68a47582805aa11ca877aff3c50 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Love=20H=C3=B6rnquist=20=C3=85strand?= Date: Mon, 18 Aug 2003 06:03:42 +0000 Subject: [PATCH] (main): use krb5_prepend_config_files_default, now all options in kdc.conf is parsed, not just [kdc]key-file= git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@12585 ec53bebd-3082-4978-b11e-865c3cabbd6b --- kadmin/kadmin.c | 18 +++++++++++++----- kadmin/kadmind.c | 17 +++++++++++++---- 2 files changed, 26 insertions(+), 9 deletions(-) diff --git a/kadmin/kadmin.c b/kadmin/kadmin.c index b045125c9..4d14be029 100644 --- a/kadmin/kadmin.c +++ b/kadmin/kadmin.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997 - 2001 Kungliga Tekniska Högskolan + * Copyright (c) 1997 - 2001, 2003 Kungliga Tekniska Högskolan * (Royal Institute of Technology, Stockholm, Sweden). * All rights reserved. * @@ -221,7 +221,7 @@ int main(int argc, char **argv) { krb5_error_code ret; - krb5_config_section *cf = NULL; + char **files; kadm5_config_params conf; int optind = 0; @@ -248,8 +248,17 @@ main(int argc, char **argv) if (config_file == NULL) config_file = HDB_DB_DIR "/kdc.conf"; - if(krb5_config_parse_file(context, config_file, &cf) == 0) { - const char *p = krb5_config_get_string (context, cf, + 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"); + + { + const char *p = krb5_config_get_string (context, NULL, "kdc", "key-file", NULL); if (p) keyfile = strdup(p); @@ -316,7 +325,6 @@ main(int argc, char **argv) ret = sl_loop (actual_cmds, "kadmin> ") != 0; kadm5_destroy(kadm_handle); - krb5_config_file_free (context, cf); krb5_free_context(context); return ret; } diff --git a/kadmin/kadmind.c b/kadmin/kadmind.c index 51a37412c..bf34ce230 100644 --- a/kadmin/kadmind.c +++ b/kadmin/kadmind.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 1997-2002 Kungliga Tekniska Högskolan + * Copyright (c) 1997-2003 Kungliga Tekniska Högskolan * (Royal Institute of Technology, Stockholm, Sweden). * All rights reserved. * @@ -100,7 +100,7 @@ int main(int argc, char **argv) { krb5_error_code ret; - krb5_config_section *cf; + char **files; int optind = 0; int e; krb5_log_facility *logf; @@ -136,8 +136,17 @@ main(int argc, char **argv) if (config_file == NULL) config_file = HDB_DB_DIR "/kdc.conf"; - if(krb5_config_parse_file(context, config_file, &cf) == 0) { - const char *p = krb5_config_get_string (context, cf, + 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"); + + { + const char *p = krb5_config_get_string (context, NULL, "kdc", "key-file", NULL); if (p) keyfile = strdup(p);