// Copyright 2009 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

// +build ignore

/*
Input to cgo -godefs.  See README.md
*/

// +godefs map struct_in_addr [4]byte /* in_addr */
// +godefs map struct_in6_addr [16]byte /* in6_addr */

package unix

/*
#define _LARGEFILE_SOURCE
#define _LARGEFILE64_SOURCE
#define _FILE_OFFSET_BITS 64
#define _GNU_SOURCE

#include <dirent.h>
#include <poll.h>
#include <sched.h>
#include <signal.h>
#include <stdio.h>
#include <time.h>
#include <unistd.h>
#include <utime.h>

#include <netinet/in.h>
#include <netinet/tcp.h>

#include <sys/epoll.h>
#include <sys/inotify.h>
#include <sys/ioctl.h>
#include <sys/mman.h>
#include <sys/mount.h>
#include <sys/param.h>
#include <sys/ptrace.h>
#include <sys/resource.h>
#include <sys/select.h>
#include <sys/signal.h>
#include <sys/signalfd.h>
#include <sys/statfs.h>
#include <sys/statvfs.h>
#include <sys/sysinfo.h>
#include <sys/time.h>
#include <sys/timerfd.h>
#include <sys/times.h>
#include <sys/timex.h>
#include <sys/un.h>
#include <sys/user.h>
#include <sys/utsname.h>
#include <sys/wait.h>

#if defined(__sparc__)
// On sparc{,64}, the kernel defines struct termios2 itself which clashes with the
// definition in glibc. Duplicate the kernel version here.
#if defined(__arch64__)
typedef unsigned int tcflag_t;
#else
typedef unsigned long tcflag_t;
#endif

struct termios2 {
	tcflag_t c_iflag;
	tcflag_t c_oflag;
	tcflag_t c_cflag;
	tcflag_t c_lflag;
	unsigned char c_line;
	unsigned char c_cc[19];
	unsigned int c_ispeed;
	unsigned int c_ospeed;
};
#else
#include <asm/termbits.h>
#endif
#include <asm/ptrace.h>

#include <linux/blkpg.h>
#include <linux/bpf.h>
#include <linux/can.h>
#include <linux/can/raw.h>
#include <linux/capability.h>
#include <linux/cgroupstats.h>
#include <linux/cryptouser.h>
#include <linux/devlink.h>
#include <linux/dm-ioctl.h>
#include <linux/errqueue.h>
#include <linux/fanotify.h>
#include <linux/filter.h>
#include <linux/fs.h>
#include <linux/fsverity.h>
#include <linux/genetlink.h>
#include <linux/hdreg.h>
#include <linux/icmpv6.h>
#include <linux/if_alg.h>
#include <linux/if_bridge.h>
#include <linux/if_packet.h>
#include <linux/if_pppox.h>
#include <linux/if_xdp.h>
#include <linux/keyctl.h>
#include <linux/loop.h>
#include <linux/ncsi.h>
#include <linux/net_namespace.h>
#include <linux/net_tstamp.h>
#include <linux/netfilter/nf_tables.h>
#include <linux/netfilter/nf_tables_compat.h>
#include <linux/netfilter/nfnetlink.h>
#include <linux/netfilter.h>
#include <linux/netlink.h>
#include <linux/nexthop.h>
#include <linux/openat2.h>
#include <linux/perf_event.h>
#include <linux/random.h>
#include <linux/rtc.h>
#include <linux/rtnetlink.h>
#include <linux/socket.h>
#include <linux/stat.h>
#include <linux/taskstats.h>
#include <linux/tipc.h>
#include <linux/vm_sockets.h>

// abi/abi.h generated by mkall.go.
#include "abi/abi.h"

// On mips64, the glibc stat and kernel stat do not agree
#if (defined(__mips__) && _MIPS_SIM == _MIPS_SIM_ABI64)

// Use the stat defined by the kernel with a few modifications. These are:
//	* The time fields (like st_atime and st_atimensec) use the timespec
//	  struct (like st_atim) for consistency with the glibc fields.
//	* The padding fields get different names to not break compatibility.
//	* st_blocks is signed, again for compatibility.
struct stat {
	unsigned int		st_dev;
	unsigned int		st_pad1[3]; // Reserved for st_dev expansion

	unsigned long		st_ino;

	mode_t			st_mode;
	__u32			st_nlink;

	uid_t			st_uid;
	gid_t			st_gid;

	unsigned int		st_rdev;
	unsigned int		st_pad2[3]; // Reserved for st_rdev expansion

	off_t			st_size;

	// These are declared as separate fields in the kernel. Here we use
	// the timespec struct for consistency with the other stat structs.
	struct timespec		st_atim;
	struct timespec		st_mtim;
	struct timespec		st_ctim;

	unsigned int		st_blksize;
	unsigned int		st_pad4;

	long			st_blocks;
};

// These are needed because we do not include fcntl.h or sys/types.h
#include <linux/fcntl.h>
#include <linux/fadvise.h>

#else

// Use the stat defined by glibc
#include <fcntl.h>
#include <sys/types.h>

#endif

// These are defined in linux/fcntl.h, but including it globally causes
// conflicts with fcntl.h
#ifndef AT_STATX_SYNC_TYPE
# define AT_STATX_SYNC_TYPE	0x6000	// Type of synchronisation required from statx()
#endif
#ifndef AT_STATX_SYNC_AS_STAT
# define AT_STATX_SYNC_AS_STAT	0x0000	// - Do whatever stat() does
#endif
#ifndef AT_STATX_FORCE_SYNC
# define AT_STATX_FORCE_SYNC	0x2000	// - Force the attributes to be sync'd with the server
#endif
#ifndef AT_STATX_DONT_SYNC
# define AT_STATX_DONT_SYNC	0x4000	// - Don't sync attributes with the server
#endif

#ifndef AT_EACCESS
# define AT_EACCESS		0x200	// Test access permitted for effective IDs, not real IDs.
#endif

#ifdef TCSETS2
// On systems that have "struct termios2" use this as type Termios.
typedef struct termios2 termios_t;
#else
typedef struct termios termios_t;
#endif

enum {
	sizeofPtr = sizeof(void*),
};

union sockaddr_all {
	struct sockaddr s1;	// this one gets used for fields
	struct sockaddr_in s2;	// these pad it out
	struct sockaddr_in6 s3;
	struct sockaddr_un s4;
	struct sockaddr_ll s5;
	struct sockaddr_nl s6;
	struct sockaddr_pppox s7;
	struct sockaddr_l2tpip s8;
	struct sockaddr_l2tpip6 s9;
};

struct sockaddr_any {
	struct sockaddr addr;
	char pad[sizeof(union sockaddr_all) - sizeof(struct sockaddr)];
};

// copied from /usr/include/bluetooth/hci.h
struct sockaddr_hci {
        sa_family_t     hci_family;
        unsigned short  hci_dev;
        unsigned short  hci_channel;
};

// copied from /usr/include/bluetooth/bluetooth.h
#define BDADDR_BREDR           0x00
#define BDADDR_LE_PUBLIC       0x01
#define BDADDR_LE_RANDOM       0x02

// copied from /usr/include/bluetooth/l2cap.h
struct sockaddr_l2 {
	sa_family_t	l2_family;
	unsigned short	l2_psm;
	uint8_t		l2_bdaddr[6];
	unsigned short	l2_cid;
	uint8_t		l2_bdaddr_type;
};

// copied from /usr/include/net/bluetooth/rfcomm.h
struct sockaddr_rc {
	sa_family_t rc_family;
	uint8_t     rc_bdaddr[6];
	uint8_t     rc_channel;
};

// copied from /usr/include/linux/un.h
struct my_sockaddr_un {
	sa_family_t sun_family;
#if defined(__ARM_EABI__) || defined(__powerpc64__) || defined(__riscv)
	// on some platforms char is unsigned by default
	signed char sun_path[108];
#else
	char sun_path[108];
#endif
};

// copied from /usr/include/netiucv/iucv.h modified with explicit signed chars.
struct sockaddr_iucv {
	sa_family_t siucv_family;
	unsigned short siucv_port;
	unsigned int siucv_addr;
	signed char siucv_nodeid[8];
	signed char siucv_user_id[8];
	signed char siucv_name[8];
};

#ifdef __ARM_EABI__
typedef struct user_regs PtraceRegs;
#elif defined(__aarch64__)
typedef struct user_pt_regs PtraceRegs;
#elif defined(__mips__) || defined(__powerpc64__)
typedef struct pt_regs PtraceRegs;
#elif defined(__s390x__)
typedef struct _user_regs_struct PtraceRegs;
#elif defined(__sparc__)
#include <asm/ptrace.h>
typedef struct pt_regs PtraceRegs;
#else
typedef struct user_regs_struct PtraceRegs;
#endif

#if defined(__s390x__)
typedef struct _user_psw_struct ptracePsw;
typedef struct _user_fpregs_struct ptraceFpregs;
typedef struct _user_per_struct ptracePer;
#else
typedef struct {} ptracePsw;
typedef struct {} ptraceFpregs;
typedef struct {} ptracePer;
#endif

// The real epoll_event is a union, and godefs doesn't handle it well.
struct my_epoll_event {
	uint32_t events;
#if defined(__ARM_EABI__) || defined(__aarch64__) || (defined(__mips__) && _MIPS_SIM == _ABIO32)
	// padding is not specified in linux/eventpoll.h but added to conform to the
	// alignment requirements of EABI
	int32_t padFd;
#elif defined(__powerpc64__) || defined(__s390x__) || defined(__sparc__) || defined(__riscv) \
		|| (defined(__mips__) && _MIPS_SIM == _MIPS_SIM_ABI64)
	int32_t _padFd;
#endif
	int32_t fd;
	int32_t pad;
};

// Copied from <linux/perf_event.h> with the following modifications:
// 1) bit field after read_format redeclared as '__u64 bits' to make it
//    accessible from Go
// 2) collapsed the unions, to avoid confusing godoc for the generated output
//    (e.g. having to use BpAddr as an extension of Config)
struct perf_event_attr_go {
	__u32 type;

	__u32 size;
	__u64 config;

	// union {
	//   __u64 sample_period;
	//   __u64 sample_freq;
	// };
	__u64 sample;

	__u64 sample_type;
	__u64 read_format;

	// Replaces the bit field. Flags are defined as constants.
	__u64 bits;

	// union {
	//   __u32 wakeup_events;
	//   __u32 wakeup_watermark;
	// };
	__u32 wakeup;

	__u32 bp_type;

	// union {
	//   __u64 bp_addr;
	//   __u64 config1;
	// };
	__u64 ext1;

	// union {
	//   __u64 bp_len;
	//   __u64 config2;
	// };
	__u64 ext2;

	__u64 branch_sample_type;

	__u64 sample_regs_user;

	__u32 sample_stack_user;

	__s32 clockid;
	__u64 sample_regs_intr;
	__u32 aux_watermark;
	__u16 sample_max_stack;
	__u16 __reserved_2;
};

// ustat is deprecated and glibc 2.28 removed ustat.h. Provide the type here for
// backwards compatibility. Copied from /usr/include/bits/ustat.h
struct ustat {
	__daddr_t f_tfree;
	__ino_t f_tinode;
	char f_fname[6];
	char f_fpack[6];
};

// my_blkpg_partition is blkpg_partition with unsigned devname & volname.
struct my_blkpg_partition {
	long long start;
	long long length;
	int pno;
	unsigned char devname[BLKPG_DEVNAMELTH];
	unsigned char volname[BLKPG_VOLNAMELTH];
};

// tipc_service_name is a copied and slightly modified form of the "name"
// variant in sockaddr_tipc's union in tipc.h, so it can be exported as part of
// SockaddrTIPC's API.
struct tipc_service_name {
	// From tipc_service_addr.
	__u32 type;
	__u32 instance;
	// From the union.
	__u32 domain;
};
*/
import "C"

// Machine characteristics

const (
	SizeofPtr      = C.sizeofPtr
	SizeofShort    = C.sizeof_short
	SizeofInt      = C.sizeof_int
	SizeofLong     = C.sizeof_long
	SizeofLongLong = C.sizeof_longlong
	PathMax        = C.PATH_MAX
)

// Basic types

type (
	_C_short     C.short
	_C_int       C.int
	_C_long      C.long
	_C_long_long C.longlong
)

// Time

type Timespec C.struct_timespec

type Timeval C.struct_timeval

type Timex C.struct_timex

type ItimerSpec C.struct_itimerspec

const (
	TIME_OK    = C.TIME_OK
	TIME_INS   = C.TIME_INS
	TIME_DEL   = C.TIME_DEL
	TIME_OOP   = C.TIME_OOP
	TIME_WAIT  = C.TIME_WAIT
	TIME_ERROR = C.TIME_ERROR
	TIME_BAD   = C.TIME_BAD
)

type Time_t C.time_t

type Tms C.struct_tms

type Utimbuf C.struct_utimbuf

// Processes

type Rusage C.struct_rusage

type Rlimit C.struct_rlimit

type _Gid_t C.gid_t

// Files

type Stat_t C.struct_stat

type StatxTimestamp C.struct_statx_timestamp

type Statx_t C.struct_statx

type Dirent C.struct_dirent

type Fsid C.fsid_t

type Flock_t C.struct_flock

// Filesystem Encryption

type FscryptPolicy C.struct_fscrypt_policy

type FscryptKey C.struct_fscrypt_key

type FscryptPolicyV1 C.struct_fscrypt_policy_v1

type FscryptPolicyV2 C.struct_fscrypt_policy_v2

type FscryptGetPolicyExArg C.struct_fscrypt_get_policy_ex_arg

type FscryptKeySpecifier C.struct_fscrypt_key_specifier

type FscryptAddKeyArg C.struct_fscrypt_add_key_arg

type FscryptRemoveKeyArg C.struct_fscrypt_remove_key_arg

type FscryptGetKeyStatusArg C.struct_fscrypt_get_key_status_arg

// Device Mapper

type DmIoctl C.struct_dm_ioctl

type DmTargetSpec C.struct_dm_target_spec

type DmTargetDeps C.struct_dm_target_deps

type DmNameList C.struct_dm_name_list

type DmTargetVersions C.struct_dm_target_versions

type DmTargetMsg C.struct_dm_target_msg

const (
	SizeofDmIoctl      = C.sizeof_struct_dm_ioctl
	SizeofDmTargetSpec = C.sizeof_struct_dm_target_spec
)

// Structure for Keyctl

type KeyctlDHParams C.struct_keyctl_dh_params

// Advice to Fadvise

const (
	FADV_NORMAL     = C.POSIX_FADV_NORMAL
	FADV_RANDOM     = C.POSIX_FADV_RANDOM
	FADV_SEQUENTIAL = C.POSIX_FADV_SEQUENTIAL
	FADV_WILLNEED   = C.POSIX_FADV_WILLNEED
	FADV_DONTNEED   = C.POSIX_FADV_DONTNEED
	FADV_NOREUSE    = C.POSIX_FADV_NOREUSE
)

// Sockets

type RawSockaddrInet4 C.struct_sockaddr_in

type RawSockaddrInet6 C.struct_sockaddr_in6

type RawSockaddrUnix C.struct_my_sockaddr_un

type RawSockaddrLinklayer C.struct_sockaddr_ll

type RawSockaddrNetlink C.struct_sockaddr_nl

type RawSockaddrHCI C.struct_sockaddr_hci

type RawSockaddrL2 C.struct_sockaddr_l2

type RawSockaddrRFCOMM C.struct_sockaddr_rc

type RawSockaddrCAN C.struct_sockaddr_can

type RawSockaddrALG C.struct_sockaddr_alg

type RawSockaddrVM C.struct_sockaddr_vm

type RawSockaddrXDP C.struct_sockaddr_xdp

type RawSockaddrPPPoX [C.sizeof_struct_sockaddr_pppox]byte

type RawSockaddrTIPC C.struct_sockaddr_tipc

type RawSockaddrL2TPIP C.struct_sockaddr_l2tpip

type RawSockaddrL2TPIP6 C.struct_sockaddr_l2tpip6

type RawSockaddrIUCV C.struct_sockaddr_iucv

type RawSockaddr C.struct_sockaddr

type RawSockaddrAny C.struct_sockaddr_any

type _Socklen C.socklen_t

type Linger C.struct_linger

type Iovec C.struct_iovec

type IPMreq C.struct_ip_mreq

type IPMreqn C.struct_ip_mreqn

type IPv6Mreq C.struct_ipv6_mreq

type PacketMreq C.struct_packet_mreq

type Msghdr C.struct_msghdr

type Cmsghdr C.struct_cmsghdr

type Inet4Pktinfo C.struct_in_pktinfo

type Inet6Pktinfo C.struct_in6_pktinfo

type IPv6MTUInfo C.struct_ip6_mtuinfo

type ICMPv6Filter C.struct_icmp6_filter

type Ucred C.struct_ucred

type TCPInfo C.struct_tcp_info

type CanFilter C.struct_can_filter

const (
	SizeofSockaddrInet4     = C.sizeof_struct_sockaddr_in
	SizeofSockaddrInet6     = C.sizeof_struct_sockaddr_in6
	SizeofSockaddrAny       = C.sizeof_struct_sockaddr_any
	SizeofSockaddrUnix      = C.sizeof_struct_sockaddr_un
	SizeofSockaddrLinklayer = C.sizeof_struct_sockaddr_ll
	SizeofSockaddrNetlink   = C.sizeof_struct_sockaddr_nl
	SizeofSockaddrHCI       = C.sizeof_struct_sockaddr_hci
	SizeofSockaddrL2        = C.sizeof_struct_sockaddr_l2
	SizeofSockaddrRFCOMM    = C.sizeof_struct_sockaddr_rc
	SizeofSockaddrCAN       = C.sizeof_struct_sockaddr_can
	SizeofSockaddrALG       = C.sizeof_struct_sockaddr_alg
	SizeofSockaddrVM        = C.sizeof_struct_sockaddr_vm
	SizeofSockaddrXDP       = C.sizeof_struct_sockaddr_xdp
	SizeofSockaddrPPPoX     = C.sizeof_struct_sockaddr_pppox
	SizeofSockaddrTIPC      = C.sizeof_struct_sockaddr_tipc
	SizeofSockaddrL2TPIP    = C.sizeof_struct_sockaddr_l2tpip
	SizeofSockaddrL2TPIP6   = C.sizeof_struct_sockaddr_l2tpip6
	SizeofSockaddrIUCV      = C.sizeof_struct_sockaddr_iucv
	SizeofLinger            = C.sizeof_struct_linger
	SizeofIovec             = C.sizeof_struct_iovec
	SizeofIPMreq            = C.sizeof_struct_ip_mreq
	SizeofIPMreqn           = C.sizeof_struct_ip_mreqn
	SizeofIPv6Mreq          = C.sizeof_struct_ipv6_mreq
	SizeofPacketMreq        = C.sizeof_struct_packet_mreq
	SizeofMsghdr            = C.sizeof_struct_msghdr
	SizeofCmsghdr           = C.sizeof_struct_cmsghdr
	SizeofInet4Pktinfo      = C.sizeof_struct_in_pktinfo
	SizeofInet6Pktinfo      = C.sizeof_struct_in6_pktinfo
	SizeofIPv6MTUInfo       = C.sizeof_struct_ip6_mtuinfo
	SizeofICMPv6Filter      = C.sizeof_struct_icmp6_filter
	SizeofUcred             = C.sizeof_struct_ucred
	SizeofTCPInfo           = C.sizeof_struct_tcp_info
	SizeofCanFilter         = C.sizeof_struct_can_filter
)

// Netlink routing and interface messages

