本站源代码
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.

2580 lines
64KB

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