blob: f347457e9eb15ba55d8b4aca843997fb305fd161 [file] [log] [blame]
Don Newton98fd8812019-09-23 15:15:02 -04001// cgo -godefs -- -Wall -Werror -static -I/tmp/include -m64 linux/types.go | go run mkpost.go
2// Code generated by the command above; see README.md. DO NOT EDIT.
3
4// +build amd64,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 Blksize int64
109 Blocks int64
110 Atim Timespec
111 Mtim Timespec
112 Ctim Timespec
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 = 0x4
194 FADV_NOREUSE = 0x5
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 R15 uint64
752 R14 uint64
753 R13 uint64
754 R12 uint64
755 Rbp uint64
756 Rbx uint64
757 R11 uint64
758 R10 uint64
759 R9 uint64
760 R8 uint64
761 Rax uint64
762 Rcx uint64
763 Rdx uint64
764 Rsi uint64
765 Rdi uint64
766 Orig_rax uint64
767 Rip uint64
768 Cs uint64
769 Eflags uint64
770 Rsp uint64
771 Ss uint64
772 Fs_base uint64
773 Gs_base uint64
774 Ds uint64
775 Es uint64
776 Fs uint64
777 Gs uint64
778}
779
780type FdSet struct {
781 Bits [16]int64
782}
783
784type Sysinfo_t struct {
785 Uptime int64
786 Loads [3]uint64
787 Totalram uint64
788 Freeram uint64
789 Sharedram uint64
790 Bufferram uint64
791 Totalswap uint64
792 Freeswap uint64
793 Procs uint16
794 Pad uint16
795 Totalhigh uint64
796 Freehigh uint64
797 Unit uint32
798 _ [0]int8
799 _ [4]byte
800}
801
802type Utsname struct {
803 Sysname [65]byte
804 Nodename [65]byte
805 Release [65]byte
806 Version [65]byte
807 Machine [65]byte
808 Domainname [65]byte
809}
810
811type Ustat_t struct {
812 Tfree int32
813 Tinode uint64
814 Fname [6]int8
815 Fpack [6]int8
816 _ [4]byte
817}
818
819type EpollEvent struct {
820 Events uint32
821 Fd int32
822 Pad int32
823}
824
825const (
826 AT_EMPTY_PATH = 0x1000
827 AT_FDCWD = -0x64
828 AT_NO_AUTOMOUNT = 0x800
829 AT_REMOVEDIR = 0x200
830
831 AT_STATX_SYNC_AS_STAT = 0x0
832 AT_STATX_FORCE_SYNC = 0x2000
833 AT_STATX_DONT_SYNC = 0x4000
834
835 AT_SYMLINK_FOLLOW = 0x400
836 AT_SYMLINK_NOFOLLOW = 0x100
837
838 AT_EACCESS = 0x200
839)
840
841type PollFd struct {
842 Fd int32
843 Events int16
844 Revents int16
845}
846
847const (
848 POLLIN = 0x1
849 POLLPRI = 0x2
850 POLLOUT = 0x4
851 POLLRDHUP = 0x2000
852 POLLERR = 0x8
853 POLLHUP = 0x10
854 POLLNVAL = 0x20
855)
856
857type Sigset_t struct {
858 Val [16]uint64
859}
860
Don Newton7577f072020-01-06 12:41:11 -0500861const _C__NSIG = 0x41
862
Don Newton98fd8812019-09-23 15:15:02 -0400863type SignalfdSiginfo struct {
864 Signo uint32
865 Errno int32
866 Code int32
867 Pid uint32
868 Uid uint32
869 Fd int32
870 Tid uint32
871 Band uint32
872 Overrun uint32
873 Trapno uint32
874 Status int32
875 Int int32
876 Ptr uint64
877 Utime uint64
878 Stime uint64
879 Addr uint64
880 Addr_lsb uint16
881 _ uint16
882 Syscall int32
883 Call_addr uint64
884 Arch uint32
885 _ [28]uint8
886}
887
888const PERF_IOC_FLAG_GROUP = 0x1
889
890type Termios struct {
891 Iflag uint32
892 Oflag uint32
893 Cflag uint32
894 Lflag uint32
895 Line uint8
896 Cc [19]uint8
897 Ispeed uint32
898 Ospeed uint32
899}
900
901type Winsize struct {
902 Row uint16
903 Col uint16
904 Xpixel uint16
905 Ypixel uint16
906}
907
908type Taskstats struct {
909 Version uint16
910 Ac_exitcode uint32
911 Ac_flag uint8
912 Ac_nice uint8
913 Cpu_count uint64
914 Cpu_delay_total uint64
915 Blkio_count uint64
916 Blkio_delay_total uint64
917 Swapin_count uint64
918 Swapin_delay_total uint64
919 Cpu_run_real_total uint64
920 Cpu_run_virtual_total uint64
921 Ac_comm [32]int8
922 Ac_sched uint8
923 Ac_pad [3]uint8
924 _ [4]byte
925 Ac_uid uint32
926 Ac_gid uint32
927 Ac_pid uint32
928 Ac_ppid uint32
929 Ac_btime uint32
930 Ac_etime uint64
931 Ac_utime uint64
932 Ac_stime uint64
933 Ac_minflt uint64
934 Ac_majflt uint64
935 Coremem uint64
936 Virtmem uint64
937 Hiwater_rss uint64
938 Hiwater_vm uint64
939 Read_char uint64
940 Write_char uint64
941 Read_syscalls uint64
942 Write_syscalls uint64
943 Read_bytes uint64
944 Write_bytes uint64
945 Cancelled_write_bytes uint64
946 Nvcsw uint64
947 Nivcsw uint64
948 Ac_utimescaled uint64
949 Ac_stimescaled uint64
950 Cpu_scaled_run_real_total uint64
951 Freepages_count uint64
952 Freepages_delay_total uint64
953 Thrashing_count uint64
954 Thrashing_delay_total uint64
955}
956
957const (
958 TASKSTATS_CMD_UNSPEC = 0x0
959 TASKSTATS_CMD_GET = 0x1
960 TASKSTATS_CMD_NEW = 0x2
961 TASKSTATS_TYPE_UNSPEC = 0x0
962 TASKSTATS_TYPE_PID = 0x1
963 TASKSTATS_TYPE_TGID = 0x2
964 TASKSTATS_TYPE_STATS = 0x3
965 TASKSTATS_TYPE_AGGR_PID = 0x4
966 TASKSTATS_TYPE_AGGR_TGID = 0x5
967 TASKSTATS_TYPE_NULL = 0x6
968 TASKSTATS_CMD_ATTR_UNSPEC = 0x0
969 TASKSTATS_CMD_ATTR_PID = 0x1
970 TASKSTATS_CMD_ATTR_TGID = 0x2
971 TASKSTATS_CMD_ATTR_REGISTER_CPUMASK = 0x3
972 TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = 0x4
973)
974
975type CGroupStats struct {
976 Sleeping uint64
977 Running uint64
978 Stopped uint64
979 Uninterruptible uint64
980 Io_wait uint64
981}
982
983const (
984 CGROUPSTATS_CMD_UNSPEC = 0x3
985 CGROUPSTATS_CMD_GET = 0x4
986 CGROUPSTATS_CMD_NEW = 0x5
987 CGROUPSTATS_TYPE_UNSPEC = 0x0
988 CGROUPSTATS_TYPE_CGROUP_STATS = 0x1
989 CGROUPSTATS_CMD_ATTR_UNSPEC = 0x0
990 CGROUPSTATS_CMD_ATTR_FD = 0x1
991)
992
993type Genlmsghdr struct {
994 Cmd uint8
995 Version uint8
996 Reserved uint16
997}
998
999const (
1000 CTRL_CMD_UNSPEC = 0x0
1001 CTRL_CMD_NEWFAMILY = 0x1
1002 CTRL_CMD_DELFAMILY = 0x2
1003 CTRL_CMD_GETFAMILY = 0x3
1004 CTRL_CMD_NEWOPS = 0x4
1005 CTRL_CMD_DELOPS = 0x5
1006 CTRL_CMD_GETOPS = 0x6
1007 CTRL_CMD_NEWMCAST_GRP = 0x7
1008 CTRL_CMD_DELMCAST_GRP = 0x8
1009 CTRL_CMD_GETMCAST_GRP = 0x9
1010 CTRL_ATTR_UNSPEC = 0x0
1011 CTRL_ATTR_FAMILY_ID = 0x1
1012 CTRL_ATTR_FAMILY_NAME = 0x2
1013 CTRL_ATTR_VERSION = 0x3
1014 CTRL_ATTR_HDRSIZE = 0x4
1015 CTRL_ATTR_MAXATTR = 0x5
1016 CTRL_ATTR_OPS = 0x6
1017 CTRL_ATTR_MCAST_GROUPS = 0x7
1018 CTRL_ATTR_OP_UNSPEC = 0x0
1019 CTRL_ATTR_OP_ID = 0x1
1020 CTRL_ATTR_OP_FLAGS = 0x2
1021 CTRL_ATTR_MCAST_GRP_UNSPEC = 0x0
1022 CTRL_ATTR_MCAST_GRP_NAME = 0x1
1023 CTRL_ATTR_MCAST_GRP_ID = 0x2
1024)
1025
1026type cpuMask uint64
1027
1028const (
1029 _CPU_SETSIZE = 0x400
1030 _NCPUBITS = 0x40
1031)
1032
1033const (
1034 BDADDR_BREDR = 0x0
1035 BDADDR_LE_PUBLIC = 0x1
1036 BDADDR_LE_RANDOM = 0x2
1037)
1038
1039type PerfEventAttr struct {
1040 Type uint32
1041 Size uint32
1042 Config uint64
1043 Sample uint64
1044 Sample_type uint64
1045 Read_format uint64
1046 Bits uint64
1047 Wakeup uint32
1048 Bp_type uint32
1049 Ext1 uint64
1050 Ext2 uint64
1051 Branch_sample_type uint64
1052 Sample_regs_user uint64
1053 Sample_stack_user uint32
1054 Clockid int32
1055 Sample_regs_intr uint64
1056 Aux_watermark uint32
Don Newton7577f072020-01-06 12:41:11 -05001057 Sample_max_stack uint16
1058 _ uint16
Don Newton98fd8812019-09-23 15:15:02 -04001059}
1060
1061type PerfEventMmapPage struct {
1062 Version uint32
1063 Compat_version uint32
1064 Lock uint32
1065 Index uint32
1066 Offset int64
1067 Time_enabled uint64
1068 Time_running uint64
1069 Capabilities uint64
1070 Pmc_width uint16
1071 Time_shift uint16
1072 Time_mult uint32
1073 Time_offset uint64
1074 Time_zero uint64
1075 Size uint32
1076 _ [948]uint8
1077 Data_head uint64
1078 Data_tail uint64
1079 Data_offset uint64
1080 Data_size uint64
1081 Aux_head uint64
1082 Aux_tail uint64
1083 Aux_offset uint64
1084 Aux_size uint64
1085}
1086
1087const (
1088 PerfBitDisabled uint64 = CBitFieldMaskBit0
1089 PerfBitInherit = CBitFieldMaskBit1
1090 PerfBitPinned = CBitFieldMaskBit2
1091 PerfBitExclusive = CBitFieldMaskBit3
1092 PerfBitExcludeUser = CBitFieldMaskBit4
1093 PerfBitExcludeKernel = CBitFieldMaskBit5
1094 PerfBitExcludeHv = CBitFieldMaskBit6
1095 PerfBitExcludeIdle = CBitFieldMaskBit7
1096 PerfBitMmap = CBitFieldMaskBit8
1097 PerfBitComm = CBitFieldMaskBit9
1098 PerfBitFreq = CBitFieldMaskBit10
1099 PerfBitInheritStat = CBitFieldMaskBit11
1100 PerfBitEnableOnExec = CBitFieldMaskBit12
1101 PerfBitTask = CBitFieldMaskBit13
1102 PerfBitWatermark = CBitFieldMaskBit14
1103 PerfBitPreciseIPBit1 = CBitFieldMaskBit15
1104 PerfBitPreciseIPBit2 = CBitFieldMaskBit16
1105 PerfBitMmapData = CBitFieldMaskBit17
1106 PerfBitSampleIDAll = CBitFieldMaskBit18
1107 PerfBitExcludeHost = CBitFieldMaskBit19
1108 PerfBitExcludeGuest = CBitFieldMaskBit20
1109 PerfBitExcludeCallchainKernel = CBitFieldMaskBit21
1110 PerfBitExcludeCallchainUser = CBitFieldMaskBit22
1111 PerfBitMmap2 = CBitFieldMaskBit23
1112 PerfBitCommExec = CBitFieldMaskBit24
1113 PerfBitUseClockID = CBitFieldMaskBit25
1114 PerfBitContextSwitch = CBitFieldMaskBit26
1115)
1116
1117const (
1118 PERF_TYPE_HARDWARE = 0x0
1119 PERF_TYPE_SOFTWARE = 0x1
1120 PERF_TYPE_TRACEPOINT = 0x2
1121 PERF_TYPE_HW_CACHE = 0x3
1122 PERF_TYPE_RAW = 0x4
1123 PERF_TYPE_BREAKPOINT = 0x5
1124
1125 PERF_COUNT_HW_CPU_CYCLES = 0x0
1126 PERF_COUNT_HW_INSTRUCTIONS = 0x1
1127 PERF_COUNT_HW_CACHE_REFERENCES = 0x2
1128 PERF_COUNT_HW_CACHE_MISSES = 0x3
1129 PERF_COUNT_HW_BRANCH_INSTRUCTIONS = 0x4
1130 PERF_COUNT_HW_BRANCH_MISSES = 0x5
1131 PERF_COUNT_HW_BUS_CYCLES = 0x6
1132 PERF_COUNT_HW_STALLED_CYCLES_FRONTEND = 0x7
1133 PERF_COUNT_HW_STALLED_CYCLES_BACKEND = 0x8
1134 PERF_COUNT_HW_REF_CPU_CYCLES = 0x9
1135
1136 PERF_COUNT_HW_CACHE_L1D = 0x0
1137 PERF_COUNT_HW_CACHE_L1I = 0x1
1138 PERF_COUNT_HW_CACHE_LL = 0x2
1139 PERF_COUNT_HW_CACHE_DTLB = 0x3
1140 PERF_COUNT_HW_CACHE_ITLB = 0x4
1141 PERF_COUNT_HW_CACHE_BPU = 0x5
1142 PERF_COUNT_HW_CACHE_NODE = 0x6
1143
1144 PERF_COUNT_HW_CACHE_OP_READ = 0x0
1145 PERF_COUNT_HW_CACHE_OP_WRITE = 0x1
1146 PERF_COUNT_HW_CACHE_OP_PREFETCH = 0x2
1147
1148 PERF_COUNT_HW_CACHE_RESULT_ACCESS = 0x0
1149 PERF_COUNT_HW_CACHE_RESULT_MISS = 0x1
1150
1151 PERF_COUNT_SW_CPU_CLOCK = 0x0
1152 PERF_COUNT_SW_TASK_CLOCK = 0x1
1153 PERF_COUNT_SW_PAGE_FAULTS = 0x2
1154 PERF_COUNT_SW_CONTEXT_SWITCHES = 0x3
1155 PERF_COUNT_SW_CPU_MIGRATIONS = 0x4
1156 PERF_COUNT_SW_PAGE_FAULTS_MIN = 0x5
1157 PERF_COUNT_SW_PAGE_FAULTS_MAJ = 0x6
1158 PERF_COUNT_SW_ALIGNMENT_FAULTS = 0x7
1159 PERF_COUNT_SW_EMULATION_FAULTS = 0x8
1160 PERF_COUNT_SW_DUMMY = 0x9
Don Newton7577f072020-01-06 12:41:11 -05001161 PERF_COUNT_SW_BPF_OUTPUT = 0xa
Don Newton98fd8812019-09-23 15:15:02 -04001162
1163 PERF_SAMPLE_IP = 0x1
1164 PERF_SAMPLE_TID = 0x2
1165 PERF_SAMPLE_TIME = 0x4
1166 PERF_SAMPLE_ADDR = 0x8
1167 PERF_SAMPLE_READ = 0x10
1168 PERF_SAMPLE_CALLCHAIN = 0x20
1169 PERF_SAMPLE_ID = 0x40
1170 PERF_SAMPLE_CPU = 0x80
1171 PERF_SAMPLE_PERIOD = 0x100
1172 PERF_SAMPLE_STREAM_ID = 0x200
1173 PERF_SAMPLE_RAW = 0x400
1174 PERF_SAMPLE_BRANCH_STACK = 0x800
1175
1176 PERF_SAMPLE_BRANCH_USER = 0x1
1177 PERF_SAMPLE_BRANCH_KERNEL = 0x2
1178 PERF_SAMPLE_BRANCH_HV = 0x4
1179 PERF_SAMPLE_BRANCH_ANY = 0x8
1180 PERF_SAMPLE_BRANCH_ANY_CALL = 0x10
1181 PERF_SAMPLE_BRANCH_ANY_RETURN = 0x20
1182 PERF_SAMPLE_BRANCH_IND_CALL = 0x40
Don Newton7577f072020-01-06 12:41:11 -05001183 PERF_SAMPLE_BRANCH_ABORT_TX = 0x80
1184 PERF_SAMPLE_BRANCH_IN_TX = 0x100
1185 PERF_SAMPLE_BRANCH_NO_TX = 0x200
1186 PERF_SAMPLE_BRANCH_COND = 0x400
1187 PERF_SAMPLE_BRANCH_CALL_STACK = 0x800
1188 PERF_SAMPLE_BRANCH_IND_JUMP = 0x1000
1189 PERF_SAMPLE_BRANCH_CALL = 0x2000
1190 PERF_SAMPLE_BRANCH_NO_FLAGS = 0x4000
1191 PERF_SAMPLE_BRANCH_NO_CYCLES = 0x8000
1192 PERF_SAMPLE_BRANCH_TYPE_SAVE = 0x10000
Don Newton98fd8812019-09-23 15:15:02 -04001193
1194 PERF_FORMAT_TOTAL_TIME_ENABLED = 0x1
1195 PERF_FORMAT_TOTAL_TIME_RUNNING = 0x2
1196 PERF_FORMAT_ID = 0x4
1197 PERF_FORMAT_GROUP = 0x8
1198
Don Newton7577f072020-01-06 12:41:11 -05001199 PERF_RECORD_MMAP = 0x1
1200 PERF_RECORD_LOST = 0x2
1201 PERF_RECORD_COMM = 0x3
1202 PERF_RECORD_EXIT = 0x4
1203 PERF_RECORD_THROTTLE = 0x5
1204 PERF_RECORD_UNTHROTTLE = 0x6
1205 PERF_RECORD_FORK = 0x7
1206 PERF_RECORD_READ = 0x8
1207 PERF_RECORD_SAMPLE = 0x9
1208 PERF_RECORD_MMAP2 = 0xa
1209 PERF_RECORD_AUX = 0xb
1210 PERF_RECORD_ITRACE_START = 0xc
1211 PERF_RECORD_LOST_SAMPLES = 0xd
1212 PERF_RECORD_SWITCH = 0xe
1213 PERF_RECORD_SWITCH_CPU_WIDE = 0xf
1214 PERF_RECORD_NAMESPACES = 0x10
Don Newton98fd8812019-09-23 15:15:02 -04001215
1216 PERF_CONTEXT_HV = -0x20
1217 PERF_CONTEXT_KERNEL = -0x80
1218 PERF_CONTEXT_USER = -0x200
1219
1220 PERF_CONTEXT_GUEST = -0x800
1221 PERF_CONTEXT_GUEST_KERNEL = -0x880
1222 PERF_CONTEXT_GUEST_USER = -0xa00
1223
1224 PERF_FLAG_FD_NO_GROUP = 0x1
1225 PERF_FLAG_FD_OUTPUT = 0x2
1226 PERF_FLAG_PID_CGROUP = 0x4
Don Newton7577f072020-01-06 12:41:11 -05001227 PERF_FLAG_FD_CLOEXEC = 0x8
Don Newton98fd8812019-09-23 15:15:02 -04001228)
1229
1230const (
1231 CBitFieldMaskBit0 = 0x1
1232 CBitFieldMaskBit1 = 0x2
1233 CBitFieldMaskBit2 = 0x4
1234 CBitFieldMaskBit3 = 0x8
1235 CBitFieldMaskBit4 = 0x10
1236 CBitFieldMaskBit5 = 0x20
1237 CBitFieldMaskBit6 = 0x40
1238 CBitFieldMaskBit7 = 0x80
1239 CBitFieldMaskBit8 = 0x100
1240 CBitFieldMaskBit9 = 0x200
1241 CBitFieldMaskBit10 = 0x400
1242 CBitFieldMaskBit11 = 0x800
1243 CBitFieldMaskBit12 = 0x1000
1244 CBitFieldMaskBit13 = 0x2000
1245 CBitFieldMaskBit14 = 0x4000
1246 CBitFieldMaskBit15 = 0x8000
1247 CBitFieldMaskBit16 = 0x10000
1248 CBitFieldMaskBit17 = 0x20000
1249 CBitFieldMaskBit18 = 0x40000
1250 CBitFieldMaskBit19 = 0x80000
1251 CBitFieldMaskBit20 = 0x100000
1252 CBitFieldMaskBit21 = 0x200000
1253 CBitFieldMaskBit22 = 0x400000
1254 CBitFieldMaskBit23 = 0x800000
1255 CBitFieldMaskBit24 = 0x1000000
1256 CBitFieldMaskBit25 = 0x2000000
1257 CBitFieldMaskBit26 = 0x4000000
1258 CBitFieldMaskBit27 = 0x8000000
1259 CBitFieldMaskBit28 = 0x10000000
1260 CBitFieldMaskBit29 = 0x20000000
1261 CBitFieldMaskBit30 = 0x40000000
1262 CBitFieldMaskBit31 = 0x80000000
1263 CBitFieldMaskBit32 = 0x100000000
1264 CBitFieldMaskBit33 = 0x200000000
1265 CBitFieldMaskBit34 = 0x400000000
1266 CBitFieldMaskBit35 = 0x800000000
1267 CBitFieldMaskBit36 = 0x1000000000
1268 CBitFieldMaskBit37 = 0x2000000000
1269 CBitFieldMaskBit38 = 0x4000000000
1270 CBitFieldMaskBit39 = 0x8000000000
1271 CBitFieldMaskBit40 = 0x10000000000
1272 CBitFieldMaskBit41 = 0x20000000000
1273 CBitFieldMaskBit42 = 0x40000000000
1274 CBitFieldMaskBit43 = 0x80000000000
1275 CBitFieldMaskBit44 = 0x100000000000
1276 CBitFieldMaskBit45 = 0x200000000000
1277 CBitFieldMaskBit46 = 0x400000000000
1278 CBitFieldMaskBit47 = 0x800000000000
1279 CBitFieldMaskBit48 = 0x1000000000000
1280 CBitFieldMaskBit49 = 0x2000000000000
1281 CBitFieldMaskBit50 = 0x4000000000000
1282 CBitFieldMaskBit51 = 0x8000000000000
1283 CBitFieldMaskBit52 = 0x10000000000000
1284 CBitFieldMaskBit53 = 0x20000000000000
1285 CBitFieldMaskBit54 = 0x40000000000000
1286 CBitFieldMaskBit55 = 0x80000000000000
1287 CBitFieldMaskBit56 = 0x100000000000000
1288 CBitFieldMaskBit57 = 0x200000000000000
1289 CBitFieldMaskBit58 = 0x400000000000000
1290 CBitFieldMaskBit59 = 0x800000000000000
1291 CBitFieldMaskBit60 = 0x1000000000000000
1292 CBitFieldMaskBit61 = 0x2000000000000000
1293 CBitFieldMaskBit62 = 0x4000000000000000
1294 CBitFieldMaskBit63 = 0x8000000000000000
1295)
1296
1297type SockaddrStorage struct {
1298 Family uint16
1299 _ [118]int8
1300 _ uint64
1301}
1302
1303type TCPMD5Sig struct {
1304 Addr SockaddrStorage
1305 Flags uint8
1306 Prefixlen uint8
1307 Keylen uint16
1308 _ uint32
1309 Key [80]uint8
1310}
1311
1312type HDDriveCmdHdr struct {
1313 Command uint8
1314 Number uint8
1315 Feature uint8
1316 Count uint8
1317}
1318
1319type HDGeometry struct {
1320 Heads uint8
1321 Sectors uint8
1322 Cylinders uint16
1323 Start uint64
1324}
1325
1326type HDDriveID struct {
1327 Config uint16
1328 Cyls uint16
1329 Reserved2 uint16
1330 Heads uint16
1331 Track_bytes uint16
1332 Sector_bytes uint16
1333 Sectors uint16
1334 Vendor0 uint16
1335 Vendor1 uint16
1336 Vendor2 uint16
1337 Serial_no [20]uint8
1338 Buf_type uint16
1339 Buf_size uint16
1340 Ecc_bytes uint16
1341 Fw_rev [8]uint8
1342 Model [40]uint8
1343 Max_multsect uint8
1344 Vendor3 uint8
1345 Dword_io uint16
1346 Vendor4 uint8
1347 Capability uint8
1348 Reserved50 uint16
1349 Vendor5 uint8
1350 TPIO uint8
1351 Vendor6 uint8
1352 TDMA uint8
1353 Field_valid uint16
1354 Cur_cyls uint16
1355 Cur_heads uint16
1356 Cur_sectors uint16
1357 Cur_capacity0 uint16
1358 Cur_capacity1 uint16
1359 Multsect uint8
1360 Multsect_valid uint8
1361 Lba_capacity uint32
1362 Dma_1word uint16
1363 Dma_mword uint16
1364 Eide_pio_modes uint16
1365 Eide_dma_min uint16
1366 Eide_dma_time uint16
1367 Eide_pio uint16
1368 Eide_pio_iordy uint16
1369 Words69_70 [2]uint16
1370 Words71_74 [4]uint16
1371 Queue_depth uint16
1372 Words76_79 [4]uint16
1373 Major_rev_num uint16
1374 Minor_rev_num uint16
1375 Command_set_1 uint16
1376 Command_set_2 uint16
1377 Cfsse uint16
1378 Cfs_enable_1 uint16
1379 Cfs_enable_2 uint16
1380 Csf_default uint16
1381 Dma_ultra uint16
1382 Trseuc uint16
1383 TrsEuc uint16
1384 CurAPMvalues uint16
1385 Mprc uint16
1386 Hw_config uint16
1387 Acoustic uint16
1388 Msrqs uint16
1389 Sxfert uint16
1390 Sal uint16
1391 Spg uint32
1392 Lba_capacity_2 uint64
1393 Words104_125 [22]uint16
1394 Last_lun uint16
1395 Word127 uint16
1396 Dlf uint16
1397 Csfo uint16
1398 Words130_155 [26]uint16
1399 Word156 uint16
1400 Words157_159 [3]uint16
1401 Cfa_power uint16
1402 Words161_175 [15]uint16
1403 Words176_205 [30]uint16
1404 Words206_254 [49]uint16
1405 Integrity_word uint16
1406}
1407
1408type Statfs_t struct {
1409 Type int64
1410 Bsize int64
1411 Blocks uint64
1412 Bfree uint64
1413 Bavail uint64
1414 Files uint64
1415 Ffree uint64
1416 Fsid Fsid
1417 Namelen int64
1418 Frsize int64
1419 Flags int64
1420 Spare [4]int64
1421}
1422
1423const (
1424 ST_MANDLOCK = 0x40
1425 ST_NOATIME = 0x400
1426 ST_NODEV = 0x4
1427 ST_NODIRATIME = 0x800
1428 ST_NOEXEC = 0x8
1429 ST_NOSUID = 0x2
1430 ST_RDONLY = 0x1
1431 ST_RELATIME = 0x1000
1432 ST_SYNCHRONOUS = 0x10
1433)
1434
1435type TpacketHdr struct {
1436 Status uint64
1437 Len uint32
1438 Snaplen uint32
1439 Mac uint16
1440 Net uint16
1441 Sec uint32
1442 Usec uint32
1443 _ [4]byte
1444}
1445
1446type Tpacket2Hdr struct {
1447 Status uint32
1448 Len uint32
1449 Snaplen uint32
1450 Mac uint16
1451 Net uint16
1452 Sec uint32
1453 Nsec uint32
1454 Vlan_tci uint16
1455 Vlan_tpid uint16
1456 _ [4]uint8
1457}
1458
1459type Tpacket3Hdr struct {
1460 Next_offset uint32
1461 Sec uint32
1462 Nsec uint32
1463 Snaplen uint32
1464 Len uint32
1465 Status uint32
1466 Mac uint16
1467 Net uint16
1468 Hv1 TpacketHdrVariant1
1469 _ [8]uint8
1470}
1471
1472type TpacketHdrVariant1 struct {
1473 Rxhash uint32
1474 Vlan_tci uint32
1475 Vlan_tpid uint16
1476 _ uint16
1477}
1478
1479type TpacketBlockDesc struct {
1480 Version uint32
1481 To_priv uint32
1482 Hdr [40]byte
1483}
1484
Don Newton7577f072020-01-06 12:41:11 -05001485type TpacketBDTS struct {
1486 Sec uint32
1487 Usec uint32
1488}
1489
1490type TpacketHdrV1 struct {
1491 Block_status uint32
1492 Num_pkts uint32
1493 Offset_to_first_pkt uint32
1494 Blk_len uint32
1495 Seq_num uint64
1496 Ts_first_pkt TpacketBDTS
1497 Ts_last_pkt TpacketBDTS
1498}
1499
Don Newton98fd8812019-09-23 15:15:02 -04001500type TpacketReq struct {
1501 Block_size uint32
1502 Block_nr uint32
1503 Frame_size uint32
1504 Frame_nr uint32
1505}
1506
1507type TpacketReq3 struct {
1508 Block_size uint32
1509 Block_nr uint32
1510 Frame_size uint32
1511 Frame_nr uint32
1512 Retire_blk_tov uint32
1513 Sizeof_priv uint32
1514 Feature_req_word uint32
1515}
1516
1517type TpacketStats struct {
1518 Packets uint32
1519 Drops uint32
1520}
1521
1522type TpacketStatsV3 struct {
1523 Packets uint32
1524 Drops uint32
1525 Freeze_q_cnt uint32
1526}
1527
1528type TpacketAuxdata struct {
1529 Status uint32
1530 Len uint32
1531 Snaplen uint32
1532 Mac uint16
1533 Net uint16
1534 Vlan_tci uint16
1535 Vlan_tpid uint16
1536}
1537
1538const (
1539 TPACKET_V1 = 0x0
1540 TPACKET_V2 = 0x1
1541 TPACKET_V3 = 0x2
1542)
1543
1544const (
1545 SizeofTpacketHdr = 0x20
1546 SizeofTpacket2Hdr = 0x20
1547 SizeofTpacket3Hdr = 0x30
Don Newton7577f072020-01-06 12:41:11 -05001548
1549 SizeofTpacketStats = 0x8
1550 SizeofTpacketStatsV3 = 0xc
Don Newton98fd8812019-09-23 15:15:02 -04001551)
1552
1553const (
1554 NF_INET_PRE_ROUTING = 0x0
1555 NF_INET_LOCAL_IN = 0x1
1556 NF_INET_FORWARD = 0x2
1557 NF_INET_LOCAL_OUT = 0x3
1558 NF_INET_POST_ROUTING = 0x4
1559 NF_INET_NUMHOOKS = 0x5
1560)
1561
1562const (
1563 NF_NETDEV_INGRESS = 0x0
1564 NF_NETDEV_NUMHOOKS = 0x1
1565)
1566
1567const (
1568 NFPROTO_UNSPEC = 0x0
1569 NFPROTO_INET = 0x1
1570 NFPROTO_IPV4 = 0x2
1571 NFPROTO_ARP = 0x3
1572 NFPROTO_NETDEV = 0x5
1573 NFPROTO_BRIDGE = 0x7
1574 NFPROTO_IPV6 = 0xa
1575 NFPROTO_DECNET = 0xc
1576 NFPROTO_NUMPROTO = 0xd
1577)
1578
1579type Nfgenmsg struct {
1580 Nfgen_family uint8
1581 Version uint8
1582 Res_id uint16
1583}
1584
1585const (
1586 NFNL_BATCH_UNSPEC = 0x0
1587 NFNL_BATCH_GENID = 0x1
1588)
1589
1590const (
1591 NFT_REG_VERDICT = 0x0
1592 NFT_REG_1 = 0x1
1593 NFT_REG_2 = 0x2
1594 NFT_REG_3 = 0x3
1595 NFT_REG_4 = 0x4
1596 NFT_REG32_00 = 0x8
1597 NFT_REG32_01 = 0x9
1598 NFT_REG32_02 = 0xa
1599 NFT_REG32_03 = 0xb
1600 NFT_REG32_04 = 0xc
1601 NFT_REG32_05 = 0xd
1602 NFT_REG32_06 = 0xe
1603 NFT_REG32_07 = 0xf
1604 NFT_REG32_08 = 0x10
1605 NFT_REG32_09 = 0x11
1606 NFT_REG32_10 = 0x12
1607 NFT_REG32_11 = 0x13
1608 NFT_REG32_12 = 0x14
1609 NFT_REG32_13 = 0x15
1610 NFT_REG32_14 = 0x16
1611 NFT_REG32_15 = 0x17
1612 NFT_CONTINUE = -0x1
1613 NFT_BREAK = -0x2
1614 NFT_JUMP = -0x3
1615 NFT_GOTO = -0x4
1616 NFT_RETURN = -0x5
1617 NFT_MSG_NEWTABLE = 0x0
1618 NFT_MSG_GETTABLE = 0x1
1619 NFT_MSG_DELTABLE = 0x2
1620 NFT_MSG_NEWCHAIN = 0x3
1621 NFT_MSG_GETCHAIN = 0x4
1622 NFT_MSG_DELCHAIN = 0x5
1623 NFT_MSG_NEWRULE = 0x6
1624 NFT_MSG_GETRULE = 0x7
1625 NFT_MSG_DELRULE = 0x8
1626 NFT_MSG_NEWSET = 0x9
1627 NFT_MSG_GETSET = 0xa
1628 NFT_MSG_DELSET = 0xb
1629 NFT_MSG_NEWSETELEM = 0xc
1630 NFT_MSG_GETSETELEM = 0xd
1631 NFT_MSG_DELSETELEM = 0xe
1632 NFT_MSG_NEWGEN = 0xf
1633 NFT_MSG_GETGEN = 0x10
1634 NFT_MSG_TRACE = 0x11
1635 NFT_MSG_NEWOBJ = 0x12
1636 NFT_MSG_GETOBJ = 0x13
1637 NFT_MSG_DELOBJ = 0x14
1638 NFT_MSG_GETOBJ_RESET = 0x15
1639 NFT_MSG_MAX = 0x19
1640 NFTA_LIST_UNPEC = 0x0
1641 NFTA_LIST_ELEM = 0x1
1642 NFTA_HOOK_UNSPEC = 0x0
1643 NFTA_HOOK_HOOKNUM = 0x1
1644 NFTA_HOOK_PRIORITY = 0x2
1645 NFTA_HOOK_DEV = 0x3
1646 NFT_TABLE_F_DORMANT = 0x1
1647 NFTA_TABLE_UNSPEC = 0x0
1648 NFTA_TABLE_NAME = 0x1
1649 NFTA_TABLE_FLAGS = 0x2
1650 NFTA_TABLE_USE = 0x3
1651 NFTA_CHAIN_UNSPEC = 0x0
1652 NFTA_CHAIN_TABLE = 0x1
1653 NFTA_CHAIN_HANDLE = 0x2
1654 NFTA_CHAIN_NAME = 0x3
1655 NFTA_CHAIN_HOOK = 0x4
1656 NFTA_CHAIN_POLICY = 0x5
1657 NFTA_CHAIN_USE = 0x6
1658 NFTA_CHAIN_TYPE = 0x7
1659 NFTA_CHAIN_COUNTERS = 0x8
1660 NFTA_CHAIN_PAD = 0x9
1661 NFTA_RULE_UNSPEC = 0x0
1662 NFTA_RULE_TABLE = 0x1
1663 NFTA_RULE_CHAIN = 0x2
1664 NFTA_RULE_HANDLE = 0x3
1665 NFTA_RULE_EXPRESSIONS = 0x4
1666 NFTA_RULE_COMPAT = 0x5
1667 NFTA_RULE_POSITION = 0x6
1668 NFTA_RULE_USERDATA = 0x7
1669 NFTA_RULE_PAD = 0x8
1670 NFTA_RULE_ID = 0x9
1671 NFT_RULE_COMPAT_F_INV = 0x2
1672 NFT_RULE_COMPAT_F_MASK = 0x2
1673 NFTA_RULE_COMPAT_UNSPEC = 0x0
1674 NFTA_RULE_COMPAT_PROTO = 0x1
1675 NFTA_RULE_COMPAT_FLAGS = 0x2
1676 NFT_SET_ANONYMOUS = 0x1
1677 NFT_SET_CONSTANT = 0x2
1678 NFT_SET_INTERVAL = 0x4
1679 NFT_SET_MAP = 0x8
1680 NFT_SET_TIMEOUT = 0x10
1681 NFT_SET_EVAL = 0x20
1682 NFT_SET_OBJECT = 0x40
1683 NFT_SET_POL_PERFORMANCE = 0x0
1684 NFT_SET_POL_MEMORY = 0x1
1685 NFTA_SET_DESC_UNSPEC = 0x0
1686 NFTA_SET_DESC_SIZE = 0x1
1687 NFTA_SET_UNSPEC = 0x0
1688 NFTA_SET_TABLE = 0x1
1689 NFTA_SET_NAME = 0x2
1690 NFTA_SET_FLAGS = 0x3
1691 NFTA_SET_KEY_TYPE = 0x4
1692 NFTA_SET_KEY_LEN = 0x5
1693 NFTA_SET_DATA_TYPE = 0x6
1694 NFTA_SET_DATA_LEN = 0x7
1695 NFTA_SET_POLICY = 0x8
1696 NFTA_SET_DESC = 0x9
1697 NFTA_SET_ID = 0xa
1698 NFTA_SET_TIMEOUT = 0xb
1699 NFTA_SET_GC_INTERVAL = 0xc
1700 NFTA_SET_USERDATA = 0xd
1701 NFTA_SET_PAD = 0xe
1702 NFTA_SET_OBJ_TYPE = 0xf
1703 NFT_SET_ELEM_INTERVAL_END = 0x1
1704 NFTA_SET_ELEM_UNSPEC = 0x0
1705 NFTA_SET_ELEM_KEY = 0x1
1706 NFTA_SET_ELEM_DATA = 0x2
1707 NFTA_SET_ELEM_FLAGS = 0x3
1708 NFTA_SET_ELEM_TIMEOUT = 0x4
1709 NFTA_SET_ELEM_EXPIRATION = 0x5
1710 NFTA_SET_ELEM_USERDATA = 0x6
1711 NFTA_SET_ELEM_EXPR = 0x7
1712 NFTA_SET_ELEM_PAD = 0x8
1713 NFTA_SET_ELEM_OBJREF = 0x9
1714 NFTA_SET_ELEM_LIST_UNSPEC = 0x0
1715 NFTA_SET_ELEM_LIST_TABLE = 0x1
1716 NFTA_SET_ELEM_LIST_SET = 0x2
1717 NFTA_SET_ELEM_LIST_ELEMENTS = 0x3
1718 NFTA_SET_ELEM_LIST_SET_ID = 0x4
1719 NFT_DATA_VALUE = 0x0
1720 NFT_DATA_VERDICT = 0xffffff00
1721 NFTA_DATA_UNSPEC = 0x0
1722 NFTA_DATA_VALUE = 0x1
1723 NFTA_DATA_VERDICT = 0x2
1724 NFTA_VERDICT_UNSPEC = 0x0
1725 NFTA_VERDICT_CODE = 0x1
1726 NFTA_VERDICT_CHAIN = 0x2
1727 NFTA_EXPR_UNSPEC = 0x0
1728 NFTA_EXPR_NAME = 0x1
1729 NFTA_EXPR_DATA = 0x2
1730 NFTA_IMMEDIATE_UNSPEC = 0x0
1731 NFTA_IMMEDIATE_DREG = 0x1
1732 NFTA_IMMEDIATE_DATA = 0x2
1733 NFTA_BITWISE_UNSPEC = 0x0
1734 NFTA_BITWISE_SREG = 0x1
1735 NFTA_BITWISE_DREG = 0x2
1736 NFTA_BITWISE_LEN = 0x3
1737 NFTA_BITWISE_MASK = 0x4
1738 NFTA_BITWISE_XOR = 0x5
1739 NFT_BYTEORDER_NTOH = 0x0
1740 NFT_BYTEORDER_HTON = 0x1
1741 NFTA_BYTEORDER_UNSPEC = 0x0
1742 NFTA_BYTEORDER_SREG = 0x1
1743 NFTA_BYTEORDER_DREG = 0x2
1744 NFTA_BYTEORDER_OP = 0x3
1745 NFTA_BYTEORDER_LEN = 0x4
1746 NFTA_BYTEORDER_SIZE = 0x5
1747 NFT_CMP_EQ = 0x0
1748 NFT_CMP_NEQ = 0x1
1749 NFT_CMP_LT = 0x2
1750 NFT_CMP_LTE = 0x3
1751 NFT_CMP_GT = 0x4
1752 NFT_CMP_GTE = 0x5
1753 NFTA_CMP_UNSPEC = 0x0
1754 NFTA_CMP_SREG = 0x1
1755 NFTA_CMP_OP = 0x2
1756 NFTA_CMP_DATA = 0x3
1757 NFT_RANGE_EQ = 0x0
1758 NFT_RANGE_NEQ = 0x1
1759 NFTA_RANGE_UNSPEC = 0x0
1760 NFTA_RANGE_SREG = 0x1
1761 NFTA_RANGE_OP = 0x2
1762 NFTA_RANGE_FROM_DATA = 0x3
1763 NFTA_RANGE_TO_DATA = 0x4
1764 NFT_LOOKUP_F_INV = 0x1
1765 NFTA_LOOKUP_UNSPEC = 0x0
1766 NFTA_LOOKUP_SET = 0x1
1767 NFTA_LOOKUP_SREG = 0x2
1768 NFTA_LOOKUP_DREG = 0x3
1769 NFTA_LOOKUP_SET_ID = 0x4
1770 NFTA_LOOKUP_FLAGS = 0x5
1771 NFT_DYNSET_OP_ADD = 0x0
1772 NFT_DYNSET_OP_UPDATE = 0x1
1773 NFT_DYNSET_F_INV = 0x1
1774 NFTA_DYNSET_UNSPEC = 0x0
1775 NFTA_DYNSET_SET_NAME = 0x1
1776 NFTA_DYNSET_SET_ID = 0x2
1777 NFTA_DYNSET_OP = 0x3
1778 NFTA_DYNSET_SREG_KEY = 0x4
1779 NFTA_DYNSET_SREG_DATA = 0x5
1780 NFTA_DYNSET_TIMEOUT = 0x6
1781 NFTA_DYNSET_EXPR = 0x7
1782 NFTA_DYNSET_PAD = 0x8
1783 NFTA_DYNSET_FLAGS = 0x9
1784 NFT_PAYLOAD_LL_HEADER = 0x0
1785 NFT_PAYLOAD_NETWORK_HEADER = 0x1
1786 NFT_PAYLOAD_TRANSPORT_HEADER = 0x2
1787 NFT_PAYLOAD_CSUM_NONE = 0x0
1788 NFT_PAYLOAD_CSUM_INET = 0x1
1789 NFT_PAYLOAD_L4CSUM_PSEUDOHDR = 0x1
1790 NFTA_PAYLOAD_UNSPEC = 0x0
1791 NFTA_PAYLOAD_DREG = 0x1
1792 NFTA_PAYLOAD_BASE = 0x2
1793 NFTA_PAYLOAD_OFFSET = 0x3
1794 NFTA_PAYLOAD_LEN = 0x4
1795 NFTA_PAYLOAD_SREG = 0x5
1796 NFTA_PAYLOAD_CSUM_TYPE = 0x6
1797 NFTA_PAYLOAD_CSUM_OFFSET = 0x7
1798 NFTA_PAYLOAD_CSUM_FLAGS = 0x8
1799 NFT_EXTHDR_F_PRESENT = 0x1
1800 NFT_EXTHDR_OP_IPV6 = 0x0
1801 NFT_EXTHDR_OP_TCPOPT = 0x1
1802 NFTA_EXTHDR_UNSPEC = 0x0
1803 NFTA_EXTHDR_DREG = 0x1
1804 NFTA_EXTHDR_TYPE = 0x2
1805 NFTA_EXTHDR_OFFSET = 0x3
1806 NFTA_EXTHDR_LEN = 0x4
1807 NFTA_EXTHDR_FLAGS = 0x5
1808 NFTA_EXTHDR_OP = 0x6
1809 NFTA_EXTHDR_SREG = 0x7
1810 NFT_META_LEN = 0x0
1811 NFT_META_PROTOCOL = 0x1
1812 NFT_META_PRIORITY = 0x2
1813 NFT_META_MARK = 0x3
1814 NFT_META_IIF = 0x4
1815 NFT_META_OIF = 0x5
1816 NFT_META_IIFNAME = 0x6
1817 NFT_META_OIFNAME = 0x7
1818 NFT_META_IIFTYPE = 0x8
1819 NFT_META_OIFTYPE = 0x9
1820 NFT_META_SKUID = 0xa
1821 NFT_META_SKGID = 0xb
1822 NFT_META_NFTRACE = 0xc
1823 NFT_META_RTCLASSID = 0xd
1824 NFT_META_SECMARK = 0xe
1825 NFT_META_NFPROTO = 0xf
1826 NFT_META_L4PROTO = 0x10
1827 NFT_META_BRI_IIFNAME = 0x11
1828 NFT_META_BRI_OIFNAME = 0x12
1829 NFT_META_PKTTYPE = 0x13
1830 NFT_META_CPU = 0x14
1831 NFT_META_IIFGROUP = 0x15
1832 NFT_META_OIFGROUP = 0x16
1833 NFT_META_CGROUP = 0x17
1834 NFT_META_PRANDOM = 0x18
1835 NFT_RT_CLASSID = 0x0
1836 NFT_RT_NEXTHOP4 = 0x1
1837 NFT_RT_NEXTHOP6 = 0x2
1838 NFT_RT_TCPMSS = 0x3
1839 NFT_HASH_JENKINS = 0x0
1840 NFT_HASH_SYM = 0x1
1841 NFTA_HASH_UNSPEC = 0x0
1842 NFTA_HASH_SREG = 0x1
1843 NFTA_HASH_DREG = 0x2
1844 NFTA_HASH_LEN = 0x3
1845 NFTA_HASH_MODULUS = 0x4
1846 NFTA_HASH_SEED = 0x5
1847 NFTA_HASH_OFFSET = 0x6
1848 NFTA_HASH_TYPE = 0x7
1849 NFTA_META_UNSPEC = 0x0
1850 NFTA_META_DREG = 0x1
1851 NFTA_META_KEY = 0x2
1852 NFTA_META_SREG = 0x3
1853 NFTA_RT_UNSPEC = 0x0
1854 NFTA_RT_DREG = 0x1
1855 NFTA_RT_KEY = 0x2
1856 NFT_CT_STATE = 0x0
1857 NFT_CT_DIRECTION = 0x1
1858 NFT_CT_STATUS = 0x2
1859 NFT_CT_MARK = 0x3
1860 NFT_CT_SECMARK = 0x4
1861 NFT_CT_EXPIRATION = 0x5
1862 NFT_CT_HELPER = 0x6
1863 NFT_CT_L3PROTOCOL = 0x7
1864 NFT_CT_SRC = 0x8
1865 NFT_CT_DST = 0x9
1866 NFT_CT_PROTOCOL = 0xa
1867 NFT_CT_PROTO_SRC = 0xb
1868 NFT_CT_PROTO_DST = 0xc
1869 NFT_CT_LABELS = 0xd
1870 NFT_CT_PKTS = 0xe
1871 NFT_CT_BYTES = 0xf
1872 NFT_CT_AVGPKT = 0x10
1873 NFT_CT_ZONE = 0x11
1874 NFT_CT_EVENTMASK = 0x12
1875 NFTA_CT_UNSPEC = 0x0
1876 NFTA_CT_DREG = 0x1
1877 NFTA_CT_KEY = 0x2
1878 NFTA_CT_DIRECTION = 0x3
1879 NFTA_CT_SREG = 0x4
1880 NFT_LIMIT_PKTS = 0x0
1881 NFT_LIMIT_PKT_BYTES = 0x1
1882 NFT_LIMIT_F_INV = 0x1
1883 NFTA_LIMIT_UNSPEC = 0x0
1884 NFTA_LIMIT_RATE = 0x1
1885 NFTA_LIMIT_UNIT = 0x2
1886 NFTA_LIMIT_BURST = 0x3
1887 NFTA_LIMIT_TYPE = 0x4
1888 NFTA_LIMIT_FLAGS = 0x5
1889 NFTA_LIMIT_PAD = 0x6
1890 NFTA_COUNTER_UNSPEC = 0x0
1891 NFTA_COUNTER_BYTES = 0x1
1892 NFTA_COUNTER_PACKETS = 0x2
1893 NFTA_COUNTER_PAD = 0x3
1894 NFTA_LOG_UNSPEC = 0x0
1895 NFTA_LOG_GROUP = 0x1
1896 NFTA_LOG_PREFIX = 0x2
1897 NFTA_LOG_SNAPLEN = 0x3
1898 NFTA_LOG_QTHRESHOLD = 0x4
1899 NFTA_LOG_LEVEL = 0x5
1900 NFTA_LOG_FLAGS = 0x6
1901 NFTA_QUEUE_UNSPEC = 0x0
1902 NFTA_QUEUE_NUM = 0x1
1903 NFTA_QUEUE_TOTAL = 0x2
1904 NFTA_QUEUE_FLAGS = 0x3
1905 NFTA_QUEUE_SREG_QNUM = 0x4
1906 NFT_QUOTA_F_INV = 0x1
1907 NFT_QUOTA_F_DEPLETED = 0x2
1908 NFTA_QUOTA_UNSPEC = 0x0
1909 NFTA_QUOTA_BYTES = 0x1
1910 NFTA_QUOTA_FLAGS = 0x2
1911 NFTA_QUOTA_PAD = 0x3
1912 NFTA_QUOTA_CONSUMED = 0x4
1913 NFT_REJECT_ICMP_UNREACH = 0x0
1914 NFT_REJECT_TCP_RST = 0x1
1915 NFT_REJECT_ICMPX_UNREACH = 0x2
1916 NFT_REJECT_ICMPX_NO_ROUTE = 0x0
1917 NFT_REJECT_ICMPX_PORT_UNREACH = 0x1
1918 NFT_REJECT_ICMPX_HOST_UNREACH = 0x2
1919 NFT_REJECT_ICMPX_ADMIN_PROHIBITED = 0x3
1920 NFTA_REJECT_UNSPEC = 0x0
1921 NFTA_REJECT_TYPE = 0x1
1922 NFTA_REJECT_ICMP_CODE = 0x2
1923 NFT_NAT_SNAT = 0x0
1924 NFT_NAT_DNAT = 0x1
1925 NFTA_NAT_UNSPEC = 0x0
1926 NFTA_NAT_TYPE = 0x1
1927 NFTA_NAT_FAMILY = 0x2
1928 NFTA_NAT_REG_ADDR_MIN = 0x3
1929 NFTA_NAT_REG_ADDR_MAX = 0x4
1930 NFTA_NAT_REG_PROTO_MIN = 0x5
1931 NFTA_NAT_REG_PROTO_MAX = 0x6
1932 NFTA_NAT_FLAGS = 0x7
1933 NFTA_MASQ_UNSPEC = 0x0
1934 NFTA_MASQ_FLAGS = 0x1
1935 NFTA_MASQ_REG_PROTO_MIN = 0x2
1936 NFTA_MASQ_REG_PROTO_MAX = 0x3
1937 NFTA_REDIR_UNSPEC = 0x0
1938 NFTA_REDIR_REG_PROTO_MIN = 0x1
1939 NFTA_REDIR_REG_PROTO_MAX = 0x2
1940 NFTA_REDIR_FLAGS = 0x3
1941 NFTA_DUP_UNSPEC = 0x0
1942 NFTA_DUP_SREG_ADDR = 0x1
1943 NFTA_DUP_SREG_DEV = 0x2
1944 NFTA_FWD_UNSPEC = 0x0
1945 NFTA_FWD_SREG_DEV = 0x1
1946 NFTA_OBJREF_UNSPEC = 0x0
1947 NFTA_OBJREF_IMM_TYPE = 0x1
1948 NFTA_OBJREF_IMM_NAME = 0x2
1949 NFTA_OBJREF_SET_SREG = 0x3
1950 NFTA_OBJREF_SET_NAME = 0x4
1951 NFTA_OBJREF_SET_ID = 0x5
1952 NFTA_GEN_UNSPEC = 0x0
1953 NFTA_GEN_ID = 0x1
1954 NFTA_GEN_PROC_PID = 0x2
1955 NFTA_GEN_PROC_NAME = 0x3
1956 NFTA_FIB_UNSPEC = 0x0
1957 NFTA_FIB_DREG = 0x1
1958 NFTA_FIB_RESULT = 0x2
1959 NFTA_FIB_FLAGS = 0x3
1960 NFT_FIB_RESULT_UNSPEC = 0x0
1961 NFT_FIB_RESULT_OIF = 0x1
1962 NFT_FIB_RESULT_OIFNAME = 0x2
1963 NFT_FIB_RESULT_ADDRTYPE = 0x3
1964 NFTA_FIB_F_SADDR = 0x1
1965 NFTA_FIB_F_DADDR = 0x2
1966 NFTA_FIB_F_MARK = 0x4
1967 NFTA_FIB_F_IIF = 0x8
1968 NFTA_FIB_F_OIF = 0x10
1969 NFTA_FIB_F_PRESENT = 0x20
1970 NFTA_CT_HELPER_UNSPEC = 0x0
1971 NFTA_CT_HELPER_NAME = 0x1
1972 NFTA_CT_HELPER_L3PROTO = 0x2
1973 NFTA_CT_HELPER_L4PROTO = 0x3
1974 NFTA_OBJ_UNSPEC = 0x0
1975 NFTA_OBJ_TABLE = 0x1
1976 NFTA_OBJ_NAME = 0x2
1977 NFTA_OBJ_TYPE = 0x3
1978 NFTA_OBJ_DATA = 0x4
1979 NFTA_OBJ_USE = 0x5
1980 NFTA_TRACE_UNSPEC = 0x0
1981 NFTA_TRACE_TABLE = 0x1
1982 NFTA_TRACE_CHAIN = 0x2
1983 NFTA_TRACE_RULE_HANDLE = 0x3
1984 NFTA_TRACE_TYPE = 0x4
1985 NFTA_TRACE_VERDICT = 0x5
1986 NFTA_TRACE_ID = 0x6
1987 NFTA_TRACE_LL_HEADER = 0x7
1988 NFTA_TRACE_NETWORK_HEADER = 0x8
1989 NFTA_TRACE_TRANSPORT_HEADER = 0x9
1990 NFTA_TRACE_IIF = 0xa
1991 NFTA_TRACE_IIFTYPE = 0xb
1992 NFTA_TRACE_OIF = 0xc
1993 NFTA_TRACE_OIFTYPE = 0xd
1994 NFTA_TRACE_MARK = 0xe
1995 NFTA_TRACE_NFPROTO = 0xf
1996 NFTA_TRACE_POLICY = 0x10
1997 NFTA_TRACE_PAD = 0x11
1998 NFT_TRACETYPE_UNSPEC = 0x0
1999 NFT_TRACETYPE_POLICY = 0x1
2000 NFT_TRACETYPE_RETURN = 0x2
2001 NFT_TRACETYPE_RULE = 0x3
2002 NFTA_NG_UNSPEC = 0x0
2003 NFTA_NG_DREG = 0x1
2004 NFTA_NG_MODULUS = 0x2
2005 NFTA_NG_TYPE = 0x3
2006 NFTA_NG_OFFSET = 0x4
2007 NFT_NG_INCREMENTAL = 0x0
2008 NFT_NG_RANDOM = 0x1
2009)
2010
2011type RTCTime struct {
2012 Sec int32
2013 Min int32
2014 Hour int32
2015 Mday int32
2016 Mon int32
2017 Year int32
2018 Wday int32
2019 Yday int32
2020 Isdst int32
2021}
2022
2023type RTCWkAlrm struct {
2024 Enabled uint8
2025 Pending uint8
2026 Time RTCTime
2027}
2028
2029type RTCPLLInfo struct {
2030 Ctrl int32
2031 Value int32
2032 Max int32
2033 Min int32
2034 Posmult int32
2035 Negmult int32
2036 Clock int64
2037}
2038
2039type BlkpgIoctlArg struct {
2040 Op int32
2041 Flags int32
2042 Datalen int32
2043 Data *byte
2044}
2045
2046type BlkpgPartition struct {
2047 Start int64
2048 Length int64
2049 Pno int32
2050 Devname [64]uint8
2051 Volname [64]uint8
2052 _ [4]byte
2053}
2054
2055const (
2056 BLKPG = 0x1269
2057 BLKPG_ADD_PARTITION = 0x1
2058 BLKPG_DEL_PARTITION = 0x2
2059 BLKPG_RESIZE_PARTITION = 0x3
2060)
2061
2062const (
2063 NETNSA_NONE = 0x0
2064 NETNSA_NSID = 0x1
2065 NETNSA_PID = 0x2
2066 NETNSA_FD = 0x3
2067)
2068
2069type XDPRingOffset struct {
2070 Producer uint64
2071 Consumer uint64
2072 Desc uint64
2073}
2074
2075type XDPMmapOffsets struct {
2076 Rx XDPRingOffset
2077 Tx XDPRingOffset
2078 Fr XDPRingOffset
2079 Cr XDPRingOffset
2080}
2081
2082type XDPUmemReg struct {
2083 Addr uint64
2084 Len uint64
2085 Size uint32
2086 Headroom uint32
2087}
2088
2089type XDPStatistics struct {
2090 Rx_dropped uint64
2091 Rx_invalid_descs uint64
2092 Tx_invalid_descs uint64
2093}
2094
2095type XDPDesc struct {
2096 Addr uint64
2097 Len uint32
2098 Options uint32
2099}
2100
2101const (
2102 NCSI_CMD_UNSPEC = 0x0
2103 NCSI_CMD_PKG_INFO = 0x1
2104 NCSI_CMD_SET_INTERFACE = 0x2
2105 NCSI_CMD_CLEAR_INTERFACE = 0x3
2106 NCSI_ATTR_UNSPEC = 0x0
2107 NCSI_ATTR_IFINDEX = 0x1
2108 NCSI_ATTR_PACKAGE_LIST = 0x2
2109 NCSI_ATTR_PACKAGE_ID = 0x3
2110 NCSI_ATTR_CHANNEL_ID = 0x4
2111 NCSI_PKG_ATTR_UNSPEC = 0x0
2112 NCSI_PKG_ATTR = 0x1
2113 NCSI_PKG_ATTR_ID = 0x2
2114 NCSI_PKG_ATTR_FORCED = 0x3
2115 NCSI_PKG_ATTR_CHANNEL_LIST = 0x4
2116 NCSI_CHANNEL_ATTR_UNSPEC = 0x0
2117 NCSI_CHANNEL_ATTR = 0x1
2118 NCSI_CHANNEL_ATTR_ID = 0x2
2119 NCSI_CHANNEL_ATTR_VERSION_MAJOR = 0x3
2120 NCSI_CHANNEL_ATTR_VERSION_MINOR = 0x4
2121 NCSI_CHANNEL_ATTR_VERSION_STR = 0x5
2122 NCSI_CHANNEL_ATTR_LINK_STATE = 0x6
2123 NCSI_CHANNEL_ATTR_ACTIVE = 0x7
2124 NCSI_CHANNEL_ATTR_FORCED = 0x8
2125 NCSI_CHANNEL_ATTR_VLAN_LIST = 0x9
2126 NCSI_CHANNEL_ATTR_VLAN_ID = 0xa
2127)
2128
2129type ScmTimestamping struct {
2130 Ts [3]Timespec
2131}
2132
2133const (
2134 SOF_TIMESTAMPING_TX_HARDWARE = 0x1
2135 SOF_TIMESTAMPING_TX_SOFTWARE = 0x2
2136 SOF_TIMESTAMPING_RX_HARDWARE = 0x4
2137 SOF_TIMESTAMPING_RX_SOFTWARE = 0x8
2138 SOF_TIMESTAMPING_SOFTWARE = 0x10
2139 SOF_TIMESTAMPING_SYS_HARDWARE = 0x20
2140 SOF_TIMESTAMPING_RAW_HARDWARE = 0x40
2141 SOF_TIMESTAMPING_OPT_ID = 0x80
2142 SOF_TIMESTAMPING_TX_SCHED = 0x100
2143 SOF_TIMESTAMPING_TX_ACK = 0x200
2144 SOF_TIMESTAMPING_OPT_CMSG = 0x400
2145 SOF_TIMESTAMPING_OPT_TSONLY = 0x800
2146 SOF_TIMESTAMPING_OPT_STATS = 0x1000
2147 SOF_TIMESTAMPING_OPT_PKTINFO = 0x2000
2148 SOF_TIMESTAMPING_OPT_TX_SWHW = 0x4000
2149
2150 SOF_TIMESTAMPING_LAST = 0x4000
2151 SOF_TIMESTAMPING_MASK = 0x7fff
2152
2153 SCM_TSTAMP_SND = 0x0
2154 SCM_TSTAMP_SCHED = 0x1
2155 SCM_TSTAMP_ACK = 0x2
2156)
2157
2158type SockExtendedErr struct {
2159 Errno uint32
2160 Origin uint8
2161 Type uint8
2162 Code uint8
2163 Pad uint8
2164 Info uint32
2165 Data uint32
2166}
Don Newton7577f072020-01-06 12:41:11 -05002167
2168type FanotifyEventMetadata struct {
2169 Event_len uint32
2170 Vers uint8
2171 Reserved uint8
2172 Metadata_len uint16
2173 Mask uint64
2174 Fd int32
2175 Pid int32
2176}
2177
2178type FanotifyResponse struct {
2179 Fd int32
2180 Response uint32
2181}
2182
2183const (
2184 CRYPTO_MSG_BASE = 0x10
2185 CRYPTO_MSG_NEWALG = 0x10
2186 CRYPTO_MSG_DELALG = 0x11
2187 CRYPTO_MSG_UPDATEALG = 0x12
2188 CRYPTO_MSG_GETALG = 0x13
2189 CRYPTO_MSG_DELRNG = 0x14
2190 CRYPTO_MSG_GETSTAT = 0x15
2191)
2192
2193const (
2194 CRYPTOCFGA_UNSPEC = 0x0
2195 CRYPTOCFGA_PRIORITY_VAL = 0x1
2196 CRYPTOCFGA_REPORT_LARVAL = 0x2
2197 CRYPTOCFGA_REPORT_HASH = 0x3
2198 CRYPTOCFGA_REPORT_BLKCIPHER = 0x4
2199 CRYPTOCFGA_REPORT_AEAD = 0x5
2200 CRYPTOCFGA_REPORT_COMPRESS = 0x6
2201 CRYPTOCFGA_REPORT_RNG = 0x7
2202 CRYPTOCFGA_REPORT_CIPHER = 0x8
2203 CRYPTOCFGA_REPORT_AKCIPHER = 0x9
2204 CRYPTOCFGA_REPORT_KPP = 0xa
2205 CRYPTOCFGA_REPORT_ACOMP = 0xb
2206 CRYPTOCFGA_STAT_LARVAL = 0xc
2207 CRYPTOCFGA_STAT_HASH = 0xd
2208 CRYPTOCFGA_STAT_BLKCIPHER = 0xe
2209 CRYPTOCFGA_STAT_AEAD = 0xf
2210 CRYPTOCFGA_STAT_COMPRESS = 0x10
2211 CRYPTOCFGA_STAT_RNG = 0x11
2212 CRYPTOCFGA_STAT_CIPHER = 0x12
2213 CRYPTOCFGA_STAT_AKCIPHER = 0x13
2214 CRYPTOCFGA_STAT_KPP = 0x14
2215 CRYPTOCFGA_STAT_ACOMP = 0x15
2216)
2217
2218type CryptoUserAlg struct {
2219 Name [64]int8
2220 Driver_name [64]int8
2221 Module_name [64]int8
2222 Type uint32
2223 Mask uint32
2224 Refcnt uint32
2225 Flags uint32
2226}
2227
2228type CryptoStatAEAD struct {
2229 Type [64]int8
2230 Encrypt_cnt uint64
2231 Encrypt_tlen uint64
2232 Decrypt_cnt uint64
2233 Decrypt_tlen uint64
2234 Err_cnt uint64
2235}
2236
2237type CryptoStatAKCipher struct {
2238 Type [64]int8
2239 Encrypt_cnt uint64
2240 Encrypt_tlen uint64
2241 Decrypt_cnt uint64
2242 Decrypt_tlen uint64
2243 Verify_cnt uint64
2244 Sign_cnt uint64
2245 Err_cnt uint64
2246}
2247
2248type CryptoStatCipher struct {
2249 Type [64]int8
2250 Encrypt_cnt uint64
2251 Encrypt_tlen uint64
2252 Decrypt_cnt uint64
2253 Decrypt_tlen uint64
2254 Err_cnt uint64
2255}
2256
2257type CryptoStatCompress struct {
2258 Type [64]int8
2259 Compress_cnt uint64
2260 Compress_tlen uint64
2261 Decompress_cnt uint64
2262 Decompress_tlen uint64
2263 Err_cnt uint64
2264}
2265
2266type CryptoStatHash struct {
2267 Type [64]int8
2268 Hash_cnt uint64
2269 Hash_tlen uint64
2270 Err_cnt uint64
2271}
2272
2273type CryptoStatKPP struct {
2274 Type [64]int8
2275 Setsecret_cnt uint64
2276 Generate_public_key_cnt uint64
2277 Compute_shared_secret_cnt uint64
2278 Err_cnt uint64
2279}
2280
2281type CryptoStatRNG struct {
2282 Type [64]int8
2283 Generate_cnt uint64
2284 Generate_tlen uint64
2285 Seed_cnt uint64
2286 Err_cnt uint64
2287}
2288
2289type CryptoStatLarval struct {
2290 Type [64]int8
2291}
2292
2293type CryptoReportLarval struct {
2294 Type [64]int8
2295}
2296
2297type CryptoReportHash struct {
2298 Type [64]int8
2299 Blocksize uint32
2300 Digestsize uint32
2301}
2302
2303type CryptoReportCipher struct {
2304 Type [64]int8
2305 Blocksize uint32
2306 Min_keysize uint32
2307 Max_keysize uint32
2308}
2309
2310type CryptoReportBlkCipher struct {
2311 Type [64]int8
2312 Geniv [64]int8
2313 Blocksize uint32
2314 Min_keysize uint32
2315 Max_keysize uint32
2316 Ivsize uint32
2317}
2318
2319type CryptoReportAEAD struct {
2320 Type [64]int8
2321 Geniv [64]int8
2322 Blocksize uint32
2323 Maxauthsize uint32
2324 Ivsize uint32
2325}
2326
2327type CryptoReportComp struct {
2328 Type [64]int8
2329}
2330
2331type CryptoReportRNG struct {
2332 Type [64]int8
2333 Seedsize uint32
2334}
2335
2336type CryptoReportAKCipher struct {
2337 Type [64]int8
2338}
2339
2340type CryptoReportKPP struct {
2341 Type [64]int8
2342}
2343
2344type CryptoReportAcomp struct {
2345 Type [64]int8
2346}
2347
2348const (
2349 BPF_REG_0 = 0x0
2350 BPF_REG_1 = 0x1
2351 BPF_REG_2 = 0x2
2352 BPF_REG_3 = 0x3
2353 BPF_REG_4 = 0x4
2354 BPF_REG_5 = 0x5
2355 BPF_REG_6 = 0x6
2356 BPF_REG_7 = 0x7
2357 BPF_REG_8 = 0x8
2358 BPF_REG_9 = 0x9
2359 BPF_REG_10 = 0xa
2360 BPF_MAP_CREATE = 0x0
2361 BPF_MAP_LOOKUP_ELEM = 0x1
2362 BPF_MAP_UPDATE_ELEM = 0x2
2363 BPF_MAP_DELETE_ELEM = 0x3
2364 BPF_MAP_GET_NEXT_KEY = 0x4
2365 BPF_PROG_LOAD = 0x5
2366 BPF_OBJ_PIN = 0x6
2367 BPF_OBJ_GET = 0x7
2368 BPF_PROG_ATTACH = 0x8
2369 BPF_PROG_DETACH = 0x9
2370 BPF_PROG_TEST_RUN = 0xa
2371 BPF_PROG_GET_NEXT_ID = 0xb
2372 BPF_MAP_GET_NEXT_ID = 0xc
2373 BPF_PROG_GET_FD_BY_ID = 0xd
2374 BPF_MAP_GET_FD_BY_ID = 0xe
2375 BPF_OBJ_GET_INFO_BY_FD = 0xf
2376 BPF_PROG_QUERY = 0x10
2377 BPF_RAW_TRACEPOINT_OPEN = 0x11
2378 BPF_BTF_LOAD = 0x12
2379 BPF_BTF_GET_FD_BY_ID = 0x13
2380 BPF_TASK_FD_QUERY = 0x14
2381 BPF_MAP_LOOKUP_AND_DELETE_ELEM = 0x15
2382 BPF_MAP_TYPE_UNSPEC = 0x0
2383 BPF_MAP_TYPE_HASH = 0x1
2384 BPF_MAP_TYPE_ARRAY = 0x2
2385 BPF_MAP_TYPE_PROG_ARRAY = 0x3
2386 BPF_MAP_TYPE_PERF_EVENT_ARRAY = 0x4
2387 BPF_MAP_TYPE_PERCPU_HASH = 0x5
2388 BPF_MAP_TYPE_PERCPU_ARRAY = 0x6
2389 BPF_MAP_TYPE_STACK_TRACE = 0x7
2390 BPF_MAP_TYPE_CGROUP_ARRAY = 0x8
2391 BPF_MAP_TYPE_LRU_HASH = 0x9
2392 BPF_MAP_TYPE_LRU_PERCPU_HASH = 0xa
2393 BPF_MAP_TYPE_LPM_TRIE = 0xb
2394 BPF_MAP_TYPE_ARRAY_OF_MAPS = 0xc
2395 BPF_MAP_TYPE_HASH_OF_MAPS = 0xd
2396 BPF_MAP_TYPE_DEVMAP = 0xe
2397 BPF_MAP_TYPE_SOCKMAP = 0xf
2398 BPF_MAP_TYPE_CPUMAP = 0x10
2399 BPF_MAP_TYPE_XSKMAP = 0x11
2400 BPF_MAP_TYPE_SOCKHASH = 0x12
2401 BPF_MAP_TYPE_CGROUP_STORAGE = 0x13
2402 BPF_MAP_TYPE_REUSEPORT_SOCKARRAY = 0x14
2403 BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE = 0x15
2404 BPF_MAP_TYPE_QUEUE = 0x16
2405 BPF_MAP_TYPE_STACK = 0x17
2406 BPF_PROG_TYPE_UNSPEC = 0x0
2407 BPF_PROG_TYPE_SOCKET_FILTER = 0x1
2408 BPF_PROG_TYPE_KPROBE = 0x2
2409 BPF_PROG_TYPE_SCHED_CLS = 0x3
2410 BPF_PROG_TYPE_SCHED_ACT = 0x4
2411 BPF_PROG_TYPE_TRACEPOINT = 0x5
2412 BPF_PROG_TYPE_XDP = 0x6
2413 BPF_PROG_TYPE_PERF_EVENT = 0x7
2414 BPF_PROG_TYPE_CGROUP_SKB = 0x8
2415 BPF_PROG_TYPE_CGROUP_SOCK = 0x9
2416 BPF_PROG_TYPE_LWT_IN = 0xa
2417 BPF_PROG_TYPE_LWT_OUT = 0xb
2418 BPF_PROG_TYPE_LWT_XMIT = 0xc
2419 BPF_PROG_TYPE_SOCK_OPS = 0xd
2420 BPF_PROG_TYPE_SK_SKB = 0xe
2421 BPF_PROG_TYPE_CGROUP_DEVICE = 0xf
2422 BPF_PROG_TYPE_SK_MSG = 0x10
2423 BPF_PROG_TYPE_RAW_TRACEPOINT = 0x11
2424 BPF_PROG_TYPE_CGROUP_SOCK_ADDR = 0x12
2425 BPF_PROG_TYPE_LWT_SEG6LOCAL = 0x13
2426 BPF_PROG_TYPE_LIRC_MODE2 = 0x14
2427 BPF_PROG_TYPE_SK_REUSEPORT = 0x15
2428 BPF_PROG_TYPE_FLOW_DISSECTOR = 0x16
2429 BPF_CGROUP_INET_INGRESS = 0x0
2430 BPF_CGROUP_INET_EGRESS = 0x1
2431 BPF_CGROUP_INET_SOCK_CREATE = 0x2
2432 BPF_CGROUP_SOCK_OPS = 0x3
2433 BPF_SK_SKB_STREAM_PARSER = 0x4
2434 BPF_SK_SKB_STREAM_VERDICT = 0x5
2435 BPF_CGROUP_DEVICE = 0x6
2436 BPF_SK_MSG_VERDICT = 0x7
2437 BPF_CGROUP_INET4_BIND = 0x8
2438 BPF_CGROUP_INET6_BIND = 0x9
2439 BPF_CGROUP_INET4_CONNECT = 0xa
2440 BPF_CGROUP_INET6_CONNECT = 0xb
2441 BPF_CGROUP_INET4_POST_BIND = 0xc
2442 BPF_CGROUP_INET6_POST_BIND = 0xd
2443 BPF_CGROUP_UDP4_SENDMSG = 0xe
2444 BPF_CGROUP_UDP6_SENDMSG = 0xf
2445 BPF_LIRC_MODE2 = 0x10
2446 BPF_FLOW_DISSECTOR = 0x11
2447 BPF_STACK_BUILD_ID_EMPTY = 0x0
2448 BPF_STACK_BUILD_ID_VALID = 0x1
2449 BPF_STACK_BUILD_ID_IP = 0x2
2450 BPF_ADJ_ROOM_NET = 0x0
2451 BPF_HDR_START_MAC = 0x0
2452 BPF_HDR_START_NET = 0x1
2453 BPF_LWT_ENCAP_SEG6 = 0x0
2454 BPF_LWT_ENCAP_SEG6_INLINE = 0x1
2455 BPF_OK = 0x0
2456 BPF_DROP = 0x2
2457 BPF_REDIRECT = 0x7
2458 BPF_SOCK_OPS_VOID = 0x0
2459 BPF_SOCK_OPS_TIMEOUT_INIT = 0x1
2460 BPF_SOCK_OPS_RWND_INIT = 0x2
2461 BPF_SOCK_OPS_TCP_CONNECT_CB = 0x3
2462 BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB = 0x4
2463 BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB = 0x5
2464 BPF_SOCK_OPS_NEEDS_ECN = 0x6
2465 BPF_SOCK_OPS_BASE_RTT = 0x7
2466 BPF_SOCK_OPS_RTO_CB = 0x8
2467 BPF_SOCK_OPS_RETRANS_CB = 0x9
2468 BPF_SOCK_OPS_STATE_CB = 0xa
2469 BPF_SOCK_OPS_TCP_LISTEN_CB = 0xb
2470 BPF_TCP_ESTABLISHED = 0x1
2471 BPF_TCP_SYN_SENT = 0x2
2472 BPF_TCP_SYN_RECV = 0x3
2473 BPF_TCP_FIN_WAIT1 = 0x4
2474 BPF_TCP_FIN_WAIT2 = 0x5
2475 BPF_TCP_TIME_WAIT = 0x6
2476 BPF_TCP_CLOSE = 0x7
2477 BPF_TCP_CLOSE_WAIT = 0x8
2478 BPF_TCP_LAST_ACK = 0x9
2479 BPF_TCP_LISTEN = 0xa
2480 BPF_TCP_CLOSING = 0xb
2481 BPF_TCP_NEW_SYN_RECV = 0xc
2482 BPF_TCP_MAX_STATES = 0xd
2483 BPF_FIB_LKUP_RET_SUCCESS = 0x0
2484 BPF_FIB_LKUP_RET_BLACKHOLE = 0x1
2485 BPF_FIB_LKUP_RET_UNREACHABLE = 0x2
2486 BPF_FIB_LKUP_RET_PROHIBIT = 0x3
2487 BPF_FIB_LKUP_RET_NOT_FWDED = 0x4
2488 BPF_FIB_LKUP_RET_FWD_DISABLED = 0x5
2489 BPF_FIB_LKUP_RET_UNSUPP_LWT = 0x6
2490 BPF_FIB_LKUP_RET_NO_NEIGH = 0x7
2491 BPF_FIB_LKUP_RET_FRAG_NEEDED = 0x8
2492 BPF_FD_TYPE_RAW_TRACEPOINT = 0x0
2493 BPF_FD_TYPE_TRACEPOINT = 0x1
2494 BPF_FD_TYPE_KPROBE = 0x2
2495 BPF_FD_TYPE_KRETPROBE = 0x3
2496 BPF_FD_TYPE_UPROBE = 0x4
2497 BPF_FD_TYPE_URETPROBE = 0x5
2498)
2499
2500type CapUserHeader struct {
2501 Version uint32
2502 Pid int32
2503}
2504
2505type CapUserData struct {
2506 Effective uint32
2507 Permitted uint32
2508 Inheritable uint32
2509}
2510
2511const (
2512 LINUX_CAPABILITY_VERSION_1 = 0x19980330
2513 LINUX_CAPABILITY_VERSION_2 = 0x20071026
2514 LINUX_CAPABILITY_VERSION_3 = 0x20080522
2515)
2516
2517const (
2518 LO_FLAGS_READ_ONLY = 0x1
2519 LO_FLAGS_AUTOCLEAR = 0x4
2520 LO_FLAGS_PARTSCAN = 0x8
2521 LO_FLAGS_DIRECT_IO = 0x10
2522)
2523
2524type LoopInfo struct {
2525 Number int32
2526 Device uint64
2527 Inode uint64
2528 Rdevice uint64
2529 Offset int32
2530 Encrypt_type int32
2531 Encrypt_key_size int32
2532 Flags int32
2533 Name [64]int8
2534 Encrypt_key [32]uint8
2535 Init [2]uint64
2536 Reserved [4]int8
2537 _ [4]byte
2538}
2539type LoopInfo64 struct {
2540 Device uint64
2541 Inode uint64
2542 Rdevice uint64
2543 Offset uint64
2544 Sizelimit uint64
2545 Number uint32
2546 Encrypt_type uint32
2547 Encrypt_key_size uint32
2548 Flags uint32
2549 File_name [64]uint8
2550 Crypt_name [64]uint8
2551 Encrypt_key [32]uint8
2552 Init [2]uint64
2553}
2554
2555type TIPCSocketAddr struct {
2556 Ref uint32
2557 Node uint32
2558}
2559
2560type TIPCServiceRange struct {
2561 Type uint32
2562 Lower uint32
2563 Upper uint32
2564}
2565
2566type TIPCServiceName struct {
2567 Type uint32
2568 Instance uint32
2569 Domain uint32
2570}
2571
2572type TIPCSubscr struct {
2573 Seq TIPCServiceRange
2574 Timeout uint32
2575 Filter uint32
2576 Handle [8]int8
2577}
2578
2579type TIPCEvent struct {
2580 Event uint32
2581 Lower uint32
2582 Upper uint32
2583 Port TIPCSocketAddr
2584 S TIPCSubscr
2585}
2586
2587type TIPCGroupReq struct {
2588 Type uint32
2589 Instance uint32
2590 Scope uint32
2591 Flags uint32
2592}
2593
2594type TIPCSIOCLNReq struct {
2595 Peer uint32
2596 Id uint32
2597 Linkname [68]int8
2598}
2599
2600type TIPCSIOCNodeIDReq struct {
2601 Peer uint32
2602 Id [16]int8
2603}
2604
2605const (
2606 TIPC_CLUSTER_SCOPE = 0x2
2607 TIPC_NODE_SCOPE = 0x3
2608)