home *** CD-ROM | disk | FTP | other *** search
/ Amiga Elysian Archive / AmigaElysianArchive.iso / comm / netutils.lha / NetUtilities / source / receive.c < prev    next >
C/C++ Source or Header  |  1993-04-05  |  786b  |  45 lines

  1.  
  2. #include <stdio.h>
  3. #include <libraries/dos.h>
  4.  
  5. #define REC_PKT "RAM:receive.pkt"
  6. #define REC_ERR "Couldn't open receive packet\n"
  7.  
  8. struct FileHandle *in=0;
  9.  
  10. void quit(void) {
  11.   Close(in);
  12.   exit(0);
  13. }
  14.  
  15. void main(void) {
  16.   char text[512], buf[512];
  17.   FILE *infile;
  18.   short err=0;
  19.  
  20.   in = (struct FileHandle *)Open("CON:0/0/600/100/Parnet chat receive",MODE_NEWFILE);
  21.   if (!in) quit();
  22.  
  23.   onbreak(quit);
  24.  
  25.   for(;;) {
  26.     chkabort();
  27.     Delay(20);
  28.     chkabort();
  29.  
  30.     err=0;
  31.     if (access(REC_PKT, 4) == 0) {
  32.       if (infile = fopen(REC_PKT, "r")) {
  33.         fgets(buf, sizeof(buf), infile);
  34.         Write(in, buf, strlen(buf));
  35.         fclose(infile);
  36.         infile=0;
  37.         remove(REC_PKT);
  38.       } else err=1;
  39.     };
  40.  
  41.     if (err==1) Write(in, REC_ERR, strlen(REC_ERR));
  42.   }
  43. }
  44.  
  45.