const (
	NDA_UNSPEC              = C.NDA_UNSPEC
	NDA_DST                 = C.NDA_DST
	NDA_LLADDR              = C.NDA_LLADDR
	NDA_CACHEINFO           = C.NDA_CACHEINFO
	NDA_PROBES              = C.NDA_PROBES
	NDA_VLAN                = C.NDA_VLAN
	NDA_PORT                = C.NDA_PORT
	NDA_VNI                 = C.NDA_VNI
	NDA_IFINDEX             = C.NDA_IFINDEX
	NDA_MASTER              = C.NDA_MASTER
	NDA_LINK_NETNSID        = C.NDA_LINK_NETNSID
	NDA_SRC_VNI             = C.NDA_SRC_VNI
	NTF_USE                 = C.NTF_USE
	NTF_SELF                = C.NTF_SELF
	NTF_MASTER              = C.NTF_MASTER
	NTF_PROXY               = C.NTF_PROXY
	NTF_EXT_LEARNED         = C.NTF_EXT_LEARNED
	NTF_OFFLOADED           = C.NTF_OFFLOADED
	NTF_ROUTER              = C.NTF_ROUTER
	NUD_INCOMPLETE          = C.NUD_INCOMPLETE
	NUD_REACHABLE           = C.NUD_REACHABLE
	NUD_STALE               = C.NUD_STALE
	NUD_DELAY               = C.NUD_DELAY
	NUD_PROBE               = C.NUD_PROBE
	NUD_FAILED              = C.NUD_FAILED
	NUD_NOARP               = C.NUD_NOARP
	NUD_PERMANENT           = C.NUD_PERMANENT
	NUD_NONE                = C.NUD_NONE
	IFA_UNSPEC              = C.IFA_UNSPEC
	IFA_ADDRESS             = C.IFA_ADDRESS
	IFA_LOCAL               = C.IFA_LOCAL
	IFA_LABEL               = C.IFA_LABEL
	IFA_BROADCAST           = C.IFA_BROADCAST
	IFA_ANYCAST             = C.IFA_ANYCAST
	IFA_CACHEINFO           = C.IFA_CACHEINFO
	IFA_MULTICAST           = C.IFA_MULTICAST
	IFA_FLAGS               = C.IFA_FLAGS
	IFA_RT_PRIORITY         = C.IFA_RT_PRIORITY
	IFA_TARGET_NETNSID      = C.IFA_TARGET_NETNSID
	IFLA_UNSPEC             = C.IFLA_UNSPEC
	IFLA_ADDRESS            = C.IFLA_ADDRESS
	IFLA_BROADCAST          = C.IFLA_BROADCAST
	IFLA_IFNAME             = C.IFLA_IFNAME
	IFLA_MTU                = C.IFLA_MTU
	IFLA_LINK               = C.IFLA_LINK
	IFLA_QDISC              = C.IFLA_QDISC
	IFLA_STATS              = C.IFLA_STATS
	IFLA_COST               = C.IFLA_COST
	IFLA_PRIORITY           = C.IFLA_PRIORITY
	IFLA_MASTER             = C.IFLA_MASTER
	IFLA_WIRELESS           = C.IFLA_WIRELESS
	IFLA_PROTINFO           = C.IFLA_PROTINFO
	IFLA_TXQLEN             = C.IFLA_TXQLEN
	IFLA_MAP                = C.IFLA_MAP
	IFLA_WEIGHT             = C.IFLA_WEIGHT
	IFLA_OPERSTATE          = C.IFLA_OPERSTATE
	IFLA_LINKMODE           = C.IFLA_LINKMODE
	IFLA_LINKINFO           = C.IFLA_LINKINFO
	IFLA_NET_NS_PID         = C.IFLA_NET_NS_PID
	IFLA_IFALIAS            = C.IFLA_IFALIAS
	IFLA_NUM_VF             = C.IFLA_NUM_VF
	IFLA_VFINFO_LIST        = C.IFLA_VFINFO_LIST
	IFLA_STATS64            = C.IFLA_STATS64
	IFLA_VF_PORTS           = C.IFLA_VF_PORTS
	IFLA_PORT_SELF          = C.IFLA_PORT_SELF
	IFLA_AF_SPEC            = C.IFLA_AF_SPEC
	IFLA_GROUP              = C.IFLA_GROUP
	IFLA_NET_NS_FD          = C.IFLA_NET_NS_FD
	IFLA_EXT_MASK           = C.IFLA_EXT_MASK
	IFLA_PROMISCUITY        = C.IFLA_PROMISCUITY
	IFLA_NUM_TX_QUEUES      = C.IFLA_NUM_TX_QUEUES
	IFLA_NUM_RX_QUEUES      = C.IFLA_NUM_RX_QUEUES
	IFLA_CARRIER            = C.IFLA_CARRIER
	IFLA_PHYS_PORT_ID       = C.IFLA_PHYS_PORT_ID
	IFLA_CARRIER_CHANGES    = C.IFLA_CARRIER_CHANGES
	IFLA_PHYS_SWITCH_ID     = C.IFLA_PHYS_SWITCH_ID
	IFLA_LINK_NETNSID       = C.IFLA_LINK_NETNSID
	IFLA_PHYS_PORT_NAME     = C.IFLA_PHYS_PORT_NAME
	IFLA_PROTO_DOWN         = C.IFLA_PROTO_DOWN
	IFLA_GSO_MAX_SEGS       = C.IFLA_GSO_MAX_SEGS
	IFLA_GSO_MAX_SIZE       = C.IFLA_GSO_MAX_SIZE
	IFLA_PAD                = C.IFLA_PAD
	IFLA_XDP                = C.IFLA_XDP
	IFLA_EVENT              = C.IFLA_EVENT
	IFLA_NEW_NETNSID        = C.IFLA_NEW_NETNSID
	IFLA_IF_NETNSID         = C.IFLA_IF_NETNSID
	IFLA_TARGET_NETNSID     = C.IFLA_TARGET_NETNSID
	IFLA_CARRIER_UP_COUNT   = C.IFLA_CARRIER_UP_COUNT
	IFLA_CARRIER_DOWN_COUNT = C.IFLA_CARRIER_DOWN_COUNT
	IFLA_NEW_IFINDEX        = C.IFLA_NEW_IFINDEX
	IFLA_MIN_MTU            = C.IFLA_MIN_MTU
	IFLA_MAX_MTU            = C.IFLA_MAX_MTU
	IFLA_MAX                = C.IFLA_MAX
	IFLA_INFO_KIND          = C.IFLA_INFO_KIND
	IFLA_INFO_DATA          = C.IFLA_INFO_DATA
	IFLA_INFO_XSTATS        = C.IFLA_INFO_XSTATS
	IFLA_INFO_SLAVE_KIND    = C.IFLA_INFO_SLAVE_KIND
	IFLA_INFO_SLAVE_DATA    = C.IFLA_INFO_SLAVE_DATA
	RT_SCOPE_UNIVERSE       = C.RT_SCOPE_UNIVERSE
	RT_SCOPE_SITE           = C.RT_SCOPE_SITE
	RT_SCOPE_LINK           = C.RT_SCOPE_LINK
	RT_SCOPE_HOST           = C.RT_SCOPE_HOST
	RT_SCOPE_NOWHERE        = C.RT_SCOPE_NOWHERE
	RT_TABLE_UNSPEC         = C.RT_TABLE_UNSPEC
	RT_TABLE_COMPAT         = C.RT_TABLE_COMPAT
	RT_TABLE_DEFAULT        = C.RT_TABLE_DEFAULT
	RT_TABLE_MAIN           = C.RT_TABLE_MAIN
	RT_TABLE_LOCAL          = C.RT_TABLE_LOCAL
	RT_TABLE_MAX            = C.RT_TABLE_MAX
	RTA_UNSPEC              = C.RTA_UNSPEC
	RTA_DST                 = C.RTA_DST
	RTA_SRC                 = C.RTA_SRC
	RTA_IIF                 = C.RTA_IIF
	RTA_OIF                 = C.RTA_OIF
	RTA_GATEWAY             = C.RTA_GATEWAY
	RTA_PRIORITY            = C.RTA_PRIORITY
	RTA_PREFSRC             = C.RTA_PREFSRC
	RTA_METRICS             = C.RTA_METRICS
	RTA_MULTIPATH           = C.RTA_MULTIPATH
	RTA_FLOW                = C.RTA_FLOW
	RTA_CACHEINFO           = C.RTA_CACHEINFO
	RTA_TABLE               = C.RTA_TABLE
	RTA_MARK                = C.RTA_MARK
	RTA_MFC_STATS           = C.RTA_MFC_STATS
	RTA_VIA                 = C.RTA_VIA
	RTA_NEWDST              = C.RTA_NEWDST
	RTA_PREF                = C.RTA_PREF
	RTA_ENCAP_TYPE          = C.RTA_ENCAP_TYPE
	RTA_ENCAP               = C.RTA_ENCAP
	RTA_EXPIRES             = C.RTA_EXPIRES
	RTA_PAD                 = C.RTA_PAD
	RTA_UID                 = C.RTA_UID
	RTA_TTL_PROPAGATE       = C.RTA_TTL_PROPAGATE
	RTA_IP_PROTO            = C.RTA_IP_PROTO
	RTA_SPORT               = C.RTA_SPORT
	RTA_DPORT               = C.RTA_DPORT
	RTN_UNSPEC              = C.RTN_UNSPEC
	RTN_UNICAST             = C.RTN_UNICAST
	RTN_LOCAL               = C.RTN_LOCAL
	RTN_BROADCAST           = C.RTN_BROADCAST
	RTN_ANYCAST             = C.RTN_ANYCAST
	RTN_MULTICAST           = C.RTN_MULTICAST
	RTN_BLACKHOLE           = C.RTN_BLACKHOLE
	RTN_UNREACHABLE         = C.RTN_UNREACHABLE
	RTN_PROHIBIT            = C.RTN_PROHIBIT
	RTN_THROW               = C.RTN_THROW
	RTN_NAT                 = C.RTN_NAT
	RTN_XRESOLVE            = C.RTN_XRESOLVE
	SizeofNlMsghdr          = C.sizeof_struct_nlmsghdr
	SizeofNlMsgerr          = C.sizeof_struct_nlmsgerr
	SizeofRtGenmsg          = C.sizeof_struct_rtgenmsg
	SizeofNlAttr            = C.sizeof_struct_nlattr
	SizeofRtAttr            = C.sizeof_struct_rtattr
	SizeofIfInfomsg         = C.sizeof_struct_ifinfomsg
	SizeofIfAddrmsg         = C.sizeof_struct_ifaddrmsg
	SizeofIfaCacheinfo      = C.sizeof_struct_ifa_cacheinfo
	SizeofRtMsg             = C.sizeof_struct_rtmsg
	SizeofRtNexthop         = C.sizeof_struct_rtnexthop
	SizeofNdUseroptmsg      = C.sizeof_struct_nduseroptmsg
	SizeofNdMsg             = C.sizeof_struct_ndmsg
)

type NlMsghdr C.struct_nlmsghdr

type NlMsgerr C.struct_nlmsgerr

type RtGenmsg C.struct_rtgenmsg

type NlAttr C.struct_nlattr

type RtAttr C.struct_rtattr

type IfInfomsg C.struct_ifinfomsg

type IfAddrmsg C.struct_ifaddrmsg

type IfaCacheinfo C.struct_ifa_cacheinfo

type RtMsg C.struct_rtmsg

type RtNexthop C.struct_rtnexthop

type NdUseroptmsg C.struct_nduseroptmsg

type NdMsg C.struct_ndmsg

// Linux socket filter

const (
	SizeofSockFilter = C.sizeof_struct_sock_filter
	SizeofSockFprog  = C.sizeof_struct_sock_fprog
)

type SockFilter C.struct_sock_filter

type SockFprog C.struct_sock_fprog

// Inotify

type InotifyEvent C.struct_inotify_event

const SizeofInotifyEvent = C.sizeof_struct_inotify_event

// Ptrace

// Register structures
type PtraceRegs C.PtraceRegs

// Structures contained in PtraceRegs on s390x (exported by mkpost.go)
type PtracePsw C.ptracePsw

type PtraceFpregs C.ptraceFpregs

type PtracePer C.ptracePer

// Misc

type FdSet C.fd_set

type Sysinfo_t C.struct_sysinfo

const SI_LOAD_SHIFT = C.SI_LOAD_SHIFT

type Utsname C.struct_utsname

type Ustat_t C.struct_ustat

type EpollEvent C.struct_my_epoll_event

const (
	AT_EMPTY_PATH   = C.AT_EMPTY_PATH
	AT_FDCWD        = C.AT_FDCWD
	AT_NO_AUTOMOUNT = C.AT_NO_AUTOMOUNT
	AT_REMOVEDIR    = C.AT_REMOVEDIR

	AT_STATX_SYNC_AS_STAT = C.AT_STATX_SYNC_AS_STAT
	AT_STATX_FORCE_SYNC   = C.AT_STATX_FORCE_SYNC
	AT_STATX_DONT_SYNC    = C.AT_STATX_DONT_SYNC

	AT_SYMLINK_FOLLOW   = C.AT_SYMLINK_FOLLOW
	AT_SYMLINK_NOFOLLOW = C.AT_SYMLINK_NOFOLLOW

	AT_EACCESS = C.AT_EACCESS
)

type OpenHow C.struct_open_how

const SizeofOpenHow = C.sizeof_struct_open_how

const (
	RESOLVE_BENEATH       = C.RESOLVE_BENEATH
	RESOLVE_IN_ROOT       = C.RESOLVE_IN_ROOT
	RESOLVE_NO_MAGICLINKS = C.RESOLVE_NO_MAGICLINKS
	RESOLVE_NO_SYMLINKS   = C.RESOLVE_NO_SYMLINKS
	RESOLVE_NO_XDEV       = C.RESOLVE_NO_XDEV
)

type PollFd C.struct_pollfd

const (
	POLLIN    = C.POLLIN
	POLLPRI   = C.POLLPRI
	POLLOUT   = C.POLLOUT
	POLLRDHUP = C.POLLRDHUP
	POLLERR   = C.POLLERR
	POLLHUP   = C.POLLHUP
	POLLNVAL  = C.POLLNVAL
)

type Sigset_t C.sigset_t

const _C__NSIG = C._NSIG

type SignalfdSiginfo C.struct_signalfd_siginfo

const PERF_IOC_FLAG_GROUP = C.PERF_IOC_FLAG_GROUP

// Terminal handling

type Termios C.termios_t

type Winsize C.struct_winsize

// Taskstats and cgroup stats.

type Taskstats C.struct_taskstats

const (
	TASKSTATS_CMD_UNSPEC                  = C.TASKSTATS_CMD_UNSPEC
	TASKSTATS_CMD_GET                     = C.TASKSTATS_CMD_GET
	TASKSTATS_CMD_NEW                     = C.TASKSTATS_CMD_NEW
	TASKSTATS_TYPE_UNSPEC                 = C.TASKSTATS_TYPE_UNSPEC
	TASKSTATS_TYPE_PID                    = C.TASKSTATS_TYPE_PID
	TASKSTATS_TYPE_TGID                   = C.TASKSTATS_TYPE_TGID
	TASKSTATS_TYPE_STATS                  = C.TASKSTATS_TYPE_STATS
	TASKSTATS_TYPE_AGGR_PID               = C.TASKSTATS_TYPE_AGGR_PID
	TASKSTATS_TYPE_AGGR_TGID              = C.TASKSTATS_TYPE_AGGR_TGID
	TASKSTATS_TYPE_NULL                   = C.TASKSTATS_TYPE_NULL
	TASKSTATS_CMD_ATTR_UNSPEC             = C.TASKSTATS_CMD_ATTR_UNSPEC
	TASKSTATS_CMD_ATTR_PID                = C.TASKSTATS_CMD_ATTR_PID
	TASKSTATS_CMD_ATTR_TGID               = C.TASKSTATS_CMD_ATTR_TGID
	TASKSTATS_CMD_ATTR_REGISTER_CPUMASK   = C.TASKSTATS_CMD_ATTR_REGISTER_CPUMASK
	TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK = C.TASKSTATS_CMD_ATTR_DEREGISTER_CPUMASK
)

type CGroupStats C.struct_cgroupstats

const (
	CGROUPSTATS_CMD_UNSPEC        = C.__TASKSTATS_CMD_MAX
	CGROUPSTATS_CMD_GET           = C.CGROUPSTATS_CMD_GET
	CGROUPSTATS_CMD_NEW           = C.CGROUPSTATS_CMD_NEW
	CGROUPSTATS_TYPE_UNSPEC       = C.CGROUPSTATS_TYPE_UNSPEC
	CGROUPSTATS_TYPE_CGROUP_STATS = C.CGROUPSTATS_TYPE_CGROUP_STATS
	CGROUPSTATS_CMD_ATTR_UNSPEC   = C.CGROUPSTATS_CMD_ATTR_UNSPEC
	CGROUPSTATS_CMD_ATTR_FD       = C.CGROUPSTATS_CMD_ATTR_FD
)

// Generic netlink

type Genlmsghdr C.struct_genlmsghdr

const (
	CTRL_CMD_UNSPEC            = C.CTRL_CMD_UNSPEC
	CTRL_CMD_NEWFAMILY         = C.CTRL_CMD_NEWFAMILY
	CTRL_CMD_DELFAMILY         = C.CTRL_CMD_DELFAMILY
	CTRL_CMD_GETFAMILY         = C.CTRL_CMD_GETFAMILY
	CTRL_CMD_NEWOPS            = C.CTRL_CMD_NEWOPS
	CTRL_CMD_DELOPS            = C.CTRL_CMD_DELOPS
	CTRL_CMD_GETOPS            = C.CTRL_CMD_GETOPS
	CTRL_CMD_NEWMCAST_GRP      = C.CTRL_CMD_NEWMCAST_GRP
	CTRL_CMD_DELMCAST_GRP      = C.CTRL_CMD_DELMCAST_GRP
	CTRL_CMD_GETMCAST_GRP      = C.CTRL_CMD_GETMCAST_GRP
	CTRL_ATTR_UNSPEC           = C.CTRL_ATTR_UNSPEC
	CTRL_ATTR_FAMILY_ID        = C.CTRL_ATTR_FAMILY_ID
	CTRL_ATTR_FAMILY_NAME      = C.CTRL_ATTR_FAMILY_NAME
	CTRL_ATTR_VERSION          = C.CTRL_ATTR_VERSION
	CTRL_ATTR_HDRSIZE          = C.CTRL_ATTR_HDRSIZE
	CTRL_ATTR_MAXATTR          = C.CTRL_ATTR_MAXATTR
	CTRL_ATTR_OPS              = C.CTRL_ATTR_OPS
	CTRL_ATTR_MCAST_GROUPS     = C.CTRL_ATTR_MCAST_GROUPS
	CTRL_ATTR_OP_UNSPEC        = C.CTRL_ATTR_OP_UNSPEC
	CTRL_ATTR_OP_ID            = C.CTRL_ATTR_OP_ID
	CTRL_ATTR_OP_FLAGS         = C.CTRL_ATTR_OP_FLAGS
	CTRL_ATTR_MCAST_GRP_UNSPEC = C.CTRL_ATTR_MCAST_GRP_UNSPEC
	CTRL_ATTR_MCAST_GRP_NAME   = C.CTRL_ATTR_MCAST_GRP_NAME
	CTRL_ATTR_MCAST_GRP_ID     = C.CTRL_ATTR_MCAST_GRP_ID
)

// CPU affinity

type cpuMask C.__cpu_mask

const (
	_CPU_SETSIZE = C.__CPU_SETSIZE
	_NCPUBITS    = C.__NCPUBITS
)

// Bluetooth

const (
	BDADDR_BREDR     = C.BDADDR_BREDR
	BDADDR_LE_PUBLIC = C.BDADDR_LE_PUBLIC
	BDADDR_LE_RANDOM = C.BDADDR_LE_RANDOM
)

// Perf subsystem

type PerfEventAttr C.struct_perf_event_attr_go

type PerfEventMmapPage C.struct_perf_event_mmap_page

// Bit field in struct perf_event_attr expanded as flags.
// Set these on PerfEventAttr.Bits by ORing them together.
const (
	PerfBitDisabled               uint64 = CBitFieldMaskBit0
	PerfBitInherit                       = CBitFieldMaskBit1
	PerfBitPinned                        = CBitFieldMaskBit2
	PerfBitExclusive                     = CBitFieldMaskBit3
	PerfBitExcludeUser                   = CBitFieldMaskBit4
	PerfBitExcludeKernel                 = CBitFieldMaskBit5
	PerfBitExcludeHv                     = CBitFieldMaskBit6
	PerfBitExcludeIdle                   = CBitFieldMaskBit7
	PerfBitMmap                          = CBitFieldMaskBit8
	PerfBitComm                          = CBitFieldMaskBit9
	PerfBitFreq                          = CBitFieldMaskBit10
	PerfBitInheritStat                   = CBitFieldMaskBit11
	PerfBitEnableOnExec                  = CBitFieldMaskBit12
	PerfBitTask                          = CBitFieldMaskBit13
	PerfBitWatermark                     = CBitFieldMaskBit14
	PerfBitPreciseIPBit1                 = CBitFieldMaskBit15
	PerfBitPreciseIPBit2                 = CBitFieldMaskBit16
	PerfBitMmapData                      = CBitFieldMaskBit17
	PerfBitSampleIDAll                   = CBitFieldMaskBit18
	PerfBitExcludeHost                   = CBitFieldMaskBit19
	PerfBitExcludeGuest                  = CBitFieldMaskBit20
	PerfBitExcludeCallchainKernel        = CBitFieldMaskBit21
	PerfBitExcludeCallchainUser          = CBitFieldMaskBit22
	PerfBitMmap2                         = CBitFieldMaskBit23
	PerfBitCommExec                      = CBitFieldMaskBit24
	PerfBitUseClockID                    = CBitFieldMaskBit25
	PerfBitContextSwitch                 = CBitFieldMaskBit26
)

