module IOCTLS

Direct including types

Defined in:

asm-generic/ioctls.cr
bits/ioctls.cr

Constant Summary

FIOASYNC = 21586_u32
FIOCLEX = 21585_u32
FIONBIO = 21537_u32
FIONCLEX = 21584_u32
FIONREAD = 21531_u32
FIOQSIZE = 21600_u32

Some arches already define FIOQSIZE due to a historical conflict with a Hayes modem-specific ioctl value.

SIOCADDDLCI = 35200_u32

DLCI configuration calls

SIOCADDMULTI = 35121_u32
SIOCADDRT = 35083_u32

Routing table calls.

SIOCDARP = 35155_u32

ARP cache control calls. 0x8950 - 0x8952 * obsolete calls, don't re-use

SIOCDELDLCI = 35201_u32
SIOCDELMULTI = 35122_u32
SIOCDELRT = 35084_u32
SIOCDEVPRIVATE = 35312_u32

These 16 ioctls are available to devices via the do_ioctl() device vector. Each device should include this file and redefine these names as their own. Because these are device dependent it is a good idea NOT to issue them to random objects and hope.

SIOCDIFADDR = 35126_u32
SIOCDRARP = 35168_u32

RARP cache control calls.

SIOCGARP = 35156_u32
SIOCGIFADDR = 35093_u32
SIOCGIFBR = 35136_u32
SIOCGIFBRDADDR = 35097_u32
SIOCGIFCONF = 35090_u32
SIOCGIFCOUNT = 35128_u32
SIOCGIFDSTADDR = 35095_u32
SIOCGIFENCAP = 35109_u32
SIOCGIFFLAGS = 35091_u32
SIOCGIFHWADDR = 35111_u32
SIOCGIFINDEX = 35123_u32
SIOCGIFMAP = 35184_u32
SIOCGIFMEM = 35103_u32
SIOCGIFMETRIC = 35101_u32
SIOCGIFMTU = 35105_u32
SIOCGIFNAME = 35088_u32

Socket configuration controls.

SIOCGIFNETMASK = 35099_u32
SIOCGIFPFLAGS = 35125_u32
SIOCGIFSLAVE = 35113_u32
SIOCGIFTXQLEN = 35138_u32
SIOCGRARP = 35169_u32
SIOCPROTOPRIVATE = 35296_u32
These 16 ioctl calls are protocol private
SIOCRTMSG = 35085_u32
SIOCSARP = 35157_u32
SIOCSIFADDR = 35094_u32
SIOCSIFBR = 35137_u32
SIOCSIFBRDADDR = 35098_u32
SIOCSIFDSTADDR = 35096_u32
SIOCSIFENCAP = 35110_u32
SIOCSIFFLAGS = 35092_u32
SIOCSIFHWADDR = 35108_u32
SIOCSIFHWBROADCAST = 35127_u32
SIOCSIFLINK = 35089_u32
SIOCSIFMAP = 35185_u32
SIOCSIFMEM = 35104_u32
SIOCSIFMETRIC = 35102_u32
SIOCSIFMTU = 35106_u32
SIOCSIFNAME = 35107_u32
SIOCSIFNETMASK = 35100_u32
SIOCSIFPFLAGS = 35124_u32
SIOCSIFSLAVE = 35120_u32
SIOCSIFTXQLEN = 35139_u32
SIOCSRARP = 35170_u32
SIOGIFINDEX = SIOCGIFINDEX
TCFLSH = 21515_u32
TCGETA = 21509_u32
TCGETS = 21505_u32
TCGETS2 = ioctl_ior('T', 42, Termios2)
TCGETX = 21554_u32
TCSBRK = 21513_u32
TCSBRKP = 21541_u32
TCSETA = 21510_u32
TCSETAF = 21512_u32
TCSETAW = 21511_u32
TCSETS = 21506_u32
TCSETS2 = ioctl_iow('T', 43, Termios2)
TCSETSF = 21508_u32
TCSETSF2 = ioctl_iow('T', 45, Termios2)
TCSETSW = 21507_u32
TCSETSW2 = ioctl_iow('T', 44, Termios2)
TCSETX = 21555_u32
TCSETXF = 21556_u32
TCSETXW = 21557_u32
TCXONC = 21514_u32
TIOCCBRK = 21544_u32
TIOCCONS = 21533_u32
TIOCEXCL = 21516_u32
TIOCGDEV = ioctl_ior('T', 50, UInt)
TIOCGETD = 21540_u32
TIOCGEXCL = ioctl_ior('T', 64, Int)
TIOCGICOUNT = 21597_u32
TIOCGLCKTRMIOS = 21590_u32
TIOCGPGRP = 21519_u32
TIOCGPKT = ioctl_ior('T', 56, Int)
TIOCGPTLCK = ioctl_ior('T', 57, Int)
TIOCGPTN = ioctl_ior('T', 48, UInt)
TIOCGPTPEER = ioctl_io('T', 65)
TIOCGRS485 = 21550_u32
TIOCGSERIAL = 21534_u32
TIOCGSID = 21545_u32
TIOCGSOFTCAR = 21529_u32
TIOCGWINSZ = 21523_u32
TIOCINQ = FIONREAD
TIOCLINUX = 21532_u32
TIOCMBIC = 21527_u32
TIOCMBIS = 21526_u32
TIOCMGET = 21525_u32
TIOCMIWAIT = 21596_u32
TIOCMSET = 21528_u32
TIOCNOTTY = 21538_u32
TIOCNXCL = 21517_u32
TIOCOUTQ = 21521_u32
TIOCPKT = 21536_u32
TIOCPKT_DATA = 0_u32

Used for packet mode

TIOCPKT_DOSTOP = 32_u32
TIOCPKT_FLUSHREAD = 1_u32
TIOCPKT_FLUSHWRITE = 2_u32
TIOCPKT_IOCTL = 64_u32
TIOCPKT_NOSTOP = 16_u32
TIOCPKT_START = 8_u32
TIOCPKT_STOP = 4_u32
TIOCSBRK = 21543_u32
TIOCSCTTY = 21518_u32
TIOCSER_TEMT = 1_u32
TIOCSERCONFIG = 21587_u32
TIOCSERGETLSR = 21593_u32
TIOCSERGETMULTI = 21594_u32
TIOCSERGSTRUCT = 21592_u32
TIOCSERGWILD = 21588_u32
TIOCSERSETMULTI = 21595_u32
TIOCSERSWILD = 21589_u32
TIOCSETD = 21539_u32
TIOCSIG = ioctl_iow('T', 54, Int)
TIOCSLCKTRMIOS = 21591_u32
TIOCSPGRP = 21520_u32
TIOCSPTLCK = ioctl_iow('T', 49, Int)
TIOCSRS485 = 21551_u32
TIOCSSERIAL = 21535_u32
TIOCSSOFTCAR = 21530_u32
TIOCSTI = 21522_u32
TIOCSWINSZ = 21524_u32
TIOCVHANGUP = 21559_u32