Index: trunk/Ohana/src/opihi/pcontrol/CheckRespHost.c
===================================================================
--- trunk/Ohana/src/opihi/pcontrol/CheckRespHost.c	(revision 17475)
+++ trunk/Ohana/src/opihi/pcontrol/CheckRespHost.c	(revision 17476)
@@ -28,4 +28,8 @@
       }
 
+      // clear the response data
+      host[0].response_state = PCONTROL_RESP_NONE;
+      host[0].response = NULL;
+
       // host has shutdown; harvest the defunct process
       HarvestHost (host[0].pid);
@@ -37,5 +41,5 @@
       PutHost (host, PCONTROL_HOST_RESP, STACK_BOTTOM);
       if (job) {
-	PutJob (job, PCONTROL_JOB_BUSY, STACK_BOTTOM);
+	PutJob (job, PCONTROL_JOB_RESP, STACK_BOTTOM);
       }
       if (DEBUG || VerboseMode()) gprint (GP_ERR, "host %s is not responding\n", host[0].hostname);
@@ -52,26 +56,32 @@
   switch (host[0].response_state) {
     case PCONTROL_RESP_START_JOB:
+      if (DEBUG) fprintf (stderr, "PCONTROL_RESP_START_JOB\n");
       status = StartJobResponse (host);
-      return (status);
+      break;
 
     case PCONTROL_RESP_CHECK_HOST:
+      if (DEBUG) fprintf (stderr, "PCONTROL_RESP_CHECK_HOST\n");
       status = CheckHostResponse (host);
-      return (status);
+      break;
 
     case PCONTROL_RESP_CHECK_DONE_HOST:
+      if (DEBUG) fprintf (stderr, "PCONTROL_RESP_CHECK_DONE_HOST\n");
       status = CheckDoneHostResponse (host);
-      return (status);
+      break;
 
     case PCONTROL_RESP_CHECK_BUSY_JOB:
+      if (DEBUG) fprintf (stderr, "PCONTROL_RESP_BUSY_JOB\n");
       status = CheckBusyJobResponse (host);
-      return (status);
+      break;
 
     case PCONTROL_RESP_KILL_JOB:
+      if (DEBUG) fprintf (stderr, "PCONTROL_RESP_KILL_JOB\n");
       status = KillJobResponse (host);
-      return (status);
+      break;
 
     case PCONTROL_RESP_STOP_HOST:
+      if (DEBUG) fprintf (stderr, "PCONTROL_RESP_STOP_HOST\n");
       status = StopHostResponse (host);
-      return (status);
+      break;
 
     default:
@@ -79,5 +89,8 @@
   }
 
-  ABORT ("should not be able to get here");
+  // we have detected a valid response, clear the response data
+  host[0].response_state = PCONTROL_RESP_NONE;
+  host[0].response = NULL;
+  return (status);
 }      
 
