UbixOS  2.0
ioctl.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Data Structures

struct  termios
 
struct  winsize
 

Macros

#define _IO(g, n)   _IOC(IOC_VOID, (g), (n), 0)
 
#define _IOC(inout, group, num, len)
 
#define _IOR(g, n, t)   _IOC(IOC_OUT, (g), (n), sizeof(t))
 
#define _IOW(g, n, t)   _IOC(IOC_IN, (g), (n), sizeof(t))
 
#define _IOWINT(g, n)   _IOC(IOC_VOID, (g), (n), sizeof(int))
 
#define _IOWR(g, n, t)   _IOC(IOC_INOUT, (g), (n), sizeof(t))
 
#define IOC_DIRMASK   (IOC_VOID|IOC_OUT|IOC_IN)
 
#define IOC_IN   0x80000000 /* copy in parameters */
 
#define IOC_INOUT   (IOC_IN|IOC_OUT)
 
#define IOC_OUT   0x40000000 /* copy out parameters */
 
#define IOC_VOID   0x20000000 /* no parameters */
 
#define IOCBASECMD(x)   ((x) & ~(IOCPARM_MASK << 16))
 
#define IOCGROUP(x)   (((x) >> 8) & 0xff)
 
#define IOCPARM_IVAL(x)   ((int)(intptr_t)(void *)*(caddr_t *)(void *)(x))
 
#define IOCPARM_LEN(x)   (((x) >> 16) & IOCPARM_MASK)
 
#define IOCPARM_MASK   ((1 << IOCPARM_SHIFT) - 1) /* parameter length mask */
 
#define IOCPARM_MAX   (1 << IOCPARM_SHIFT) /* max size of ioctl */
 
#define IOCPARM_SHIFT   13 /* number of bits for ioctl size */
 
#define NCCS   20
 
#define TIOCGETA   _IOR('t', 19, struct termios) /* get termios struct */
 
#define TIOCGWINSZ   _IOR('t', 104, struct winsize) /* get window size */
 

Typedefs

typedef unsigned char cc_t
 
typedef unsigned int speed_t
 
typedef unsigned int tcflag_t
 

Macro Definition Documentation

◆ _IO

#define _IO (   g,
 
)    _IOC(IOC_VOID, (g), (n), 0)

Definition at line 21 of file ioctl.h.

◆ _IOC

#define _IOC (   inout,
  group,
  num,
  len 
)
Value:
((unsigned long) \
((inout) | (((len) & IOCPARM_MASK) << 16) | ((group) << 8) | (num)))

Definition at line 19 of file ioctl.h.

◆ _IOR

#define _IOR (   g,
  n,
 
)    _IOC(IOC_OUT, (g), (n), sizeof(t))

Definition at line 23 of file ioctl.h.

◆ _IOW

#define _IOW (   g,
  n,
 
)    _IOC(IOC_IN, (g), (n), sizeof(t))

Definition at line 24 of file ioctl.h.

◆ _IOWINT

#define _IOWINT (   g,
 
)    _IOC(IOC_VOID, (g), (n), sizeof(int))

Definition at line 22 of file ioctl.h.

◆ _IOWR

#define _IOWR (   g,
  n,
 
)    _IOC(IOC_INOUT, (g), (n), sizeof(t))

Definition at line 26 of file ioctl.h.

◆ IOC_DIRMASK

#define IOC_DIRMASK   (IOC_VOID|IOC_OUT|IOC_IN)

Definition at line 17 of file ioctl.h.

◆ IOC_IN

#define IOC_IN   0x80000000 /* copy in parameters */

Definition at line 15 of file ioctl.h.

◆ IOC_INOUT

#define IOC_INOUT   (IOC_IN|IOC_OUT)

Definition at line 16 of file ioctl.h.

◆ IOC_OUT

#define IOC_OUT   0x40000000 /* copy out parameters */

Definition at line 14 of file ioctl.h.

◆ IOC_VOID

#define IOC_VOID   0x20000000 /* no parameters */

Definition at line 13 of file ioctl.h.

◆ IOCBASECMD

#define IOCBASECMD (   x)    ((x) & ~(IOCPARM_MASK << 16))

Definition at line 9 of file ioctl.h.

◆ IOCGROUP

#define IOCGROUP (   x)    (((x) >> 8) & 0xff)

Definition at line 10 of file ioctl.h.

◆ IOCPARM_IVAL

#define IOCPARM_IVAL (   x)    ((int)(intptr_t)(void *)*(caddr_t *)(void *)(x))

Definition at line 28 of file ioctl.h.

◆ IOCPARM_LEN

#define IOCPARM_LEN (   x)    (((x) >> 16) & IOCPARM_MASK)

Definition at line 8 of file ioctl.h.

◆ IOCPARM_MASK

#define IOCPARM_MASK   ((1 << IOCPARM_SHIFT) - 1) /* parameter length mask */

Definition at line 7 of file ioctl.h.

◆ IOCPARM_MAX

#define IOCPARM_MAX   (1 << IOCPARM_SHIFT) /* max size of ioctl */

Definition at line 12 of file ioctl.h.

◆ IOCPARM_SHIFT

#define IOCPARM_SHIFT   13 /* number of bits for ioctl size */

Definition at line 6 of file ioctl.h.

◆ NCCS

#define NCCS   20

Definition at line 30 of file ioctl.h.

◆ TIOCGETA

#define TIOCGETA   _IOR('t', 19, struct termios) /* get termios struct */

Definition at line 53 of file ioctl.h.

◆ TIOCGWINSZ

#define TIOCGWINSZ   _IOR('t', 104, struct winsize) /* get window size */

Definition at line 54 of file ioctl.h.

Typedef Documentation

◆ cc_t

typedef unsigned char cc_t

Definition at line 33 of file ioctl.h.

◆ speed_t

typedef unsigned int speed_t

Definition at line 34 of file ioctl.h.

◆ tcflag_t

typedef unsigned int tcflag_t

Definition at line 32 of file ioctl.h.

IOCPARM_MASK
#define IOCPARM_MASK
Definition: ioctl.h:7