/Lib/plat-irix5/IOCTL.py

http://unladen-swallow.googlecode.com/ · Python · 236 lines · 229 code · 1 blank · 6 comment · 0 complexity · 573b2b169b59c9fb0f4fb3cbd3839715 MD5 · raw file

  1. # These lines were mostly generated by h2py.py (see demo/scripts)
  2. # from <sys/ioctl.h>, <sys/termio.h> and <termios.h> on Irix 4.0.2
  3. # with some manual changes to cope with imperfections in h2py.py.
  4. # The applicability on other systems is not clear; especially non-SYSV
  5. # systems may have a totally different set of ioctls.
  6. from warnings import warnpy3k
  7. warnpy3k("the IOCTL module has been removed in Python 3.0", stacklevel=2)
  8. del warnpy3k
  9. IOCTYPE = 0xff00
  10. LIOC = (ord('l')<<8)
  11. LIOCGETP = (LIOC|1)
  12. LIOCSETP = (LIOC|2)
  13. LIOCGETS = (LIOC|5)
  14. LIOCSETS = (LIOC|6)
  15. DIOC = (ord('d')<<8)
  16. DIOCGETC = (DIOC|1)
  17. DIOCGETB = (DIOC|2)
  18. DIOCSETE = (DIOC|3)
  19. IOCPARM_MASK = 0x7f
  20. IOC_VOID = 0x20000000
  21. IOC_OUT = 0x40000000
  22. IOC_IN = 0x80000000
  23. IOC_INOUT = (IOC_IN|IOC_OUT)
  24. int = 'i'
  25. short = 'h'
  26. long = 'l'
  27. def sizeof(t): import struct; return struct.calcsize(t)
  28. def _IO(x,y): return (IOC_VOID|((x)<<8)|y)
  29. def _IOR(x,y,t): return (IOC_OUT|((sizeof(t)&IOCPARM_MASK)<<16)|((x)<<8)|y)
  30. def _IOW(x,y,t): return (IOC_IN|((sizeof(t)&IOCPARM_MASK)<<16)|((x)<<8)|y)
  31. # this should be _IORW, but stdio got there first
  32. def _IOWR(x,y,t): return (IOC_INOUT|((sizeof(t)&IOCPARM_MASK)<<16)|((x)<<8)|y)
  33. FIONREAD = _IOR(ord('f'), 127, int)
  34. FIONBIO = _IOW(ord('f'), 126, int)
  35. FIOASYNC = _IOW(ord('f'), 125, int)
  36. FIOSETOWN = _IOW(ord('f'), 124, int)
  37. FIOGETOWN = _IOR(ord('f'), 123, int)
  38. NCC = 8
  39. NCC_PAD = 7
  40. NCC_EXT = 16
  41. NCCS = (NCC+NCC_PAD+NCC_EXT)
  42. VINTR = 0
  43. VQUIT = 1
  44. VERASE = 2
  45. VKILL = 3
  46. VEOF = 4
  47. VEOL = 5
  48. VEOL2 = 6
  49. VMIN = VEOF
  50. VTIME = VEOL
  51. VSWTCH = 7
  52. VLNEXT = (NCC+NCC_PAD+0)
  53. VWERASE = (NCC+NCC_PAD+1)
  54. VRPRNT = (NCC+NCC_PAD+2)
  55. VFLUSHO = (NCC+NCC_PAD+3)
  56. VSTOP = (NCC+NCC_PAD+4)
  57. VSTART = (NCC+NCC_PAD+5)
  58. CNUL = '\0'
  59. CDEL = '\377'
  60. CESC = '\\'
  61. CINTR = '\177'
  62. CQUIT = '\34'
  63. CBRK = '\377'
  64. def CTRL(c): return ord(c) & 0x0f
  65. CERASE = CTRL('H')
  66. CKILL = CTRL('U')
  67. CEOF = CTRL('d')
  68. CEOT = CEOF
  69. CSTART = CTRL('q')
  70. CSTOP = CTRL('s')
  71. CSWTCH = CTRL('z')
  72. CSUSP = CSWTCH
  73. CNSWTCH = 0
  74. CLNEXT = CTRL('v')
  75. CWERASE = CTRL('w')
  76. CFLUSHO = CTRL('o')
  77. CFLUSH = CFLUSHO
  78. CRPRNT = CTRL('r')
  79. CDSUSP = CTRL('y')
  80. IGNBRK = 0000001
  81. BRKINT = 0000002
  82. IGNPAR = 0000004
  83. PARMRK = 0000010
  84. INPCK = 0000020
  85. ISTRIP = 0000040
  86. INLCR = 0000100
  87. IGNCR = 0000200
  88. ICRNL = 0000400
  89. IUCLC = 0001000
  90. IXON = 0002000
  91. IXANY = 0004000
  92. IXOFF = 0010000
  93. IBLKMD = 0020000
  94. OPOST = 0000001
  95. OLCUC = 0000002
  96. ONLCR = 0000004
  97. OCRNL = 0000010
  98. ONOCR = 0000020
  99. ONLRET = 0000040
  100. OFILL = 0000100
  101. OFDEL = 0000200
  102. NLDLY = 0000400
  103. NL0 = 0
  104. NL1 = 0000400
  105. CRDLY = 0003000
  106. CR0 = 0
  107. CR1 = 0001000
  108. CR2 = 0002000
  109. CR3 = 0003000
  110. TABDLY = 0014000
  111. TAB0 = 0
  112. TAB1 = 0004000
  113. TAB2 = 0010000
  114. TAB3 = 0014000
  115. BSDLY = 0020000
  116. BS0 = 0
  117. BS1 = 0020000
  118. VTDLY = 0040000
  119. VT0 = 0
  120. VT1 = 0040000
  121. FFDLY = 0100000
  122. FF0 = 0
  123. FF1 = 0100000
  124. CBAUD = 0000017
  125. B0 = 0
  126. B50 = 0000001
  127. B75 = 0000002
  128. B110 = 0000003
  129. B134 = 0000004
  130. B150 = 0000005
  131. B200 = 0000006
  132. B300 = 0000007
  133. B600 = 0000010
  134. B1200 = 0000011
  135. B1800 = 0000012
  136. B2400 = 0000013
  137. B4800 = 0000014
  138. B9600 = 0000015
  139. B19200 = 0000016
  140. EXTA = 0000016
  141. B38400 = 0000017
  142. EXTB = 0000017
  143. CSIZE = 0000060
  144. CS5 = 0
  145. CS6 = 0000020
  146. CS7 = 0000040
  147. CS8 = 0000060
  148. CSTOPB = 0000100
  149. CREAD = 0000200
  150. PARENB = 0000400
  151. PARODD = 0001000
  152. HUPCL = 0002000
  153. CLOCAL = 0004000
  154. LOBLK = 0040000
  155. ISIG = 0000001
  156. ICANON = 0000002
  157. XCASE = 0000004
  158. ECHO = 0000010
  159. ECHOE = 0000020
  160. ECHOK = 0000040
  161. ECHONL = 0000100
  162. NOFLSH = 0000200
  163. IIEXTEN = 0000400
  164. ITOSTOP = 0001000
  165. SSPEED = B9600
  166. IOCTYPE = 0xff00
  167. TIOC = (ord('T')<<8)
  168. oTCGETA = (TIOC|1)
  169. oTCSETA = (TIOC|2)
  170. oTCSETAW = (TIOC|3)
  171. oTCSETAF = (TIOC|4)
  172. TCSBRK = (TIOC|5)
  173. TCXONC = (TIOC|6)
  174. TCFLSH = (TIOC|7)
  175. TCGETA = (TIOC|8)
  176. TCSETA = (TIOC|9)
  177. TCSETAW = (TIOC|10)
  178. TCSETAF = (TIOC|11)
  179. TIOCFLUSH = (TIOC|12)
  180. TCDSET = (TIOC|32)
  181. TCBLKMD = (TIOC|33)
  182. TIOCPKT = (TIOC|112)
  183. TIOCPKT_DATA = 0x00
  184. TIOCPKT_FLUSHREAD = 0x01
  185. TIOCPKT_FLUSHWRITE = 0x02
  186. TIOCPKT_NOSTOP = 0x10
  187. TIOCPKT_DOSTOP = 0x20
  188. TIOCNOTTY = (TIOC|113)
  189. TIOCSTI = (TIOC|114)
  190. TIOCSPGRP = _IOW(ord('t'), 118, int)
  191. TIOCGPGRP = _IOR(ord('t'), 119, int)
  192. TIOCCONS = _IOW(ord('t'), 120, int)
  193. struct_winsize = 'hhhh'
  194. TIOCGWINSZ = _IOR(ord('t'), 104, struct_winsize)
  195. TIOCSWINSZ = _IOW(ord('t'), 103, struct_winsize)
  196. TFIOC = (ord('F')<<8)
  197. oFIONREAD = (TFIOC|127)
  198. LDIOC = (ord('D')<<8)
  199. LDOPEN = (LDIOC|0)
  200. LDCLOSE = (LDIOC|1)
  201. LDCHG = (LDIOC|2)
  202. LDGETT = (LDIOC|8)
  203. LDSETT = (LDIOC|9)
  204. TERM_NONE = 0
  205. TERM_TEC = 1
  206. TERM_V61 = 2
  207. TERM_V10 = 3
  208. TERM_TEX = 4
  209. TERM_D40 = 5
  210. TERM_H45 = 6
  211. TERM_D42 = 7
  212. TM_NONE = 0000
  213. TM_SNL = 0001
  214. TM_ANL = 0002
  215. TM_LCF = 0004
  216. TM_CECHO = 0010
  217. TM_CINVIS = 0020
  218. TM_SET = 0200
  219. LDISC0 = 0
  220. LDISC1 = 1
  221. NTTYDISC = LDISC1
  222. VSUSP = VSWTCH
  223. TCSANOW = 0
  224. TCSADRAIN = 1
  225. TCSAFLUSH = 2
  226. TCIFLUSH = 0
  227. TCOFLUSH = 1
  228. TCIOFLUSH = 2
  229. TCOOFF = 0
  230. TCOON = 1
  231. TCIOFF = 2
  232. TCION = 3
  233. TO_STOP = LOBLK
  234. IEXTEN = IIEXTEN
  235. TOSTOP = ITOSTOP