Index: trunk/Ohana/src/opihi/pcontrol/StopHosts.c
===================================================================
--- trunk/Ohana/src/opihi/pcontrol/StopHosts.c	(revision 16472)
+++ trunk/Ohana/src/opihi/pcontrol/StopHosts.c	(revision 17475)
@@ -72,26 +72,27 @@
 
   int       status;
-  IOBuffer  buffer;
 
-  InitIOBuffer (&buffer, 0x100);
-  status = PclientCommand (host, "exit", "Goodbye", &buffer);
-  FreeIOBuffer (&buffer);
+  status = PclientCommand (host, "exit", "Goodbye", PCONTROL_RESP_STOP_HOST);
 
   /* check on success of pclient command */
   switch (status) {
     case PCLIENT_DOWN:
-      break;
-
-    case PCLIENT_HUNG:
-      gprint (GP_ERR, "host %s is not responding\n", host[0].hostname);
+      // XXX this is the desired result in any case, so ignore it
       break;
 
     case PCLIENT_GOOD:
-      break;
+      if (VerboseMode()) gprint (GP_ERR, "stop host %s\n", host[0].hostname);  
+      FlushIOBuffer (&host[0].comms_buffer);
+      PutHost (host, PCONTROL_HOST_RESP, STACK_BOTTOM);
+      return (TRUE);
 
     default:
-      gprint (GP_ERR, "unknown status for pclient command: programming error\n");  
-      pcontrol_exit (57);
+      ABORT ("unknown status for pclient command");  
   }
+  ABORT ("should not reach here");  
+}
+
+int StopHostResponse (Host *host) {
+
   HarvestHost (host[0].pid);
   return (TRUE);