const (
	PERF_TYPE_HARDWARE   = C.PERF_TYPE_HARDWARE
	PERF_TYPE_SOFTWARE   = C.PERF_TYPE_SOFTWARE
	PERF_TYPE_TRACEPOINT = C.PERF_TYPE_TRACEPOINT
	PERF_TYPE_HW_CACHE   = C.PERF_TYPE_HW_CACHE
	PERF_TYPE_RAW        = C.PERF_TYPE_RAW
	PERF_TYPE_BREAKPOINT = C.PERF_TYPE_BREAKPOINT

	PERF_COUNT_HW_CPU_CYCLES              = C.PERF_COUNT_HW_CPU_CYCLES
	PERF_COUNT_HW_INSTRUCTIONS            = C.PERF_COUNT_HW_INSTRUCTIONS
	PERF_COUNT_HW_CACHE_REFERENCES        = C.PERF_COUNT_HW_CACHE_REFERENCES
	PERF_COUNT_HW_CACHE_MISSES            = C.PERF_COUNT_HW_CACHE_MISSES
	PERF_COUNT_HW_BRANCH_INSTRUCTIONS     = C.PERF_COUNT_HW_BRANCH_INSTRUCTIONS
	PERF_COUNT_HW_BRANCH_MISSES           = C.PERF_COUNT_HW_BRANCH_MISSES
	PERF_COUNT_HW_BUS_CYCLES              = C.PERF_COUNT_HW_BUS_CYCLES
	PERF_COUNT_HW_STALLED_CYCLES_FRONTEND = C.PERF_COUNT_HW_STALLED_CYCLES_FRONTEND
	PERF_COUNT_HW_STALLED_CYCLES_BACKEND  = C.PERF_COUNT_HW_STALLED_CYCLES_BACKEND
	PERF_COUNT_HW_REF_CPU_CYCLES          = C.PERF_COUNT_HW_REF_CPU_CYCLES

	PERF_COUNT_HW_CACHE_L1D  = C.PERF_COUNT_HW_CACHE_L1D
	PERF_COUNT_HW_CACHE_L1I  = C.PERF_COUNT_HW_CACHE_L1I
	PERF_COUNT_HW_CACHE_LL   = C.PERF_COUNT_HW_CACHE_LL
	PERF_COUNT_HW_CACHE_DTLB = C.PERF_COUNT_HW_CACHE_DTLB
	PERF_COUNT_HW_CACHE_ITLB = C.PERF_COUNT_HW_CACHE_ITLB
	PERF_COUNT_HW_CACHE_BPU  = C.PERF_COUNT_HW_CACHE_BPU
	PERF_COUNT_HW_CACHE_NODE = C.PERF_COUNT_HW_CACHE_NODE

	PERF_COUNT_HW_CACHE_OP_READ     = C.PERF_COUNT_HW_CACHE_OP_READ
	PERF_COUNT_HW_CACHE_OP_WRITE    = C.PERF_COUNT_HW_CACHE_OP_WRITE
	PERF_COUNT_HW_CACHE_OP_PREFETCH = C.PERF_COUNT_HW_CACHE_OP_PREFETCH

	PERF_COUNT_HW_CACHE_RESULT_ACCESS = C.PERF_COUNT_HW_CACHE_RESULT_ACCESS
	PERF_COUNT_HW_CACHE_RESULT_MISS   = C.PERF_COUNT_HW_CACHE_RESULT_MISS

	PERF_COUNT_SW_CPU_CLOCK        = C.PERF_COUNT_SW_CPU_CLOCK
	PERF_COUNT_SW_TASK_CLOCK       = C.PERF_COUNT_SW_TASK_CLOCK
	PERF_COUNT_SW_PAGE_FAULTS      = C.PERF_COUNT_SW_PAGE_FAULTS
	PERF_COUNT_SW_CONTEXT_SWITCHES = C.PERF_COUNT_SW_CONTEXT_SWITCHES
	PERF_COUNT_SW_CPU_MIGRATIONS   = C.PERF_COUNT_SW_CPU_MIGRATIONS
	PERF_COUNT_SW_PAGE_FAULTS_MIN  = C.PERF_COUNT_SW_PAGE_FAULTS_MIN
	PERF_COUNT_SW_PAGE_FAULTS_MAJ  = C.PERF_COUNT_SW_PAGE_FAULTS_MAJ
	PERF_COUNT_SW_ALIGNMENT_FAULTS = C.PERF_COUNT_SW_ALIGNMENT_FAULTS
	PERF_COUNT_SW_EMULATION_FAULTS = C.PERF_COUNT_SW_EMULATION_FAULTS
	PERF_COUNT_SW_DUMMY            = C.PERF_COUNT_SW_DUMMY
	PERF_COUNT_SW_BPF_OUTPUT       = C.PERF_COUNT_SW_BPF_OUTPUT

	PERF_SAMPLE_IP           = C.PERF_SAMPLE_IP
	PERF_SAMPLE_TID          = C.PERF_SAMPLE_TID
	PERF_SAMPLE_TIME         = C.PERF_SAMPLE_TIME
	PERF_SAMPLE_ADDR         = C.PERF_SAMPLE_ADDR
	PERF_SAMPLE_READ         = C.PERF_SAMPLE_READ
	PERF_SAMPLE_CALLCHAIN    = C.PERF_SAMPLE_CALLCHAIN
	PERF_SAMPLE_ID           = C.PERF_SAMPLE_ID
	PERF_SAMPLE_CPU          = C.PERF_SAMPLE_CPU
	PERF_SAMPLE_PERIOD       = C.PERF_SAMPLE_PERIOD
	PERF_SAMPLE_STREAM_ID    = C.PERF_SAMPLE_STREAM_ID
	PERF_SAMPLE_RAW          = C.PERF_SAMPLE_RAW
	PERF_SAMPLE_BRANCH_STACK = C.PERF_SAMPLE_BRANCH_STACK
	PERF_SAMPLE_REGS_USER    = C.PERF_SAMPLE_REGS_USER
	PERF_SAMPLE_STACK_USER   = C.PERF_SAMPLE_STACK_USER
	PERF_SAMPLE_WEIGHT       = C.PERF_SAMPLE_WEIGHT
	PERF_SAMPLE_DATA_SRC     = C.PERF_SAMPLE_DATA_SRC
	PERF_SAMPLE_IDENTIFIER   = C.PERF_SAMPLE_IDENTIFIER
	PERF_SAMPLE_TRANSACTION  = C.PERF_SAMPLE_TRANSACTION
	PERF_SAMPLE_REGS_INTR    = C.PERF_SAMPLE_REGS_INTR

	PERF_SAMPLE_BRANCH_USER       = C.PERF_SAMPLE_BRANCH_USER
	PERF_SAMPLE_BRANCH_KERNEL     = C.PERF_SAMPLE_BRANCH_KERNEL
	PERF_SAMPLE_BRANCH_HV         = C.PERF_SAMPLE_BRANCH_HV
	PERF_SAMPLE_BRANCH_ANY        = C.PERF_SAMPLE_BRANCH_ANY
	PERF_SAMPLE_BRANCH_ANY_CALL   = C.PERF_SAMPLE_BRANCH_ANY_CALL
	PERF_SAMPLE_BRANCH_ANY_RETURN = C.PERF_SAMPLE_BRANCH_ANY_RETURN
	PERF_SAMPLE_BRANCH_IND_CALL   = C.PERF_SAMPLE_BRANCH_IND_CALL
	PERF_SAMPLE_BRANCH_ABORT_TX   = C.PERF_SAMPLE_BRANCH_ABORT_TX
	PERF_SAMPLE_BRANCH_IN_TX      = C.PERF_SAMPLE_BRANCH_IN_TX
	PERF_SAMPLE_BRANCH_NO_TX      = C.PERF_SAMPLE_BRANCH_NO_TX
	PERF_SAMPLE_BRANCH_COND       = C.PERF_SAMPLE_BRANCH_COND
	PERF_SAMPLE_BRANCH_CALL_STACK = C.PERF_SAMPLE_BRANCH_CALL_STACK
	PERF_SAMPLE_BRANCH_IND_JUMP   = C.PERF_SAMPLE_BRANCH_IND_JUMP
	PERF_SAMPLE_BRANCH_CALL       = C.PERF_SAMPLE_BRANCH_CALL
	PERF_SAMPLE_BRANCH_NO_FLAGS   = C.PERF_SAMPLE_BRANCH_NO_FLAGS
	PERF_SAMPLE_BRANCH_NO_CYCLES  = C.PERF_SAMPLE_BRANCH_NO_CYCLES
	PERF_SAMPLE_BRANCH_TYPE_SAVE  = C.PERF_SAMPLE_BRANCH_TYPE_SAVE

	PERF_FORMAT_TOTAL_TIME_ENABLED = C.PERF_FORMAT_TOTAL_TIME_ENABLED
	PERF_FORMAT_TOTAL_TIME_RUNNING = C.PERF_FORMAT_TOTAL_TIME_RUNNING
	PERF_FORMAT_ID                 = C.PERF_FORMAT_ID
	PERF_FORMAT_GROUP              = C.PERF_FORMAT_GROUP

	PERF_RECORD_MMAP            = C.PERF_RECORD_MMAP
	PERF_RECORD_LOST            = C.PERF_RECORD_LOST
	PERF_RECORD_COMM            = C.PERF_RECORD_COMM
	PERF_RECORD_EXIT            = C.PERF_RECORD_EXIT
	PERF_RECORD_THROTTLE        = C.PERF_RECORD_THROTTLE
	PERF_RECORD_UNTHROTTLE      = C.PERF_RECORD_UNTHROTTLE
	PERF_RECORD_FORK            = C.PERF_RECORD_FORK
	PERF_RECORD_READ            = C.PERF_RECORD_READ
	PERF_RECORD_SAMPLE          = C.PERF_RECORD_SAMPLE
	PERF_RECORD_MMAP2           = C.PERF_RECORD_MMAP2
	PERF_RECORD_AUX             = C.PERF_RECORD_AUX
	PERF_RECORD_ITRACE_START    = C.PERF_RECORD_ITRACE_START
	PERF_RECORD_LOST_SAMPLES    = C.PERF_RECORD_LOST_SAMPLES
	PERF_RECORD_SWITCH          = C.PERF_RECORD_SWITCH
	PERF_RECORD_SWITCH_CPU_WIDE = C.PERF_RECORD_SWITCH_CPU_WIDE
	PERF_RECORD_NAMESPACES      = C.PERF_RECORD_NAMESPACES

	PERF_CONTEXT_HV     = C.PERF_CONTEXT_HV
	PERF_CONTEXT_KERNEL = C.PERF_CONTEXT_KERNEL
	PERF_CONTEXT_USER   = C.PERF_CONTEXT_USER

	PERF_CONTEXT_GUEST        = C.PERF_CONTEXT_GUEST
	PERF_CONTEXT_GUEST_KERNEL = C.PERF_CONTEXT_GUEST_KERNEL
	PERF_CONTEXT_GUEST_USER   = C.PERF_CONTEXT_GUEST_USER

	PERF_FLAG_FD_NO_GROUP = C.PERF_FLAG_FD_NO_GROUP
	PERF_FLAG_FD_OUTPUT   = C.PERF_FLAG_FD_OUTPUT
	PERF_FLAG_PID_CGROUP  = C.PERF_FLAG_PID_CGROUP
	PERF_FLAG_FD_CLOEXEC  = C.PERF_FLAG_FD_CLOEXEC
)

// Platform ABI and calling convention

// Bit field masks for interoperability with C code that uses bit fields.
// Each mask corresponds to a single bit set - bit field behavior can be replicated by combining
// the masks with bitwise OR.
const (
	CBitFieldMaskBit0  = C.BITFIELD_MASK_0
	CBitFieldMaskBit1  = C.BITFIELD_MASK_1
	CBitFieldMaskBit2  = C.BITFIELD_MASK_2
	CBitFieldMaskBit3  = C.BITFIELD_MASK_3
	CBitFieldMaskBit4  = C.BITFIELD_MASK_4
	CBitFieldMaskBit5  = C.BITFIELD_MASK_5
	CBitFieldMaskBit6  = C.BITFIELD_MASK_6
	CBitFieldMaskBit7  = C.BITFIELD_MASK_7
	CBitFieldMaskBit8  = C.BITFIELD_MASK_8
	CBitFieldMaskBit9  = C.BITFIELD_MASK_9
	CBitFieldMaskBit10 = C.BITFIELD_MASK_10
	CBitFieldMaskBit11 = C.BITFIELD_MASK_11
	CBitFieldMaskBit12 = C.BITFIELD_MASK_12
	CBitFieldMaskBit13 = C.BITFIELD_MASK_13
	CBitFieldMaskBit14 = C.BITFIELD_MASK_14
	CBitFieldMaskBit15 = C.BITFIELD_MASK_15
	CBitFieldMaskBit16 = C.BITFIELD_MASK_16
	CBitFieldMaskBit17 = C.BITFIELD_MASK_17
	CBitFieldMaskBit18 = C.BITFIELD_MASK_18
	CBitFieldMaskBit19 = C.BITFIELD_MASK_19
	CBitFieldMaskBit20 = C.BITFIELD_MASK_20
	CBitFieldMaskBit21 = C.BITFIELD_MASK_21
	CBitFieldMaskBit22 = C.BITFIELD_MASK_22
	CBitFieldMaskBit23 = C.BITFIELD_MASK_23
	CBitFieldMaskBit24 = C.BITFIELD_MASK_24
	CBitFieldMaskBit25 = C.BITFIELD_MASK_25
	CBitFieldMaskBit26 = C.BITFIELD_MASK_26
	CBitFieldMaskBit27 = C.BITFIELD_MASK_27
	CBitFieldMaskBit28 = C.BITFIELD_MASK_28
	CBitFieldMaskBit29 = C.BITFIELD_MASK_29
	CBitFieldMaskBit30 = C.BITFIELD_MASK_30
	CBitFieldMaskBit31 = C.BITFIELD_MASK_31
	CBitFieldMaskBit32 = C.BITFIELD_MASK_32
	CBitFieldMaskBit33 = C.BITFIELD_MASK_33
	CBitFieldMaskBit34 = C.BITFIELD_MASK_34
	CBitFieldMaskBit35 = C.BITFIELD_MASK_35
	CBitFieldMaskBit36 = C.BITFIELD_MASK_36
	CBitFieldMaskBit37 = C.BITFIELD_MASK_37
	CBitFieldMaskBit38 = C.BITFIELD_MASK_38
	CBitFieldMaskBit39 = C.BITFIELD_MASK_39
	CBitFieldMaskBit40 = C.BITFIELD_MASK_40
	CBitFieldMaskBit41 = C.BITFIELD_MASK_41
	CBitFieldMaskBit42 = C.BITFIELD_MASK_42
	CBitFieldMaskBit43 = C.BITFIELD_MASK_43
	CBitFieldMaskBit44 = C.BITFIELD_MASK_44
	CBitFieldMaskBit45 = C.BITFIELD_MASK_45
	CBitFieldMaskBit46 = C.BITFIELD_MASK_46
	CBitFieldMaskBit47 = C.BITFIELD_MASK_47
	CBitFieldMaskBit48 = C.BITFIELD_MASK_48
	CBitFieldMaskBit49 = C.BITFIELD_MASK_49
	CBitFieldMaskBit50 = C.BITFIELD_MASK_50
	CBitFieldMaskBit51 = C.BITFIELD_MASK_51
	CBitFieldMaskBit52 = C.BITFIELD_MASK_52
	CBitFieldMaskBit53 = C.BITFIELD_MASK_53
	CBitFieldMaskBit54 = C.BITFIELD_MASK_54
	CBitFieldMaskBit55 = C.BITFIELD_MASK_55
	CBitFieldMaskBit56 = C.BITFIELD_MASK_56
	CBitFieldMaskBit57 = C.BITFIELD_MASK_57
	CBitFieldMaskBit58 = C.BITFIELD_MASK_58
	CBitFieldMaskBit59 = C.BITFIELD_MASK_59
	CBitFieldMaskBit60 = C.BITFIELD_MASK_60
	CBitFieldMaskBit61 = C.BITFIELD_MASK_61
	CBitFieldMaskBit62 = C.BITFIELD_MASK_62
	CBitFieldMaskBit63 = C.BITFIELD_MASK_63
)

// TCP-MD5 signature.

type SockaddrStorage C.struct_sockaddr_storage

type TCPMD5Sig C.struct_tcp_md5sig

// Disk drive operations.

type HDDriveCmdHdr C.struct_hd_drive_cmd_hdr

type HDGeometry C.struct_hd_geometry

type HDDriveID C.struct_hd_driveid

// Statfs

type Statfs_t C.struct_statfs

const (
	ST_MANDLOCK    = C.ST_MANDLOCK
	ST_NOATIME     = C.ST_NOATIME
	ST_NODEV       = C.ST_NODEV
	ST_NODIRATIME  = C.ST_NODIRATIME
	ST_NOEXEC      = C.ST_NOEXEC
	ST_NOSUID      = C.ST_NOSUID
	ST_RDONLY      = C.ST_RDONLY
	ST_RELATIME    = C.ST_RELATIME
	ST_SYNCHRONOUS = C.ST_SYNCHRONOUS
)

// TPacket

type TpacketHdr C.struct_tpacket_hdr

type Tpacket2Hdr C.struct_tpacket2_hdr

type Tpacket3Hdr C.struct_tpacket3_hdr

type TpacketHdrVariant1 C.struct_tpacket_hdr_variant1

type TpacketBlockDesc C.struct_tpacket_block_desc

type TpacketBDTS C.struct_tpacket_bd_ts

type TpacketHdrV1 C.struct_tpacket_hdr_v1

type TpacketReq C.struct_tpacket_req

type TpacketReq3 C.struct_tpacket_req3

type TpacketStats C.struct_tpacket_stats

type TpacketStatsV3 C.struct_tpacket_stats_v3

type TpacketAuxdata C.struct_tpacket_auxdata

const (
	TPACKET_V1 = C.TPACKET_V1
	TPACKET_V2 = C.TPACKET_V2
	TPACKET_V3 = C.TPACKET_V3
)

const (
	SizeofTpacketHdr  = C.sizeof_struct_tpacket_hdr
	SizeofTpacket2Hdr = C.sizeof_struct_tpacket2_hdr
	SizeofTpacket3Hdr = C.sizeof_struct_tpacket3_hdr

	SizeofTpacketStats   = C.sizeof_struct_tpacket_stats
	SizeofTpacketStatsV3 = C.sizeof_struct_tpacket_stats_v3
)

// netfilter
// generated using:
// perl -nlE '/^\s*(NF\w+)/ && say "$1 = C.$1"' /usr/include/linux/netfilter.h
const (
	NF_INET_PRE_ROUTING  = C.NF_INET_PRE_ROUTING
	NF_INET_LOCAL_IN     = C.NF_INET_LOCAL_IN
	NF_INET_FORWARD      = C.NF_INET_FORWARD
	NF_INET_LOCAL_OUT    = C.NF_INET_LOCAL_OUT
	NF_INET_POST_ROUTING = C.NF_INET_POST_ROUTING
	NF_INET_NUMHOOKS     = C.NF_INET_NUMHOOKS
)

const (
	NF_NETDEV_INGRESS  = C.NF_NETDEV_INGRESS
	NF_NETDEV_NUMHOOKS = C.NF_NETDEV_NUMHOOKS
)

const (
	NFPROTO_UNSPEC   = C.NFPROTO_UNSPEC
	NFPROTO_INET     = C.NFPROTO_INET
	NFPROTO_IPV4     = C.NFPROTO_IPV4
	NFPROTO_ARP      = C.NFPROTO_ARP
	NFPROTO_NETDEV   = C.NFPROTO_NETDEV
	NFPROTO_BRIDGE   = C.NFPROTO_BRIDGE
	NFPROTO_IPV6     = C.NFPROTO_IPV6
	NFPROTO_DECNET   = C.NFPROTO_DECNET
	NFPROTO_NUMPROTO = C.NFPROTO_NUMPROTO
)

