SIGALRM could be received before child_process is created (Jason Crawford)

git-svn-id: https://nagiosplug.svn.sourceforge.net/svnroot/nagiosplug/nagiosplug/trunk@1317 f882894a-f735-0410-b71e-b25c423dba1c
This commit is contained in:
Ton Voon 2006-02-17 09:08:08 +00:00
parent 91bd5cfc68
commit 4a7401ea71
2 changed files with 10 additions and 5 deletions

View file

@ -174,3 +174,4 @@ Rick Frey
Serhan Kiymaz
Gerhard Lausser
Jon Vandegrift
Jason Crawford

View file

@ -270,12 +270,16 @@ popen_timeout_alarm_handler (int signo)
{
int fh;
if (signo == SIGALRM) {
fh=fileno (child_process);
if(fh >= 0){
kill (childpid[fh], SIGKILL);
}
printf (_("CRITICAL - Plugin timed out after %d seconds\n"),
if (child_process != NULL) {
fh=fileno (child_process);
if(fh >= 0){
kill (childpid[fh], SIGKILL);
}
printf (_("CRITICAL - Plugin timed out after %d seconds\n"),
timeout_interval);
} else {
printf (_("CRITICAL - popen timeout received, but no child process\n"));
}
exit (STATE_CRITICAL);
}
}