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