// netfilter nfnetlink
type Nfgenmsg C.struct_nfgenmsg

const (
	NFNL_BATCH_UNSPEC = C.NFNL_BATCH_UNSPEC
	NFNL_BATCH_GENID  = C.NFNL_BATCH_GENID
)

// netfilter nf_tables
// generated using:
// perl -nlE '/^\s*(NFT\w+)/ && say "$1 = C.$1"' /usr/include/linux/netfilter/nf_tables.h
const (
	NFT_REG_VERDICT                   = C.NFT_REG_VERDICT
	NFT_REG_1                         = C.NFT_REG_1
	NFT_REG_2                         = C.NFT_REG_2
	NFT_REG_3                         = C.NFT_REG_3
	NFT_REG_4                         = C.NFT_REG_4
	NFT_REG32_00                      = C.NFT_REG32_00
	NFT_REG32_01                      = C.NFT_REG32_01
	NFT_REG32_02                      = C.NFT_REG32_02
	NFT_REG32_03                      = C.NFT_REG32_03
	NFT_REG32_04                      = C.NFT_REG32_04
	NFT_REG32_05                      = C.NFT_REG32_05
	NFT_REG32_06                      = C.NFT_REG32_06
	NFT_REG32_07                      = C.NFT_REG32_07
	NFT_REG32_08                      = C.NFT_REG32_08
	NFT_REG32_09                      = C.NFT_REG32_09
	NFT_REG32_10                      = C.NFT_REG32_10
	NFT_REG32_11                      = C.NFT_REG32_11
	NFT_REG32_12                      = C.NFT_REG32_12
	NFT_REG32_13                      = C.NFT_REG32_13
	NFT_REG32_14                      = C.NFT_REG32_14
	NFT_REG32_15                      = C.NFT_REG32_15
	NFT_CONTINUE                      = C.NFT_CONTINUE
	NFT_BREAK                         = C.NFT_BREAK
	NFT_JUMP                          = C.NFT_JUMP
	NFT_GOTO                          = C.NFT_GOTO
	NFT_RETURN                        = C.NFT_RETURN
	NFT_MSG_NEWTABLE                  = C.NFT_MSG_NEWTABLE
	NFT_MSG_GETTABLE                  = C.NFT_MSG_GETTABLE
	NFT_MSG_DELTABLE                  = C.NFT_MSG_DELTABLE
	NFT_MSG_NEWCHAIN                  = C.NFT_MSG_NEWCHAIN
	NFT_MSG_GETCHAIN                  = C.NFT_MSG_GETCHAIN
	NFT_MSG_DELCHAIN                  = C.NFT_MSG_DELCHAIN
	NFT_MSG_NEWRULE                   = C.NFT_MSG_NEWRULE
	NFT_MSG_GETRULE                   = C.NFT_MSG_GETRULE
	NFT_MSG_DELRULE                   = C.NFT_MSG_DELRULE
	NFT_MSG_NEWSET                    = C.NFT_MSG_NEWSET
	NFT_MSG_GETSET                    = C.NFT_MSG_GETSET
	NFT_MSG_DELSET                    = C.NFT_MSG_DELSET
	NFT_MSG_NEWSETELEM                = C.NFT_MSG_NEWSETELEM
	NFT_MSG_GETSETELEM                = C.NFT_MSG_GETSETELEM
	NFT_MSG_DELSETELEM                = C.NFT_MSG_DELSETELEM
	NFT_MSG_NEWGEN                    = C.NFT_MSG_NEWGEN
	NFT_MSG_GETGEN                    = C.NFT_MSG_GETGEN
	NFT_MSG_TRACE                     = C.NFT_MSG_TRACE
	NFT_MSG_NEWOBJ                    = C.NFT_MSG_NEWOBJ
	NFT_MSG_GETOBJ                    = C.NFT_MSG_GETOBJ
	NFT_MSG_DELOBJ                    = C.NFT_MSG_DELOBJ
	NFT_MSG_GETOBJ_RESET              = C.NFT_MSG_GETOBJ_RESET
	NFT_MSG_MAX                       = C.NFT_MSG_MAX
	NFTA_LIST_UNPEC                   = C.NFTA_LIST_UNPEC
	NFTA_LIST_ELEM                    = C.NFTA_LIST_ELEM
	NFTA_HOOK_UNSPEC                  = C.NFTA_HOOK_UNSPEC
	NFTA_HOOK_HOOKNUM                 = C.NFTA_HOOK_HOOKNUM
	NFTA_HOOK_PRIORITY                = C.NFTA_HOOK_PRIORITY
	NFTA_HOOK_DEV                     = C.NFTA_HOOK_DEV
	NFT_TABLE_F_DORMANT               = C.NFT_TABLE_F_DORMANT
	NFTA_TABLE_UNSPEC                 = C.NFTA_TABLE_UNSPEC
	NFTA_TABLE_NAME                   = C.NFTA_TABLE_NAME
	NFTA_TABLE_FLAGS                  = C.NFTA_TABLE_FLAGS
	NFTA_TABLE_USE                    = C.NFTA_TABLE_USE
	NFTA_CHAIN_UNSPEC                 = C.NFTA_CHAIN_UNSPEC
	NFTA_CHAIN_TABLE                  = C.NFTA_CHAIN_TABLE
	NFTA_CHAIN_HANDLE                 = C.NFTA_CHAIN_HANDLE
	NFTA_CHAIN_NAME                   = C.NFTA_CHAIN_NAME
	NFTA_CHAIN_HOOK                   = C.NFTA_CHAIN_HOOK
	NFTA_CHAIN_POLICY                 = C.NFTA_CHAIN_POLICY
	NFTA_CHAIN_USE                    = C.NFTA_CHAIN_USE
	NFTA_CHAIN_TYPE                   = C.NFTA_CHAIN_TYPE
	NFTA_CHAIN_COUNTERS               = C.NFTA_CHAIN_COUNTERS
	NFTA_CHAIN_PAD                    = C.NFTA_CHAIN_PAD
	NFTA_RULE_UNSPEC                  = C.NFTA_RULE_UNSPEC
	NFTA_RULE_TABLE                   = C.NFTA_RULE_TABLE
	NFTA_RULE_CHAIN                   = C.NFTA_RULE_CHAIN
	NFTA_RULE_HANDLE                  = C.NFTA_RULE_HANDLE
	NFTA_RULE_EXPRESSIONS             = C.NFTA_RULE_EXPRESSIONS
	NFTA_RULE_COMPAT                  = C.NFTA_RULE_COMPAT
	NFTA_RULE_POSITION                = C.NFTA_RULE_POSITION
	NFTA_RULE_USERDATA                = C.NFTA_RULE_USERDATA
	NFTA_RULE_PAD                     = C.NFTA_RULE_PAD
	NFTA_RULE_ID                      = C.NFTA_RULE_ID
	NFT_RULE_COMPAT_F_INV             = C.NFT_RULE_COMPAT_F_INV
	NFT_RULE_COMPAT_F_MASK            = C.NFT_RULE_COMPAT_F_MASK
	NFTA_RULE_COMPAT_UNSPEC           = C.NFTA_RULE_COMPAT_UNSPEC
	NFTA_RULE_COMPAT_PROTO            = C.NFTA_RULE_COMPAT_PROTO
	NFTA_RULE_COMPAT_FLAGS            = C.NFTA_RULE_COMPAT_FLAGS
	NFT_SET_ANONYMOUS                 = C.NFT_SET_ANONYMOUS
	NFT_SET_CONSTANT                  = C.NFT_SET_CONSTANT
	NFT_SET_INTERVAL                  = C.NFT_SET_INTERVAL
	NFT_SET_MAP                       = C.NFT_SET_MAP
	NFT_SET_TIMEOUT                   = C.NFT_SET_TIMEOUT
	NFT_SET_EVAL                      = C.NFT_SET_EVAL
	NFT_SET_OBJECT                    = C.NFT_SET_OBJECT
	NFT_SET_POL_PERFORMANCE           = C.NFT_SET_POL_PERFORMANCE
	NFT_SET_POL_MEMORY                = C.NFT_SET_POL_MEMORY
	NFTA_SET_DESC_UNSPEC              = C.NFTA_SET_DESC_UNSPEC
	NFTA_SET_DESC_SIZE                = C.NFTA_SET_DESC_SIZE
	NFTA_SET_UNSPEC                   = C.NFTA_SET_UNSPEC
	NFTA_SET_TABLE                    = C.NFTA_SET_TABLE
	NFTA_SET_NAME                     = C.NFTA_SET_NAME
	NFTA_SET_FLAGS                    = C.NFTA_SET_FLAGS
	NFTA_SET_KEY_TYPE                 = C.NFTA_SET_KEY_TYPE
	NFTA_SET_KEY_LEN                  = C.NFTA_SET_KEY_LEN
	NFTA_SET_DATA_TYPE                = C.NFTA_SET_DATA_TYPE
	NFTA_SET_DATA_LEN                 = C.NFTA_SET_DATA_LEN
	NFTA_SET_POLICY                   = C.NFTA_SET_POLICY
	NFTA_SET_DESC                     = C.NFTA_SET_DESC
	NFTA_SET_ID                       = C.NFTA_SET_ID
	NFTA_SET_TIMEOUT                  = C.NFTA_SET_TIMEOUT
	NFTA_SET_GC_INTERVAL              = C.NFTA_SET_GC_INTERVAL
	NFTA_SET_USERDATA                 = C.NFTA_SET_USERDATA
	NFTA_SET_PAD                      = C.NFTA_SET_PAD
	NFTA_SET_OBJ_TYPE                 = C.NFTA_SET_OBJ_TYPE
	NFT_SET_ELEM_INTERVAL_END         = C.NFT_SET_ELEM_INTERVAL_END
	NFTA_SET_ELEM_UNSPEC              = C.NFTA_SET_ELEM_UNSPEC
	NFTA_SET_ELEM_KEY                 = C.NFTA_SET_ELEM_KEY
	NFTA_SET_ELEM_DATA                = C.NFTA_SET_ELEM_DATA
	NFTA_SET_ELEM_FLAGS               = C.NFTA_SET_ELEM_FLAGS
	NFTA_SET_ELEM_TIMEOUT             = C.NFTA_SET_ELEM_TIMEOUT
	NFTA_SET_ELEM_EXPIRATION          = C.NFTA_SET_ELEM_EXPIRATION
	NFTA_SET_ELEM_USERDATA            = C.NFTA_SET_ELEM_USERDATA
	NFTA_SET_ELEM_EXPR                = C.NFTA_SET_ELEM_EXPR
	NFTA_SET_ELEM_PAD                 = C.NFTA_SET_ELEM_PAD
	NFTA_SET_ELEM_OBJREF              = C.NFTA_SET_ELEM_OBJREF
	NFTA_SET_ELEM_LIST_UNSPEC         = C.NFTA_SET_ELEM_LIST_UNSPEC
	NFTA_SET_ELEM_LIST_TABLE          = C.NFTA_SET_ELEM_LIST_TABLE
	NFTA_SET_ELEM_LIST_SET            = C.NFTA_SET_ELEM_LIST_SET
	NFTA_SET_ELEM_LIST_ELEMENTS       = C.NFTA_SET_ELEM_LIST_ELEMENTS
	NFTA_SET_ELEM_LIST_SET_ID         = C.NFTA_SET_ELEM_LIST_SET_ID
	NFT_DATA_VALUE                    = C.NFT_DATA_VALUE
	NFT_DATA_VERDICT                  = C.NFT_DATA_VERDICT
	NFTA_DATA_UNSPEC                  = C.NFTA_DATA_UNSPEC
	NFTA_DATA_VALUE                   = C.NFTA_DATA_VALUE
	NFTA_DATA_VERDICT                 = C.NFTA_DATA_VERDICT
	NFTA_VERDICT_UNSPEC               = C.NFTA_VERDICT_UNSPEC
	NFTA_VERDICT_CODE                 = C.NFTA_VERDICT_CODE
	NFTA_VERDICT_CHAIN                = C.NFTA_VERDICT_CHAIN
	NFTA_EXPR_UNSPEC                  = C.NFTA_EXPR_UNSPEC
	NFTA_EXPR_NAME                    = C.NFTA_EXPR_NAME
	NFTA_EXPR_DATA                    = C.NFTA_EXPR_DATA
	NFTA_IMMEDIATE_UNSPEC             = C.NFTA_IMMEDIATE_UNSPEC
	NFTA_IMMEDIATE_DREG               = C.NFTA_IMMEDIATE_DREG
	NFTA_IMMEDIATE_DATA               = C.NFTA_IMMEDIATE_DATA
	NFTA_BITWISE_UNSPEC               = C.NFTA_BITWISE_UNSPEC
	NFTA_BITWISE_SREG                 = C.NFTA_BITWISE_SREG
	NFTA_BITWISE_DREG                 = C.NFTA_BITWISE_DREG
	NFTA_BITWISE_LEN                  = C.NFTA_BITWISE_LEN
	NFTA_BITWISE_MASK                 = C.NFTA_BITWISE_MASK
	NFTA_BITWISE_XOR                  = C.NFTA_BITWISE_XOR
	NFT_BYTEORDER_NTOH                = C.NFT_BYTEORDER_NTOH
	NFT_BYTEORDER_HTON                = C.NFT_BYTEORDER_HTON
	NFTA_BYTEORDER_UNSPEC             = C.NFTA_BYTEORDER_UNSPEC
	NFTA_BYTEORDER_SREG               = C.NFTA_BYTEORDER_SREG
	NFTA_BYTEORDER_DREG               = C.NFTA_BYTEORDER_DREG
	NFTA_BYTEORDER_OP                 = C.NFTA_BYTEORDER_OP
	NFTA_BYTEORDER_LEN                = C.NFTA_BYTEORDER_LEN
	NFTA_BYTEORDER_SIZE               = C.NFTA_BYTEORDER_SIZE
	NFT_CMP_EQ                        = C.NFT_CMP_EQ
	NFT_CMP_NEQ                       = C.NFT_CMP_NEQ
	NFT_CMP_LT                        = C.NFT_CMP_LT
	NFT_CMP_LTE                       = C.NFT_CMP_LTE
	NFT_CMP_GT                        = C.NFT_CMP_GT
	NFT_CMP_GTE                       = C.NFT_CMP_GTE
	NFTA_CMP_UNSPEC                   = C.NFTA_CMP_UNSPEC
	NFTA_CMP_SREG                     = C.NFTA_CMP_SREG
	NFTA_CMP_OP                       = C.NFTA_CMP_OP
	NFTA_CMP_DATA                     = C.NFTA_CMP_DATA
	NFT_RANGE_EQ                      = C.NFT_RANGE_EQ
	NFT_RANGE_NEQ                     = C.NFT_RANGE_NEQ
	NFTA_RANGE_UNSPEC                 = C.NFTA_RANGE_UNSPEC
	NFTA_RANGE_SREG                   = C.NFTA_RANGE_SREG
	NFTA_RANGE_OP                     = C.NFTA_RANGE_OP
	NFTA_RANGE_FROM_DATA              = C.NFTA_RANGE_FROM_DATA
	NFTA_RANGE_TO_DATA                = C.NFTA_RANGE_TO_DATA
	NFT_LOOKUP_F_INV                  = C.NFT_LOOKUP_F_INV
	NFTA_LOOKUP_UNSPEC                = C.NFTA_LOOKUP_UNSPEC
	NFTA_LOOKUP_SET                   = C.NFTA_LOOKUP_SET
	NFTA_LOOKUP_SREG                  = C.NFTA_LOOKUP_SREG
	NFTA_LOOKUP_DREG                  = C.NFTA_LOOKUP_DREG
	NFTA_LOOKUP_SET_ID                = C.NFTA_LOOKUP_SET_ID
	NFTA_LOOKUP_FLAGS                 = C.NFTA_LOOKUP_FLAGS
	NFT_DYNSET_OP_ADD                 = C.NFT_DYNSET_OP_ADD
	NFT_DYNSET_OP_UPDATE              = C.NFT_DYNSET_OP_UPDATE
	NFT_DYNSET_F_INV                  = C.NFT_DYNSET_F_INV
	NFTA_DYNSET_UNSPEC                = C.NFTA_DYNSET_UNSPEC
	NFTA_DYNSET_SET_NAME              = C.NFTA_DYNSET_SET_NAME
	NFTA_DYNSET_SET_ID                = C.NFTA_DYNSET_SET_ID
	NFTA_DYNSET_OP                    = C.NFTA_DYNSET_OP
	NFTA_DYNSET_SREG_KEY              = C.NFTA_DYNSET_SREG_KEY
	NFTA_DYNSET_SREG_DATA             = C.NFTA_DYNSET_SREG_DATA
	NFTA_DYNSET_TIMEOUT               = C.NFTA_DYNSET_TIMEOUT
	NFTA_DYNSET_EXPR                  = C.NFTA_DYNSET_EXPR
	NFTA_DYNSET_PAD                   = C.NFTA_DYNSET_PAD
	NFTA_DYNSET_FLAGS                 = C.NFTA_DYNSET_FLAGS
	NFT_PAYLOAD_LL_HEADER             = C.NFT_PAYLOAD_LL_HEADER
	NFT_PAYLOAD_NETWORK_HEADER        = C.NFT_PAYLOAD_NETWORK_HEADER
	NFT_PAYLOAD_TRANSPORT_HEADER      = C.NFT_PAYLOAD_TRANSPORT_HEADER
	NFT_PAYLOAD_CSUM_NONE             = C.NFT_PAYLOAD_CSUM_NONE
	NFT_PAYLOAD_CSUM_INET             = C.NFT_PAYLOAD_CSUM_INET
	NFT_PAYLOAD_L4CSUM_PSEUDOHDR      = C.NFT_PAYLOAD_L4CSUM_PSEUDOHDR
	NFTA_PAYLOAD_UNSPEC               = C.NFTA_PAYLOAD_UNSPEC
	NFTA_PAYLOAD_DREG                 = C.NFTA_PAYLOAD_DREG
	NFTA_PAYLOAD_BASE                 = C.NFTA_PAYLOAD_BASE
	NFTA_PAYLOAD_OFFSET               = C.NFTA_PAYLOAD_OFFSET
	NFTA_PAYLOAD_LEN                  = C.NFTA_PAYLOAD_LEN
	NFTA_PAYLOAD_SREG                 = C.NFTA_PAYLOAD_SREG
	NFTA_PAYLOAD_CSUM_TYPE            = C.NFTA_PAYLOAD_CSUM_TYPE
	NFTA_PAYLOAD_CSUM_OFFSET          = C.NFTA_PAYLOAD_CSUM_OFFSET
	NFTA_PAYLOAD_CSUM_FLAGS           = C.NFTA_PAYLOAD_CSUM_FLAGS
	NFT_EXTHDR_F_PRESENT              = C.NFT_EXTHDR_F_PRESENT
	NFT_EXTHDR_OP_IPV6                = C.NFT_EXTHDR_OP_IPV6
	NFT_EXTHDR_OP_TCPOPT              = C.NFT_EXTHDR_OP_TCPOPT
	NFTA_EXTHDR_UNSPEC                = C.NFTA_EXTHDR_UNSPEC
	NFTA_EXTHDR_DREG                  = C.NFTA_EXTHDR_DREG
	NFTA_EXTHDR_TYPE                  = C.NFTA_EXTHDR_TYPE
	NFTA_EXTHDR_OFFSET                = C.NFTA_EXTHDR_OFFSET
	NFTA_EXTHDR_LEN                   = C.NFTA_EXTHDR_LEN
	NFTA_EXTHDR_FLAGS                 = C.NFTA_EXTHDR_FLAGS
	NFTA_EXTHDR_OP                    = C.NFTA_EXTHDR_OP
	NFTA_EXTHDR_SREG                  = C.NFTA_EXTHDR_SREG
	NFT_META_LEN                      = C.NFT_META_LEN
	NFT_META_PROTOCOL                 = C.NFT_META_PROTOCOL
	NFT_META_PRIORITY                 = C.NFT_META_PRIORITY
	NFT_META_MARK                     = C.NFT_META_MARK
	NFT_META_IIF                      = C.NFT_META_IIF
	NFT_META_OIF                      = C.NFT_META_OIF
	NFT_META_IIFNAME                  = C.NFT_META_IIFNAME
	NFT_META_OIFNAME                  = C.NFT_META_OIFNAME
	NFT_META_IIFTYPE                  = C.NFT_META_IIFTYPE
	NFT_META_OIFTYPE                  = C.NFT_META_OIFTYPE
	NFT_META_SKUID                    = C.NFT_META_SKUID
	NFT_META_SKGID                    = C.NFT_META_SKGID
	NFT_META_NFTRACE                  = C.NFT_META_NFTRACE
	NFT_META_RTCLASSID                = C.NFT_META_RTCLASSID
	NFT_META_SECMARK                  = C.NFT_META_SECMARK
	NFT_META_NFPROTO                  = C.NFT_META_NFPROTO
	NFT_META_L4PROTO                  = C.NFT_META_L4PROTO
	NFT_META_BRI_IIFNAME              = C.NFT_META_BRI_IIFNAME
	NFT_META_BRI_OIFNAME              = C.NFT_META_BRI_OIFNAME
	NFT_META_PKTTYPE                  = C.NFT_META_PKTTYPE
	NFT_META_CPU                      = C.NFT_META_CPU
	NFT_META_IIFGROUP                 = C.NFT_META_IIFGROUP
	NFT_META_OIFGROUP                 = C.NFT_META_OIFGROUP
	NFT_META_CGROUP                   = C.NFT_META_CGROUP
	NFT_META_PRANDOM                  = C.NFT_META_PRANDOM
	NFT_RT_CLASSID                    = C.NFT_RT_CLASSID
	NFT_RT_NEXTHOP4                   = C.NFT_RT_NEXTHOP4
	NFT_RT_NEXTHOP6                   = C.NFT_RT_NEXTHOP6
	NFT_RT_TCPMSS                     = C.NFT_RT_TCPMSS
	NFT_HASH_JENKINS                  = C.NFT_HASH_JENKINS
	NFT_HASH_SYM                      = C.NFT_HASH_SYM
	NFTA_HASH_UNSPEC                  = C.NFTA_HASH_UNSPEC
	NFTA_HASH_SREG                    = C.NFTA_HASH_SREG
	NFTA_HASH_DREG                    = C.NFTA_HASH_DREG
	NFTA_HASH_LEN                     = C.NFTA_HASH_LEN
	NFTA_HASH_MODULUS                 = C.NFTA_HASH_MODULUS
	NFTA_HASH_SEED                    = C.NFTA_HASH_SEED
	NFTA_HASH_OFFSET                  = C.NFTA_HASH_OFFSET
	NFTA_HASH_TYPE                    = C.NFTA_HASH_TYPE
	NFTA_META_UNSPEC                  = C.NFTA_META_UNSPEC
	NFTA_META_DREG                    = C.NFTA_META_DREG
	NFTA_META_KEY                     = C.NFTA_META_KEY
	NFTA_META_SREG                    = C.NFTA_META_SREG
	NFTA_RT_UNSPEC                    = C.NFTA_RT_UNSPEC
	NFTA_RT_DREG                      = C.NFTA_RT_DREG
	NFTA_RT_KEY                       = C.NFTA_RT_KEY
	NFT_CT_STATE                      = C.NFT_CT_STATE
	NFT_CT_DIRECTION                  = C.NFT_CT_DIRECTION
	NFT_CT_STATUS                     = C.NFT_CT_STATUS
	NFT_CT_MARK                       = C.NFT_CT_MARK
	NFT_CT_SECMARK                    = C.NFT_CT_SECMARK
	NFT_CT_EXPIRATION                 = C.NFT_CT_EXPIRATION
	NFT_CT_HELPER                     = C.NFT_CT_HELPER
	NFT_CT_L3PROTOCOL                 = C.NFT_CT_L3PROTOCOL
	NFT_CT_SRC                        = C.NFT_CT_SRC
	NFT_CT_DST                        = C.NFT_CT_DST
	NFT_CT_PROTOCOL                   = C.NFT_CT_PROTOCOL
	NFT_CT_PROTO_SRC                  = C.NFT_CT_PROTO_SRC
	NFT_CT_PROTO_DST                  = C.NFT_CT_PROTO_DST
	NFT_CT_LABELS                     = C.NFT_CT_LABELS
	NFT_CT_PKTS                       = C.NFT_CT_PKTS
	NFT_CT_BYTES                      = C.NFT_CT_BYTES
	NFT_CT_AVGPKT                     = C.NFT_CT_AVGPKT
	NFT_CT_ZONE                       = C.NFT_CT_ZONE
	NFT_CT_EVENTMASK                  = C.NFT_CT_EVENTMASK
	NFTA_CT_UNSPEC                    = C.NFTA_CT_UNSPEC
	NFTA_CT_DREG                      = C.NFTA_CT_DREG
	NFTA_CT_KEY                       = C.NFTA_CT_KEY
	NFTA_CT_DIRECTION                 = C.NFTA_CT_DIRECTION
	NFTA_CT_SREG                      = C.NFTA_CT_SREG
	NFT_LIMIT_PKTS                    = C.NFT_LIMIT_PKTS
	NFT_LIMIT_PKT_BYTES               = C.NFT_LIMIT_PKT_BYTES
	NFT_LIMIT_F_INV                   = C.NFT_LIMIT_F_INV
	NFTA_LIMIT_UNSPEC                 = C.NFTA_LIMIT_UNSPEC
	NFTA_LIMIT_RATE                   = C.NFTA_LIMIT_RATE
	NFTA_LIMIT_UNIT                   = C.NFTA_LIMIT_UNIT
	NFTA_LIMIT_BURST                  = C.NFTA_LIMIT_BURST
	NFTA_LIMIT_TYPE                   = C.NFTA_LIMIT_TYPE
	NFTA_LIMIT_FLAGS                  = C.NFTA_LIMIT_FLAGS
	NFTA_LIMIT_PAD                    = C.NFTA_LIMIT_PAD
	NFTA_COUNTER_UNSPEC               = C.NFTA_COUNTER_UNSPEC
	NFTA_COUNTER_BYTES                = C.NFTA_COUNTER_BYTES
	NFTA_COUNTER_PACKETS              = C.NFTA_COUNTER_PACKETS
	NFTA_COUNTER_PAD                  = C.NFTA_COUNTER_PAD
	NFTA_LOG_UNSPEC                   = C.NFTA_LOG_UNSPEC
	NFTA_LOG_GROUP                    = C.NFTA_LOG_GROUP
	NFTA_LOG_PREFIX                   = C.NFTA_LOG_PREFIX
	NFTA_LOG_SNAPLEN                  = C.NFTA_LOG_SNAPLEN
	NFTA_LOG_QTHRESHOLD               = C.NFTA_LOG_QTHRESHOLD
	NFTA_LOG_LEVEL                    = C.NFTA_LOG_LEVEL
	NFTA_LOG_FLAGS                    = C.NFTA_LOG_FLAGS
	NFTA_QUEUE_UNSPEC                 = C.NFTA_QUEUE_UNSPEC
	NFTA_QUEUE_NUM                    = C.NFTA_QUEUE_NUM
	NFTA_QUEUE_TOTAL                  = C.NFTA_QUEUE_TOTAL
	NFTA_QUEUE_FLAGS                  = C.NFTA_QUEUE_FLAGS
	NFTA_QUEUE_SREG_QNUM              = C.NFTA_QUEUE_SREG_QNUM
	NFT_QUOTA_F_INV                   = C.NFT_QUOTA_F_INV
	NFT_QUOTA_F_DEPLETED              = C.NFT_QUOTA_F_DEPLETED
	NFTA_QUOTA_UNSPEC                 = C.NFTA_QUOTA_UNSPEC
	NFTA_QUOTA_BYTES                  = C.NFTA_QUOTA_BYTES
	NFTA_QUOTA_FLAGS                  = C.NFTA_QUOTA_FLAGS
	NFTA_QUOTA_PAD                    = C.NFTA_QUOTA_PAD
	NFTA_QUOTA_CONSUMED               = C.NFTA_QUOTA_CONSUMED
	NFT_REJECT_ICMP_UNREACH           = C.NFT_REJECT_ICMP_UNREACH
	NFT_REJECT_TCP_RST                = C.NFT_REJECT_TCP_RST
	NFT_REJECT_ICMPX_UNREACH          = C.NFT_REJECT_ICMPX_UNREACH
	NFT_REJECT_ICMPX_NO_ROUTE         = C.NFT_REJECT_ICMPX_NO_ROUTE
	NFT_REJECT_ICMPX_PORT_UNREACH     = C.NFT_REJECT_ICMPX_PORT_UNREACH
	NFT_REJECT_ICMPX_HOST_UNREACH     = C.NFT_REJECT_ICMPX_HOST_UNREACH
	NFT_REJECT_ICMPX_ADMIN_PROHIBITED = C.NFT_REJECT_ICMPX_ADMIN_PROHIBITED
	NFTA_REJECT_UNSPEC                = C.NFTA_REJECT_UNSPEC
	NFTA_REJECT_TYPE                  = C.NFTA_REJECT_TYPE
	NFTA_REJECT_ICMP_CODE             = C.NFTA_REJECT_ICMP_CODE
	NFT_NAT_SNAT                      = C.NFT_NAT_SNAT
	NFT_NAT_DNAT                      = C.NFT_NAT_DNAT
	NFTA_NAT_UNSPEC                   = C.NFTA_NAT_UNSPEC
	NFTA_NAT_TYPE                     = C.NFTA_NAT_TYPE
	NFTA_NAT_FAMILY                   = C.NFTA_NAT_FAMILY
	NFTA_NAT_REG_ADDR_MIN             = C.NFTA_NAT_REG_ADDR_MIN
	NFTA_NAT_REG_ADDR_MAX             = C.NFTA_NAT_REG_ADDR_MAX
	NFTA_NAT_REG_PROTO_MIN            = C.NFTA_NAT_REG_PROTO_MIN
	NFTA_NAT_REG_PROTO_MAX            = C.NFTA_NAT_REG_PROTO_MAX
	NFTA_NAT_FLAGS                    = C.NFTA_NAT_FLAGS
	NFTA_MASQ_UNSPEC                  = C.NFTA_MASQ_UNSPEC
	NFTA_MASQ_FLAGS                   = C.NFTA_MASQ_FLAGS
	NFTA_MASQ_REG_PROTO_MIN           = C.NFTA_MASQ_REG_PROTO_MIN
	NFTA_MASQ_REG_PROTO_MAX           = C.NFTA_MASQ_REG_PROTO_MAX
	NFTA_REDIR_UNSPEC                 = C.NFTA_REDIR_UNSPEC
	NFTA_REDIR_REG_PROTO_MIN          = C.NFTA_REDIR_REG_PROTO_MIN
	NFTA_REDIR_REG_PROTO_MAX          = C.NFTA_REDIR_REG_PROTO_MAX
	NFTA_REDIR_FLAGS                  = C.NFTA_REDIR_FLAGS
	NFTA_DUP_UNSPEC                   = C.NFTA_DUP_UNSPEC
	NFTA_DUP_SREG_ADDR                = C.NFTA_DUP_SREG_ADDR
	NFTA_DUP_SREG_DEV                 = C.NFTA_DUP_SREG_DEV
	NFTA_FWD_UNSPEC                   = C.NFTA_FWD_UNSPEC
	NFTA_FWD_SREG_DEV                 = C.NFTA_FWD_SREG_DEV
	NFTA_OBJREF_UNSPEC                = C.NFTA_OBJREF_UNSPEC
	NFTA_OBJREF_IMM_TYPE              = C.NFTA_OBJREF_IMM_TYPE
	NFTA_OBJREF_IMM_NAME              = C.NFTA_OBJREF_IMM_NAME
	NFTA_OBJREF_SET_SREG              = C.NFTA_OBJREF_SET_SREG
	NFTA_OBJREF_SET_NAME              = C.NFTA_OBJREF_SET_NAME
	NFTA_OBJREF_SET_ID                = C.NFTA_OBJREF_SET_ID
	NFTA_GEN_UNSPEC                   = C.NFTA_GEN_UNSPEC
	NFTA_GEN_ID                       = C.NFTA_GEN_ID
	NFTA_GEN_PROC_PID                 = C.NFTA_GEN_PROC_PID
	NFTA_GEN_PROC_NAME                = C.NFTA_GEN_PROC_NAME
	NFTA_FIB_UNSPEC                   = C.NFTA_FIB_UNSPEC
	NFTA_FIB_DREG                     = C.NFTA_FIB_DREG
	NFTA_FIB_RESULT                   = C.NFTA_FIB_RESULT
	NFTA_FIB_FLAGS                    = C.NFTA_FIB_FLAGS
	NFT_FIB_RESULT_UNSPEC             = C.NFT_FIB_RESULT_UNSPEC
	NFT_FIB_RESULT_OIF                = C.NFT_FIB_RESULT_OIF
	NFT_FIB_RESULT_OIFNAME            = C.NFT_FIB_RESULT_OIFNAME
	NFT_FIB_RESULT_ADDRTYPE           = C.NFT_FIB_RESULT_ADDRTYPE
	NFTA_FIB_F_SADDR                  = C.NFTA_FIB_F_SADDR
	NFTA_FIB_F_DADDR                  = C.NFTA_FIB_F_DADDR
	NFTA_FIB_F_MARK                   = C.NFTA_FIB_F_MARK
	NFTA_FIB_F_IIF                    = C.NFTA_FIB_F_IIF
	NFTA_FIB_F_OIF                    = C.NFTA_FIB_F_OIF
	NFTA_FIB_F_PRESENT                = C.NFTA_FIB_F_PRESENT
	NFTA_CT_HELPER_UNSPEC             = C.NFTA_CT_HELPER_UNSPEC
	NFTA_CT_HELPER_NAME               = C.NFTA_CT_HELPER_NAME
	NFTA_CT_HELPER_L3PROTO            = C.NFTA_CT_HELPER_L3PROTO
	NFTA_CT_HELPER_L4PROTO            = C.NFTA_CT_HELPER_L4PROTO
	NFTA_OBJ_UNSPEC                   = C.NFTA_OBJ_UNSPEC
	NFTA_OBJ_TABLE                    = C.NFTA_OBJ_TABLE
	NFTA_OBJ_NAME                     = C.NFTA_OBJ_NAME
	NFTA_OBJ_TYPE                     = C.NFTA_OBJ_TYPE
	NFTA_OBJ_DATA                     = C.NFTA_OBJ_DATA
	NFTA_OBJ_USE                      = C.NFTA_OBJ_USE
	NFTA_TRACE_UNSPEC                 = C.NFTA_TRACE_UNSPEC
	NFTA_TRACE_TABLE                  = C.NFTA_TRACE_TABLE
	NFTA_TRACE_CHAIN                  = C.NFTA_TRACE_CHAIN
	NFTA_TRACE_RULE_HANDLE            = C.NFTA_TRACE_RULE_HANDLE
	NFTA_TRACE_TYPE                   = C.NFTA_TRACE_TYPE
	NFTA_TRACE_VERDICT                = C.NFTA_TRACE_VERDICT
	NFTA_TRACE_ID                     = C.NFTA_TRACE_ID
	NFTA_TRACE_LL_HEADER              = C.NFTA_TRACE_LL_HEADER
	NFTA_TRACE_NETWORK_HEADER         = C.NFTA_TRACE_NETWORK_HEADER
	NFTA_TRACE_TRANSPORT_HEADER       = C.NFTA_TRACE_TRANSPORT_HEADER
	NFTA_TRACE_IIF                    = C.NFTA_TRACE_IIF
	NFTA_TRACE_IIFTYPE                = C.NFTA_TRACE_IIFTYPE
	NFTA_TRACE_OIF                    = C.NFTA_TRACE_OIF
	NFTA_TRACE_OIFTYPE                = C.NFTA_TRACE_OIFTYPE
	NFTA_TRACE_MARK                   = C.NFTA_TRACE_MARK
	NFTA_TRACE_NFPROTO                = C.NFTA_TRACE_NFPROTO
	NFTA_TRACE_POLICY                 = C.NFTA_TRACE_POLICY
	NFTA_TRACE_PAD                    = C.NFTA_TRACE_PAD
	NFT_TRACETYPE_UNSPEC              = C.NFT_TRACETYPE_UNSPEC
	NFT_TRACETYPE_POLICY              = C.NFT_TRACETYPE_POLICY
	NFT_TRACETYPE_RETURN              = C.NFT_TRACETYPE_RETURN
	NFT_TRACETYPE_RULE                = C.NFT_TRACETYPE_RULE
	NFTA_NG_UNSPEC                    = C.NFTA_NG_UNSPEC
	NFTA_NG_DREG                      = C.NFTA_NG_DREG
	NFTA_NG_MODULUS                   = C.NFTA_NG_MODULUS
	NFTA_NG_TYPE                      = C.NFTA_NG_TYPE
	NFTA_NG_OFFSET                    = C.NFTA_NG_OFFSET
	NFT_NG_INCREMENTAL                = C.NFT_NG_INCREMENTAL
	NFT_NG_RANDOM                     = C.NFT_NG_RANDOM
)

