X-Git-Url: https://code.citadel.org/?a=blobdiff_plain;f=citadel%2Fserver_main.c;h=f5ee8dc7d9e12d1ebbc05cf4c60df54bb3a866df;hb=eab93370750e7c05c792a007e4e0e4dde4a8a3f9;hp=568467fd437e9c829af3def6a5b40237cfc37f7a;hpb=4c6e691894791003cc46faa150674bf2f8a11c6d;p=citadel.git diff --git a/citadel/server_main.c b/citadel/server_main.c index 568467fd4..f5ee8dc7d 100644 --- a/citadel/server_main.c +++ b/citadel/server_main.c @@ -191,7 +191,11 @@ int main(int argc, char **argv) /* on some dists rundir gets purged on startup. so we need to recreate it. */ if (stat(ctdl_run_dir, &filestats)==-1){ +#ifdef BSD_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); } @@ -237,8 +241,11 @@ int main(int argc, char **argv) * corresponding group ids */ if (drop_root_perms) { +#ifdef BSD_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,