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