home *** CD-ROM | disk | FTP | other *** search
/ Programmer 7500 / MAX_PROGRAMMERS.iso / INFO / MODEM / UWPC201.ZIP / UWSERVER.TAR / server / uw_fd.c < prev    next >
Encoding:
C/C++ Source or Header  |  1991-01-25  |  871 b   |  44 lines

  1. /*
  2.  *    uw_fd - file-descriptor/select data
  3.  *
  4.  * Copyright 1986 by John D. Bruner.  All rights reserved.  Permission to
  5.  * copy this program is given provided that the copy is not sold and that
  6.  * this copyright notice is included.
  7.  */
  8.  
  9. #include <sys/types.h>
  10.  
  11. #include "uw_param.h"
  12. #include "uw_fd.h"
  13.  
  14. struct selmask selmask[2];
  15. struct fdmap fdmap[FD_SETSIZE];
  16. fildes_t nfds;                /* number of file descriptors */
  17.  
  18. fd_init()
  19. {
  20.     register fildes_t fd;
  21.  
  22.     nfds = getdtablesize();
  23.     if (nfds > FD_SETSIZE)
  24.         nfds = FD_SETSIZE;
  25.     fdmap[0].f_type = FDT_MAC;
  26.     fdmap[1].f_type = FDT_MAC;
  27.     fdmap[2].f_type = FDT_DEBUG;
  28.     for (fd=3; fd < FD_SETSIZE; fd++) {
  29.         fdmap[fd].f_type = FDT_NONE;
  30.         (void)close(fd);
  31.     }
  32.     FD_ZERO(&selmask[0].sm_rd);
  33.     FD_ZERO(&selmask[0].sm_wt);
  34.     FD_ZERO(&selmask[0].sm_ex);
  35. }
  36.  
  37. fd_exit()
  38. {
  39.     register fildes_t fd;
  40.  
  41.     for (fd=3; fd < nfds; fd++)
  42.         (void)close(fd);
  43. }
  44.