From: Andreas Schneider Date: Thu, 20 Jan 2022 07:46:55 +0000 (+0100) Subject: s4:kdc: If we set the kerberos debug level to 10 write a trace file X-Git-Tag: tevent-0.12.0~250 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=5636c59a6d06a2ee092c64a736ad333bf9eac9aa;p=thirdparty%2Fsamba.git s4:kdc: If we set the kerberos debug level to 10 write a trace file Signed-off-by: Andreas Schneider Reviewed-by: Andrew Bartlett --- diff --git a/source4/kdc/kdc-service-mit.c b/source4/kdc/kdc-service-mit.c index e146c9f8588..f9aaedefc23 100644 --- a/source4/kdc/kdc-service-mit.c +++ b/source4/kdc/kdc-service-mit.c @@ -146,6 +146,7 @@ NTSTATUS mitkdc_task_init(struct task_server *task) kadm5_ret_t ret; kadm5_config_params config; void *server_handle; + int dbglvl = 0; task_server_set_title(task, "task[mitkdc_parent]"); @@ -188,6 +189,21 @@ NTSTATUS mitkdc_task_init(struct task_server *task) setenv("KRB5_KDC_PROFILE", kdc_config, 0); TALLOC_FREE(kdc_config); + dbglvl = debuglevel_get_class(DBGC_KERBEROS); + if (dbglvl >= 10) { + char *kdc_trace_file = talloc_asprintf(task, + "%s/mit_kdc_trace.log", + get_dyn_LOGFILEBASE()); + if (kdc_trace_file == NULL) { + task_server_terminate(task, + "KDC: no memory", + false); + return NT_STATUS_NO_MEMORY; + } + + setenv("KRB5_TRACE", kdc_trace_file, 1); + } + /* start it as a child process */ kdc_cmd = lpcfg_mit_kdc_command(task->lp_ctx);