{
if (!logfile)
return;
- PARA_INFO_LOG("%s", "closing logfile\n");
+ PARA_INFO_LOG("closing logfile\n");
fclose(logfile);
}
if (groupname) {
struct group *g = getgrnam(groupname);
if (!g) {
- PARA_EMERG_LOG("failed to get group %s\n", groupname);
+ PARA_EMERG_LOG("failed to get group %s: %s\n",
+ groupname, strerror(errno));
exit(EXIT_FAILURE);
}
if (setgid(g->gr_gid) < 0) {
- PARA_EMERG_LOG("failed to set group id %d (%s)\n",
+ PARA_EMERG_LOG("failed to set group id %d: %s\n",
(int)g->gr_gid, strerror(errno));
exit(EXIT_FAILURE);
}
}
if (!username) {
- PARA_EMERG_LOG("%s", "root privileges, but no user option given\n");
+ PARA_EMERG_LOG("root privileges, but no user option given\n");
exit(EXIT_FAILURE);
}
tmp = para_strdup(username);
p = getpwnam(tmp);
free(tmp);
if (!p) {
- PARA_EMERG_LOG("%s", "no such user\n");
+ PARA_EMERG_LOG("%s: no such user\n", username);
exit(EXIT_FAILURE);
}
- PARA_INFO_LOG("%s", "dropping root privileges\n");
+ PARA_INFO_LOG("dropping root privileges\n");
setuid(p->pw_uid);
PARA_DEBUG_LOG("uid: %d, euid: %d\n", (int)getuid(), (int)geteuid());
}