// netfilter nf_tables_compat
// generated using:
// perl -nlE '/^\s*(NFT\w+)/ && say "$1 = C.$1"' /usr/include/linux/netfilter/nf_tables_compat.h
const (
	NFTA_TARGET_UNSPEC = C.NFTA_TARGET_UNSPEC
	NFTA_TARGET_NAME   = C.NFTA_TARGET_NAME
	NFTA_TARGET_REV    = C.NFTA_TARGET_REV
	NFTA_TARGET_INFO   = C.NFTA_TARGET_INFO
	NFTA_MATCH_UNSPEC  = C.NFTA_MATCH_UNSPEC
	NFTA_MATCH_NAME    = C.NFTA_MATCH_NAME
	NFTA_MATCH_REV     = C.NFTA_MATCH_REV
	NFTA_MATCH_INFO    = C.NFTA_MATCH_INFO
	NFTA_COMPAT_UNSPEC = C.NFTA_COMPAT_UNSPEC
	NFTA_COMPAT_NAME   = C.NFTA_COMPAT_NAME
	NFTA_COMPAT_REV    = C.NFTA_COMPAT_REV
	NFTA_COMPAT_TYPE   = C.NFTA_COMPAT_TYPE
)

type RTCTime C.struct_rtc_time

type RTCWkAlrm C.struct_rtc_wkalrm

type RTCPLLInfo C.struct_rtc_pll_info

// BLKPG ioctl:

type BlkpgIoctlArg C.struct_blkpg_ioctl_arg

type BlkpgPartition C.struct_my_blkpg_partition

const (
	BLKPG                  = C.BLKPG
	BLKPG_ADD_PARTITION    = C.BLKPG_ADD_PARTITION
	BLKPG_DEL_PARTITION    = C.BLKPG_DEL_PARTITION
	BLKPG_RESIZE_PARTITION = C.BLKPG_RESIZE_PARTITION
)

// netlink namespace
// generated from
// perl -nlE '/^\s*(NETNSA\w+)/ && say "$1 = C.$1"' /usr/include/linux/net_namespace.h
const (
	NETNSA_NONE = C.NETNSA_NONE
	NETNSA_NSID = C.NETNSA_NSID
	NETNSA_PID  = C.NETNSA_PID
	NETNSA_FD   = C.NETNSA_FD
)

// AF_XDP:

type XDPRingOffset C.struct_xdp_ring_offset

type XDPMmapOffsets C.struct_xdp_mmap_offsets

type XDPUmemReg C.struct_xdp_umem_reg

type XDPStatistics C.struct_xdp_statistics

type XDPDesc C.struct_xdp_desc

// NCSI generic netlink:

