Adds check whether PID fp was acquired or not. If not, then init logging

facility, print error and exit.
This commit is contained in:
Zdenek Styblik 2012-01-25 09:02:59 +00:00
parent bf1e9952e1
commit fbf75dd075

View File

@ -748,11 +748,18 @@ ipmievd_main(struct ipmi_event_intf * eintf, int argc, char ** argv)
umask(022); umask(022);
fp = ipmi_open_file_write(pidfile); fp = ipmi_open_file_write(pidfile);
if (fp != NULL) { if (fp == NULL) {
/* Failed to get fp on PID file -> exit. */
log_halt();
log_init("ipmievd", daemon, verbose);
lprintf(LOG_ERR,
"Failed to open PID file '%s' for writing. Check file permission.\n",
pidfile);
exit(EXIT_FAILURE);
}
fprintf(fp, "%d\n", (int)getpid()); fprintf(fp, "%d\n", (int)getpid());
fclose(fp); fclose(fp);
} }
}
/* register signal handler for cleanup */ /* register signal handler for cleanup */
act.sa_handler = ipmievd_cleanup; act.sa_handler = ipmievd_cleanup;