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

2585 lines
65KB

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