const (
	NCSI_CMD_UNSPEC                 = C.NCSI_CMD_UNSPEC
	NCSI_CMD_PKG_INFO               = C.NCSI_CMD_PKG_INFO
	NCSI_CMD_SET_INTERFACE          = C.NCSI_CMD_SET_INTERFACE
	NCSI_CMD_CLEAR_INTERFACE        = C.NCSI_CMD_CLEAR_INTERFACE
	NCSI_ATTR_UNSPEC                = C.NCSI_ATTR_UNSPEC
	NCSI_ATTR_IFINDEX               = C.NCSI_ATTR_IFINDEX
	NCSI_ATTR_PACKAGE_LIST          = C.NCSI_ATTR_PACKAGE_LIST
	NCSI_ATTR_PACKAGE_ID            = C.NCSI_ATTR_PACKAGE_ID
	NCSI_ATTR_CHANNEL_ID            = C.NCSI_ATTR_CHANNEL_ID
	NCSI_PKG_ATTR_UNSPEC            = C.NCSI_PKG_ATTR_UNSPEC
	NCSI_PKG_ATTR                   = C.NCSI_PKG_ATTR
	NCSI_PKG_ATTR_ID                = C.NCSI_PKG_ATTR_ID
	NCSI_PKG_ATTR_FORCED            = C.NCSI_PKG_ATTR_FORCED
	NCSI_PKG_ATTR_CHANNEL_LIST      = C.NCSI_PKG_ATTR_CHANNEL_LIST
	NCSI_CHANNEL_ATTR_UNSPEC        = C.NCSI_CHANNEL_ATTR_UNSPEC
	NCSI_CHANNEL_ATTR               = C.NCSI_CHANNEL_ATTR
	NCSI_CHANNEL_ATTR_ID            = C.NCSI_CHANNEL_ATTR_ID
	NCSI_CHANNEL_ATTR_VERSION_MAJOR = C.NCSI_CHANNEL_ATTR_VERSION_MAJOR
	NCSI_CHANNEL_ATTR_VERSION_MINOR = C.NCSI_CHANNEL_ATTR_VERSION_MINOR
	NCSI_CHANNEL_ATTR_VERSION_STR   = C.NCSI_CHANNEL_ATTR_VERSION_STR
	NCSI_CHANNEL_ATTR_LINK_STATE    = C.NCSI_CHANNEL_ATTR_LINK_STATE
	NCSI_CHANNEL_ATTR_ACTIVE        = C.NCSI_CHANNEL_ATTR_ACTIVE
	NCSI_CHANNEL_ATTR_FORCED        = C.NCSI_CHANNEL_ATTR_FORCED
	NCSI_CHANNEL_ATTR_VLAN_LIST     = C.NCSI_CHANNEL_ATTR_VLAN_LIST
	NCSI_CHANNEL_ATTR_VLAN_ID       = C.NCSI_CHANNEL_ATTR_VLAN_ID
)

// Timestamping

type ScmTimestamping C.struct_scm_timestamping

const (
	SOF_TIMESTAMPING_TX_HARDWARE  = C.SOF_TIMESTAMPING_TX_HARDWARE
	SOF_TIMESTAMPING_TX_SOFTWARE  = C.SOF_TIMESTAMPING_TX_SOFTWARE
	SOF_TIMESTAMPING_RX_HARDWARE  = C.SOF_TIMESTAMPING_RX_HARDWARE
	SOF_TIMESTAMPING_RX_SOFTWARE  = C.SOF_TIMESTAMPING_RX_SOFTWARE
	SOF_TIMESTAMPING_SOFTWARE     = C.SOF_TIMESTAMPING_SOFTWARE
	SOF_TIMESTAMPING_SYS_HARDWARE = C.SOF_TIMESTAMPING_SYS_HARDWARE
	SOF_TIMESTAMPING_RAW_HARDWARE = C.SOF_TIMESTAMPING_RAW_HARDWARE
	SOF_TIMESTAMPING_OPT_ID       = C.SOF_TIMESTAMPING_OPT_ID
	SOF_TIMESTAMPING_TX_SCHED     = C.SOF_TIMESTAMPING_TX_SCHED
	SOF_TIMESTAMPING_TX_ACK       = C.SOF_TIMESTAMPING_TX_ACK
	SOF_TIMESTAMPING_OPT_CMSG     = C.SOF_TIMESTAMPING_OPT_CMSG
	SOF_TIMESTAMPING_OPT_TSONLY   = C.SOF_TIMESTAMPING_OPT_TSONLY
	SOF_TIMESTAMPING_OPT_STATS    = C.SOF_TIMESTAMPING_OPT_STATS
	SOF_TIMESTAMPING_OPT_PKTINFO  = C.SOF_TIMESTAMPING_OPT_PKTINFO
	SOF_TIMESTAMPING_OPT_TX_SWHW  = C.SOF_TIMESTAMPING_OPT_TX_SWHW

	SOF_TIMESTAMPING_LAST = C.SOF_TIMESTAMPING_LAST
	SOF_TIMESTAMPING_MASK = C.SOF_TIMESTAMPING_MASK

	SCM_TSTAMP_SND   = C.SCM_TSTAMP_SND
	SCM_TSTAMP_SCHED = C.SCM_TSTAMP_SCHED
	SCM_TSTAMP_ACK   = C.SCM_TSTAMP_ACK
)

// Socket error queue

type SockExtendedErr C.struct_sock_extended_err

// Fanotify

type FanotifyEventMetadata C.struct_fanotify_event_metadata

type FanotifyResponse C.struct_fanotify_response

// Crypto user configuration API.

const (
	CRYPTO_MSG_BASE      = C.CRYPTO_MSG_BASE
	CRYPTO_MSG_NEWALG    = C.CRYPTO_MSG_NEWALG
	CRYPTO_MSG_DELALG    = C.CRYPTO_MSG_DELALG
	CRYPTO_MSG_UPDATEALG = C.CRYPTO_MSG_UPDATEALG
	CRYPTO_MSG_GETALG    = C.CRYPTO_MSG_GETALG
	CRYPTO_MSG_DELRNG    = C.CRYPTO_MSG_DELRNG
	CRYPTO_MSG_GETSTAT   = C.CRYPTO_MSG_GETSTAT
)

const (
	CRYPTOCFGA_UNSPEC           = C.CRYPTOCFGA_UNSPEC
	CRYPTOCFGA_PRIORITY_VAL     = C.CRYPTOCFGA_PRIORITY_VAL
	CRYPTOCFGA_REPORT_LARVAL    = C.CRYPTOCFGA_REPORT_LARVAL
	CRYPTOCFGA_REPORT_HASH      = C.CRYPTOCFGA_REPORT_HASH
	CRYPTOCFGA_REPORT_BLKCIPHER = C.CRYPTOCFGA_REPORT_BLKCIPHER
	CRYPTOCFGA_REPORT_AEAD      = C.CRYPTOCFGA_REPORT_AEAD
	CRYPTOCFGA_REPORT_COMPRESS  = C.CRYPTOCFGA_REPORT_COMPRESS
	CRYPTOCFGA_REPORT_RNG       = C.CRYPTOCFGA_REPORT_RNG
	CRYPTOCFGA_REPORT_CIPHER    = C.CRYPTOCFGA_REPORT_CIPHER
	CRYPTOCFGA_REPORT_AKCIPHER  = C.CRYPTOCFGA_REPORT_AKCIPHER
	CRYPTOCFGA_REPORT_KPP       = C.CRYPTOCFGA_REPORT_KPP
	CRYPTOCFGA_REPORT_ACOMP     = C.CRYPTOCFGA_REPORT_ACOMP
	CRYPTOCFGA_STAT_LARVAL      = C.CRYPTOCFGA_STAT_LARVAL
	CRYPTOCFGA_STAT_HASH        = C.CRYPTOCFGA_STAT_HASH
	CRYPTOCFGA_STAT_BLKCIPHER   = C.CRYPTOCFGA_STAT_BLKCIPHER
	CRYPTOCFGA_STAT_AEAD        = C.CRYPTOCFGA_STAT_AEAD
	CRYPTOCFGA_STAT_COMPRESS    = C.CRYPTOCFGA_STAT_COMPRESS
	CRYPTOCFGA_STAT_RNG         = C.CRYPTOCFGA_STAT_RNG
	CRYPTOCFGA_STAT_CIPHER      = C.CRYPTOCFGA_STAT_CIPHER
	CRYPTOCFGA_STAT_AKCIPHER    = C.CRYPTOCFGA_STAT_AKCIPHER
	CRYPTOCFGA_STAT_KPP         = C.CRYPTOCFGA_STAT_KPP
	CRYPTOCFGA_STAT_ACOMP       = C.CRYPTOCFGA_STAT_ACOMP
)

type CryptoUserAlg C.struct_crypto_user_alg

type CryptoStatAEAD C.struct_crypto_stat_aead

type CryptoStatAKCipher C.struct_crypto_stat_akcipher

type CryptoStatCipher C.struct_crypto_stat_cipher

type CryptoStatCompress C.struct_crypto_stat_compress

type CryptoStatHash C.struct_crypto_stat_hash

type CryptoStatKPP C.struct_crypto_stat_kpp

type CryptoStatRNG C.struct_crypto_stat_rng

type CryptoStatLarval C.struct_crypto_stat_larval

type CryptoReportLarval C.struct_crypto_report_larval

type CryptoReportHash C.struct_crypto_report_hash

type CryptoReportCipher C.struct_crypto_report_cipher

type CryptoReportBlkCipher C.struct_crypto_report_blkcipher

type CryptoReportAEAD C.struct_crypto_report_aead

type CryptoReportComp C.struct_crypto_report_comp

type CryptoReportRNG C.struct_crypto_report_rng

type CryptoReportAKCipher C.struct_crypto_report_akcipher

type CryptoReportKPP C.struct_crypto_report_kpp

type CryptoReportAcomp C.struct_crypto_report_acomp

