syscall_types.h 7.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  1. STRUCT_SPECIAL(termios)
  2. STRUCT(winsize,
  3. TYPE_SHORT, TYPE_SHORT, TYPE_SHORT, TYPE_SHORT)
  4. STRUCT(serial_multiport_struct,
  5. TYPE_INT, TYPE_INT, TYPE_CHAR, TYPE_CHAR, TYPE_INT, TYPE_CHAR, TYPE_CHAR,
  6. TYPE_INT, TYPE_CHAR, TYPE_CHAR, TYPE_INT, TYPE_CHAR, TYPE_CHAR, TYPE_INT,
  7. MK_ARRAY(TYPE_INT, 32))
  8. STRUCT(serial_icounter_struct,
  9. TYPE_INT, TYPE_INT, TYPE_INT, TYPE_INT, MK_ARRAY(TYPE_INT, 16))
  10. STRUCT(sockaddr,
  11. TYPE_SHORT, MK_ARRAY(TYPE_CHAR, 14))
  12. STRUCT(rtentry,
  13. TYPE_ULONG, MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr),
  14. TYPE_SHORT, TYPE_SHORT, TYPE_ULONG, TYPE_PTRVOID, TYPE_SHORT, TYPE_PTRVOID,
  15. TYPE_ULONG, TYPE_ULONG, TYPE_SHORT)
  16. STRUCT(ifmap,
  17. TYPE_ULONG, TYPE_ULONG, TYPE_SHORT, TYPE_CHAR, TYPE_CHAR, TYPE_CHAR,
  18. /* Spare 3 bytes */
  19. TYPE_CHAR, TYPE_CHAR, TYPE_CHAR)
  20. /* The *_ifreq_list arrays deal with the fact that struct ifreq has unions */
  21. STRUCT(sockaddr_ifreq,
  22. MK_ARRAY(TYPE_CHAR, IFNAMSIZ), MK_STRUCT(STRUCT_sockaddr))
  23. STRUCT(short_ifreq,
  24. MK_ARRAY(TYPE_CHAR, IFNAMSIZ), TYPE_SHORT)
  25. STRUCT(int_ifreq,
  26. MK_ARRAY(TYPE_CHAR, IFNAMSIZ), TYPE_INT)
  27. STRUCT(ifmap_ifreq,
  28. MK_ARRAY(TYPE_CHAR, IFNAMSIZ), MK_STRUCT(STRUCT_ifmap))
  29. STRUCT(char_ifreq,
  30. MK_ARRAY(TYPE_CHAR, IFNAMSIZ),
  31. MK_ARRAY(TYPE_CHAR, IFNAMSIZ))
  32. STRUCT(ptr_ifreq,
  33. MK_ARRAY(TYPE_CHAR, IFNAMSIZ), TYPE_PTRVOID)
  34. STRUCT(ifconf,
  35. TYPE_INT, TYPE_PTRVOID)
  36. STRUCT(arpreq,
  37. MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr), TYPE_INT, MK_STRUCT(STRUCT_sockaddr),
  38. MK_ARRAY(TYPE_CHAR, 16))
  39. STRUCT(arpreq_old,
  40. MK_STRUCT(STRUCT_sockaddr), MK_STRUCT(STRUCT_sockaddr), TYPE_INT, MK_STRUCT(STRUCT_sockaddr))
  41. STRUCT(cdrom_read_audio,
  42. TYPE_CHAR, TYPE_CHAR, TYPE_CHAR, TYPE_CHAR, TYPE_CHAR, TYPE_INT, TYPE_PTRVOID,
  43. TYPE_NULL)
  44. STRUCT(hd_geometry,
  45. TYPE_CHAR, TYPE_CHAR, TYPE_SHORT, TYPE_ULONG)
  46. STRUCT(dirent,
  47. TYPE_LONG, TYPE_LONG, TYPE_SHORT, MK_ARRAY(TYPE_CHAR, 256))
  48. STRUCT(kbentry,
  49. TYPE_CHAR, TYPE_CHAR, TYPE_SHORT)
  50. STRUCT(kbsentry,
  51. TYPE_CHAR, MK_ARRAY(TYPE_CHAR, 512))
  52. STRUCT(audio_buf_info,
  53. TYPE_INT, TYPE_INT, TYPE_INT, TYPE_INT)
  54. STRUCT(count_info,
  55. TYPE_INT, TYPE_INT, TYPE_INT)
  56. STRUCT(mixer_info,
  57. MK_ARRAY(TYPE_CHAR, 16), MK_ARRAY(TYPE_CHAR, 32), TYPE_INT, MK_ARRAY(TYPE_INT, 10))
  58. /* loop device ioctls */
  59. STRUCT(loop_info,
  60. TYPE_INT, /* lo_number */
  61. TYPE_OLDDEVT, /* lo_device */
  62. TYPE_ULONG, /* lo_inode */
  63. TYPE_OLDDEVT, /* lo_rdevice */
  64. TYPE_INT, /* lo_offset */
  65. TYPE_INT, /* lo_encrypt_type */
  66. TYPE_INT, /* lo_encrypt_key_size */
  67. TYPE_INT, /* lo_flags */
  68. MK_ARRAY(TYPE_CHAR, 64), /* lo_name */
  69. MK_ARRAY(TYPE_CHAR, 32), /* lo_encrypt_key */
  70. MK_ARRAY(TYPE_ULONG, 2), /* lo_init */
  71. MK_ARRAY(TYPE_CHAR, 4)) /* reserved */
  72. STRUCT(loop_info64,
  73. TYPE_ULONGLONG, /* lo_device */
  74. TYPE_ULONGLONG, /* lo_inode */
  75. TYPE_ULONGLONG, /* lo_rdevice */
  76. TYPE_ULONGLONG, /* lo_offset */
  77. TYPE_ULONG, /* lo_number */
  78. TYPE_ULONG, /* lo_encrypt_type */
  79. TYPE_ULONG, /* lo_encrypt_key_size */
  80. TYPE_ULONG, /* lo_flags */
  81. MK_ARRAY(TYPE_CHAR, 64), /* lo_name */
  82. MK_ARRAY(TYPE_CHAR, 64), /* lo_crypt_name */
  83. MK_ARRAY(TYPE_CHAR, 32), /* lo_encrypt_key */
  84. MK_ARRAY(TYPE_ULONGLONG, 2)) /* lo_init */
  85. /* mag tape ioctls */
  86. STRUCT(mtop, TYPE_SHORT, TYPE_INT)
  87. STRUCT(mtget, TYPE_LONG, TYPE_LONG, TYPE_LONG, TYPE_LONG, TYPE_LONG,
  88. TYPE_INT, TYPE_INT)
  89. STRUCT(mtpos, TYPE_LONG)
  90. STRUCT(fb_fix_screeninfo,
  91. MK_ARRAY(TYPE_CHAR, 16), /* id */
  92. TYPE_ULONG, /* smem_start */
  93. TYPE_INT, /* smem_len */
  94. TYPE_INT, /* type */
  95. TYPE_INT, /* type_aux */
  96. TYPE_INT, /* visual */
  97. TYPE_SHORT, /* xpanstep */
  98. TYPE_SHORT, /* ypanstep */
  99. TYPE_SHORT, /* ywrapstep */
  100. TYPE_INT, /* line_length */
  101. TYPE_ULONG, /* mmio_start */
  102. TYPE_INT, /* mmio_len */
  103. TYPE_INT, /* accel */
  104. MK_ARRAY(TYPE_CHAR, 3)) /* reserved */
  105. STRUCT(fb_var_screeninfo,
  106. TYPE_INT, /* xres */
  107. TYPE_INT, /* yres */
  108. TYPE_INT, /* xres_virtual */
  109. TYPE_INT, /* yres_virtual */
  110. TYPE_INT, /* xoffset */
  111. TYPE_INT, /* yoffset */
  112. TYPE_INT, /* bits_per_pixel */
  113. TYPE_INT, /* grayscale */
  114. MK_ARRAY(TYPE_INT, 3), /* red */
  115. MK_ARRAY(TYPE_INT, 3), /* green */
  116. MK_ARRAY(TYPE_INT, 3), /* blue */
  117. MK_ARRAY(TYPE_INT, 3), /* transp */
  118. TYPE_INT, /* nonstd */
  119. TYPE_INT, /* activate */
  120. TYPE_INT, /* height */
  121. TYPE_INT, /* width */
  122. TYPE_INT, /* accel_flags */
  123. TYPE_INT, /* pixclock */
  124. TYPE_INT, /* left_margin */
  125. TYPE_INT, /* right_margin */
  126. TYPE_INT, /* upper_margin */
  127. TYPE_INT, /* lower_margin */
  128. TYPE_INT, /* hsync_len */
  129. TYPE_INT, /* vsync_len */
  130. TYPE_INT, /* sync */
  131. TYPE_INT, /* vmode */
  132. TYPE_INT, /* rotate */
  133. MK_ARRAY(TYPE_INT, 5)) /* reserved */
  134. STRUCT(fb_cmap,
  135. TYPE_INT, /* start */
  136. TYPE_INT, /* len */
  137. TYPE_PTRVOID, /* red */
  138. TYPE_PTRVOID, /* green */
  139. TYPE_PTRVOID, /* blue */
  140. TYPE_PTRVOID) /* transp */
  141. STRUCT(fb_con2fbmap,
  142. TYPE_INT, /* console */
  143. TYPE_INT) /* framebuffer */
  144. STRUCT(vt_stat,
  145. TYPE_SHORT, /* v_active */
  146. TYPE_SHORT, /* v_signal */
  147. TYPE_SHORT) /* v_state */
  148. STRUCT(vt_mode,
  149. TYPE_CHAR, /* mode */
  150. TYPE_CHAR, /* waitv */
  151. TYPE_SHORT, /* relsig */
  152. TYPE_SHORT, /* acqsig */
  153. TYPE_SHORT) /* frsig */
  154. STRUCT(dm_ioctl,
  155. MK_ARRAY(TYPE_INT, 3), /* version */
  156. TYPE_INT, /* data_size */
  157. TYPE_INT, /* data_start */
  158. TYPE_INT, /* target_count*/
  159. TYPE_INT, /* open_count */
  160. TYPE_INT, /* flags */
  161. TYPE_INT, /* event_nr */
  162. TYPE_INT, /* padding */
  163. TYPE_ULONGLONG, /* dev */
  164. MK_ARRAY(TYPE_CHAR, 128), /* name */
  165. MK_ARRAY(TYPE_CHAR, 129), /* uuid */
  166. MK_ARRAY(TYPE_CHAR, 7)) /* data */
  167. STRUCT(dm_target_spec,
  168. TYPE_ULONGLONG, /* sector_start */
  169. TYPE_ULONGLONG, /* length */
  170. TYPE_INT, /* status */
  171. TYPE_INT, /* next */
  172. MK_ARRAY(TYPE_CHAR, 16)) /* target_type */
  173. STRUCT(dm_target_deps,
  174. TYPE_INT, /* count */
  175. TYPE_INT) /* padding */
  176. STRUCT(dm_name_list,
  177. TYPE_ULONGLONG, /* dev */
  178. TYPE_INT) /* next */
  179. STRUCT(dm_target_versions,
  180. TYPE_INT, /* next */
  181. MK_ARRAY(TYPE_INT, 3)) /* version*/
  182. STRUCT(dm_target_msg,
  183. TYPE_ULONGLONG) /* sector */
  184. STRUCT(fiemap_extent,
  185. TYPE_ULONGLONG, /* fe_logical */
  186. TYPE_ULONGLONG, /* fe_physical */
  187. TYPE_ULONGLONG, /* fe_length */
  188. MK_ARRAY(TYPE_ULONGLONG, 2), /* fe_reserved64[2] */
  189. TYPE_INT, /* fe_flags */
  190. MK_ARRAY(TYPE_INT, 3)) /* fe_reserved[3] */
  191. STRUCT(fiemap,
  192. TYPE_ULONGLONG, /* fm_start */
  193. TYPE_ULONGLONG, /* fm_length */
  194. TYPE_INT, /* fm_flags */
  195. TYPE_INT, /* fm_mapped_extents */
  196. TYPE_INT, /* fm_extent_count */
  197. TYPE_INT) /* fm_reserved */