From bd455bae18ebe9b297894388cd9aa1907e859d4e Mon Sep 17 00:00:00 2001 From: Johan Danielsson Date: Sun, 24 Aug 1997 12:08:55 +0000 Subject: [PATCH] kdc_openlog git-svn-id: svn://svn.h5l.se/heimdal/trunk/heimdal@3132 ec53bebd-3082-4978-b11e-865c3cabbd6b --- kdc/config.c | 3 ++- kdc/kdc_locl.h | 1 + kdc/log.c | 20 +++++++++++++++++--- 3 files changed, 20 insertions(+), 4 deletions(-) diff --git a/kdc/config.c b/kdc/config.c index bdf97609b..843ece505 100644 --- a/kdc/config.c +++ b/kdc/config.c @@ -111,7 +111,7 @@ configure(int argc, char **argv) } if(config_file == NULL) - config_file = "kdc.conf"; + config_file = HDB_DB_DIR "/kdc.conf"; if(krb5_config_parse_file(config_file, &cf)) goto end; @@ -171,6 +171,7 @@ configure(int argc, char **argv) else kdc_warn_pwexpire = 0; + kdc_openlog(cf); krb5_config_file_free (cf); end: if(max_request == 0) diff --git a/kdc/kdc_locl.h b/kdc/kdc_locl.h index e2a61f969..997642dfd 100644 --- a/kdc/kdc_locl.h +++ b/kdc/kdc_locl.h @@ -115,6 +115,7 @@ krb5_error_code do_version4(unsigned char*, size_t, krb5_data*, void loop (void); +void kdc_openlog(krb5_config_section *cf); void kdc_log(int, const char *fmt, ...); char* kdc_log_msg_va(int, const char*, va_list); char* kdc_log_msg(int, const char*, ...); diff --git a/kdc/log.c b/kdc/log.c index 41de15148..4c8c1d5f8 100644 --- a/kdc/log.c +++ b/kdc/log.c @@ -41,13 +41,27 @@ RCSID("$Id$"); static krb5_log_facility *logf; +void +kdc_openlog(krb5_config_section *cf) +{ + char **s, **p; + krb5_initlog(context, "kdc", &logf); + s = krb5_config_get_strings(cf, "kdc", "logging", NULL); + + if(s == NULL) + s = krb5_config_get_strings(context->cf, "logging", "kdc", NULL); + if(s){ + for(p = s; *p; p++) + krb5_addlog_dest(context, logf, *p); + krb5_config_free_strings(s); + }else + krb5_addlog_dest(context, logf, "0-1/FILE:" HDB_DB_DIR "/kdc.log"); +} + char* kdc_log_msg_va(int level, const char *fmt, va_list ap) { char *msg; - if(logf == NULL) - krb5_openlog(context, "kdc", &logf); - krb5_vlog_msg(context, logf, &msg, level, fmt, ap); return msg; }