home *** CD-ROM | disk | FTP | other *** search
/ The Datafile PD-CD 4 / DATAFILE_PDCD4.iso / languages / netlib / !NetLib / sys / h / iocomm < prev    next >
Encoding:
Text File  |  1995-05-23  |  746 b   |  27 lines

  1. #ifndef __sys_iocomm_h
  2. #define __sys_iocomm_h
  3.  
  4. /* Freenet programmers library - sys/iocomm.h - 23/5/95 */
  5.  
  6.  
  7. /*
  8.  * Mask for the part of the request that holds the argument size
  9.  */
  10. #define IOCPARM_MASK 0x7f
  11.  
  12. /*
  13.  * The type flags for ioctl() requests
  14.  */
  15. #define IOC_OUT      0x40000000       /* Parameter is an input */
  16. #define IOC_IN       0x80000000       /* Parameter is an output */
  17. #define IOC_INOUT    (IOC_IN|IOC_OUT) /* Parameter is both input and output */
  18.  
  19. /*
  20.  * The macros used to define ioctl() requests
  21.  */
  22. #define _IOR(x,y,t)  (IOC_OUT  |((sizeof(t)&IOCPARM_MASK)<<16)|(x<<8)|y)
  23. #define _IOW(x,y,t)  (IOC_IN   |((sizeof(t)&IOCPARM_MASK)<<16)|(x<<8)|y)
  24. #define _IOWR(x,y,t) (IOC_INOUT|((sizeof(t)&IOCPARM_MASK)<<16)|(x<<8)|y)
  25.  
  26. #endif
  27.