home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / unix / volume14 / sharedmem / part01 / stream / writer.c < prev   
Encoding:
C/C++ Source or Header  |  1988-05-17  |  763 b   |  43 lines

  1. #include <stdio.h>
  2. #include <sys/types.h>
  3. #include <sys/time.h>
  4. #include <sys/socket.h>
  5. #include <netinet/in.h>
  6. /* #include <netdb.h> */
  7. #include "inet.h"
  8.  
  9. char msg[2000];
  10.  
  11. struct timeval timeout = {0L, 0L};
  12. int maxfds;
  13.  
  14. main(argc,argv)
  15. int argc;
  16. char **argv;
  17. {
  18.     int cc;
  19.     int i;
  20.     int fd;
  21.     int readfds;
  22.  
  23.     maxfds = getdtablesize();
  24.     fd = initport(PORT_NUMBER(2000),CLIENT,SOCK_STREAM,argc>1?argv[1]:"");
  25.  
  26.     if (fd < 0) {
  27.         fprintf(stderr,"initport() = %d\n",fd);
  28.         exit(-1);
  29.     }
  30.     for (i=0;;i++) {
  31.         printf("%d: ",i);
  32.         gets(msg);
  33.         cc = sized_write(fd,msg,strlen(msg)+1);
  34.         readfds = 1<<fd;
  35.         if (0 < select(maxfds,&readfds,0,0,&timeout)
  36.            && readfds == 1<<fd) {
  37.             cc = sized_read(fd,msg,2000);
  38.             msg[cc] = '\0';
  39.             printf("msg from server: %s\n",msg);
  40.         }
  41.     }
  42. }
  43.