#include "winbindd.h"
#include "nsswitch/winbind_client.h"
#include "nsswitch/wb_reqtrans.h"
+#include "ntdomain.h"
#include "../librpc/gen_ndr/srv_lsa.h"
#include "../librpc/gen_ndr/srv_samr.h"
#include "secrets.h"
bool ret;
if (lp_loaded()) {
- const char *fname = lp_configfile();
+ char *fname = lp_configfile();
if (file_exist(fname) && !strcsequal(fname,get_dyn_CONFIGFILE())) {
set_dyn_CONFIGFILE(fname);
}
+ TALLOC_FREE(fname);
}
/* if this is a child, restore the logfile to the special
}
}
+ /* We call dump_core_setup one more time because the command line can
+ * set the log file or the log-basename and this will influence where
+ * cores are stored. Without this call get_dyn_LOGFILEBASE will be
+ * the default value derived from build's prefix. For EOM this value
+ * is often not related to the path where winbindd is actually run
+ * in production.
+ */
+ dump_core_setup("winbindd");
+
if (is_daemon && interactive) {
d_fprintf(stderr,"\nERROR: "
"Option -i|--interactive is not allowed together with -D|--daemon\n\n");
DEBUG(0, ("error opening config file\n"));
exit(1);
}
+ /* After parsing the configuration file we setup the core path one more time
+ * as the log file might have been set in the configuration and cores's
+ * path is by default basename(lp_logfile()).
+ */
+ dump_core_setup("winbindd");
/* Initialise messaging system */