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