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