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