home *** CD-ROM | disk | FTP | other *** search
/ Columbia Kermit / kermit.zip / os9 / os9qui.c < prev    next >
C/C++ Source or Header  |  2020-01-01  |  1KB  |  45 lines

  1. /*
  2.  * os9qui.c quit to host server for os9 kermit
  3.  */
  4.  
  5. #include "os9inc.h"
  6.  
  7. /*
  8.  *      Kermit Quit to Host Server Function
  9.  *
  10.  *      by W. G. Seaton   NASA SC-LPS-32    11/15/84
  11.  *
  12.  * 07/01/85 ral add error handling 
  13.  */
  14.  
  15. quitsw()
  16. {            
  17.         int     len, num;
  18.         int     retries;
  19.  
  20.         for (retries = 0; retries < MAXTRY; retries++) {     
  21.                 packet[0] = 'F';        /* Generic command of Finish  */
  22.                 spack('G', 0, 1, packet);     /* Send Generic command  */
  23.                 switch(state = rpack(&len, &num, packet)) { /* get response  */
  24.                 case 'Y':
  25.                         if (num == 0) {
  26.                                 puts("Remote Host Server Process Terminated.");
  27.                                 return(TRUE);
  28.                         }
  29.                         break;  /* not the ack for this packet */
  30.                 case 'N':       /* remote NAKed packet */
  31.                 case FALSE:     /* timeout or bad packet */
  32.                         break;
  33.                 case 'E':
  34.                         prerrpkt(packet);
  35.                         return(FALSE);
  36.                 default:
  37.                         if (debug)
  38.                                 printf("Remote Host responded to quit with packet type %c\n", state);
  39.                         break;        
  40.                 }
  41.         }
  42.         printf("Remote Host failed to acknowledge Quit command\n");
  43.         return(FALSE);
  44. }
  45.