// generated by:
// perl -nlE '/^\s*((TCP_)?BPF_\w+)/ && say "$1 = C.$1"' include/uapi/linux/bpf.h
const (
	BPF_REG_0                               = C.BPF_REG_0
	BPF_REG_1                               = C.BPF_REG_1
	BPF_REG_2                               = C.BPF_REG_2
	BPF_REG_3                               = C.BPF_REG_3
	BPF_REG_4                               = C.BPF_REG_4
	BPF_REG_5                               = C.BPF_REG_5
	BPF_REG_6                               = C.BPF_REG_6
	BPF_REG_7                               = C.BPF_REG_7
	BPF_REG_8                               = C.BPF_REG_8
	BPF_REG_9                               = C.BPF_REG_9
	BPF_REG_10                              = C.BPF_REG_10
	BPF_MAP_CREATE                          = C.BPF_MAP_CREATE
	BPF_MAP_LOOKUP_ELEM                     = C.BPF_MAP_LOOKUP_ELEM
	BPF_MAP_UPDATE_ELEM                     = C.BPF_MAP_UPDATE_ELEM
	BPF_MAP_DELETE_ELEM                     = C.BPF_MAP_DELETE_ELEM
	BPF_MAP_GET_NEXT_KEY                    = C.BPF_MAP_GET_NEXT_KEY
	BPF_PROG_LOAD                           = C.BPF_PROG_LOAD
	BPF_OBJ_PIN                             = C.BPF_OBJ_PIN
	BPF_OBJ_GET                             = C.BPF_OBJ_GET
	BPF_PROG_ATTACH                         = C.BPF_PROG_ATTACH
	BPF_PROG_DETACH                         = C.BPF_PROG_DETACH
	BPF_PROG_TEST_RUN                       = C.BPF_PROG_TEST_RUN
	BPF_PROG_GET_NEXT_ID                    = C.BPF_PROG_GET_NEXT_ID
	BPF_MAP_GET_NEXT_ID                     = C.BPF_MAP_GET_NEXT_ID
	BPF_PROG_GET_FD_BY_ID                   = C.BPF_PROG_GET_FD_BY_ID
	BPF_MAP_GET_FD_BY_ID                    = C.BPF_MAP_GET_FD_BY_ID
	BPF_OBJ_GET_INFO_BY_FD                  = C.BPF_OBJ_GET_INFO_BY_FD
	BPF_PROG_QUERY                          = C.BPF_PROG_QUERY
	BPF_RAW_TRACEPOINT_OPEN                 = C.BPF_RAW_TRACEPOINT_OPEN
	BPF_BTF_LOAD                            = C.BPF_BTF_LOAD
	BPF_BTF_GET_FD_BY_ID                    = C.BPF_BTF_GET_FD_BY_ID
	BPF_TASK_FD_QUERY                       = C.BPF_TASK_FD_QUERY
	BPF_MAP_LOOKUP_AND_DELETE_ELEM          = C.BPF_MAP_LOOKUP_AND_DELETE_ELEM
	BPF_MAP_FREEZE                          = C.BPF_MAP_FREEZE
	BPF_BTF_GET_NEXT_ID                     = C.BPF_BTF_GET_NEXT_ID
	BPF_MAP_LOOKUP_BATCH                    = C.BPF_MAP_LOOKUP_BATCH
	BPF_MAP_LOOKUP_AND_DELETE_BATCH         = C.BPF_MAP_LOOKUP_AND_DELETE_BATCH
	BPF_MAP_UPDATE_BATCH                    = C.BPF_MAP_UPDATE_BATCH
	BPF_MAP_DELETE_BATCH                    = C.BPF_MAP_DELETE_BATCH
	BPF_LINK_CREATE                         = C.BPF_LINK_CREATE
	BPF_LINK_UPDATE                         = C.BPF_LINK_UPDATE
	BPF_LINK_GET_FD_BY_ID                   = C.BPF_LINK_GET_FD_BY_ID
	BPF_LINK_GET_NEXT_ID                    = C.BPF_LINK_GET_NEXT_ID
	BPF_ENABLE_STATS                        = C.BPF_ENABLE_STATS
	BPF_ITER_CREATE                         = C.BPF_ITER_CREATE
	BPF_MAP_TYPE_UNSPEC                     = C.BPF_MAP_TYPE_UNSPEC
	BPF_MAP_TYPE_HASH                       = C.BPF_MAP_TYPE_HASH
	BPF_MAP_TYPE_ARRAY                      = C.BPF_MAP_TYPE_ARRAY
	BPF_MAP_TYPE_PROG_ARRAY                 = C.BPF_MAP_TYPE_PROG_ARRAY
	BPF_MAP_TYPE_PERF_EVENT_ARRAY           = C.BPF_MAP_TYPE_PERF_EVENT_ARRAY
	BPF_MAP_TYPE_PERCPU_HASH                = C.BPF_MAP_TYPE_PERCPU_HASH
	BPF_MAP_TYPE_PERCPU_ARRAY               = C.BPF_MAP_TYPE_PERCPU_ARRAY
	BPF_MAP_TYPE_STACK_TRACE                = C.BPF_MAP_TYPE_STACK_TRACE
	BPF_MAP_TYPE_CGROUP_ARRAY               = C.BPF_MAP_TYPE_CGROUP_ARRAY
	BPF_MAP_TYPE_LRU_HASH                   = C.BPF_MAP_TYPE_LRU_HASH
	BPF_MAP_TYPE_LRU_PERCPU_HASH            = C.BPF_MAP_TYPE_LRU_PERCPU_HASH
	BPF_MAP_TYPE_LPM_TRIE                   = C.BPF_MAP_TYPE_LPM_TRIE
	BPF_MAP_TYPE_ARRAY_OF_MAPS              = C.BPF_MAP_TYPE_ARRAY_OF_MAPS
	BPF_MAP_TYPE_HASH_OF_MAPS               = C.BPF_MAP_TYPE_HASH_OF_MAPS
	BPF_MAP_TYPE_DEVMAP                     = C.BPF_MAP_TYPE_DEVMAP
	BPF_MAP_TYPE_SOCKMAP                    = C.BPF_MAP_TYPE_SOCKMAP
	BPF_MAP_TYPE_CPUMAP                     = C.BPF_MAP_TYPE_CPUMAP
	BPF_MAP_TYPE_XSKMAP                     = C.BPF_MAP_TYPE_XSKMAP
	BPF_MAP_TYPE_SOCKHASH                   = C.BPF_MAP_TYPE_SOCKHASH
	BPF_MAP_TYPE_CGROUP_STORAGE             = C.BPF_MAP_TYPE_CGROUP_STORAGE
	BPF_MAP_TYPE_REUSEPORT_SOCKARRAY        = C.BPF_MAP_TYPE_REUSEPORT_SOCKARRAY
	BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE      = C.BPF_MAP_TYPE_PERCPU_CGROUP_STORAGE
	BPF_MAP_TYPE_QUEUE                      = C.BPF_MAP_TYPE_QUEUE
	BPF_MAP_TYPE_STACK                      = C.BPF_MAP_TYPE_STACK
	BPF_MAP_TYPE_SK_STORAGE                 = C.BPF_MAP_TYPE_SK_STORAGE
	BPF_MAP_TYPE_DEVMAP_HASH                = C.BPF_MAP_TYPE_DEVMAP_HASH
	BPF_MAP_TYPE_STRUCT_OPS                 = C.BPF_MAP_TYPE_STRUCT_OPS
	BPF_MAP_TYPE_RINGBUF                    = C.BPF_MAP_TYPE_RINGBUF
	BPF_PROG_TYPE_UNSPEC                    = C.BPF_PROG_TYPE_UNSPEC
	BPF_PROG_TYPE_SOCKET_FILTER             = C.BPF_PROG_TYPE_SOCKET_FILTER
	BPF_PROG_TYPE_KPROBE                    = C.BPF_PROG_TYPE_KPROBE
	BPF_PROG_TYPE_SCHED_CLS                 = C.BPF_PROG_TYPE_SCHED_CLS
	BPF_PROG_TYPE_SCHED_ACT                 = C.BPF_PROG_TYPE_SCHED_ACT
	BPF_PROG_TYPE_TRACEPOINT                = C.BPF_PROG_TYPE_TRACEPOINT
	BPF_PROG_TYPE_XDP                       = C.BPF_PROG_TYPE_XDP
	BPF_PROG_TYPE_PERF_EVENT                = C.BPF_PROG_TYPE_PERF_EVENT
	BPF_PROG_TYPE_CGROUP_SKB                = C.BPF_PROG_TYPE_CGROUP_SKB
	BPF_PROG_TYPE_CGROUP_SOCK               = C.BPF_PROG_TYPE_CGROUP_SOCK
	BPF_PROG_TYPE_LWT_IN                    = C.BPF_PROG_TYPE_LWT_IN
	BPF_PROG_TYPE_LWT_OUT                   = C.BPF_PROG_TYPE_LWT_OUT
	BPF_PROG_TYPE_LWT_XMIT                  = C.BPF_PROG_TYPE_LWT_XMIT
	BPF_PROG_TYPE_SOCK_OPS                  = C.BPF_PROG_TYPE_SOCK_OPS
	BPF_PROG_TYPE_SK_SKB                    = C.BPF_PROG_TYPE_SK_SKB
	BPF_PROG_TYPE_CGROUP_DEVICE             = C.BPF_PROG_TYPE_CGROUP_DEVICE
	BPF_PROG_TYPE_SK_MSG                    = C.BPF_PROG_TYPE_SK_MSG
	BPF_PROG_TYPE_RAW_TRACEPOINT            = C.BPF_PROG_TYPE_RAW_TRACEPOINT
	BPF_PROG_TYPE_CGROUP_SOCK_ADDR          = C.BPF_PROG_TYPE_CGROUP_SOCK_ADDR
	BPF_PROG_TYPE_LWT_SEG6LOCAL             = C.BPF_PROG_TYPE_LWT_SEG6LOCAL
	BPF_PROG_TYPE_LIRC_MODE2                = C.BPF_PROG_TYPE_LIRC_MODE2
	BPF_PROG_TYPE_SK_REUSEPORT              = C.BPF_PROG_TYPE_SK_REUSEPORT
	BPF_PROG_TYPE_FLOW_DISSECTOR            = C.BPF_PROG_TYPE_FLOW_DISSECTOR
	BPF_PROG_TYPE_CGROUP_SYSCTL             = C.BPF_PROG_TYPE_CGROUP_SYSCTL
	BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE   = C.BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE
	BPF_PROG_TYPE_CGROUP_SOCKOPT            = C.BPF_PROG_TYPE_CGROUP_SOCKOPT
	BPF_PROG_TYPE_TRACING                   = C.BPF_PROG_TYPE_TRACING
	BPF_PROG_TYPE_STRUCT_OPS                = C.BPF_PROG_TYPE_STRUCT_OPS
	BPF_PROG_TYPE_EXT                       = C.BPF_PROG_TYPE_EXT
	BPF_PROG_TYPE_LSM                       = C.BPF_PROG_TYPE_LSM
	BPF_CGROUP_INET_INGRESS                 = C.BPF_CGROUP_INET_INGRESS
	BPF_CGROUP_INET_EGRESS                  = C.BPF_CGROUP_INET_EGRESS
	BPF_CGROUP_INET_SOCK_CREATE             = C.BPF_CGROUP_INET_SOCK_CREATE
	BPF_CGROUP_SOCK_OPS                     = C.BPF_CGROUP_SOCK_OPS
	BPF_SK_SKB_STREAM_PARSER                = C.BPF_SK_SKB_STREAM_PARSER
	BPF_SK_SKB_STREAM_VERDICT               = C.BPF_SK_SKB_STREAM_VERDICT
	BPF_CGROUP_DEVICE                       = C.BPF_CGROUP_DEVICE
	BPF_SK_MSG_VERDICT                      = C.BPF_SK_MSG_VERDICT
	BPF_CGROUP_INET4_BIND                   = C.BPF_CGROUP_INET4_BIND
	BPF_CGROUP_INET6_BIND                   = C.BPF_CGROUP_INET6_BIND
	BPF_CGROUP_INET4_CONNECT                = C.BPF_CGROUP_INET4_CONNECT
	BPF_CGROUP_INET6_CONNECT                = C.BPF_CGROUP_INET6_CONNECT
	BPF_CGROUP_INET4_POST_BIND              = C.BPF_CGROUP_INET4_POST_BIND
	BPF_CGROUP_INET6_POST_BIND              = C.BPF_CGROUP_INET6_POST_BIND
	BPF_CGROUP_UDP4_SENDMSG                 = C.BPF_CGROUP_UDP4_SENDMSG
	BPF_CGROUP_UDP6_SENDMSG                 = C.BPF_CGROUP_UDP6_SENDMSG
	BPF_LIRC_MODE2                          = C.BPF_LIRC_MODE2
	BPF_FLOW_DISSECTOR                      = C.BPF_FLOW_DISSECTOR
	BPF_CGROUP_SYSCTL                       = C.BPF_CGROUP_SYSCTL
	BPF_CGROUP_UDP4_RECVMSG                 = C.BPF_CGROUP_UDP4_RECVMSG
	BPF_CGROUP_UDP6_RECVMSG                 = C.BPF_CGROUP_UDP6_RECVMSG
	BPF_CGROUP_GETSOCKOPT                   = C.BPF_CGROUP_GETSOCKOPT
	BPF_CGROUP_SETSOCKOPT                   = C.BPF_CGROUP_SETSOCKOPT
	BPF_TRACE_RAW_TP                        = C.BPF_TRACE_RAW_TP
	BPF_TRACE_FENTRY                        = C.BPF_TRACE_FENTRY
	BPF_TRACE_FEXIT                         = C.BPF_TRACE_FEXIT
	BPF_MODIFY_RETURN                       = C.BPF_MODIFY_RETURN
	BPF_LSM_MAC                             = C.BPF_LSM_MAC
	BPF_TRACE_ITER                          = C.BPF_TRACE_ITER
	BPF_CGROUP_INET4_GETPEERNAME            = C.BPF_CGROUP_INET4_GETPEERNAME
	BPF_CGROUP_INET6_GETPEERNAME            = C.BPF_CGROUP_INET6_GETPEERNAME
	BPF_CGROUP_INET4_GETSOCKNAME            = C.BPF_CGROUP_INET4_GETSOCKNAME
	BPF_CGROUP_INET6_GETSOCKNAME            = C.BPF_CGROUP_INET6_GETSOCKNAME
	BPF_XDP_DEVMAP                          = C.BPF_XDP_DEVMAP
	BPF_LINK_TYPE_UNSPEC                    = C.BPF_LINK_TYPE_UNSPEC
	BPF_LINK_TYPE_RAW_TRACEPOINT            = C.BPF_LINK_TYPE_RAW_TRACEPOINT
	BPF_LINK_TYPE_TRACING                   = C.BPF_LINK_TYPE_TRACING
	BPF_LINK_TYPE_CGROUP                    = C.BPF_LINK_TYPE_CGROUP
	BPF_LINK_TYPE_ITER                      = C.BPF_LINK_TYPE_ITER
	BPF_LINK_TYPE_NETNS                     = C.BPF_LINK_TYPE_NETNS
	BPF_ANY                                 = C.BPF_ANY
	BPF_NOEXIST                             = C.BPF_NOEXIST
	BPF_EXIST                               = C.BPF_EXIST
	BPF_F_LOCK                              = C.BPF_F_LOCK
	BPF_F_NO_PREALLOC                       = C.BPF_F_NO_PREALLOC
	BPF_F_NO_COMMON_LRU                     = C.BPF_F_NO_COMMON_LRU
	BPF_F_NUMA_NODE                         = C.BPF_F_NUMA_NODE
	BPF_F_RDONLY                            = C.BPF_F_RDONLY
	BPF_F_WRONLY                            = C.BPF_F_WRONLY
	BPF_F_STACK_BUILD_ID                    = C.BPF_F_STACK_BUILD_ID
	BPF_F_ZERO_SEED                         = C.BPF_F_ZERO_SEED
	BPF_F_RDONLY_PROG                       = C.BPF_F_RDONLY_PROG
	BPF_F_WRONLY_PROG                       = C.BPF_F_WRONLY_PROG
	BPF_F_CLONE                             = C.BPF_F_CLONE
	BPF_F_MMAPABLE                          = C.BPF_F_MMAPABLE
	BPF_STATS_RUN_TIME                      = C.BPF_STATS_RUN_TIME
	BPF_STACK_BUILD_ID_EMPTY                = C.BPF_STACK_BUILD_ID_EMPTY
	BPF_STACK_BUILD_ID_VALID                = C.BPF_STACK_BUILD_ID_VALID
	BPF_STACK_BUILD_ID_IP                   = C.BPF_STACK_BUILD_ID_IP
	BPF_F_RECOMPUTE_CSUM                    = C.BPF_F_RECOMPUTE_CSUM
	BPF_F_INVALIDATE_HASH                   = C.BPF_F_INVALIDATE_HASH
	BPF_F_HDR_FIELD_MASK                    = C.BPF_F_HDR_FIELD_MASK
	BPF_F_PSEUDO_HDR                        = C.BPF_F_PSEUDO_HDR
	BPF_F_MARK_MANGLED_0                    = C.BPF_F_MARK_MANGLED_0
	BPF_F_MARK_ENFORCE                      = C.BPF_F_MARK_ENFORCE
	BPF_F_INGRESS                           = C.BPF_F_INGRESS
	BPF_F_TUNINFO_IPV6                      = C.BPF_F_TUNINFO_IPV6
	BPF_F_SKIP_FIELD_MASK                   = C.BPF_F_SKIP_FIELD_MASK
	BPF_F_USER_STACK                        = C.BPF_F_USER_STACK
	BPF_F_FAST_STACK_CMP                    = C.BPF_F_FAST_STACK_CMP
	BPF_F_REUSE_STACKID                     = C.BPF_F_REUSE_STACKID
	BPF_F_USER_BUILD_ID                     = C.BPF_F_USER_BUILD_ID
	BPF_F_ZERO_CSUM_TX                      = C.BPF_F_ZERO_CSUM_TX
	BPF_F_DONT_FRAGMENT                     = C.BPF_F_DONT_FRAGMENT
	BPF_F_SEQ_NUMBER                        = C.BPF_F_SEQ_NUMBER
	BPF_F_INDEX_MASK                        = C.BPF_F_INDEX_MASK
	BPF_F_CURRENT_CPU                       = C.BPF_F_CURRENT_CPU
	BPF_F_CTXLEN_MASK                       = C.BPF_F_CTXLEN_MASK
	BPF_F_CURRENT_NETNS                     = C.BPF_F_CURRENT_NETNS
	BPF_CSUM_LEVEL_QUERY                    = C.BPF_CSUM_LEVEL_QUERY
	BPF_CSUM_LEVEL_INC                      = C.BPF_CSUM_LEVEL_INC
	BPF_CSUM_LEVEL_DEC                      = C.BPF_CSUM_LEVEL_DEC
	BPF_CSUM_LEVEL_RESET                    = C.BPF_CSUM_LEVEL_RESET
	BPF_F_ADJ_ROOM_FIXED_GSO                = C.BPF_F_ADJ_ROOM_FIXED_GSO
	BPF_F_ADJ_ROOM_ENCAP_L3_IPV4            = C.BPF_F_ADJ_ROOM_ENCAP_L3_IPV4
	BPF_F_ADJ_ROOM_ENCAP_L3_IPV6            = C.BPF_F_ADJ_ROOM_ENCAP_L3_IPV6
	BPF_F_ADJ_ROOM_ENCAP_L4_GRE             = C.BPF_F_ADJ_ROOM_ENCAP_L4_GRE
	BPF_F_ADJ_ROOM_ENCAP_L4_UDP             = C.BPF_F_ADJ_ROOM_ENCAP_L4_UDP
	BPF_F_ADJ_ROOM_NO_CSUM_RESET            = C.BPF_F_ADJ_ROOM_NO_CSUM_RESET
	BPF_ADJ_ROOM_ENCAP_L2_MASK              = C.BPF_ADJ_ROOM_ENCAP_L2_MASK
	BPF_ADJ_ROOM_ENCAP_L2_SHIFT             = C.BPF_ADJ_ROOM_ENCAP_L2_SHIFT
	BPF_F_SYSCTL_BASE_NAME                  = C.BPF_F_SYSCTL_BASE_NAME
	BPF_SK_STORAGE_GET_F_CREATE             = C.BPF_SK_STORAGE_GET_F_CREATE
	BPF_F_GET_BRANCH_RECORDS_SIZE           = C.BPF_F_GET_BRANCH_RECORDS_SIZE
	BPF_RB_NO_WAKEUP                        = C.BPF_RB_NO_WAKEUP
	BPF_RB_FORCE_WAKEUP                     = C.BPF_RB_FORCE_WAKEUP
	BPF_RB_AVAIL_DATA                       = C.BPF_RB_AVAIL_DATA
	BPF_RB_RING_SIZE                        = C.BPF_RB_RING_SIZE
	BPF_RB_CONS_POS                         = C.BPF_RB_CONS_POS
	BPF_RB_PROD_POS                         = C.BPF_RB_PROD_POS
	BPF_RINGBUF_BUSY_BIT                    = C.BPF_RINGBUF_BUSY_BIT
	BPF_RINGBUF_DISCARD_BIT                 = C.BPF_RINGBUF_DISCARD_BIT
	BPF_RINGBUF_HDR_SZ                      = C.BPF_RINGBUF_HDR_SZ
	BPF_ADJ_ROOM_NET                        = C.BPF_ADJ_ROOM_NET
	BPF_ADJ_ROOM_MAC                        = C.BPF_ADJ_ROOM_MAC
	BPF_HDR_START_MAC                       = C.BPF_HDR_START_MAC
	BPF_HDR_START_NET                       = C.BPF_HDR_START_NET
	BPF_LWT_ENCAP_SEG6                      = C.BPF_LWT_ENCAP_SEG6
	BPF_LWT_ENCAP_SEG6_INLINE               = C.BPF_LWT_ENCAP_SEG6_INLINE
	BPF_LWT_ENCAP_IP                        = C.BPF_LWT_ENCAP_IP
	BPF_OK                                  = C.BPF_OK
	BPF_DROP                                = C.BPF_DROP
	BPF_REDIRECT                            = C.BPF_REDIRECT
	BPF_LWT_REROUTE                         = C.BPF_LWT_REROUTE
	BPF_SOCK_OPS_RTO_CB_FLAG                = C.BPF_SOCK_OPS_RTO_CB_FLAG
	BPF_SOCK_OPS_RETRANS_CB_FLAG            = C.BPF_SOCK_OPS_RETRANS_CB_FLAG
	BPF_SOCK_OPS_STATE_CB_FLAG              = C.BPF_SOCK_OPS_STATE_CB_FLAG
	BPF_SOCK_OPS_RTT_CB_FLAG                = C.BPF_SOCK_OPS_RTT_CB_FLAG
	BPF_SOCK_OPS_ALL_CB_FLAGS               = C.BPF_SOCK_OPS_ALL_CB_FLAGS
	BPF_SOCK_OPS_VOID                       = C.BPF_SOCK_OPS_VOID
	BPF_SOCK_OPS_TIMEOUT_INIT               = C.BPF_SOCK_OPS_TIMEOUT_INIT
	BPF_SOCK_OPS_RWND_INIT                  = C.BPF_SOCK_OPS_RWND_INIT
	BPF_SOCK_OPS_TCP_CONNECT_CB             = C.BPF_SOCK_OPS_TCP_CONNECT_CB
	BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB      = C.BPF_SOCK_OPS_ACTIVE_ESTABLISHED_CB
	BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB     = C.BPF_SOCK_OPS_PASSIVE_ESTABLISHED_CB
	BPF_SOCK_OPS_NEEDS_ECN                  = C.BPF_SOCK_OPS_NEEDS_ECN
	BPF_SOCK_OPS_BASE_RTT                   = C.BPF_SOCK_OPS_BASE_RTT
	BPF_SOCK_OPS_RTO_CB                     = C.BPF_SOCK_OPS_RTO_CB
	BPF_SOCK_OPS_RETRANS_CB                 = C.BPF_SOCK_OPS_RETRANS_CB
	BPF_SOCK_OPS_STATE_CB                   = C.BPF_SOCK_OPS_STATE_CB
	BPF_SOCK_OPS_TCP_LISTEN_CB              = C.BPF_SOCK_OPS_TCP_LISTEN_CB
	BPF_SOCK_OPS_RTT_CB                     = C.BPF_SOCK_OPS_RTT_CB
	BPF_TCP_ESTABLISHED                     = C.BPF_TCP_ESTABLISHED
	BPF_TCP_SYN_SENT                        = C.BPF_TCP_SYN_SENT
	BPF_TCP_SYN_RECV                        = C.BPF_TCP_SYN_RECV
	BPF_TCP_FIN_WAIT1                       = C.BPF_TCP_FIN_WAIT1
	BPF_TCP_FIN_WAIT2                       = C.BPF_TCP_FIN_WAIT2
	BPF_TCP_TIME_WAIT                       = C.BPF_TCP_TIME_WAIT
	BPF_TCP_CLOSE                           = C.BPF_TCP_CLOSE
	BPF_TCP_CLOSE_WAIT                      = C.BPF_TCP_CLOSE_WAIT
	BPF_TCP_LAST_ACK                        = C.BPF_TCP_LAST_ACK
	BPF_TCP_LISTEN                          = C.BPF_TCP_LISTEN
	BPF_TCP_CLOSING                         = C.BPF_TCP_CLOSING
	BPF_TCP_NEW_SYN_RECV                    = C.BPF_TCP_NEW_SYN_RECV
	BPF_TCP_MAX_STATES                      = C.BPF_TCP_MAX_STATES
	TCP_BPF_IW                              = C.TCP_BPF_IW
	TCP_BPF_SNDCWND_CLAMP                   = C.TCP_BPF_SNDCWND_CLAMP
	BPF_DEVCG_ACC_MKNOD                     = C.BPF_DEVCG_ACC_MKNOD
	BPF_DEVCG_ACC_READ                      = C.BPF_DEVCG_ACC_READ
	BPF_DEVCG_ACC_WRITE                     = C.BPF_DEVCG_ACC_WRITE
	BPF_DEVCG_DEV_BLOCK                     = C.BPF_DEVCG_DEV_BLOCK
	BPF_DEVCG_DEV_CHAR                      = C.BPF_DEVCG_DEV_CHAR
	BPF_FIB_LOOKUP_DIRECT                   = C.BPF_FIB_LOOKUP_DIRECT
	BPF_FIB_LOOKUP_OUTPUT                   = C.BPF_FIB_LOOKUP_OUTPUT
	BPF_FIB_LKUP_RET_SUCCESS                = C.BPF_FIB_LKUP_RET_SUCCESS
	BPF_FIB_LKUP_RET_BLACKHOLE              = C.BPF_FIB_LKUP_RET_BLACKHOLE
	BPF_FIB_LKUP_RET_UNREACHABLE            = C.BPF_FIB_LKUP_RET_UNREACHABLE
	BPF_FIB_LKUP_RET_PROHIBIT               = C.BPF_FIB_LKUP_RET_PROHIBIT
	BPF_FIB_LKUP_RET_NOT_FWDED              = C.BPF_FIB_LKUP_RET_NOT_FWDED
	BPF_FIB_LKUP_RET_FWD_DISABLED           = C.BPF_FIB_LKUP_RET_FWD_DISABLED
	BPF_FIB_LKUP_RET_UNSUPP_LWT             = C.BPF_FIB_LKUP_RET_UNSUPP_LWT
	BPF_FIB_LKUP_RET_NO_NEIGH               = C.BPF_FIB_LKUP_RET_NO_NEIGH
	BPF_FIB_LKUP_RET_FRAG_NEEDED            = C.BPF_FIB_LKUP_RET_FRAG_NEEDED
	BPF_FD_TYPE_RAW_TRACEPOINT              = C.BPF_FD_TYPE_RAW_TRACEPOINT
	BPF_FD_TYPE_TRACEPOINT                  = C.BPF_FD_TYPE_TRACEPOINT
	BPF_FD_TYPE_KPROBE                      = C.BPF_FD_TYPE_KPROBE
	BPF_FD_TYPE_KRETPROBE                   = C.BPF_FD_TYPE_KRETPROBE
	BPF_FD_TYPE_UPROBE                      = C.BPF_FD_TYPE_UPROBE
	BPF_FD_TYPE_URETPROBE                   = C.BPF_FD_TYPE_URETPROBE
	BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG     = C.BPF_FLOW_DISSECTOR_F_PARSE_1ST_FRAG
	BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL = C.BPF_FLOW_DISSECTOR_F_STOP_AT_FLOW_LABEL
	BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP      = C.BPF_FLOW_DISSECTOR_F_STOP_AT_ENCAP
)

// generated by:
// perl -nlE '/^\s*(RTNLGRP_\w+)/ && say "$1 = C.$1"' include/uapi/linux/rtnetlink.h
const (
	RTNLGRP_NONE          = C.RTNLGRP_NONE
	RTNLGRP_LINK          = C.RTNLGRP_LINK
	RTNLGRP_NOTIFY        = C.RTNLGRP_NOTIFY
	RTNLGRP_NEIGH         = C.RTNLGRP_NEIGH
	RTNLGRP_TC            = C.RTNLGRP_TC
	RTNLGRP_IPV4_IFADDR   = C.RTNLGRP_IPV4_IFADDR
	RTNLGRP_IPV4_MROUTE   = C.RTNLGRP_IPV4_MROUTE
	RTNLGRP_IPV4_ROUTE    = C.RTNLGRP_IPV4_ROUTE
	RTNLGRP_IPV4_RULE     = C.RTNLGRP_IPV4_RULE
	RTNLGRP_IPV6_IFADDR   = C.RTNLGRP_IPV6_IFADDR
	RTNLGRP_IPV6_MROUTE   = C.RTNLGRP_IPV6_MROUTE
	RTNLGRP_IPV6_ROUTE    = C.RTNLGRP_IPV6_ROUTE
	RTNLGRP_IPV6_IFINFO   = C.RTNLGRP_IPV6_IFINFO
	RTNLGRP_DECnet_IFADDR = C.RTNLGRP_DECnet_IFADDR
	RTNLGRP_NOP2          = C.RTNLGRP_NOP2
	RTNLGRP_DECnet_ROUTE  = C.RTNLGRP_DECnet_ROUTE
	RTNLGRP_DECnet_RULE   = C.RTNLGRP_DECnet_RULE
	RTNLGRP_NOP4          = C.RTNLGRP_NOP4
	RTNLGRP_IPV6_PREFIX   = C.RTNLGRP_IPV6_PREFIX
	RTNLGRP_IPV6_RULE     = C.RTNLGRP_IPV6_RULE
	RTNLGRP_ND_USEROPT    = C.RTNLGRP_ND_USEROPT
	RTNLGRP_PHONET_IFADDR = C.RTNLGRP_PHONET_IFADDR
	RTNLGRP_PHONET_ROUTE  = C.RTNLGRP_PHONET_ROUTE
	RTNLGRP_DCB           = C.RTNLGRP_DCB
	RTNLGRP_IPV4_NETCONF  = C.RTNLGRP_IPV4_NETCONF
	RTNLGRP_IPV6_NETCONF  = C.RTNLGRP_IPV6_NETCONF
	RTNLGRP_MDB           = C.RTNLGRP_MDB
	RTNLGRP_MPLS_ROUTE    = C.RTNLGRP_MPLS_ROUTE
	RTNLGRP_NSID          = C.RTNLGRP_NSID
	RTNLGRP_MPLS_NETCONF  = C.RTNLGRP_MPLS_NETCONF
	RTNLGRP_IPV4_MROUTE_R = C.RTNLGRP_IPV4_MROUTE_R
	RTNLGRP_IPV6_MROUTE_R = C.RTNLGRP_IPV6_MROUTE_R
	RTNLGRP_NEXTHOP       = C.RTNLGRP_NEXTHOP
)

// Capabilities

type CapUserHeader C.struct___user_cap_header_struct

type CapUserData C.struct___user_cap_data_struct

