1#define _IOC(a,b,c,d) ( ((a)<<30) | ((b)<<8) | (c) | ((d)<<16) ) 2#define _IOC_NONE 0U 3#define _IOC_WRITE 1U 4#define _IOC_READ 2U 5 6#define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0) 7#define _IOW(a,b,c) _IOC(_IOC_WRITE,(a),(b),sizeof(c)) 8#define _IOR(a,b,c) _IOC(_IOC_READ,(a),(b),sizeof(c)) 9#define _IOWR(a,b,c) _IOC(_IOC_READ|_IOC_WRITE,(a),(b),sizeof(c)) 10 11#define FIOCLEX _IO('f', 1) 12#define FIONCLEX _IO('f', 2) 13#define FIOASYNC _IOW('f', 125, int) 14#define FIONBIO _IOW('f', 126, int) 15#define FIONREAD _IOR('f', 127, int) 16#define TIOCINQ FIONREAD 17#define FIOQSIZE _IOR('f', 128, char[8]) 18 19#define TCGETA _IOR('t', 23, char[18]) 20#define TCSETA _IOW('t', 24, char[18]) 21#define TCSETAW _IOW('t', 25, char[18]) 22#define TCSETAF _IOW('t', 28, char[18]) 23 24#define TCSBRK _IO('t', 29) 25#define TCXONC _IO('t', 30) 26#define TCFLSH _IO('t', 31) 27 28#define TIOCSWINSZ _IOW('t', 103, char[8]) 29#define TIOCGWINSZ _IOR('t', 104, char[8]) 30#define TIOCSTART _IO('t', 110) 31#define TIOCSTOP _IO('t', 111) 32#define TIOCOUTQ _IOR('t', 115, int) 33 34#define TIOCSPGRP _IOW('t', 118, int) 35#define TIOCGPGRP _IOR('t', 119, int) 36 37#define TIOCEXCL _IO('T', 12) 38#define TIOCNXCL _IO('T', 13) 39#define TIOCSCTTY _IO('T', 14) 40 41#define TIOCSTI _IOW('T', 18, char) 42#define TIOCMGET _IOR('T', 21, unsigned int) 43#define TIOCMBIS _IOW('T', 22, unsigned int) 44#define TIOCMBIC _IOW('T', 23, unsigned int) 45#define TIOCMSET _IOW('T', 24, unsigned int) 46#define TIOCM_LE 0x001 47#define TIOCM_DTR 0x002 48#define TIOCM_RTS 0x004 49#define TIOCM_ST 0x008 50#define TIOCM_SR 0x010 51#define TIOCM_CTS 0x020 52#define TIOCM_CAR 0x040 53#define TIOCM_RNG 0x080 54#define TIOCM_DSR 0x100 55#define TIOCM_CD TIOCM_CAR 56#define TIOCM_RI TIOCM_RNG 57#define TIOCM_OUT1 0x2000 58#define TIOCM_OUT2 0x4000 59#define TIOCM_LOOP 0x8000 60 61#define TIOCGSOFTCAR _IOR('T', 25, unsigned int) 62#define TIOCSSOFTCAR _IOW('T', 26, unsigned int) 63#define TIOCLINUX _IOW('T', 28, char) 64#define TIOCCONS _IO('T', 29) 65#define TIOCGSERIAL _IOR('T', 30, char[60]) 66#define TIOCSSERIAL _IOW('T', 31, char[60]) 67#define TIOCPKT _IOW('T', 32, int) 68#define TIOCPKT_DATA 0 69#define TIOCPKT_FLUSHREAD 1 70#define TIOCPKT_FLUSHWRITE 2 71#define TIOCPKT_STOP 4 72#define TIOCPKT_START 8 73#define TIOCPKT_NOSTOP 16 74#define TIOCPKT_DOSTOP 32 75#define TIOCPKT_IOCTL 64 76 77#define TIOCNOTTY _IO('T', 34) 78#define TIOCSETD _IOW('T', 35, int) 79#define TIOCGETD _IOR('T', 36, int) 80#define TCSBRKP _IOW('T', 37, int) 81#define TIOCSBRK _IO('T', 39) 82#define TIOCCBRK _IO('T', 40) 83#define TIOCGSID _IOR('T', 41, int) 84#define TCGETS _IO('T', 1) 85#define TCSETS _IO('T', 2) 86#define TCSETSW _IO('T', 3) 87#define TCSETSF _IO('T', 4) 88#define TIOCGRS485 _IOR('T', 46, char[32]) 89#define TIOCSRS485 _IOWR('T', 47, char[32]) 90#define TIOCGPTN _IOR('T', 48, unsigned int) 91#define TIOCSPTLCK _IOW('T', 49, int) 92#define TIOCGDEV _IOR('T', 50, unsigned int) 93#define TIOCSIG _IOW('T', 54, int) 94#define TIOCVHANGUP _IO('T', 55) 95#define TIOCGPKT _IOR('T', 56, int) 96#define TIOCGPTLCK _IOR('T', 57, int) 97#define TIOCGEXCL _IOR('T', 64, int) 98 99#define TIOCSERCONFIG _IO('T', 83) 100#define TIOCSERGWILD _IOR('T', 84, int) 101#define TIOCSERSWILD _IOW('T', 85, int) 102#define TIOCGLCKTRMIOS _IO('T', 86) 103#define TIOCSLCKTRMIOS _IO('T', 87) 104#define TIOCSERGSTRUCT _IOR('T', 88, char[216]) 105#define TIOCSERGETLSR _IOR('T', 89, unsigned int) 106#define TIOCSER_TEMT 0x01 107#define TIOCSERGETMULTI _IOR('T', 90, char[168]) 108#define TIOCSERSETMULTI _IOW('T', 91, char[168]) 109 110#define TIOCMIWAIT _IO('T', 92) 111#define TIOCGICOUNT _IO('T', 93) 112 113struct winsize { 114 unsigned short ws_row; 115 unsigned short ws_col; 116 unsigned short ws_xpixel; 117 unsigned short ws_ypixel; 118}; 119 120#define N_TTY 0 121#define N_SLIP 1 122#define N_MOUSE 2 123#define N_PPP 3 124#define N_STRIP 4 125#define N_AX25 5 126#define N_X25 6 127#define N_6PACK 7 128#define N_MASC 8 129#define N_R3964 9 130#define N_PROFIBUS_FDL 10 131#define N_IRDA 11 132#define N_SMSBLOCK 12 133#define N_HDLC 13 134#define N_SYNC_PPP 14 135#define N_HCI 15 136 137#define FIOGETOWN _IOR('f', 123, int) 138#define FIOSETOWN _IOW('f', 124, int) 139 140#define SIOCATMARK _IOR('s', 7, int) 141#define SIOCSPGRP _IOW('s', 8, int) 142#define SIOCGPGRP _IOW('s', 9, int) 143#define SIOCGSTAMP _IOR('s', 100, char[8]) 144 145#define SIOCADDRT 0x890B 146#define SIOCDELRT 0x890C 147#define SIOCRTMSG 0x890D 148 149#define SIOCGIFNAME 0x8910 150#define SIOCSIFLINK 0x8911 151#define SIOCGIFCONF 0x8912 152#define SIOCGIFFLAGS 0x8913 153#define SIOCSIFFLAGS 0x8914 154#define SIOCGIFADDR 0x8915 155#define SIOCSIFADDR 0x8916 156#define SIOCGIFDSTADDR 0x8917 157#define SIOCSIFDSTADDR 0x8918 158#define SIOCGIFBRDADDR 0x8919 159#define SIOCSIFBRDADDR 0x891a 160#define SIOCGIFNETMASK 0x891b 161#define SIOCSIFNETMASK 0x891c 162#define SIOCGIFMETRIC 0x891d 163#define SIOCSIFMETRIC 0x891e 164#define SIOCGIFMEM 0x891f 165#define SIOCSIFMEM 0x8920 166#define SIOCGIFMTU 0x8921 167#define SIOCSIFMTU 0x8922 168#define SIOCSIFNAME 0x8923 169#define SIOCSIFHWADDR 0x8924 170#define SIOCGIFENCAP 0x8925 171#define SIOCSIFENCAP 0x8926 172#define SIOCGIFHWADDR 0x8927 173#define SIOCGIFSLAVE 0x8929 174#define SIOCSIFSLAVE 0x8930 175#define SIOCADDMULTI 0x8931 176#define SIOCDELMULTI 0x8932 177#define SIOCGIFINDEX 0x8933 178#define SIOGIFINDEX SIOCGIFINDEX 179#define SIOCSIFPFLAGS 0x8934 180#define SIOCGIFPFLAGS 0x8935 181#define SIOCDIFADDR 0x8936 182#define SIOCSIFHWBROADCAST 0x8937 183#define SIOCGIFCOUNT 0x8938 184 185#define SIOCGIFBR 0x8940 186#define SIOCSIFBR 0x8941 187 188#define SIOCGIFTXQLEN 0x8942 189#define SIOCSIFTXQLEN 0x8943 190 191#define SIOCDARP 0x8953 192#define SIOCGARP 0x8954 193#define SIOCSARP 0x8955 194 195#define SIOCDRARP 0x8960 196#define SIOCGRARP 0x8961 197#define SIOCSRARP 0x8962 198 199#define SIOCGIFMAP 0x8970 200#define SIOCSIFMAP 0x8971 201 202#define SIOCADDDLCI 0x8980 203#define SIOCDELDLCI 0x8981 204 205#define SIOCDEVPRIVATE 0x89F0 206#define SIOCPROTOPRIVATE 0x89E0 207