UbixOS V2 2.0

Data Structures | Macros | Typedefs
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,
|  |  | n
| ) |  | _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,
|  |  | t
| ) |  | _IOC(IOC_OUT, (g), (n), sizeof(t))

Definition at line 23 of file ioctl.h.

## ◆ _IOW

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

Definition at line 24 of file ioctl.h.

## ◆ _IOWINT

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

Definition at line 22 of file ioctl.h.

## ◆ _IOWR

#define _IOWR | ( |  | g,
|  |  | n,
|  |  | t
| ) |  | _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