const (
	LINUX_CAPABILITY_VERSION_1 = C._LINUX_CAPABILITY_VERSION_1
	LINUX_CAPABILITY_VERSION_2 = C._LINUX_CAPABILITY_VERSION_2
	LINUX_CAPABILITY_VERSION_3 = C._LINUX_CAPABILITY_VERSION_3
)

// Loop devices

const (
	LO_FLAGS_READ_ONLY = C.LO_FLAGS_READ_ONLY
	LO_FLAGS_AUTOCLEAR = C.LO_FLAGS_AUTOCLEAR
	LO_FLAGS_PARTSCAN  = C.LO_FLAGS_PARTSCAN
	LO_FLAGS_DIRECT_IO = C.LO_FLAGS_DIRECT_IO
)

type LoopInfo C.struct_loop_info
type LoopInfo64 C.struct_loop_info64

// AF_TIPC

type TIPCSocketAddr C.struct_tipc_socket_addr

type TIPCServiceRange C.struct_tipc_service_range

type TIPCServiceName C.struct_tipc_service_name

type TIPCSubscr C.struct_tipc_subscr

type TIPCEvent C.struct_tipc_event

type TIPCGroupReq C.struct_tipc_group_req

type TIPCSIOCLNReq C.struct_tipc_sioc_ln_req

type TIPCSIOCNodeIDReq C.struct_tipc_sioc_nodeid_req

const (
	TIPC_CLUSTER_SCOPE = C.TIPC_CLUSTER_SCOPE
	TIPC_NODE_SCOPE    = C.TIPC_NODE_SCOPE
)

const (
	SYSLOG_ACTION_CLOSE         = 0
	SYSLOG_ACTION_OPEN          = 1
	SYSLOG_ACTION_READ          = 2
	SYSLOG_ACTION_READ_ALL      = 3
	SYSLOG_ACTION_READ_CLEAR    = 4
	SYSLOG_ACTION_CLEAR         = 5
	SYSLOG_ACTION_CONSOLE_OFF   = 6
	SYSLOG_ACTION_CONSOLE_ON    = 7
	SYSLOG_ACTION_CONSOLE_LEVEL = 8
	SYSLOG_ACTION_SIZE_UNREAD   = 9
	SYSLOG_ACTION_SIZE_BUFFER   = 10
)

// Devlink generic netlink API, generated using:
// perl -nlE '/^\s*(DEVLINK_\w+)/ && say "$1 = C.$1"' devlink.h
const (
	DEVLINK_CMD_UNSPEC                        = C.DEVLINK_CMD_UNSPEC
	DEVLINK_CMD_GET                           = C.DEVLINK_CMD_GET
	DEVLINK_CMD_SET                           = C.DEVLINK_CMD_SET
	DEVLINK_CMD_NEW                           = C.DEVLINK_CMD_NEW
	DEVLINK_CMD_DEL                           = C.DEVLINK_CMD_DEL
	DEVLINK_CMD_PORT_GET                      = C.DEVLINK_CMD_PORT_GET
	DEVLINK_CMD_PORT_SET                      = C.DEVLINK_CMD_PORT_SET
	DEVLINK_CMD_PORT_NEW                      = C.DEVLINK_CMD_PORT_NEW
	DEVLINK_CMD_PORT_DEL                      = C.DEVLINK_CMD_PORT_DEL
	DEVLINK_CMD_PORT_SPLIT                    = C.DEVLINK_CMD_PORT_SPLIT
	DEVLINK_CMD_PORT_UNSPLIT                  = C.DEVLINK_CMD_PORT_UNSPLIT
	DEVLINK_CMD_SB_GET                        = C.DEVLINK_CMD_SB_GET
	DEVLINK_CMD_SB_SET                        = C.DEVLINK_CMD_SB_SET
	DEVLINK_CMD_SB_NEW                        = C.DEVLINK_CMD_SB_NEW
	DEVLINK_CMD_SB_DEL                        = C.DEVLINK_CMD_SB_DEL
	DEVLINK_CMD_SB_POOL_GET                   = C.DEVLINK_CMD_SB_POOL_GET
	DEVLINK_CMD_SB_POOL_SET                   = C.DEVLINK_CMD_SB_POOL_SET
	DEVLINK_CMD_SB_POOL_NEW                   = C.DEVLINK_CMD_SB_POOL_NEW
	DEVLINK_CMD_SB_POOL_DEL                   = C.DEVLINK_CMD_SB_POOL_DEL
	DEVLINK_CMD_SB_PORT_POOL_GET              = C.DEVLINK_CMD_SB_PORT_POOL_GET
	DEVLINK_CMD_SB_PORT_POOL_SET              = C.DEVLINK_CMD_SB_PORT_POOL_SET
	DEVLINK_CMD_SB_PORT_POOL_NEW              = C.DEVLINK_CMD_SB_PORT_POOL_NEW
	DEVLINK_CMD_SB_PORT_POOL_DEL              = C.DEVLINK_CMD_SB_PORT_POOL_DEL
	DEVLINK_CMD_SB_TC_POOL_BIND_GET           = C.DEVLINK_CMD_SB_TC_POOL_BIND_GET
	DEVLINK_CMD_SB_TC_POOL_BIND_SET           = C.DEVLINK_CMD_SB_TC_POOL_BIND_SET
	DEVLINK_CMD_SB_TC_POOL_BIND_NEW           = C.DEVLINK_CMD_SB_TC_POOL_BIND_NEW
	DEVLINK_CMD_SB_TC_POOL_BIND_DEL           = C.DEVLINK_CMD_SB_TC_POOL_BIND_DEL
	DEVLINK_CMD_SB_OCC_SNAPSHOT               = C.DEVLINK_CMD_SB_OCC_SNAPSHOT
	DEVLINK_CMD_SB_OCC_MAX_CLEAR              = C.DEVLINK_CMD_SB_OCC_MAX_CLEAR
	DEVLINK_CMD_ESWITCH_GET                   = C.DEVLINK_CMD_ESWITCH_GET
	DEVLINK_CMD_ESWITCH_SET                   = C.DEVLINK_CMD_ESWITCH_SET
	DEVLINK_CMD_DPIPE_TABLE_GET               = C.DEVLINK_CMD_DPIPE_TABLE_GET
	DEVLINK_CMD_DPIPE_ENTRIES_GET             = C.DEVLINK_CMD_DPIPE_ENTRIES_GET
	DEVLINK_CMD_DPIPE_HEADERS_GET             = C.DEVLINK_CMD_DPIPE_HEADERS_GET
	DEVLINK_CMD_DPIPE_TABLE_COUNTERS_SET      = C.DEVLINK_CMD_DPIPE_TABLE_COUNTERS_SET
	DEVLINK_CMD_MAX                           = C.DEVLINK_CMD_MAX
	DEVLINK_PORT_TYPE_NOTSET                  = C.DEVLINK_PORT_TYPE_NOTSET
	DEVLINK_PORT_TYPE_AUTO                    = C.DEVLINK_PORT_TYPE_AUTO
	DEVLINK_PORT_TYPE_ETH                     = C.DEVLINK_PORT_TYPE_ETH
	DEVLINK_PORT_TYPE_IB                      = C.DEVLINK_PORT_TYPE_IB
	DEVLINK_SB_POOL_TYPE_INGRESS              = C.DEVLINK_SB_POOL_TYPE_INGRESS
	DEVLINK_SB_POOL_TYPE_EGRESS               = C.DEVLINK_SB_POOL_TYPE_EGRESS
	DEVLINK_SB_THRESHOLD_TYPE_STATIC          = C.DEVLINK_SB_THRESHOLD_TYPE_STATIC
	DEVLINK_SB_THRESHOLD_TYPE_DYNAMIC         = C.DEVLINK_SB_THRESHOLD_TYPE_DYNAMIC
	DEVLINK_ESWITCH_MODE_LEGACY               = C.DEVLINK_ESWITCH_MODE_LEGACY
	DEVLINK_ESWITCH_MODE_SWITCHDEV            = C.DEVLINK_ESWITCH_MODE_SWITCHDEV
	DEVLINK_ESWITCH_INLINE_MODE_NONE          = C.DEVLINK_ESWITCH_INLINE_MODE_NONE
	DEVLINK_ESWITCH_INLINE_MODE_LINK          = C.DEVLINK_ESWITCH_INLINE_MODE_LINK
	DEVLINK_ESWITCH_INLINE_MODE_NETWORK       = C.DEVLINK_ESWITCH_INLINE_MODE_NETWORK
	DEVLINK_ESWITCH_INLINE_MODE_TRANSPORT     = C.DEVLINK_ESWITCH_INLINE_MODE_TRANSPORT
	DEVLINK_ESWITCH_ENCAP_MODE_NONE           = C.DEVLINK_ESWITCH_ENCAP_MODE_NONE
	DEVLINK_ESWITCH_ENCAP_MODE_BASIC          = C.DEVLINK_ESWITCH_ENCAP_MODE_BASIC
	DEVLINK_ATTR_UNSPEC                       = C.DEVLINK_ATTR_UNSPEC
	DEVLINK_ATTR_BUS_NAME                     = C.DEVLINK_ATTR_BUS_NAME
	DEVLINK_ATTR_DEV_NAME                     = C.DEVLINK_ATTR_DEV_NAME
	DEVLINK_ATTR_PORT_INDEX                   = C.DEVLINK_ATTR_PORT_INDEX
	DEVLINK_ATTR_PORT_TYPE                    = C.DEVLINK_ATTR_PORT_TYPE
	DEVLINK_ATTR_PORT_DESIRED_TYPE            = C.DEVLINK_ATTR_PORT_DESIRED_TYPE
	DEVLINK_ATTR_PORT_NETDEV_IFINDEX          = C.DEVLINK_ATTR_PORT_NETDEV_IFINDEX
	DEVLINK_ATTR_PORT_NETDEV_NAME             = C.DEVLINK_ATTR_PORT_NETDEV_NAME
	DEVLINK_ATTR_PORT_IBDEV_NAME              = C.DEVLINK_ATTR_PORT_IBDEV_NAME
	DEVLINK_ATTR_PORT_SPLIT_COUNT             = C.DEVLINK_ATTR_PORT_SPLIT_COUNT
	DEVLINK_ATTR_PORT_SPLIT_GROUP             = C.DEVLINK_ATTR_PORT_SPLIT_GROUP
	DEVLINK_ATTR_SB_INDEX                     = C.DEVLINK_ATTR_SB_INDEX
	DEVLINK_ATTR_SB_SIZE                      = C.DEVLINK_ATTR_SB_SIZE
	DEVLINK_ATTR_SB_INGRESS_POOL_COUNT        = C.DEVLINK_ATTR_SB_INGRESS_POOL_COUNT
	DEVLINK_ATTR_SB_EGRESS_POOL_COUNT         = C.DEVLINK_ATTR_SB_EGRESS_POOL_COUNT
	DEVLINK_ATTR_SB_INGRESS_TC_COUNT          = C.DEVLINK_ATTR_SB_INGRESS_TC_COUNT
	DEVLINK_ATTR_SB_EGRESS_TC_COUNT           = C.DEVLINK_ATTR_SB_EGRESS_TC_COUNT
	DEVLINK_ATTR_SB_POOL_INDEX                = C.DEVLINK_ATTR_SB_POOL_INDEX
	DEVLINK_ATTR_SB_POOL_TYPE                 = C.DEVLINK_ATTR_SB_POOL_TYPE
	DEVLINK_ATTR_SB_POOL_SIZE                 = C.DEVLINK_ATTR_SB_POOL_SIZE
	DEVLINK_ATTR_SB_POOL_THRESHOLD_TYPE       = C.DEVLINK_ATTR_SB_POOL_THRESHOLD_TYPE
	DEVLINK_ATTR_SB_THRESHOLD                 = C.DEVLINK_ATTR_SB_THRESHOLD
	DEVLINK_ATTR_SB_TC_INDEX                  = C.DEVLINK_ATTR_SB_TC_INDEX
	DEVLINK_ATTR_SB_OCC_CUR                   = C.DEVLINK_ATTR_SB_OCC_CUR
	DEVLINK_ATTR_SB_OCC_MAX                   = C.DEVLINK_ATTR_SB_OCC_MAX
	DEVLINK_ATTR_ESWITCH_MODE                 = C.DEVLINK_ATTR_ESWITCH_MODE
	DEVLINK_ATTR_ESWITCH_INLINE_MODE          = C.DEVLINK_ATTR_ESWITCH_INLINE_MODE
	DEVLINK_ATTR_DPIPE_TABLES                 = C.DEVLINK_ATTR_DPIPE_TABLES
	DEVLINK_ATTR_DPIPE_TABLE                  = C.DEVLINK_ATTR_DPIPE_TABLE
	DEVLINK_ATTR_DPIPE_TABLE_NAME             = C.DEVLINK_ATTR_DPIPE_TABLE_NAME
	DEVLINK_ATTR_DPIPE_TABLE_SIZE             = C.DEVLINK_ATTR_DPIPE_TABLE_SIZE
	DEVLINK_ATTR_DPIPE_TABLE_MATCHES          = C.DEVLINK_ATTR_DPIPE_TABLE_MATCHES
	DEVLINK_ATTR_DPIPE_TABLE_ACTIONS          = C.DEVLINK_ATTR_DPIPE_TABLE_ACTIONS
	DEVLINK_ATTR_DPIPE_TABLE_COUNTERS_ENABLED = C.DEVLINK_ATTR_DPIPE_TABLE_COUNTERS_ENABLED
	DEVLINK_ATTR_DPIPE_ENTRIES                = C.DEVLINK_ATTR_DPIPE_ENTRIES
	DEVLINK_ATTR_DPIPE_ENTRY                  = C.DEVLINK_ATTR_DPIPE_ENTRY
	DEVLINK_ATTR_DPIPE_ENTRY_INDEX            = C.DEVLINK_ATTR_DPIPE_ENTRY_INDEX
	DEVLINK_ATTR_DPIPE_ENTRY_MATCH_VALUES     = C.DEVLINK_ATTR_DPIPE_ENTRY_MATCH_VALUES
	DEVLINK_ATTR_DPIPE_ENTRY_ACTION_VALUES    = C.DEVLINK_ATTR_DPIPE_ENTRY_ACTION_VALUES
	DEVLINK_ATTR_DPIPE_ENTRY_COUNTER          = C.DEVLINK_ATTR_DPIPE_ENTRY_COUNTER
	DEVLINK_ATTR_DPIPE_MATCH                  = C.DEVLINK_ATTR_DPIPE_MATCH
	DEVLINK_ATTR_DPIPE_MATCH_VALUE            = C.DEVLINK_ATTR_DPIPE_MATCH_VALUE
	DEVLINK_ATTR_DPIPE_MATCH_TYPE             = C.DEVLINK_ATTR_DPIPE_MATCH_TYPE
	DEVLINK_ATTR_DPIPE_ACTION                 = C.DEVLINK_ATTR_DPIPE_ACTION
	DEVLINK_ATTR_DPIPE_ACTION_VALUE           = C.DEVLINK_ATTR_DPIPE_ACTION_VALUE
	DEVLINK_ATTR_DPIPE_ACTION_TYPE            = C.DEVLINK_ATTR_DPIPE_ACTION_TYPE
	DEVLINK_ATTR_DPIPE_VALUE                  = C.DEVLINK_ATTR_DPIPE_VALUE
	DEVLINK_ATTR_DPIPE_VALUE_MASK             = C.DEVLINK_ATTR_DPIPE_VALUE_MASK
	DEVLINK_ATTR_DPIPE_VALUE_MAPPING          = C.DEVLINK_ATTR_DPIPE_VALUE_MAPPING
	DEVLINK_ATTR_DPIPE_HEADERS                = C.DEVLINK_ATTR_DPIPE_HEADERS
	DEVLINK_ATTR_DPIPE_HEADER                 = C.DEVLINK_ATTR_DPIPE_HEADER
	DEVLINK_ATTR_DPIPE_HEADER_NAME            = C.DEVLINK_ATTR_DPIPE_HEADER_NAME
	DEVLINK_ATTR_DPIPE_HEADER_ID              = C.DEVLINK_ATTR_DPIPE_HEADER_ID
	DEVLINK_ATTR_DPIPE_HEADER_FIELDS          = C.DEVLINK_ATTR_DPIPE_HEADER_FIELDS
	DEVLINK_ATTR_DPIPE_HEADER_GLOBAL          = C.DEVLINK_ATTR_DPIPE_HEADER_GLOBAL
	DEVLINK_ATTR_DPIPE_HEADER_INDEX           = C.DEVLINK_ATTR_DPIPE_HEADER_INDEX
	DEVLINK_ATTR_DPIPE_FIELD                  = C.DEVLINK_ATTR_DPIPE_FIELD
	DEVLINK_ATTR_DPIPE_FIELD_NAME             = C.DEVLINK_ATTR_DPIPE_FIELD_NAME
	DEVLINK_ATTR_DPIPE_FIELD_ID               = C.DEVLINK_ATTR_DPIPE_FIELD_ID
	DEVLINK_ATTR_DPIPE_FIELD_BITWIDTH         = C.DEVLINK_ATTR_DPIPE_FIELD_BITWIDTH
	DEVLINK_ATTR_DPIPE_FIELD_MAPPING_TYPE     = C.DEVLINK_ATTR_DPIPE_FIELD_MAPPING_TYPE
	DEVLINK_ATTR_PAD                          = C.DEVLINK_ATTR_PAD
	DEVLINK_ATTR_ESWITCH_ENCAP_MODE           = C.DEVLINK_ATTR_ESWITCH_ENCAP_MODE
	DEVLINK_ATTR_MAX                          = C.DEVLINK_ATTR_MAX
	DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE     = C.DEVLINK_DPIPE_FIELD_MAPPING_TYPE_NONE
	DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX  = C.DEVLINK_DPIPE_FIELD_MAPPING_TYPE_IFINDEX
	DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT      = C.DEVLINK_DPIPE_MATCH_TYPE_FIELD_EXACT
	DEVLINK_DPIPE_ACTION_TYPE_FIELD_MODIFY    = C.DEVLINK_DPIPE_ACTION_TYPE_FIELD_MODIFY
	DEVLINK_DPIPE_FIELD_ETHERNET_DST_MAC      = C.DEVLINK_DPIPE_FIELD_ETHERNET_DST_MAC
	DEVLINK_DPIPE_FIELD_IPV4_DST_IP           = C.DEVLINK_DPIPE_FIELD_IPV4_DST_IP
	DEVLINK_DPIPE_FIELD_IPV6_DST_IP           = C.DEVLINK_DPIPE_FIELD_IPV6_DST_IP
	DEVLINK_DPIPE_HEADER_ETHERNET             = C.DEVLINK_DPIPE_HEADER_ETHERNET
	DEVLINK_DPIPE_HEADER_IPV4                 = C.DEVLINK_DPIPE_HEADER_IPV4
	DEVLINK_DPIPE_HEADER_IPV6                 = C.DEVLINK_DPIPE_HEADER_IPV6
)

// fs-verity

type FsverityDigest C.struct_fsverity_digest

type FsverityEnableArg C.struct_fsverity_enable_arg

// nexthop

type Nhmsg C.struct_nhmsg

type NexthopGrp C.struct_nexthop_grp

const (
	NHA_UNSPEC     = C.NHA_UNSPEC
	NHA_ID         = C.NHA_ID
	NHA_GROUP      = C.NHA_GROUP
	NHA_GROUP_TYPE = C.NHA_GROUP_TYPE
	NHA_BLACKHOLE  = C.NHA_BLACKHOLE
	NHA_OIF        = C.NHA_OIF
	NHA_GATEWAY    = C.NHA_GATEWAY
	NHA_ENCAP_TYPE = C.NHA_ENCAP_TYPE
	NHA_ENCAP      = C.NHA_ENCAP
	NHA_GROUPS     = C.NHA_GROUPS
	NHA_MASTER     = C.NHA_MASTER
)

// raw CAN sockets

const (
	CAN_RAW_FILTER        = C.CAN_RAW_FILTER
	CAN_RAW_ERR_FILTER    = C.CAN_RAW_ERR_FILTER
	CAN_RAW_LOOPBACK      = C.CAN_RAW_LOOPBACK
	CAN_RAW_RECV_OWN_MSGS = C.CAN_RAW_RECV_OWN_MSGS
	CAN_RAW_FD_FRAMES     = C.CAN_RAW_FD_FRAMES
	CAN_RAW_JOIN_FILTERS  = C.CAN_RAW_JOIN_FILTERS
)
