本站源代码
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2578 lines
64KB

  1. // cgo -godefs -- -Wall -Werror -static -I/tmp/include linux/types.go | go run mkpost.go
  2. // Code generated by the command above; see README.md. DO NOT EDIT.
  3. // +build arm,linux
  4. package unix
  5. const (
  6. SizeofPtr = 0x4
  7. SizeofShort = 0x2
  8. SizeofInt = 0x4
  9. SizeofLong = 0x4
  10. SizeofLongLong = 0x8
  11. PathMax = 0x1000
  12. )
  13. type (
  14. _C_short int16
  15. _C_int int32
  16. _C_long int32
  17. _C_long_long int64
  18. )
  19. type Timespec struct {
  20. Sec int32
  21. Nsec int32
  22. }
  23. type Timeval struct {
  24. Sec int32
  25. Usec int32
  26. }
  27. type Timex struct {
  28. Modes uint32
  29. Offset int32
  30. Freq int32
  31. Maxerror int32
  32. Esterror int32
  33. Status int32
  34. Constant int32
  35. Precision int32
  36. Tolerance int32
  37. Time Timeval
  38. Tick int32
  39. Ppsfreq int32
  40. Jitter int32
  41. Shift int32
  42. Stabil int32
  43. Jitcnt int32
  44. Calcnt int32
  45. Errcnt int32
  46. Stbcnt int32
  47. Tai int32
  48. _ [44]byte
  49. }
  50. type Time_t int32
  51. type Tms struct {
  52. Utime int32
  53. Stime int32
  54. Cutime int32
  55. Cstime int32
  56. }
  57. type Utimbuf struct {
  58. Actime int32
  59. Modtime int32
  60. }
  61. type Rusage struct {
  62. Utime Timeval
  63. Stime Timeval
  64. Maxrss int32
  65. Ixrss int32
  66. Idrss int32
  67. Isrss int32
  68. Minflt int32
  69. Majflt int32
  70. Nswap int32
  71. Inblock int32
  72. Oublock int32
  73. Msgsnd int32
  74. Msgrcv int32
  75. Nsignals int32
  76. Nvcsw int32
  77. Nivcsw int32
  78. }
  79. type Rlimit struct {
  80. Cur uint64
  81. Max uint64
  82. }
  83. type _Gid_t uint32
  84. type Stat_t struct {
  85. Dev uint64
  86. _ uint16
  87. _ uint32
  88. Mode uint32
  89. Nlink uint32
  90. Uid uint32
  91. Gid uint32
  92. Rdev uint64
  93. _ uint16
  94. _ [4]byte
  95. Size int64
  96. Blksize int32
  97. _ [4]byte
  98. Blocks int64
  99. Atim Timespec
  100. Mtim Timespec
  101. Ctim Timespec
  102. Ino uint64
  103. }
  104. type StatxTimestamp struct {
  105. Sec int64
  106. Nsec uint32
  107. _ int32
  108. }
  109. type Statx_t struct {
  110. Mask uint32
  111. Blksize uint32
  112. Attributes uint64
  113. Nlink uint32
  114. Uid uint32
  115. Gid uint32
  116. Mode uint16
  117. _ [1]uint16
  118. Ino uint64
  119. Size uint64
  120. Blocks uint64
  121. Attributes_mask uint64
  122. Atime StatxTimestamp
  123. Btime StatxTimestamp
  124. Ctime StatxTimestamp
  125. Mtime StatxTimestamp
  126. Rdev_major uint32
  127. Rdev_minor uint32
  128. Dev_major uint32
  129. Dev_minor uint32
  130. _ [14]uint64
  131. }
  132. type Dirent struct {
  133. Ino uint64
  134. Off int64
  135. Reclen uint16
  136. Type uint8
  137. Name [256]uint8
  138. _ [5]byte
  139. }
  140. type Fsid struct {
  141. Val [2]int32
  142. }
  143. type Flock_t struct {
  144. Type int16
  145. Whence int16
  146. _ [4]byte
  147. Start int64
  148. Len int64
  149. Pid int32
  150. _ [4]byte
  151. }
  152. type FscryptPolicy struct {
  153. Version uint8
  154. Contents_encryption_mode uint8
  155. Filenames_encryption_mode uint8
  156. Flags uint8
  157. Master_key_descriptor [8]uint8
  158. }
  159. type FscryptKey struct {
  160. Mode uint32
  161. Raw [64]uint8
  162. Size uint32
  163. }
  164. type KeyctlDHParams struct {
  165. Private int32
  166. Prime int32
  167. Base int32
  168. }
  169. const (
  170. FADV_NORMAL = 0x0
  171. FADV_RANDOM = 0x1
  172. FADV_SEQUENTIAL = 0x2
  173. FADV_WILLNEED = 0x3
  174. FADV_DONTNEED = 0x4
  175. FADV_NOREUSE = 0x5
  176. )
  177. type RawSockaddrInet4 struct {
  178. Family uint16
  179. Port uint16
  180. Addr [4]byte /* in_addr */
  181. Zero [8]uint8
  182. }
  183. type RawSockaddrInet6 struct {
  184. Family uint16
  185. Port uint16
  186. Flowinfo uint32
  187. Addr [16]byte /* in6_addr */
  188. Scope_id uint32
  189. }
  190. type RawSockaddrUnix struct {
  191. Family uint16
  192. Path [108]int8
  193. }
  194. type RawSockaddrLinklayer struct {
  195. Family uint16
  196. Protocol uint16
  197. Ifindex int32
  198. Hatype uint16
  199. Pkttype uint8
  200. Halen uint8
  201. Addr [8]uint8
  202. }
  203. type RawSockaddrNetlink struct {
  204. Family uint16
  205. Pad uint16
  206. Pid uint32
  207. Groups uint32
  208. }
  209. type RawSockaddrHCI struct {
  210. Family uint16
  211. Dev uint16
  212. Channel uint16
  213. }
  214. type RawSockaddrL2 struct {
  215. Family uint16
  216. Psm uint16
  217. Bdaddr [6]uint8
  218. Cid uint16
  219. Bdaddr_type uint8
  220. _ [1]byte
  221. }
  222. type RawSockaddrRFCOMM struct {
  223. Family uint16
  224. Bdaddr [6]uint8
  225. Channel uint8
  226. _ [1]byte
  227. }
  228. type RawSockaddrCAN struct {
  229. Family uint16
  230. Ifindex int32
  231. Addr [8]byte
  232. }
  233. type RawSockaddrALG struct {
  234. Family uint16
  235. Type [14]uint8
  236. Feat uint32
  237. Mask uint32
  238. Name [64]uint8
  239. }
  240. type RawSockaddrVM struct {
  241. Family uint16
  242. Reserved1 uint16
  243. Port uint32
  244. Cid uint32
  245. Zero [4]uint8
  246. }
  247. type RawSockaddrXDP struct {
  248. Family uint16
  249. Flags uint16
  250. Ifindex uint32
  251. Queue_id uint32
  252. Shared_umem_fd uint32
  253. }
  254. type RawSockaddrPPPoX [0x1e]byte
  255. type RawSockaddrTIPC struct {
  256. Family uint16
  257. Addrtype uint8
  258. Scope int8
  259. Addr [12]byte
  260. }
  261. type RawSockaddr struct {
  262. Family uint16
  263. Data [14]uint8
  264. }
  265. type RawSockaddrAny struct {
  266. Addr RawSockaddr
  267. Pad [96]uint8
  268. }
  269. type _Socklen uint32
  270. type Linger struct {
  271. Onoff int32
  272. Linger int32
  273. }
  274. type Iovec struct {
  275. Base *byte
  276. Len uint32
  277. }
  278. type IPMreq struct {
  279. Multiaddr [4]byte /* in_addr */
  280. Interface [4]byte /* in_addr */
  281. }
  282. type IPMreqn struct {
  283. Multiaddr [4]byte /* in_addr */
  284. Address [4]byte /* in_addr */
  285. Ifindex int32
  286. }
  287. type IPv6Mreq struct {
  288. Multiaddr [16]byte /* in6_addr */
  289. Interface uint32
  290. }
  291. type PacketMreq struct {
  292. Ifindex int32
  293. Type uint16
  294. Alen uint16
  295. Address [8]uint8
  296. }
  297. type Msghdr struct {
  298. Name *byte
  299. Namelen uint32
  300. Iov *Iovec
  301. Iovlen uint32
  302. Control *byte
  303. Controllen uint32
  304. Flags int32
  305. }
  306. type Cmsghdr struct {
  307. Len uint32
  308. Level int32
  309. Type int32
  310. }
  311. type Inet4Pktinfo struct {
  312. Ifindex int32
  313. Spec_dst [4]byte /* in_addr */
  314. Addr [4]byte /* in_addr */
  315. }
  316. type Inet6Pktinfo struct {
  317. Addr [16]byte /* in6_addr */
  318. Ifindex uint32
  319. }
  320. type IPv6MTUInfo struct {
  321. Addr RawSockaddrInet6
  322. Mtu uint32
  323. }
  324. type ICMPv6Filter struct {
  325. Data [8]uint32
  326. }
  327. type Ucred struct {
  328. Pid int32
  329. Uid uint32
  330. Gid uint32
  331. }
  332. type TCPInfo struct {
  333. State uint8
  334. Ca_state uint8
  335. Retransmits uint8
  336. Probes uint8
  337. Backoff uint8
  338. Options uint8
  339. Rto uint32
  340. Ato uint32
  341. Snd_mss uint32
  342. Rcv_mss uint32
  343. Unacked uint32
  344. Sacked uint32
  345. Lost uint32
  346. Retrans uint32
  347. Fackets uint32
  348. Last_data_sent uint32
  349. Last_ack_sent uint32
  350. Last_data_recv uint32
  351. Last_ack_recv uint32
  352. Pmtu uint32
  353. Rcv_ssthresh uint32
  354. Rtt uint32
  355. Rttvar uint32
  356. Snd_ssthresh uint32
  357. Snd_cwnd uint32
  358. Advmss uint32
  359. Reordering uint32
  360. Rcv_rtt uint32
  361. Rcv_space uint32
  362. Total_retrans uint32
  363. }
  364. type CanFilter struct {
  365. Id uint32
  366. Mask uint32
  367. }
  368. const (
  369. SizeofSockaddrInet4 = 0x10
  370. SizeofSockaddrInet6 = 0x1c
  371. SizeofSockaddrAny = 0x70
  372. SizeofSockaddrUnix = 0x6e
  373. SizeofSockaddrLinklayer = 0x14
  374. SizeofSockaddrNetlink = 0xc
  375. SizeofSockaddrHCI = 0x6
  376. SizeofSockaddrL2 = 0xe
  377. SizeofSockaddrRFCOMM = 0xa
  378. SizeofSockaddrCAN = 0x10
  379. SizeofSockaddrALG = 0x58
  380. SizeofSockaddrVM = 0x10
  381. SizeofSockaddrXDP = 0x10
  382. SizeofSockaddrPPPoX = 0x1e
  383. SizeofSockaddrTIPC = 0x10
  384. SizeofLinger = 0x8
  385. SizeofIovec = 0x8
  386. SizeofIPMreq = 0x8
  387. SizeofIPMreqn = 0xc
  388. SizeofIPv6Mreq = 0x14
  389. SizeofPacketMreq = 0x10
  390. SizeofMsghdr = 0x1c
  391. SizeofCmsghdr = 0xc
  392. SizeofInet4Pktinfo = 0xc
  393. SizeofInet6Pktinfo = 0x14
  394. SizeofIPv6MTUInfo = 0x20
  395. SizeofICMPv6Filter = 0x20
  396. SizeofUcred = 0xc
  397. SizeofTCPInfo = 0x68
  398. SizeofCanFilter = 0x8
  399. )
  400. const (
  401. NDA_UNSPEC = 0x0
  402. NDA_DST = 0x1
  403. NDA_LLADDR = 0x2
  404. NDA_CACHEINFO = 0x3
  405. NDA_PROBES = 0x4
  406. NDA_VLAN = 0x5
  407. NDA_PORT = 0x6
  408. NDA_VNI = 0x7
  409. NDA_IFINDEX = 0x8
  410. NDA_MASTER = 0x9
  411. NDA_LINK_NETNSID = 0xa
  412. NDA_SRC_VNI = 0xb
  413. NTF_USE = 0x1
  414. NTF_SELF = 0x2
  415. NTF_MASTER = 0x4
  416. NTF_PROXY = 0x8
  417. NTF_EXT_LEARNED = 0x10
  418. NTF_OFFLOADED = 0x20
  419. NTF_ROUTER = 0x80
  420. NUD_INCOMPLETE = 0x1
  421. NUD_REACHABLE = 0x2
  422. NUD_STALE = 0x4
  423. NUD_DELAY = 0x8
  424. NUD_PROBE = 0x10
  425. NUD_FAILED = 0x20
  426. NUD_NOARP = 0x40
  427. NUD_PERMANENT = 0x80
  428. NUD_NONE = 0x0
  429. IFA_UNSPEC = 0x0
  430. IFA_ADDRESS = 0x1
  431. IFA_LOCAL = 0x2
  432. IFA_LABEL = 0x3
  433. IFA_BROADCAST = 0x4
  434. IFA_ANYCAST = 0x5
  435. IFA_CACHEINFO = 0x6
  436. IFA_MULTICAST = 0x7
  437. IFA_FLAGS = 0x8
  438. IFA_RT_PRIORITY = 0x9
  439. IFA_TARGET_NETNSID = 0xa
  440. IFLA_UNSPEC = 0x0
  441. IFLA_ADDRESS = 0x1
  442. IFLA_BROADCAST = 0x2
  443. IFLA_IFNAME = 0x3
  444. IFLA_MTU = 0x4
  445. IFLA_LINK = 0x5
  446. IFLA_QDISC = 0x6
  447. IFLA_STATS = 0x7
  448. IFLA_COST = 0x8
  449. IFLA_PRIORITY = 0x9
  450. IFLA_MASTER = 0xa
  451. IFLA_WIRELESS = 0xb
  452. IFLA_PROTINFO = 0xc
  453. IFLA_TXQLEN = 0xd
  454. IFLA_MAP = 0xe
  455. IFLA_WEIGHT = 0xf
  456. IFLA_OPERSTATE = 0x10
  457. IFLA_LINKMODE = 0x11
  458. IFLA_LINKINFO = 0x12
  459. IFLA_NET_NS_PID = 0x13
  460. IFLA_IFALIAS = 0x14
  461. IFLA_NUM_VF = 0x15
  462. IFLA_VFINFO_LIST = 0x16
  463. IFLA_STATS64 = 0x17
  464. IFLA_VF_PORTS = 0x18
  465. IFLA_PORT_SELF = 0x19
  466. IFLA_AF_SPEC = 0x1a
  467. IFLA_GROUP = 0x1b
  468. IFLA_NET_NS_FD = 0x1c
  469. IFLA_EXT_MASK = 0x1d
  470. IFLA_PROMISCUITY = 0x1e
  471. IFLA_NUM_TX_QUEUES = 0x1f
  472. IFLA_NUM_RX_QUEUES = 0x20
  473. IFLA_CARRIER = 0x21
  474. IFLA_PHYS_PORT_ID = 0x22
  475. IFLA_CARRIER_CHANGES = 0x23
  476. IFLA_PHYS_SWITCH_ID = 0x24
  477. IFLA_LINK_NETNSID = 0x25
  478. IFLA_PHYS_PORT_NAME = 0x26
  479. IFLA_PROTO_DOWN = 0x27
  480. IFLA_GSO_MAX_SEGS = 0x28
  481. IFLA_GSO_MAX_SIZE = 0x29
  482. IFLA_PAD = 0x2a
  483. IFLA_XDP = 0x2b
  484. IFLA_EVENT = 0x2c
  485. IFLA_NEW_NETNSID = 0x2d
  486. IFLA_IF_NETNSID = 0x2e
  487. IFLA_TARGET_NETNSID = 0x2e
  488. IFLA_CARRIER_UP_COUNT = 0x2f
  489. IFLA_CARRIER_DOWN_COUNT = 0x30
  490. IFLA_NEW_IFINDEX = 0x31
  491. IFLA_MIN_MTU = 0x32
  492. IFLA_MAX_MTU = 0x33
  493. IFLA_MAX = 0x33
  494. IFLA_INFO_KIND = 0x1
  495. IFLA_INFO_DATA = 0x2
  496. IFLA_INFO_XSTATS = 0x3
  497. IFLA_INFO_SLAVE_KIND = 0x4
  498. IFLA_INFO_SLAVE_DATA = 0x5
  499. RT_SCOPE_UNIVERSE = 0x0
  500. RT_SCOPE_SITE = 0xc8
  501. RT_SCOPE_LINK = 0xfd
  502. RT_SCOPE_HOST = 0xfe
  503. RT_SCOPE_NOWHERE = 0xff
  504. RT_TABLE_UNSPEC = 0x0
  505. RT_TABLE_COMPAT = 0xfc
  506. RT_TABLE_DEFAULT = 0xfd
  507. RT_TABLE_MAIN = 0xfe
  508. RT_TABLE_LOCAL = 0xff
  509. RT_TABLE_MAX = 0xffffffff
  510. RTA_UNSPEC = 0x0
  511. RTA_DST = 0x1
  512. RTA_SRC = 0x2
  513. RTA_IIF = 0x3
  514. RTA_OIF = 0x4
  515. RTA_GATEWAY = 0x5
  516. RTA_PRIORITY = 0x6
  517. RTA_PREFSRC = 0x7
  518. RTA_METRICS = 0x8
  519. RTA_MULTIPATH = 0x9
  520. RTA_FLOW = 0xb
  521. RTA_CACHEINFO = 0xc
  522. RTA_TABLE = 0xf
  523. RTA_MARK = 0x10
  524. RTA_MFC_STATS = 0x11
  525. RTA_VIA = 0x12
  526. RTA_NEWDST = 0x13
  527. RTA_PREF = 0x14
  528. RTA_ENCAP_TYPE = 0x15
  529. RTA_ENCAP = 0x16
  530. RTA_EXPIRES = 0x17
  531. RTA_PAD = 0x18
  532. RTA_UID = 0x19
  533. RTA_TTL_PROPAGATE = 0x1a
  534. RTA_IP_PROTO = 0x1b
  535. RTA_SPORT = 0x1c
  536. RTA_DPORT = 0x1d
  537. RTN_UNSPEC = 0x0
  538. RTN_UNICAST = 0x1
  539. RTN_LOCAL = 0x2
  540. RTN_BROADCAST = 0x3
  541. RTN_ANYCAST = 0x4
  542. RTN_MULTICAST = 0x5
  543. RTN_BLACKHOLE = 0x6
  544. RTN_UNREACHABLE = 0x7
  545. RTN_PROHIBIT = 0x8
  546. RTN_THROW = 0x9
  547. RTN_NAT = 0xa
  548. RTN_XRESOLVE = 0xb
  549. RTNLGRP_NONE = 0x0
  550. RTNLGRP_LINK = 0x1
  551. RTNLGRP_NOTIFY = 0x2
  552. RTNLGRP_NEIGH = 0x3
  553. RTNLGRP_TC = 0x4
  554. RTNLGRP_IPV4_IFADDR = 0x5
  555. RTNLGRP_IPV4_MROUTE = 0x6
  556. RTNLGRP_IPV4_ROUTE = 0x7
  557. RTNLGRP_IPV4_RULE = 0x8
  558. RTNLGRP_IPV6_IFADDR = 0x9
  559. RTNLGRP_IPV6_MROUTE = 0xa
  560. RTNLGRP_IPV6_ROUTE = 0xb
  561. RTNLGRP_IPV6_IFINFO = 0xc
  562. RTNLGRP_IPV6_PREFIX = 0x12
  563. RTNLGRP_IPV6_RULE = 0x13
  564. RTNLGRP_ND_USEROPT = 0x14
  565. SizeofNlMsghdr = 0x10
  566. SizeofNlMsgerr = 0x14
  567. SizeofRtGenmsg = 0x1
  568. SizeofNlAttr = 0x4
  569. SizeofRtAttr = 0x4
  570. SizeofIfInfomsg = 0x10
  571. SizeofIfAddrmsg = 0x8
  572. SizeofRtMsg = 0xc
  573. SizeofRtNexthop = 0x8
  574. SizeofNdUseroptmsg = 0x10
  575. SizeofNdMsg = 0xc
  576. )
  577. type NlMsghdr struct {
  578. Len uint32
  579. Type uint16
  580. Flags uint16
  581. Seq uint32
  582. Pid uint32
  583. }
  584. type NlMsgerr struct {
  585. Error int32
  586. Msg NlMsghdr
  587. }
  588. type RtGenmsg struct {
  589. Family uint8
  590. }
  591. type NlAttr struct {
  592. Len uint16
  593. Type uint16
  594. }
  595. type RtAttr struct {
  596. Len uint16
  597. Type uint16
  598. }
  599. type IfInfomsg struct {
  600. Family uint8
  601. _ uint8
  602. Type uint16
  603. Index int32
  604. Flags uint32
  605. Change uint32
  606. }
  607. type IfAddrmsg struct {
  608. Family uint8
  609. Prefixlen uint8
  610. Flags uint8
  611. Scope uint8
  612. Index uint32
  613. }
  614. type RtMsg struct {
  615. Family uint8
  616. Dst_len uint8
  617. Src_len uint8
  618. Tos uint8
  619. Table uint8
  620. Protocol uint8
  621. Scope uint8
  622. Type uint8
  623. Flags uint32
  624. }
  625. type RtNexthop struct {
  626. Len uint16
  627. Flags uint8
  628. Hops uint8
  629. Ifindex int32
  630. }
  631. type NdUseroptmsg struct {
  632. Family uint8
  633. Pad1 uint8
  634. Opts_len uint16
  635. Ifindex int32
  636. Icmp_type uint8
  637. Icmp_code uint8
  638. Pad2 uint16
  639. Pad3 uint32
  640. }
  641. type NdMsg struct {
  642. Family uint8
  643. Pad1 uint8
  644. Pad2 uint16
  645. Ifindex int32
  646. State uint16
  647. Flags uint8
  648. Type uint8
  649. }
  650. const (
  651. SizeofSockFilter = 0x8
  652. SizeofSockFprog = 0x8
  653. )
  654. type SockFilter struct {
  655. Code uint16
  656. Jt uint8
  657. Jf uint8
  658. K uint32
  659. }
  660. type SockFprog struct {
  661. Len uint16
  662. Filter *SockFilter
  663. }
  664. type InotifyEvent struct {
  665. Wd int32
  666. Mask uint32
  667. Cookie uint32
  668. Len uint32
  669. }
  670. const SizeofInotifyEvent = 0x10
  671. type PtraceRegs struct {
  672. Uregs [18]uint32
  673. }
  674. type FdSet struct {
  675. Bits [32]int32
  676. }
  677. type Sysinfo_t struct {
  678. Uptime int32
  679. Loads [3]uint32
  680. Totalram uint32
  681. Freeram uint32
  682. Sharedram uint32
  683. Bufferram uint32
  684. Totalswap uint32
  685. Freeswap uint32
  686. Procs uint16
  687. Pad uint16
  688. Totalhigh uint32
  689. Freehigh uint32
  690. Unit uint32
  691. _ [8]uint8
  692. }
  693. type Utsname struct {
  694. Sysname [65]byte
  695. Nodename [65]byte
  696. Release [65]byte
  697. Version [65]byte
  698. Machine [65]byte
  699. Domainname [65]byte
  700. }
  701. type Ustat_t struct {
  702. Tfree int32
  703. Tinode uint32
  704. Fname [6]uint8
  705. Fpack [6]uint8
  706. }
  707. type EpollEvent struct {
  708. Events uint32
  709. PadFd int32
  710. Fd int32
  711. Pad int32
  712. }
  713. const (
  714. AT_EMPTY_PATH = 0x1000
  715. AT_FDCWD = -0x64
  716. AT_NO_AUTOMOUNT = 0x800
  717. AT_REMOVEDIR = 0x200
  718. AT_STATX_SYNC_AS_STAT = 0x0
  719. AT_STATX_FORCE_SYNC = 0x2000
  720. AT_STATX_DONT_SYNC = 0x4000
  721. AT_SYMLINK_FOLLOW = 0x400
  722. AT_SYMLINK_NOFOLLOW = 0x100
  723. AT_EACCESS = 0x200
  724. )
  725. type PollFd struct {
  726. Fd int32
  727. Events int16
  728. Revents int16
  729. }
  730. const (
  731. POLLIN = 0x1
  732. POLLPRI = 0x2
  733. POLLOUT = 0x4
  734. POLLRDHUP = 0x2000
  735. POLLERR = 0x8
  736. POLLHUP = 0x10
  737. POLLNVAL = 0x20
  738. )
  739. type Sigset_t struct {
  740. Val [32]uint32
  741. }
  742. const _C__NSIG = 0x41
  743. type SignalfdSiginfo struct {
  744. Signo uint32
  745. Errno int32
  746. Code int32
  747. Pid uint32
  748. Uid uint32
  749. Fd int32
  750. Tid uint32
  751. Band uint32
  752. Overrun uint32
  753. Trapno uint32
  754. Status int32
  755. Int int32
  756. Ptr uint64
  757. Utime uint64
  758. Stime uint64
  759. Addr uint64
  760. Addr_lsb uint16
  761. _ uint16
  762. Syscall int32
  763. Call_addr uint64
  764. Arch uint32
  765. _ [28]uint8
  766. }
  767. const PERF_IOC_FLAG_GROUP = 0x1
  768. type Termios struct {
  769. Iflag uint32
  770. Oflag uint32
  771. Cflag uint32
  772. Lflag uint32
  773. Line uint8
  774. Cc [19]uint8
  775. Ispeed uint32
  776. Ospeed uint32
  777. }
  778. type Winsize struct {
  779. Row uint16
  780. Col uint16
  781. Xpixel uint16
  782. Ypixel uint16
  783. }
  784. type Taskstats struct {
  785. Version uint16
  786. Ac_exitcode uint32
  787. Ac_flag uint8
  788. Ac_nice uint8
  789. _ [4]byte
  790. Cpu_count uint64
  791. Cpu_delay_total uint64
  792. Blkio_count uint64
  793. Blkio_delay_total uint64
  794. Swapin_count uint64
  795. Swapin_delay_total uint64
  796. Cpu_run_real_total uint64
  797. Cpu_run_virtual_total uint64
  798. Ac_comm [32]uint8
  799. Ac_sched uint8
  800. Ac_pad [3]uint8
  801. _ [4]byte
  802. Ac_uid uint32
  803. Ac_gid uint32
  804. Ac_pid uint32
  805. Ac_ppid uint32
  806. Ac_btime uint32
  807. _ [4]byte
  808. Ac_etime uint64
  809. Ac_utime uint64
  810. Ac_stime uint64
  811. Ac_minflt uint64
  812. Ac_majflt uint64
  813. Coremem uint64
  814. Virtmem uint64
  815. Hiwater_rss uint64
  816. Hiwater_vm uint64
  817. Read_char uint64
  818. Write_char uint64
  819. Read_syscalls uint64
  820. Write_syscalls uint64
  821. Read_bytes uint64
  822. Write_bytes uint64
  823. Cancelled_write_bytes uint64
  824. Nvcsw uint64
  825. Nivcsw uint64
  826. Ac_utimescaled uint64
  827. Ac_stimescaled uint64
  828. Cpu_scaled_run_real_total uint64
  829. Freepages_count uint64
  830. Freepages_delay_total uint64
  831. Thrashing_count uint64
  832. Thrashing_delay_total uint64
  833. }
  834. const (
  835. TASKSTATS_CMD_UNSPEC = 0x0
  836. TASKSTATS_CMD_GET = 0x1
  837. TASKSTATS_CMD_NEW = 0x2
  838. TASKSTATS_TYPE_UNSPEC = 0x0
  839. TASKSTATS_TYPE_PID = 0x1
  840. TASKSTATS_TYPE_TGID = 0x2
  841. TASKSTATS_TYPE_STATS = 0x3
  842. TASKSTATS_TYPE_AGGR_PID = 0x4
  843. TASKSTATS_TYPE_AGGR_TGID = 0x5
  844. TASKSTATS_TYPE_NULL = 0x6
  845. TASKSTATS_CMD_ATTR_UNSPEC = 0x0
  846. TASKSTATS_CMD_ATTR_PID = 0x1
  847. TASKSTATS_CMD_ATTR_TGID = 0x2
  848. TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
  849. TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
  850. )
  851. type CGroupStats struct {
  852. Sleeping uint64
  853. Running uint64
  854. Stopped uint64
  855. Uninterruptible uint64
  856. Io_wait uint64
  857. }
  858. const (
  859. CGROUPSTATS_CMD_UNSPEC = 0x3
  860. CGROUPSTATS_CMD_GET = 0x4
  861. CGROUPSTATS_CMD_NEW = 0x5
  862. CGROUPSTATS_TYPE_UNSPEC = 0x0
  863. CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
  864. CGROUPSTATS_CMD_ATTR_UNSPEC = 0x0
  865. CGROUPSTATS_CMD_ATTR_FD = 0x1
  866. )
  867. type Genlmsghdr struct {
  868. Cmd uint8
  869. Version uint8
  870. Reserved uint16
  871. }
  872. const (
  873. CTRL_CMD_UNSPEC = 0x0
  874. CTRL_CMD_NEWFAMILY = 0x1
  875. CTRL_CMD_DELFAMILY = 0x2
  876. CTRL_CMD_GETFAMILY = 0x3
  877. CTRL_CMD_NEWOPS = 0x4
  878. CTRL_CMD_DELOPS = 0x5
  879. CTRL_CMD_GETOPS = 0x6
  880. CTRL_CMD_NEWMCAST_GRP = 0x7
  881. CTRL_CMD_DELMCAST_GRP = 0x8
  882. CTRL_CMD_GETMCAST_GRP = 0x9
  883. CTRL_ATTR_UNSPEC = 0x0
  884. CTRL_ATTR_FAMILY_ID = 0x1
  885. CTRL_ATTR_FAMILY_NAME = 0x2
  886. CTRL_ATTR_VERSION = 0x3
  887. CTRL_ATTR_HDRSIZE = 0x4
  888. CTRL_ATTR_MAXATTR = 0x5
  889. CTRL_ATTR_OPS = 0x6
  890. CTRL_ATTR_MCAST_GROUPS = 0x7
  891. CTRL_ATTR_OP_UNSPEC = 0x0
  892. CTRL_ATTR_OP_ID = 0x1
  893. CTRL_ATTR_OP_FLAGS = 0x2
  894. CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
  895. CTRL_ATTR_MCAST_GRP_NAME = 0x1
  896. CTRL_ATTR_MCAST_GRP_ID = 0x2
  897. )
  898. type cpuMask uint32
  899. const (
  900. _CPU_SETSIZE = 0x400
  901. _NCPUBITS = 0x20
  902. )
  903. const (
  904. BDADDR_BREDR = 0x0
  905. BDADDR_LE_PUBLIC = 0x1
  906. BDADDR_LE_RANDOM = 0x2
  907. )
  908. type PerfEventAttr struct {
  909. Type uint32
  910. Size uint32
  911. Config uint64
  912. Sample uint64
  913. Sample_type uint64
  914. Read_format uint64
  915. Bits uint64
  916. Wakeup uint32
  917. Bp_type uint32
  918. Ext1 uint64
  919. Ext2 uint64
  920. Branch_sample_type uint64
  921. Sample_regs_user uint64
  922. Sample_stack_user uint32
  923. Clockid int32
  924. Sample_regs_intr uint64
  925. Aux_watermark uint32
  926. Sample_max_stack uint16
  927. _ uint16
  928. }
  929. type PerfEventMmapPage struct {
  930. Version uint32
  931. Compat_version uint32
  932. Lock uint32
  933. Index uint32
  934. Offset int64
  935. Time_enabled uint64
  936. Time_running uint64
  937. Capabilities uint64
  938. Pmc_width uint16
  939. Time_shift uint16
  940. Time_mult uint32
  941. Time_offset uint64
  942. Time_zero uint64
  943. Size uint32
  944. _ [948]uint8
  945. Data_head uint64
  946. Data_tail uint64
  947. Data_offset uint64
  948. Data_size uint64
  949. Aux_head uint64
  950. Aux_tail uint64
  951. Aux_offset uint64
  952. Aux_size uint64
  953. }
  954. const (
  955. PerfBitDisabled uint64 = CBitFieldMaskBit0
  956. PerfBitInherit = CBitFieldMaskBit1
  957. PerfBitPinned = CBitFieldMaskBit2
  958. PerfBitExclusive = CBitFieldMaskBit3
  959. PerfBitExcludeUser = CBitFieldMaskBit4
  960. PerfBitExcludeKernel = CBitFieldMaskBit5
  961. PerfBitExcludeHv = CBitFieldMaskBit6
  962. PerfBitExcludeIdle = CBitFieldMaskBit7
  963. PerfBitMmap = CBitFieldMaskBit8
  964. PerfBitComm = CBitFieldMaskBit9
  965. PerfBitFreq = CBitFieldMaskBit10
  966. PerfBitInheritStat = CBitFieldMaskBit11
  967. PerfBitEnableOnExec = CBitFieldMaskBit12
  968. PerfBitTask = CBitFieldMaskBit13
  969. PerfBitWatermark = CBitFieldMaskBit14
  970. PerfBitPreciseIPBit1 = CBitFieldMaskBit15
  971. PerfBitPreciseIPBit2 = CBitFieldMaskBit16
  972. PerfBitMmapData = CBitFieldMaskBit17
  973. PerfBitSampleIDAll = CBitFieldMaskBit18
  974. PerfBitExcludeHost = CBitFieldMaskBit19
  975. PerfBitExcludeGuest = CBitFieldMaskBit20
  976. PerfBitExcludeCallchainKernel = CBitFieldMaskBit21
  977. PerfBitExcludeCallchainUser = CBitFieldMaskBit22
  978. PerfBitMmap2 = CBitFieldMaskBit23
  979. PerfBitCommExec = CBitFieldMaskBit24
  980. PerfBitUseClockID = CBitFieldMaskBit25
  981. PerfBitContextSwitch = CBitFieldMaskBit26
  982. )
  983. const (
  984. PERF_TYPE_HARDWARE = 0x0
  985. PERF_TYPE_SOFTWARE = 0x1
  986. PERF_TYPE_TRACEPOINT = 0x2
  987. PERF_TYPE_HW_CACHE = 0x3
  988. PERF_TYPE_RAW = 0x4
  989. PERF_TYPE_BREAKPOINT = 0x5
  990. PERF_COUNT_HW_CPU_CYCLES = 0x0
  991. PERF_COUNT_HW_INSTRUCTIONS = 0x1
  992. PERF_COUNT_HW_CACHE_REFERENCES = 0x2
  993. PERF_COUNT_HW_CACHE_MISSES = 0x3
  994. PERF_COUNT_HW_BRANCH_INSTRUCTIONS = 0x4
  995. PERF_COUNT_HW_BRANCH_MISSES = 0x5
  996. PERF_COUNT_HW_BUS_CYCLES = 0x6
  997. PERF_COUNT_HW_STALLED_CYCLES_FRONTEND = 0x7
  998. PERF_COUNT_HW_STALLED_CYCLES_BACKEND = 0x8
  999. PERF_COUNT_HW_REF_CPU_CYCLES = 0x9
  1000. PERF_COUNT_HW_CACHE_L1D = 0x0
  1001. PERF_COUNT_HW_CACHE_L1I = 0x1
  1002. PERF_COUNT_HW_CACHE_LL = 0x2
  1003. PERF_COUNT_HW_CACHE_DTLB = 0x3
  1004. PERF_COUNT_HW_CACHE_ITLB = 0x4
  1005. PERF_COUNT_HW_CACHE_BPU = 0x5
  1006. PERF_COUNT_HW_CACHE_NODE = 0x6
  1007. PERF_COUNT_HW_CACHE_OP_READ = 0x0
  1008. PERF_COUNT_HW_CACHE_OP_WRITE = 0x1
  1009. PERF_COUNT_HW_CACHE_OP_PREFETCH = 0x2
  1010. PERF_COUNT_HW_CACHE_RESULT_ACCESS = 0x0
  1011. PERF_COUNT_HW_CACHE_RESULT_MISS = 0x1
  1012. PERF_COUNT_SW_CPU_CLOCK = 0x0
  1013. PERF_COUNT_SW_TASK_CLOCK = 0x1
  1014. PERF_COUNT_SW_PAGE_FAULTS = 0x2
  1015. PERF_COUNT_SW_CONTEXT_SWITCHES = 0x3
  1016. PERF_COUNT_SW_CPU_MIGRATIONS = 0x4
  1017. PERF_COUNT_SW_PAGE_FAULTS_MIN = 0x5
  1018. PERF_COUNT_SW_PAGE_FAULTS_MAJ = 0x6
  1019. PERF_COUNT_SW_ALIGNMENT_FAULTS = 0x7
  1020. PERF_COUNT_SW_EMULATION_FAULTS = 0x8
  1021. PERF_COUNT_SW_DUMMY = 0x9
  1022. PERF_COUNT_SW_BPF_OUTPUT = 0xa
  1023. PERF_SAMPLE_IP = 0x1
  1024. PERF_SAMPLE_TID = 0x2
  1025. PERF_SAMPLE_TIME = 0x4
  1026. PERF_SAMPLE_ADDR = 0x8
  1027. PERF_SAMPLE_READ = 0x10
  1028. PERF_SAMPLE_CALLCHAIN = 0x20
  1029. PERF_SAMPLE_ID = 0x40
  1030. PERF_SAMPLE_CPU = 0x80
  1031. PERF_SAMPLE_PERIOD = 0x100
  1032. PERF_SAMPLE_STREAM_ID = 0x200
  1033. PERF_SAMPLE_RAW = 0x400
  1034. PERF_SAMPLE_BRANCH_STACK = 0x800
  1035. PERF_SAMPLE_BRANCH_USER = 0x1
  1036. PERF_SAMPLE_BRANCH_KERNEL = 0x2
  1037. PERF_SAMPLE_BRANCH_HV = 0x4
  1038. PERF_SAMPLE_BRANCH_ANY = 0x8
  1039. PERF_SAMPLE_BRANCH_ANY_CALL = 0x10
  1040. PERF_SAMPLE_BRANCH_ANY_RETURN = 0x20
  1041. PERF_SAMPLE_BRANCH_IND_CALL = 0x40
  1042. PERF_SAMPLE_BRANCH_ABORT_TX = 0x80
  1043. PERF_SAMPLE_BRANCH_IN_TX = 0x100
  1044. PERF_SAMPLE_BRANCH_NO_TX = 0x200
  1045. PERF_SAMPLE_BRANCH_COND = 0x400
  1046. PERF_SAMPLE_BRANCH_CALL_STACK = 0x800
  1047. PERF_SAMPLE_BRANCH_IND_JUMP = 0x1000
  1048. PERF_SAMPLE_BRANCH_CALL = 0x2000
  1049. PERF_SAMPLE_BRANCH_NO_FLAGS = 0x4000
  1050. PERF_SAMPLE_BRANCH_NO_CYCLES = 0x8000
  1051. PERF_SAMPLE_BRANCH_TYPE_SAVE = 0x10000
  1052. PERF_FORMAT_TOTAL_TIME_ENABLED = 0x1
  1053. PERF_FORMAT_TOTAL_TIME_RUNNING = 0x2
  1054. PERF_FORMAT_ID = 0x4
  1055. PERF_FORMAT_GROUP = 0x8
  1056. PERF_RECORD_MMAP = 0x1
  1057. PERF_RECORD_LOST = 0x2
  1058. PERF_RECORD_COMM = 0x3
  1059. PERF_RECORD_EXIT = 0x4
  1060. PERF_RECORD_THROTTLE = 0x5
  1061. PERF_RECORD_UNTHROTTLE = 0x6
  1062. PERF_RECORD_FORK = 0x7
  1063. PERF_RECORD_READ = 0x8
  1064. PERF_RECORD_SAMPLE = 0x9
  1065. PERF_RECORD_MMAP2 = 0xa
  1066. PERF_RECORD_AUX = 0xb
  1067. PERF_RECORD_ITRACE_START = 0xc
  1068. PERF_RECORD_LOST_SAMPLES = 0xd
  1069. PERF_RECORD_SWITCH = 0xe
  1070. PERF_RECORD_SWITCH_CPU_WIDE = 0xf
  1071. PERF_RECORD_NAMESPACES = 0x10
  1072. PERF_CONTEXT_HV = -0x20
  1073. PERF_CONTEXT_KERNEL = -0x80
  1074. PERF_CONTEXT_USER = -0x200
  1075. PERF_CONTEXT_GUEST = -0x800
  1076. PERF_CONTEXT_GUEST_KERNEL = -0x880
  1077. PERF_CONTEXT_GUEST_USER = -0xa00
  1078. PERF_FLAG_FD_NO_GROUP = 0x1
  1079. PERF_FLAG_FD_OUTPUT = 0x2
  1080. PERF_FLAG_PID_CGROUP = 0x4
  1081. PERF_FLAG_FD_CLOEXEC = 0x8
  1082. )
  1083. const (
  1084. CBitFieldMaskBit0 = 0x1
  1085. CBitFieldMaskBit1 = 0x2
  1086. CBitFieldMaskBit2 = 0x4
  1087. CBitFieldMaskBit3 = 0x8
  1088. CBitFieldMaskBit4 = 0x10
  1089. CBitFieldMaskBit5 = 0x20
  1090. CBitFieldMaskBit6 = 0x40
  1091. CBitFieldMaskBit7 = 0x80
  1092. CBitFieldMaskBit8 = 0x100
  1093. CBitFieldMaskBit9 = 0x200
  1094. CBitFieldMaskBit10 = 0x400
  1095. CBitFieldMaskBit11 = 0x800
  1096. CBitFieldMaskBit12 = 0x1000
  1097. CBitFieldMaskBit13 = 0x2000
  1098. CBitFieldMaskBit14 = 0x4000
  1099. CBitFieldMaskBit15 = 0x8000
  1100. CBitFieldMaskBit16 = 0x10000
  1101. CBitFieldMaskBit17 = 0x20000
  1102. CBitFieldMaskBit18 = 0x40000
  1103. CBitFieldMaskBit19 = 0x80000
  1104. CBitFieldMaskBit20 = 0x100000
  1105. CBitFieldMaskBit21 = 0x200000
  1106. CBitFieldMaskBit22 = 0x400000
  1107. CBitFieldMaskBit23 = 0x800000
  1108. CBitFieldMaskBit24 = 0x1000000
  1109. CBitFieldMaskBit25 = 0x2000000
  1110. CBitFieldMaskBit26 = 0x4000000
  1111. CBitFieldMaskBit27 = 0x8000000
  1112. CBitFieldMaskBit28 = 0x10000000
  1113. CBitFieldMaskBit29 = 0x20000000
  1114. CBitFieldMaskBit30 = 0x40000000
  1115. CBitFieldMaskBit31 = 0x80000000
  1116. CBitFieldMaskBit32 = 0x100000000
  1117. CBitFieldMaskBit33 = 0x200000000
  1118. CBitFieldMaskBit34 = 0x400000000
  1119. CBitFieldMaskBit35 = 0x800000000
  1120. CBitFieldMaskBit36 = 0x1000000000
  1121. CBitFieldMaskBit37 = 0x2000000000
  1122. CBitFieldMaskBit38 = 0x4000000000
  1123. CBitFieldMaskBit39 = 0x8000000000
  1124. CBitFieldMaskBit40 = 0x10000000000
  1125. CBitFieldMaskBit41 = 0x20000000000
  1126. CBitFieldMaskBit42 = 0x40000000000
  1127. CBitFieldMaskBit43 = 0x80000000000
  1128. CBitFieldMaskBit44 = 0x100000000000
  1129. CBitFieldMaskBit45 = 0x200000000000
  1130. CBitFieldMaskBit46 = 0x400000000000
  1131. CBitFieldMaskBit47 = 0x800000000000
  1132. CBitFieldMaskBit48 = 0x1000000000000
  1133. CBitFieldMaskBit49 = 0x2000000000000
  1134. CBitFieldMaskBit50 = 0x4000000000000
  1135. CBitFieldMaskBit51 = 0x8000000000000
  1136. CBitFieldMaskBit52 = 0x10000000000000
  1137. CBitFieldMaskBit53 = 0x20000000000000
  1138. CBitFieldMaskBit54 = 0x40000000000000
  1139. CBitFieldMaskBit55 = 0x80000000000000
  1140. CBitFieldMaskBit56 = 0x100000000000000
  1141. CBitFieldMaskBit57 = 0x200000000000000
  1142. CBitFieldMaskBit58 = 0x400000000000000
  1143. CBitFieldMaskBit59 = 0x800000000000000
  1144. CBitFieldMaskBit60 = 0x1000000000000000
  1145. CBitFieldMaskBit61 = 0x2000000000000000
  1146. CBitFieldMaskBit62 = 0x4000000000000000
  1147. CBitFieldMaskBit63 = 0x8000000000000000
  1148. )
  1149. type SockaddrStorage struct {
  1150. Family uint16
  1151. _ [122]uint8
  1152. _ uint32
  1153. }
  1154. type TCPMD5Sig struct {
  1155. Addr SockaddrStorage
  1156. Flags uint8
  1157. Prefixlen uint8
  1158. Keylen uint16
  1159. _ uint32
  1160. Key [80]uint8
  1161. }
  1162. type HDDriveCmdHdr struct {
  1163. Command uint8
  1164. Number uint8
  1165. Feature uint8
  1166. Count uint8
  1167. }
  1168. type HDGeometry struct {
  1169. Heads uint8
  1170. Sectors uint8
  1171. Cylinders uint16
  1172. Start uint32
  1173. }
  1174. type HDDriveID struct {
  1175. Config uint16
  1176. Cyls uint16
  1177. Reserved2 uint16
  1178. Heads uint16
  1179. Track_bytes uint16
  1180. Sector_bytes uint16
  1181. Sectors uint16
  1182. Vendor0 uint16
  1183. Vendor1 uint16
  1184. Vendor2 uint16
  1185. Serial_no [20]uint8
  1186. Buf_type uint16
  1187. Buf_size uint16
  1188. Ecc_bytes uint16
  1189. Fw_rev [8]uint8
  1190. Model [40]uint8
  1191. Max_multsect uint8
  1192. Vendor3 uint8
  1193. Dword_io uint16
  1194. Vendor4 uint8
  1195. Capability uint8
  1196. Reserved50 uint16
  1197. Vendor5 uint8
  1198. TPIO uint8
  1199. Vendor6 uint8
  1200. TDMA uint8
  1201. Field_valid uint16
  1202. Cur_cyls uint16
  1203. Cur_heads uint16
  1204. Cur_sectors uint16
  1205. Cur_capacity0 uint16
  1206. Cur_capacity1 uint16
  1207. Multsect uint8
  1208. Multsect_valid uint8
  1209. Lba_capacity uint32
  1210. Dma_1word uint16
  1211. Dma_mword uint16
  1212. Eide_pio_modes uint16
  1213. Eide_dma_min uint16
  1214. Eide_dma_time uint16
  1215. Eide_pio uint16
  1216. Eide_pio_iordy uint16
  1217. Words69_70 [2]uint16
  1218. Words71_74 [4]uint16
  1219. Queue_depth uint16
  1220. Words76_79 [4]uint16
  1221. Major_rev_num uint16
  1222. Minor_rev_num uint16
  1223. Command_set_1 uint16
  1224. Command_set_2 uint16
  1225. Cfsse uint16
  1226. Cfs_enable_1 uint16
  1227. Cfs_enable_2 uint16
  1228. Csf_default uint16
  1229. Dma_ultra uint16
  1230. Trseuc uint16
  1231. TrsEuc uint16
  1232. CurAPMvalues uint16
  1233. Mprc uint16
  1234. Hw_config uint16
  1235. Acoustic uint16
  1236. Msrqs uint16
  1237. Sxfert uint16
  1238. Sal uint16
  1239. Spg uint32
  1240. Lba_capacity_2 uint64
  1241. Words104_125 [22]uint16
  1242. Last_lun uint16
  1243. Word127 uint16
  1244. Dlf uint16
  1245. Csfo uint16
  1246. Words130_155 [26]uint16
  1247. Word156 uint16
  1248. Words157_159 [3]uint16
  1249. Cfa_power uint16
  1250. Words161_175 [15]uint16
  1251. Words176_205 [30]uint16
  1252. Words206_254 [49]uint16
  1253. Integrity_word uint16
  1254. }
  1255. type Statfs_t struct {
  1256. Type int32
  1257. Bsize int32
  1258. Blocks uint64
  1259. Bfree uint64
  1260. Bavail uint64
  1261. Files uint64
  1262. Ffree uint64
  1263. Fsid Fsid
  1264. Namelen int32
  1265. Frsize int32
  1266. Flags int32
  1267. Spare [4]int32
  1268. _ [4]byte
  1269. }
  1270. const (
  1271. ST_MANDLOCK = 0x40
  1272. ST_NOATIME = 0x400
  1273. ST_NODEV = 0x4
  1274. ST_NODIRATIME = 0x800
  1275. ST_NOEXEC = 0x8
  1276. ST_NOSUID = 0x2
  1277. ST_RDONLY = 0x1
  1278. ST_RELATIME = 0x1000
  1279. ST_SYNCHRONOUS = 0x10
  1280. )
  1281. type TpacketHdr struct {
  1282. Status uint32
  1283. Len uint32
  1284. Snaplen uint32
  1285. Mac uint16
  1286. Net uint16
  1287. Sec uint32
  1288. Usec uint32
  1289. }
  1290. type Tpacket2Hdr struct {
  1291. Status uint32
  1292. Len uint32
  1293. Snaplen uint32
  1294. Mac uint16
  1295. Net uint16
  1296. Sec uint32
  1297. Nsec uint32
  1298. Vlan_tci uint16
  1299. Vlan_tpid uint16
  1300. _ [4]uint8
  1301. }
  1302. type Tpacket3Hdr struct {
  1303. Next_offset uint32
  1304. Sec uint32
  1305. Nsec uint32
  1306. Snaplen uint32
  1307. Len uint32
  1308. Status uint32
  1309. Mac uint16
  1310. Net uint16
  1311. Hv1 TpacketHdrVariant1
  1312. _ [8]uint8
  1313. }
  1314. type TpacketHdrVariant1 struct {
  1315. Rxhash uint32
  1316. Vlan_tci uint32
  1317. Vlan_tpid uint16
  1318. _ uint16
  1319. }
  1320. type TpacketBlockDesc struct {
  1321. Version uint32
  1322. To_priv uint32
  1323. Hdr [40]byte
  1324. }
  1325. type TpacketBDTS struct {
  1326. Sec uint32
  1327. Usec uint32
  1328. }
  1329. type TpacketHdrV1 struct {
  1330. Block_status uint32
  1331. Num_pkts uint32
  1332. Offset_to_first_pkt uint32
  1333. Blk_len uint32
  1334. Seq_num uint64
  1335. Ts_first_pkt TpacketBDTS
  1336. Ts_last_pkt TpacketBDTS
  1337. }
  1338. type TpacketReq struct {
  1339. Block_size uint32
  1340. Block_nr uint32
  1341. Frame_size uint32
  1342. Frame_nr uint32
  1343. }
  1344. type TpacketReq3 struct {
  1345. Block_size uint32
  1346. Block_nr uint32
  1347. Frame_size uint32
  1348. Frame_nr uint32
  1349. Retire_blk_tov uint32
  1350. Sizeof_priv uint32
  1351. Feature_req_word uint32
  1352. }
  1353. type TpacketStats struct {
  1354. Packets uint32
  1355. Drops uint32
  1356. }
  1357. type TpacketStatsV3 struct {
  1358. Packets uint32
  1359. Drops uint32
  1360. Freeze_q_cnt uint32
  1361. }
  1362. type TpacketAuxdata struct {
  1363. Status uint32
  1364. Len uint32
  1365. Snaplen uint32
  1366. Mac uint16
  1367. Net uint16
  1368. Vlan_tci uint16
  1369. Vlan_tpid uint16
  1370. }
  1371. const (
  1372. TPACKET_V1 = 0x0
  1373. TPACKET_V2 = 0x1
  1374. TPACKET_V3 = 0x2
  1375. )
  1376. const (
  1377. SizeofTpacketHdr = 0x18
  1378. SizeofTpacket2Hdr = 0x20
  1379. SizeofTpacket3Hdr = 0x30
  1380. SizeofTpacketStats = 0x8
  1381. SizeofTpacketStatsV3 = 0xc
  1382. )
  1383. const (
  1384. NF_INET_PRE_ROUTING = 0x0
  1385. NF_INET_LOCAL_IN = 0x1
  1386. NF_INET_FORWARD = 0x2
  1387. NF_INET_LOCAL_OUT = 0x3
  1388. NF_INET_POST_ROUTING = 0x4
  1389. NF_INET_NUMHOOKS = 0x5
  1390. )
  1391. const (
  1392. NF_NETDEV_INGRESS = 0x0
  1393. NF_NETDEV_NUMHOOKS = 0x1
  1394. )
  1395. const (
  1396. NFPROTO_UNSPEC = 0x0
  1397. NFPROTO_INET = 0x1
  1398. NFPROTO_IPV4 = 0x2
  1399. NFPROTO_ARP = 0x3
  1400. NFPROTO_NETDEV = 0x5
  1401. NFPROTO_BRIDGE = 0x7
  1402. NFPROTO_IPV6 = 0xa
  1403. NFPROTO_DECNET = 0xc
  1404. NFPROTO_NUMPROTO = 0xd
  1405. )
  1406. type Nfgenmsg struct {
  1407. Nfgen_family uint8
  1408. Version uint8
  1409. Res_id uint16
  1410. }
  1411. const (
  1412. NFNL_BATCH_UNSPEC = 0x0
  1413. NFNL_BATCH_GENID = 0x1
  1414. )
  1415. const (
  1416. NFT_REG_VERDICT = 0x0
  1417. NFT_REG_1 = 0x1
  1418. NFT_REG_2 = 0x2
  1419. NFT_REG_3 = 0x3
  1420. NFT_REG_4 = 0x4
  1421. NFT_REG32_00 = 0x8
  1422. NFT_REG32_01 = 0x9
  1423. NFT_REG32_02 = 0xa
  1424. NFT_REG32_03 = 0xb
  1425. NFT_REG32_04 = 0xc
  1426. NFT_REG32_05 = 0xd
  1427. NFT_REG32_06 = 0xe
  1428. NFT_REG32_07 = 0xf
  1429. NFT_REG32_08 = 0x10
  1430. NFT_REG32_09 = 0x11
  1431. NFT_REG32_10 = 0x12
  1432. NFT_REG32_11 = 0x13
  1433. NFT_REG32_12 = 0x14
  1434. NFT_REG32_13 = 0x15
  1435. NFT_REG32_14 = 0x16
  1436. NFT_REG32_15 = 0x17
  1437. NFT_CONTINUE = -0x1
  1438. NFT_BREAK = -0x2
  1439. NFT_JUMP = -0x3
  1440. NFT_GOTO = -0x4
  1441. NFT_RETURN = -0x5
  1442. NFT_MSG_NEWTABLE = 0x0
  1443. NFT_MSG_GETTABLE = 0x1
  1444. NFT_MSG_DELTABLE = 0x2
  1445. NFT_MSG_NEWCHAIN = 0x3
  1446. NFT_MSG_GETCHAIN = 0x4
  1447. NFT_MSG_DELCHAIN = 0x5
  1448. NFT_MSG_NEWRULE = 0x6
  1449. NFT_MSG_GETRULE = 0x7
  1450. NFT_MSG_DELRULE = 0x8
  1451. NFT_MSG_NEWSET = 0x9
  1452. NFT_MSG_GETSET = 0xa
  1453. NFT_MSG_DELSET = 0xb
  1454. NFT_MSG_NEWSETELEM = 0xc
  1455. NFT_MSG_GETSETELEM = 0xd
  1456. NFT_MSG_DELSETELEM = 0xe
  1457. NFT_MSG_NEWGEN = 0xf
  1458. NFT_MSG_GETGEN = 0x10
  1459. NFT_MSG_TRACE = 0x11
  1460. NFT_MSG_NEWOBJ = 0x12
  1461. NFT_MSG_GETOBJ = 0x13
  1462. NFT_MSG_DELOBJ = 0x14
  1463. NFT_MSG_GETOBJ_RESET = 0x15
  1464. NFT_MSG_MAX = 0x19
  1465. NFTA_LIST_UNPEC = 0x0
  1466. NFTA_LIST_ELEM = 0x1
  1467. NFTA_HOOK_UNSPEC = 0x0
  1468. NFTA_HOOK_HOOKNUM = 0x1
  1469. NFTA_HOOK_PRIORITY = 0x2
  1470. NFTA_HOOK_DEV = 0x3
  1471. NFT_TABLE_F_DORMANT = 0x1
  1472. NFTA_TABLE_UNSPEC = 0x0
  1473. NFTA_TABLE_NAME = 0x1
  1474. NFTA_TABLE_FLAGS = 0x2
  1475. NFTA_TABLE_USE = 0x3
  1476. NFTA_CHAIN_UNSPEC = 0x0
  1477. NFTA_CHAIN_TABLE = 0x1
  1478. NFTA_CHAIN_HANDLE = 0x2
  1479. NFTA_CHAIN_NAME = 0x3
  1480. NFTA_CHAIN_HOOK = 0x4
  1481. NFTA_CHAIN_POLICY = 0x5
  1482. NFTA_CHAIN_USE = 0x6
  1483. NFTA_CHAIN_TYPE = 0x7
  1484. NFTA_CHAIN_COUNTERS = 0x8
  1485. NFTA_CHAIN_PAD = 0x9
  1486. NFTA_RULE_UNSPEC = 0x0
  1487. NFTA_RULE_TABLE = 0x1
  1488. NFTA_RULE_CHAIN = 0x2
  1489. NFTA_RULE_HANDLE = 0x3
  1490. NFTA_RULE_EXPRESSIONS = 0x4
  1491. NFTA_RULE_COMPAT = 0x5
  1492. NFTA_RULE_POSITION = 0x6
  1493. NFTA_RULE_USERDATA = 0x7
  1494. NFTA_RULE_PAD = 0x8
  1495. NFTA_RULE_ID = 0x9
  1496. NFT_RULE_COMPAT_F_INV = 0x2
  1497. NFT_RULE_COMPAT_F_MASK = 0x2
  1498. NFTA_RULE_COMPAT_UNSPEC = 0x0
  1499. NFTA_RULE_COMPAT_PROTO = 0x1
  1500. NFTA_RULE_COMPAT_FLAGS = 0x2
  1501. NFT_SET_ANONYMOUS = 0x1
  1502. NFT_SET_CONSTANT = 0x2
  1503. NFT_SET_INTERVAL = 0x4
  1504. NFT_SET_MAP = 0x8
  1505. NFT_SET_TIMEOUT = 0x10
  1506. NFT_SET_EVAL = 0x20
  1507. NFT_SET_OBJECT = 0x40
  1508. NFT_SET_POL_PERFORMANCE = 0x0
  1509. NFT_SET_POL_MEMORY = 0x1
  1510. NFTA_SET_DESC_UNSPEC = 0x0
  1511. NFTA_SET_DESC_SIZE = 0x1
  1512. NFTA_SET_UNSPEC = 0x0
  1513. NFTA_SET_TABLE = 0x1
  1514. NFTA_SET_NAME = 0x2
  1515. NFTA_SET_FLAGS = 0x3
  1516. NFTA_SET_KEY_TYPE = 0x4
  1517. NFTA_SET_KEY_LEN = 0x5
  1518. NFTA_SET_DATA_TYPE = 0x6
  1519. NFTA_SET_DATA_LEN = 0x7
  1520. NFTA_SET_POLICY = 0x8
  1521. NFTA_SET_DESC = 0x9
  1522. NFTA_SET_ID = 0xa
  1523. NFTA_SET_TIMEOUT = 0xb
  1524. NFTA_SET_GC_INTERVAL = 0xc
  1525. NFTA_SET_USERDATA = 0xd
  1526. NFTA_SET_PAD = 0xe
  1527. NFTA_SET_OBJ_TYPE = 0xf
  1528. NFT_SET_ELEM_INTERVAL_END = 0x1
  1529. NFTA_SET_ELEM_UNSPEC = 0x0
  1530. NFTA_SET_ELEM_KEY = 0x1
  1531. NFTA_SET_ELEM_DATA = 0x2
  1532. NFTA_SET_ELEM_FLAGS = 0x3
  1533. NFTA_SET_ELEM_TIMEOUT = 0x4
  1534. NFTA_SET_ELEM_EXPIRATION = 0x5
  1535. NFTA_SET_ELEM_USERDATA = 0x6
  1536. NFTA_SET_ELEM_EXPR = 0x7
  1537. NFTA_SET_ELEM_PAD = 0x8
  1538. NFTA_SET_ELEM_OBJREF = 0x9
  1539. NFTA_SET_ELEM_LIST_UNSPEC = 0x0
  1540. NFTA_SET_ELEM_LIST_TABLE = 0x1
  1541. NFTA_SET_ELEM_LIST_SET = 0x2
  1542. NFTA_SET_ELEM_LIST_ELEMENTS = 0x3
  1543. NFTA_SET_ELEM_LIST_SET_ID = 0x4
  1544. NFT_DATA_VALUE = 0x0
  1545. NFT_DATA_VERDICT = 0xffffff00
  1546. NFTA_DATA_UNSPEC = 0x0
  1547. NFTA_DATA_VALUE = 0x1
  1548. NFTA_DATA_VERDICT = 0x2
  1549. NFTA_VERDICT_UNSPEC = 0x0
  1550. NFTA_VERDICT_CODE = 0x1
  1551. NFTA_VERDICT_CHAIN = 0x2
  1552. NFTA_EXPR_UNSPEC = 0x0
  1553. NFTA_EXPR_NAME = 0x1
  1554. NFTA_EXPR_DATA = 0x2
  1555. NFTA_IMMEDIATE_UNSPEC = 0x0
  1556. NFTA_IMMEDIATE_DREG = 0x1
  1557. NFTA_IMMEDIATE_DATA = 0x2
  1558. NFTA_BITWISE_UNSPEC = 0x0
  1559. NFTA_BITWISE_SREG = 0x1
  1560. NFTA_BITWISE_DREG = 0x2
  1561. NFTA_BITWISE_LEN = 0x3
  1562. NFTA_BITWISE_MASK = 0x4
  1563. NFTA_BITWISE_XOR = 0x5
  1564. NFT_BYTEORDER_NTOH = 0x0
  1565. NFT_BYTEORDER_HTON = 0x1
  1566. NFTA_BYTEORDER_UNSPEC = 0x0
  1567. NFTA_BYTEORDER_SREG = 0x1
  1568. NFTA_BYTEORDER_DREG = 0x2
  1569. NFTA_BYTEORDER_OP = 0x3
  1570. NFTA_BYTEORDER_LEN = 0x4
  1571. NFTA_BYTEORDER_SIZE = 0x5
  1572. NFT_CMP_EQ = 0x0
  1573. NFT_CMP_NEQ = 0x1
  1574. NFT_CMP_LT = 0x2
  1575. NFT_CMP_LTE = 0x3
  1576. NFT_CMP_GT = 0x4
  1577. NFT_CMP_GTE = 0x5
  1578. NFTA_CMP_UNSPEC = 0x0
  1579. NFTA_CMP_SREG = 0x1
  1580. NFTA_CMP_OP = 0x2
  1581. NFTA_CMP_DATA = 0x3
  1582. NFT_RANGE_EQ = 0x0
  1583. NFT_RANGE_NEQ = 0x1
  1584. NFTA_RANGE_UNSPEC = 0x0
  1585. NFTA_RANGE_SREG = 0x1
  1586. NFTA_RANGE_OP = 0x2
  1587. NFTA_RANGE_FROM_DATA = 0x3
  1588. NFTA_RANGE_TO_DATA = 0x4
  1589. NFT_LOOKUP_F_INV = 0x1
  1590. NFTA_LOOKUP_UNSPEC = 0x0
  1591. NFTA_LOOKUP_SET = 0x1
  1592. NFTA_LOOKUP_SREG = 0x2
  1593. NFTA_LOOKUP_DREG = 0x3
  1594. NFTA_LOOKUP_SET_ID = 0x4
  1595. NFTA_LOOKUP_FLAGS = 0x5
  1596. NFT_DYNSET_OP_ADD = 0x0
  1597. NFT_DYNSET_OP_UPDATE = 0x1
  1598. NFT_DYNSET_F_INV = 0x1
  1599. NFTA_DYNSET_UNSPEC = 0x0
  1600. NFTA_DYNSET_SET_NAME = 0x1
  1601. NFTA_DYNSET_SET_ID = 0x2
  1602. NFTA_DYNSET_OP = 0x3
  1603. NFTA_DYNSET_SREG_KEY = 0x4
  1604. NFTA_DYNSET_SREG_DATA = 0x5
  1605. NFTA_DYNSET_TIMEOUT = 0x6
  1606. NFTA_DYNSET_EXPR = 0x7
  1607. NFTA_DYNSET_PAD = 0x8
  1608. NFTA_DYNSET_FLAGS = 0x9
  1609. NFT_PAYLOAD_LL_HEADER = 0x0
  1610. NFT_PAYLOAD_NETWORK_HEADER = 0x1
  1611. NFT_PAYLOAD_TRANSPORT_HEADER = 0x2
  1612. NFT_PAYLOAD_CSUM_NONE = 0x0
  1613. NFT_PAYLOAD_CSUM_INET = 0x1
  1614. NFT_PAYLOAD_L4CSUM_PSEUDOHDR = 0x1
  1615. NFTA_PAYLOAD_UNSPEC = 0x0
  1616. NFTA_PAYLOAD_DREG = 0x1
  1617. NFTA_PAYLOAD_BASE = 0x2
  1618. NFTA_PAYLOAD_OFFSET = 0x3
  1619. NFTA_PAYLOAD_LEN = 0x4
  1620. NFTA_PAYLOAD_SREG = 0x5
  1621. NFTA_PAYLOAD_CSUM_TYPE = 0x6
  1622. NFTA_PAYLOAD_CSUM_OFFSET = 0x7
  1623. NFTA_PAYLOAD_CSUM_FLAGS = 0x8
  1624. NFT_EXTHDR_F_PRESENT = 0x1
  1625. NFT_EXTHDR_OP_IPV6 = 0x0
  1626. NFT_EXTHDR_OP_TCPOPT = 0x1
  1627. NFTA_EXTHDR_UNSPEC = 0x0
  1628. NFTA_EXTHDR_DREG = 0x1
  1629. NFTA_EXTHDR_TYPE = 0x2
  1630. NFTA_EXTHDR_OFFSET = 0x3
  1631. NFTA_EXTHDR_LEN = 0x4
  1632. NFTA_EXTHDR_FLAGS = 0x5
  1633. NFTA_EXTHDR_OP = 0x6
  1634. NFTA_EXTHDR_SREG = 0x7
  1635. NFT_META_LEN = 0x0
  1636. NFT_META_PROTOCOL = 0x1
  1637. NFT_META_PRIORITY = 0x2
  1638. NFT_META_MARK = 0x3
  1639. NFT_META_IIF = 0x4
  1640. NFT_META_OIF = 0x5
  1641. NFT_META_IIFNAME = 0x6
  1642. NFT_META_OIFNAME = 0x7
  1643. NFT_META_IIFTYPE = 0x8
  1644. NFT_META_OIFTYPE = 0x9
  1645. NFT_META_SKUID = 0xa
  1646. NFT_META_SKGID = 0xb
  1647. NFT_META_NFTRACE = 0xc
  1648. NFT_META_RTCLASSID = 0xd
  1649. NFT_META_SECMARK = 0xe
  1650. NFT_META_NFPROTO = 0xf
  1651. NFT_META_L4PROTO = 0x10
  1652. NFT_META_BRI_IIFNAME = 0x11
  1653. NFT_META_BRI_OIFNAME = 0x12
  1654. NFT_META_PKTTYPE = 0x13
  1655. NFT_META_CPU = 0x14
  1656. NFT_META_IIFGROUP = 0x15
  1657. NFT_META_OIFGROUP = 0x16
  1658. NFT_META_CGROUP = 0x17
  1659. NFT_META_PRANDOM = 0x18
  1660. NFT_RT_CLASSID = 0x0
  1661. NFT_RT_NEXTHOP4 = 0x1
  1662. NFT_RT_NEXTHOP6 = 0x2
  1663. NFT_RT_TCPMSS = 0x3
  1664. NFT_HASH_JENKINS = 0x0
  1665. NFT_HASH_SYM = 0x1
  1666. NFTA_HASH_UNSPEC = 0x0
  1667. NFTA_HASH_SREG = 0x1
  1668. NFTA_HASH_DREG = 0x2
  1669. NFTA_HASH_LEN = 0x3
  1670. NFTA_HASH_MODULUS = 0x4
  1671. NFTA_HASH_SEED = 0x5
  1672. NFTA_HASH_OFFSET = 0x6
  1673. NFTA_HASH_TYPE = 0x7
  1674. NFTA_META_UNSPEC = 0x0
  1675. NFTA_META_DREG = 0x1
  1676. NFTA_META_KEY = 0x2
  1677. NFTA_META_SREG = 0x3
  1678. NFTA_RT_UNSPEC = 0x0
  1679. NFTA_RT_DREG = 0x1
  1680. NFTA_RT_KEY = 0x2
  1681. NFT_CT_STATE = 0x0
  1682. NFT_CT_DIRECTION = 0x1
  1683. NFT_CT_STATUS = 0x2
  1684. NFT_CT_MARK = 0x3
  1685. NFT_CT_SECMARK = 0x4
  1686. NFT_CT_EXPIRATION = 0x5
  1687. NFT_CT_HELPER = 0x6
  1688. NFT_CT_L3PROTOCOL = 0x7
  1689. NFT_CT_SRC = 0x8
  1690. NFT_CT_DST = 0x9
  1691. NFT_CT_PROTOCOL = 0xa
  1692. NFT_CT_PROTO_SRC = 0xb
  1693. NFT_CT_PROTO_DST = 0xc
  1694. NFT_CT_LABELS = 0xd
  1695. NFT_CT_PKTS = 0xe
  1696. NFT_CT_BYTES = 0xf
  1697. NFT_CT_AVGPKT = 0x10
  1698. NFT_CT_ZONE = 0x11
  1699. NFT_CT_EVENTMASK = 0x12
  1700. NFTA_CT_UNSPEC = 0x0
  1701. NFTA_CT_DREG = 0x1
  1702. NFTA_CT_KEY = 0x2
  1703. NFTA_CT_DIRECTION = 0x3
  1704. NFTA_CT_SREG = 0x4
  1705. NFT_LIMIT_PKTS = 0x0
  1706. NFT_LIMIT_PKT_BYTES = 0x1
  1707. NFT_LIMIT_F_INV = 0x1
  1708. NFTA_LIMIT_UNSPEC = 0x0
  1709. NFTA_LIMIT_RATE = 0x1
  1710. NFTA_LIMIT_UNIT = 0x2
  1711. NFTA_LIMIT_BURST = 0x3
  1712. NFTA_LIMIT_TYPE = 0x4
  1713. NFTA_LIMIT_FLAGS = 0x5
  1714. NFTA_LIMIT_PAD = 0x6
  1715. NFTA_COUNTER_UNSPEC = 0x0
  1716. NFTA_COUNTER_BYTES = 0x1
  1717. NFTA_COUNTER_PACKETS = 0x2
  1718. NFTA_COUNTER_PAD = 0x3
  1719. NFTA_LOG_UNSPEC = 0x0
  1720. NFTA_LOG_GROUP = 0x1
  1721. NFTA_LOG_PREFIX = 0x2
  1722. NFTA_LOG_SNAPLEN = 0x3
  1723. NFTA_LOG_QTHRESHOLD = 0x4
  1724. NFTA_LOG_LEVEL = 0x5
  1725. NFTA_LOG_FLAGS = 0x6
  1726. NFTA_QUEUE_UNSPEC = 0x0
  1727. NFTA_QUEUE_NUM = 0x1
  1728. NFTA_QUEUE_TOTAL = 0x2
  1729. NFTA_QUEUE_FLAGS = 0x3
  1730. NFTA_QUEUE_SREG_QNUM = 0x4
  1731. NFT_QUOTA_F_INV = 0x1
  1732. NFT_QUOTA_F_DEPLETED = 0x2
  1733. NFTA_QUOTA_UNSPEC = 0x0
  1734. NFTA_QUOTA_BYTES = 0x1
  1735. NFTA_QUOTA_FLAGS = 0x2
  1736. NFTA_QUOTA_PAD = 0x3
  1737. NFTA_QUOTA_CONSUMED = 0x4
  1738. NFT_REJECT_ICMP_UNREACH = 0x0
  1739. NFT_REJECT_TCP_RST = 0x1
  1740. NFT_REJECT_ICMPX_UNREACH = 0x2
  1741. NFT_REJECT_ICMPX_NO_ROUTE = 0x0
  1742. NFT_REJECT_ICMPX_PORT_UNREACH = 0x1
  1743. NFT_REJECT_ICMPX_HOST_UNREACH = 0x2
  1744. NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
  1745. NFTA_REJECT_UNSPEC = 0x0
  1746. NFTA_REJECT_TYPE = 0x1
  1747. NFTA_REJECT_ICMP_CODE = 0x2
  1748. NFT_NAT_SNAT = 0x0
  1749. NFT_NAT_DNAT = 0x1
  1750. NFTA_NAT_UNSPEC = 0x0
  1751. NFTA_NAT_TYPE = 0x1
  1752. NFTA_NAT_FAMILY = 0x2
  1753. NFTA_NAT_REG_ADDR_MIN = 0x3
  1754. NFTA_NAT_REG_ADDR_MAX = 0x4
  1755. NFTA_NAT_REG_PROTO_MIN = 0x5
  1756. NFTA_NAT_REG_PROTO_MAX = 0x6
  1757. NFTA_NAT_FLAGS = 0x7
  1758. NFTA_MASQ_UNSPEC = 0x0
  1759. NFTA_MASQ_FLAGS = 0x1
  1760. NFTA_MASQ_REG_PROTO_MIN = 0x2
  1761. NFTA_MASQ_REG_PROTO_MAX = 0x3
  1762. NFTA_REDIR_UNSPEC = 0x0
  1763. NFTA_REDIR_REG_PROTO_MIN = 0x1
  1764. NFTA_REDIR_REG_PROTO_MAX = 0x2
  1765. NFTA_REDIR_FLAGS = 0x3
  1766. NFTA_DUP_UNSPEC = 0x0
  1767. NFTA_DUP_SREG_ADDR = 0x1
  1768. NFTA_DUP_SREG_DEV = 0x2
  1769. NFTA_FWD_UNSPEC = 0x0
  1770. NFTA_FWD_SREG_DEV = 0x1
  1771. NFTA_OBJREF_UNSPEC = 0x0
  1772. NFTA_OBJREF_IMM_TYPE = 0x1
  1773. NFTA_OBJREF_IMM_NAME = 0x2
  1774. NFTA_OBJREF_SET_SREG = 0x3
  1775. NFTA_OBJREF_SET_NAME = 0x4
  1776. NFTA_OBJREF_SET_ID = 0x5
  1777. NFTA_GEN_UNSPEC = 0x0
  1778. NFTA_GEN_ID = 0x1
  1779. NFTA_GEN_PROC_PID = 0x2
  1780. NFTA_GEN_PROC_NAME = 0x3
  1781. NFTA_FIB_UNSPEC = 0x0
  1782. NFTA_FIB_DREG = 0x1
  1783. NFTA_FIB_RESULT = 0x2
  1784. NFTA_FIB_FLAGS = 0x3
  1785. NFT_FIB_RESULT_UNSPEC = 0x0
  1786. NFT_FIB_RESULT_OIF = 0x1
  1787. NFT_FIB_RESULT_OIFNAME = 0x2
  1788. NFT_FIB_RESULT_ADDRTYPE = 0x3
  1789. NFTA_FIB_F_SADDR = 0x1
  1790. NFTA_FIB_F_DADDR = 0x2
  1791. NFTA_FIB_F_MARK = 0x4
  1792. NFTA_FIB_F_IIF = 0x8
  1793. NFTA_FIB_F_OIF = 0x10
  1794. NFTA_FIB_F_PRESENT = 0x20
  1795. NFTA_CT_HELPER_UNSPEC = 0x0
  1796. NFTA_CT_HELPER_NAME = 0x1
  1797. NFTA_CT_HELPER_L3PROTO = 0x2
  1798. NFTA_CT_HELPER_L4PROTO = 0x3
  1799. NFTA_OBJ_UNSPEC = 0x0
  1800. NFTA_OBJ_TABLE = 0x1
  1801. NFTA_OBJ_NAME = 0x2
  1802. NFTA_OBJ_TYPE = 0x3
  1803. NFTA_OBJ_DATA = 0x4
  1804. NFTA_OBJ_USE = 0x5
  1805. NFTA_TRACE_UNSPEC = 0x0
  1806. NFTA_TRACE_TABLE = 0x1
  1807. NFTA_TRACE_CHAIN = 0x2
  1808. NFTA_TRACE_RULE_HANDLE = 0x3
  1809. NFTA_TRACE_TYPE = 0x4
  1810. NFTA_TRACE_VERDICT = 0x5
  1811. NFTA_TRACE_ID = 0x6
  1812. NFTA_TRACE_LL_HEADER = 0x7
  1813. NFTA_TRACE_NETWORK_HEADER = 0x8
  1814. NFTA_TRACE_TRANSPORT_HEADER = 0x9
  1815. NFTA_TRACE_IIF = 0xa
  1816. NFTA_TRACE_IIFTYPE = 0xb
  1817. NFTA_TRACE_OIF = 0xc
  1818. NFTA_TRACE_OIFTYPE = 0xd
  1819. NFTA_TRACE_MARK = 0xe
  1820. NFTA_TRACE_NFPROTO = 0xf
  1821. NFTA_TRACE_POLICY = 0x10
  1822. NFTA_TRACE_PAD = 0x11
  1823. NFT_TRACETYPE_UNSPEC = 0x0
  1824. NFT_TRACETYPE_POLICY = 0x1
  1825. NFT_TRACETYPE_RETURN = 0x2
  1826. NFT_TRACETYPE_RULE = 0x3
  1827. NFTA_NG_UNSPEC = 0x0
  1828. NFTA_NG_DREG = 0x1
  1829. NFTA_NG_MODULUS = 0x2
  1830. NFTA_NG_TYPE = 0x3
  1831. NFTA_NG_OFFSET = 0x4
  1832. NFT_NG_INCREMENTAL = 0x0
  1833. NFT_NG_RANDOM = 0x1
  1834. )
  1835. type RTCTime struct {
  1836. Sec int32
  1837. Min int32
  1838. Hour int32
  1839. Mday int32
  1840. Mon int32
  1841. Year int32
  1842. Wday int32
  1843. Yday int32
  1844. Isdst int32
  1845. }
  1846. type RTCWkAlrm struct {
  1847. Enabled uint8
  1848. Pending uint8
  1849. Time RTCTime
  1850. }
  1851. type RTCPLLInfo struct {
  1852. Ctrl int32
  1853. Value int32
  1854. Max int32
  1855. Min int32
  1856. Posmult int32
  1857. Negmult int32
  1858. Clock int32
  1859. }
  1860. type BlkpgIoctlArg struct {
  1861. Op int32
  1862. Flags int32
  1863. Datalen int32
  1864. Data *byte
  1865. }
  1866. type BlkpgPartition struct {
  1867. Start int64
  1868. Length int64
  1869. Pno int32
  1870. Devname [64]uint8
  1871. Volname [64]uint8
  1872. _ [4]byte
  1873. }
  1874. const (
  1875. BLKPG = 0x1269
  1876. BLKPG_ADD_PARTITION = 0x1
  1877. BLKPG_DEL_PARTITION = 0x2
  1878. BLKPG_RESIZE_PARTITION = 0x3
  1879. )
  1880. const (
  1881. NETNSA_NONE = 0x0
  1882. NETNSA_NSID = 0x1
  1883. NETNSA_PID = 0x2
  1884. NETNSA_FD = 0x3
  1885. )
  1886. type XDPRingOffset struct {
  1887. Producer uint64
  1888. Consumer uint64
  1889. Desc uint64
  1890. }
  1891. type XDPMmapOffsets struct {
  1892. Rx XDPRingOffset
  1893. Tx XDPRingOffset
  1894. Fr XDPRingOffset
  1895. Cr XDPRingOffset
  1896. }
  1897. type XDPUmemReg struct {
  1898. Addr uint64
  1899. Len uint64
  1900. Size uint32
  1901. Headroom uint32
  1902. }
  1903. type XDPStatistics struct {
  1904. Rx_dropped uint64
  1905. Rx_invalid_descs uint64
  1906. Tx_invalid_descs uint64
  1907. }
  1908. type XDPDesc struct {
  1909. Addr uint64
  1910. Len uint32
  1911. Options uint32
  1912. }
  1913. const (
  1914. NCSI_CMD_UNSPEC = 0x0
  1915. NCSI_CMD_PKG_INFO = 0x1
  1916. NCSI_CMD_SET_INTERFACE = 0x2
  1917. NCSI_CMD_CLEAR_INTERFACE = 0x3
  1918. NCSI_ATTR_UNSPEC = 0x0
  1919. NCSI_ATTR_IFINDEX = 0x1
  1920. NCSI_ATTR_PACKAGE_LIST = 0x2
  1921. NCSI_ATTR_PACKAGE_ID = 0x3
  1922. NCSI_ATTR_CHANNEL_ID = 0x4
  1923. NCSI_PKG_ATTR_UNSPEC = 0x0
  1924. NCSI_PKG_ATTR = 0x1
  1925. NCSI_PKG_ATTR_ID = 0x2
  1926. NCSI_PKG_ATTR_FORCED = 0x3
  1927. NCSI_PKG_ATTR_CHANNEL_LIST = 0x4
  1928. NCSI_CHANNEL_ATTR_UNSPEC = 0x0
  1929. NCSI_CHANNEL_ATTR = 0x1
  1930. NCSI_CHANNEL_ATTR_ID = 0x2
  1931. NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
  1932. NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
  1933. NCSI_CHANNEL_ATTR_VERSION_STR = 0x5
  1934. NCSI_CHANNEL_ATTR_LINK_STATE = 0x6
  1935. NCSI_CHANNEL_ATTR_ACTIVE = 0x7
  1936. NCSI_CHANNEL_ATTR_FORCED = 0x8
  1937. NCSI_CHANNEL_ATTR_VLAN_LIST = 0x9
  1938. NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
  1939. )
  1940. type ScmTimestamping struct {
  1941. Ts [3]Timespec
  1942. }
  1943. const (
  1944. SOF_TIMESTAMPING_TX_HARDWARE = 0x1
  1945. SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
  1946. SOF_TIMESTAMPING_RX_HARDWARE = 0x4
  1947. SOF_TIMESTAMPING_RX_SOFTWARE = 0x8
  1948. SOF_TIMESTAMPING_SOFTWARE = 0x10
  1949. SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
  1950. SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
  1951. SOF_TIMESTAMPING_OPT_ID = 0x80
  1952. SOF_TIMESTAMPING_TX_SCHED = 0x100
  1953. SOF_TIMESTAMPING_TX_ACK = 0x200
  1954. SOF_TIMESTAMPING_OPT_CMSG = 0x400
  1955. SOF_TIMESTAMPING_OPT_TSONLY = 0x800
  1956. SOF_TIMESTAMPING_OPT_STATS = 0x1000
  1957. SOF_TIMESTAMPING_OPT_PKTINFO = 0x2000
  1958. SOF_TIMESTAMPING_OPT_TX_SWHW = 0x4000
  1959. SOF_TIMESTAMPING_LAST = 0x4000
  1960. SOF_TIMESTAMPING_MASK = 0x7fff
  1961. SCM_TSTAMP_SND = 0x0
  1962. SCM_TSTAMP_SCHED = 0x1
  1963. SCM_TSTAMP_ACK = 0x2
  1964. )
  1965. type SockExtendedErr struct {
  1966. Errno uint32
  1967. Origin uint8
  1968. Type uint8
  1969. Code uint8
  1970. Pad uint8
  1971. Info uint32
  1972. Data uint32
  1973. }
  1974. type FanotifyEventMetadata struct {
  1975. Event_len uint32
  1976. Vers uint8
  1977. Reserved uint8
  1978. Metadata_len uint16
  1979. Mask uint64
  1980. Fd int32
  1981. Pid int32
  1982. }
  1983. type FanotifyResponse struct {
  1984. Fd int32
  1985. Response uint32
  1986. }
  1987. const (
  1988. CRYPTO_MSG_BASE = 0x10
  1989. CRYPTO_MSG_NEWALG = 0x10
  1990. CRYPTO_MSG_DELALG = 0x11
  1991. CRYPTO_MSG_UPDATEALG = 0x12
  1992. CRYPTO_MSG_GETALG = 0x13
  1993. CRYPTO_MSG_DELRNG = 0x14
  1994. CRYPTO_MSG_GETSTAT = 0x15
  1995. )
  1996. const (
  1997. CRYPTOCFGA_UNSPEC = 0x0
  1998. CRYPTOCFGA_PRIORITY_VAL = 0x1
  1999. CRYPTOCFGA_REPORT_LARVAL = 0x2
  2000. CRYPTOCFGA_REPORT_HASH = 0x3
  2001. CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
  2002. CRYPTOCFGA_REPORT_AEAD = 0x5
  2003. CRYPTOCFGA_REPORT_COMPRESS = 0x6
  2004. CRYPTOCFGA_REPORT_RNG = 0x7
  2005. CRYPTOCFGA_REPORT_CIPHER = 0x8
  2006. CRYPTOCFGA_REPORT_AKCIPHER = 0x9
  2007. CRYPTOCFGA_REPORT_KPP = 0xa
  2008. CRYPTOCFGA_REPORT_ACOMP = 0xb
  2009. CRYPTOCFGA_STAT_LARVAL = 0xc
  2010. CRYPTOCFGA_STAT_HASH = 0xd
  2011. CRYPTOCFGA_STAT_BLKCIPHER = 0xe
  2012. CRYPTOCFGA_STAT_AEAD = 0xf
  2013. CRYPTOCFGA_STAT_COMPRESS = 0x10
  2014. CRYPTOCFGA_STAT_RNG = 0x11
  2015. CRYPTOCFGA_STAT_CIPHER = 0x12
  2016. CRYPTOCFGA_STAT_AKCIPHER = 0x13
  2017. CRYPTOCFGA_STAT_KPP = 0x14
  2018. CRYPTOCFGA_STAT_ACOMP = 0x15
  2019. )
  2020. type CryptoUserAlg struct {
  2021. Name [64]uint8
  2022. Driver_name [64]uint8
  2023. Module_name [64]uint8
  2024. Type uint32
  2025. Mask uint32
  2026. Refcnt uint32
  2027. Flags uint32
  2028. }
  2029. type CryptoStatAEAD struct {
  2030. Type [64]uint8
  2031. Encrypt_cnt uint64
  2032. Encrypt_tlen uint64
  2033. Decrypt_cnt uint64
  2034. Decrypt_tlen uint64
  2035. Err_cnt uint64
  2036. }
  2037. type CryptoStatAKCipher struct {
  2038. Type [64]uint8
  2039. Encrypt_cnt uint64
  2040. Encrypt_tlen uint64
  2041. Decrypt_cnt uint64
  2042. Decrypt_tlen uint64
  2043. Verify_cnt uint64
  2044. Sign_cnt uint64
  2045. Err_cnt uint64
  2046. }
  2047. type CryptoStatCipher struct {
  2048. Type [64]uint8
  2049. Encrypt_cnt uint64
  2050. Encrypt_tlen uint64
  2051. Decrypt_cnt uint64
  2052. Decrypt_tlen uint64
  2053. Err_cnt uint64
  2054. }
  2055. type CryptoStatCompress struct {
  2056. Type [64]uint8
  2057. Compress_cnt uint64
  2058. Compress_tlen uint64
  2059. Decompress_cnt uint64
  2060. Decompress_tlen uint64
  2061. Err_cnt uint64
  2062. }
  2063. type CryptoStatHash struct {
  2064. Type [64]uint8
  2065. Hash_cnt uint64
  2066. Hash_tlen uint64
  2067. Err_cnt uint64
  2068. }
  2069. type CryptoStatKPP struct {
  2070. Type [64]uint8
  2071. Setsecret_cnt uint64
  2072. Generate_public_key_cnt uint64
  2073. Compute_shared_secret_cnt uint64
  2074. Err_cnt uint64
  2075. }
  2076. type CryptoStatRNG struct {
  2077. Type [64]uint8
  2078. Generate_cnt uint64
  2079. Generate_tlen uint64
  2080. Seed_cnt uint64
  2081. Err_cnt uint64
  2082. }
  2083. type CryptoStatLarval struct {
  2084. Type [64]uint8
  2085. }
  2086. type CryptoReportLarval struct {
  2087. Type [64]uint8
  2088. }
  2089. type CryptoReportHash struct {
  2090. Type [64]uint8
  2091. Blocksize uint32
  2092. Digestsize uint32
  2093. }
  2094. type CryptoReportCipher struct {
  2095. Type [64]uint8
  2096. Blocksize uint32
  2097. Min_keysize uint32
  2098. Max_keysize uint32
  2099. }
  2100. type CryptoReportBlkCipher struct {
  2101. Type [64]uint8
  2102. Geniv [64]uint8
  2103. Blocksize uint32
  2104. Min_keysize uint32
  2105. Max_keysize uint32
  2106. Ivsize uint32
  2107. }
  2108. type CryptoReportAEAD struct {
  2109. Type [64]uint8
  2110. Geniv [64]uint8
  2111. Blocksize uint32
  2112. Maxauthsize uint32
  2113. Ivsize uint32
  2114. }
  2115. type CryptoReportComp struct {
  2116. Type [64]uint8
  2117. }
  2118. type CryptoReportRNG struct {
  2119. Type [64]uint8
  2120. Seedsize uint32
  2121. }
  2122. type CryptoReportAKCipher struct {
  2123. Type [64]uint8
  2124. }
  2125. type CryptoReportKPP struct {
  2126. Type [64]uint8
  2127. }
  2128. type CryptoReportAcomp struct {
  2129. Type [64]uint8
  2130. }
  2131. const (
  2132. BPF_REG_0 = 0x0
  2133. BPF_REG_1 = 0x1
  2134. BPF_REG_2 = 0x2
  2135. BPF_REG_3 = 0x3
  2136. BPF_REG_4 = 0x4
  2137. BPF_REG_5 = 0x5
  2138. BPF_REG_6 = 0x6
  2139. BPF_REG_7 = 0x7
  2140. BPF_REG_8 = 0x8
  2141. BPF_REG_9 = 0x9
  2142. BPF_REG_10 = 0xa
  2143. BPF_MAP_CREATE = 0x0
  2144. BPF_MAP_LOOKUP_ELEM = 0x1
  2145. BPF_MAP_UPDATE_ELEM = 0x2
  2146. BPF_MAP_DELETE_ELEM = 0x3
  2147. BPF_MAP_GET_NEXT_KEY = 0x4
  2148. BPF_PROG_LOAD = 0x5
  2149. BPF_OBJ_PIN = 0x6
  2150. BPF_OBJ_GET = 0x7
  2151. BPF_PROG_ATTACH = 0x8
  2152. BPF_PROG_DETACH = 0x9
  2153. BPF_PROG_TEST_RUN = 0xa
  2154. BPF_PROG_GET_NEXT_ID = 0xb
  2155. BPF_MAP_GET_NEXT_ID = 0xc
  2156. BPF_PROG_GET_FD_BY_ID = 0xd
  2157. BPF_MAP_GET_FD_BY_ID = 0xe
  2158. BPF_OBJ_GET_INFO_BY_FD = 0xf
  2159. BPF_PROG_QUERY = 0x10
  2160. BPF_RAW_TRACEPOINT_OPEN = 0x11
  2161. BPF_BTF_LOAD = 0x12
  2162. BPF_BTF_GET_FD_BY_ID = 0x13
  2163. BPF_TASK_FD_QUERY = 0x14
  2164. BPF_MAP_LOOKUP_AND_DELETE_ELEM = 0x15
  2165. BPF_MAP_TYPE_UNSPEC = 0x0
  2166. BPF_MAP_TYPE_HASH = 0x1
  2167. BPF_MAP_TYPE_ARRAY = 0x2
  2168. BPF_MAP_TYPE_PROG_ARRAY = 0x3
  2169. BPF_MAP_TYPE_PERF_EVENT_ARRAY = 0x4
  2170. BPF_MAP_TYPE_PERCPU_HASH = 0x5
  2171. BPF_MAP_TYPE_PERCPU_ARRAY = 0x6
  2172. BPF_MAP_TYPE_STACK_TRACE = 0x7
  2173. BPF_MAP_TYPE_CGROUP_ARRAY = 0x8
  2174. BPF_MAP_TYPE_LRU_HASH = 0x9
  2175. BPF_MAP_TYPE_LRU_PERCPU_HASH = 0xa
  2176. BPF_MAP_TYPE_LPM_TRIE = 0xb
  2177. BPF_MAP_TYPE_ARRAY_OF_MAPS = 0xc
  2178. BPF_MAP_TYPE_HASH_OF_MAPS = 0xd
  2179. BPF_MAP_TYPE_DEVMAP = 0xe
  2180. BPF_MAP_TYPE_SOCKMAP = 0xf
  2181. BPF_MAP_TYPE_CPUMAP = 0x10
  2182. BPF_MAP_TYPE_XSKMAP = 0x11
  2183. BPF_MAP_TYPE_SOCKHASH = 0x12
  2184. BPF_MAP_TYPE_CGROUP_STORAGE = 0x13
  2185. BPF_MAP_TYPE_REUSEPORT_SOCKARRAY = 0x14
  2186. BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE = 0x15
  2187. BPF_MAP_TYPE_QUEUE = 0x16
  2188. BPF_MAP_TYPE_STACK = 0x17
  2189. BPF_PROG_TYPE_UNSPEC = 0x0
  2190. BPF_PROG_TYPE_SOCKET_FILTER = 0x1
  2191. BPF_PROG_TYPE_KPROBE = 0x2
  2192. BPF_PROG_TYPE_SCHED_CLS = 0x3
  2193. BPF_PROG_TYPE_SCHED_ACT = 0x4
  2194. BPF_PROG_TYPE_TRACEPOINT = 0x5
  2195. BPF_PROG_TYPE_XDP = 0x6
  2196. BPF_PROG_TYPE_PERF_EVENT = 0x7
  2197. BPF_PROG_TYPE_CGROUP_SKB = 0x8
  2198. BPF_PROG_TYPE_CGROUP_SOCK = 0x9
  2199. BPF_PROG_TYPE_LWT_IN = 0xa
  2200. BPF_PROG_TYPE_LWT_OUT = 0xb
  2201. BPF_PROG_TYPE_LWT_XMIT = 0xc
  2202. BPF_PROG_TYPE_SOCK_OPS = 0xd
  2203. BPF_PROG_TYPE_SK_SKB = 0xe
  2204. BPF_PROG_TYPE_CGROUP_DEVICE = 0xf
  2205. BPF_PROG_TYPE_SK_MSG = 0x10
  2206. BPF_PROG_TYPE_RAW_TRACEPOINT = 0x11
  2207. BPF_PROG_TYPE_CGROUP_SOCK_ADDR = 0x12
  2208. BPF_PROG_TYPE_LWT_SEG6LOCAL = 0x13
  2209. BPF_PROG_TYPE_LIRC_MODE2 = 0x14
  2210. BPF_PROG_TYPE_SK_REUSEPORT = 0x15
  2211. BPF_PROG_TYPE_FLOW_DISSECTOR = 0x16
  2212. BPF_CGROUP_INET_INGRESS = 0x0
  2213. BPF_CGROUP_INET_EGRESS = 0x1
  2214. BPF_CGROUP_INET_SOCK_CREATE = 0x2
  2215. BPF_CGROUP_SOCK_OPS = 0x3
  2216. BPF_SK_SKB_STREAM_PARSER = 0x4
  2217. BPF_SK_SKB_STREAM_VERDICT = 0x5
  2218. BPF_CGROUP_DEVICE = 0x6
  2219. BPF_SK_MSG_VERDICT = 0x7
  2220. BPF_CGROUP_INET4_BIND = 0x8
  2221. BPF_CGROUP_INET6_BIND = 0x9
  2222. BPF_CGROUP_INET4_CONNECT = 0xa
  2223. BPF_CGROUP_INET6_CONNECT = 0xb
  2224. BPF_CGROUP_INET4_POST_BIND = 0xc
  2225. BPF_CGROUP_INET6_POST_BIND = 0xd
  2226. BPF_CGROUP_UDP4_SENDMSG = 0xe
  2227. BPF_CGROUP_UDP6_SENDMSG = 0xf
  2228. BPF_LIRC_MODE2 = 0x10
  2229. BPF_FLOW_DISSECTOR = 0x11
  2230. BPF_STACK_BUILD_ID_EMPTY = 0x0
  2231. BPF_STACK_BUILD_ID_VALID = 0x1
  2232. BPF_STACK_BUILD_ID_IP = 0x2
  2233. BPF_ADJ_ROOM_NET = 0x0
  2234. BPF_HDR_START_MAC = 0x0
  2235. BPF_HDR_START_NET = 0x1
  2236. BPF_LWT_ENCAP_SEG6 = 0x0
  2237. BPF_LWT_ENCAP_SEG6_INLINE = 0x1
  2238. BPF_OK = 0x0
  2239. BPF_DROP = 0x2
  2240. BPF_REDIRECT = 0x7
  2241. BPF_SOCK_OPS_VOID = 0x0
  2242. BPF_SOCK_OPS_TIMEOUT_INIT = 0x1
  2243. BPF_SOCK_OPS_RWND_INIT = 0x2
  2244. BPF_SOCK_OPS_TCP_CONNECT_CB = 0x3
  2245. BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB = 0x4
  2246. BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB = 0x5
  2247. BPF_SOCK_OPS_NEEDS_ECN = 0x6
  2248. BPF_SOCK_OPS_BASE_RTT = 0x7
  2249. BPF_SOCK_OPS_RTO_CB = 0x8
  2250. BPF_SOCK_OPS_RETRANS_CB = 0x9
  2251. BPF_SOCK_OPS_STATE_CB = 0xa
  2252. BPF_SOCK_OPS_TCP_LISTEN_CB = 0xb
  2253. BPF_TCP_ESTABLISHED = 0x1
  2254. BPF_TCP_SYN_SENT = 0x2
  2255. BPF_TCP_SYN_RECV = 0x3
  2256. BPF_TCP_FIN_WAIT1 = 0x4
  2257. BPF_TCP_FIN_WAIT2 = 0x5
  2258. BPF_TCP_TIME_WAIT = 0x6
  2259. BPF_TCP_CLOSE = 0x7
  2260. BPF_TCP_CLOSE_WAIT = 0x8
  2261. BPF_TCP_LAST_ACK = 0x9
  2262. BPF_TCP_LISTEN = 0xa
  2263. BPF_TCP_CLOSING = 0xb
  2264. BPF_TCP_NEW_SYN_RECV = 0xc
  2265. BPF_TCP_MAX_STATES = 0xd
  2266. BPF_FIB_LKUP_RET_SUCCESS = 0x0
  2267. BPF_FIB_LKUP_RET_BLACKHOLE = 0x1
  2268. BPF_FIB_LKUP_RET_UNREACHABLE = 0x2
  2269. BPF_FIB_LKUP_RET_PROHIBIT = 0x3
  2270. BPF_FIB_LKUP_RET_NOT_FWDED = 0x4
  2271. BPF_FIB_LKUP_RET_FWD_DISABLED = 0x5
  2272. BPF_FIB_LKUP_RET_UNSUPP_LWT = 0x6
  2273. BPF_FIB_LKUP_RET_NO_NEIGH = 0x7
  2274. BPF_FIB_LKUP_RET_FRAG_NEEDED = 0x8
  2275. BPF_FD_TYPE_RAW_TRACEPOINT = 0x0
  2276. BPF_FD_TYPE_TRACEPOINT = 0x1
  2277. BPF_FD_TYPE_KPROBE = 0x2
  2278. BPF_FD_TYPE_KRETPROBE = 0x3
  2279. BPF_FD_TYPE_UPROBE = 0x4
  2280. BPF_FD_TYPE_URETPROBE = 0x5
  2281. )
  2282. type CapUserHeader struct {
  2283. Version uint32
  2284. Pid int32
  2285. }
  2286. type CapUserData struct {
  2287. Effective uint32
  2288. Permitted uint32
  2289. Inheritable uint32
  2290. }
  2291. const (
  2292. LINUX_CAPABILITY_VERSION_1 = 0x19980330
  2293. LINUX_CAPABILITY_VERSION_2 = 0x20071026
  2294. LINUX_CAPABILITY_VERSION_3 = 0x20080522
  2295. )
  2296. const (
  2297. LO_FLAGS_READ_ONLY = 0x1
  2298. LO_FLAGS_AUTOCLEAR = 0x4
  2299. LO_FLAGS_PARTSCAN = 0x8
  2300. LO_FLAGS_DIRECT_IO = 0x10
  2301. )
  2302. type LoopInfo struct {
  2303. Number int32
  2304. Device uint16
  2305. Inode uint32
  2306. Rdevice uint16
  2307. Offset int32
  2308. Encrypt_type int32
  2309. Encrypt_key_size int32
  2310. Flags int32
  2311. Name [64]uint8
  2312. Encrypt_key [32]uint8
  2313. Init [2]uint32
  2314. Reserved [4]uint8
  2315. }
  2316. type LoopInfo64 struct {
  2317. Device uint64
  2318. Inode uint64
  2319. Rdevice uint64
  2320. Offset uint64
  2321. Sizelimit uint64
  2322. Number uint32
  2323. Encrypt_type uint32
  2324. Encrypt_key_size uint32
  2325. Flags uint32
  2326. File_name [64]uint8
  2327. Crypt_name [64]uint8
  2328. Encrypt_key [32]uint8
  2329. Init [2]uint64
  2330. }
  2331. type TIPCSocketAddr struct {
  2332. Ref uint32
  2333. Node uint32
  2334. }
  2335. type TIPCServiceRange struct {
  2336. Type uint32
  2337. Lower uint32
  2338. Upper uint32
  2339. }
  2340. type TIPCServiceName struct {
  2341. Type uint32
  2342. Instance uint32
  2343. Domain uint32
  2344. }
  2345. type TIPCSubscr struct {
  2346. Seq TIPCServiceRange
  2347. Timeout uint32
  2348. Filter uint32
  2349. Handle [8]uint8
  2350. }
  2351. type TIPCEvent struct {
  2352. Event uint32
  2353. Lower uint32
  2354. Upper uint32
  2355. Port TIPCSocketAddr
  2356. S TIPCSubscr
  2357. }
  2358. type TIPCGroupReq struct {
  2359. Type uint32
  2360. Instance uint32
  2361. Scope uint32
  2362. Flags uint32
  2363. }
  2364. type TIPCSIOCLNReq struct {
  2365. Peer uint32
  2366. Id uint32
  2367. Linkname [68]uint8
  2368. }
  2369. type TIPCSIOCNodeIDReq struct {
  2370. Peer uint32
  2371. Id [16]uint8
  2372. }
  2373. const (
  2374. TIPC_CLUSTER_SCOPE = 0x2
  2375. TIPC_NODE_SCOPE = 0x3
  2376. )
上海开阖软件有限公司 沪ICP备12045867号-1