* facilities when we need to...
*/
if (enable_syslog) {
- if (running_as_daemon) {
- openlog("citadel", LOG_NDELAY, 0);
- }
- else {
- openlog("citadel", LOG_PERROR|LOG_NDELAY, 0);
- }
+ openlog("citadel", LOG_NDELAY, 0);
setlogmask(LOG_UPTO(verbosity));
}
/* on some dists rundir gets purged on startup. so we need to recreate it. */
if (stat(ctdl_run_dir, &filestats)==-1){
+#ifdef SOLARIS_GETPWUID
+ pwp = getpwuid_r(config.c_ctdluid, &pw, pwbuf, sizeof(pwbuf));
+#else
getpwuid_r(config.c_ctdluid, &pw, pwbuf, sizeof(pwbuf), &pwp);
+#endif
mkdir(ctdl_run_dir, 0755);
chown(ctdl_run_dir, config.c_ctdluid, (pwp==NULL)?-1:pw.pw_gid);
}
* corresponding group ids
*/
if (drop_root_perms) {
- getpwuid_r(config.c_ctdluid, &pw, pwbuf, sizeof(pwbuf), &pwp);
+ cdb_chmod_data(); /* make sure we own our data files */
+#ifdef SOLARIS_GETPWUID
+ pwp = getpwuid_r(config.c_ctdluid, &pw, pwbuf, sizeof(pwbuf));
+#else
+ getpwuid_r(config.c_ctdluid, &pw, pwbuf, sizeof(pwbuf), &pwp);
+#endif
if (pwp == NULL)
lprintf(CTDL_CRIT, "WARNING: getpwuid(%ld): %s\n"
"Group IDs will be incorrect.\n", (long)CTDLUID,