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