diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 5eb492c0..c98ea812 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -65,6 +65,10 @@ jobs: - run: cargo check --tests -vv --target=powerpc64le-unknown-linux-gnu - run: cargo check --tests -vv --target=armv5te-unknown-linux-gnueabi - run: cargo check --tests -vv --target=loongarch64-unknown-linux-gnu + - run : > + rustup component add rust-src --toolchain nightly-x86_64-unknown-linux-gnu && + cargo +nightly check --tests -vv --target=hexagon-unknown-linux-musl -Zbuild-std -Zbuild-std-features=llvm-libunwind + gen: name: Update generated files diff --git a/gen/src/main.rs b/gen/src/main.rs index 3e67b701..fc021ce5 100644 --- a/gen/src/main.rs +++ b/gen/src/main.rs @@ -289,8 +289,7 @@ fn rust_arches(linux_arch: &str) -> &[&str] { "arm64" => &["aarch64"], "avr32" => &["avr"], "csky" => &["csky"], - // hexagon gets build errors; disable it for now - "hexagon" => &[], + "hexagon" => &["hexagon"], "loongarch" => &["loongarch64"], "mips" => &["mips", "mips64", "mips32r6", "mips64r6"], "powerpc" => &["powerpc", "powerpc64"], diff --git a/src/hexagon/auxvec.rs b/src/hexagon/auxvec.rs new file mode 100644 index 00000000..4ff4b54b --- /dev/null +++ b/src/hexagon/auxvec.rs @@ -0,0 +1,30 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub const AT_NULL: u32 = 0; +pub const AT_IGNORE: u32 = 1; +pub const AT_EXECFD: u32 = 2; +pub const AT_PHDR: u32 = 3; +pub const AT_PHENT: u32 = 4; +pub const AT_PHNUM: u32 = 5; +pub const AT_PAGESZ: u32 = 6; +pub const AT_BASE: u32 = 7; +pub const AT_FLAGS: u32 = 8; +pub const AT_ENTRY: u32 = 9; +pub const AT_NOTELF: u32 = 10; +pub const AT_UID: u32 = 11; +pub const AT_EUID: u32 = 12; +pub const AT_GID: u32 = 13; +pub const AT_EGID: u32 = 14; +pub const AT_PLATFORM: u32 = 15; +pub const AT_HWCAP: u32 = 16; +pub const AT_CLKTCK: u32 = 17; +pub const AT_SECURE: u32 = 23; +pub const AT_BASE_PLATFORM: u32 = 24; +pub const AT_RANDOM: u32 = 25; +pub const AT_HWCAP2: u32 = 26; +pub const AT_RSEQ_FEATURE_SIZE: u32 = 27; +pub const AT_RSEQ_ALIGN: u32 = 28; +pub const AT_HWCAP3: u32 = 29; +pub const AT_HWCAP4: u32 = 30; +pub const AT_EXECFN: u32 = 31; +pub const AT_MINSIGSTKSZ: u32 = 51; diff --git a/src/hexagon/bootparam.rs b/src/hexagon/bootparam.rs new file mode 100644 index 00000000..bff15e37 --- /dev/null +++ b/src/hexagon/bootparam.rs @@ -0,0 +1,3 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + + diff --git a/src/hexagon/btrfs.rs b/src/hexagon/btrfs.rs new file mode 100644 index 00000000..5864757e --- /dev/null +++ b/src/hexagon/btrfs.rs @@ -0,0 +1,1935 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +pub type __kernel_rwf_t = crate::ctypes::c_int; +#[repr(C)] +#[derive(Default)] +pub struct __IncompleteArrayField(::core::marker::PhantomData, [T; 0]); +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fscrypt_policy_v1 { +pub version: __u8, +pub contents_encryption_mode: __u8, +pub filenames_encryption_mode: __u8, +pub flags: __u8, +pub master_key_descriptor: [__u8; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fscrypt_key { +pub mode: __u32, +pub raw: [__u8; 64usize], +pub size: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fscrypt_policy_v2 { +pub version: __u8, +pub contents_encryption_mode: __u8, +pub filenames_encryption_mode: __u8, +pub flags: __u8, +pub log2_data_unit_size: __u8, +pub __reserved: [__u8; 3usize], +pub master_key_identifier: [__u8; 16usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct fscrypt_get_policy_ex_arg { +pub policy_size: __u64, +pub policy: fscrypt_get_policy_ex_arg__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct fscrypt_key_specifier { +pub type_: __u32, +pub __reserved: __u32, +pub u: fscrypt_key_specifier__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug)] +pub struct fscrypt_provisioning_key_payload { +pub type_: __u32, +pub flags: __u32, +pub raw: __IncompleteArrayField<__u8>, +} +#[repr(C)] +pub struct fscrypt_add_key_arg { +pub key_spec: fscrypt_key_specifier, +pub raw_size: __u32, +pub key_id: __u32, +pub flags: __u32, +pub __reserved: [__u32; 7usize], +pub raw: __IncompleteArrayField<__u8>, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct fscrypt_remove_key_arg { +pub key_spec: fscrypt_key_specifier, +pub removal_status_flags: __u32, +pub __reserved: [__u32; 5usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct fscrypt_get_key_status_arg { +pub key_spec: fscrypt_key_specifier, +pub __reserved: [__u32; 6usize], +pub status: __u32, +pub status_flags: __u32, +pub user_count: __u32, +pub __out_reserved: [__u32; 13usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct mount_attr { +pub attr_set: __u64, +pub attr_clr: __u64, +pub propagation: __u64, +pub userns_fd: __u64, +} +#[repr(C)] +#[derive(Debug)] +pub struct statmount { +pub size: __u32, +pub mnt_opts: __u32, +pub mask: __u64, +pub sb_dev_major: __u32, +pub sb_dev_minor: __u32, +pub sb_magic: __u64, +pub sb_flags: __u32, +pub fs_type: __u32, +pub mnt_id: __u64, +pub mnt_parent_id: __u64, +pub mnt_id_old: __u32, +pub mnt_parent_id_old: __u32, +pub mnt_attr: __u64, +pub mnt_propagation: __u64, +pub mnt_peer_group: __u64, +pub mnt_master: __u64, +pub propagate_from: __u64, +pub mnt_root: __u32, +pub mnt_point: __u32, +pub mnt_ns_id: __u64, +pub fs_subtype: __u32, +pub sb_source: __u32, +pub opt_num: __u32, +pub opt_array: __u32, +pub opt_sec_num: __u32, +pub opt_sec_array: __u32, +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], +pub str_: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct mnt_id_req { +pub size: __u32, +pub spare: __u32, +pub mnt_id: __u64, +pub param: __u64, +pub mnt_ns_id: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct file_clone_range { +pub src_fd: __s64, +pub src_offset: __u64, +pub src_length: __u64, +pub dest_offset: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fstrim_range { +pub start: __u64, +pub len: __u64, +pub minlen: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fsuuid2 { +pub len: __u8, +pub uuid: [__u8; 16usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fs_sysfs_path { +pub len: __u8, +pub name: [__u8; 128usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct logical_block_metadata_cap { +pub lbmd_flags: __u32, +pub lbmd_interval: __u16, +pub lbmd_size: __u8, +pub lbmd_opaque_size: __u8, +pub lbmd_opaque_offset: __u8, +pub lbmd_pi_size: __u8, +pub lbmd_pi_offset: __u8, +pub lbmd_guard_tag_type: __u8, +pub lbmd_app_tag_size: __u8, +pub lbmd_ref_tag_size: __u8, +pub lbmd_storage_tag_size: __u8, +pub pad: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct file_dedupe_range_info { +pub dest_fd: __s64, +pub dest_offset: __u64, +pub bytes_deduped: __u64, +pub status: __s32, +pub reserved: __u32, +} +#[repr(C)] +#[derive(Debug)] +pub struct file_dedupe_range { +pub src_offset: __u64, +pub src_length: __u64, +pub dest_count: __u16, +pub reserved1: __u16, +pub reserved2: __u32, +pub info: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct files_stat_struct { +pub nr_files: crate::ctypes::c_ulong, +pub nr_free_files: crate::ctypes::c_ulong, +pub max_files: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct inodes_stat_t { +pub nr_inodes: crate::ctypes::c_long, +pub nr_unused: crate::ctypes::c_long, +pub dummy: [crate::ctypes::c_long; 5usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fsxattr { +pub fsx_xflags: __u32, +pub fsx_extsize: __u32, +pub fsx_nextents: __u32, +pub fsx_projid: __u32, +pub fsx_cowextsize: __u32, +pub fsx_pad: [crate::ctypes::c_uchar; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct file_attr { +pub fa_xflags: __u64, +pub fa_extsize: __u32, +pub fa_nextents: __u32, +pub fa_projid: __u32, +pub fa_cowextsize: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct page_region { +pub start: __u64, +pub end: __u64, +pub categories: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pm_scan_arg { +pub size: __u64, +pub flags: __u64, +pub start: __u64, +pub end: __u64, +pub walk_end: __u64, +pub vec: __u64, +pub vec_len: __u64, +pub max_pages: __u64, +pub category_inverted: __u64, +pub category_mask: __u64, +pub category_anyof_mask: __u64, +pub return_mask: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct procmap_query { +pub size: __u64, +pub query_flags: __u64, +pub query_addr: __u64, +pub vma_start: __u64, +pub vma_end: __u64, +pub vma_flags: __u64, +pub vma_page_size: __u64, +pub vma_offset: __u64, +pub inode: __u64, +pub dev_major: __u32, +pub dev_minor: __u32, +pub vma_name_size: __u32, +pub build_id_size: __u32, +pub vma_name_addr: __u64, +pub build_id_addr: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_vol_args { +pub fd: __s64, +pub name: [crate::ctypes::c_char; 4088usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_qgroup_limit { +pub flags: __u64, +pub max_rfer: __u64, +pub max_excl: __u64, +pub rsv_rfer: __u64, +pub rsv_excl: __u64, +} +#[repr(C)] +#[derive(Debug)] +pub struct btrfs_qgroup_inherit { +pub flags: __u64, +pub num_qgroups: __u64, +pub num_ref_copies: __u64, +pub num_excl_copies: __u64, +pub lim: btrfs_qgroup_limit, +pub qgroups: __IncompleteArrayField<__u64>, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_qgroup_limit_args { +pub qgroupid: __u64, +pub lim: btrfs_qgroup_limit, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct btrfs_ioctl_vol_args_v2 { +pub fd: __s64, +pub transid: __u64, +pub flags: __u64, +pub __bindgen_anon_1: btrfs_ioctl_vol_args_v2__bindgen_ty_1, +pub __bindgen_anon_2: btrfs_ioctl_vol_args_v2__bindgen_ty_2, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_vol_args_v2__bindgen_ty_1__bindgen_ty_1 { +pub size: __u64, +pub qgroup_inherit: *mut btrfs_qgroup_inherit, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_scrub_progress { +pub data_extents_scrubbed: __u64, +pub tree_extents_scrubbed: __u64, +pub data_bytes_scrubbed: __u64, +pub tree_bytes_scrubbed: __u64, +pub read_errors: __u64, +pub csum_errors: __u64, +pub verify_errors: __u64, +pub no_csum: __u64, +pub csum_discards: __u64, +pub super_errors: __u64, +pub malloc_errors: __u64, +pub uncorrectable_errors: __u64, +pub corrected_errors: __u64, +pub last_physical: __u64, +pub unverified_errors: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_scrub_args { +pub devid: __u64, +pub start: __u64, +pub end: __u64, +pub flags: __u64, +pub progress: btrfs_scrub_progress, +pub unused: [__u64; 109usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_dev_replace_start_params { +pub srcdevid: __u64, +pub cont_reading_from_srcdev_mode: __u64, +pub srcdev_name: [__u8; 1025usize], +pub tgtdev_name: [__u8; 1025usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_dev_replace_status_params { +pub replace_state: __u64, +pub progress_1000: __u64, +pub time_started: __u64, +pub time_stopped: __u64, +pub num_write_errors: __u64, +pub num_uncorrectable_read_errors: __u64, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct btrfs_ioctl_dev_replace_args { +pub cmd: __u64, +pub result: __u64, +pub __bindgen_anon_1: btrfs_ioctl_dev_replace_args__bindgen_ty_1, +pub spare: [__u64; 64usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_dev_info_args { +pub devid: __u64, +pub uuid: [__u8; 16usize], +pub bytes_used: __u64, +pub total_bytes: __u64, +pub fsid: [__u8; 16usize], +pub unused: [__u64; 377usize], +pub path: [__u8; 1024usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_fs_info_args { +pub max_id: __u64, +pub num_devices: __u64, +pub fsid: [__u8; 16usize], +pub nodesize: __u32, +pub sectorsize: __u32, +pub clone_alignment: __u32, +pub csum_type: __u16, +pub csum_size: __u16, +pub flags: __u64, +pub generation: __u64, +pub metadata_uuid: [__u8; 16usize], +pub reserved: [__u8; 944usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_feature_flags { +pub compat_flags: __u64, +pub compat_ro_flags: __u64, +pub incompat_flags: __u64, +} +#[repr(C, packed)] +#[derive(Copy, Clone)] +pub struct btrfs_balance_args { +pub profiles: __u64, +pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_1, +pub devid: __u64, +pub pstart: __u64, +pub pend: __u64, +pub vstart: __u64, +pub vend: __u64, +pub target: __u64, +pub flags: __u64, +pub __bindgen_anon_2: btrfs_balance_args__bindgen_ty_2, +pub stripes_min: __u32, +pub stripes_max: __u32, +pub unused: [__u64; 6usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_balance_args__bindgen_ty_1__bindgen_ty_1 { +pub usage_min: __u32, +pub usage_max: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_balance_args__bindgen_ty_2__bindgen_ty_1 { +pub limit_min: __u32, +pub limit_max: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_balance_progress { +pub expected: __u64, +pub considered: __u64, +pub completed: __u64, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct btrfs_ioctl_balance_args { +pub flags: __u64, +pub state: __u64, +pub data: btrfs_balance_args, +pub meta: btrfs_balance_args, +pub sys: btrfs_balance_args, +pub stat: btrfs_balance_progress, +pub unused: [__u64; 72usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_ino_lookup_args { +pub treeid: __u64, +pub objectid: __u64, +pub name: [crate::ctypes::c_char; 4080usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_ino_lookup_user_args { +pub dirid: __u64, +pub treeid: __u64, +pub name: [crate::ctypes::c_char; 256usize], +pub path: [crate::ctypes::c_char; 3824usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_search_key { +pub tree_id: __u64, +pub min_objectid: __u64, +pub max_objectid: __u64, +pub min_offset: __u64, +pub max_offset: __u64, +pub min_transid: __u64, +pub max_transid: __u64, +pub min_type: __u32, +pub max_type: __u32, +pub nr_items: __u32, +pub unused: __u32, +pub unused1: __u64, +pub unused2: __u64, +pub unused3: __u64, +pub unused4: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_search_header { +pub transid: __u64, +pub objectid: __u64, +pub offset: __u64, +pub type_: __u32, +pub len: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_search_args { +pub key: btrfs_ioctl_search_key, +pub buf: [crate::ctypes::c_char; 3992usize], +} +#[repr(C)] +#[derive(Debug)] +pub struct btrfs_ioctl_search_args_v2 { +pub key: btrfs_ioctl_search_key, +pub buf_size: __u64, +pub buf: __IncompleteArrayField<__u64>, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_clone_range_args { +pub src_fd: __s64, +pub src_offset: __u64, +pub src_length: __u64, +pub dest_offset: __u64, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args { +pub start: __u64, +pub len: __u64, +pub flags: __u64, +pub extent_thresh: __u32, +pub __bindgen_anon_1: btrfs_ioctl_defrag_range_args__bindgen_ty_1, +pub unused: [__u32; 4usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1 { +pub type_: __u8, +pub level: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_same_extent_info { +pub fd: __s64, +pub logical_offset: __u64, +pub bytes_deduped: __u64, +pub status: __s32, +pub reserved: __u32, +} +#[repr(C)] +#[derive(Debug)] +pub struct btrfs_ioctl_same_args { +pub logical_offset: __u64, +pub length: __u64, +pub dest_count: __u16, +pub reserved1: __u16, +pub reserved2: __u32, +pub info: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_space_info { +pub flags: __u64, +pub total_bytes: __u64, +pub used_bytes: __u64, +} +#[repr(C)] +#[derive(Debug)] +pub struct btrfs_ioctl_space_args { +pub space_slots: __u64, +pub total_spaces: __u64, +pub spaces: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug)] +pub struct btrfs_data_container { +pub bytes_left: __u32, +pub bytes_missing: __u32, +pub elem_cnt: __u32, +pub elem_missed: __u32, +pub val: __IncompleteArrayField<__u64>, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_ino_path_args { +pub inum: __u64, +pub size: __u64, +pub reserved: [__u64; 4usize], +pub fspath: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_logical_ino_args { +pub logical: __u64, +pub size: __u64, +pub reserved: [__u64; 3usize], +pub flags: __u64, +pub inodes: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_get_dev_stats { +pub devid: __u64, +pub nr_items: __u64, +pub flags: __u64, +pub values: [__u64; 5usize], +pub unused: [__u64; 121usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_quota_ctl_args { +pub cmd: __u64, +pub status: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_quota_rescan_args { +pub flags: __u64, +pub progress: __u64, +pub reserved: [__u64; 6usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_qgroup_assign_args { +pub assign: __u64, +pub src: __u64, +pub dst: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_qgroup_create_args { +pub create: __u64, +pub qgroupid: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_timespec { +pub sec: __u64, +pub nsec: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_received_subvol_args { +pub uuid: [crate::ctypes::c_char; 16usize], +pub stransid: __u64, +pub rtransid: __u64, +pub stime: btrfs_ioctl_timespec, +pub rtime: btrfs_ioctl_timespec, +pub flags: __u64, +pub reserved: [__u64; 16usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_send_args { +pub send_fd: __s64, +pub clone_sources_count: __u64, +pub clone_sources: *mut __u64, +pub parent_root: __u64, +pub flags: __u64, +pub version: __u32, +pub reserved: [__u8; 28usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_get_subvol_info_args { +pub treeid: __u64, +pub name: [crate::ctypes::c_char; 256usize], +pub parent_id: __u64, +pub dirid: __u64, +pub generation: __u64, +pub flags: __u64, +pub uuid: [__u8; 16usize], +pub parent_uuid: [__u8; 16usize], +pub received_uuid: [__u8; 16usize], +pub ctransid: __u64, +pub otransid: __u64, +pub stransid: __u64, +pub rtransid: __u64, +pub ctime: btrfs_ioctl_timespec, +pub otime: btrfs_ioctl_timespec, +pub stime: btrfs_ioctl_timespec, +pub rtime: btrfs_ioctl_timespec, +pub reserved: [__u64; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_get_subvol_rootref_args { +pub min_treeid: __u64, +pub rootref: [btrfs_ioctl_get_subvol_rootref_args__bindgen_ty_1; 255usize], +pub num_items: __u8, +pub align: [__u8; 7usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_get_subvol_rootref_args__bindgen_ty_1 { +pub treeid: __u64, +pub dirid: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_encoded_io_args { +pub iov: *const iovec, +pub iovcnt: crate::ctypes::c_ulong, +pub offset: __s64, +pub flags: __u64, +pub len: __u64, +pub unencoded_len: __u64, +pub unencoded_offset: __u64, +pub compression: __u32, +pub encryption: __u32, +pub reserved: [__u8; 64usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_ioctl_subvol_wait { +pub subvolid: __u64, +pub mode: __u32, +pub count: __u32, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_disk_key { +pub objectid: __le64, +pub type_: __u8, +pub offset: __le64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_key { +pub objectid: __u64, +pub type_: __u8, +pub offset: __u64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_header { +pub csum: [__u8; 32usize], +pub fsid: [__u8; 16usize], +pub bytenr: __le64, +pub flags: __le64, +pub chunk_tree_uuid: [__u8; 16usize], +pub generation: __le64, +pub owner: __le64, +pub nritems: __le32, +pub level: __u8, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_root_backup { +pub tree_root: __le64, +pub tree_root_gen: __le64, +pub chunk_root: __le64, +pub chunk_root_gen: __le64, +pub extent_root: __le64, +pub extent_root_gen: __le64, +pub fs_root: __le64, +pub fs_root_gen: __le64, +pub dev_root: __le64, +pub dev_root_gen: __le64, +pub csum_root: __le64, +pub csum_root_gen: __le64, +pub total_bytes: __le64, +pub bytes_used: __le64, +pub num_devices: __le64, +pub unused_64: [__le64; 4usize], +pub tree_root_level: __u8, +pub chunk_root_level: __u8, +pub extent_root_level: __u8, +pub fs_root_level: __u8, +pub dev_root_level: __u8, +pub csum_root_level: __u8, +pub unused_8: [__u8; 10usize], +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_item { +pub key: btrfs_disk_key, +pub offset: __le32, +pub size: __le32, +} +#[repr(C, packed)] +pub struct btrfs_leaf { +pub header: btrfs_header, +pub items: __IncompleteArrayField, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_key_ptr { +pub key: btrfs_disk_key, +pub blockptr: __le64, +pub generation: __le64, +} +#[repr(C, packed)] +pub struct btrfs_node { +pub header: btrfs_header, +pub ptrs: __IncompleteArrayField, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_dev_item { +pub devid: __le64, +pub total_bytes: __le64, +pub bytes_used: __le64, +pub io_align: __le32, +pub io_width: __le32, +pub sector_size: __le32, +pub type_: __le64, +pub generation: __le64, +pub start_offset: __le64, +pub dev_group: __le32, +pub seek_speed: __u8, +pub bandwidth: __u8, +pub uuid: [__u8; 16usize], +pub fsid: [__u8; 16usize], +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_stripe { +pub devid: __le64, +pub offset: __le64, +pub dev_uuid: [__u8; 16usize], +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_chunk { +pub length: __le64, +pub owner: __le64, +pub stripe_len: __le64, +pub type_: __le64, +pub io_align: __le32, +pub io_width: __le32, +pub sector_size: __le32, +pub num_stripes: __le16, +pub sub_stripes: __le16, +pub stripe: btrfs_stripe, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_super_block { +pub csum: [__u8; 32usize], +pub fsid: [__u8; 16usize], +pub bytenr: __le64, +pub flags: __le64, +pub magic: __le64, +pub generation: __le64, +pub root: __le64, +pub chunk_root: __le64, +pub log_root: __le64, +pub __unused_log_root_transid: __le64, +pub total_bytes: __le64, +pub bytes_used: __le64, +pub root_dir_objectid: __le64, +pub num_devices: __le64, +pub sectorsize: __le32, +pub nodesize: __le32, +pub __unused_leafsize: __le32, +pub stripesize: __le32, +pub sys_chunk_array_size: __le32, +pub chunk_root_generation: __le64, +pub compat_flags: __le64, +pub compat_ro_flags: __le64, +pub incompat_flags: __le64, +pub csum_type: __le16, +pub root_level: __u8, +pub chunk_root_level: __u8, +pub log_root_level: __u8, +pub dev_item: btrfs_dev_item, +pub label: [crate::ctypes::c_char; 256usize], +pub cache_generation: __le64, +pub uuid_tree_generation: __le64, +pub metadata_uuid: [__u8; 16usize], +pub nr_global_roots: __u64, +pub reserved: [__le64; 27usize], +pub sys_chunk_array: [__u8; 2048usize], +pub super_roots: [btrfs_root_backup; 4usize], +pub padding: [__u8; 565usize], +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_free_space_entry { +pub offset: __le64, +pub bytes: __le64, +pub type_: __u8, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_free_space_header { +pub location: btrfs_disk_key, +pub generation: __le64, +pub num_entries: __le64, +pub num_bitmaps: __le64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_raid_stride { +pub devid: __le64, +pub physical: __le64, +} +#[repr(C, packed)] +pub struct btrfs_stripe_extent { +pub __bindgen_anon_1: btrfs_stripe_extent__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug)] +pub struct btrfs_stripe_extent__bindgen_ty_1 { +pub __empty_strides: btrfs_stripe_extent__bindgen_ty_1__bindgen_ty_1, +pub strides: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_stripe_extent__bindgen_ty_1__bindgen_ty_1 {} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_extent_item { +pub refs: __le64, +pub generation: __le64, +pub flags: __le64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_extent_item_v0 { +pub refs: __le32, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_tree_block_info { +pub key: btrfs_disk_key, +pub level: __u8, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_extent_data_ref { +pub root: __le64, +pub objectid: __le64, +pub offset: __le64, +pub count: __le32, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_shared_data_ref { +pub count: __le32, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_extent_owner_ref { +pub root_id: __le64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_extent_inline_ref { +pub type_: __u8, +pub offset: __le64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_dev_extent { +pub chunk_tree: __le64, +pub chunk_objectid: __le64, +pub chunk_offset: __le64, +pub length: __le64, +pub chunk_tree_uuid: [__u8; 16usize], +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_inode_ref { +pub index: __le64, +pub name_len: __le16, +} +#[repr(C, packed)] +pub struct btrfs_inode_extref { +pub parent_objectid: __le64, +pub index: __le64, +pub name_len: __le16, +pub name: __IncompleteArrayField<__u8>, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_timespec { +pub sec: __le64, +pub nsec: __le32, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_inode_item { +pub generation: __le64, +pub transid: __le64, +pub size: __le64, +pub nbytes: __le64, +pub block_group: __le64, +pub nlink: __le32, +pub uid: __le32, +pub gid: __le32, +pub mode: __le32, +pub rdev: __le64, +pub flags: __le64, +pub sequence: __le64, +pub reserved: [__le64; 4usize], +pub atime: btrfs_timespec, +pub ctime: btrfs_timespec, +pub mtime: btrfs_timespec, +pub otime: btrfs_timespec, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_dir_log_item { +pub end: __le64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_dir_item { +pub location: btrfs_disk_key, +pub transid: __le64, +pub data_len: __le16, +pub name_len: __le16, +pub type_: __u8, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_root_item { +pub inode: btrfs_inode_item, +pub generation: __le64, +pub root_dirid: __le64, +pub bytenr: __le64, +pub byte_limit: __le64, +pub bytes_used: __le64, +pub last_snapshot: __le64, +pub flags: __le64, +pub refs: __le32, +pub drop_progress: btrfs_disk_key, +pub drop_level: __u8, +pub level: __u8, +pub generation_v2: __le64, +pub uuid: [__u8; 16usize], +pub parent_uuid: [__u8; 16usize], +pub received_uuid: [__u8; 16usize], +pub ctransid: __le64, +pub otransid: __le64, +pub stransid: __le64, +pub rtransid: __le64, +pub ctime: btrfs_timespec, +pub otime: btrfs_timespec, +pub stime: btrfs_timespec, +pub rtime: btrfs_timespec, +pub reserved: [__le64; 8usize], +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_root_ref { +pub dirid: __le64, +pub sequence: __le64, +pub name_len: __le16, +} +#[repr(C, packed)] +#[derive(Copy, Clone)] +pub struct btrfs_disk_balance_args { +pub profiles: __le64, +pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1, +pub devid: __le64, +pub pstart: __le64, +pub pend: __le64, +pub vstart: __le64, +pub vend: __le64, +pub target: __le64, +pub flags: __le64, +pub __bindgen_anon_2: btrfs_disk_balance_args__bindgen_ty_2, +pub stripes_min: __le32, +pub stripes_max: __le32, +pub unused: [__le64; 6usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1 { +pub usage_min: __le32, +pub usage_max: __le32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_disk_balance_args__bindgen_ty_2__bindgen_ty_1 { +pub limit_min: __le32, +pub limit_max: __le32, +} +#[repr(C, packed)] +#[derive(Copy, Clone)] +pub struct btrfs_balance_item { +pub flags: __le64, +pub data: btrfs_disk_balance_args, +pub meta: btrfs_disk_balance_args, +pub sys: btrfs_disk_balance_args, +pub unused: [__le64; 4usize], +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_file_extent_item { +pub generation: __le64, +pub ram_bytes: __le64, +pub compression: __u8, +pub encryption: __u8, +pub other_encoding: __le16, +pub type_: __u8, +pub disk_bytenr: __le64, +pub disk_num_bytes: __le64, +pub offset: __le64, +pub num_bytes: __le64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_csum_item { +pub csum: __u8, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_dev_stats_item { +pub values: [__le64; 5usize], +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_dev_replace_item { +pub src_devid: __le64, +pub cursor_left: __le64, +pub cursor_right: __le64, +pub cont_reading_from_srcdev_mode: __le64, +pub replace_state: __le64, +pub time_started: __le64, +pub time_stopped: __le64, +pub num_write_errors: __le64, +pub num_uncorrectable_read_errors: __le64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_block_group_item { +pub used: __le64, +pub chunk_objectid: __le64, +pub flags: __le64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_free_space_info { +pub extent_count: __le32, +pub flags: __le32, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_qgroup_status_item { +pub version: __le64, +pub generation: __le64, +pub flags: __le64, +pub rescan: __le64, +pub enable_gen: __le64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_qgroup_info_item { +pub generation: __le64, +pub rfer: __le64, +pub rfer_cmpr: __le64, +pub excl: __le64, +pub excl_cmpr: __le64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_qgroup_limit_item { +pub flags: __le64, +pub max_rfer: __le64, +pub max_excl: __le64, +pub rsv_rfer: __le64, +pub rsv_excl: __le64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct btrfs_verity_descriptor_item { +pub size: __le64, +pub reserved: [__le64; 2usize], +pub encryption: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct iovec { +pub _address: u8, +} +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const _IOC_NRBITS: u32 = 8; +pub const _IOC_TYPEBITS: u32 = 8; +pub const _IOC_SIZEBITS: u32 = 14; +pub const _IOC_DIRBITS: u32 = 2; +pub const _IOC_NRMASK: u32 = 255; +pub const _IOC_TYPEMASK: u32 = 255; +pub const _IOC_SIZEMASK: u32 = 16383; +pub const _IOC_DIRMASK: u32 = 3; +pub const _IOC_NRSHIFT: u32 = 0; +pub const _IOC_TYPESHIFT: u32 = 8; +pub const _IOC_SIZESHIFT: u32 = 16; +pub const _IOC_DIRSHIFT: u32 = 30; +pub const _IOC_NONE: u32 = 0; +pub const _IOC_WRITE: u32 = 1; +pub const _IOC_READ: u32 = 2; +pub const IOC_IN: u32 = 1073741824; +pub const IOC_OUT: u32 = 2147483648; +pub const IOC_INOUT: u32 = 3221225472; +pub const IOCSIZE_MASK: u32 = 1073676288; +pub const IOCSIZE_SHIFT: u32 = 16; +pub const NR_OPEN: u32 = 1024; +pub const NGROUPS_MAX: u32 = 65536; +pub const ARG_MAX: u32 = 131072; +pub const LINK_MAX: u32 = 127; +pub const MAX_CANON: u32 = 255; +pub const MAX_INPUT: u32 = 255; +pub const NAME_MAX: u32 = 255; +pub const PATH_MAX: u32 = 4096; +pub const PIPE_BUF: u32 = 4096; +pub const XATTR_NAME_MAX: u32 = 255; +pub const XATTR_SIZE_MAX: u32 = 65536; +pub const XATTR_LIST_MAX: u32 = 65536; +pub const RTSIG_MAX: u32 = 32; +pub const FSCRYPT_POLICY_FLAGS_PAD_4: u32 = 0; +pub const FSCRYPT_POLICY_FLAGS_PAD_8: u32 = 1; +pub const FSCRYPT_POLICY_FLAGS_PAD_16: u32 = 2; +pub const FSCRYPT_POLICY_FLAGS_PAD_32: u32 = 3; +pub const FSCRYPT_POLICY_FLAGS_PAD_MASK: u32 = 3; +pub const FSCRYPT_POLICY_FLAG_DIRECT_KEY: u32 = 4; +pub const FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64: u32 = 8; +pub const FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32: u32 = 16; +pub const FSCRYPT_MODE_AES_256_XTS: u32 = 1; +pub const FSCRYPT_MODE_AES_256_CTS: u32 = 4; +pub const FSCRYPT_MODE_AES_128_CBC: u32 = 5; +pub const FSCRYPT_MODE_AES_128_CTS: u32 = 6; +pub const FSCRYPT_MODE_SM4_XTS: u32 = 7; +pub const FSCRYPT_MODE_SM4_CTS: u32 = 8; +pub const FSCRYPT_MODE_ADIANTUM: u32 = 9; +pub const FSCRYPT_MODE_AES_256_HCTR2: u32 = 10; +pub const FSCRYPT_POLICY_V1: u32 = 0; +pub const FSCRYPT_KEY_DESCRIPTOR_SIZE: u32 = 8; +pub const FSCRYPT_KEY_DESC_PREFIX: &[u8; 9] = b"fscrypt:\0"; +pub const FSCRYPT_KEY_DESC_PREFIX_SIZE: u32 = 8; +pub const FSCRYPT_MAX_KEY_SIZE: u32 = 64; +pub const FSCRYPT_POLICY_V2: u32 = 2; +pub const FSCRYPT_KEY_IDENTIFIER_SIZE: u32 = 16; +pub const FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR: u32 = 1; +pub const FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER: u32 = 2; +pub const FSCRYPT_ADD_KEY_FLAG_HW_WRAPPED: u32 = 1; +pub const FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY: u32 = 1; +pub const FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS: u32 = 2; +pub const FSCRYPT_KEY_STATUS_ABSENT: u32 = 1; +pub const FSCRYPT_KEY_STATUS_PRESENT: u32 = 2; +pub const FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED: u32 = 3; +pub const FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF: u32 = 1; +pub const FS_KEY_DESCRIPTOR_SIZE: u32 = 8; +pub const FS_POLICY_FLAGS_PAD_4: u32 = 0; +pub const FS_POLICY_FLAGS_PAD_8: u32 = 1; +pub const FS_POLICY_FLAGS_PAD_16: u32 = 2; +pub const FS_POLICY_FLAGS_PAD_32: u32 = 3; +pub const FS_POLICY_FLAGS_PAD_MASK: u32 = 3; +pub const FS_POLICY_FLAG_DIRECT_KEY: u32 = 4; +pub const FS_POLICY_FLAGS_VALID: u32 = 7; +pub const FS_ENCRYPTION_MODE_INVALID: u32 = 0; +pub const FS_ENCRYPTION_MODE_AES_256_XTS: u32 = 1; +pub const FS_ENCRYPTION_MODE_AES_256_GCM: u32 = 2; +pub const FS_ENCRYPTION_MODE_AES_256_CBC: u32 = 3; +pub const FS_ENCRYPTION_MODE_AES_256_CTS: u32 = 4; +pub const FS_ENCRYPTION_MODE_AES_128_CBC: u32 = 5; +pub const FS_ENCRYPTION_MODE_AES_128_CTS: u32 = 6; +pub const FS_ENCRYPTION_MODE_ADIANTUM: u32 = 9; +pub const FS_KEY_DESC_PREFIX: &[u8; 9] = b"fscrypt:\0"; +pub const FS_KEY_DESC_PREFIX_SIZE: u32 = 8; +pub const FS_MAX_KEY_SIZE: u32 = 64; +pub const MS_RDONLY: u32 = 1; +pub const MS_NOSUID: u32 = 2; +pub const MS_NODEV: u32 = 4; +pub const MS_NOEXEC: u32 = 8; +pub const MS_SYNCHRONOUS: u32 = 16; +pub const MS_REMOUNT: u32 = 32; +pub const MS_MANDLOCK: u32 = 64; +pub const MS_DIRSYNC: u32 = 128; +pub const MS_NOSYMFOLLOW: u32 = 256; +pub const MS_NOATIME: u32 = 1024; +pub const MS_NODIRATIME: u32 = 2048; +pub const MS_BIND: u32 = 4096; +pub const MS_MOVE: u32 = 8192; +pub const MS_REC: u32 = 16384; +pub const MS_VERBOSE: u32 = 32768; +pub const MS_SILENT: u32 = 32768; +pub const MS_POSIXACL: u32 = 65536; +pub const MS_UNBINDABLE: u32 = 131072; +pub const MS_PRIVATE: u32 = 262144; +pub const MS_SLAVE: u32 = 524288; +pub const MS_SHARED: u32 = 1048576; +pub const MS_RELATIME: u32 = 2097152; +pub const MS_KERNMOUNT: u32 = 4194304; +pub const MS_I_VERSION: u32 = 8388608; +pub const MS_STRICTATIME: u32 = 16777216; +pub const MS_LAZYTIME: u32 = 33554432; +pub const MS_SUBMOUNT: u32 = 67108864; +pub const MS_NOREMOTELOCK: u32 = 134217728; +pub const MS_NOSEC: u32 = 268435456; +pub const MS_BORN: u32 = 536870912; +pub const MS_ACTIVE: u32 = 1073741824; +pub const MS_NOUSER: u32 = 2147483648; +pub const MS_RMT_MASK: u32 = 41943121; +pub const MS_MGC_VAL: u32 = 3236757504; +pub const MS_MGC_MSK: u32 = 4294901760; +pub const OPEN_TREE_CLONE: u32 = 1; +pub const MOVE_MOUNT_F_SYMLINKS: u32 = 1; +pub const MOVE_MOUNT_F_AUTOMOUNTS: u32 = 2; +pub const MOVE_MOUNT_F_EMPTY_PATH: u32 = 4; +pub const MOVE_MOUNT_T_SYMLINKS: u32 = 16; +pub const MOVE_MOUNT_T_AUTOMOUNTS: u32 = 32; +pub const MOVE_MOUNT_T_EMPTY_PATH: u32 = 64; +pub const MOVE_MOUNT_SET_GROUP: u32 = 256; +pub const MOVE_MOUNT_BENEATH: u32 = 512; +pub const MOVE_MOUNT__MASK: u32 = 887; +pub const FSOPEN_CLOEXEC: u32 = 1; +pub const FSPICK_CLOEXEC: u32 = 1; +pub const FSPICK_SYMLINK_NOFOLLOW: u32 = 2; +pub const FSPICK_NO_AUTOMOUNT: u32 = 4; +pub const FSPICK_EMPTY_PATH: u32 = 8; +pub const FSMOUNT_CLOEXEC: u32 = 1; +pub const MOUNT_ATTR_RDONLY: u32 = 1; +pub const MOUNT_ATTR_NOSUID: u32 = 2; +pub const MOUNT_ATTR_NODEV: u32 = 4; +pub const MOUNT_ATTR_NOEXEC: u32 = 8; +pub const MOUNT_ATTR__ATIME: u32 = 112; +pub const MOUNT_ATTR_RELATIME: u32 = 0; +pub const MOUNT_ATTR_NOATIME: u32 = 16; +pub const MOUNT_ATTR_STRICTATIME: u32 = 32; +pub const MOUNT_ATTR_NODIRATIME: u32 = 128; +pub const MOUNT_ATTR_IDMAP: u32 = 1048576; +pub const MOUNT_ATTR_NOSYMFOLLOW: u32 = 2097152; +pub const MOUNT_ATTR_SIZE_VER0: u32 = 32; +pub const MNT_ID_REQ_SIZE_VER0: u32 = 24; +pub const MNT_ID_REQ_SIZE_VER1: u32 = 32; +pub const STATMOUNT_SB_BASIC: u32 = 1; +pub const STATMOUNT_MNT_BASIC: u32 = 2; +pub const STATMOUNT_PROPAGATE_FROM: u32 = 4; +pub const STATMOUNT_MNT_ROOT: u32 = 8; +pub const STATMOUNT_MNT_POINT: u32 = 16; +pub const STATMOUNT_FS_TYPE: u32 = 32; +pub const STATMOUNT_MNT_NS_ID: u32 = 64; +pub const STATMOUNT_MNT_OPTS: u32 = 128; +pub const STATMOUNT_FS_SUBTYPE: u32 = 256; +pub const STATMOUNT_SB_SOURCE: u32 = 512; +pub const STATMOUNT_OPT_ARRAY: u32 = 1024; +pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; +pub const LSMT_ROOT: i32 = -1; +pub const LISTMOUNT_REVERSE: u32 = 1; +pub const INR_OPEN_CUR: u32 = 1024; +pub const INR_OPEN_MAX: u32 = 4096; +pub const BLOCK_SIZE_BITS: u32 = 10; +pub const BLOCK_SIZE: u32 = 1024; +pub const IO_INTEGRITY_CHK_GUARD: u32 = 1; +pub const IO_INTEGRITY_CHK_REFTAG: u32 = 2; +pub const IO_INTEGRITY_CHK_APPTAG: u32 = 4; +pub const IO_INTEGRITY_VALID_FLAGS: u32 = 7; +pub const SEEK_SET: u32 = 0; +pub const SEEK_CUR: u32 = 1; +pub const SEEK_END: u32 = 2; +pub const SEEK_DATA: u32 = 3; +pub const SEEK_HOLE: u32 = 4; +pub const SEEK_MAX: u32 = 4; +pub const RENAME_NOREPLACE: u32 = 1; +pub const RENAME_EXCHANGE: u32 = 2; +pub const RENAME_WHITEOUT: u32 = 4; +pub const LBMD_PI_CAP_INTEGRITY: u32 = 1; +pub const LBMD_PI_CAP_REFTAG: u32 = 2; +pub const LBMD_PI_CSUM_NONE: u32 = 0; +pub const LBMD_PI_CSUM_IP: u32 = 1; +pub const LBMD_PI_CSUM_CRC16_T10DIF: u32 = 2; +pub const LBMD_PI_CSUM_CRC64_NVME: u32 = 4; +pub const LBMD_SIZE_VER0: u32 = 16; +pub const FILE_DEDUPE_RANGE_SAME: u32 = 0; +pub const FILE_DEDUPE_RANGE_DIFFERS: u32 = 1; +pub const NR_FILE: u32 = 8192; +pub const FILE_ATTR_SIZE_VER0: u32 = 24; +pub const FILE_ATTR_SIZE_LATEST: u32 = 24; +pub const FS_XFLAG_REALTIME: u32 = 1; +pub const FS_XFLAG_PREALLOC: u32 = 2; +pub const FS_XFLAG_IMMUTABLE: u32 = 8; +pub const FS_XFLAG_APPEND: u32 = 16; +pub const FS_XFLAG_SYNC: u32 = 32; +pub const FS_XFLAG_NOATIME: u32 = 64; +pub const FS_XFLAG_NODUMP: u32 = 128; +pub const FS_XFLAG_RTINHERIT: u32 = 256; +pub const FS_XFLAG_PROJINHERIT: u32 = 512; +pub const FS_XFLAG_NOSYMLINKS: u32 = 1024; +pub const FS_XFLAG_EXTSIZE: u32 = 2048; +pub const FS_XFLAG_EXTSZINHERIT: u32 = 4096; +pub const FS_XFLAG_NODEFRAG: u32 = 8192; +pub const FS_XFLAG_FILESTREAM: u32 = 16384; +pub const FS_XFLAG_DAX: u32 = 32768; +pub const FS_XFLAG_COWEXTSIZE: u32 = 65536; +pub const FS_XFLAG_HASATTR: u32 = 2147483648; +pub const BMAP_IOCTL: u32 = 1; +pub const FSLABEL_MAX: u32 = 256; +pub const FS_SECRM_FL: u32 = 1; +pub const FS_UNRM_FL: u32 = 2; +pub const FS_COMPR_FL: u32 = 4; +pub const FS_SYNC_FL: u32 = 8; +pub const FS_IMMUTABLE_FL: u32 = 16; +pub const FS_APPEND_FL: u32 = 32; +pub const FS_NODUMP_FL: u32 = 64; +pub const FS_NOATIME_FL: u32 = 128; +pub const FS_DIRTY_FL: u32 = 256; +pub const FS_COMPRBLK_FL: u32 = 512; +pub const FS_NOCOMP_FL: u32 = 1024; +pub const FS_ENCRYPT_FL: u32 = 2048; +pub const FS_BTREE_FL: u32 = 4096; +pub const FS_INDEX_FL: u32 = 4096; +pub const FS_IMAGIC_FL: u32 = 8192; +pub const FS_JOURNAL_DATA_FL: u32 = 16384; +pub const FS_NOTAIL_FL: u32 = 32768; +pub const FS_DIRSYNC_FL: u32 = 65536; +pub const FS_TOPDIR_FL: u32 = 131072; +pub const FS_HUGE_FILE_FL: u32 = 262144; +pub const FS_EXTENT_FL: u32 = 524288; +pub const FS_VERITY_FL: u32 = 1048576; +pub const FS_EA_INODE_FL: u32 = 2097152; +pub const FS_EOFBLOCKS_FL: u32 = 4194304; +pub const FS_NOCOW_FL: u32 = 8388608; +pub const FS_DAX_FL: u32 = 33554432; +pub const FS_INLINE_DATA_FL: u32 = 268435456; +pub const FS_PROJINHERIT_FL: u32 = 536870912; +pub const FS_CASEFOLD_FL: u32 = 1073741824; +pub const FS_RESERVED_FL: u32 = 2147483648; +pub const FS_FL_USER_VISIBLE: u32 = 253951; +pub const FS_FL_USER_MODIFIABLE: u32 = 229631; +pub const SYNC_FILE_RANGE_WAIT_BEFORE: u32 = 1; +pub const SYNC_FILE_RANGE_WRITE: u32 = 2; +pub const SYNC_FILE_RANGE_WAIT_AFTER: u32 = 4; +pub const SYNC_FILE_RANGE_WRITE_AND_WAIT: u32 = 7; +pub const PROCFS_IOCTL_MAGIC: u8 = 102u8; +pub const PAGE_IS_WPALLOWED: u32 = 1; +pub const PAGE_IS_WRITTEN: u32 = 2; +pub const PAGE_IS_FILE: u32 = 4; +pub const PAGE_IS_PRESENT: u32 = 8; +pub const PAGE_IS_SWAPPED: u32 = 16; +pub const PAGE_IS_PFNZERO: u32 = 32; +pub const PAGE_IS_HUGE: u32 = 64; +pub const PAGE_IS_SOFT_DIRTY: u32 = 128; +pub const PAGE_IS_GUARD: u32 = 256; +pub const PM_SCAN_WP_MATCHING: u32 = 1; +pub const PM_SCAN_CHECK_WPASYNC: u32 = 2; +pub const BTRFS_IOCTL_MAGIC: u32 = 148; +pub const BTRFS_VOL_NAME_MAX: u32 = 255; +pub const BTRFS_LABEL_SIZE: u32 = 256; +pub const BTRFS_PATH_NAME_MAX: u32 = 4087; +pub const BTRFS_DEVICE_PATH_NAME_MAX: u32 = 1024; +pub const BTRFS_SUBVOL_NAME_MAX: u32 = 4039; +pub const BTRFS_SUBVOL_CREATE_ASYNC: u32 = 1; +pub const BTRFS_SUBVOL_RDONLY: u32 = 2; +pub const BTRFS_SUBVOL_QGROUP_INHERIT: u32 = 4; +pub const BTRFS_DEVICE_SPEC_BY_ID: u32 = 8; +pub const BTRFS_SUBVOL_SPEC_BY_ID: u32 = 16; +pub const BTRFS_VOL_ARG_V2_FLAGS_SUPPORTED: u32 = 30; +pub const BTRFS_FSID_SIZE: u32 = 16; +pub const BTRFS_UUID_SIZE: u32 = 16; +pub const BTRFS_UUID_UNPARSED_SIZE: u32 = 37; +pub const BTRFS_QGROUP_LIMIT_MAX_RFER: u32 = 1; +pub const BTRFS_QGROUP_LIMIT_MAX_EXCL: u32 = 2; +pub const BTRFS_QGROUP_LIMIT_RSV_RFER: u32 = 4; +pub const BTRFS_QGROUP_LIMIT_RSV_EXCL: u32 = 8; +pub const BTRFS_QGROUP_LIMIT_RFER_CMPR: u32 = 16; +pub const BTRFS_QGROUP_LIMIT_EXCL_CMPR: u32 = 32; +pub const BTRFS_QGROUP_INHERIT_SET_LIMITS: u32 = 1; +pub const BTRFS_QGROUP_INHERIT_FLAGS_SUPP: u32 = 1; +pub const BTRFS_DEVICE_REMOVE_ARGS_MASK: u32 = 8; +pub const BTRFS_SUBVOL_CREATE_ARGS_MASK: u32 = 6; +pub const BTRFS_SUBVOL_DELETE_ARGS_MASK: u32 = 16; +pub const BTRFS_SCRUB_READONLY: u32 = 1; +pub const BTRFS_SCRUB_SUPPORTED_FLAGS: u32 = 1; +pub const BTRFS_IOCTL_DEV_REPLACE_CONT_READING_FROM_SRCDEV_MODE_ALWAYS: u32 = 0; +pub const BTRFS_IOCTL_DEV_REPLACE_CONT_READING_FROM_SRCDEV_MODE_AVOID: u32 = 1; +pub const BTRFS_IOCTL_DEV_REPLACE_STATE_NEVER_STARTED: u32 = 0; +pub const BTRFS_IOCTL_DEV_REPLACE_STATE_STARTED: u32 = 1; +pub const BTRFS_IOCTL_DEV_REPLACE_STATE_FINISHED: u32 = 2; +pub const BTRFS_IOCTL_DEV_REPLACE_STATE_CANCELED: u32 = 3; +pub const BTRFS_IOCTL_DEV_REPLACE_STATE_SUSPENDED: u32 = 4; +pub const BTRFS_IOCTL_DEV_REPLACE_CMD_START: u32 = 0; +pub const BTRFS_IOCTL_DEV_REPLACE_CMD_STATUS: u32 = 1; +pub const BTRFS_IOCTL_DEV_REPLACE_CMD_CANCEL: u32 = 2; +pub const BTRFS_IOCTL_DEV_REPLACE_RESULT_NO_ERROR: u32 = 0; +pub const BTRFS_IOCTL_DEV_REPLACE_RESULT_NOT_STARTED: u32 = 1; +pub const BTRFS_IOCTL_DEV_REPLACE_RESULT_ALREADY_STARTED: u32 = 2; +pub const BTRFS_IOCTL_DEV_REPLACE_RESULT_SCRUB_INPROGRESS: u32 = 3; +pub const BTRFS_FS_INFO_FLAG_CSUM_INFO: u32 = 1; +pub const BTRFS_FS_INFO_FLAG_GENERATION: u32 = 2; +pub const BTRFS_FS_INFO_FLAG_METADATA_UUID: u32 = 4; +pub const BTRFS_FEATURE_COMPAT_RO_FREE_SPACE_TREE: u32 = 1; +pub const BTRFS_FEATURE_COMPAT_RO_FREE_SPACE_TREE_VALID: u32 = 2; +pub const BTRFS_FEATURE_COMPAT_RO_VERITY: u32 = 4; +pub const BTRFS_FEATURE_COMPAT_RO_BLOCK_GROUP_TREE: u32 = 8; +pub const BTRFS_FEATURE_INCOMPAT_MIXED_BACKREF: u32 = 1; +pub const BTRFS_FEATURE_INCOMPAT_DEFAULT_SUBVOL: u32 = 2; +pub const BTRFS_FEATURE_INCOMPAT_MIXED_GROUPS: u32 = 4; +pub const BTRFS_FEATURE_INCOMPAT_COMPRESS_LZO: u32 = 8; +pub const BTRFS_FEATURE_INCOMPAT_COMPRESS_ZSTD: u32 = 16; +pub const BTRFS_FEATURE_INCOMPAT_BIG_METADATA: u32 = 32; +pub const BTRFS_FEATURE_INCOMPAT_EXTENDED_IREF: u32 = 64; +pub const BTRFS_FEATURE_INCOMPAT_RAID56: u32 = 128; +pub const BTRFS_FEATURE_INCOMPAT_SKINNY_METADATA: u32 = 256; +pub const BTRFS_FEATURE_INCOMPAT_NO_HOLES: u32 = 512; +pub const BTRFS_FEATURE_INCOMPAT_METADATA_UUID: u32 = 1024; +pub const BTRFS_FEATURE_INCOMPAT_RAID1C34: u32 = 2048; +pub const BTRFS_FEATURE_INCOMPAT_ZONED: u32 = 4096; +pub const BTRFS_FEATURE_INCOMPAT_EXTENT_TREE_V2: u32 = 8192; +pub const BTRFS_FEATURE_INCOMPAT_RAID_STRIPE_TREE: u32 = 16384; +pub const BTRFS_FEATURE_INCOMPAT_SIMPLE_QUOTA: u32 = 65536; +pub const BTRFS_BALANCE_CTL_PAUSE: u32 = 1; +pub const BTRFS_BALANCE_CTL_CANCEL: u32 = 2; +pub const BTRFS_BALANCE_DATA: u32 = 1; +pub const BTRFS_BALANCE_SYSTEM: u32 = 2; +pub const BTRFS_BALANCE_METADATA: u32 = 4; +pub const BTRFS_BALANCE_TYPE_MASK: u32 = 7; +pub const BTRFS_BALANCE_FORCE: u32 = 8; +pub const BTRFS_BALANCE_RESUME: u32 = 16; +pub const BTRFS_BALANCE_ARGS_PROFILES: u32 = 1; +pub const BTRFS_BALANCE_ARGS_USAGE: u32 = 2; +pub const BTRFS_BALANCE_ARGS_DEVID: u32 = 4; +pub const BTRFS_BALANCE_ARGS_DRANGE: u32 = 8; +pub const BTRFS_BALANCE_ARGS_VRANGE: u32 = 16; +pub const BTRFS_BALANCE_ARGS_LIMIT: u32 = 32; +pub const BTRFS_BALANCE_ARGS_LIMIT_RANGE: u32 = 64; +pub const BTRFS_BALANCE_ARGS_STRIPES_RANGE: u32 = 128; +pub const BTRFS_BALANCE_ARGS_USAGE_RANGE: u32 = 1024; +pub const BTRFS_BALANCE_ARGS_MASK: u32 = 1279; +pub const BTRFS_BALANCE_ARGS_CONVERT: u32 = 256; +pub const BTRFS_BALANCE_ARGS_SOFT: u32 = 512; +pub const BTRFS_BALANCE_STATE_RUNNING: u32 = 1; +pub const BTRFS_BALANCE_STATE_PAUSE_REQ: u32 = 2; +pub const BTRFS_BALANCE_STATE_CANCEL_REQ: u32 = 4; +pub const BTRFS_INO_LOOKUP_PATH_MAX: u32 = 4080; +pub const BTRFS_INO_LOOKUP_USER_PATH_MAX: u32 = 3824; +pub const BTRFS_DEFRAG_RANGE_COMPRESS: u32 = 1; +pub const BTRFS_DEFRAG_RANGE_START_IO: u32 = 2; +pub const BTRFS_DEFRAG_RANGE_COMPRESS_LEVEL: u32 = 4; +pub const BTRFS_DEFRAG_RANGE_NOCOMPRESS: u32 = 8; +pub const BTRFS_DEFRAG_RANGE_FLAGS_SUPP: u32 = 15; +pub const BTRFS_SAME_DATA_DIFFERS: u32 = 1; +pub const BTRFS_LOGICAL_INO_ARGS_IGNORE_OFFSET: u32 = 1; +pub const BTRFS_DEV_STATS_RESET: u32 = 1; +pub const BTRFS_QUOTA_CTL_ENABLE: u32 = 1; +pub const BTRFS_QUOTA_CTL_DISABLE: u32 = 2; +pub const BTRFS_QUOTA_CTL_RESCAN__NOTUSED: u32 = 3; +pub const BTRFS_QUOTA_CTL_ENABLE_SIMPLE_QUOTA: u32 = 4; +pub const BTRFS_SEND_FLAG_NO_FILE_DATA: u32 = 1; +pub const BTRFS_SEND_FLAG_OMIT_STREAM_HEADER: u32 = 2; +pub const BTRFS_SEND_FLAG_OMIT_END_CMD: u32 = 4; +pub const BTRFS_SEND_FLAG_VERSION: u32 = 8; +pub const BTRFS_SEND_FLAG_COMPRESSED: u32 = 16; +pub const BTRFS_SEND_FLAG_MASK: u32 = 31; +pub const BTRFS_MAX_ROOTREF_BUFFER_NUM: u32 = 255; +pub const BTRFS_ENCODED_IO_COMPRESSION_NONE: u32 = 0; +pub const BTRFS_ENCODED_IO_COMPRESSION_ZLIB: u32 = 1; +pub const BTRFS_ENCODED_IO_COMPRESSION_ZSTD: u32 = 2; +pub const BTRFS_ENCODED_IO_COMPRESSION_LZO_4K: u32 = 3; +pub const BTRFS_ENCODED_IO_COMPRESSION_LZO_8K: u32 = 4; +pub const BTRFS_ENCODED_IO_COMPRESSION_LZO_16K: u32 = 5; +pub const BTRFS_ENCODED_IO_COMPRESSION_LZO_32K: u32 = 6; +pub const BTRFS_ENCODED_IO_COMPRESSION_LZO_64K: u32 = 7; +pub const BTRFS_ENCODED_IO_COMPRESSION_TYPES: u32 = 8; +pub const BTRFS_ENCODED_IO_ENCRYPTION_NONE: u32 = 0; +pub const BTRFS_ENCODED_IO_ENCRYPTION_TYPES: u32 = 1; +pub const BTRFS_SUBVOL_SYNC_WAIT_FOR_ONE: u32 = 0; +pub const BTRFS_SUBVOL_SYNC_WAIT_FOR_QUEUED: u32 = 1; +pub const BTRFS_SUBVOL_SYNC_COUNT: u32 = 2; +pub const BTRFS_SUBVOL_SYNC_PEEK_FIRST: u32 = 3; +pub const BTRFS_SUBVOL_SYNC_PEEK_LAST: u32 = 4; +pub const BTRFS_MAGIC: u64 = 5575266562640200287; +pub const BTRFS_MAX_LEVEL: u32 = 8; +pub const BTRFS_NAME_LEN: u32 = 255; +pub const BTRFS_LINK_MAX: u32 = 65535; +pub const BTRFS_ROOT_TREE_OBJECTID: u32 = 1; +pub const BTRFS_EXTENT_TREE_OBJECTID: u32 = 2; +pub const BTRFS_CHUNK_TREE_OBJECTID: u32 = 3; +pub const BTRFS_DEV_TREE_OBJECTID: u32 = 4; +pub const BTRFS_FS_TREE_OBJECTID: u32 = 5; +pub const BTRFS_ROOT_TREE_DIR_OBJECTID: u32 = 6; +pub const BTRFS_CSUM_TREE_OBJECTID: u32 = 7; +pub const BTRFS_QUOTA_TREE_OBJECTID: u32 = 8; +pub const BTRFS_UUID_TREE_OBJECTID: u32 = 9; +pub const BTRFS_FREE_SPACE_TREE_OBJECTID: u32 = 10; +pub const BTRFS_BLOCK_GROUP_TREE_OBJECTID: u32 = 11; +pub const BTRFS_RAID_STRIPE_TREE_OBJECTID: u32 = 12; +pub const BTRFS_DEV_STATS_OBJECTID: u32 = 0; +pub const BTRFS_BALANCE_OBJECTID: i32 = -4; +pub const BTRFS_ORPHAN_OBJECTID: i32 = -5; +pub const BTRFS_TREE_LOG_OBJECTID: i32 = -6; +pub const BTRFS_TREE_LOG_FIXUP_OBJECTID: i32 = -7; +pub const BTRFS_TREE_RELOC_OBJECTID: i32 = -8; +pub const BTRFS_DATA_RELOC_TREE_OBJECTID: i32 = -9; +pub const BTRFS_EXTENT_CSUM_OBJECTID: i32 = -10; +pub const BTRFS_FREE_SPACE_OBJECTID: i32 = -11; +pub const BTRFS_FREE_INO_OBJECTID: i32 = -12; +pub const BTRFS_MULTIPLE_OBJECTIDS: i32 = -255; +pub const BTRFS_FIRST_FREE_OBJECTID: u32 = 256; +pub const BTRFS_LAST_FREE_OBJECTID: i32 = -256; +pub const BTRFS_FIRST_CHUNK_TREE_OBJECTID: u32 = 256; +pub const BTRFS_DEV_ITEMS_OBJECTID: u32 = 1; +pub const BTRFS_BTREE_INODE_OBJECTID: u32 = 1; +pub const BTRFS_EMPTY_SUBVOL_DIR_OBJECTID: u32 = 2; +pub const BTRFS_DEV_REPLACE_DEVID: u32 = 0; +pub const BTRFS_INODE_ITEM_KEY: u32 = 1; +pub const BTRFS_INODE_REF_KEY: u32 = 12; +pub const BTRFS_INODE_EXTREF_KEY: u32 = 13; +pub const BTRFS_XATTR_ITEM_KEY: u32 = 24; +pub const BTRFS_VERITY_DESC_ITEM_KEY: u32 = 36; +pub const BTRFS_VERITY_MERKLE_ITEM_KEY: u32 = 37; +pub const BTRFS_ORPHAN_ITEM_KEY: u32 = 48; +pub const BTRFS_DIR_LOG_ITEM_KEY: u32 = 60; +pub const BTRFS_DIR_LOG_INDEX_KEY: u32 = 72; +pub const BTRFS_DIR_ITEM_KEY: u32 = 84; +pub const BTRFS_DIR_INDEX_KEY: u32 = 96; +pub const BTRFS_EXTENT_DATA_KEY: u32 = 108; +pub const BTRFS_EXTENT_CSUM_KEY: u32 = 128; +pub const BTRFS_ROOT_ITEM_KEY: u32 = 132; +pub const BTRFS_ROOT_BACKREF_KEY: u32 = 144; +pub const BTRFS_ROOT_REF_KEY: u32 = 156; +pub const BTRFS_EXTENT_ITEM_KEY: u32 = 168; +pub const BTRFS_METADATA_ITEM_KEY: u32 = 169; +pub const BTRFS_EXTENT_OWNER_REF_KEY: u32 = 172; +pub const BTRFS_TREE_BLOCK_REF_KEY: u32 = 176; +pub const BTRFS_EXTENT_DATA_REF_KEY: u32 = 178; +pub const BTRFS_SHARED_BLOCK_REF_KEY: u32 = 182; +pub const BTRFS_SHARED_DATA_REF_KEY: u32 = 184; +pub const BTRFS_BLOCK_GROUP_ITEM_KEY: u32 = 192; +pub const BTRFS_FREE_SPACE_INFO_KEY: u32 = 198; +pub const BTRFS_FREE_SPACE_EXTENT_KEY: u32 = 199; +pub const BTRFS_FREE_SPACE_BITMAP_KEY: u32 = 200; +pub const BTRFS_DEV_EXTENT_KEY: u32 = 204; +pub const BTRFS_DEV_ITEM_KEY: u32 = 216; +pub const BTRFS_CHUNK_ITEM_KEY: u32 = 228; +pub const BTRFS_RAID_STRIPE_KEY: u32 = 230; +pub const BTRFS_QGROUP_STATUS_KEY: u32 = 240; +pub const BTRFS_QGROUP_INFO_KEY: u32 = 242; +pub const BTRFS_QGROUP_LIMIT_KEY: u32 = 244; +pub const BTRFS_QGROUP_RELATION_KEY: u32 = 246; +pub const BTRFS_BALANCE_ITEM_KEY: u32 = 248; +pub const BTRFS_TEMPORARY_ITEM_KEY: u32 = 248; +pub const BTRFS_DEV_STATS_KEY: u32 = 249; +pub const BTRFS_PERSISTENT_ITEM_KEY: u32 = 249; +pub const BTRFS_DEV_REPLACE_KEY: u32 = 250; +pub const BTRFS_UUID_KEY_SUBVOL: u32 = 251; +pub const BTRFS_UUID_KEY_RECEIVED_SUBVOL: u32 = 252; +pub const BTRFS_STRING_ITEM_KEY: u32 = 253; +pub const BTRFS_MAX_METADATA_BLOCKSIZE: u32 = 65536; +pub const BTRFS_CSUM_SIZE: u32 = 32; +pub const BTRFS_FT_UNKNOWN: u32 = 0; +pub const BTRFS_FT_REG_FILE: u32 = 1; +pub const BTRFS_FT_DIR: u32 = 2; +pub const BTRFS_FT_CHRDEV: u32 = 3; +pub const BTRFS_FT_BLKDEV: u32 = 4; +pub const BTRFS_FT_FIFO: u32 = 5; +pub const BTRFS_FT_SOCK: u32 = 6; +pub const BTRFS_FT_SYMLINK: u32 = 7; +pub const BTRFS_FT_XATTR: u32 = 8; +pub const BTRFS_FT_MAX: u32 = 9; +pub const BTRFS_FT_ENCRYPTED: u32 = 128; +pub const BTRFS_INODE_NODATASUM: u32 = 1; +pub const BTRFS_INODE_NODATACOW: u32 = 2; +pub const BTRFS_INODE_READONLY: u32 = 4; +pub const BTRFS_INODE_NOCOMPRESS: u32 = 8; +pub const BTRFS_INODE_PREALLOC: u32 = 16; +pub const BTRFS_INODE_SYNC: u32 = 32; +pub const BTRFS_INODE_IMMUTABLE: u32 = 64; +pub const BTRFS_INODE_APPEND: u32 = 128; +pub const BTRFS_INODE_NODUMP: u32 = 256; +pub const BTRFS_INODE_NOATIME: u32 = 512; +pub const BTRFS_INODE_DIRSYNC: u32 = 1024; +pub const BTRFS_INODE_COMPRESS: u32 = 2048; +pub const BTRFS_INODE_ROOT_ITEM_INIT: u32 = 2147483648; +pub const BTRFS_INODE_FLAG_MASK: u32 = 2147487743; +pub const BTRFS_INODE_RO_VERITY: u32 = 1; +pub const BTRFS_INODE_RO_FLAG_MASK: u32 = 1; +pub const BTRFS_SYSTEM_CHUNK_ARRAY_SIZE: u32 = 2048; +pub const BTRFS_NUM_BACKUP_ROOTS: u32 = 4; +pub const BTRFS_FREE_SPACE_EXTENT: u32 = 1; +pub const BTRFS_FREE_SPACE_BITMAP: u32 = 2; +pub const BTRFS_HEADER_FLAG_WRITTEN: u32 = 1; +pub const BTRFS_HEADER_FLAG_RELOC: u32 = 2; +pub const BTRFS_SUPER_FLAG_ERROR: u32 = 4; +pub const BTRFS_SUPER_FLAG_SEEDING: u64 = 4294967296; +pub const BTRFS_SUPER_FLAG_METADUMP: u64 = 8589934592; +pub const BTRFS_SUPER_FLAG_METADUMP_V2: u64 = 17179869184; +pub const BTRFS_SUPER_FLAG_CHANGING_FSID: u64 = 34359738368; +pub const BTRFS_SUPER_FLAG_CHANGING_FSID_V2: u64 = 68719476736; +pub const BTRFS_SUPER_FLAG_CHANGING_BG_TREE: u64 = 274877906944; +pub const BTRFS_SUPER_FLAG_CHANGING_DATA_CSUM: u64 = 549755813888; +pub const BTRFS_SUPER_FLAG_CHANGING_META_CSUM: u64 = 1099511627776; +pub const BTRFS_EXTENT_FLAG_DATA: u32 = 1; +pub const BTRFS_EXTENT_FLAG_TREE_BLOCK: u32 = 2; +pub const BTRFS_BLOCK_FLAG_FULL_BACKREF: u32 = 256; +pub const BTRFS_BACKREF_REV_MAX: u32 = 256; +pub const BTRFS_BACKREF_REV_SHIFT: u32 = 56; +pub const BTRFS_OLD_BACKREF_REV: u32 = 0; +pub const BTRFS_MIXED_BACKREF_REV: u32 = 1; +pub const BTRFS_EXTENT_FLAG_SUPER: u64 = 281474976710656; +pub const BTRFS_ROOT_SUBVOL_RDONLY: u32 = 1; +pub const BTRFS_ROOT_SUBVOL_DEAD: u64 = 281474976710656; +pub const BTRFS_DEV_REPLACE_ITEM_CONT_READING_FROM_SRCDEV_MODE_ALWAYS: u32 = 0; +pub const BTRFS_DEV_REPLACE_ITEM_CONT_READING_FROM_SRCDEV_MODE_AVOID: u32 = 1; +pub const BTRFS_BLOCK_GROUP_DATA: u32 = 1; +pub const BTRFS_BLOCK_GROUP_SYSTEM: u32 = 2; +pub const BTRFS_BLOCK_GROUP_METADATA: u32 = 4; +pub const BTRFS_BLOCK_GROUP_RAID0: u32 = 8; +pub const BTRFS_BLOCK_GROUP_RAID1: u32 = 16; +pub const BTRFS_BLOCK_GROUP_DUP: u32 = 32; +pub const BTRFS_BLOCK_GROUP_RAID10: u32 = 64; +pub const BTRFS_BLOCK_GROUP_RAID5: u32 = 128; +pub const BTRFS_BLOCK_GROUP_RAID6: u32 = 256; +pub const BTRFS_BLOCK_GROUP_RAID1C3: u32 = 512; +pub const BTRFS_BLOCK_GROUP_RAID1C4: u32 = 1024; +pub const BTRFS_BLOCK_GROUP_TYPE_MASK: u32 = 7; +pub const BTRFS_BLOCK_GROUP_PROFILE_MASK: u32 = 2040; +pub const BTRFS_BLOCK_GROUP_RAID56_MASK: u32 = 384; +pub const BTRFS_BLOCK_GROUP_RAID1_MASK: u32 = 1552; +pub const BTRFS_AVAIL_ALLOC_BIT_SINGLE: u64 = 281474976710656; +pub const BTRFS_SPACE_INFO_GLOBAL_RSV: u64 = 562949953421312; +pub const BTRFS_EXTENDED_PROFILE_MASK: u64 = 281474976712696; +pub const BTRFS_FREE_SPACE_USING_BITMAPS: u32 = 1; +pub const BTRFS_QGROUP_LEVEL_SHIFT: u32 = 48; +pub const BTRFS_QGROUP_STATUS_FLAG_ON: u32 = 1; +pub const BTRFS_QGROUP_STATUS_FLAG_RESCAN: u32 = 2; +pub const BTRFS_QGROUP_STATUS_FLAG_INCONSISTENT: u32 = 4; +pub const BTRFS_QGROUP_STATUS_FLAG_SIMPLE_MODE: u32 = 8; +pub const BTRFS_QGROUP_STATUS_FLAGS_MASK: u32 = 15; +pub const BTRFS_QGROUP_STATUS_VERSION: u32 = 1; +pub const BTRFS_FILE_EXTENT_INLINE: _bindgen_ty_1 = _bindgen_ty_1::BTRFS_FILE_EXTENT_INLINE; +pub const BTRFS_FILE_EXTENT_REG: _bindgen_ty_1 = _bindgen_ty_1::BTRFS_FILE_EXTENT_REG; +pub const BTRFS_FILE_EXTENT_PREALLOC: _bindgen_ty_1 = _bindgen_ty_1::BTRFS_FILE_EXTENT_PREALLOC; +pub const BTRFS_NR_FILE_EXTENT_TYPES: _bindgen_ty_1 = _bindgen_ty_1::BTRFS_NR_FILE_EXTENT_TYPES; +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum fsconfig_command { +FSCONFIG_SET_FLAG = 0, +FSCONFIG_SET_STRING = 1, +FSCONFIG_SET_BINARY = 2, +FSCONFIG_SET_PATH = 3, +FSCONFIG_SET_PATH_EMPTY = 4, +FSCONFIG_SET_FD = 5, +FSCONFIG_CMD_CREATE = 6, +FSCONFIG_CMD_RECONFIGURE = 7, +FSCONFIG_CMD_CREATE_EXCL = 8, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum procfs_ino { +PROCFS_ROOT_INO = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum procmap_query_flags { +PROCMAP_QUERY_VMA_READABLE = 1, +PROCMAP_QUERY_VMA_WRITABLE = 2, +PROCMAP_QUERY_VMA_EXECUTABLE = 4, +PROCMAP_QUERY_VMA_SHARED = 8, +PROCMAP_QUERY_COVERING_OR_NEXT_VMA = 16, +PROCMAP_QUERY_FILE_BACKED_VMA = 32, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum btrfs_dev_stat_values { +BTRFS_DEV_STAT_WRITE_ERRS = 0, +BTRFS_DEV_STAT_READ_ERRS = 1, +BTRFS_DEV_STAT_FLUSH_ERRS = 2, +BTRFS_DEV_STAT_CORRUPTION_ERRS = 3, +BTRFS_DEV_STAT_GENERATION_ERRS = 4, +BTRFS_DEV_STAT_VALUES_MAX = 5, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum btrfs_err_code { +BTRFS_ERROR_DEV_RAID1_MIN_NOT_MET = 1, +BTRFS_ERROR_DEV_RAID10_MIN_NOT_MET = 2, +BTRFS_ERROR_DEV_RAID5_MIN_NOT_MET = 3, +BTRFS_ERROR_DEV_RAID6_MIN_NOT_MET = 4, +BTRFS_ERROR_DEV_TGT_REPLACE = 5, +BTRFS_ERROR_DEV_MISSING_NOT_FOUND = 6, +BTRFS_ERROR_DEV_ONLY_WRITABLE = 7, +BTRFS_ERROR_DEV_EXCL_RUN_IN_PROGRESS = 8, +BTRFS_ERROR_DEV_RAID1C3_MIN_NOT_MET = 9, +BTRFS_ERROR_DEV_RAID1C4_MIN_NOT_MET = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum btrfs_csum_type { +BTRFS_CSUM_TYPE_CRC32 = 0, +BTRFS_CSUM_TYPE_XXHASH = 1, +BTRFS_CSUM_TYPE_SHA256 = 2, +BTRFS_CSUM_TYPE_BLAKE2 = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_1 { +BTRFS_FILE_EXTENT_INLINE = 0, +BTRFS_FILE_EXTENT_REG = 1, +BTRFS_FILE_EXTENT_PREALLOC = 2, +BTRFS_NR_FILE_EXTENT_TYPES = 3, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union fscrypt_get_policy_ex_arg__bindgen_ty_1 { +pub version: __u8, +pub v1: fscrypt_policy_v1, +pub v2: fscrypt_policy_v2, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union fscrypt_key_specifier__bindgen_ty_1 { +pub __reserved: [__u8; 32usize], +pub descriptor: [__u8; 8usize], +pub identifier: [__u8; 16usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union btrfs_ioctl_vol_args_v2__bindgen_ty_1 { +pub __bindgen_anon_1: btrfs_ioctl_vol_args_v2__bindgen_ty_1__bindgen_ty_1, +pub unused: [__u64; 4usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union btrfs_ioctl_vol_args_v2__bindgen_ty_2 { +pub name: [crate::ctypes::c_char; 4040usize], +pub devid: __u64, +pub subvolid: __u64, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union btrfs_ioctl_dev_replace_args__bindgen_ty_1 { +pub start: btrfs_ioctl_dev_replace_start_params, +pub status: btrfs_ioctl_dev_replace_status_params, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union btrfs_balance_args__bindgen_ty_1 { +pub usage: __u64, +pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union btrfs_balance_args__bindgen_ty_2 { +pub limit: __u64, +pub __bindgen_anon_1: btrfs_balance_args__bindgen_ty_2__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union btrfs_ioctl_defrag_range_args__bindgen_ty_1 { +pub compress_type: __u32, +pub compress: btrfs_ioctl_defrag_range_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union btrfs_disk_balance_args__bindgen_ty_1 { +pub usage: __le64, +pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union btrfs_disk_balance_args__bindgen_ty_2 { +pub limit: __le64, +pub __bindgen_anon_1: btrfs_disk_balance_args__bindgen_ty_2__bindgen_ty_1, +} +impl __IncompleteArrayField { +#[inline] +pub const fn new() -> Self { +__IncompleteArrayField(::core::marker::PhantomData, []) +} +#[inline] +pub fn as_ptr(&self) -> *const T { +self as *const _ as *const T +} +#[inline] +pub fn as_mut_ptr(&mut self) -> *mut T { +self as *mut _ as *mut T +} +#[inline] +pub unsafe fn as_slice(&self, len: usize) -> &[T] { +::core::slice::from_raw_parts(self.as_ptr(), len) +} +#[inline] +pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { +::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len) +} +} +impl ::core::fmt::Debug for __IncompleteArrayField { +fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { +fmt.write_str("__IncompleteArrayField") +} +} diff --git a/src/hexagon/elf_uapi.rs b/src/hexagon/elf_uapi.rs new file mode 100644 index 00000000..9a42c19d --- /dev/null +++ b/src/hexagon/elf_uapi.rs @@ -0,0 +1,652 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +pub type Elf32_Addr = __u32; +pub type Elf32_Half = __u16; +pub type Elf32_Off = __u32; +pub type Elf32_Sword = __s32; +pub type Elf32_Word = __u32; +pub type Elf32_Versym = __u16; +pub type Elf64_Addr = __u64; +pub type Elf64_Half = __u16; +pub type Elf64_SHalf = __s16; +pub type Elf64_Off = __u64; +pub type Elf64_Sword = __s32; +pub type Elf64_Word = __u32; +pub type Elf64_Xword = __u64; +pub type Elf64_Sxword = __s64; +pub type Elf64_Versym = __u16; +pub type Elf32_Rel = elf32_rel; +pub type Elf64_Rel = elf64_rel; +pub type Elf32_Rela = elf32_rela; +pub type Elf64_Rela = elf64_rela; +pub type Elf32_Sym = elf32_sym; +pub type Elf64_Sym = elf64_sym; +pub type Elf32_Ehdr = elf32_hdr; +pub type Elf64_Ehdr = elf64_hdr; +pub type Elf32_Phdr = elf32_phdr; +pub type Elf64_Phdr = elf64_phdr; +pub type Elf32_Shdr = elf32_shdr; +pub type Elf64_Shdr = elf64_shdr; +pub type Elf32_Nhdr = elf32_note; +pub type Elf64_Nhdr = elf64_note; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct Elf32_Dyn { +pub d_tag: Elf32_Sword, +pub d_un: Elf32_Dyn__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct Elf64_Dyn { +pub d_tag: Elf64_Sxword, +pub d_un: Elf64_Dyn__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf32_rel { +pub r_offset: Elf32_Addr, +pub r_info: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf64_rel { +pub r_offset: Elf64_Addr, +pub r_info: Elf64_Xword, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf32_rela { +pub r_offset: Elf32_Addr, +pub r_info: Elf32_Word, +pub r_addend: Elf32_Sword, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf64_rela { +pub r_offset: Elf64_Addr, +pub r_info: Elf64_Xword, +pub r_addend: Elf64_Sxword, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf32_sym { +pub st_name: Elf32_Word, +pub st_value: Elf32_Addr, +pub st_size: Elf32_Word, +pub st_info: crate::ctypes::c_uchar, +pub st_other: crate::ctypes::c_uchar, +pub st_shndx: Elf32_Half, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf64_sym { +pub st_name: Elf64_Word, +pub st_info: crate::ctypes::c_uchar, +pub st_other: crate::ctypes::c_uchar, +pub st_shndx: Elf64_Half, +pub st_value: Elf64_Addr, +pub st_size: Elf64_Xword, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf32_hdr { +pub e_ident: [crate::ctypes::c_uchar; 16usize], +pub e_type: Elf32_Half, +pub e_machine: Elf32_Half, +pub e_version: Elf32_Word, +pub e_entry: Elf32_Addr, +pub e_phoff: Elf32_Off, +pub e_shoff: Elf32_Off, +pub e_flags: Elf32_Word, +pub e_ehsize: Elf32_Half, +pub e_phentsize: Elf32_Half, +pub e_phnum: Elf32_Half, +pub e_shentsize: Elf32_Half, +pub e_shnum: Elf32_Half, +pub e_shstrndx: Elf32_Half, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf64_hdr { +pub e_ident: [crate::ctypes::c_uchar; 16usize], +pub e_type: Elf64_Half, +pub e_machine: Elf64_Half, +pub e_version: Elf64_Word, +pub e_entry: Elf64_Addr, +pub e_phoff: Elf64_Off, +pub e_shoff: Elf64_Off, +pub e_flags: Elf64_Word, +pub e_ehsize: Elf64_Half, +pub e_phentsize: Elf64_Half, +pub e_phnum: Elf64_Half, +pub e_shentsize: Elf64_Half, +pub e_shnum: Elf64_Half, +pub e_shstrndx: Elf64_Half, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf32_phdr { +pub p_type: Elf32_Word, +pub p_offset: Elf32_Off, +pub p_vaddr: Elf32_Addr, +pub p_paddr: Elf32_Addr, +pub p_filesz: Elf32_Word, +pub p_memsz: Elf32_Word, +pub p_flags: Elf32_Word, +pub p_align: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf64_phdr { +pub p_type: Elf64_Word, +pub p_flags: Elf64_Word, +pub p_offset: Elf64_Off, +pub p_vaddr: Elf64_Addr, +pub p_paddr: Elf64_Addr, +pub p_filesz: Elf64_Xword, +pub p_memsz: Elf64_Xword, +pub p_align: Elf64_Xword, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf32_shdr { +pub sh_name: Elf32_Word, +pub sh_type: Elf32_Word, +pub sh_flags: Elf32_Word, +pub sh_addr: Elf32_Addr, +pub sh_offset: Elf32_Off, +pub sh_size: Elf32_Word, +pub sh_link: Elf32_Word, +pub sh_info: Elf32_Word, +pub sh_addralign: Elf32_Word, +pub sh_entsize: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf64_shdr { +pub sh_name: Elf64_Word, +pub sh_type: Elf64_Word, +pub sh_flags: Elf64_Xword, +pub sh_addr: Elf64_Addr, +pub sh_offset: Elf64_Off, +pub sh_size: Elf64_Xword, +pub sh_link: Elf64_Word, +pub sh_info: Elf64_Word, +pub sh_addralign: Elf64_Xword, +pub sh_entsize: Elf64_Xword, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf32_note { +pub n_namesz: Elf32_Word, +pub n_descsz: Elf32_Word, +pub n_type: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct elf64_note { +pub n_namesz: Elf64_Word, +pub n_descsz: Elf64_Word, +pub n_type: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdef { +pub vd_version: Elf32_Half, +pub vd_flags: Elf32_Half, +pub vd_ndx: Elf32_Half, +pub vd_cnt: Elf32_Half, +pub vd_hash: Elf32_Word, +pub vd_aux: Elf32_Word, +pub vd_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdef { +pub vd_version: Elf64_Half, +pub vd_flags: Elf64_Half, +pub vd_ndx: Elf64_Half, +pub vd_cnt: Elf64_Half, +pub vd_hash: Elf64_Word, +pub vd_aux: Elf64_Word, +pub vd_next: Elf64_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf32_Verdaux { +pub vda_name: Elf32_Word, +pub vda_next: Elf32_Word, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct Elf64_Verdaux { +pub vda_name: Elf64_Word, +pub vda_next: Elf64_Word, +} +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const EM_NONE: u32 = 0; +pub const EM_M32: u32 = 1; +pub const EM_SPARC: u32 = 2; +pub const EM_386: u32 = 3; +pub const EM_68K: u32 = 4; +pub const EM_88K: u32 = 5; +pub const EM_486: u32 = 6; +pub const EM_860: u32 = 7; +pub const EM_MIPS: u32 = 8; +pub const EM_MIPS_RS3_LE: u32 = 10; +pub const EM_MIPS_RS4_BE: u32 = 10; +pub const EM_PARISC: u32 = 15; +pub const EM_SPARC32PLUS: u32 = 18; +pub const EM_PPC: u32 = 20; +pub const EM_PPC64: u32 = 21; +pub const EM_SPU: u32 = 23; +pub const EM_ARM: u32 = 40; +pub const EM_SH: u32 = 42; +pub const EM_SPARCV9: u32 = 43; +pub const EM_H8_300: u32 = 46; +pub const EM_IA_64: u32 = 50; +pub const EM_X86_64: u32 = 62; +pub const EM_S390: u32 = 22; +pub const EM_CRIS: u32 = 76; +pub const EM_M32R: u32 = 88; +pub const EM_MN10300: u32 = 89; +pub const EM_OPENRISC: u32 = 92; +pub const EM_ARCOMPACT: u32 = 93; +pub const EM_XTENSA: u32 = 94; +pub const EM_BLACKFIN: u32 = 106; +pub const EM_UNICORE: u32 = 110; +pub const EM_ALTERA_NIOS2: u32 = 113; +pub const EM_TI_C6000: u32 = 140; +pub const EM_HEXAGON: u32 = 164; +pub const EM_NDS32: u32 = 167; +pub const EM_AARCH64: u32 = 183; +pub const EM_TILEPRO: u32 = 188; +pub const EM_MICROBLAZE: u32 = 189; +pub const EM_TILEGX: u32 = 191; +pub const EM_ARCV2: u32 = 195; +pub const EM_RISCV: u32 = 243; +pub const EM_BPF: u32 = 247; +pub const EM_CSKY: u32 = 252; +pub const EM_LOONGARCH: u32 = 258; +pub const EM_FRV: u32 = 21569; +pub const EM_ALPHA: u32 = 36902; +pub const EM_CYGNUS_M32R: u32 = 36929; +pub const EM_S390_OLD: u32 = 41872; +pub const EM_CYGNUS_MN10300: u32 = 48879; +pub const PT_NULL: u32 = 0; +pub const PT_LOAD: u32 = 1; +pub const PT_DYNAMIC: u32 = 2; +pub const PT_INTERP: u32 = 3; +pub const PT_NOTE: u32 = 4; +pub const PT_SHLIB: u32 = 5; +pub const PT_PHDR: u32 = 6; +pub const PT_TLS: u32 = 7; +pub const PT_LOOS: u32 = 1610612736; +pub const PT_HIOS: u32 = 1879048191; +pub const PT_LOPROC: u32 = 1879048192; +pub const PT_HIPROC: u32 = 2147483647; +pub const PT_GNU_EH_FRAME: u32 = 1685382480; +pub const PT_GNU_STACK: u32 = 1685382481; +pub const PT_GNU_RELRO: u32 = 1685382482; +pub const PT_GNU_PROPERTY: u32 = 1685382483; +pub const PT_AARCH64_MEMTAG_MTE: u32 = 1879048194; +pub const PN_XNUM: u32 = 65535; +pub const ET_NONE: u32 = 0; +pub const ET_REL: u32 = 1; +pub const ET_EXEC: u32 = 2; +pub const ET_DYN: u32 = 3; +pub const ET_CORE: u32 = 4; +pub const ET_LOPROC: u32 = 65280; +pub const ET_HIPROC: u32 = 65535; +pub const DT_NULL: u32 = 0; +pub const DT_NEEDED: u32 = 1; +pub const DT_PLTRELSZ: u32 = 2; +pub const DT_PLTGOT: u32 = 3; +pub const DT_HASH: u32 = 4; +pub const DT_STRTAB: u32 = 5; +pub const DT_SYMTAB: u32 = 6; +pub const DT_RELA: u32 = 7; +pub const DT_RELASZ: u32 = 8; +pub const DT_RELAENT: u32 = 9; +pub const DT_STRSZ: u32 = 10; +pub const DT_SYMENT: u32 = 11; +pub const DT_INIT: u32 = 12; +pub const DT_FINI: u32 = 13; +pub const DT_SONAME: u32 = 14; +pub const DT_RPATH: u32 = 15; +pub const DT_SYMBOLIC: u32 = 16; +pub const DT_REL: u32 = 17; +pub const DT_RELSZ: u32 = 18; +pub const DT_RELENT: u32 = 19; +pub const DT_PLTREL: u32 = 20; +pub const DT_DEBUG: u32 = 21; +pub const DT_TEXTREL: u32 = 22; +pub const DT_JMPREL: u32 = 23; +pub const DT_ENCODING: u32 = 32; +pub const OLD_DT_LOOS: u32 = 1610612736; +pub const DT_LOOS: u32 = 1610612749; +pub const DT_HIOS: u32 = 1879044096; +pub const DT_VALRNGLO: u32 = 1879047424; +pub const DT_VALRNGHI: u32 = 1879047679; +pub const DT_ADDRRNGLO: u32 = 1879047680; +pub const DT_GNU_HASH: u32 = 1879047925; +pub const DT_ADDRRNGHI: u32 = 1879047935; +pub const DT_VERSYM: u32 = 1879048176; +pub const DT_RELACOUNT: u32 = 1879048185; +pub const DT_RELCOUNT: u32 = 1879048186; +pub const DT_FLAGS_1: u32 = 1879048187; +pub const DT_VERDEF: u32 = 1879048188; +pub const DT_VERDEFNUM: u32 = 1879048189; +pub const DT_VERNEED: u32 = 1879048190; +pub const DT_VERNEEDNUM: u32 = 1879048191; +pub const OLD_DT_HIOS: u32 = 1879048191; +pub const DT_LOPROC: u32 = 1879048192; +pub const DT_HIPROC: u32 = 2147483647; +pub const STB_LOCAL: u32 = 0; +pub const STB_GLOBAL: u32 = 1; +pub const STB_WEAK: u32 = 2; +pub const STN_UNDEF: u32 = 0; +pub const STT_NOTYPE: u32 = 0; +pub const STT_OBJECT: u32 = 1; +pub const STT_FUNC: u32 = 2; +pub const STT_SECTION: u32 = 3; +pub const STT_FILE: u32 = 4; +pub const STT_COMMON: u32 = 5; +pub const STT_TLS: u32 = 6; +pub const VER_FLG_BASE: u32 = 1; +pub const VER_FLG_WEAK: u32 = 2; +pub const EI_NIDENT: u32 = 16; +pub const PF_R: u32 = 4; +pub const PF_W: u32 = 2; +pub const PF_X: u32 = 1; +pub const SHT_NULL: u32 = 0; +pub const SHT_PROGBITS: u32 = 1; +pub const SHT_SYMTAB: u32 = 2; +pub const SHT_STRTAB: u32 = 3; +pub const SHT_RELA: u32 = 4; +pub const SHT_HASH: u32 = 5; +pub const SHT_DYNAMIC: u32 = 6; +pub const SHT_NOTE: u32 = 7; +pub const SHT_NOBITS: u32 = 8; +pub const SHT_REL: u32 = 9; +pub const SHT_SHLIB: u32 = 10; +pub const SHT_DYNSYM: u32 = 11; +pub const SHT_NUM: u32 = 12; +pub const SHT_LOPROC: u32 = 1879048192; +pub const SHT_HIPROC: u32 = 2147483647; +pub const SHT_LOUSER: u32 = 2147483648; +pub const SHT_HIUSER: u32 = 4294967295; +pub const SHF_WRITE: u32 = 1; +pub const SHF_ALLOC: u32 = 2; +pub const SHF_EXECINSTR: u32 = 4; +pub const SHF_MERGE: u32 = 16; +pub const SHF_STRINGS: u32 = 32; +pub const SHF_INFO_LINK: u32 = 64; +pub const SHF_LINK_ORDER: u32 = 128; +pub const SHF_OS_NONCONFORMING: u32 = 256; +pub const SHF_GROUP: u32 = 512; +pub const SHF_TLS: u32 = 1024; +pub const SHF_RELA_LIVEPATCH: u32 = 1048576; +pub const SHF_RO_AFTER_INIT: u32 = 2097152; +pub const SHF_ORDERED: u32 = 67108864; +pub const SHF_EXCLUDE: u32 = 134217728; +pub const SHF_MASKOS: u32 = 267386880; +pub const SHF_MASKPROC: u32 = 4026531840; +pub const SHN_UNDEF: u32 = 0; +pub const SHN_LORESERVE: u32 = 65280; +pub const SHN_LOPROC: u32 = 65280; +pub const SHN_HIPROC: u32 = 65311; +pub const SHN_LIVEPATCH: u32 = 65312; +pub const SHN_ABS: u32 = 65521; +pub const SHN_COMMON: u32 = 65522; +pub const SHN_HIRESERVE: u32 = 65535; +pub const EI_MAG0: u32 = 0; +pub const EI_MAG1: u32 = 1; +pub const EI_MAG2: u32 = 2; +pub const EI_MAG3: u32 = 3; +pub const EI_CLASS: u32 = 4; +pub const EI_DATA: u32 = 5; +pub const EI_VERSION: u32 = 6; +pub const EI_OSABI: u32 = 7; +pub const EI_PAD: u32 = 8; +pub const ELFMAG0: u32 = 127; +pub const ELFMAG1: u8 = 69u8; +pub const ELFMAG2: u8 = 76u8; +pub const ELFMAG3: u8 = 70u8; +pub const ELFMAG: &[u8; 5] = b"\x7FELF\0"; +pub const SELFMAG: u32 = 4; +pub const ELFCLASSNONE: u32 = 0; +pub const ELFCLASS32: u32 = 1; +pub const ELFCLASS64: u32 = 2; +pub const ELFCLASSNUM: u32 = 3; +pub const ELFDATANONE: u32 = 0; +pub const ELFDATA2LSB: u32 = 1; +pub const ELFDATA2MSB: u32 = 2; +pub const EV_NONE: u32 = 0; +pub const EV_CURRENT: u32 = 1; +pub const EV_NUM: u32 = 2; +pub const ELFOSABI_NONE: u32 = 0; +pub const ELFOSABI_LINUX: u32 = 3; +pub const ELF_OSABI: u32 = 0; +pub const NN_GNU_PROPERTY_TYPE_0: &[u8; 4] = b"GNU\0"; +pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; +pub const NN_PRSTATUS: &[u8; 5] = b"CORE\0"; +pub const NT_PRSTATUS: u32 = 1; +pub const NN_PRFPREG: &[u8; 5] = b"CORE\0"; +pub const NT_PRFPREG: u32 = 2; +pub const NN_PRPSINFO: &[u8; 5] = b"CORE\0"; +pub const NT_PRPSINFO: u32 = 3; +pub const NN_TASKSTRUCT: &[u8; 5] = b"CORE\0"; +pub const NT_TASKSTRUCT: u32 = 4; +pub const NN_AUXV: &[u8; 5] = b"CORE\0"; +pub const NT_AUXV: u32 = 6; +pub const NN_SIGINFO: &[u8; 5] = b"CORE\0"; +pub const NT_SIGINFO: u32 = 1397311305; +pub const NN_FILE: &[u8; 5] = b"CORE\0"; +pub const NT_FILE: u32 = 1179208773; +pub const NN_PRXFPREG: &[u8; 6] = b"LINUX\0"; +pub const NT_PRXFPREG: u32 = 1189489535; +pub const NN_PPC_VMX: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_VMX: u32 = 256; +pub const NN_PPC_SPE: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_SPE: u32 = 257; +pub const NN_PPC_VSX: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_VSX: u32 = 258; +pub const NN_PPC_TAR: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_TAR: u32 = 259; +pub const NN_PPC_PPR: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_PPR: u32 = 260; +pub const NN_PPC_DSCR: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_DSCR: u32 = 261; +pub const NN_PPC_EBB: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_EBB: u32 = 262; +pub const NN_PPC_PMU: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_PMU: u32 = 263; +pub const NN_PPC_TM_CGPR: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_TM_CGPR: u32 = 264; +pub const NN_PPC_TM_CFPR: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_TM_CFPR: u32 = 265; +pub const NN_PPC_TM_CVMX: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_TM_CVMX: u32 = 266; +pub const NN_PPC_TM_CVSX: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_TM_CVSX: u32 = 267; +pub const NN_PPC_TM_SPR: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_TM_SPR: u32 = 268; +pub const NN_PPC_TM_CTAR: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_TM_CTAR: u32 = 269; +pub const NN_PPC_TM_CPPR: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_TM_CPPR: u32 = 270; +pub const NN_PPC_TM_CDSCR: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_TM_CDSCR: u32 = 271; +pub const NN_PPC_PKEY: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_PKEY: u32 = 272; +pub const NN_PPC_DEXCR: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_DEXCR: u32 = 273; +pub const NN_PPC_HASHKEYR: &[u8; 6] = b"LINUX\0"; +pub const NT_PPC_HASHKEYR: u32 = 274; +pub const NN_386_TLS: &[u8; 6] = b"LINUX\0"; +pub const NT_386_TLS: u32 = 512; +pub const NN_386_IOPERM: &[u8; 6] = b"LINUX\0"; +pub const NT_386_IOPERM: u32 = 513; +pub const NN_X86_XSTATE: &[u8; 6] = b"LINUX\0"; +pub const NT_X86_XSTATE: u32 = 514; +pub const NN_X86_SHSTK: &[u8; 6] = b"LINUX\0"; +pub const NT_X86_SHSTK: u32 = 516; +pub const NN_X86_XSAVE_LAYOUT: &[u8; 6] = b"LINUX\0"; +pub const NT_X86_XSAVE_LAYOUT: u32 = 517; +pub const NN_S390_HIGH_GPRS: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_HIGH_GPRS: u32 = 768; +pub const NN_S390_TIMER: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_TIMER: u32 = 769; +pub const NN_S390_TODCMP: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_TODCMP: u32 = 770; +pub const NN_S390_TODPREG: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_TODPREG: u32 = 771; +pub const NN_S390_CTRS: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_CTRS: u32 = 772; +pub const NN_S390_PREFIX: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_PREFIX: u32 = 773; +pub const NN_S390_LAST_BREAK: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_LAST_BREAK: u32 = 774; +pub const NN_S390_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_SYSTEM_CALL: u32 = 775; +pub const NN_S390_TDB: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_TDB: u32 = 776; +pub const NN_S390_VXRS_LOW: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_VXRS_LOW: u32 = 777; +pub const NN_S390_VXRS_HIGH: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_VXRS_HIGH: u32 = 778; +pub const NN_S390_GS_CB: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_GS_CB: u32 = 779; +pub const NN_S390_GS_BC: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_GS_BC: u32 = 780; +pub const NN_S390_RI_CB: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_RI_CB: u32 = 781; +pub const NN_S390_PV_CPU_DATA: &[u8; 6] = b"LINUX\0"; +pub const NT_S390_PV_CPU_DATA: u32 = 782; +pub const NN_ARM_VFP: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_VFP: u32 = 1024; +pub const NN_ARM_TLS: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_TLS: u32 = 1025; +pub const NN_ARM_HW_BREAK: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_HW_BREAK: u32 = 1026; +pub const NN_ARM_HW_WATCH: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_HW_WATCH: u32 = 1027; +pub const NN_ARM_SYSTEM_CALL: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_SYSTEM_CALL: u32 = 1028; +pub const NN_ARM_SVE: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_SVE: u32 = 1029; +pub const NN_ARM_PAC_MASK: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_PAC_MASK: u32 = 1030; +pub const NN_ARM_PACA_KEYS: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_PACA_KEYS: u32 = 1031; +pub const NN_ARM_PACG_KEYS: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_PACG_KEYS: u32 = 1032; +pub const NN_ARM_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; +pub const NN_ARM_PAC_ENABLED_KEYS: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; +pub const NN_ARM_SSVE: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_SSVE: u32 = 1035; +pub const NN_ARM_ZA: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_ZA: u32 = 1036; +pub const NN_ARM_ZT: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_ZT: u32 = 1037; +pub const NN_ARM_FPMR: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_FPMR: u32 = 1038; +pub const NN_ARM_POE: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_POE: u32 = 1039; +pub const NN_ARM_GCS: &[u8; 6] = b"LINUX\0"; +pub const NT_ARM_GCS: u32 = 1040; +pub const NN_ARC_V2: &[u8; 6] = b"LINUX\0"; +pub const NT_ARC_V2: u32 = 1536; +pub const NN_VMCOREDD: &[u8; 6] = b"LINUX\0"; +pub const NT_VMCOREDD: u32 = 1792; +pub const NN_MIPS_DSP: &[u8; 6] = b"LINUX\0"; +pub const NT_MIPS_DSP: u32 = 2048; +pub const NN_MIPS_FP_MODE: &[u8; 6] = b"LINUX\0"; +pub const NT_MIPS_FP_MODE: u32 = 2049; +pub const NN_MIPS_MSA: &[u8; 6] = b"LINUX\0"; +pub const NT_MIPS_MSA: u32 = 2050; +pub const NN_RISCV_CSR: &[u8; 6] = b"LINUX\0"; +pub const NT_RISCV_CSR: u32 = 2304; +pub const NN_RISCV_VECTOR: &[u8; 6] = b"LINUX\0"; +pub const NT_RISCV_VECTOR: u32 = 2305; +pub const NN_RISCV_TAGGED_ADDR_CTRL: &[u8; 6] = b"LINUX\0"; +pub const NT_RISCV_TAGGED_ADDR_CTRL: u32 = 2306; +pub const NN_LOONGARCH_CPUCFG: &[u8; 6] = b"LINUX\0"; +pub const NT_LOONGARCH_CPUCFG: u32 = 2560; +pub const NN_LOONGARCH_CSR: &[u8; 6] = b"LINUX\0"; +pub const NT_LOONGARCH_CSR: u32 = 2561; +pub const NN_LOONGARCH_LSX: &[u8; 6] = b"LINUX\0"; +pub const NT_LOONGARCH_LSX: u32 = 2562; +pub const NN_LOONGARCH_LASX: &[u8; 6] = b"LINUX\0"; +pub const NT_LOONGARCH_LASX: u32 = 2563; +pub const NN_LOONGARCH_LBT: &[u8; 6] = b"LINUX\0"; +pub const NT_LOONGARCH_LBT: u32 = 2564; +pub const NN_LOONGARCH_HW_BREAK: &[u8; 6] = b"LINUX\0"; +pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; +pub const NN_LOONGARCH_HW_WATCH: &[u8; 6] = b"LINUX\0"; +pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; +pub const GNU_PROPERTY_AARCH64_FEATURE_1_AND: u32 = 3221225472; +pub const GNU_PROPERTY_AARCH64_FEATURE_1_BTI: u32 = 1; +#[repr(C)] +#[derive(Copy, Clone)] +pub union Elf32_Dyn__bindgen_ty_1 { +pub d_val: Elf32_Sword, +pub d_ptr: Elf32_Addr, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union Elf64_Dyn__bindgen_ty_1 { +pub d_val: Elf64_Xword, +pub d_ptr: Elf64_Addr, +} diff --git a/src/hexagon/errno.rs b/src/hexagon/errno.rs new file mode 100644 index 00000000..48eaf61f --- /dev/null +++ b/src/hexagon/errno.rs @@ -0,0 +1,135 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub const EPERM: u32 = 1; +pub const ENOENT: u32 = 2; +pub const ESRCH: u32 = 3; +pub const EINTR: u32 = 4; +pub const EIO: u32 = 5; +pub const ENXIO: u32 = 6; +pub const E2BIG: u32 = 7; +pub const ENOEXEC: u32 = 8; +pub const EBADF: u32 = 9; +pub const ECHILD: u32 = 10; +pub const EAGAIN: u32 = 11; +pub const ENOMEM: u32 = 12; +pub const EACCES: u32 = 13; +pub const EFAULT: u32 = 14; +pub const ENOTBLK: u32 = 15; +pub const EBUSY: u32 = 16; +pub const EEXIST: u32 = 17; +pub const EXDEV: u32 = 18; +pub const ENODEV: u32 = 19; +pub const ENOTDIR: u32 = 20; +pub const EISDIR: u32 = 21; +pub const EINVAL: u32 = 22; +pub const ENFILE: u32 = 23; +pub const EMFILE: u32 = 24; +pub const ENOTTY: u32 = 25; +pub const ETXTBSY: u32 = 26; +pub const EFBIG: u32 = 27; +pub const ENOSPC: u32 = 28; +pub const ESPIPE: u32 = 29; +pub const EROFS: u32 = 30; +pub const EMLINK: u32 = 31; +pub const EPIPE: u32 = 32; +pub const EDOM: u32 = 33; +pub const ERANGE: u32 = 34; +pub const EDEADLK: u32 = 35; +pub const ENAMETOOLONG: u32 = 36; +pub const ENOLCK: u32 = 37; +pub const ENOSYS: u32 = 38; +pub const ENOTEMPTY: u32 = 39; +pub const ELOOP: u32 = 40; +pub const EWOULDBLOCK: u32 = 11; +pub const ENOMSG: u32 = 42; +pub const EIDRM: u32 = 43; +pub const ECHRNG: u32 = 44; +pub const EL2NSYNC: u32 = 45; +pub const EL3HLT: u32 = 46; +pub const EL3RST: u32 = 47; +pub const ELNRNG: u32 = 48; +pub const EUNATCH: u32 = 49; +pub const ENOCSI: u32 = 50; +pub const EL2HLT: u32 = 51; +pub const EBADE: u32 = 52; +pub const EBADR: u32 = 53; +pub const EXFULL: u32 = 54; +pub const ENOANO: u32 = 55; +pub const EBADRQC: u32 = 56; +pub const EBADSLT: u32 = 57; +pub const EDEADLOCK: u32 = 35; +pub const EBFONT: u32 = 59; +pub const ENOSTR: u32 = 60; +pub const ENODATA: u32 = 61; +pub const ETIME: u32 = 62; +pub const ENOSR: u32 = 63; +pub const ENONET: u32 = 64; +pub const ENOPKG: u32 = 65; +pub const EREMOTE: u32 = 66; +pub const ENOLINK: u32 = 67; +pub const EADV: u32 = 68; +pub const ESRMNT: u32 = 69; +pub const ECOMM: u32 = 70; +pub const EPROTO: u32 = 71; +pub const EMULTIHOP: u32 = 72; +pub const EDOTDOT: u32 = 73; +pub const EBADMSG: u32 = 74; +pub const EOVERFLOW: u32 = 75; +pub const ENOTUNIQ: u32 = 76; +pub const EBADFD: u32 = 77; +pub const EREMCHG: u32 = 78; +pub const ELIBACC: u32 = 79; +pub const ELIBBAD: u32 = 80; +pub const ELIBSCN: u32 = 81; +pub const ELIBMAX: u32 = 82; +pub const ELIBEXEC: u32 = 83; +pub const EILSEQ: u32 = 84; +pub const ERESTART: u32 = 85; +pub const ESTRPIPE: u32 = 86; +pub const EUSERS: u32 = 87; +pub const ENOTSOCK: u32 = 88; +pub const EDESTADDRREQ: u32 = 89; +pub const EMSGSIZE: u32 = 90; +pub const EPROTOTYPE: u32 = 91; +pub const ENOPROTOOPT: u32 = 92; +pub const EPROTONOSUPPORT: u32 = 93; +pub const ESOCKTNOSUPPORT: u32 = 94; +pub const EOPNOTSUPP: u32 = 95; +pub const EPFNOSUPPORT: u32 = 96; +pub const EAFNOSUPPORT: u32 = 97; +pub const EADDRINUSE: u32 = 98; +pub const EADDRNOTAVAIL: u32 = 99; +pub const ENETDOWN: u32 = 100; +pub const ENETUNREACH: u32 = 101; +pub const ENETRESET: u32 = 102; +pub const ECONNABORTED: u32 = 103; +pub const ECONNRESET: u32 = 104; +pub const ENOBUFS: u32 = 105; +pub const EISCONN: u32 = 106; +pub const ENOTCONN: u32 = 107; +pub const ESHUTDOWN: u32 = 108; +pub const ETOOMANYREFS: u32 = 109; +pub const ETIMEDOUT: u32 = 110; +pub const ECONNREFUSED: u32 = 111; +pub const EHOSTDOWN: u32 = 112; +pub const EHOSTUNREACH: u32 = 113; +pub const EALREADY: u32 = 114; +pub const EINPROGRESS: u32 = 115; +pub const ESTALE: u32 = 116; +pub const EUCLEAN: u32 = 117; +pub const ENOTNAM: u32 = 118; +pub const ENAVAIL: u32 = 119; +pub const EISNAM: u32 = 120; +pub const EREMOTEIO: u32 = 121; +pub const EDQUOT: u32 = 122; +pub const ENOMEDIUM: u32 = 123; +pub const EMEDIUMTYPE: u32 = 124; +pub const ECANCELED: u32 = 125; +pub const ENOKEY: u32 = 126; +pub const EKEYEXPIRED: u32 = 127; +pub const EKEYREVOKED: u32 = 128; +pub const EKEYREJECTED: u32 = 129; +pub const EOWNERDEAD: u32 = 130; +pub const ENOTRECOVERABLE: u32 = 131; +pub const ERFKILL: u32 = 132; +pub const EHWPOISON: u32 = 133; diff --git a/src/hexagon/general.rs b/src/hexagon/general.rs new file mode 100644 index 00000000..b08f8125 --- /dev/null +++ b/src/hexagon/general.rs @@ -0,0 +1,3284 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_sighandler_t = ::core::option::Option; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +pub type cap_user_header_t = *mut __user_cap_header_struct; +pub type cap_user_data_t = *mut __user_cap_data_struct; +pub type __kernel_rwf_t = crate::ctypes::c_int; +pub type old_sigset_t = crate::ctypes::c_ulong; +pub type __signalfn_t = ::core::option::Option; +pub type __sighandler_t = __signalfn_t; +pub type __restorefn_t = ::core::option::Option; +pub type __sigrestore_t = __restorefn_t; +pub type stack_t = sigaltstack; +pub type sigval_t = sigval; +pub type siginfo_t = siginfo; +pub type sigevent_t = sigevent; +pub type cc_t = crate::ctypes::c_uchar; +pub type speed_t = crate::ctypes::c_uint; +pub type tcflag_t = crate::ctypes::c_uint; +pub type __fsword_t = __u32; +#[repr(C)] +#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)] +pub struct __BindgenBitfieldUnit { +storage: Storage, +} +#[doc = r" If Bindgen could only determine the size and alignment of a"] +#[doc = r" type, it is represented like this."] +#[derive(PartialEq, Copy, Clone, Debug, Hash)] +#[repr(C)] +pub struct __BindgenOpaqueArray(pub [T; N]); +#[repr(C)] +#[derive(Default)] +pub struct __IncompleteArrayField(::core::marker::PhantomData, [T; 0]); +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_fd_set { +pub fds_bits: [crate::ctypes::c_ulong; 32usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_fsid_t { +pub val: [crate::ctypes::c_int; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __user_cap_header_struct { +pub version: __u32, +pub pid: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __user_cap_data_struct { +pub effective: __u32, +pub permitted: __u32, +pub inheritable: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct vfs_cap_data { +pub magic_etc: __le32, +pub data: [vfs_cap_data__bindgen_ty_1; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct vfs_cap_data__bindgen_ty_1 { +pub permitted: __le32, +pub inheritable: __le32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct vfs_ns_cap_data { +pub magic_etc: __le32, +pub data: [vfs_ns_cap_data__bindgen_ty_1; 2usize], +pub rootid: __le32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct vfs_ns_cap_data__bindgen_ty_1 { +pub permitted: __le32, +pub inheritable: __le32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct f_owner_ex { +pub type_: crate::ctypes::c_int, +pub pid: __kernel_pid_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct flock { +pub l_type: crate::ctypes::c_short, +pub l_whence: crate::ctypes::c_short, +pub l_start: __kernel_off_t, +pub l_len: __kernel_off_t, +pub l_pid: __kernel_pid_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct flock64 { +pub l_type: crate::ctypes::c_short, +pub l_whence: crate::ctypes::c_short, +pub l_start: __kernel_loff_t, +pub l_len: __kernel_loff_t, +pub l_pid: __kernel_pid_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct open_how { +pub flags: __u64, +pub mode: __u64, +pub resolve: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct epoll_event { +pub events: __poll_t, +pub data: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct epoll_params { +pub busy_poll_usecs: __u32, +pub busy_poll_budget: __u16, +pub prefer_busy_poll: __u8, +pub __pad: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fscrypt_policy_v1 { +pub version: __u8, +pub contents_encryption_mode: __u8, +pub filenames_encryption_mode: __u8, +pub flags: __u8, +pub master_key_descriptor: [__u8; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fscrypt_key { +pub mode: __u32, +pub raw: [__u8; 64usize], +pub size: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fscrypt_policy_v2 { +pub version: __u8, +pub contents_encryption_mode: __u8, +pub filenames_encryption_mode: __u8, +pub flags: __u8, +pub log2_data_unit_size: __u8, +pub __reserved: [__u8; 3usize], +pub master_key_identifier: [__u8; 16usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct fscrypt_get_policy_ex_arg { +pub policy_size: __u64, +pub policy: fscrypt_get_policy_ex_arg__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct fscrypt_key_specifier { +pub type_: __u32, +pub __reserved: __u32, +pub u: fscrypt_key_specifier__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug)] +pub struct fscrypt_provisioning_key_payload { +pub type_: __u32, +pub flags: __u32, +pub raw: __IncompleteArrayField<__u8>, +} +#[repr(C)] +pub struct fscrypt_add_key_arg { +pub key_spec: fscrypt_key_specifier, +pub raw_size: __u32, +pub key_id: __u32, +pub flags: __u32, +pub __reserved: [__u32; 7usize], +pub raw: __IncompleteArrayField<__u8>, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct fscrypt_remove_key_arg { +pub key_spec: fscrypt_key_specifier, +pub removal_status_flags: __u32, +pub __reserved: [__u32; 5usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct fscrypt_get_key_status_arg { +pub key_spec: fscrypt_key_specifier, +pub __reserved: [__u32; 6usize], +pub status: __u32, +pub status_flags: __u32, +pub user_count: __u32, +pub __out_reserved: [__u32; 13usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct mount_attr { +pub attr_set: __u64, +pub attr_clr: __u64, +pub propagation: __u64, +pub userns_fd: __u64, +} +#[repr(C)] +#[derive(Debug)] +pub struct statmount { +pub size: __u32, +pub mnt_opts: __u32, +pub mask: __u64, +pub sb_dev_major: __u32, +pub sb_dev_minor: __u32, +pub sb_magic: __u64, +pub sb_flags: __u32, +pub fs_type: __u32, +pub mnt_id: __u64, +pub mnt_parent_id: __u64, +pub mnt_id_old: __u32, +pub mnt_parent_id_old: __u32, +pub mnt_attr: __u64, +pub mnt_propagation: __u64, +pub mnt_peer_group: __u64, +pub mnt_master: __u64, +pub propagate_from: __u64, +pub mnt_root: __u32, +pub mnt_point: __u32, +pub mnt_ns_id: __u64, +pub fs_subtype: __u32, +pub sb_source: __u32, +pub opt_num: __u32, +pub opt_array: __u32, +pub opt_sec_num: __u32, +pub opt_sec_array: __u32, +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], +pub str_: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct mnt_id_req { +pub size: __u32, +pub spare: __u32, +pub mnt_id: __u64, +pub param: __u64, +pub mnt_ns_id: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct file_clone_range { +pub src_fd: __s64, +pub src_offset: __u64, +pub src_length: __u64, +pub dest_offset: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fstrim_range { +pub start: __u64, +pub len: __u64, +pub minlen: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fsuuid2 { +pub len: __u8, +pub uuid: [__u8; 16usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fs_sysfs_path { +pub len: __u8, +pub name: [__u8; 128usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct logical_block_metadata_cap { +pub lbmd_flags: __u32, +pub lbmd_interval: __u16, +pub lbmd_size: __u8, +pub lbmd_opaque_size: __u8, +pub lbmd_opaque_offset: __u8, +pub lbmd_pi_size: __u8, +pub lbmd_pi_offset: __u8, +pub lbmd_guard_tag_type: __u8, +pub lbmd_app_tag_size: __u8, +pub lbmd_ref_tag_size: __u8, +pub lbmd_storage_tag_size: __u8, +pub pad: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct file_dedupe_range_info { +pub dest_fd: __s64, +pub dest_offset: __u64, +pub bytes_deduped: __u64, +pub status: __s32, +pub reserved: __u32, +} +#[repr(C)] +#[derive(Debug)] +pub struct file_dedupe_range { +pub src_offset: __u64, +pub src_length: __u64, +pub dest_count: __u16, +pub reserved1: __u16, +pub reserved2: __u32, +pub info: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct files_stat_struct { +pub nr_files: crate::ctypes::c_ulong, +pub nr_free_files: crate::ctypes::c_ulong, +pub max_files: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct inodes_stat_t { +pub nr_inodes: crate::ctypes::c_long, +pub nr_unused: crate::ctypes::c_long, +pub dummy: [crate::ctypes::c_long; 5usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fsxattr { +pub fsx_xflags: __u32, +pub fsx_extsize: __u32, +pub fsx_nextents: __u32, +pub fsx_projid: __u32, +pub fsx_cowextsize: __u32, +pub fsx_pad: [crate::ctypes::c_uchar; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct file_attr { +pub fa_xflags: __u64, +pub fa_extsize: __u32, +pub fa_nextents: __u32, +pub fa_projid: __u32, +pub fa_cowextsize: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct page_region { +pub start: __u64, +pub end: __u64, +pub categories: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pm_scan_arg { +pub size: __u64, +pub flags: __u64, +pub start: __u64, +pub end: __u64, +pub walk_end: __u64, +pub vec: __u64, +pub vec_len: __u64, +pub max_pages: __u64, +pub category_inverted: __u64, +pub category_mask: __u64, +pub category_anyof_mask: __u64, +pub return_mask: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct procmap_query { +pub size: __u64, +pub query_flags: __u64, +pub query_addr: __u64, +pub vma_start: __u64, +pub vma_end: __u64, +pub vma_flags: __u64, +pub vma_page_size: __u64, +pub vma_offset: __u64, +pub inode: __u64, +pub dev_major: __u32, +pub dev_minor: __u32, +pub vma_name_size: __u32, +pub build_id_size: __u32, +pub vma_name_addr: __u64, +pub build_id_addr: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct futex_waitv { +pub val: __u64, +pub uaddr: __u64, +pub flags: __u32, +pub __reserved: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct robust_list { +pub next: *mut robust_list, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct robust_list_head { +pub list: robust_list, +pub futex_offset: crate::ctypes::c_long, +pub list_op_pending: *mut robust_list, +} +#[repr(C)] +#[derive(Debug)] +pub struct inotify_event { +pub wd: __s32, +pub mask: __u32, +pub cookie: __u32, +pub len: __u32, +pub name: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct cachestat_range { +pub off: __u64, +pub len: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct cachestat { +pub nr_cache: __u64, +pub nr_dirty: __u64, +pub nr_writeback: __u64, +pub nr_evicted: __u64, +pub nr_recently_evicted: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pollfd { +pub fd: crate::ctypes::c_int, +pub events: crate::ctypes::c_short, +pub revents: crate::ctypes::c_short, +} +#[repr(C)] +#[derive(Debug)] +pub struct rand_pool_info { +pub entropy_count: crate::ctypes::c_int, +pub buf_size: crate::ctypes::c_int, +pub buf: __IncompleteArrayField<__u32>, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct vgetrandom_opaque_params { +pub size_of_opaque_state: __u32, +pub mmap_prot: __u32, +pub mmap_flags: __u32, +pub reserved: [__u32; 13usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_timespec { +pub tv_sec: __kernel_time64_t, +pub tv_nsec: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_itimerspec { +pub it_interval: __kernel_timespec, +pub it_value: __kernel_timespec, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_old_timeval { +pub tv_sec: __kernel_long_t, +pub tv_usec: __kernel_long_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_old_timespec { +pub tv_sec: __kernel_old_time_t, +pub tv_nsec: crate::ctypes::c_long, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_old_itimerval { +pub it_interval: __kernel_old_timeval, +pub it_value: __kernel_old_timeval, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_sock_timeval { +pub tv_sec: __s64, +pub tv_usec: __s64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rusage { +pub ru_utime: __kernel_old_timeval, +pub ru_stime: __kernel_old_timeval, +pub ru_maxrss: __kernel_long_t, +pub ru_ixrss: __kernel_long_t, +pub ru_idrss: __kernel_long_t, +pub ru_isrss: __kernel_long_t, +pub ru_minflt: __kernel_long_t, +pub ru_majflt: __kernel_long_t, +pub ru_nswap: __kernel_long_t, +pub ru_inblock: __kernel_long_t, +pub ru_oublock: __kernel_long_t, +pub ru_msgsnd: __kernel_long_t, +pub ru_msgrcv: __kernel_long_t, +pub ru_nsignals: __kernel_long_t, +pub ru_nvcsw: __kernel_long_t, +pub ru_nivcsw: __kernel_long_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rlimit { +pub rlim_cur: __kernel_ulong_t, +pub rlim_max: __kernel_ulong_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rlimit64 { +pub rlim_cur: __u64, +pub rlim_max: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct clone_args { +pub flags: __u64, +pub pidfd: __u64, +pub child_tid: __u64, +pub parent_tid: __u64, +pub exit_signal: __u64, +pub stack: __u64, +pub stack_size: __u64, +pub tls: __u64, +pub set_tid: __u64, +pub set_tid_size: __u64, +pub cgroup: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sigset_t { +pub sig: [crate::ctypes::c_ulong; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sigaction { +pub sa_handler: __sighandler_t, +pub sa_flags: crate::ctypes::c_ulong, +pub sa_mask: sigset_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sigaltstack { +pub ss_sp: *mut crate::ctypes::c_void, +pub ss_flags: crate::ctypes::c_int, +pub ss_size: __kernel_size_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __sifields__bindgen_ty_1 { +pub _pid: __kernel_pid_t, +pub _uid: __kernel_uid32_t, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct __sifields__bindgen_ty_2 { +pub _tid: __kernel_timer_t, +pub _overrun: crate::ctypes::c_int, +pub _sigval: sigval_t, +pub _sys_private: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct __sifields__bindgen_ty_3 { +pub _pid: __kernel_pid_t, +pub _uid: __kernel_uid32_t, +pub _sigval: sigval_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __sifields__bindgen_ty_4 { +pub _pid: __kernel_pid_t, +pub _uid: __kernel_uid32_t, +pub _status: crate::ctypes::c_int, +pub _utime: __kernel_clock_t, +pub _stime: __kernel_clock_t, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct __sifields__bindgen_ty_5 { +pub _addr: *mut crate::ctypes::c_void, +pub __bindgen_anon_1: __sifields__bindgen_ty_5__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1 { +pub _dummy_bnd: [crate::ctypes::c_char; 4usize], +pub _lower: *mut crate::ctypes::c_void, +pub _upper: *mut crate::ctypes::c_void, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2 { +pub _dummy_pkey: [crate::ctypes::c_char; 4usize], +pub _pkey: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3 { +pub _data: crate::ctypes::c_ulong, +pub _type: __u32, +pub _flags: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __sifields__bindgen_ty_6 { +pub _band: crate::ctypes::c_long, +pub _fd: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __sifields__bindgen_ty_7 { +pub _call_addr: *mut crate::ctypes::c_void, +pub _syscall: crate::ctypes::c_int, +pub _arch: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct siginfo { +pub __bindgen_anon_1: siginfo__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct siginfo__bindgen_ty_1__bindgen_ty_1 { +pub si_signo: crate::ctypes::c_int, +pub si_errno: crate::ctypes::c_int, +pub si_code: crate::ctypes::c_int, +pub _sifields: __sifields, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct sigevent { +pub sigev_value: sigval_t, +pub sigev_signo: crate::ctypes::c_int, +pub sigev_notify: crate::ctypes::c_int, +pub _sigev_un: sigevent__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sigevent__bindgen_ty_1__bindgen_ty_1 { +pub _function: ::core::option::Option, +pub _attribute: *mut crate::ctypes::c_void, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct statx_timestamp { +pub tv_sec: __s64, +pub tv_nsec: __u32, +pub __reserved: __s32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct statx { +pub stx_mask: __u32, +pub stx_blksize: __u32, +pub stx_attributes: __u64, +pub stx_nlink: __u32, +pub stx_uid: __u32, +pub stx_gid: __u32, +pub stx_mode: __u16, +pub __spare0: [__u16; 1usize], +pub stx_ino: __u64, +pub stx_size: __u64, +pub stx_blocks: __u64, +pub stx_attributes_mask: __u64, +pub stx_atime: statx_timestamp, +pub stx_btime: statx_timestamp, +pub stx_ctime: statx_timestamp, +pub stx_mtime: statx_timestamp, +pub stx_rdev_major: __u32, +pub stx_rdev_minor: __u32, +pub stx_dev_major: __u32, +pub stx_dev_minor: __u32, +pub stx_mnt_id: __u64, +pub stx_dio_mem_align: __u32, +pub stx_dio_offset_align: __u32, +pub stx_subvol: __u64, +pub stx_atomic_write_unit_min: __u32, +pub stx_atomic_write_unit_max: __u32, +pub stx_atomic_write_segments_max: __u32, +pub stx_dio_read_offset_align: __u32, +pub stx_atomic_write_unit_max_opt: __u32, +pub __spare2: [__u32; 1usize], +pub __spare3: [__u64; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct termios { +pub c_iflag: tcflag_t, +pub c_oflag: tcflag_t, +pub c_cflag: tcflag_t, +pub c_lflag: tcflag_t, +pub c_line: cc_t, +pub c_cc: [cc_t; 19usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct termios2 { +pub c_iflag: tcflag_t, +pub c_oflag: tcflag_t, +pub c_cflag: tcflag_t, +pub c_lflag: tcflag_t, +pub c_line: cc_t, +pub c_cc: [cc_t; 19usize], +pub c_ispeed: speed_t, +pub c_ospeed: speed_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ktermios { +pub c_iflag: tcflag_t, +pub c_oflag: tcflag_t, +pub c_cflag: tcflag_t, +pub c_lflag: tcflag_t, +pub c_line: cc_t, +pub c_cc: [cc_t; 19usize], +pub c_ispeed: speed_t, +pub c_ospeed: speed_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct winsize { +pub ws_row: crate::ctypes::c_ushort, +pub ws_col: crate::ctypes::c_ushort, +pub ws_xpixel: crate::ctypes::c_ushort, +pub ws_ypixel: crate::ctypes::c_ushort, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct termio { +pub c_iflag: crate::ctypes::c_ushort, +pub c_oflag: crate::ctypes::c_ushort, +pub c_cflag: crate::ctypes::c_ushort, +pub c_lflag: crate::ctypes::c_ushort, +pub c_line: crate::ctypes::c_uchar, +pub c_cc: [crate::ctypes::c_uchar; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct timespec { +pub tv_sec: __kernel_old_time_t, +pub tv_nsec: crate::ctypes::c_long, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct timeval { +pub tv_sec: __kernel_old_time_t, +pub tv_usec: __kernel_suseconds_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct itimerspec { +pub it_interval: timespec, +pub it_value: timespec, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct itimerval { +pub it_interval: timeval, +pub it_value: timeval, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct timezone { +pub tz_minuteswest: crate::ctypes::c_int, +pub tz_dsttime: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct iovec { +pub iov_base: *mut crate::ctypes::c_void, +pub iov_len: __kernel_size_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dmabuf_cmsg { +pub frag_offset: __u64, +pub frag_size: __u32, +pub frag_token: __u32, +pub dmabuf_id: __u32, +pub flags: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct dmabuf_token { +pub token_start: __u32, +pub token_count: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xattr_args { +pub value: __u64, +pub size: __u32, +pub flags: __u32, +} +#[repr(C, packed)] +#[derive(Copy, Clone)] +pub struct uffd_msg { +pub event: __u8, +pub reserved1: __u8, +pub reserved2: __u16, +pub reserved3: __u32, +pub arg: uffd_msg__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct uffd_msg__bindgen_ty_1__bindgen_ty_1 { +pub flags: __u64, +pub address: __u64, +pub feat: uffd_msg__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffd_msg__bindgen_ty_1__bindgen_ty_2 { +pub ufd: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffd_msg__bindgen_ty_1__bindgen_ty_3 { +pub from: __u64, +pub to: __u64, +pub len: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffd_msg__bindgen_ty_1__bindgen_ty_4 { +pub start: __u64, +pub end: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffd_msg__bindgen_ty_1__bindgen_ty_5 { +pub reserved1: __u64, +pub reserved2: __u64, +pub reserved3: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffdio_api { +pub api: __u64, +pub features: __u64, +pub ioctls: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffdio_range { +pub start: __u64, +pub len: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffdio_register { +pub range: uffdio_range, +pub mode: __u64, +pub ioctls: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffdio_copy { +pub dst: __u64, +pub src: __u64, +pub len: __u64, +pub mode: __u64, +pub copy: __s64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffdio_zeropage { +pub range: uffdio_range, +pub mode: __u64, +pub zeropage: __s64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffdio_writeprotect { +pub range: uffdio_range, +pub mode: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffdio_continue { +pub range: uffdio_range, +pub mode: __u64, +pub mapped: __s64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffdio_poison { +pub range: uffdio_range, +pub mode: __u64, +pub updated: __s64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct uffdio_move { +pub dst: __u64, +pub src: __u64, +pub len: __u64, +pub mode: __u64, +pub move_: __s64, +} +#[repr(C)] +#[derive(Debug)] +pub struct linux_dirent64 { +pub d_ino: crate::ctypes::c_ulonglong, +pub d_off: crate::ctypes::c_longlong, +pub d_reclen: __u16, +pub d_type: __u8, +pub d_name: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct stat { +pub st_dev: crate::ctypes::c_ulong, +pub st_ino: crate::ctypes::c_ulong, +pub st_mode: crate::ctypes::c_uint, +pub st_nlink: crate::ctypes::c_uint, +pub st_uid: crate::ctypes::c_uint, +pub st_gid: crate::ctypes::c_uint, +pub st_rdev: crate::ctypes::c_ulong, +pub __pad1: crate::ctypes::c_ulong, +pub st_size: crate::ctypes::c_long, +pub st_blksize: crate::ctypes::c_int, +pub __pad2: crate::ctypes::c_int, +pub st_blocks: crate::ctypes::c_long, +pub st_atime: crate::ctypes::c_long, +pub st_atime_nsec: crate::ctypes::c_ulong, +pub st_mtime: crate::ctypes::c_long, +pub st_mtime_nsec: crate::ctypes::c_ulong, +pub st_ctime: crate::ctypes::c_long, +pub st_ctime_nsec: crate::ctypes::c_ulong, +pub __unused4: crate::ctypes::c_uint, +pub __unused5: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct stat64 { +pub st_dev: crate::ctypes::c_ulonglong, +pub st_ino: crate::ctypes::c_ulonglong, +pub st_mode: crate::ctypes::c_uint, +pub st_nlink: crate::ctypes::c_uint, +pub st_uid: crate::ctypes::c_uint, +pub st_gid: crate::ctypes::c_uint, +pub st_rdev: crate::ctypes::c_ulonglong, +pub __pad1: crate::ctypes::c_ulonglong, +pub st_size: crate::ctypes::c_longlong, +pub st_blksize: crate::ctypes::c_int, +pub __pad2: crate::ctypes::c_int, +pub st_blocks: crate::ctypes::c_longlong, +pub st_atime: crate::ctypes::c_int, +pub st_atime_nsec: crate::ctypes::c_uint, +pub st_mtime: crate::ctypes::c_int, +pub st_mtime_nsec: crate::ctypes::c_uint, +pub st_ctime: crate::ctypes::c_int, +pub st_ctime_nsec: crate::ctypes::c_uint, +pub __unused4: crate::ctypes::c_uint, +pub __unused5: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct statfs { +pub f_type: __u32, +pub f_bsize: __u32, +pub f_blocks: __u32, +pub f_bfree: __u32, +pub f_bavail: __u32, +pub f_files: __u32, +pub f_ffree: __u32, +pub f_fsid: __kernel_fsid_t, +pub f_namelen: __u32, +pub f_frsize: __u32, +pub f_flags: __u32, +pub f_spare: [__u32; 4usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct statfs64 { +pub f_type: __u32, +pub f_bsize: __u32, +pub f_blocks: __u64, +pub f_bfree: __u64, +pub f_bavail: __u64, +pub f_files: __u64, +pub f_ffree: __u64, +pub f_fsid: __kernel_fsid_t, +pub f_namelen: __u32, +pub f_frsize: __u32, +pub f_flags: __u32, +pub f_spare: [__u32; 4usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct compat_statfs64 { +pub f_type: __u32, +pub f_bsize: __u32, +pub f_blocks: __u64, +pub f_bfree: __u64, +pub f_bavail: __u64, +pub f_files: __u64, +pub f_ffree: __u64, +pub f_fsid: __kernel_fsid_t, +pub f_namelen: __u32, +pub f_frsize: __u32, +pub f_flags: __u32, +pub f_spare: [__u32; 4usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct user_desc { +pub entry_number: crate::ctypes::c_uint, +pub base_addr: crate::ctypes::c_uint, +pub limit: crate::ctypes::c_uint, +pub _bitfield_align_1: [u8; 0], +pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, +pub __bindgen_padding_0: [u8; 3usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct kernel_sigset_t { +pub sig: [crate::ctypes::c_ulong; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct kernel_sigaction { +pub sa_handler_kernel: __kernel_sighandler_t, +pub sa_flags: crate::ctypes::c_ulong, +pub sa_mask: kernel_sigset_t, +} +pub const LINUX_VERSION_CODE: u32 = 397568; +pub const LINUX_VERSION_MAJOR: u32 = 6; +pub const LINUX_VERSION_PATCHLEVEL: u32 = 17; +pub const LINUX_VERSION_SUBLEVEL: u32 = 0; +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const __FD_SETSIZE: u32 = 1024; +pub const _LINUX_CAPABILITY_VERSION_1: u32 = 429392688; +pub const _LINUX_CAPABILITY_U32S_1: u32 = 1; +pub const _LINUX_CAPABILITY_VERSION_2: u32 = 537333798; +pub const _LINUX_CAPABILITY_U32S_2: u32 = 2; +pub const _LINUX_CAPABILITY_VERSION_3: u32 = 537396514; +pub const _LINUX_CAPABILITY_U32S_3: u32 = 2; +pub const VFS_CAP_REVISION_MASK: u32 = 4278190080; +pub const VFS_CAP_REVISION_SHIFT: u32 = 24; +pub const VFS_CAP_FLAGS_MASK: i64 = -4278190081; +pub const VFS_CAP_FLAGS_EFFECTIVE: u32 = 1; +pub const VFS_CAP_REVISION_1: u32 = 16777216; +pub const VFS_CAP_U32_1: u32 = 1; +pub const VFS_CAP_REVISION_2: u32 = 33554432; +pub const VFS_CAP_U32_2: u32 = 2; +pub const VFS_CAP_REVISION_3: u32 = 50331648; +pub const VFS_CAP_U32_3: u32 = 2; +pub const VFS_CAP_U32: u32 = 2; +pub const VFS_CAP_REVISION: u32 = 50331648; +pub const _LINUX_CAPABILITY_VERSION: u32 = 429392688; +pub const _LINUX_CAPABILITY_U32S: u32 = 1; +pub const CAP_CHOWN: u32 = 0; +pub const CAP_DAC_OVERRIDE: u32 = 1; +pub const CAP_DAC_READ_SEARCH: u32 = 2; +pub const CAP_FOWNER: u32 = 3; +pub const CAP_FSETID: u32 = 4; +pub const CAP_KILL: u32 = 5; +pub const CAP_SETGID: u32 = 6; +pub const CAP_SETUID: u32 = 7; +pub const CAP_SETPCAP: u32 = 8; +pub const CAP_LINUX_IMMUTABLE: u32 = 9; +pub const CAP_NET_BIND_SERVICE: u32 = 10; +pub const CAP_NET_BROADCAST: u32 = 11; +pub const CAP_NET_ADMIN: u32 = 12; +pub const CAP_NET_RAW: u32 = 13; +pub const CAP_IPC_LOCK: u32 = 14; +pub const CAP_IPC_OWNER: u32 = 15; +pub const CAP_SYS_MODULE: u32 = 16; +pub const CAP_SYS_RAWIO: u32 = 17; +pub const CAP_SYS_CHROOT: u32 = 18; +pub const CAP_SYS_PTRACE: u32 = 19; +pub const CAP_SYS_PACCT: u32 = 20; +pub const CAP_SYS_ADMIN: u32 = 21; +pub const CAP_SYS_BOOT: u32 = 22; +pub const CAP_SYS_NICE: u32 = 23; +pub const CAP_SYS_RESOURCE: u32 = 24; +pub const CAP_SYS_TIME: u32 = 25; +pub const CAP_SYS_TTY_CONFIG: u32 = 26; +pub const CAP_MKNOD: u32 = 27; +pub const CAP_LEASE: u32 = 28; +pub const CAP_AUDIT_WRITE: u32 = 29; +pub const CAP_AUDIT_CONTROL: u32 = 30; +pub const CAP_SETFCAP: u32 = 31; +pub const CAP_MAC_OVERRIDE: u32 = 32; +pub const CAP_MAC_ADMIN: u32 = 33; +pub const CAP_SYSLOG: u32 = 34; +pub const CAP_WAKE_ALARM: u32 = 35; +pub const CAP_BLOCK_SUSPEND: u32 = 36; +pub const CAP_AUDIT_READ: u32 = 37; +pub const CAP_PERFMON: u32 = 38; +pub const CAP_BPF: u32 = 39; +pub const CAP_CHECKPOINT_RESTORE: u32 = 40; +pub const CAP_LAST_CAP: u32 = 40; +pub const O_ACCMODE: u32 = 3; +pub const O_RDONLY: u32 = 0; +pub const O_WRONLY: u32 = 1; +pub const O_RDWR: u32 = 2; +pub const O_CREAT: u32 = 64; +pub const O_EXCL: u32 = 128; +pub const O_NOCTTY: u32 = 256; +pub const O_TRUNC: u32 = 512; +pub const O_APPEND: u32 = 1024; +pub const O_NONBLOCK: u32 = 2048; +pub const O_DSYNC: u32 = 4096; +pub const FASYNC: u32 = 8192; +pub const O_DIRECT: u32 = 16384; +pub const O_LARGEFILE: u32 = 32768; +pub const O_DIRECTORY: u32 = 65536; +pub const O_NOFOLLOW: u32 = 131072; +pub const O_NOATIME: u32 = 262144; +pub const O_CLOEXEC: u32 = 524288; +pub const __O_SYNC: u32 = 1048576; +pub const O_SYNC: u32 = 1052672; +pub const O_PATH: u32 = 2097152; +pub const __O_TMPFILE: u32 = 4194304; +pub const O_TMPFILE: u32 = 4259840; +pub const O_NDELAY: u32 = 2048; +pub const F_DUPFD: u32 = 0; +pub const F_GETFD: u32 = 1; +pub const F_SETFD: u32 = 2; +pub const F_GETFL: u32 = 3; +pub const F_SETFL: u32 = 4; +pub const F_GETLK: u32 = 5; +pub const F_SETLK: u32 = 6; +pub const F_SETLKW: u32 = 7; +pub const F_SETOWN: u32 = 8; +pub const F_GETOWN: u32 = 9; +pub const F_SETSIG: u32 = 10; +pub const F_GETSIG: u32 = 11; +pub const F_GETLK64: u32 = 12; +pub const F_SETLK64: u32 = 13; +pub const F_SETLKW64: u32 = 14; +pub const F_SETOWN_EX: u32 = 15; +pub const F_GETOWN_EX: u32 = 16; +pub const F_GETOWNER_UIDS: u32 = 17; +pub const F_OFD_GETLK: u32 = 36; +pub const F_OFD_SETLK: u32 = 37; +pub const F_OFD_SETLKW: u32 = 38; +pub const F_OWNER_TID: u32 = 0; +pub const F_OWNER_PID: u32 = 1; +pub const F_OWNER_PGRP: u32 = 2; +pub const FD_CLOEXEC: u32 = 1; +pub const F_RDLCK: u32 = 0; +pub const F_WRLCK: u32 = 1; +pub const F_UNLCK: u32 = 2; +pub const F_EXLCK: u32 = 4; +pub const F_SHLCK: u32 = 8; +pub const LOCK_SH: u32 = 1; +pub const LOCK_EX: u32 = 2; +pub const LOCK_NB: u32 = 4; +pub const LOCK_UN: u32 = 8; +pub const LOCK_MAND: u32 = 32; +pub const LOCK_READ: u32 = 64; +pub const LOCK_WRITE: u32 = 128; +pub const LOCK_RW: u32 = 192; +pub const F_LINUX_SPECIFIC_BASE: u32 = 1024; +pub const RESOLVE_NO_XDEV: u32 = 1; +pub const RESOLVE_NO_MAGICLINKS: u32 = 2; +pub const RESOLVE_NO_SYMLINKS: u32 = 4; +pub const RESOLVE_BENEATH: u32 = 8; +pub const RESOLVE_IN_ROOT: u32 = 16; +pub const RESOLVE_CACHED: u32 = 32; +pub const F_SETLEASE: u32 = 1024; +pub const F_GETLEASE: u32 = 1025; +pub const F_NOTIFY: u32 = 1026; +pub const F_DUPFD_QUERY: u32 = 1027; +pub const F_CREATED_QUERY: u32 = 1028; +pub const F_CANCELLK: u32 = 1029; +pub const F_DUPFD_CLOEXEC: u32 = 1030; +pub const F_SETPIPE_SZ: u32 = 1031; +pub const F_GETPIPE_SZ: u32 = 1032; +pub const F_ADD_SEALS: u32 = 1033; +pub const F_GET_SEALS: u32 = 1034; +pub const F_SEAL_SEAL: u32 = 1; +pub const F_SEAL_SHRINK: u32 = 2; +pub const F_SEAL_GROW: u32 = 4; +pub const F_SEAL_WRITE: u32 = 8; +pub const F_SEAL_FUTURE_WRITE: u32 = 16; +pub const F_SEAL_EXEC: u32 = 32; +pub const F_GET_RW_HINT: u32 = 1035; +pub const F_SET_RW_HINT: u32 = 1036; +pub const F_GET_FILE_RW_HINT: u32 = 1037; +pub const F_SET_FILE_RW_HINT: u32 = 1038; +pub const RWH_WRITE_LIFE_NOT_SET: u32 = 0; +pub const RWH_WRITE_LIFE_NONE: u32 = 1; +pub const RWH_WRITE_LIFE_SHORT: u32 = 2; +pub const RWH_WRITE_LIFE_MEDIUM: u32 = 3; +pub const RWH_WRITE_LIFE_LONG: u32 = 4; +pub const RWH_WRITE_LIFE_EXTREME: u32 = 5; +pub const RWF_WRITE_LIFE_NOT_SET: u32 = 0; +pub const DN_ACCESS: u32 = 1; +pub const DN_MODIFY: u32 = 2; +pub const DN_CREATE: u32 = 4; +pub const DN_DELETE: u32 = 8; +pub const DN_RENAME: u32 = 16; +pub const DN_ATTRIB: u32 = 32; +pub const DN_MULTISHOT: u32 = 2147483648; +pub const AT_FDCWD: i32 = -100; +pub const PIDFD_SELF_THREAD: i32 = -10000; +pub const PIDFD_SELF_THREAD_GROUP: i32 = -10001; +pub const FD_PIDFS_ROOT: i32 = -10002; +pub const FD_INVALID: i32 = -10009; +pub const AT_SYMLINK_NOFOLLOW: u32 = 256; +pub const AT_SYMLINK_FOLLOW: u32 = 1024; +pub const AT_NO_AUTOMOUNT: u32 = 2048; +pub const AT_EMPTY_PATH: u32 = 4096; +pub const AT_STATX_SYNC_TYPE: u32 = 24576; +pub const AT_STATX_SYNC_AS_STAT: u32 = 0; +pub const AT_STATX_FORCE_SYNC: u32 = 8192; +pub const AT_STATX_DONT_SYNC: u32 = 16384; +pub const AT_RECURSIVE: u32 = 32768; +pub const AT_RENAME_NOREPLACE: u32 = 1; +pub const AT_RENAME_EXCHANGE: u32 = 2; +pub const AT_RENAME_WHITEOUT: u32 = 4; +pub const AT_EACCESS: u32 = 512; +pub const AT_REMOVEDIR: u32 = 512; +pub const AT_HANDLE_FID: u32 = 512; +pub const AT_HANDLE_MNT_ID_UNIQUE: u32 = 1; +pub const AT_HANDLE_CONNECTABLE: u32 = 2; +pub const AT_EXECVE_CHECK: u32 = 65536; +pub const EPOLL_CLOEXEC: u32 = 524288; +pub const EPOLL_CTL_ADD: u32 = 1; +pub const EPOLL_CTL_DEL: u32 = 2; +pub const EPOLL_CTL_MOD: u32 = 3; +pub const EPOLL_IOC_TYPE: u32 = 138; +pub const POSIX_FADV_NORMAL: u32 = 0; +pub const POSIX_FADV_RANDOM: u32 = 1; +pub const POSIX_FADV_SEQUENTIAL: u32 = 2; +pub const POSIX_FADV_WILLNEED: u32 = 3; +pub const POSIX_FADV_DONTNEED: u32 = 4; +pub const POSIX_FADV_NOREUSE: u32 = 5; +pub const FALLOC_FL_ALLOCATE_RANGE: u32 = 0; +pub const FALLOC_FL_KEEP_SIZE: u32 = 1; +pub const FALLOC_FL_PUNCH_HOLE: u32 = 2; +pub const FALLOC_FL_NO_HIDE_STALE: u32 = 4; +pub const FALLOC_FL_COLLAPSE_RANGE: u32 = 8; +pub const FALLOC_FL_ZERO_RANGE: u32 = 16; +pub const FALLOC_FL_INSERT_RANGE: u32 = 32; +pub const FALLOC_FL_UNSHARE_RANGE: u32 = 64; +pub const FALLOC_FL_WRITE_ZEROES: u32 = 128; +pub const NR_OPEN: u32 = 1024; +pub const NGROUPS_MAX: u32 = 65536; +pub const ARG_MAX: u32 = 131072; +pub const LINK_MAX: u32 = 127; +pub const MAX_CANON: u32 = 255; +pub const MAX_INPUT: u32 = 255; +pub const NAME_MAX: u32 = 255; +pub const PATH_MAX: u32 = 4096; +pub const PIPE_BUF: u32 = 4096; +pub const XATTR_NAME_MAX: u32 = 255; +pub const XATTR_SIZE_MAX: u32 = 65536; +pub const XATTR_LIST_MAX: u32 = 65536; +pub const RTSIG_MAX: u32 = 32; +pub const _IOC_NRBITS: u32 = 8; +pub const _IOC_TYPEBITS: u32 = 8; +pub const _IOC_SIZEBITS: u32 = 14; +pub const _IOC_DIRBITS: u32 = 2; +pub const _IOC_NRMASK: u32 = 255; +pub const _IOC_TYPEMASK: u32 = 255; +pub const _IOC_SIZEMASK: u32 = 16383; +pub const _IOC_DIRMASK: u32 = 3; +pub const _IOC_NRSHIFT: u32 = 0; +pub const _IOC_TYPESHIFT: u32 = 8; +pub const _IOC_SIZESHIFT: u32 = 16; +pub const _IOC_DIRSHIFT: u32 = 30; +pub const _IOC_NONE: u32 = 0; +pub const _IOC_WRITE: u32 = 1; +pub const _IOC_READ: u32 = 2; +pub const IOC_IN: u32 = 1073741824; +pub const IOC_OUT: u32 = 2147483648; +pub const IOC_INOUT: u32 = 3221225472; +pub const IOCSIZE_MASK: u32 = 1073676288; +pub const IOCSIZE_SHIFT: u32 = 16; +pub const FSCRYPT_POLICY_FLAGS_PAD_4: u32 = 0; +pub const FSCRYPT_POLICY_FLAGS_PAD_8: u32 = 1; +pub const FSCRYPT_POLICY_FLAGS_PAD_16: u32 = 2; +pub const FSCRYPT_POLICY_FLAGS_PAD_32: u32 = 3; +pub const FSCRYPT_POLICY_FLAGS_PAD_MASK: u32 = 3; +pub const FSCRYPT_POLICY_FLAG_DIRECT_KEY: u32 = 4; +pub const FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64: u32 = 8; +pub const FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32: u32 = 16; +pub const FSCRYPT_MODE_AES_256_XTS: u32 = 1; +pub const FSCRYPT_MODE_AES_256_CTS: u32 = 4; +pub const FSCRYPT_MODE_AES_128_CBC: u32 = 5; +pub const FSCRYPT_MODE_AES_128_CTS: u32 = 6; +pub const FSCRYPT_MODE_SM4_XTS: u32 = 7; +pub const FSCRYPT_MODE_SM4_CTS: u32 = 8; +pub const FSCRYPT_MODE_ADIANTUM: u32 = 9; +pub const FSCRYPT_MODE_AES_256_HCTR2: u32 = 10; +pub const FSCRYPT_POLICY_V1: u32 = 0; +pub const FSCRYPT_KEY_DESCRIPTOR_SIZE: u32 = 8; +pub const FSCRYPT_KEY_DESC_PREFIX: &[u8; 9] = b"fscrypt:\0"; +pub const FSCRYPT_KEY_DESC_PREFIX_SIZE: u32 = 8; +pub const FSCRYPT_MAX_KEY_SIZE: u32 = 64; +pub const FSCRYPT_POLICY_V2: u32 = 2; +pub const FSCRYPT_KEY_IDENTIFIER_SIZE: u32 = 16; +pub const FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR: u32 = 1; +pub const FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER: u32 = 2; +pub const FSCRYPT_ADD_KEY_FLAG_HW_WRAPPED: u32 = 1; +pub const FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY: u32 = 1; +pub const FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS: u32 = 2; +pub const FSCRYPT_KEY_STATUS_ABSENT: u32 = 1; +pub const FSCRYPT_KEY_STATUS_PRESENT: u32 = 2; +pub const FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED: u32 = 3; +pub const FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF: u32 = 1; +pub const FS_KEY_DESCRIPTOR_SIZE: u32 = 8; +pub const FS_POLICY_FLAGS_PAD_4: u32 = 0; +pub const FS_POLICY_FLAGS_PAD_8: u32 = 1; +pub const FS_POLICY_FLAGS_PAD_16: u32 = 2; +pub const FS_POLICY_FLAGS_PAD_32: u32 = 3; +pub const FS_POLICY_FLAGS_PAD_MASK: u32 = 3; +pub const FS_POLICY_FLAG_DIRECT_KEY: u32 = 4; +pub const FS_POLICY_FLAGS_VALID: u32 = 7; +pub const FS_ENCRYPTION_MODE_INVALID: u32 = 0; +pub const FS_ENCRYPTION_MODE_AES_256_XTS: u32 = 1; +pub const FS_ENCRYPTION_MODE_AES_256_GCM: u32 = 2; +pub const FS_ENCRYPTION_MODE_AES_256_CBC: u32 = 3; +pub const FS_ENCRYPTION_MODE_AES_256_CTS: u32 = 4; +pub const FS_ENCRYPTION_MODE_AES_128_CBC: u32 = 5; +pub const FS_ENCRYPTION_MODE_AES_128_CTS: u32 = 6; +pub const FS_ENCRYPTION_MODE_ADIANTUM: u32 = 9; +pub const FS_KEY_DESC_PREFIX: &[u8; 9] = b"fscrypt:\0"; +pub const FS_KEY_DESC_PREFIX_SIZE: u32 = 8; +pub const FS_MAX_KEY_SIZE: u32 = 64; +pub const MS_RDONLY: u32 = 1; +pub const MS_NOSUID: u32 = 2; +pub const MS_NODEV: u32 = 4; +pub const MS_NOEXEC: u32 = 8; +pub const MS_SYNCHRONOUS: u32 = 16; +pub const MS_REMOUNT: u32 = 32; +pub const MS_MANDLOCK: u32 = 64; +pub const MS_DIRSYNC: u32 = 128; +pub const MS_NOSYMFOLLOW: u32 = 256; +pub const MS_NOATIME: u32 = 1024; +pub const MS_NODIRATIME: u32 = 2048; +pub const MS_BIND: u32 = 4096; +pub const MS_MOVE: u32 = 8192; +pub const MS_REC: u32 = 16384; +pub const MS_VERBOSE: u32 = 32768; +pub const MS_SILENT: u32 = 32768; +pub const MS_POSIXACL: u32 = 65536; +pub const MS_UNBINDABLE: u32 = 131072; +pub const MS_PRIVATE: u32 = 262144; +pub const MS_SLAVE: u32 = 524288; +pub const MS_SHARED: u32 = 1048576; +pub const MS_RELATIME: u32 = 2097152; +pub const MS_KERNMOUNT: u32 = 4194304; +pub const MS_I_VERSION: u32 = 8388608; +pub const MS_STRICTATIME: u32 = 16777216; +pub const MS_LAZYTIME: u32 = 33554432; +pub const MS_SUBMOUNT: u32 = 67108864; +pub const MS_NOREMOTELOCK: u32 = 134217728; +pub const MS_NOSEC: u32 = 268435456; +pub const MS_BORN: u32 = 536870912; +pub const MS_ACTIVE: u32 = 1073741824; +pub const MS_NOUSER: u32 = 2147483648; +pub const MS_RMT_MASK: u32 = 41943121; +pub const MS_MGC_VAL: u32 = 3236757504; +pub const MS_MGC_MSK: u32 = 4294901760; +pub const OPEN_TREE_CLONE: u32 = 1; +pub const OPEN_TREE_CLOEXEC: u32 = 524288; +pub const MOVE_MOUNT_F_SYMLINKS: u32 = 1; +pub const MOVE_MOUNT_F_AUTOMOUNTS: u32 = 2; +pub const MOVE_MOUNT_F_EMPTY_PATH: u32 = 4; +pub const MOVE_MOUNT_T_SYMLINKS: u32 = 16; +pub const MOVE_MOUNT_T_AUTOMOUNTS: u32 = 32; +pub const MOVE_MOUNT_T_EMPTY_PATH: u32 = 64; +pub const MOVE_MOUNT_SET_GROUP: u32 = 256; +pub const MOVE_MOUNT_BENEATH: u32 = 512; +pub const MOVE_MOUNT__MASK: u32 = 887; +pub const FSOPEN_CLOEXEC: u32 = 1; +pub const FSPICK_CLOEXEC: u32 = 1; +pub const FSPICK_SYMLINK_NOFOLLOW: u32 = 2; +pub const FSPICK_NO_AUTOMOUNT: u32 = 4; +pub const FSPICK_EMPTY_PATH: u32 = 8; +pub const FSMOUNT_CLOEXEC: u32 = 1; +pub const MOUNT_ATTR_RDONLY: u32 = 1; +pub const MOUNT_ATTR_NOSUID: u32 = 2; +pub const MOUNT_ATTR_NODEV: u32 = 4; +pub const MOUNT_ATTR_NOEXEC: u32 = 8; +pub const MOUNT_ATTR__ATIME: u32 = 112; +pub const MOUNT_ATTR_RELATIME: u32 = 0; +pub const MOUNT_ATTR_NOATIME: u32 = 16; +pub const MOUNT_ATTR_STRICTATIME: u32 = 32; +pub const MOUNT_ATTR_NODIRATIME: u32 = 128; +pub const MOUNT_ATTR_IDMAP: u32 = 1048576; +pub const MOUNT_ATTR_NOSYMFOLLOW: u32 = 2097152; +pub const MOUNT_ATTR_SIZE_VER0: u32 = 32; +pub const MNT_ID_REQ_SIZE_VER0: u32 = 24; +pub const MNT_ID_REQ_SIZE_VER1: u32 = 32; +pub const STATMOUNT_SB_BASIC: u32 = 1; +pub const STATMOUNT_MNT_BASIC: u32 = 2; +pub const STATMOUNT_PROPAGATE_FROM: u32 = 4; +pub const STATMOUNT_MNT_ROOT: u32 = 8; +pub const STATMOUNT_MNT_POINT: u32 = 16; +pub const STATMOUNT_FS_TYPE: u32 = 32; +pub const STATMOUNT_MNT_NS_ID: u32 = 64; +pub const STATMOUNT_MNT_OPTS: u32 = 128; +pub const STATMOUNT_FS_SUBTYPE: u32 = 256; +pub const STATMOUNT_SB_SOURCE: u32 = 512; +pub const STATMOUNT_OPT_ARRAY: u32 = 1024; +pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; +pub const LSMT_ROOT: i32 = -1; +pub const LISTMOUNT_REVERSE: u32 = 1; +pub const INR_OPEN_CUR: u32 = 1024; +pub const INR_OPEN_MAX: u32 = 4096; +pub const BLOCK_SIZE_BITS: u32 = 10; +pub const BLOCK_SIZE: u32 = 1024; +pub const IO_INTEGRITY_CHK_GUARD: u32 = 1; +pub const IO_INTEGRITY_CHK_REFTAG: u32 = 2; +pub const IO_INTEGRITY_CHK_APPTAG: u32 = 4; +pub const IO_INTEGRITY_VALID_FLAGS: u32 = 7; +pub const SEEK_SET: u32 = 0; +pub const SEEK_CUR: u32 = 1; +pub const SEEK_END: u32 = 2; +pub const SEEK_DATA: u32 = 3; +pub const SEEK_HOLE: u32 = 4; +pub const SEEK_MAX: u32 = 4; +pub const RENAME_NOREPLACE: u32 = 1; +pub const RENAME_EXCHANGE: u32 = 2; +pub const RENAME_WHITEOUT: u32 = 4; +pub const LBMD_PI_CAP_INTEGRITY: u32 = 1; +pub const LBMD_PI_CAP_REFTAG: u32 = 2; +pub const LBMD_PI_CSUM_NONE: u32 = 0; +pub const LBMD_PI_CSUM_IP: u32 = 1; +pub const LBMD_PI_CSUM_CRC16_T10DIF: u32 = 2; +pub const LBMD_PI_CSUM_CRC64_NVME: u32 = 4; +pub const LBMD_SIZE_VER0: u32 = 16; +pub const FILE_DEDUPE_RANGE_SAME: u32 = 0; +pub const FILE_DEDUPE_RANGE_DIFFERS: u32 = 1; +pub const NR_FILE: u32 = 8192; +pub const FILE_ATTR_SIZE_VER0: u32 = 24; +pub const FILE_ATTR_SIZE_LATEST: u32 = 24; +pub const FS_XFLAG_REALTIME: u32 = 1; +pub const FS_XFLAG_PREALLOC: u32 = 2; +pub const FS_XFLAG_IMMUTABLE: u32 = 8; +pub const FS_XFLAG_APPEND: u32 = 16; +pub const FS_XFLAG_SYNC: u32 = 32; +pub const FS_XFLAG_NOATIME: u32 = 64; +pub const FS_XFLAG_NODUMP: u32 = 128; +pub const FS_XFLAG_RTINHERIT: u32 = 256; +pub const FS_XFLAG_PROJINHERIT: u32 = 512; +pub const FS_XFLAG_NOSYMLINKS: u32 = 1024; +pub const FS_XFLAG_EXTSIZE: u32 = 2048; +pub const FS_XFLAG_EXTSZINHERIT: u32 = 4096; +pub const FS_XFLAG_NODEFRAG: u32 = 8192; +pub const FS_XFLAG_FILESTREAM: u32 = 16384; +pub const FS_XFLAG_DAX: u32 = 32768; +pub const FS_XFLAG_COWEXTSIZE: u32 = 65536; +pub const FS_XFLAG_HASATTR: u32 = 2147483648; +pub const BMAP_IOCTL: u32 = 1; +pub const FSLABEL_MAX: u32 = 256; +pub const FS_SECRM_FL: u32 = 1; +pub const FS_UNRM_FL: u32 = 2; +pub const FS_COMPR_FL: u32 = 4; +pub const FS_SYNC_FL: u32 = 8; +pub const FS_IMMUTABLE_FL: u32 = 16; +pub const FS_APPEND_FL: u32 = 32; +pub const FS_NODUMP_FL: u32 = 64; +pub const FS_NOATIME_FL: u32 = 128; +pub const FS_DIRTY_FL: u32 = 256; +pub const FS_COMPRBLK_FL: u32 = 512; +pub const FS_NOCOMP_FL: u32 = 1024; +pub const FS_ENCRYPT_FL: u32 = 2048; +pub const FS_BTREE_FL: u32 = 4096; +pub const FS_INDEX_FL: u32 = 4096; +pub const FS_IMAGIC_FL: u32 = 8192; +pub const FS_JOURNAL_DATA_FL: u32 = 16384; +pub const FS_NOTAIL_FL: u32 = 32768; +pub const FS_DIRSYNC_FL: u32 = 65536; +pub const FS_TOPDIR_FL: u32 = 131072; +pub const FS_HUGE_FILE_FL: u32 = 262144; +pub const FS_EXTENT_FL: u32 = 524288; +pub const FS_VERITY_FL: u32 = 1048576; +pub const FS_EA_INODE_FL: u32 = 2097152; +pub const FS_EOFBLOCKS_FL: u32 = 4194304; +pub const FS_NOCOW_FL: u32 = 8388608; +pub const FS_DAX_FL: u32 = 33554432; +pub const FS_INLINE_DATA_FL: u32 = 268435456; +pub const FS_PROJINHERIT_FL: u32 = 536870912; +pub const FS_CASEFOLD_FL: u32 = 1073741824; +pub const FS_RESERVED_FL: u32 = 2147483648; +pub const FS_FL_USER_VISIBLE: u32 = 253951; +pub const FS_FL_USER_MODIFIABLE: u32 = 229631; +pub const SYNC_FILE_RANGE_WAIT_BEFORE: u32 = 1; +pub const SYNC_FILE_RANGE_WRITE: u32 = 2; +pub const SYNC_FILE_RANGE_WAIT_AFTER: u32 = 4; +pub const SYNC_FILE_RANGE_WRITE_AND_WAIT: u32 = 7; +pub const PROCFS_IOCTL_MAGIC: u8 = 102u8; +pub const PAGE_IS_WPALLOWED: u32 = 1; +pub const PAGE_IS_WRITTEN: u32 = 2; +pub const PAGE_IS_FILE: u32 = 4; +pub const PAGE_IS_PRESENT: u32 = 8; +pub const PAGE_IS_SWAPPED: u32 = 16; +pub const PAGE_IS_PFNZERO: u32 = 32; +pub const PAGE_IS_HUGE: u32 = 64; +pub const PAGE_IS_SOFT_DIRTY: u32 = 128; +pub const PAGE_IS_GUARD: u32 = 256; +pub const PM_SCAN_WP_MATCHING: u32 = 1; +pub const PM_SCAN_CHECK_WPASYNC: u32 = 2; +pub const FUTEX_WAIT: u32 = 0; +pub const FUTEX_WAKE: u32 = 1; +pub const FUTEX_FD: u32 = 2; +pub const FUTEX_REQUEUE: u32 = 3; +pub const FUTEX_CMP_REQUEUE: u32 = 4; +pub const FUTEX_WAKE_OP: u32 = 5; +pub const FUTEX_LOCK_PI: u32 = 6; +pub const FUTEX_UNLOCK_PI: u32 = 7; +pub const FUTEX_TRYLOCK_PI: u32 = 8; +pub const FUTEX_WAIT_BITSET: u32 = 9; +pub const FUTEX_WAKE_BITSET: u32 = 10; +pub const FUTEX_WAIT_REQUEUE_PI: u32 = 11; +pub const FUTEX_CMP_REQUEUE_PI: u32 = 12; +pub const FUTEX_LOCK_PI2: u32 = 13; +pub const FUTEX_PRIVATE_FLAG: u32 = 128; +pub const FUTEX_CLOCK_REALTIME: u32 = 256; +pub const FUTEX_CMD_MASK: i32 = -385; +pub const FUTEX_WAIT_PRIVATE: u32 = 128; +pub const FUTEX_WAKE_PRIVATE: u32 = 129; +pub const FUTEX_REQUEUE_PRIVATE: u32 = 131; +pub const FUTEX_CMP_REQUEUE_PRIVATE: u32 = 132; +pub const FUTEX_WAKE_OP_PRIVATE: u32 = 133; +pub const FUTEX_LOCK_PI_PRIVATE: u32 = 134; +pub const FUTEX_LOCK_PI2_PRIVATE: u32 = 141; +pub const FUTEX_UNLOCK_PI_PRIVATE: u32 = 135; +pub const FUTEX_TRYLOCK_PI_PRIVATE: u32 = 136; +pub const FUTEX_WAIT_BITSET_PRIVATE: u32 = 137; +pub const FUTEX_WAKE_BITSET_PRIVATE: u32 = 138; +pub const FUTEX_WAIT_REQUEUE_PI_PRIVATE: u32 = 139; +pub const FUTEX_CMP_REQUEUE_PI_PRIVATE: u32 = 140; +pub const FUTEX2_SIZE_U8: u32 = 0; +pub const FUTEX2_SIZE_U16: u32 = 1; +pub const FUTEX2_SIZE_U32: u32 = 2; +pub const FUTEX2_SIZE_U64: u32 = 3; +pub const FUTEX2_NUMA: u32 = 4; +pub const FUTEX2_MPOL: u32 = 8; +pub const FUTEX2_PRIVATE: u32 = 128; +pub const FUTEX2_SIZE_MASK: u32 = 3; +pub const FUTEX_32: u32 = 2; +pub const FUTEX_NO_NODE: i32 = -1; +pub const FUTEX_WAITV_MAX: u32 = 128; +pub const FUTEX_WAITERS: u32 = 2147483648; +pub const FUTEX_OWNER_DIED: u32 = 1073741824; +pub const FUTEX_TID_MASK: u32 = 1073741823; +pub const ROBUST_LIST_LIMIT: u32 = 2048; +pub const FUTEX_BITSET_MATCH_ANY: u32 = 4294967295; +pub const FUTEX_OP_SET: u32 = 0; +pub const FUTEX_OP_ADD: u32 = 1; +pub const FUTEX_OP_OR: u32 = 2; +pub const FUTEX_OP_ANDN: u32 = 3; +pub const FUTEX_OP_XOR: u32 = 4; +pub const FUTEX_OP_OPARG_SHIFT: u32 = 8; +pub const FUTEX_OP_CMP_EQ: u32 = 0; +pub const FUTEX_OP_CMP_NE: u32 = 1; +pub const FUTEX_OP_CMP_LT: u32 = 2; +pub const FUTEX_OP_CMP_LE: u32 = 3; +pub const FUTEX_OP_CMP_GT: u32 = 4; +pub const FUTEX_OP_CMP_GE: u32 = 5; +pub const IN_ACCESS: u32 = 1; +pub const IN_MODIFY: u32 = 2; +pub const IN_ATTRIB: u32 = 4; +pub const IN_CLOSE_WRITE: u32 = 8; +pub const IN_CLOSE_NOWRITE: u32 = 16; +pub const IN_OPEN: u32 = 32; +pub const IN_MOVED_FROM: u32 = 64; +pub const IN_MOVED_TO: u32 = 128; +pub const IN_CREATE: u32 = 256; +pub const IN_DELETE: u32 = 512; +pub const IN_DELETE_SELF: u32 = 1024; +pub const IN_MOVE_SELF: u32 = 2048; +pub const IN_UNMOUNT: u32 = 8192; +pub const IN_Q_OVERFLOW: u32 = 16384; +pub const IN_IGNORED: u32 = 32768; +pub const IN_CLOSE: u32 = 24; +pub const IN_MOVE: u32 = 192; +pub const IN_ONLYDIR: u32 = 16777216; +pub const IN_DONT_FOLLOW: u32 = 33554432; +pub const IN_EXCL_UNLINK: u32 = 67108864; +pub const IN_MASK_CREATE: u32 = 268435456; +pub const IN_MASK_ADD: u32 = 536870912; +pub const IN_ISDIR: u32 = 1073741824; +pub const IN_ONESHOT: u32 = 2147483648; +pub const IN_ALL_EVENTS: u32 = 4095; +pub const IN_CLOEXEC: u32 = 524288; +pub const IN_NONBLOCK: u32 = 2048; +pub const ADFS_SUPER_MAGIC: u32 = 44533; +pub const AFFS_SUPER_MAGIC: u32 = 44543; +pub const AFS_SUPER_MAGIC: u32 = 1397113167; +pub const AUTOFS_SUPER_MAGIC: u32 = 391; +pub const CEPH_SUPER_MAGIC: u32 = 12805120; +pub const CODA_SUPER_MAGIC: u32 = 1937076805; +pub const CRAMFS_MAGIC: u32 = 684539205; +pub const CRAMFS_MAGIC_WEND: u32 = 1161678120; +pub const DEBUGFS_MAGIC: u32 = 1684170528; +pub const SECURITYFS_MAGIC: u32 = 1935894131; +pub const SELINUX_MAGIC: u32 = 4185718668; +pub const SMACK_MAGIC: u32 = 1128357203; +pub const RAMFS_MAGIC: u32 = 2240043254; +pub const TMPFS_MAGIC: u32 = 16914836; +pub const HUGETLBFS_MAGIC: u32 = 2508478710; +pub const SQUASHFS_MAGIC: u32 = 1936814952; +pub const ECRYPTFS_SUPER_MAGIC: u32 = 61791; +pub const EFS_SUPER_MAGIC: u32 = 4278867; +pub const EROFS_SUPER_MAGIC_V1: u32 = 3774210530; +pub const EXT2_SUPER_MAGIC: u32 = 61267; +pub const EXT3_SUPER_MAGIC: u32 = 61267; +pub const XENFS_SUPER_MAGIC: u32 = 2881100148; +pub const EXT4_SUPER_MAGIC: u32 = 61267; +pub const BTRFS_SUPER_MAGIC: u32 = 2435016766; +pub const NILFS_SUPER_MAGIC: u32 = 13364; +pub const F2FS_SUPER_MAGIC: u32 = 4076150800; +pub const HPFS_SUPER_MAGIC: u32 = 4187351113; +pub const ISOFS_SUPER_MAGIC: u32 = 38496; +pub const JFFS2_SUPER_MAGIC: u32 = 29366; +pub const XFS_SUPER_MAGIC: u32 = 1481003842; +pub const PSTOREFS_MAGIC: u32 = 1634035564; +pub const EFIVARFS_MAGIC: u32 = 3730735588; +pub const HOSTFS_SUPER_MAGIC: u32 = 12648430; +pub const OVERLAYFS_SUPER_MAGIC: u32 = 2035054128; +pub const FUSE_SUPER_MAGIC: u32 = 1702057286; +pub const BCACHEFS_SUPER_MAGIC: u32 = 3393526350; +pub const MINIX_SUPER_MAGIC: u32 = 4991; +pub const MINIX_SUPER_MAGIC2: u32 = 5007; +pub const MINIX2_SUPER_MAGIC: u32 = 9320; +pub const MINIX2_SUPER_MAGIC2: u32 = 9336; +pub const MINIX3_SUPER_MAGIC: u32 = 19802; +pub const MSDOS_SUPER_MAGIC: u32 = 19780; +pub const EXFAT_SUPER_MAGIC: u32 = 538032816; +pub const NCP_SUPER_MAGIC: u32 = 22092; +pub const NFS_SUPER_MAGIC: u32 = 26985; +pub const OCFS2_SUPER_MAGIC: u32 = 1952539503; +pub const OPENPROM_SUPER_MAGIC: u32 = 40865; +pub const QNX4_SUPER_MAGIC: u32 = 47; +pub const QNX6_SUPER_MAGIC: u32 = 1746473250; +pub const AFS_FS_MAGIC: u32 = 1799439955; +pub const REISERFS_SUPER_MAGIC: u32 = 1382369651; +pub const REISERFS_SUPER_MAGIC_STRING: &[u8; 9] = b"ReIsErFs\0"; +pub const REISER2FS_SUPER_MAGIC_STRING: &[u8; 10] = b"ReIsEr2Fs\0"; +pub const REISER2FS_JR_SUPER_MAGIC_STRING: &[u8; 10] = b"ReIsEr3Fs\0"; +pub const SMB_SUPER_MAGIC: u32 = 20859; +pub const CIFS_SUPER_MAGIC: u32 = 4283649346; +pub const SMB2_SUPER_MAGIC: u32 = 4266872130; +pub const CGROUP_SUPER_MAGIC: u32 = 2613483; +pub const CGROUP2_SUPER_MAGIC: u32 = 1667723888; +pub const RDTGROUP_SUPER_MAGIC: u32 = 124082209; +pub const STACK_END_MAGIC: u32 = 1470918301; +pub const TRACEFS_MAGIC: u32 = 1953653091; +pub const V9FS_MAGIC: u32 = 16914839; +pub const BDEVFS_MAGIC: u32 = 1650746742; +pub const DAXFS_MAGIC: u32 = 1684300152; +pub const BINFMTFS_MAGIC: u32 = 1112100429; +pub const DEVPTS_SUPER_MAGIC: u32 = 7377; +pub const BINDERFS_SUPER_MAGIC: u32 = 1819242352; +pub const FUTEXFS_SUPER_MAGIC: u32 = 195894762; +pub const PIPEFS_MAGIC: u32 = 1346981957; +pub const PROC_SUPER_MAGIC: u32 = 40864; +pub const SOCKFS_MAGIC: u32 = 1397703499; +pub const SYSFS_MAGIC: u32 = 1650812274; +pub const USBDEVICE_SUPER_MAGIC: u32 = 40866; +pub const MTD_INODE_FS_MAGIC: u32 = 288389204; +pub const ANON_INODE_FS_MAGIC: u32 = 151263540; +pub const BTRFS_TEST_MAGIC: u32 = 1936880249; +pub const NSFS_MAGIC: u32 = 1853056627; +pub const BPF_FS_MAGIC: u32 = 3405662737; +pub const AAFS_MAGIC: u32 = 1513908720; +pub const ZONEFS_MAGIC: u32 = 1515144787; +pub const UDF_SUPER_MAGIC: u32 = 352400198; +pub const DMA_BUF_MAGIC: u32 = 1145913666; +pub const DEVMEM_MAGIC: u32 = 1162691661; +pub const SECRETMEM_MAGIC: u32 = 1397048141; +pub const PID_FS_MAGIC: u32 = 1346978886; +pub const PROT_READ: u32 = 1; +pub const PROT_WRITE: u32 = 2; +pub const PROT_EXEC: u32 = 4; +pub const PROT_SEM: u32 = 8; +pub const PROT_NONE: u32 = 0; +pub const PROT_GROWSDOWN: u32 = 16777216; +pub const PROT_GROWSUP: u32 = 33554432; +pub const MAP_TYPE: u32 = 15; +pub const MAP_FIXED: u32 = 16; +pub const MAP_ANONYMOUS: u32 = 32; +pub const MAP_POPULATE: u32 = 32768; +pub const MAP_NONBLOCK: u32 = 65536; +pub const MAP_STACK: u32 = 131072; +pub const MAP_HUGETLB: u32 = 262144; +pub const MAP_SYNC: u32 = 524288; +pub const MAP_FIXED_NOREPLACE: u32 = 1048576; +pub const MAP_UNINITIALIZED: u32 = 67108864; +pub const MLOCK_ONFAULT: u32 = 1; +pub const MS_ASYNC: u32 = 1; +pub const MS_INVALIDATE: u32 = 2; +pub const MS_SYNC: u32 = 4; +pub const MADV_NORMAL: u32 = 0; +pub const MADV_RANDOM: u32 = 1; +pub const MADV_SEQUENTIAL: u32 = 2; +pub const MADV_WILLNEED: u32 = 3; +pub const MADV_DONTNEED: u32 = 4; +pub const MADV_FREE: u32 = 8; +pub const MADV_REMOVE: u32 = 9; +pub const MADV_DONTFORK: u32 = 10; +pub const MADV_DOFORK: u32 = 11; +pub const MADV_HWPOISON: u32 = 100; +pub const MADV_SOFT_OFFLINE: u32 = 101; +pub const MADV_MERGEABLE: u32 = 12; +pub const MADV_UNMERGEABLE: u32 = 13; +pub const MADV_HUGEPAGE: u32 = 14; +pub const MADV_NOHUGEPAGE: u32 = 15; +pub const MADV_DONTDUMP: u32 = 16; +pub const MADV_DODUMP: u32 = 17; +pub const MADV_WIPEONFORK: u32 = 18; +pub const MADV_KEEPONFORK: u32 = 19; +pub const MADV_COLD: u32 = 20; +pub const MADV_PAGEOUT: u32 = 21; +pub const MADV_POPULATE_READ: u32 = 22; +pub const MADV_POPULATE_WRITE: u32 = 23; +pub const MADV_DONTNEED_LOCKED: u32 = 24; +pub const MADV_COLLAPSE: u32 = 25; +pub const MADV_GUARD_INSTALL: u32 = 102; +pub const MADV_GUARD_REMOVE: u32 = 103; +pub const MAP_FILE: u32 = 0; +pub const PKEY_UNRESTRICTED: u32 = 0; +pub const PKEY_DISABLE_ACCESS: u32 = 1; +pub const PKEY_DISABLE_WRITE: u32 = 2; +pub const PKEY_ACCESS_MASK: u32 = 3; +pub const MAP_GROWSDOWN: u32 = 256; +pub const MAP_DENYWRITE: u32 = 2048; +pub const MAP_EXECUTABLE: u32 = 4096; +pub const MAP_LOCKED: u32 = 8192; +pub const MAP_NORESERVE: u32 = 16384; +pub const MCL_CURRENT: u32 = 1; +pub const MCL_FUTURE: u32 = 2; +pub const MCL_ONFAULT: u32 = 4; +pub const SHADOW_STACK_SET_TOKEN: u32 = 1; +pub const SHADOW_STACK_SET_MARKER: u32 = 2; +pub const HUGETLB_FLAG_ENCODE_SHIFT: u32 = 26; +pub const HUGETLB_FLAG_ENCODE_MASK: u32 = 63; +pub const HUGETLB_FLAG_ENCODE_16KB: u32 = 939524096; +pub const HUGETLB_FLAG_ENCODE_64KB: u32 = 1073741824; +pub const HUGETLB_FLAG_ENCODE_512KB: u32 = 1275068416; +pub const HUGETLB_FLAG_ENCODE_1MB: u32 = 1342177280; +pub const HUGETLB_FLAG_ENCODE_2MB: u32 = 1409286144; +pub const HUGETLB_FLAG_ENCODE_8MB: u32 = 1543503872; +pub const HUGETLB_FLAG_ENCODE_16MB: u32 = 1610612736; +pub const HUGETLB_FLAG_ENCODE_32MB: u32 = 1677721600; +pub const HUGETLB_FLAG_ENCODE_256MB: u32 = 1879048192; +pub const HUGETLB_FLAG_ENCODE_512MB: u32 = 1946157056; +pub const HUGETLB_FLAG_ENCODE_1GB: u32 = 2013265920; +pub const HUGETLB_FLAG_ENCODE_2GB: u32 = 2080374784; +pub const HUGETLB_FLAG_ENCODE_16GB: u32 = 2281701376; +pub const MREMAP_MAYMOVE: u32 = 1; +pub const MREMAP_FIXED: u32 = 2; +pub const MREMAP_DONTUNMAP: u32 = 4; +pub const OVERCOMMIT_GUESS: u32 = 0; +pub const OVERCOMMIT_ALWAYS: u32 = 1; +pub const OVERCOMMIT_NEVER: u32 = 2; +pub const MAP_SHARED: u32 = 1; +pub const MAP_PRIVATE: u32 = 2; +pub const MAP_SHARED_VALIDATE: u32 = 3; +pub const MAP_DROPPABLE: u32 = 8; +pub const MAP_HUGE_SHIFT: u32 = 26; +pub const MAP_HUGE_MASK: u32 = 63; +pub const MAP_HUGE_16KB: u32 = 939524096; +pub const MAP_HUGE_64KB: u32 = 1073741824; +pub const MAP_HUGE_512KB: u32 = 1275068416; +pub const MAP_HUGE_1MB: u32 = 1342177280; +pub const MAP_HUGE_2MB: u32 = 1409286144; +pub const MAP_HUGE_8MB: u32 = 1543503872; +pub const MAP_HUGE_16MB: u32 = 1610612736; +pub const MAP_HUGE_32MB: u32 = 1677721600; +pub const MAP_HUGE_256MB: u32 = 1879048192; +pub const MAP_HUGE_512MB: u32 = 1946157056; +pub const MAP_HUGE_1GB: u32 = 2013265920; +pub const MAP_HUGE_2GB: u32 = 2080374784; +pub const MAP_HUGE_16GB: u32 = 2281701376; +pub const POLLIN: u32 = 1; +pub const POLLPRI: u32 = 2; +pub const POLLOUT: u32 = 4; +pub const POLLERR: u32 = 8; +pub const POLLHUP: u32 = 16; +pub const POLLNVAL: u32 = 32; +pub const POLLRDNORM: u32 = 64; +pub const POLLRDBAND: u32 = 128; +pub const POLLWRNORM: u32 = 256; +pub const POLLWRBAND: u32 = 512; +pub const POLLMSG: u32 = 1024; +pub const POLLREMOVE: u32 = 4096; +pub const POLLRDHUP: u32 = 8192; +pub const GRND_NONBLOCK: u32 = 1; +pub const GRND_RANDOM: u32 = 2; +pub const GRND_INSECURE: u32 = 4; +pub const LINUX_REBOOT_MAGIC1: u32 = 4276215469; +pub const LINUX_REBOOT_MAGIC2: u32 = 672274793; +pub const LINUX_REBOOT_MAGIC2A: u32 = 85072278; +pub const LINUX_REBOOT_MAGIC2B: u32 = 369367448; +pub const LINUX_REBOOT_MAGIC2C: u32 = 537993216; +pub const LINUX_REBOOT_CMD_RESTART: u32 = 19088743; +pub const LINUX_REBOOT_CMD_HALT: u32 = 3454992675; +pub const LINUX_REBOOT_CMD_CAD_ON: u32 = 2309737967; +pub const LINUX_REBOOT_CMD_CAD_OFF: u32 = 0; +pub const LINUX_REBOOT_CMD_POWER_OFF: u32 = 1126301404; +pub const LINUX_REBOOT_CMD_RESTART2: u32 = 2712847316; +pub const LINUX_REBOOT_CMD_SW_SUSPEND: u32 = 3489725666; +pub const LINUX_REBOOT_CMD_KEXEC: u32 = 1163412803; +pub const RUSAGE_SELF: u32 = 0; +pub const RUSAGE_CHILDREN: i32 = -1; +pub const RUSAGE_BOTH: i32 = -2; +pub const RUSAGE_THREAD: u32 = 1; +pub const RLIM64_INFINITY: i32 = -1; +pub const PRIO_MIN: i32 = -20; +pub const PRIO_MAX: u32 = 20; +pub const PRIO_PROCESS: u32 = 0; +pub const PRIO_PGRP: u32 = 1; +pub const PRIO_USER: u32 = 2; +pub const _STK_LIM: u32 = 8388608; +pub const MLOCK_LIMIT: u32 = 8388608; +pub const RLIMIT_CPU: u32 = 0; +pub const RLIMIT_FSIZE: u32 = 1; +pub const RLIMIT_DATA: u32 = 2; +pub const RLIMIT_STACK: u32 = 3; +pub const RLIMIT_CORE: u32 = 4; +pub const RLIMIT_RSS: u32 = 5; +pub const RLIMIT_NPROC: u32 = 6; +pub const RLIMIT_NOFILE: u32 = 7; +pub const RLIMIT_MEMLOCK: u32 = 8; +pub const RLIMIT_AS: u32 = 9; +pub const RLIMIT_LOCKS: u32 = 10; +pub const RLIMIT_SIGPENDING: u32 = 11; +pub const RLIMIT_MSGQUEUE: u32 = 12; +pub const RLIMIT_NICE: u32 = 13; +pub const RLIMIT_RTPRIO: u32 = 14; +pub const RLIMIT_RTTIME: u32 = 15; +pub const RLIM_NLIMITS: u32 = 16; +pub const RLIM_INFINITY: i32 = -1; +pub const CSIGNAL: u32 = 255; +pub const CLONE_VM: u32 = 256; +pub const CLONE_FS: u32 = 512; +pub const CLONE_FILES: u32 = 1024; +pub const CLONE_SIGHAND: u32 = 2048; +pub const CLONE_PIDFD: u32 = 4096; +pub const CLONE_PTRACE: u32 = 8192; +pub const CLONE_VFORK: u32 = 16384; +pub const CLONE_PARENT: u32 = 32768; +pub const CLONE_THREAD: u32 = 65536; +pub const CLONE_NEWNS: u32 = 131072; +pub const CLONE_SYSVSEM: u32 = 262144; +pub const CLONE_SETTLS: u32 = 524288; +pub const CLONE_PARENT_SETTID: u32 = 1048576; +pub const CLONE_CHILD_CLEARTID: u32 = 2097152; +pub const CLONE_DETACHED: u32 = 4194304; +pub const CLONE_UNTRACED: u32 = 8388608; +pub const CLONE_CHILD_SETTID: u32 = 16777216; +pub const CLONE_NEWCGROUP: u32 = 33554432; +pub const CLONE_NEWUTS: u32 = 67108864; +pub const CLONE_NEWIPC: u32 = 134217728; +pub const CLONE_NEWUSER: u32 = 268435456; +pub const CLONE_NEWPID: u32 = 536870912; +pub const CLONE_NEWNET: u32 = 1073741824; +pub const CLONE_IO: u32 = 2147483648; +pub const CLONE_CLEAR_SIGHAND: u64 = 4294967296; +pub const CLONE_INTO_CGROUP: u64 = 8589934592; +pub const CLONE_NEWTIME: u32 = 128; +pub const CLONE_ARGS_SIZE_VER0: u32 = 64; +pub const CLONE_ARGS_SIZE_VER1: u32 = 80; +pub const CLONE_ARGS_SIZE_VER2: u32 = 88; +pub const SCHED_NORMAL: u32 = 0; +pub const SCHED_FIFO: u32 = 1; +pub const SCHED_RR: u32 = 2; +pub const SCHED_BATCH: u32 = 3; +pub const SCHED_IDLE: u32 = 5; +pub const SCHED_DEADLINE: u32 = 6; +pub const SCHED_EXT: u32 = 7; +pub const SCHED_RESET_ON_FORK: u32 = 1073741824; +pub const SCHED_FLAG_RESET_ON_FORK: u32 = 1; +pub const SCHED_FLAG_RECLAIM: u32 = 2; +pub const SCHED_FLAG_DL_OVERRUN: u32 = 4; +pub const SCHED_FLAG_KEEP_POLICY: u32 = 8; +pub const SCHED_FLAG_KEEP_PARAMS: u32 = 16; +pub const SCHED_FLAG_UTIL_CLAMP_MIN: u32 = 32; +pub const SCHED_FLAG_UTIL_CLAMP_MAX: u32 = 64; +pub const SCHED_FLAG_KEEP_ALL: u32 = 24; +pub const SCHED_FLAG_UTIL_CLAMP: u32 = 96; +pub const SCHED_FLAG_ALL: u32 = 127; +pub const _NSIG: u32 = 64; +pub const SIGHUP: u32 = 1; +pub const SIGINT: u32 = 2; +pub const SIGQUIT: u32 = 3; +pub const SIGILL: u32 = 4; +pub const SIGTRAP: u32 = 5; +pub const SIGABRT: u32 = 6; +pub const SIGIOT: u32 = 6; +pub const SIGBUS: u32 = 7; +pub const SIGFPE: u32 = 8; +pub const SIGKILL: u32 = 9; +pub const SIGUSR1: u32 = 10; +pub const SIGSEGV: u32 = 11; +pub const SIGUSR2: u32 = 12; +pub const SIGPIPE: u32 = 13; +pub const SIGALRM: u32 = 14; +pub const SIGTERM: u32 = 15; +pub const SIGSTKFLT: u32 = 16; +pub const SIGCHLD: u32 = 17; +pub const SIGCONT: u32 = 18; +pub const SIGSTOP: u32 = 19; +pub const SIGTSTP: u32 = 20; +pub const SIGTTIN: u32 = 21; +pub const SIGTTOU: u32 = 22; +pub const SIGURG: u32 = 23; +pub const SIGXCPU: u32 = 24; +pub const SIGXFSZ: u32 = 25; +pub const SIGVTALRM: u32 = 26; +pub const SIGPROF: u32 = 27; +pub const SIGWINCH: u32 = 28; +pub const SIGIO: u32 = 29; +pub const SIGPOLL: u32 = 29; +pub const SIGPWR: u32 = 30; +pub const SIGSYS: u32 = 31; +pub const SIGUNUSED: u32 = 31; +pub const SIGRTMIN: u32 = 32; +pub const SIGRTMAX: u32 = 64; +pub const MINSIGSTKSZ: u32 = 2048; +pub const SIGSTKSZ: u32 = 8192; +pub const SA_NOCLDSTOP: u32 = 1; +pub const SA_NOCLDWAIT: u32 = 2; +pub const SA_SIGINFO: u32 = 4; +pub const SA_UNSUPPORTED: u32 = 1024; +pub const SA_EXPOSE_TAGBITS: u32 = 2048; +pub const SA_ONSTACK: u32 = 134217728; +pub const SA_RESTART: u32 = 268435456; +pub const SA_NODEFER: u32 = 1073741824; +pub const SA_RESETHAND: u32 = 2147483648; +pub const SA_NOMASK: u32 = 1073741824; +pub const SA_ONESHOT: u32 = 2147483648; +pub const SIG_BLOCK: u32 = 0; +pub const SIG_UNBLOCK: u32 = 1; +pub const SIG_SETMASK: u32 = 2; +pub const SI_MAX_SIZE: u32 = 128; +pub const SI_USER: u32 = 0; +pub const SI_KERNEL: u32 = 128; +pub const SI_QUEUE: i32 = -1; +pub const SI_TIMER: i32 = -2; +pub const SI_MESGQ: i32 = -3; +pub const SI_ASYNCIO: i32 = -4; +pub const SI_SIGIO: i32 = -5; +pub const SI_TKILL: i32 = -6; +pub const SI_DETHREAD: i32 = -7; +pub const SI_ASYNCNL: i32 = -60; +pub const ILL_ILLOPC: u32 = 1; +pub const ILL_ILLOPN: u32 = 2; +pub const ILL_ILLADR: u32 = 3; +pub const ILL_ILLTRP: u32 = 4; +pub const ILL_PRVOPC: u32 = 5; +pub const ILL_PRVREG: u32 = 6; +pub const ILL_COPROC: u32 = 7; +pub const ILL_BADSTK: u32 = 8; +pub const ILL_BADIADDR: u32 = 9; +pub const __ILL_BREAK: u32 = 10; +pub const __ILL_BNDMOD: u32 = 11; +pub const NSIGILL: u32 = 11; +pub const FPE_INTDIV: u32 = 1; +pub const FPE_INTOVF: u32 = 2; +pub const FPE_FLTDIV: u32 = 3; +pub const FPE_FLTOVF: u32 = 4; +pub const FPE_FLTUND: u32 = 5; +pub const FPE_FLTRES: u32 = 6; +pub const FPE_FLTINV: u32 = 7; +pub const FPE_FLTSUB: u32 = 8; +pub const __FPE_DECOVF: u32 = 9; +pub const __FPE_DECDIV: u32 = 10; +pub const __FPE_DECERR: u32 = 11; +pub const __FPE_INVASC: u32 = 12; +pub const __FPE_INVDEC: u32 = 13; +pub const FPE_FLTUNK: u32 = 14; +pub const FPE_CONDTRAP: u32 = 15; +pub const NSIGFPE: u32 = 15; +pub const SEGV_MAPERR: u32 = 1; +pub const SEGV_ACCERR: u32 = 2; +pub const SEGV_BNDERR: u32 = 3; +pub const SEGV_PKUERR: u32 = 4; +pub const SEGV_ACCADI: u32 = 5; +pub const SEGV_ADIDERR: u32 = 6; +pub const SEGV_ADIPERR: u32 = 7; +pub const SEGV_MTEAERR: u32 = 8; +pub const SEGV_MTESERR: u32 = 9; +pub const SEGV_CPERR: u32 = 10; +pub const NSIGSEGV: u32 = 10; +pub const BUS_ADRALN: u32 = 1; +pub const BUS_ADRERR: u32 = 2; +pub const BUS_OBJERR: u32 = 3; +pub const BUS_MCEERR_AR: u32 = 4; +pub const BUS_MCEERR_AO: u32 = 5; +pub const NSIGBUS: u32 = 5; +pub const TRAP_BRKPT: u32 = 1; +pub const TRAP_TRACE: u32 = 2; +pub const TRAP_BRANCH: u32 = 3; +pub const TRAP_HWBKPT: u32 = 4; +pub const TRAP_UNK: u32 = 5; +pub const TRAP_PERF: u32 = 6; +pub const NSIGTRAP: u32 = 6; +pub const TRAP_PERF_FLAG_ASYNC: u32 = 1; +pub const CLD_EXITED: u32 = 1; +pub const CLD_KILLED: u32 = 2; +pub const CLD_DUMPED: u32 = 3; +pub const CLD_TRAPPED: u32 = 4; +pub const CLD_STOPPED: u32 = 5; +pub const CLD_CONTINUED: u32 = 6; +pub const NSIGCHLD: u32 = 6; +pub const POLL_IN: u32 = 1; +pub const POLL_OUT: u32 = 2; +pub const POLL_MSG: u32 = 3; +pub const POLL_ERR: u32 = 4; +pub const POLL_PRI: u32 = 5; +pub const POLL_HUP: u32 = 6; +pub const NSIGPOLL: u32 = 6; +pub const SYS_SECCOMP: u32 = 1; +pub const SYS_USER_DISPATCH: u32 = 2; +pub const NSIGSYS: u32 = 2; +pub const EMT_TAGOVF: u32 = 1; +pub const NSIGEMT: u32 = 1; +pub const SIGEV_SIGNAL: u32 = 0; +pub const SIGEV_NONE: u32 = 1; +pub const SIGEV_THREAD: u32 = 2; +pub const SIGEV_THREAD_ID: u32 = 4; +pub const SIGEV_MAX_SIZE: u32 = 64; +pub const SS_ONSTACK: u32 = 1; +pub const SS_DISABLE: u32 = 2; +pub const SS_AUTODISARM: u32 = 2147483648; +pub const SS_FLAG_BITS: u32 = 2147483648; +pub const S_IFMT: u32 = 61440; +pub const S_IFSOCK: u32 = 49152; +pub const S_IFLNK: u32 = 40960; +pub const S_IFREG: u32 = 32768; +pub const S_IFBLK: u32 = 24576; +pub const S_IFDIR: u32 = 16384; +pub const S_IFCHR: u32 = 8192; +pub const S_IFIFO: u32 = 4096; +pub const S_ISUID: u32 = 2048; +pub const S_ISGID: u32 = 1024; +pub const S_ISVTX: u32 = 512; +pub const S_IRWXU: u32 = 448; +pub const S_IRUSR: u32 = 256; +pub const S_IWUSR: u32 = 128; +pub const S_IXUSR: u32 = 64; +pub const S_IRWXG: u32 = 56; +pub const S_IRGRP: u32 = 32; +pub const S_IWGRP: u32 = 16; +pub const S_IXGRP: u32 = 8; +pub const S_IRWXO: u32 = 7; +pub const S_IROTH: u32 = 4; +pub const S_IWOTH: u32 = 2; +pub const S_IXOTH: u32 = 1; +pub const STATX_TYPE: u32 = 1; +pub const STATX_MODE: u32 = 2; +pub const STATX_NLINK: u32 = 4; +pub const STATX_UID: u32 = 8; +pub const STATX_GID: u32 = 16; +pub const STATX_ATIME: u32 = 32; +pub const STATX_MTIME: u32 = 64; +pub const STATX_CTIME: u32 = 128; +pub const STATX_INO: u32 = 256; +pub const STATX_SIZE: u32 = 512; +pub const STATX_BLOCKS: u32 = 1024; +pub const STATX_BASIC_STATS: u32 = 2047; +pub const STATX_BTIME: u32 = 2048; +pub const STATX_MNT_ID: u32 = 4096; +pub const STATX_DIOALIGN: u32 = 8192; +pub const STATX_MNT_ID_UNIQUE: u32 = 16384; +pub const STATX_SUBVOL: u32 = 32768; +pub const STATX_WRITE_ATOMIC: u32 = 65536; +pub const STATX_DIO_READ_ALIGN: u32 = 131072; +pub const STATX__RESERVED: u32 = 2147483648; +pub const STATX_ALL: u32 = 4095; +pub const STATX_ATTR_COMPRESSED: u32 = 4; +pub const STATX_ATTR_IMMUTABLE: u32 = 16; +pub const STATX_ATTR_APPEND: u32 = 32; +pub const STATX_ATTR_NODUMP: u32 = 64; +pub const STATX_ATTR_ENCRYPTED: u32 = 2048; +pub const STATX_ATTR_AUTOMOUNT: u32 = 4096; +pub const STATX_ATTR_MOUNT_ROOT: u32 = 8192; +pub const STATX_ATTR_VERITY: u32 = 1048576; +pub const STATX_ATTR_DAX: u32 = 2097152; +pub const STATX_ATTR_WRITE_ATOMIC: u32 = 4194304; +pub const IGNBRK: u32 = 1; +pub const BRKINT: u32 = 2; +pub const IGNPAR: u32 = 4; +pub const PARMRK: u32 = 8; +pub const INPCK: u32 = 16; +pub const ISTRIP: u32 = 32; +pub const INLCR: u32 = 64; +pub const IGNCR: u32 = 128; +pub const ICRNL: u32 = 256; +pub const IXANY: u32 = 2048; +pub const OPOST: u32 = 1; +pub const OCRNL: u32 = 8; +pub const ONOCR: u32 = 16; +pub const ONLRET: u32 = 32; +pub const OFILL: u32 = 64; +pub const OFDEL: u32 = 128; +pub const B0: u32 = 0; +pub const B50: u32 = 1; +pub const B75: u32 = 2; +pub const B110: u32 = 3; +pub const B134: u32 = 4; +pub const B150: u32 = 5; +pub const B200: u32 = 6; +pub const B300: u32 = 7; +pub const B600: u32 = 8; +pub const B1200: u32 = 9; +pub const B1800: u32 = 10; +pub const B2400: u32 = 11; +pub const B4800: u32 = 12; +pub const B9600: u32 = 13; +pub const B19200: u32 = 14; +pub const B38400: u32 = 15; +pub const EXTA: u32 = 14; +pub const EXTB: u32 = 15; +pub const ADDRB: u32 = 536870912; +pub const CMSPAR: u32 = 1073741824; +pub const CRTSCTS: u32 = 2147483648; +pub const IBSHIFT: u32 = 16; +pub const TCOOFF: u32 = 0; +pub const TCOON: u32 = 1; +pub const TCIOFF: u32 = 2; +pub const TCION: u32 = 3; +pub const TCIFLUSH: u32 = 0; +pub const TCOFLUSH: u32 = 1; +pub const TCIOFLUSH: u32 = 2; +pub const NCCS: u32 = 19; +pub const VINTR: u32 = 0; +pub const VQUIT: u32 = 1; +pub const VERASE: u32 = 2; +pub const VKILL: u32 = 3; +pub const VEOF: u32 = 4; +pub const VTIME: u32 = 5; +pub const VMIN: u32 = 6; +pub const VSWTC: u32 = 7; +pub const VSTART: u32 = 8; +pub const VSTOP: u32 = 9; +pub const VSUSP: u32 = 10; +pub const VEOL: u32 = 11; +pub const VREPRINT: u32 = 12; +pub const VDISCARD: u32 = 13; +pub const VWERASE: u32 = 14; +pub const VLNEXT: u32 = 15; +pub const VEOL2: u32 = 16; +pub const IUCLC: u32 = 512; +pub const IXON: u32 = 1024; +pub const IXOFF: u32 = 4096; +pub const IMAXBEL: u32 = 8192; +pub const IUTF8: u32 = 16384; +pub const OLCUC: u32 = 2; +pub const ONLCR: u32 = 4; +pub const NLDLY: u32 = 256; +pub const NL0: u32 = 0; +pub const NL1: u32 = 256; +pub const CRDLY: u32 = 1536; +pub const CR0: u32 = 0; +pub const CR1: u32 = 512; +pub const CR2: u32 = 1024; +pub const CR3: u32 = 1536; +pub const TABDLY: u32 = 6144; +pub const TAB0: u32 = 0; +pub const TAB1: u32 = 2048; +pub const TAB2: u32 = 4096; +pub const TAB3: u32 = 6144; +pub const XTABS: u32 = 6144; +pub const BSDLY: u32 = 8192; +pub const BS0: u32 = 0; +pub const BS1: u32 = 8192; +pub const VTDLY: u32 = 16384; +pub const VT0: u32 = 0; +pub const VT1: u32 = 16384; +pub const FFDLY: u32 = 32768; +pub const FF0: u32 = 0; +pub const FF1: u32 = 32768; +pub const CBAUD: u32 = 4111; +pub const CSIZE: u32 = 48; +pub const CS5: u32 = 0; +pub const CS6: u32 = 16; +pub const CS7: u32 = 32; +pub const CS8: u32 = 48; +pub const CSTOPB: u32 = 64; +pub const CREAD: u32 = 128; +pub const PARENB: u32 = 256; +pub const PARODD: u32 = 512; +pub const HUPCL: u32 = 1024; +pub const CLOCAL: u32 = 2048; +pub const CBAUDEX: u32 = 4096; +pub const BOTHER: u32 = 4096; +pub const B57600: u32 = 4097; +pub const B115200: u32 = 4098; +pub const B230400: u32 = 4099; +pub const B460800: u32 = 4100; +pub const B500000: u32 = 4101; +pub const B576000: u32 = 4102; +pub const B921600: u32 = 4103; +pub const B1000000: u32 = 4104; +pub const B1152000: u32 = 4105; +pub const B1500000: u32 = 4106; +pub const B2000000: u32 = 4107; +pub const B2500000: u32 = 4108; +pub const B3000000: u32 = 4109; +pub const B3500000: u32 = 4110; +pub const B4000000: u32 = 4111; +pub const CIBAUD: u32 = 269418496; +pub const ISIG: u32 = 1; +pub const ICANON: u32 = 2; +pub const XCASE: u32 = 4; +pub const ECHO: u32 = 8; +pub const ECHOE: u32 = 16; +pub const ECHOK: u32 = 32; +pub const ECHONL: u32 = 64; +pub const NOFLSH: u32 = 128; +pub const TOSTOP: u32 = 256; +pub const ECHOCTL: u32 = 512; +pub const ECHOPRT: u32 = 1024; +pub const ECHOKE: u32 = 2048; +pub const FLUSHO: u32 = 4096; +pub const PENDIN: u32 = 16384; +pub const IEXTEN: u32 = 32768; +pub const EXTPROC: u32 = 65536; +pub const TCSANOW: u32 = 0; +pub const TCSADRAIN: u32 = 1; +pub const TCSAFLUSH: u32 = 2; +pub const TIOCPKT_DATA: u32 = 0; +pub const TIOCPKT_FLUSHREAD: u32 = 1; +pub const TIOCPKT_FLUSHWRITE: u32 = 2; +pub const TIOCPKT_STOP: u32 = 4; +pub const TIOCPKT_START: u32 = 8; +pub const TIOCPKT_NOSTOP: u32 = 16; +pub const TIOCPKT_DOSTOP: u32 = 32; +pub const TIOCPKT_IOCTL: u32 = 64; +pub const TIOCSER_TEMT: u32 = 1; +pub const NCC: u32 = 8; +pub const TIOCM_LE: u32 = 1; +pub const TIOCM_DTR: u32 = 2; +pub const TIOCM_RTS: u32 = 4; +pub const TIOCM_ST: u32 = 8; +pub const TIOCM_SR: u32 = 16; +pub const TIOCM_CTS: u32 = 32; +pub const TIOCM_CAR: u32 = 64; +pub const TIOCM_RNG: u32 = 128; +pub const TIOCM_DSR: u32 = 256; +pub const TIOCM_CD: u32 = 64; +pub const TIOCM_RI: u32 = 128; +pub const TIOCM_OUT1: u32 = 8192; +pub const TIOCM_OUT2: u32 = 16384; +pub const TIOCM_LOOP: u32 = 32768; +pub const ITIMER_REAL: u32 = 0; +pub const ITIMER_VIRTUAL: u32 = 1; +pub const ITIMER_PROF: u32 = 2; +pub const CLOCK_REALTIME: u32 = 0; +pub const CLOCK_MONOTONIC: u32 = 1; +pub const CLOCK_PROCESS_CPUTIME_ID: u32 = 2; +pub const CLOCK_THREAD_CPUTIME_ID: u32 = 3; +pub const CLOCK_MONOTONIC_RAW: u32 = 4; +pub const CLOCK_REALTIME_COARSE: u32 = 5; +pub const CLOCK_MONOTONIC_COARSE: u32 = 6; +pub const CLOCK_BOOTTIME: u32 = 7; +pub const CLOCK_REALTIME_ALARM: u32 = 8; +pub const CLOCK_BOOTTIME_ALARM: u32 = 9; +pub const CLOCK_SGI_CYCLE: u32 = 10; +pub const CLOCK_TAI: u32 = 11; +pub const MAX_CLOCKS: u32 = 16; +pub const CLOCK_AUX: u32 = 16; +pub const MAX_AUX_CLOCKS: u32 = 8; +pub const CLOCK_AUX_LAST: u32 = 23; +pub const CLOCKS_MASK: u32 = 1; +pub const CLOCKS_MONO: u32 = 1; +pub const TIMER_ABSTIME: u32 = 1; +pub const UIO_FASTIOV: u32 = 8; +pub const UIO_MAXIOV: u32 = 1024; +pub const __NR_io_setup: u32 = 0; +pub const __NR_io_destroy: u32 = 1; +pub const __NR_io_submit: u32 = 2; +pub const __NR_io_cancel: u32 = 3; +pub const __NR_io_getevents: u32 = 4; +pub const __NR_setxattr: u32 = 5; +pub const __NR_lsetxattr: u32 = 6; +pub const __NR_fsetxattr: u32 = 7; +pub const __NR_getxattr: u32 = 8; +pub const __NR_lgetxattr: u32 = 9; +pub const __NR_fgetxattr: u32 = 10; +pub const __NR_listxattr: u32 = 11; +pub const __NR_llistxattr: u32 = 12; +pub const __NR_flistxattr: u32 = 13; +pub const __NR_removexattr: u32 = 14; +pub const __NR_lremovexattr: u32 = 15; +pub const __NR_fremovexattr: u32 = 16; +pub const __NR_getcwd: u32 = 17; +pub const __NR_lookup_dcookie: u32 = 18; +pub const __NR_eventfd2: u32 = 19; +pub const __NR_epoll_create1: u32 = 20; +pub const __NR_epoll_ctl: u32 = 21; +pub const __NR_epoll_pwait: u32 = 22; +pub const __NR_dup: u32 = 23; +pub const __NR_dup3: u32 = 24; +pub const __NR_fcntl64: u32 = 25; +pub const __NR_inotify_init1: u32 = 26; +pub const __NR_inotify_add_watch: u32 = 27; +pub const __NR_inotify_rm_watch: u32 = 28; +pub const __NR_ioctl: u32 = 29; +pub const __NR_ioprio_set: u32 = 30; +pub const __NR_ioprio_get: u32 = 31; +pub const __NR_flock: u32 = 32; +pub const __NR_mknodat: u32 = 33; +pub const __NR_mkdirat: u32 = 34; +pub const __NR_unlinkat: u32 = 35; +pub const __NR_symlinkat: u32 = 36; +pub const __NR_linkat: u32 = 37; +pub const __NR_renameat: u32 = 38; +pub const __NR_umount2: u32 = 39; +pub const __NR_mount: u32 = 40; +pub const __NR_pivot_root: u32 = 41; +pub const __NR_nfsservctl: u32 = 42; +pub const __NR_statfs64: u32 = 43; +pub const __NR_fstatfs64: u32 = 44; +pub const __NR_truncate64: u32 = 45; +pub const __NR_ftruncate64: u32 = 46; +pub const __NR_fallocate: u32 = 47; +pub const __NR_faccessat: u32 = 48; +pub const __NR_chdir: u32 = 49; +pub const __NR_fchdir: u32 = 50; +pub const __NR_chroot: u32 = 51; +pub const __NR_fchmod: u32 = 52; +pub const __NR_fchmodat: u32 = 53; +pub const __NR_fchownat: u32 = 54; +pub const __NR_fchown: u32 = 55; +pub const __NR_openat: u32 = 56; +pub const __NR_close: u32 = 57; +pub const __NR_vhangup: u32 = 58; +pub const __NR_pipe2: u32 = 59; +pub const __NR_quotactl: u32 = 60; +pub const __NR_getdents64: u32 = 61; +pub const __NR_llseek: u32 = 62; +pub const __NR_read: u32 = 63; +pub const __NR_write: u32 = 64; +pub const __NR_readv: u32 = 65; +pub const __NR_writev: u32 = 66; +pub const __NR_pread64: u32 = 67; +pub const __NR_pwrite64: u32 = 68; +pub const __NR_preadv: u32 = 69; +pub const __NR_pwritev: u32 = 70; +pub const __NR_sendfile64: u32 = 71; +pub const __NR_pselect6: u32 = 72; +pub const __NR_ppoll: u32 = 73; +pub const __NR_signalfd4: u32 = 74; +pub const __NR_vmsplice: u32 = 75; +pub const __NR_splice: u32 = 76; +pub const __NR_tee: u32 = 77; +pub const __NR_readlinkat: u32 = 78; +pub const __NR_fstatat64: u32 = 79; +pub const __NR_fstat64: u32 = 80; +pub const __NR_sync: u32 = 81; +pub const __NR_fsync: u32 = 82; +pub const __NR_fdatasync: u32 = 83; +pub const __NR_sync_file_range: u32 = 84; +pub const __NR_timerfd_create: u32 = 85; +pub const __NR_timerfd_settime: u32 = 86; +pub const __NR_timerfd_gettime: u32 = 87; +pub const __NR_utimensat: u32 = 88; +pub const __NR_acct: u32 = 89; +pub const __NR_capget: u32 = 90; +pub const __NR_capset: u32 = 91; +pub const __NR_personality: u32 = 92; +pub const __NR_exit: u32 = 93; +pub const __NR_exit_group: u32 = 94; +pub const __NR_waitid: u32 = 95; +pub const __NR_set_tid_address: u32 = 96; +pub const __NR_unshare: u32 = 97; +pub const __NR_futex: u32 = 98; +pub const __NR_set_robust_list: u32 = 99; +pub const __NR_get_robust_list: u32 = 100; +pub const __NR_nanosleep: u32 = 101; +pub const __NR_getitimer: u32 = 102; +pub const __NR_setitimer: u32 = 103; +pub const __NR_kexec_load: u32 = 104; +pub const __NR_init_module: u32 = 105; +pub const __NR_delete_module: u32 = 106; +pub const __NR_timer_create: u32 = 107; +pub const __NR_timer_gettime: u32 = 108; +pub const __NR_timer_getoverrun: u32 = 109; +pub const __NR_timer_settime: u32 = 110; +pub const __NR_timer_delete: u32 = 111; +pub const __NR_clock_settime: u32 = 112; +pub const __NR_clock_gettime: u32 = 113; +pub const __NR_clock_getres: u32 = 114; +pub const __NR_clock_nanosleep: u32 = 115; +pub const __NR_syslog: u32 = 116; +pub const __NR_ptrace: u32 = 117; +pub const __NR_sched_setparam: u32 = 118; +pub const __NR_sched_setscheduler: u32 = 119; +pub const __NR_sched_getscheduler: u32 = 120; +pub const __NR_sched_getparam: u32 = 121; +pub const __NR_sched_setaffinity: u32 = 122; +pub const __NR_sched_getaffinity: u32 = 123; +pub const __NR_sched_yield: u32 = 124; +pub const __NR_sched_get_priority_max: u32 = 125; +pub const __NR_sched_get_priority_min: u32 = 126; +pub const __NR_sched_rr_get_interval: u32 = 127; +pub const __NR_restart_syscall: u32 = 128; +pub const __NR_kill: u32 = 129; +pub const __NR_tkill: u32 = 130; +pub const __NR_tgkill: u32 = 131; +pub const __NR_sigaltstack: u32 = 132; +pub const __NR_rt_sigsuspend: u32 = 133; +pub const __NR_rt_sigaction: u32 = 134; +pub const __NR_rt_sigprocmask: u32 = 135; +pub const __NR_rt_sigpending: u32 = 136; +pub const __NR_rt_sigtimedwait: u32 = 137; +pub const __NR_rt_sigqueueinfo: u32 = 138; +pub const __NR_rt_sigreturn: u32 = 139; +pub const __NR_setpriority: u32 = 140; +pub const __NR_getpriority: u32 = 141; +pub const __NR_reboot: u32 = 142; +pub const __NR_setregid: u32 = 143; +pub const __NR_setgid: u32 = 144; +pub const __NR_setreuid: u32 = 145; +pub const __NR_setuid: u32 = 146; +pub const __NR_setresuid: u32 = 147; +pub const __NR_getresuid: u32 = 148; +pub const __NR_setresgid: u32 = 149; +pub const __NR_getresgid: u32 = 150; +pub const __NR_setfsuid: u32 = 151; +pub const __NR_setfsgid: u32 = 152; +pub const __NR_times: u32 = 153; +pub const __NR_setpgid: u32 = 154; +pub const __NR_getpgid: u32 = 155; +pub const __NR_getsid: u32 = 156; +pub const __NR_setsid: u32 = 157; +pub const __NR_getgroups: u32 = 158; +pub const __NR_setgroups: u32 = 159; +pub const __NR_uname: u32 = 160; +pub const __NR_sethostname: u32 = 161; +pub const __NR_setdomainname: u32 = 162; +pub const __NR_getrlimit: u32 = 163; +pub const __NR_setrlimit: u32 = 164; +pub const __NR_getrusage: u32 = 165; +pub const __NR_umask: u32 = 166; +pub const __NR_prctl: u32 = 167; +pub const __NR_getcpu: u32 = 168; +pub const __NR_gettimeofday: u32 = 169; +pub const __NR_settimeofday: u32 = 170; +pub const __NR_adjtimex: u32 = 171; +pub const __NR_getpid: u32 = 172; +pub const __NR_getppid: u32 = 173; +pub const __NR_getuid: u32 = 174; +pub const __NR_geteuid: u32 = 175; +pub const __NR_getgid: u32 = 176; +pub const __NR_getegid: u32 = 177; +pub const __NR_gettid: u32 = 178; +pub const __NR_sysinfo: u32 = 179; +pub const __NR_mq_open: u32 = 180; +pub const __NR_mq_unlink: u32 = 181; +pub const __NR_mq_timedsend: u32 = 182; +pub const __NR_mq_timedreceive: u32 = 183; +pub const __NR_mq_notify: u32 = 184; +pub const __NR_mq_getsetattr: u32 = 185; +pub const __NR_msgget: u32 = 186; +pub const __NR_msgctl: u32 = 187; +pub const __NR_msgrcv: u32 = 188; +pub const __NR_msgsnd: u32 = 189; +pub const __NR_semget: u32 = 190; +pub const __NR_semctl: u32 = 191; +pub const __NR_semtimedop: u32 = 192; +pub const __NR_semop: u32 = 193; +pub const __NR_shmget: u32 = 194; +pub const __NR_shmctl: u32 = 195; +pub const __NR_shmat: u32 = 196; +pub const __NR_shmdt: u32 = 197; +pub const __NR_socket: u32 = 198; +pub const __NR_socketpair: u32 = 199; +pub const __NR_bind: u32 = 200; +pub const __NR_listen: u32 = 201; +pub const __NR_accept: u32 = 202; +pub const __NR_connect: u32 = 203; +pub const __NR_getsockname: u32 = 204; +pub const __NR_getpeername: u32 = 205; +pub const __NR_sendto: u32 = 206; +pub const __NR_recvfrom: u32 = 207; +pub const __NR_setsockopt: u32 = 208; +pub const __NR_getsockopt: u32 = 209; +pub const __NR_shutdown: u32 = 210; +pub const __NR_sendmsg: u32 = 211; +pub const __NR_recvmsg: u32 = 212; +pub const __NR_readahead: u32 = 213; +pub const __NR_brk: u32 = 214; +pub const __NR_munmap: u32 = 215; +pub const __NR_mremap: u32 = 216; +pub const __NR_add_key: u32 = 217; +pub const __NR_request_key: u32 = 218; +pub const __NR_keyctl: u32 = 219; +pub const __NR_clone: u32 = 220; +pub const __NR_execve: u32 = 221; +pub const __NR_mmap2: u32 = 222; +pub const __NR_fadvise64_64: u32 = 223; +pub const __NR_swapon: u32 = 224; +pub const __NR_swapoff: u32 = 225; +pub const __NR_mprotect: u32 = 226; +pub const __NR_msync: u32 = 227; +pub const __NR_mlock: u32 = 228; +pub const __NR_munlock: u32 = 229; +pub const __NR_mlockall: u32 = 230; +pub const __NR_munlockall: u32 = 231; +pub const __NR_mincore: u32 = 232; +pub const __NR_madvise: u32 = 233; +pub const __NR_remap_file_pages: u32 = 234; +pub const __NR_mbind: u32 = 235; +pub const __NR_get_mempolicy: u32 = 236; +pub const __NR_set_mempolicy: u32 = 237; +pub const __NR_migrate_pages: u32 = 238; +pub const __NR_move_pages: u32 = 239; +pub const __NR_rt_tgsigqueueinfo: u32 = 240; +pub const __NR_perf_event_open: u32 = 241; +pub const __NR_accept4: u32 = 242; +pub const __NR_recvmmsg: u32 = 243; +pub const __NR_wait4: u32 = 260; +pub const __NR_prlimit64: u32 = 261; +pub const __NR_fanotify_init: u32 = 262; +pub const __NR_fanotify_mark: u32 = 263; +pub const __NR_name_to_handle_at: u32 = 264; +pub const __NR_open_by_handle_at: u32 = 265; +pub const __NR_clock_adjtime: u32 = 266; +pub const __NR_syncfs: u32 = 267; +pub const __NR_setns: u32 = 268; +pub const __NR_sendmmsg: u32 = 269; +pub const __NR_process_vm_readv: u32 = 270; +pub const __NR_process_vm_writev: u32 = 271; +pub const __NR_kcmp: u32 = 272; +pub const __NR_finit_module: u32 = 273; +pub const __NR_sched_setattr: u32 = 274; +pub const __NR_sched_getattr: u32 = 275; +pub const __NR_renameat2: u32 = 276; +pub const __NR_seccomp: u32 = 277; +pub const __NR_getrandom: u32 = 278; +pub const __NR_memfd_create: u32 = 279; +pub const __NR_bpf: u32 = 280; +pub const __NR_execveat: u32 = 281; +pub const __NR_userfaultfd: u32 = 282; +pub const __NR_membarrier: u32 = 283; +pub const __NR_mlock2: u32 = 284; +pub const __NR_copy_file_range: u32 = 285; +pub const __NR_preadv2: u32 = 286; +pub const __NR_pwritev2: u32 = 287; +pub const __NR_pkey_mprotect: u32 = 288; +pub const __NR_pkey_alloc: u32 = 289; +pub const __NR_pkey_free: u32 = 290; +pub const __NR_statx: u32 = 291; +pub const __NR_io_pgetevents: u32 = 292; +pub const __NR_rseq: u32 = 293; +pub const __NR_kexec_file_load: u32 = 294; +pub const __NR_clock_gettime64: u32 = 403; +pub const __NR_clock_settime64: u32 = 404; +pub const __NR_clock_adjtime64: u32 = 405; +pub const __NR_clock_getres_time64: u32 = 406; +pub const __NR_clock_nanosleep_time64: u32 = 407; +pub const __NR_timer_gettime64: u32 = 408; +pub const __NR_timer_settime64: u32 = 409; +pub const __NR_timerfd_gettime64: u32 = 410; +pub const __NR_timerfd_settime64: u32 = 411; +pub const __NR_utimensat_time64: u32 = 412; +pub const __NR_pselect6_time64: u32 = 413; +pub const __NR_ppoll_time64: u32 = 414; +pub const __NR_io_pgetevents_time64: u32 = 416; +pub const __NR_recvmmsg_time64: u32 = 417; +pub const __NR_mq_timedsend_time64: u32 = 418; +pub const __NR_mq_timedreceive_time64: u32 = 419; +pub const __NR_semtimedop_time64: u32 = 420; +pub const __NR_rt_sigtimedwait_time64: u32 = 421; +pub const __NR_futex_time64: u32 = 422; +pub const __NR_sched_rr_get_interval_time64: u32 = 423; +pub const __NR_pidfd_send_signal: u32 = 424; +pub const __NR_io_uring_setup: u32 = 425; +pub const __NR_io_uring_enter: u32 = 426; +pub const __NR_io_uring_register: u32 = 427; +pub const __NR_open_tree: u32 = 428; +pub const __NR_move_mount: u32 = 429; +pub const __NR_fsopen: u32 = 430; +pub const __NR_fsconfig: u32 = 431; +pub const __NR_fsmount: u32 = 432; +pub const __NR_fspick: u32 = 433; +pub const __NR_pidfd_open: u32 = 434; +pub const __NR_clone3: u32 = 435; +pub const __NR_close_range: u32 = 436; +pub const __NR_openat2: u32 = 437; +pub const __NR_pidfd_getfd: u32 = 438; +pub const __NR_faccessat2: u32 = 439; +pub const __NR_process_madvise: u32 = 440; +pub const __NR_epoll_pwait2: u32 = 441; +pub const __NR_mount_setattr: u32 = 442; +pub const __NR_quotactl_fd: u32 = 443; +pub const __NR_landlock_create_ruleset: u32 = 444; +pub const __NR_landlock_add_rule: u32 = 445; +pub const __NR_landlock_restrict_self: u32 = 446; +pub const __NR_process_mrelease: u32 = 448; +pub const __NR_futex_waitv: u32 = 449; +pub const __NR_set_mempolicy_home_node: u32 = 450; +pub const __NR_cachestat: u32 = 451; +pub const __NR_fchmodat2: u32 = 452; +pub const __NR_map_shadow_stack: u32 = 453; +pub const __NR_futex_wake: u32 = 454; +pub const __NR_futex_wait: u32 = 455; +pub const __NR_futex_requeue: u32 = 456; +pub const __NR_statmount: u32 = 457; +pub const __NR_listmount: u32 = 458; +pub const __NR_lsm_get_self_attr: u32 = 459; +pub const __NR_lsm_set_self_attr: u32 = 460; +pub const __NR_lsm_list_modules: u32 = 461; +pub const __NR_mseal: u32 = 462; +pub const __NR_setxattrat: u32 = 463; +pub const __NR_getxattrat: u32 = 464; +pub const __NR_listxattrat: u32 = 465; +pub const __NR_removexattrat: u32 = 466; +pub const __NR_open_tree_attr: u32 = 467; +pub const __NR_file_getattr: u32 = 468; +pub const __NR_file_setattr: u32 = 469; +pub const __NR_sync_file_range2: u32 = 84; +pub const WNOHANG: u32 = 1; +pub const WUNTRACED: u32 = 2; +pub const WSTOPPED: u32 = 2; +pub const WEXITED: u32 = 4; +pub const WCONTINUED: u32 = 8; +pub const WNOWAIT: u32 = 16777216; +pub const __WNOTHREAD: u32 = 536870912; +pub const __WALL: u32 = 1073741824; +pub const __WCLONE: u32 = 2147483648; +pub const P_ALL: u32 = 0; +pub const P_PID: u32 = 1; +pub const P_PGID: u32 = 2; +pub const P_PIDFD: u32 = 3; +pub const XATTR_CREATE: u32 = 1; +pub const XATTR_REPLACE: u32 = 2; +pub const XATTR_OS2_PREFIX: &[u8; 5] = b"os2.\0"; +pub const XATTR_MAC_OSX_PREFIX: &[u8; 5] = b"osx.\0"; +pub const XATTR_BTRFS_PREFIX: &[u8; 7] = b"btrfs.\0"; +pub const XATTR_HURD_PREFIX: &[u8; 5] = b"gnu.\0"; +pub const XATTR_SECURITY_PREFIX: &[u8; 10] = b"security.\0"; +pub const XATTR_SYSTEM_PREFIX: &[u8; 8] = b"system.\0"; +pub const XATTR_TRUSTED_PREFIX: &[u8; 9] = b"trusted.\0"; +pub const XATTR_USER_PREFIX: &[u8; 6] = b"user.\0"; +pub const XATTR_EVM_SUFFIX: &[u8; 4] = b"evm\0"; +pub const XATTR_NAME_EVM: &[u8; 13] = b"security.evm\0"; +pub const XATTR_IMA_SUFFIX: &[u8; 4] = b"ima\0"; +pub const XATTR_NAME_IMA: &[u8; 13] = b"security.ima\0"; +pub const XATTR_SELINUX_SUFFIX: &[u8; 8] = b"selinux\0"; +pub const XATTR_NAME_SELINUX: &[u8; 17] = b"security.selinux\0"; +pub const XATTR_SMACK_SUFFIX: &[u8; 8] = b"SMACK64\0"; +pub const XATTR_SMACK_IPIN: &[u8; 12] = b"SMACK64IPIN\0"; +pub const XATTR_SMACK_IPOUT: &[u8; 13] = b"SMACK64IPOUT\0"; +pub const XATTR_SMACK_EXEC: &[u8; 12] = b"SMACK64EXEC\0"; +pub const XATTR_SMACK_TRANSMUTE: &[u8; 17] = b"SMACK64TRANSMUTE\0"; +pub const XATTR_SMACK_MMAP: &[u8; 12] = b"SMACK64MMAP\0"; +pub const XATTR_NAME_SMACK: &[u8; 17] = b"security.SMACK64\0"; +pub const XATTR_NAME_SMACKIPIN: &[u8; 21] = b"security.SMACK64IPIN\0"; +pub const XATTR_NAME_SMACKIPOUT: &[u8; 22] = b"security.SMACK64IPOUT\0"; +pub const XATTR_NAME_SMACKEXEC: &[u8; 21] = b"security.SMACK64EXEC\0"; +pub const XATTR_NAME_SMACKTRANSMUTE: &[u8; 26] = b"security.SMACK64TRANSMUTE\0"; +pub const XATTR_NAME_SMACKMMAP: &[u8; 21] = b"security.SMACK64MMAP\0"; +pub const XATTR_APPARMOR_SUFFIX: &[u8; 9] = b"apparmor\0"; +pub const XATTR_NAME_APPARMOR: &[u8; 18] = b"security.apparmor\0"; +pub const XATTR_CAPS_SUFFIX: &[u8; 11] = b"capability\0"; +pub const XATTR_NAME_CAPS: &[u8; 20] = b"security.capability\0"; +pub const XATTR_BPF_LSM_SUFFIX: &[u8; 5] = b"bpf.\0"; +pub const XATTR_NAME_BPF_LSM: &[u8; 14] = b"security.bpf.\0"; +pub const XATTR_POSIX_ACL_ACCESS: &[u8; 17] = b"posix_acl_access\0"; +pub const XATTR_NAME_POSIX_ACL_ACCESS: &[u8; 24] = b"system.posix_acl_access\0"; +pub const XATTR_POSIX_ACL_DEFAULT: &[u8; 18] = b"posix_acl_default\0"; +pub const XATTR_NAME_POSIX_ACL_DEFAULT: &[u8; 25] = b"system.posix_acl_default\0"; +pub const MFD_CLOEXEC: u32 = 1; +pub const MFD_ALLOW_SEALING: u32 = 2; +pub const MFD_HUGETLB: u32 = 4; +pub const MFD_NOEXEC_SEAL: u32 = 8; +pub const MFD_EXEC: u32 = 16; +pub const MFD_HUGE_SHIFT: u32 = 26; +pub const MFD_HUGE_MASK: u32 = 63; +pub const MFD_HUGE_64KB: u32 = 1073741824; +pub const MFD_HUGE_512KB: u32 = 1275068416; +pub const MFD_HUGE_1MB: u32 = 1342177280; +pub const MFD_HUGE_2MB: u32 = 1409286144; +pub const MFD_HUGE_8MB: u32 = 1543503872; +pub const MFD_HUGE_16MB: u32 = 1610612736; +pub const MFD_HUGE_32MB: u32 = 1677721600; +pub const MFD_HUGE_256MB: u32 = 1879048192; +pub const MFD_HUGE_512MB: u32 = 1946157056; +pub const MFD_HUGE_1GB: u32 = 2013265920; +pub const MFD_HUGE_2GB: u32 = 2080374784; +pub const MFD_HUGE_16GB: u32 = 2281701376; +pub const TFD_TIMER_ABSTIME: u32 = 1; +pub const TFD_TIMER_CANCEL_ON_SET: u32 = 2; +pub const TFD_CLOEXEC: u32 = 524288; +pub const TFD_NONBLOCK: u32 = 2048; +pub const USERFAULTFD_IOC: u32 = 170; +pub const _UFFDIO_REGISTER: u32 = 0; +pub const _UFFDIO_UNREGISTER: u32 = 1; +pub const _UFFDIO_WAKE: u32 = 2; +pub const _UFFDIO_COPY: u32 = 3; +pub const _UFFDIO_ZEROPAGE: u32 = 4; +pub const _UFFDIO_MOVE: u32 = 5; +pub const _UFFDIO_WRITEPROTECT: u32 = 6; +pub const _UFFDIO_CONTINUE: u32 = 7; +pub const _UFFDIO_POISON: u32 = 8; +pub const _UFFDIO_API: u32 = 63; +pub const UFFDIO: u32 = 170; +pub const UFFD_EVENT_PAGEFAULT: u32 = 18; +pub const UFFD_EVENT_FORK: u32 = 19; +pub const UFFD_EVENT_REMAP: u32 = 20; +pub const UFFD_EVENT_REMOVE: u32 = 21; +pub const UFFD_EVENT_UNMAP: u32 = 22; +pub const UFFD_PAGEFAULT_FLAG_WRITE: u32 = 1; +pub const UFFD_PAGEFAULT_FLAG_WP: u32 = 2; +pub const UFFD_PAGEFAULT_FLAG_MINOR: u32 = 4; +pub const UFFD_FEATURE_PAGEFAULT_FLAG_WP: u32 = 1; +pub const UFFD_FEATURE_EVENT_FORK: u32 = 2; +pub const UFFD_FEATURE_EVENT_REMAP: u32 = 4; +pub const UFFD_FEATURE_EVENT_REMOVE: u32 = 8; +pub const UFFD_FEATURE_MISSING_HUGETLBFS: u32 = 16; +pub const UFFD_FEATURE_MISSING_SHMEM: u32 = 32; +pub const UFFD_FEATURE_EVENT_UNMAP: u32 = 64; +pub const UFFD_FEATURE_SIGBUS: u32 = 128; +pub const UFFD_FEATURE_THREAD_ID: u32 = 256; +pub const UFFD_FEATURE_MINOR_HUGETLBFS: u32 = 512; +pub const UFFD_FEATURE_MINOR_SHMEM: u32 = 1024; +pub const UFFD_FEATURE_EXACT_ADDRESS: u32 = 2048; +pub const UFFD_FEATURE_WP_HUGETLBFS_SHMEM: u32 = 4096; +pub const UFFD_FEATURE_WP_UNPOPULATED: u32 = 8192; +pub const UFFD_FEATURE_POISON: u32 = 16384; +pub const UFFD_FEATURE_WP_ASYNC: u32 = 32768; +pub const UFFD_FEATURE_MOVE: u32 = 65536; +pub const UFFD_USER_MODE_ONLY: u32 = 1; +pub const DT_UNKNOWN: u32 = 0; +pub const DT_FIFO: u32 = 1; +pub const DT_CHR: u32 = 2; +pub const DT_DIR: u32 = 4; +pub const DT_BLK: u32 = 6; +pub const DT_REG: u32 = 8; +pub const DT_LNK: u32 = 10; +pub const DT_SOCK: u32 = 12; +pub const STAT_HAVE_NSEC: u32 = 1; +pub const F_OK: u32 = 0; +pub const R_OK: u32 = 4; +pub const W_OK: u32 = 2; +pub const X_OK: u32 = 1; +pub const UTIME_NOW: u32 = 1073741823; +pub const UTIME_OMIT: u32 = 1073741822; +pub const MNT_FORCE: u32 = 1; +pub const MNT_DETACH: u32 = 2; +pub const MNT_EXPIRE: u32 = 4; +pub const UMOUNT_NOFOLLOW: u32 = 8; +pub const UMOUNT_UNUSED: u32 = 2147483648; +pub const STDIN_FILENO: u32 = 0; +pub const STDOUT_FILENO: u32 = 1; +pub const STDERR_FILENO: u32 = 2; +pub const RWF_HIPRI: u32 = 1; +pub const RWF_DSYNC: u32 = 2; +pub const RWF_SYNC: u32 = 4; +pub const RWF_NOWAIT: u32 = 8; +pub const RWF_APPEND: u32 = 16; +pub const EFD_SEMAPHORE: u32 = 1; +pub const EFD_CLOEXEC: u32 = 524288; +pub const EFD_NONBLOCK: u32 = 2048; +pub const EPOLLIN: u32 = 1; +pub const EPOLLPRI: u32 = 2; +pub const EPOLLOUT: u32 = 4; +pub const EPOLLERR: u32 = 8; +pub const EPOLLHUP: u32 = 16; +pub const EPOLLNVAL: u32 = 32; +pub const EPOLLRDNORM: u32 = 64; +pub const EPOLLRDBAND: u32 = 128; +pub const EPOLLWRNORM: u32 = 256; +pub const EPOLLWRBAND: u32 = 512; +pub const EPOLLMSG: u32 = 1024; +pub const EPOLLRDHUP: u32 = 8192; +pub const EPOLLEXCLUSIVE: u32 = 268435456; +pub const EPOLLWAKEUP: u32 = 536870912; +pub const EPOLLONESHOT: u32 = 1073741824; +pub const EPOLLET: u32 = 2147483648; +pub const TFD_SHARED_FCNTL_FLAGS: u32 = 526336; +pub const TFD_CREATE_FLAGS: u32 = 526336; +pub const TFD_SETTIME_FLAGS: u32 = 1; +pub const UFFD_API: u32 = 170; +pub const UFFDIO_REGISTER_MODE_MISSING: u32 = 1; +pub const UFFDIO_REGISTER_MODE_WP: u32 = 2; +pub const UFFDIO_REGISTER_MODE_MINOR: u32 = 4; +pub const UFFDIO_COPY_MODE_DONTWAKE: u32 = 1; +pub const UFFDIO_COPY_MODE_WP: u32 = 2; +pub const UFFDIO_ZEROPAGE_MODE_DONTWAKE: u32 = 1; +pub const SPLICE_F_MOVE: u32 = 1; +pub const SPLICE_F_NONBLOCK: u32 = 2; +pub const SPLICE_F_MORE: u32 = 4; +pub const SPLICE_F_GIFT: u32 = 8; +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum fsconfig_command { +FSCONFIG_SET_FLAG = 0, +FSCONFIG_SET_STRING = 1, +FSCONFIG_SET_BINARY = 2, +FSCONFIG_SET_PATH = 3, +FSCONFIG_SET_PATH_EMPTY = 4, +FSCONFIG_SET_FD = 5, +FSCONFIG_CMD_CREATE = 6, +FSCONFIG_CMD_RECONFIGURE = 7, +FSCONFIG_CMD_CREATE_EXCL = 8, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum procfs_ino { +PROCFS_ROOT_INO = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum procmap_query_flags { +PROCMAP_QUERY_VMA_READABLE = 1, +PROCMAP_QUERY_VMA_WRITABLE = 2, +PROCMAP_QUERY_VMA_EXECUTABLE = 4, +PROCMAP_QUERY_VMA_SHARED = 8, +PROCMAP_QUERY_COVERING_OR_NEXT_VMA = 16, +PROCMAP_QUERY_FILE_BACKED_VMA = 32, +} +#[repr(u16)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum membarrier_cmd { +MEMBARRIER_CMD_QUERY = 0, +MEMBARRIER_CMD_GLOBAL = 1, +MEMBARRIER_CMD_GLOBAL_EXPEDITED = 2, +MEMBARRIER_CMD_REGISTER_GLOBAL_EXPEDITED = 4, +MEMBARRIER_CMD_PRIVATE_EXPEDITED = 8, +MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED = 16, +MEMBARRIER_CMD_PRIVATE_EXPEDITED_SYNC_CORE = 32, +MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_SYNC_CORE = 64, +MEMBARRIER_CMD_PRIVATE_EXPEDITED_RSEQ = 128, +MEMBARRIER_CMD_REGISTER_PRIVATE_EXPEDITED_RSEQ = 256, +MEMBARRIER_CMD_GET_REGISTRATIONS = 512, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum membarrier_cmd_flag { +MEMBARRIER_CMD_FLAG_CPU = 1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union fscrypt_get_policy_ex_arg__bindgen_ty_1 { +pub version: __u8, +pub v1: fscrypt_policy_v1, +pub v2: fscrypt_policy_v2, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union fscrypt_key_specifier__bindgen_ty_1 { +pub __reserved: [__u8; 32usize], +pub descriptor: [__u8; 8usize], +pub identifier: [__u8; 16usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union sigval { +pub sival_int: crate::ctypes::c_int, +pub sival_ptr: *mut crate::ctypes::c_void, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union __sifields { +pub _kill: __sifields__bindgen_ty_1, +pub _timer: __sifields__bindgen_ty_2, +pub _rt: __sifields__bindgen_ty_3, +pub _sigchld: __sifields__bindgen_ty_4, +pub _sigfault: __sifields__bindgen_ty_5, +pub _sigpoll: __sifields__bindgen_ty_6, +pub _sigsys: __sifields__bindgen_ty_7, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union __sifields__bindgen_ty_5__bindgen_ty_1 { +pub _trapno: crate::ctypes::c_int, +pub _addr_lsb: crate::ctypes::c_short, +pub _addr_bnd: __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_1, +pub _addr_pkey: __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_2, +pub _perf: __sifields__bindgen_ty_5__bindgen_ty_1__bindgen_ty_3, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union siginfo__bindgen_ty_1 { +pub __bindgen_anon_1: siginfo__bindgen_ty_1__bindgen_ty_1, +pub _si_pad: [crate::ctypes::c_int; 32usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union sigevent__bindgen_ty_1 { +pub _pad: [crate::ctypes::c_int; 13usize], +pub _tid: crate::ctypes::c_int, +pub _sigev_thread: sigevent__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union uffd_msg__bindgen_ty_1 { +pub pagefault: uffd_msg__bindgen_ty_1__bindgen_ty_1, +pub fork: uffd_msg__bindgen_ty_1__bindgen_ty_2, +pub remap: uffd_msg__bindgen_ty_1__bindgen_ty_3, +pub remove: uffd_msg__bindgen_ty_1__bindgen_ty_4, +pub reserved: uffd_msg__bindgen_ty_1__bindgen_ty_5, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union uffd_msg__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 { +pub ptid: __u32, +} +impl __BindgenBitfieldUnit { +#[inline] +pub const fn new(storage: Storage) -> Self { +Self { storage } +} +} +impl __BindgenBitfieldUnit +where +Storage: AsRef<[u8]> + AsMut<[u8]>, +{ +#[inline] +fn extract_bit(byte: u8, index: usize) -> bool { +let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 }; +let mask = 1 << bit_index; +byte & mask == mask +} +#[inline] +pub fn get_bit(&self, index: usize) -> bool { +debug_assert!(index / 8 < self.storage.as_ref().len()); +let byte_index = index / 8; +let byte = self.storage.as_ref()[byte_index]; +Self::extract_bit(byte, index) +} +#[inline] +pub unsafe fn raw_get_bit(this: *const Self, index: usize) -> bool { +debug_assert!(index / 8 < core::mem::size_of::()); +let byte_index = index / 8; +let byte = unsafe { *(core::ptr::addr_of!((*this).storage) as *const u8).offset(byte_index as isize) }; +Self::extract_bit(byte, index) +} +#[inline] +fn change_bit(byte: u8, index: usize, val: bool) -> u8 { +let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 }; +let mask = 1 << bit_index; +if val { +byte | mask +} else { +byte & !mask +} +} +#[inline] +pub fn set_bit(&mut self, index: usize, val: bool) { +debug_assert!(index / 8 < self.storage.as_ref().len()); +let byte_index = index / 8; +let byte = &mut self.storage.as_mut()[byte_index]; +*byte = Self::change_bit(*byte, index, val); +} +#[inline] +pub unsafe fn raw_set_bit(this: *mut Self, index: usize, val: bool) { +debug_assert!(index / 8 < core::mem::size_of::()); +let byte_index = index / 8; +let byte = unsafe { (core::ptr::addr_of_mut!((*this).storage) as *mut u8).offset(byte_index as isize) }; +unsafe { *byte = Self::change_bit(*byte, index, val) }; +} +#[inline] +pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 { +debug_assert!(bit_width <= 64); +debug_assert!(bit_offset / 8 < self.storage.as_ref().len()); +debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len()); +let mut val = 0; +for i in 0..(bit_width as usize) { +if self.get_bit(i + bit_offset) { +let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i }; +val |= 1 << index; +} +} +val +} +#[inline] +pub unsafe fn raw_get(this: *const Self, bit_offset: usize, bit_width: u8) -> u64 { +debug_assert!(bit_width <= 64); +debug_assert!(bit_offset / 8 < core::mem::size_of::()); +debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::()); +let mut val = 0; +for i in 0..(bit_width as usize) { +if unsafe { Self::raw_get_bit(this, i + bit_offset) } { +let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i }; +val |= 1 << index; +} +} +val +} +#[inline] +pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) { +debug_assert!(bit_width <= 64); +debug_assert!(bit_offset / 8 < self.storage.as_ref().len()); +debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len()); +for i in 0..(bit_width as usize) { +let mask = 1 << i; +let val_bit_is_set = val & mask == mask; +let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i }; +self.set_bit(index + bit_offset, val_bit_is_set); +} +} +#[inline] +pub unsafe fn raw_set(this: *mut Self, bit_offset: usize, bit_width: u8, val: u64) { +debug_assert!(bit_width <= 64); +debug_assert!(bit_offset / 8 < core::mem::size_of::()); +debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::()); +for i in 0..(bit_width as usize) { +let mask = 1 << i; +let val_bit_is_set = val & mask == mask; +let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i }; +unsafe { Self::raw_set_bit(this, index + bit_offset, val_bit_is_set) }; +} +} +} +impl Default for __BindgenOpaqueArray { +fn default() -> Self { +Self([::default(); N]) +} +} +impl __IncompleteArrayField { +#[inline] +pub const fn new() -> Self { +__IncompleteArrayField(::core::marker::PhantomData, []) +} +#[inline] +pub fn as_ptr(&self) -> *const T { +self as *const _ as *const T +} +#[inline] +pub fn as_mut_ptr(&mut self) -> *mut T { +self as *mut _ as *mut T +} +#[inline] +pub unsafe fn as_slice(&self, len: usize) -> &[T] { +::core::slice::from_raw_parts(self.as_ptr(), len) +} +#[inline] +pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { +::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len) +} +} +impl ::core::fmt::Debug for __IncompleteArrayField { +fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { +fmt.write_str("__IncompleteArrayField") +} +} +impl membarrier_cmd { +pub const MEMBARRIER_CMD_SHARED: membarrier_cmd = membarrier_cmd::MEMBARRIER_CMD_GLOBAL; +} +impl user_desc { +#[inline] +pub fn seg_32bit(&self) -> crate::ctypes::c_uint { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) } +} +#[inline] +pub fn set_seg_32bit(&mut self, val: crate::ctypes::c_uint) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn seg_32bit_raw(this: *const Self) -> crate::ctypes::c_uint { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_seg_32bit_raw(this: *mut Self, val: crate::ctypes::c_uint) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] +pub fn contents(&self) -> crate::ctypes::c_uint { +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 2u8) as u32) } +} +#[inline] +pub fn set_contents(&mut self, val: crate::ctypes::c_uint) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(1usize, 2u8, val as u64) +} +} +#[inline] +pub unsafe fn contents_raw(this: *const Self) -> crate::ctypes::c_uint { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 2u8) as u32) } +} +#[inline] +pub unsafe fn set_contents_raw(this: *mut Self, val: crate::ctypes::c_uint) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 2u8, val as u64) +} +} +#[inline] +pub fn read_exec_only(&self) -> crate::ctypes::c_uint { +unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) } +} +#[inline] +pub fn set_read_exec_only(&mut self, val: crate::ctypes::c_uint) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(3usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn read_exec_only_raw(this: *const Self) -> crate::ctypes::c_uint { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 3usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_read_exec_only_raw(this: *mut Self, val: crate::ctypes::c_uint) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 3usize, 1u8, val as u64) +} +} +#[inline] +pub fn limit_in_pages(&self) -> crate::ctypes::c_uint { +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) } +} +#[inline] +pub fn set_limit_in_pages(&mut self, val: crate::ctypes::c_uint) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(4usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn limit_in_pages_raw(this: *const Self) -> crate::ctypes::c_uint { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_limit_in_pages_raw(this: *mut Self, val: crate::ctypes::c_uint) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 1u8, val as u64) +} +} +#[inline] +pub fn seg_not_present(&self) -> crate::ctypes::c_uint { +unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 1u8) as u32) } +} +#[inline] +pub fn set_seg_not_present(&mut self, val: crate::ctypes::c_uint) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(5usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn seg_not_present_raw(this: *const Self) -> crate::ctypes::c_uint { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 5usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_seg_not_present_raw(this: *mut Self, val: crate::ctypes::c_uint) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 5usize, 1u8, val as u64) +} +} +#[inline] +pub fn useable(&self) -> crate::ctypes::c_uint { +unsafe { ::core::mem::transmute(self._bitfield_1.get(6usize, 1u8) as u32) } +} +#[inline] +pub fn set_useable(&mut self, val: crate::ctypes::c_uint) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(6usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn useable_raw(this: *const Self) -> crate::ctypes::c_uint { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 6usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_useable_raw(this: *mut Self, val: crate::ctypes::c_uint) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 6usize, 1u8, val as u64) +} +} +#[inline] +pub fn new_bitfield_1(seg_32bit: crate::ctypes::c_uint, contents: crate::ctypes::c_uint, read_exec_only: crate::ctypes::c_uint, limit_in_pages: crate::ctypes::c_uint, seg_not_present: crate::ctypes::c_uint, useable: crate::ctypes::c_uint) -> __BindgenBitfieldUnit<[u8; 1usize]> { +let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); +__bindgen_bitfield_unit.set(0usize, 1u8, { +let seg_32bit: u32 = unsafe { ::core::mem::transmute(seg_32bit) }; +seg_32bit as u64 +}); +__bindgen_bitfield_unit.set(1usize, 2u8, { +let contents: u32 = unsafe { ::core::mem::transmute(contents) }; +contents as u64 +}); +__bindgen_bitfield_unit.set(3usize, 1u8, { +let read_exec_only: u32 = unsafe { ::core::mem::transmute(read_exec_only) }; +read_exec_only as u64 +}); +__bindgen_bitfield_unit.set(4usize, 1u8, { +let limit_in_pages: u32 = unsafe { ::core::mem::transmute(limit_in_pages) }; +limit_in_pages as u64 +}); +__bindgen_bitfield_unit.set(5usize, 1u8, { +let seg_not_present: u32 = unsafe { ::core::mem::transmute(seg_not_present) }; +seg_not_present as u64 +}); +__bindgen_bitfield_unit.set(6usize, 1u8, { +let useable: u32 = unsafe { ::core::mem::transmute(useable) }; +useable as u64 +}); +__bindgen_bitfield_unit +} +} +unsafe extern "C" { +pub static mut __rt_sigtramp_template: [crate::ctypes::c_ulong; 2usize]; +} +unsafe extern "C" { +pub fn do_signal(regs: *mut __BindgenOpaqueArray); +} diff --git a/src/hexagon/if_arp.rs b/src/hexagon/if_arp.rs new file mode 100644 index 00000000..c6df1361 --- /dev/null +++ b/src/hexagon/if_arp.rs @@ -0,0 +1,2793 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +pub type __kernel_sa_family_t = crate::ctypes::c_ushort; +#[repr(C)] +#[derive(Copy, Clone)] +pub struct __kernel_sockaddr_storage { +pub __bindgen_anon_1: __kernel_sockaddr_storage__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1 { +pub ss_family: __kernel_sa_family_t, +pub __data: [crate::ctypes::c_char; 126usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct sockaddr { +pub __storage: __kernel_sockaddr_storage, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sync_serial_settings { +pub clock_rate: crate::ctypes::c_uint, +pub clock_type: crate::ctypes::c_uint, +pub loopback: crate::ctypes::c_ushort, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct te1_settings { +pub clock_rate: crate::ctypes::c_uint, +pub clock_type: crate::ctypes::c_uint, +pub loopback: crate::ctypes::c_ushort, +pub slot_map: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct raw_hdlc_proto { +pub encoding: crate::ctypes::c_ushort, +pub parity: crate::ctypes::c_ushort, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fr_proto { +pub t391: crate::ctypes::c_uint, +pub t392: crate::ctypes::c_uint, +pub n391: crate::ctypes::c_uint, +pub n392: crate::ctypes::c_uint, +pub n393: crate::ctypes::c_uint, +pub lmi: crate::ctypes::c_ushort, +pub dce: crate::ctypes::c_ushort, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fr_proto_pvc { +pub dlci: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fr_proto_pvc_info { +pub dlci: crate::ctypes::c_uint, +pub master: [crate::ctypes::c_char; 16usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct cisco_proto { +pub interval: crate::ctypes::c_uint, +pub timeout: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct x25_hdlc_proto { +pub dce: crate::ctypes::c_ushort, +pub modulo: crate::ctypes::c_uint, +pub window: crate::ctypes::c_uint, +pub t1: crate::ctypes::c_uint, +pub t2: crate::ctypes::c_uint, +pub n2: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifmap { +pub mem_start: crate::ctypes::c_ulong, +pub mem_end: crate::ctypes::c_ulong, +pub base_addr: crate::ctypes::c_ushort, +pub irq: crate::ctypes::c_uchar, +pub dma: crate::ctypes::c_uchar, +pub port: crate::ctypes::c_uchar, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct if_settings { +pub type_: crate::ctypes::c_uint, +pub size: crate::ctypes::c_uint, +pub ifs_ifsu: if_settings__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ifreq { +pub ifr_ifrn: ifreq__bindgen_ty_1, +pub ifr_ifru: ifreq__bindgen_ty_2, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ifconf { +pub ifc_len: crate::ctypes::c_int, +pub ifc_ifcu: ifconf__bindgen_ty_1, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct ethhdr { +pub h_dest: [crate::ctypes::c_uchar; 6usize], +pub h_source: [crate::ctypes::c_uchar; 6usize], +pub h_proto: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_pkt { +pub spkt_family: crate::ctypes::c_ushort, +pub spkt_device: [crate::ctypes::c_uchar; 14usize], +pub spkt_protocol: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_ll { +pub sll_family: crate::ctypes::c_ushort, +pub sll_protocol: __be16, +pub sll_ifindex: crate::ctypes::c_int, +pub sll_hatype: crate::ctypes::c_ushort, +pub sll_pkttype: crate::ctypes::c_uchar, +pub sll_halen: crate::ctypes::c_uchar, +pub sll_addr: [crate::ctypes::c_uchar; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_stats { +pub tp_packets: crate::ctypes::c_uint, +pub tp_drops: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_stats_v3 { +pub tp_packets: crate::ctypes::c_uint, +pub tp_drops: crate::ctypes::c_uint, +pub tp_freeze_q_cnt: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_rollover_stats { +pub tp_all: __u64, +pub tp_huge: __u64, +pub tp_failed: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_auxdata { +pub tp_status: __u32, +pub tp_len: __u32, +pub tp_snaplen: __u32, +pub tp_mac: __u16, +pub tp_net: __u16, +pub tp_vlan_tci: __u16, +pub tp_vlan_tpid: __u16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_hdr { +pub tp_status: crate::ctypes::c_ulong, +pub tp_len: crate::ctypes::c_uint, +pub tp_snaplen: crate::ctypes::c_uint, +pub tp_mac: crate::ctypes::c_ushort, +pub tp_net: crate::ctypes::c_ushort, +pub tp_sec: crate::ctypes::c_uint, +pub tp_usec: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket2_hdr { +pub tp_status: __u32, +pub tp_len: __u32, +pub tp_snaplen: __u32, +pub tp_mac: __u16, +pub tp_net: __u16, +pub tp_sec: __u32, +pub tp_nsec: __u32, +pub tp_vlan_tci: __u16, +pub tp_vlan_tpid: __u16, +pub tp_padding: [__u8; 4usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_hdr_variant1 { +pub tp_rxhash: __u32, +pub tp_vlan_tci: __u32, +pub tp_vlan_tpid: __u16, +pub tp_padding: __u16, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tpacket3_hdr { +pub tp_next_offset: __u32, +pub tp_sec: __u32, +pub tp_nsec: __u32, +pub tp_snaplen: __u32, +pub tp_len: __u32, +pub tp_status: __u32, +pub tp_mac: __u16, +pub tp_net: __u16, +pub __bindgen_anon_1: tpacket3_hdr__bindgen_ty_1, +pub tp_padding: [__u8; 8usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tpacket_bd_ts { +pub ts_sec: crate::ctypes::c_uint, +pub __bindgen_anon_1: tpacket_bd_ts__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tpacket_hdr_v1 { +pub block_status: __u32, +pub num_pkts: __u32, +pub offset_to_first_pkt: __u32, +pub blk_len: __u32, +pub seq_num: __u64, +pub ts_first_pkt: tpacket_bd_ts, +pub ts_last_pkt: tpacket_bd_ts, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tpacket_block_desc { +pub version: __u32, +pub offset_to_priv: __u32, +pub hdr: tpacket_bd_header_u, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_req { +pub tp_block_size: crate::ctypes::c_uint, +pub tp_block_nr: crate::ctypes::c_uint, +pub tp_frame_size: crate::ctypes::c_uint, +pub tp_frame_nr: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_req3 { +pub tp_block_size: crate::ctypes::c_uint, +pub tp_block_nr: crate::ctypes::c_uint, +pub tp_frame_size: crate::ctypes::c_uint, +pub tp_frame_nr: crate::ctypes::c_uint, +pub tp_retire_blk_tov: crate::ctypes::c_uint, +pub tp_sizeof_priv: crate::ctypes::c_uint, +pub tp_feature_req_word: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct packet_mreq { +pub mr_ifindex: crate::ctypes::c_int, +pub mr_type: crate::ctypes::c_ushort, +pub mr_alen: crate::ctypes::c_ushort, +pub mr_address: [crate::ctypes::c_uchar; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fanout_args { +pub id: __u16, +pub type_flags: __u16, +pub max_num_members: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_nl { +pub nl_family: __kernel_sa_family_t, +pub nl_pad: crate::ctypes::c_ushort, +pub nl_pid: __u32, +pub nl_groups: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nlmsghdr { +pub nlmsg_len: __u32, +pub nlmsg_type: __u16, +pub nlmsg_flags: __u16, +pub nlmsg_seq: __u32, +pub nlmsg_pid: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nlmsgerr { +pub error: crate::ctypes::c_int, +pub msg: nlmsghdr, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nl_pktinfo { +pub group: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nl_mmap_req { +pub nm_block_size: crate::ctypes::c_uint, +pub nm_block_nr: crate::ctypes::c_uint, +pub nm_frame_size: crate::ctypes::c_uint, +pub nm_frame_nr: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nl_mmap_hdr { +pub nm_status: crate::ctypes::c_uint, +pub nm_len: crate::ctypes::c_uint, +pub nm_group: __u32, +pub nm_pid: __u32, +pub nm_uid: __u32, +pub nm_gid: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nlattr { +pub nla_len: __u16, +pub nla_type: __u16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nla_bitfield32 { +pub value: __u32, +pub selector: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rtnl_link_stats { +pub rx_packets: __u32, +pub tx_packets: __u32, +pub rx_bytes: __u32, +pub tx_bytes: __u32, +pub rx_errors: __u32, +pub tx_errors: __u32, +pub rx_dropped: __u32, +pub tx_dropped: __u32, +pub multicast: __u32, +pub collisions: __u32, +pub rx_length_errors: __u32, +pub rx_over_errors: __u32, +pub rx_crc_errors: __u32, +pub rx_frame_errors: __u32, +pub rx_fifo_errors: __u32, +pub rx_missed_errors: __u32, +pub tx_aborted_errors: __u32, +pub tx_carrier_errors: __u32, +pub tx_fifo_errors: __u32, +pub tx_heartbeat_errors: __u32, +pub tx_window_errors: __u32, +pub rx_compressed: __u32, +pub tx_compressed: __u32, +pub rx_nohandler: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rtnl_link_stats64 { +pub rx_packets: __u64, +pub tx_packets: __u64, +pub rx_bytes: __u64, +pub tx_bytes: __u64, +pub rx_errors: __u64, +pub tx_errors: __u64, +pub rx_dropped: __u64, +pub tx_dropped: __u64, +pub multicast: __u64, +pub collisions: __u64, +pub rx_length_errors: __u64, +pub rx_over_errors: __u64, +pub rx_crc_errors: __u64, +pub rx_frame_errors: __u64, +pub rx_fifo_errors: __u64, +pub rx_missed_errors: __u64, +pub tx_aborted_errors: __u64, +pub tx_carrier_errors: __u64, +pub tx_fifo_errors: __u64, +pub tx_heartbeat_errors: __u64, +pub tx_window_errors: __u64, +pub rx_compressed: __u64, +pub tx_compressed: __u64, +pub rx_nohandler: __u64, +pub rx_otherhost_dropped: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rtnl_hw_stats64 { +pub rx_packets: __u64, +pub tx_packets: __u64, +pub rx_bytes: __u64, +pub tx_bytes: __u64, +pub rx_errors: __u64, +pub tx_errors: __u64, +pub rx_dropped: __u64, +pub tx_dropped: __u64, +pub multicast: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rtnl_link_ifmap { +pub mem_start: __u64, +pub mem_end: __u64, +pub base_addr: __u64, +pub irq: __u16, +pub dma: __u8, +pub port: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_bridge_id { +pub prio: [__u8; 2usize], +pub addr: [__u8; 6usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_cacheinfo { +pub max_reasm_len: __u32, +pub tstamp: __u32, +pub reachable_time: __u32, +pub retrans_time: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vlan_flags { +pub flags: __u32, +pub mask: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vlan_qos_mapping { +pub from: __u32, +pub to: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tunnel_msg { +pub family: __u8, +pub flags: __u8, +pub reserved2: __u16, +pub ifindex: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vxlan_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_mac { +pub vf: __u32, +pub mac: [__u8; 32usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_broadcast { +pub broadcast: [__u8; 32usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_vlan { +pub vf: __u32, +pub vlan: __u32, +pub qos: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_vlan_info { +pub vf: __u32, +pub vlan: __u32, +pub qos: __u32, +pub vlan_proto: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_tx_rate { +pub vf: __u32, +pub rate: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_rate { +pub vf: __u32, +pub min_tx_rate: __u32, +pub max_tx_rate: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_spoofchk { +pub vf: __u32, +pub setting: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_guid { +pub vf: __u32, +pub guid: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_link_state { +pub vf: __u32, +pub link_state: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_rss_query_en { +pub vf: __u32, +pub setting: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_trust { +pub vf: __u32, +pub setting: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_port_vsi { +pub vsi_mgr_id: __u8, +pub vsi_type_id: [__u8; 3usize], +pub vsi_type_version: __u8, +pub pad: [__u8; 3usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct if_stats_msg { +pub family: __u8, +pub pad1: __u8, +pub pad2: __u16, +pub ifindex: __u32, +pub filter_mask: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_rmnet_flags { +pub flags: __u32, +pub mask: __u32, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct arpreq { +pub arp_pa: sockaddr, +pub arp_ha: sockaddr, +pub arp_flags: crate::ctypes::c_int, +pub arp_netmask: sockaddr, +pub arp_dev: [crate::ctypes::c_char; 16usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct arpreq_old { +pub arp_pa: sockaddr, +pub arp_ha: sockaddr, +pub arp_flags: crate::ctypes::c_int, +pub arp_netmask: sockaddr, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct arphdr { +pub ar_hrd: __be16, +pub ar_pro: __be16, +pub ar_hln: crate::ctypes::c_uchar, +pub ar_pln: crate::ctypes::c_uchar, +pub ar_op: __be16, +} +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const _K_SS_MAXSIZE: u32 = 128; +pub const SOCK_SNDBUF_LOCK: u32 = 1; +pub const SOCK_RCVBUF_LOCK: u32 = 2; +pub const SOCK_BUF_LOCK_MASK: u32 = 3; +pub const SOCK_TXREHASH_DEFAULT: u32 = 255; +pub const SOCK_TXREHASH_DISABLED: u32 = 0; +pub const SOCK_TXREHASH_ENABLED: u32 = 1; +pub const IFNAMSIZ: u32 = 16; +pub const IFALIASZ: u32 = 256; +pub const ALTIFNAMSIZ: u32 = 128; +pub const GENERIC_HDLC_VERSION: u32 = 4; +pub const CLOCK_DEFAULT: u32 = 0; +pub const CLOCK_EXT: u32 = 1; +pub const CLOCK_INT: u32 = 2; +pub const CLOCK_TXINT: u32 = 3; +pub const CLOCK_TXFROMRX: u32 = 4; +pub const ENCODING_DEFAULT: u32 = 0; +pub const ENCODING_NRZ: u32 = 1; +pub const ENCODING_NRZI: u32 = 2; +pub const ENCODING_FM_MARK: u32 = 3; +pub const ENCODING_FM_SPACE: u32 = 4; +pub const ENCODING_MANCHESTER: u32 = 5; +pub const PARITY_DEFAULT: u32 = 0; +pub const PARITY_NONE: u32 = 1; +pub const PARITY_CRC16_PR0: u32 = 2; +pub const PARITY_CRC16_PR1: u32 = 3; +pub const PARITY_CRC16_PR0_CCITT: u32 = 4; +pub const PARITY_CRC16_PR1_CCITT: u32 = 5; +pub const PARITY_CRC32_PR0_CCITT: u32 = 6; +pub const PARITY_CRC32_PR1_CCITT: u32 = 7; +pub const LMI_DEFAULT: u32 = 0; +pub const LMI_NONE: u32 = 1; +pub const LMI_ANSI: u32 = 2; +pub const LMI_CCITT: u32 = 3; +pub const LMI_CISCO: u32 = 4; +pub const IF_GET_IFACE: u32 = 1; +pub const IF_GET_PROTO: u32 = 2; +pub const IF_IFACE_V35: u32 = 4096; +pub const IF_IFACE_V24: u32 = 4097; +pub const IF_IFACE_X21: u32 = 4098; +pub const IF_IFACE_T1: u32 = 4099; +pub const IF_IFACE_E1: u32 = 4100; +pub const IF_IFACE_SYNC_SERIAL: u32 = 4101; +pub const IF_IFACE_X21D: u32 = 4102; +pub const IF_PROTO_HDLC: u32 = 8192; +pub const IF_PROTO_PPP: u32 = 8193; +pub const IF_PROTO_CISCO: u32 = 8194; +pub const IF_PROTO_FR: u32 = 8195; +pub const IF_PROTO_FR_ADD_PVC: u32 = 8196; +pub const IF_PROTO_FR_DEL_PVC: u32 = 8197; +pub const IF_PROTO_X25: u32 = 8198; +pub const IF_PROTO_HDLC_ETH: u32 = 8199; +pub const IF_PROTO_FR_ADD_ETH_PVC: u32 = 8200; +pub const IF_PROTO_FR_DEL_ETH_PVC: u32 = 8201; +pub const IF_PROTO_FR_PVC: u32 = 8202; +pub const IF_PROTO_FR_ETH_PVC: u32 = 8203; +pub const IF_PROTO_RAW: u32 = 8204; +pub const IFHWADDRLEN: u32 = 6; +pub const ETH_ALEN: u32 = 6; +pub const ETH_TLEN: u32 = 2; +pub const ETH_HLEN: u32 = 14; +pub const ETH_ZLEN: u32 = 60; +pub const ETH_DATA_LEN: u32 = 1500; +pub const ETH_FRAME_LEN: u32 = 1514; +pub const ETH_FCS_LEN: u32 = 4; +pub const ETH_MIN_MTU: u32 = 68; +pub const ETH_MAX_MTU: u32 = 65535; +pub const ETH_P_LOOP: u32 = 96; +pub const ETH_P_PUP: u32 = 512; +pub const ETH_P_PUPAT: u32 = 513; +pub const ETH_P_TSN: u32 = 8944; +pub const ETH_P_ERSPAN2: u32 = 8939; +pub const ETH_P_IP: u32 = 2048; +pub const ETH_P_X25: u32 = 2053; +pub const ETH_P_ARP: u32 = 2054; +pub const ETH_P_BPQ: u32 = 2303; +pub const ETH_P_IEEEPUP: u32 = 2560; +pub const ETH_P_IEEEPUPAT: u32 = 2561; +pub const ETH_P_BATMAN: u32 = 17157; +pub const ETH_P_DEC: u32 = 24576; +pub const ETH_P_DNA_DL: u32 = 24577; +pub const ETH_P_DNA_RC: u32 = 24578; +pub const ETH_P_DNA_RT: u32 = 24579; +pub const ETH_P_LAT: u32 = 24580; +pub const ETH_P_DIAG: u32 = 24581; +pub const ETH_P_CUST: u32 = 24582; +pub const ETH_P_SCA: u32 = 24583; +pub const ETH_P_TEB: u32 = 25944; +pub const ETH_P_RARP: u32 = 32821; +pub const ETH_P_ATALK: u32 = 32923; +pub const ETH_P_AARP: u32 = 33011; +pub const ETH_P_8021Q: u32 = 33024; +pub const ETH_P_ERSPAN: u32 = 35006; +pub const ETH_P_IPX: u32 = 33079; +pub const ETH_P_IPV6: u32 = 34525; +pub const ETH_P_PAUSE: u32 = 34824; +pub const ETH_P_SLOW: u32 = 34825; +pub const ETH_P_WCCP: u32 = 34878; +pub const ETH_P_MPLS_UC: u32 = 34887; +pub const ETH_P_MPLS_MC: u32 = 34888; +pub const ETH_P_ATMMPOA: u32 = 34892; +pub const ETH_P_PPP_DISC: u32 = 34915; +pub const ETH_P_PPP_SES: u32 = 34916; +pub const ETH_P_LINK_CTL: u32 = 34924; +pub const ETH_P_ATMFATE: u32 = 34948; +pub const ETH_P_PAE: u32 = 34958; +pub const ETH_P_PROFINET: u32 = 34962; +pub const ETH_P_REALTEK: u32 = 34969; +pub const ETH_P_AOE: u32 = 34978; +pub const ETH_P_ETHERCAT: u32 = 34980; +pub const ETH_P_8021AD: u32 = 34984; +pub const ETH_P_802_EX1: u32 = 34997; +pub const ETH_P_PREAUTH: u32 = 35015; +pub const ETH_P_TIPC: u32 = 35018; +pub const ETH_P_LLDP: u32 = 35020; +pub const ETH_P_MRP: u32 = 35043; +pub const ETH_P_MACSEC: u32 = 35045; +pub const ETH_P_8021AH: u32 = 35047; +pub const ETH_P_MVRP: u32 = 35061; +pub const ETH_P_1588: u32 = 35063; +pub const ETH_P_NCSI: u32 = 35064; +pub const ETH_P_PRP: u32 = 35067; +pub const ETH_P_CFM: u32 = 35074; +pub const ETH_P_FCOE: u32 = 35078; +pub const ETH_P_IBOE: u32 = 35093; +pub const ETH_P_TDLS: u32 = 35085; +pub const ETH_P_FIP: u32 = 35092; +pub const ETH_P_80221: u32 = 35095; +pub const ETH_P_HSR: u32 = 35119; +pub const ETH_P_NSH: u32 = 35151; +pub const ETH_P_LOOPBACK: u32 = 36864; +pub const ETH_P_QINQ1: u32 = 37120; +pub const ETH_P_QINQ2: u32 = 37376; +pub const ETH_P_QINQ3: u32 = 37632; +pub const ETH_P_EDSA: u32 = 56026; +pub const ETH_P_DSA_8021Q: u32 = 56027; +pub const ETH_P_DSA_A5PSW: u32 = 57345; +pub const ETH_P_IFE: u32 = 60734; +pub const ETH_P_AF_IUCV: u32 = 64507; +pub const ETH_P_802_3_MIN: u32 = 1536; +pub const ETH_P_802_3: u32 = 1; +pub const ETH_P_AX25: u32 = 2; +pub const ETH_P_ALL: u32 = 3; +pub const ETH_P_802_2: u32 = 4; +pub const ETH_P_SNAP: u32 = 5; +pub const ETH_P_DDCMP: u32 = 6; +pub const ETH_P_WAN_PPP: u32 = 7; +pub const ETH_P_PPP_MP: u32 = 8; +pub const ETH_P_LOCALTALK: u32 = 9; +pub const ETH_P_CAN: u32 = 12; +pub const ETH_P_CANFD: u32 = 13; +pub const ETH_P_CANXL: u32 = 14; +pub const ETH_P_PPPTALK: u32 = 16; +pub const ETH_P_TR_802_2: u32 = 17; +pub const ETH_P_MOBITEX: u32 = 21; +pub const ETH_P_CONTROL: u32 = 22; +pub const ETH_P_IRDA: u32 = 23; +pub const ETH_P_ECONET: u32 = 24; +pub const ETH_P_HDLC: u32 = 25; +pub const ETH_P_ARCNET: u32 = 26; +pub const ETH_P_DSA: u32 = 27; +pub const ETH_P_TRAILER: u32 = 28; +pub const ETH_P_PHONET: u32 = 245; +pub const ETH_P_IEEE802154: u32 = 246; +pub const ETH_P_CAIF: u32 = 247; +pub const ETH_P_XDSA: u32 = 248; +pub const ETH_P_MAP: u32 = 249; +pub const ETH_P_MCTP: u32 = 250; +pub const __LITTLE_ENDIAN: u32 = 1234; +pub const PACKET_HOST: u32 = 0; +pub const PACKET_BROADCAST: u32 = 1; +pub const PACKET_MULTICAST: u32 = 2; +pub const PACKET_OTHERHOST: u32 = 3; +pub const PACKET_OUTGOING: u32 = 4; +pub const PACKET_LOOPBACK: u32 = 5; +pub const PACKET_USER: u32 = 6; +pub const PACKET_KERNEL: u32 = 7; +pub const PACKET_FASTROUTE: u32 = 6; +pub const PACKET_ADD_MEMBERSHIP: u32 = 1; +pub const PACKET_DROP_MEMBERSHIP: u32 = 2; +pub const PACKET_RECV_OUTPUT: u32 = 3; +pub const PACKET_RX_RING: u32 = 5; +pub const PACKET_STATISTICS: u32 = 6; +pub const PACKET_COPY_THRESH: u32 = 7; +pub const PACKET_AUXDATA: u32 = 8; +pub const PACKET_ORIGDEV: u32 = 9; +pub const PACKET_VERSION: u32 = 10; +pub const PACKET_HDRLEN: u32 = 11; +pub const PACKET_RESERVE: u32 = 12; +pub const PACKET_TX_RING: u32 = 13; +pub const PACKET_LOSS: u32 = 14; +pub const PACKET_VNET_HDR: u32 = 15; +pub const PACKET_TX_TIMESTAMP: u32 = 16; +pub const PACKET_TIMESTAMP: u32 = 17; +pub const PACKET_FANOUT: u32 = 18; +pub const PACKET_TX_HAS_OFF: u32 = 19; +pub const PACKET_QDISC_BYPASS: u32 = 20; +pub const PACKET_ROLLOVER_STATS: u32 = 21; +pub const PACKET_FANOUT_DATA: u32 = 22; +pub const PACKET_IGNORE_OUTGOING: u32 = 23; +pub const PACKET_VNET_HDR_SZ: u32 = 24; +pub const PACKET_FANOUT_HASH: u32 = 0; +pub const PACKET_FANOUT_LB: u32 = 1; +pub const PACKET_FANOUT_CPU: u32 = 2; +pub const PACKET_FANOUT_ROLLOVER: u32 = 3; +pub const PACKET_FANOUT_RND: u32 = 4; +pub const PACKET_FANOUT_QM: u32 = 5; +pub const PACKET_FANOUT_CBPF: u32 = 6; +pub const PACKET_FANOUT_EBPF: u32 = 7; +pub const PACKET_FANOUT_FLAG_ROLLOVER: u32 = 4096; +pub const PACKET_FANOUT_FLAG_UNIQUEID: u32 = 8192; +pub const PACKET_FANOUT_FLAG_IGNORE_OUTGOING: u32 = 16384; +pub const PACKET_FANOUT_FLAG_DEFRAG: u32 = 32768; +pub const TP_STATUS_KERNEL: u32 = 0; +pub const TP_STATUS_USER: u32 = 1; +pub const TP_STATUS_COPY: u32 = 2; +pub const TP_STATUS_LOSING: u32 = 4; +pub const TP_STATUS_CSUMNOTREADY: u32 = 8; +pub const TP_STATUS_VLAN_VALID: u32 = 16; +pub const TP_STATUS_BLK_TMO: u32 = 32; +pub const TP_STATUS_VLAN_TPID_VALID: u32 = 64; +pub const TP_STATUS_CSUM_VALID: u32 = 128; +pub const TP_STATUS_GSO_TCP: u32 = 256; +pub const TP_STATUS_AVAILABLE: u32 = 0; +pub const TP_STATUS_SEND_REQUEST: u32 = 1; +pub const TP_STATUS_SENDING: u32 = 2; +pub const TP_STATUS_WRONG_FORMAT: u32 = 4; +pub const TP_STATUS_TS_SOFTWARE: u32 = 536870912; +pub const TP_STATUS_TS_SYS_HARDWARE: u32 = 1073741824; +pub const TP_STATUS_TS_RAW_HARDWARE: u32 = 2147483648; +pub const TP_FT_REQ_FILL_RXHASH: u32 = 1; +pub const TPACKET_ALIGNMENT: u32 = 16; +pub const PACKET_MR_MULTICAST: u32 = 0; +pub const PACKET_MR_PROMISC: u32 = 1; +pub const PACKET_MR_ALLMULTI: u32 = 2; +pub const PACKET_MR_UNICAST: u32 = 3; +pub const NETLINK_ROUTE: u32 = 0; +pub const NETLINK_UNUSED: u32 = 1; +pub const NETLINK_USERSOCK: u32 = 2; +pub const NETLINK_FIREWALL: u32 = 3; +pub const NETLINK_SOCK_DIAG: u32 = 4; +pub const NETLINK_NFLOG: u32 = 5; +pub const NETLINK_XFRM: u32 = 6; +pub const NETLINK_SELINUX: u32 = 7; +pub const NETLINK_ISCSI: u32 = 8; +pub const NETLINK_AUDIT: u32 = 9; +pub const NETLINK_FIB_LOOKUP: u32 = 10; +pub const NETLINK_CONNECTOR: u32 = 11; +pub const NETLINK_NETFILTER: u32 = 12; +pub const NETLINK_IP6_FW: u32 = 13; +pub const NETLINK_DNRTMSG: u32 = 14; +pub const NETLINK_KOBJECT_UEVENT: u32 = 15; +pub const NETLINK_GENERIC: u32 = 16; +pub const NETLINK_SCSITRANSPORT: u32 = 18; +pub const NETLINK_ECRYPTFS: u32 = 19; +pub const NETLINK_RDMA: u32 = 20; +pub const NETLINK_CRYPTO: u32 = 21; +pub const NETLINK_SMC: u32 = 22; +pub const NETLINK_INET_DIAG: u32 = 4; +pub const MAX_LINKS: u32 = 32; +pub const NLM_F_REQUEST: u32 = 1; +pub const NLM_F_MULTI: u32 = 2; +pub const NLM_F_ACK: u32 = 4; +pub const NLM_F_ECHO: u32 = 8; +pub const NLM_F_DUMP_INTR: u32 = 16; +pub const NLM_F_DUMP_FILTERED: u32 = 32; +pub const NLM_F_ROOT: u32 = 256; +pub const NLM_F_MATCH: u32 = 512; +pub const NLM_F_ATOMIC: u32 = 1024; +pub const NLM_F_DUMP: u32 = 768; +pub const NLM_F_REPLACE: u32 = 256; +pub const NLM_F_EXCL: u32 = 512; +pub const NLM_F_CREATE: u32 = 1024; +pub const NLM_F_APPEND: u32 = 2048; +pub const NLM_F_NONREC: u32 = 256; +pub const NLM_F_BULK: u32 = 512; +pub const NLM_F_CAPPED: u32 = 256; +pub const NLM_F_ACK_TLVS: u32 = 512; +pub const NLMSG_ALIGNTO: u32 = 4; +pub const NLMSG_NOOP: u32 = 1; +pub const NLMSG_ERROR: u32 = 2; +pub const NLMSG_DONE: u32 = 3; +pub const NLMSG_OVERRUN: u32 = 4; +pub const NLMSG_MIN_TYPE: u32 = 16; +pub const NETLINK_ADD_MEMBERSHIP: u32 = 1; +pub const NETLINK_DROP_MEMBERSHIP: u32 = 2; +pub const NETLINK_PKTINFO: u32 = 3; +pub const NETLINK_BROADCAST_ERROR: u32 = 4; +pub const NETLINK_NO_ENOBUFS: u32 = 5; +pub const NETLINK_RX_RING: u32 = 6; +pub const NETLINK_TX_RING: u32 = 7; +pub const NETLINK_LISTEN_ALL_NSID: u32 = 8; +pub const NETLINK_LIST_MEMBERSHIPS: u32 = 9; +pub const NETLINK_CAP_ACK: u32 = 10; +pub const NETLINK_EXT_ACK: u32 = 11; +pub const NETLINK_GET_STRICT_CHK: u32 = 12; +pub const NL_MMAP_MSG_ALIGNMENT: u32 = 4; +pub const NET_MAJOR: u32 = 36; +pub const NLA_F_NESTED: u32 = 32768; +pub const NLA_F_NET_BYTEORDER: u32 = 16384; +pub const NLA_TYPE_MASK: i32 = -49153; +pub const NLA_ALIGNTO: u32 = 4; +pub const MACVLAN_FLAG_NOPROMISC: u32 = 1; +pub const MACVLAN_FLAG_NODST: u32 = 2; +pub const IPVLAN_F_PRIVATE: u32 = 1; +pub const IPVLAN_F_VEPA: u32 = 2; +pub const TUNNEL_MSG_FLAG_STATS: u32 = 1; +pub const TUNNEL_MSG_VALID_USER_FLAGS: u32 = 1; +pub const MAX_VLAN_LIST_LEN: u32 = 1; +pub const PORT_PROFILE_MAX: u32 = 40; +pub const PORT_UUID_MAX: u32 = 16; +pub const PORT_SELF_VF: i32 = -1; +pub const XDP_FLAGS_UPDATE_IF_NOEXIST: u32 = 1; +pub const XDP_FLAGS_SKB_MODE: u32 = 2; +pub const XDP_FLAGS_DRV_MODE: u32 = 4; +pub const XDP_FLAGS_HW_MODE: u32 = 8; +pub const XDP_FLAGS_REPLACE: u32 = 16; +pub const XDP_FLAGS_MODES: u32 = 14; +pub const XDP_FLAGS_MASK: u32 = 31; +pub const RMNET_FLAGS_INGRESS_DEAGGREGATION: u32 = 1; +pub const RMNET_FLAGS_INGRESS_MAP_COMMANDS: u32 = 2; +pub const RMNET_FLAGS_INGRESS_MAP_CKSUMV4: u32 = 4; +pub const RMNET_FLAGS_EGRESS_MAP_CKSUMV4: u32 = 8; +pub const RMNET_FLAGS_INGRESS_MAP_CKSUMV5: u32 = 16; +pub const RMNET_FLAGS_EGRESS_MAP_CKSUMV5: u32 = 32; +pub const MAX_ADDR_LEN: u32 = 32; +pub const INIT_NETDEV_GROUP: u32 = 0; +pub const NET_NAME_UNKNOWN: u32 = 0; +pub const NET_NAME_ENUM: u32 = 1; +pub const NET_NAME_PREDICTABLE: u32 = 2; +pub const NET_NAME_USER: u32 = 3; +pub const NET_NAME_RENAMED: u32 = 4; +pub const NET_ADDR_PERM: u32 = 0; +pub const NET_ADDR_RANDOM: u32 = 1; +pub const NET_ADDR_STOLEN: u32 = 2; +pub const NET_ADDR_SET: u32 = 3; +pub const ARPHRD_NETROM: u32 = 0; +pub const ARPHRD_ETHER: u32 = 1; +pub const ARPHRD_EETHER: u32 = 2; +pub const ARPHRD_AX25: u32 = 3; +pub const ARPHRD_PRONET: u32 = 4; +pub const ARPHRD_CHAOS: u32 = 5; +pub const ARPHRD_IEEE802: u32 = 6; +pub const ARPHRD_ARCNET: u32 = 7; +pub const ARPHRD_APPLETLK: u32 = 8; +pub const ARPHRD_DLCI: u32 = 15; +pub const ARPHRD_ATM: u32 = 19; +pub const ARPHRD_METRICOM: u32 = 23; +pub const ARPHRD_IEEE1394: u32 = 24; +pub const ARPHRD_EUI64: u32 = 27; +pub const ARPHRD_INFINIBAND: u32 = 32; +pub const ARPHRD_SLIP: u32 = 256; +pub const ARPHRD_CSLIP: u32 = 257; +pub const ARPHRD_SLIP6: u32 = 258; +pub const ARPHRD_CSLIP6: u32 = 259; +pub const ARPHRD_RSRVD: u32 = 260; +pub const ARPHRD_ADAPT: u32 = 264; +pub const ARPHRD_ROSE: u32 = 270; +pub const ARPHRD_X25: u32 = 271; +pub const ARPHRD_HWX25: u32 = 272; +pub const ARPHRD_CAN: u32 = 280; +pub const ARPHRD_MCTP: u32 = 290; +pub const ARPHRD_PPP: u32 = 512; +pub const ARPHRD_CISCO: u32 = 513; +pub const ARPHRD_HDLC: u32 = 513; +pub const ARPHRD_LAPB: u32 = 516; +pub const ARPHRD_DDCMP: u32 = 517; +pub const ARPHRD_RAWHDLC: u32 = 518; +pub const ARPHRD_RAWIP: u32 = 519; +pub const ARPHRD_TUNNEL: u32 = 768; +pub const ARPHRD_TUNNEL6: u32 = 769; +pub const ARPHRD_FRAD: u32 = 770; +pub const ARPHRD_SKIP: u32 = 771; +pub const ARPHRD_LOOPBACK: u32 = 772; +pub const ARPHRD_LOCALTLK: u32 = 773; +pub const ARPHRD_FDDI: u32 = 774; +pub const ARPHRD_BIF: u32 = 775; +pub const ARPHRD_SIT: u32 = 776; +pub const ARPHRD_IPDDP: u32 = 777; +pub const ARPHRD_IPGRE: u32 = 778; +pub const ARPHRD_PIMREG: u32 = 779; +pub const ARPHRD_HIPPI: u32 = 780; +pub const ARPHRD_ASH: u32 = 781; +pub const ARPHRD_ECONET: u32 = 782; +pub const ARPHRD_IRDA: u32 = 783; +pub const ARPHRD_FCPP: u32 = 784; +pub const ARPHRD_FCAL: u32 = 785; +pub const ARPHRD_FCPL: u32 = 786; +pub const ARPHRD_FCFABRIC: u32 = 787; +pub const ARPHRD_IEEE802_TR: u32 = 800; +pub const ARPHRD_IEEE80211: u32 = 801; +pub const ARPHRD_IEEE80211_PRISM: u32 = 802; +pub const ARPHRD_IEEE80211_RADIOTAP: u32 = 803; +pub const ARPHRD_IEEE802154: u32 = 804; +pub const ARPHRD_IEEE802154_MONITOR: u32 = 805; +pub const ARPHRD_PHONET: u32 = 820; +pub const ARPHRD_PHONET_PIPE: u32 = 821; +pub const ARPHRD_CAIF: u32 = 822; +pub const ARPHRD_IP6GRE: u32 = 823; +pub const ARPHRD_NETLINK: u32 = 824; +pub const ARPHRD_6LOWPAN: u32 = 825; +pub const ARPHRD_VSOCKMON: u32 = 826; +pub const ARPHRD_VOID: u32 = 65535; +pub const ARPHRD_NONE: u32 = 65534; +pub const ARPOP_REQUEST: u32 = 1; +pub const ARPOP_REPLY: u32 = 2; +pub const ARPOP_RREQUEST: u32 = 3; +pub const ARPOP_RREPLY: u32 = 4; +pub const ARPOP_InREQUEST: u32 = 8; +pub const ARPOP_InREPLY: u32 = 9; +pub const ARPOP_NAK: u32 = 10; +pub const ATF_COM: u32 = 2; +pub const ATF_PERM: u32 = 4; +pub const ATF_PUBL: u32 = 8; +pub const ATF_USETRAILERS: u32 = 16; +pub const ATF_NETMASK: u32 = 32; +pub const ATF_DONTPUB: u32 = 64; +pub const IF_OPER_UNKNOWN: _bindgen_ty_1 = _bindgen_ty_1::IF_OPER_UNKNOWN; +pub const IF_OPER_NOTPRESENT: _bindgen_ty_1 = _bindgen_ty_1::IF_OPER_NOTPRESENT; +pub const IF_OPER_DOWN: _bindgen_ty_1 = _bindgen_ty_1::IF_OPER_DOWN; +pub const IF_OPER_LOWERLAYERDOWN: _bindgen_ty_1 = _bindgen_ty_1::IF_OPER_LOWERLAYERDOWN; +pub const IF_OPER_TESTING: _bindgen_ty_1 = _bindgen_ty_1::IF_OPER_TESTING; +pub const IF_OPER_DORMANT: _bindgen_ty_1 = _bindgen_ty_1::IF_OPER_DORMANT; +pub const IF_OPER_UP: _bindgen_ty_1 = _bindgen_ty_1::IF_OPER_UP; +pub const IF_LINK_MODE_DEFAULT: _bindgen_ty_2 = _bindgen_ty_2::IF_LINK_MODE_DEFAULT; +pub const IF_LINK_MODE_DORMANT: _bindgen_ty_2 = _bindgen_ty_2::IF_LINK_MODE_DORMANT; +pub const IF_LINK_MODE_TESTING: _bindgen_ty_2 = _bindgen_ty_2::IF_LINK_MODE_TESTING; +pub const NETLINK_UNCONNECTED: _bindgen_ty_3 = _bindgen_ty_3::NETLINK_UNCONNECTED; +pub const NETLINK_CONNECTED: _bindgen_ty_3 = _bindgen_ty_3::NETLINK_CONNECTED; +pub const IFLA_UNSPEC: _bindgen_ty_4 = _bindgen_ty_4::IFLA_UNSPEC; +pub const IFLA_ADDRESS: _bindgen_ty_4 = _bindgen_ty_4::IFLA_ADDRESS; +pub const IFLA_BROADCAST: _bindgen_ty_4 = _bindgen_ty_4::IFLA_BROADCAST; +pub const IFLA_IFNAME: _bindgen_ty_4 = _bindgen_ty_4::IFLA_IFNAME; +pub const IFLA_MTU: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MTU; +pub const IFLA_LINK: _bindgen_ty_4 = _bindgen_ty_4::IFLA_LINK; +pub const IFLA_QDISC: _bindgen_ty_4 = _bindgen_ty_4::IFLA_QDISC; +pub const IFLA_STATS: _bindgen_ty_4 = _bindgen_ty_4::IFLA_STATS; +pub const IFLA_COST: _bindgen_ty_4 = _bindgen_ty_4::IFLA_COST; +pub const IFLA_PRIORITY: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PRIORITY; +pub const IFLA_MASTER: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MASTER; +pub const IFLA_WIRELESS: _bindgen_ty_4 = _bindgen_ty_4::IFLA_WIRELESS; +pub const IFLA_PROTINFO: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PROTINFO; +pub const IFLA_TXQLEN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_TXQLEN; +pub const IFLA_MAP: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAP; +pub const IFLA_WEIGHT: _bindgen_ty_4 = _bindgen_ty_4::IFLA_WEIGHT; +pub const IFLA_OPERSTATE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_OPERSTATE; +pub const IFLA_LINKMODE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_LINKMODE; +pub const IFLA_LINKINFO: _bindgen_ty_4 = _bindgen_ty_4::IFLA_LINKINFO; +pub const IFLA_NET_NS_PID: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NET_NS_PID; +pub const IFLA_IFALIAS: _bindgen_ty_4 = _bindgen_ty_4::IFLA_IFALIAS; +pub const IFLA_NUM_VF: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NUM_VF; +pub const IFLA_VFINFO_LIST: _bindgen_ty_4 = _bindgen_ty_4::IFLA_VFINFO_LIST; +pub const IFLA_STATS64: _bindgen_ty_4 = _bindgen_ty_4::IFLA_STATS64; +pub const IFLA_VF_PORTS: _bindgen_ty_4 = _bindgen_ty_4::IFLA_VF_PORTS; +pub const IFLA_PORT_SELF: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PORT_SELF; +pub const IFLA_AF_SPEC: _bindgen_ty_4 = _bindgen_ty_4::IFLA_AF_SPEC; +pub const IFLA_GROUP: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GROUP; +pub const IFLA_NET_NS_FD: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NET_NS_FD; +pub const IFLA_EXT_MASK: _bindgen_ty_4 = _bindgen_ty_4::IFLA_EXT_MASK; +pub const IFLA_PROMISCUITY: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PROMISCUITY; +pub const IFLA_NUM_TX_QUEUES: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NUM_TX_QUEUES; +pub const IFLA_NUM_RX_QUEUES: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NUM_RX_QUEUES; +pub const IFLA_CARRIER: _bindgen_ty_4 = _bindgen_ty_4::IFLA_CARRIER; +pub const IFLA_PHYS_PORT_ID: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PHYS_PORT_ID; +pub const IFLA_CARRIER_CHANGES: _bindgen_ty_4 = _bindgen_ty_4::IFLA_CARRIER_CHANGES; +pub const IFLA_PHYS_SWITCH_ID: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PHYS_SWITCH_ID; +pub const IFLA_LINK_NETNSID: _bindgen_ty_4 = _bindgen_ty_4::IFLA_LINK_NETNSID; +pub const IFLA_PHYS_PORT_NAME: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PHYS_PORT_NAME; +pub const IFLA_PROTO_DOWN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PROTO_DOWN; +pub const IFLA_GSO_MAX_SEGS: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_MAX_SEGS; +pub const IFLA_GSO_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_MAX_SIZE; +pub const IFLA_PAD: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PAD; +pub const IFLA_XDP: _bindgen_ty_4 = _bindgen_ty_4::IFLA_XDP; +pub const IFLA_EVENT: _bindgen_ty_4 = _bindgen_ty_4::IFLA_EVENT; +pub const IFLA_NEW_NETNSID: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NEW_NETNSID; +pub const IFLA_IF_NETNSID: _bindgen_ty_4 = _bindgen_ty_4::IFLA_IF_NETNSID; +pub const IFLA_TARGET_NETNSID: _bindgen_ty_4 = _bindgen_ty_4::IFLA_IF_NETNSID; +pub const IFLA_CARRIER_UP_COUNT: _bindgen_ty_4 = _bindgen_ty_4::IFLA_CARRIER_UP_COUNT; +pub const IFLA_CARRIER_DOWN_COUNT: _bindgen_ty_4 = _bindgen_ty_4::IFLA_CARRIER_DOWN_COUNT; +pub const IFLA_NEW_IFINDEX: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NEW_IFINDEX; +pub const IFLA_MIN_MTU: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MIN_MTU; +pub const IFLA_MAX_MTU: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_MTU; +pub const IFLA_PROP_LIST: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PROP_LIST; +pub const IFLA_ALT_IFNAME: _bindgen_ty_4 = _bindgen_ty_4::IFLA_ALT_IFNAME; +pub const IFLA_PERM_ADDRESS: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PERM_ADDRESS; +pub const IFLA_PROTO_DOWN_REASON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PROTO_DOWN_REASON; +pub const IFLA_PARENT_DEV_NAME: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PARENT_DEV_NAME; +pub const IFLA_PARENT_DEV_BUS_NAME: _bindgen_ty_4 = _bindgen_ty_4::IFLA_PARENT_DEV_BUS_NAME; +pub const IFLA_GRO_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_MAX_SIZE; +pub const IFLA_TSO_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_TSO_MAX_SIZE; +pub const IFLA_TSO_MAX_SEGS: _bindgen_ty_4 = _bindgen_ty_4::IFLA_TSO_MAX_SEGS; +pub const IFLA_ALLMULTI: _bindgen_ty_4 = _bindgen_ty_4::IFLA_ALLMULTI; +pub const IFLA_DEVLINK_PORT: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DEVLINK_PORT; +pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GSO_IPV4_MAX_SIZE; +pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_GRO_IPV4_MAX_SIZE; +pub const IFLA_DPLL_PIN: _bindgen_ty_4 = _bindgen_ty_4::IFLA_DPLL_PIN; +pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_4 = _bindgen_ty_4::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_4 = _bindgen_ty_4::IFLA_NETNS_IMMUTABLE; +pub const __IFLA_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_MAX; +pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_UNSPEC; +pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_MASK; +pub const IFLA_PROTO_DOWN_REASON_VALUE: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_VALUE; +pub const __IFLA_PROTO_DOWN_REASON_CNT: _bindgen_ty_5 = _bindgen_ty_5::__IFLA_PROTO_DOWN_REASON_CNT; +pub const IFLA_PROTO_DOWN_REASON_MAX: _bindgen_ty_5 = _bindgen_ty_5::IFLA_PROTO_DOWN_REASON_VALUE; +pub const IFLA_INET_UNSPEC: _bindgen_ty_6 = _bindgen_ty_6::IFLA_INET_UNSPEC; +pub const IFLA_INET_CONF: _bindgen_ty_6 = _bindgen_ty_6::IFLA_INET_CONF; +pub const __IFLA_INET_MAX: _bindgen_ty_6 = _bindgen_ty_6::__IFLA_INET_MAX; +pub const IFLA_INET6_UNSPEC: _bindgen_ty_7 = _bindgen_ty_7::IFLA_INET6_UNSPEC; +pub const IFLA_INET6_FLAGS: _bindgen_ty_7 = _bindgen_ty_7::IFLA_INET6_FLAGS; +pub const IFLA_INET6_CONF: _bindgen_ty_7 = _bindgen_ty_7::IFLA_INET6_CONF; +pub const IFLA_INET6_STATS: _bindgen_ty_7 = _bindgen_ty_7::IFLA_INET6_STATS; +pub const IFLA_INET6_MCAST: _bindgen_ty_7 = _bindgen_ty_7::IFLA_INET6_MCAST; +pub const IFLA_INET6_CACHEINFO: _bindgen_ty_7 = _bindgen_ty_7::IFLA_INET6_CACHEINFO; +pub const IFLA_INET6_ICMP6STATS: _bindgen_ty_7 = _bindgen_ty_7::IFLA_INET6_ICMP6STATS; +pub const IFLA_INET6_TOKEN: _bindgen_ty_7 = _bindgen_ty_7::IFLA_INET6_TOKEN; +pub const IFLA_INET6_ADDR_GEN_MODE: _bindgen_ty_7 = _bindgen_ty_7::IFLA_INET6_ADDR_GEN_MODE; +pub const IFLA_INET6_RA_MTU: _bindgen_ty_7 = _bindgen_ty_7::IFLA_INET6_RA_MTU; +pub const __IFLA_INET6_MAX: _bindgen_ty_7 = _bindgen_ty_7::__IFLA_INET6_MAX; +pub const IFLA_BR_UNSPEC: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_UNSPEC; +pub const IFLA_BR_FORWARD_DELAY: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_FORWARD_DELAY; +pub const IFLA_BR_HELLO_TIME: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_HELLO_TIME; +pub const IFLA_BR_MAX_AGE: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MAX_AGE; +pub const IFLA_BR_AGEING_TIME: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_AGEING_TIME; +pub const IFLA_BR_STP_STATE: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_STP_STATE; +pub const IFLA_BR_PRIORITY: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_PRIORITY; +pub const IFLA_BR_VLAN_FILTERING: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_VLAN_FILTERING; +pub const IFLA_BR_VLAN_PROTOCOL: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_VLAN_PROTOCOL; +pub const IFLA_BR_GROUP_FWD_MASK: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_GROUP_FWD_MASK; +pub const IFLA_BR_ROOT_ID: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_ROOT_ID; +pub const IFLA_BR_BRIDGE_ID: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_BRIDGE_ID; +pub const IFLA_BR_ROOT_PORT: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_ROOT_PORT; +pub const IFLA_BR_ROOT_PATH_COST: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_ROOT_PATH_COST; +pub const IFLA_BR_TOPOLOGY_CHANGE: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_TOPOLOGY_CHANGE; +pub const IFLA_BR_TOPOLOGY_CHANGE_DETECTED: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_TOPOLOGY_CHANGE_DETECTED; +pub const IFLA_BR_HELLO_TIMER: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_HELLO_TIMER; +pub const IFLA_BR_TCN_TIMER: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_TCN_TIMER; +pub const IFLA_BR_TOPOLOGY_CHANGE_TIMER: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_TOPOLOGY_CHANGE_TIMER; +pub const IFLA_BR_GC_TIMER: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_GC_TIMER; +pub const IFLA_BR_GROUP_ADDR: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_GROUP_ADDR; +pub const IFLA_BR_FDB_FLUSH: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_FDB_FLUSH; +pub const IFLA_BR_MCAST_ROUTER: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_ROUTER; +pub const IFLA_BR_MCAST_SNOOPING: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_SNOOPING; +pub const IFLA_BR_MCAST_QUERY_USE_IFADDR: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_QUERY_USE_IFADDR; +pub const IFLA_BR_MCAST_QUERIER: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_QUERIER; +pub const IFLA_BR_MCAST_HASH_ELASTICITY: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_HASH_ELASTICITY; +pub const IFLA_BR_MCAST_HASH_MAX: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_HASH_MAX; +pub const IFLA_BR_MCAST_LAST_MEMBER_CNT: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_LAST_MEMBER_CNT; +pub const IFLA_BR_MCAST_STARTUP_QUERY_CNT: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_STARTUP_QUERY_CNT; +pub const IFLA_BR_MCAST_LAST_MEMBER_INTVL: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_LAST_MEMBER_INTVL; +pub const IFLA_BR_MCAST_MEMBERSHIP_INTVL: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_MEMBERSHIP_INTVL; +pub const IFLA_BR_MCAST_QUERIER_INTVL: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_QUERIER_INTVL; +pub const IFLA_BR_MCAST_QUERY_INTVL: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_QUERY_INTVL; +pub const IFLA_BR_MCAST_QUERY_RESPONSE_INTVL: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_QUERY_RESPONSE_INTVL; +pub const IFLA_BR_MCAST_STARTUP_QUERY_INTVL: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_STARTUP_QUERY_INTVL; +pub const IFLA_BR_NF_CALL_IPTABLES: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_NF_CALL_IPTABLES; +pub const IFLA_BR_NF_CALL_IP6TABLES: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_NF_CALL_IP6TABLES; +pub const IFLA_BR_NF_CALL_ARPTABLES: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_NF_CALL_ARPTABLES; +pub const IFLA_BR_VLAN_DEFAULT_PVID: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_VLAN_DEFAULT_PVID; +pub const IFLA_BR_PAD: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_PAD; +pub const IFLA_BR_VLAN_STATS_ENABLED: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_VLAN_STATS_ENABLED; +pub const IFLA_BR_MCAST_STATS_ENABLED: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_STATS_ENABLED; +pub const IFLA_BR_MCAST_IGMP_VERSION: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_IGMP_VERSION; +pub const IFLA_BR_MCAST_MLD_VERSION: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_MLD_VERSION; +pub const IFLA_BR_VLAN_STATS_PER_PORT: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_VLAN_STATS_PER_PORT; +pub const IFLA_BR_MULTI_BOOLOPT: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MULTI_BOOLOPT; +pub const IFLA_BR_MCAST_QUERIER_STATE: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_MCAST_QUERIER_STATE; +pub const IFLA_BR_FDB_N_LEARNED: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_FDB_N_LEARNED; +pub const IFLA_BR_FDB_MAX_LEARNED: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BR_FDB_MAX_LEARNED; +pub const __IFLA_BR_MAX: _bindgen_ty_8 = _bindgen_ty_8::__IFLA_BR_MAX; +pub const BRIDGE_MODE_UNSPEC: _bindgen_ty_9 = _bindgen_ty_9::BRIDGE_MODE_UNSPEC; +pub const BRIDGE_MODE_HAIRPIN: _bindgen_ty_9 = _bindgen_ty_9::BRIDGE_MODE_HAIRPIN; +pub const IFLA_BRPORT_UNSPEC: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_UNSPEC; +pub const IFLA_BRPORT_STATE: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_STATE; +pub const IFLA_BRPORT_PRIORITY: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_PRIORITY; +pub const IFLA_BRPORT_COST: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_COST; +pub const IFLA_BRPORT_MODE: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_MODE; +pub const IFLA_BRPORT_GUARD: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_GUARD; +pub const IFLA_BRPORT_PROTECT: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_PROTECT; +pub const IFLA_BRPORT_FAST_LEAVE: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_FAST_LEAVE; +pub const IFLA_BRPORT_LEARNING: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_LEARNING; +pub const IFLA_BRPORT_UNICAST_FLOOD: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_UNICAST_FLOOD; +pub const IFLA_BRPORT_PROXYARP: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_PROXYARP; +pub const IFLA_BRPORT_LEARNING_SYNC: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_LEARNING_SYNC; +pub const IFLA_BRPORT_PROXYARP_WIFI: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_PROXYARP_WIFI; +pub const IFLA_BRPORT_ROOT_ID: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_ROOT_ID; +pub const IFLA_BRPORT_BRIDGE_ID: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_BRIDGE_ID; +pub const IFLA_BRPORT_DESIGNATED_PORT: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_DESIGNATED_PORT; +pub const IFLA_BRPORT_DESIGNATED_COST: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_DESIGNATED_COST; +pub const IFLA_BRPORT_ID: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_ID; +pub const IFLA_BRPORT_NO: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_NO; +pub const IFLA_BRPORT_TOPOLOGY_CHANGE_ACK: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_TOPOLOGY_CHANGE_ACK; +pub const IFLA_BRPORT_CONFIG_PENDING: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_CONFIG_PENDING; +pub const IFLA_BRPORT_MESSAGE_AGE_TIMER: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_MESSAGE_AGE_TIMER; +pub const IFLA_BRPORT_FORWARD_DELAY_TIMER: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_FORWARD_DELAY_TIMER; +pub const IFLA_BRPORT_HOLD_TIMER: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_HOLD_TIMER; +pub const IFLA_BRPORT_FLUSH: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_FLUSH; +pub const IFLA_BRPORT_MULTICAST_ROUTER: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_MULTICAST_ROUTER; +pub const IFLA_BRPORT_PAD: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_PAD; +pub const IFLA_BRPORT_MCAST_FLOOD: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_MCAST_FLOOD; +pub const IFLA_BRPORT_MCAST_TO_UCAST: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_MCAST_TO_UCAST; +pub const IFLA_BRPORT_VLAN_TUNNEL: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_VLAN_TUNNEL; +pub const IFLA_BRPORT_BCAST_FLOOD: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_BCAST_FLOOD; +pub const IFLA_BRPORT_GROUP_FWD_MASK: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_GROUP_FWD_MASK; +pub const IFLA_BRPORT_NEIGH_SUPPRESS: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_NEIGH_SUPPRESS; +pub const IFLA_BRPORT_ISOLATED: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_ISOLATED; +pub const IFLA_BRPORT_BACKUP_PORT: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_BACKUP_PORT; +pub const IFLA_BRPORT_MRP_RING_OPEN: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_MRP_RING_OPEN; +pub const IFLA_BRPORT_MRP_IN_OPEN: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_MRP_IN_OPEN; +pub const IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT; +pub const IFLA_BRPORT_MCAST_EHT_HOSTS_CNT: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_MCAST_EHT_HOSTS_CNT; +pub const IFLA_BRPORT_LOCKED: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_LOCKED; +pub const IFLA_BRPORT_MAB: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_MAB; +pub const IFLA_BRPORT_MCAST_N_GROUPS: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_MCAST_N_GROUPS; +pub const IFLA_BRPORT_MCAST_MAX_GROUPS: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_MCAST_MAX_GROUPS; +pub const IFLA_BRPORT_NEIGH_VLAN_SUPPRESS: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_NEIGH_VLAN_SUPPRESS; +pub const IFLA_BRPORT_BACKUP_NHID: _bindgen_ty_10 = _bindgen_ty_10::IFLA_BRPORT_BACKUP_NHID; +pub const __IFLA_BRPORT_MAX: _bindgen_ty_10 = _bindgen_ty_10::__IFLA_BRPORT_MAX; +pub const IFLA_INFO_UNSPEC: _bindgen_ty_11 = _bindgen_ty_11::IFLA_INFO_UNSPEC; +pub const IFLA_INFO_KIND: _bindgen_ty_11 = _bindgen_ty_11::IFLA_INFO_KIND; +pub const IFLA_INFO_DATA: _bindgen_ty_11 = _bindgen_ty_11::IFLA_INFO_DATA; +pub const IFLA_INFO_XSTATS: _bindgen_ty_11 = _bindgen_ty_11::IFLA_INFO_XSTATS; +pub const IFLA_INFO_SLAVE_KIND: _bindgen_ty_11 = _bindgen_ty_11::IFLA_INFO_SLAVE_KIND; +pub const IFLA_INFO_SLAVE_DATA: _bindgen_ty_11 = _bindgen_ty_11::IFLA_INFO_SLAVE_DATA; +pub const __IFLA_INFO_MAX: _bindgen_ty_11 = _bindgen_ty_11::__IFLA_INFO_MAX; +pub const IFLA_VLAN_UNSPEC: _bindgen_ty_12 = _bindgen_ty_12::IFLA_VLAN_UNSPEC; +pub const IFLA_VLAN_ID: _bindgen_ty_12 = _bindgen_ty_12::IFLA_VLAN_ID; +pub const IFLA_VLAN_FLAGS: _bindgen_ty_12 = _bindgen_ty_12::IFLA_VLAN_FLAGS; +pub const IFLA_VLAN_EGRESS_QOS: _bindgen_ty_12 = _bindgen_ty_12::IFLA_VLAN_EGRESS_QOS; +pub const IFLA_VLAN_INGRESS_QOS: _bindgen_ty_12 = _bindgen_ty_12::IFLA_VLAN_INGRESS_QOS; +pub const IFLA_VLAN_PROTOCOL: _bindgen_ty_12 = _bindgen_ty_12::IFLA_VLAN_PROTOCOL; +pub const __IFLA_VLAN_MAX: _bindgen_ty_12 = _bindgen_ty_12::__IFLA_VLAN_MAX; +pub const IFLA_VLAN_QOS_UNSPEC: _bindgen_ty_13 = _bindgen_ty_13::IFLA_VLAN_QOS_UNSPEC; +pub const IFLA_VLAN_QOS_MAPPING: _bindgen_ty_13 = _bindgen_ty_13::IFLA_VLAN_QOS_MAPPING; +pub const __IFLA_VLAN_QOS_MAX: _bindgen_ty_13 = _bindgen_ty_13::__IFLA_VLAN_QOS_MAX; +pub const IFLA_MACVLAN_UNSPEC: _bindgen_ty_14 = _bindgen_ty_14::IFLA_MACVLAN_UNSPEC; +pub const IFLA_MACVLAN_MODE: _bindgen_ty_14 = _bindgen_ty_14::IFLA_MACVLAN_MODE; +pub const IFLA_MACVLAN_FLAGS: _bindgen_ty_14 = _bindgen_ty_14::IFLA_MACVLAN_FLAGS; +pub const IFLA_MACVLAN_MACADDR_MODE: _bindgen_ty_14 = _bindgen_ty_14::IFLA_MACVLAN_MACADDR_MODE; +pub const IFLA_MACVLAN_MACADDR: _bindgen_ty_14 = _bindgen_ty_14::IFLA_MACVLAN_MACADDR; +pub const IFLA_MACVLAN_MACADDR_DATA: _bindgen_ty_14 = _bindgen_ty_14::IFLA_MACVLAN_MACADDR_DATA; +pub const IFLA_MACVLAN_MACADDR_COUNT: _bindgen_ty_14 = _bindgen_ty_14::IFLA_MACVLAN_MACADDR_COUNT; +pub const IFLA_MACVLAN_BC_QUEUE_LEN: _bindgen_ty_14 = _bindgen_ty_14::IFLA_MACVLAN_BC_QUEUE_LEN; +pub const IFLA_MACVLAN_BC_QUEUE_LEN_USED: _bindgen_ty_14 = _bindgen_ty_14::IFLA_MACVLAN_BC_QUEUE_LEN_USED; +pub const IFLA_MACVLAN_BC_CUTOFF: _bindgen_ty_14 = _bindgen_ty_14::IFLA_MACVLAN_BC_CUTOFF; +pub const __IFLA_MACVLAN_MAX: _bindgen_ty_14 = _bindgen_ty_14::__IFLA_MACVLAN_MAX; +pub const IFLA_VRF_UNSPEC: _bindgen_ty_15 = _bindgen_ty_15::IFLA_VRF_UNSPEC; +pub const IFLA_VRF_TABLE: _bindgen_ty_15 = _bindgen_ty_15::IFLA_VRF_TABLE; +pub const __IFLA_VRF_MAX: _bindgen_ty_15 = _bindgen_ty_15::__IFLA_VRF_MAX; +pub const IFLA_VRF_PORT_UNSPEC: _bindgen_ty_16 = _bindgen_ty_16::IFLA_VRF_PORT_UNSPEC; +pub const IFLA_VRF_PORT_TABLE: _bindgen_ty_16 = _bindgen_ty_16::IFLA_VRF_PORT_TABLE; +pub const __IFLA_VRF_PORT_MAX: _bindgen_ty_16 = _bindgen_ty_16::__IFLA_VRF_PORT_MAX; +pub const IFLA_MACSEC_UNSPEC: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_UNSPEC; +pub const IFLA_MACSEC_SCI: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_SCI; +pub const IFLA_MACSEC_PORT: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_PORT; +pub const IFLA_MACSEC_ICV_LEN: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_ICV_LEN; +pub const IFLA_MACSEC_CIPHER_SUITE: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_CIPHER_SUITE; +pub const IFLA_MACSEC_WINDOW: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_WINDOW; +pub const IFLA_MACSEC_ENCODING_SA: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_ENCODING_SA; +pub const IFLA_MACSEC_ENCRYPT: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_ENCRYPT; +pub const IFLA_MACSEC_PROTECT: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_PROTECT; +pub const IFLA_MACSEC_INC_SCI: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_INC_SCI; +pub const IFLA_MACSEC_ES: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_ES; +pub const IFLA_MACSEC_SCB: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_SCB; +pub const IFLA_MACSEC_REPLAY_PROTECT: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_REPLAY_PROTECT; +pub const IFLA_MACSEC_VALIDATION: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_VALIDATION; +pub const IFLA_MACSEC_PAD: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_PAD; +pub const IFLA_MACSEC_OFFLOAD: _bindgen_ty_17 = _bindgen_ty_17::IFLA_MACSEC_OFFLOAD; +pub const __IFLA_MACSEC_MAX: _bindgen_ty_17 = _bindgen_ty_17::__IFLA_MACSEC_MAX; +pub const IFLA_XFRM_UNSPEC: _bindgen_ty_18 = _bindgen_ty_18::IFLA_XFRM_UNSPEC; +pub const IFLA_XFRM_LINK: _bindgen_ty_18 = _bindgen_ty_18::IFLA_XFRM_LINK; +pub const IFLA_XFRM_IF_ID: _bindgen_ty_18 = _bindgen_ty_18::IFLA_XFRM_IF_ID; +pub const IFLA_XFRM_COLLECT_METADATA: _bindgen_ty_18 = _bindgen_ty_18::IFLA_XFRM_COLLECT_METADATA; +pub const __IFLA_XFRM_MAX: _bindgen_ty_18 = _bindgen_ty_18::__IFLA_XFRM_MAX; +pub const IFLA_IPVLAN_UNSPEC: _bindgen_ty_19 = _bindgen_ty_19::IFLA_IPVLAN_UNSPEC; +pub const IFLA_IPVLAN_MODE: _bindgen_ty_19 = _bindgen_ty_19::IFLA_IPVLAN_MODE; +pub const IFLA_IPVLAN_FLAGS: _bindgen_ty_19 = _bindgen_ty_19::IFLA_IPVLAN_FLAGS; +pub const __IFLA_IPVLAN_MAX: _bindgen_ty_19 = _bindgen_ty_19::__IFLA_IPVLAN_MAX; +pub const IFLA_NETKIT_UNSPEC: _bindgen_ty_20 = _bindgen_ty_20::IFLA_NETKIT_UNSPEC; +pub const IFLA_NETKIT_PEER_INFO: _bindgen_ty_20 = _bindgen_ty_20::IFLA_NETKIT_PEER_INFO; +pub const IFLA_NETKIT_PRIMARY: _bindgen_ty_20 = _bindgen_ty_20::IFLA_NETKIT_PRIMARY; +pub const IFLA_NETKIT_POLICY: _bindgen_ty_20 = _bindgen_ty_20::IFLA_NETKIT_POLICY; +pub const IFLA_NETKIT_PEER_POLICY: _bindgen_ty_20 = _bindgen_ty_20::IFLA_NETKIT_PEER_POLICY; +pub const IFLA_NETKIT_MODE: _bindgen_ty_20 = _bindgen_ty_20::IFLA_NETKIT_MODE; +pub const IFLA_NETKIT_SCRUB: _bindgen_ty_20 = _bindgen_ty_20::IFLA_NETKIT_SCRUB; +pub const IFLA_NETKIT_PEER_SCRUB: _bindgen_ty_20 = _bindgen_ty_20::IFLA_NETKIT_PEER_SCRUB; +pub const IFLA_NETKIT_HEADROOM: _bindgen_ty_20 = _bindgen_ty_20::IFLA_NETKIT_HEADROOM; +pub const IFLA_NETKIT_TAILROOM: _bindgen_ty_20 = _bindgen_ty_20::IFLA_NETKIT_TAILROOM; +pub const __IFLA_NETKIT_MAX: _bindgen_ty_20 = _bindgen_ty_20::__IFLA_NETKIT_MAX; +pub const VNIFILTER_ENTRY_STATS_UNSPEC: _bindgen_ty_21 = _bindgen_ty_21::VNIFILTER_ENTRY_STATS_UNSPEC; +pub const VNIFILTER_ENTRY_STATS_RX_BYTES: _bindgen_ty_21 = _bindgen_ty_21::VNIFILTER_ENTRY_STATS_RX_BYTES; +pub const VNIFILTER_ENTRY_STATS_RX_PKTS: _bindgen_ty_21 = _bindgen_ty_21::VNIFILTER_ENTRY_STATS_RX_PKTS; +pub const VNIFILTER_ENTRY_STATS_RX_DROPS: _bindgen_ty_21 = _bindgen_ty_21::VNIFILTER_ENTRY_STATS_RX_DROPS; +pub const VNIFILTER_ENTRY_STATS_RX_ERRORS: _bindgen_ty_21 = _bindgen_ty_21::VNIFILTER_ENTRY_STATS_RX_ERRORS; +pub const VNIFILTER_ENTRY_STATS_TX_BYTES: _bindgen_ty_21 = _bindgen_ty_21::VNIFILTER_ENTRY_STATS_TX_BYTES; +pub const VNIFILTER_ENTRY_STATS_TX_PKTS: _bindgen_ty_21 = _bindgen_ty_21::VNIFILTER_ENTRY_STATS_TX_PKTS; +pub const VNIFILTER_ENTRY_STATS_TX_DROPS: _bindgen_ty_21 = _bindgen_ty_21::VNIFILTER_ENTRY_STATS_TX_DROPS; +pub const VNIFILTER_ENTRY_STATS_TX_ERRORS: _bindgen_ty_21 = _bindgen_ty_21::VNIFILTER_ENTRY_STATS_TX_ERRORS; +pub const VNIFILTER_ENTRY_STATS_PAD: _bindgen_ty_21 = _bindgen_ty_21::VNIFILTER_ENTRY_STATS_PAD; +pub const __VNIFILTER_ENTRY_STATS_MAX: _bindgen_ty_21 = _bindgen_ty_21::__VNIFILTER_ENTRY_STATS_MAX; +pub const VXLAN_VNIFILTER_ENTRY_UNSPEC: _bindgen_ty_22 = _bindgen_ty_22::VXLAN_VNIFILTER_ENTRY_UNSPEC; +pub const VXLAN_VNIFILTER_ENTRY_START: _bindgen_ty_22 = _bindgen_ty_22::VXLAN_VNIFILTER_ENTRY_START; +pub const VXLAN_VNIFILTER_ENTRY_END: _bindgen_ty_22 = _bindgen_ty_22::VXLAN_VNIFILTER_ENTRY_END; +pub const VXLAN_VNIFILTER_ENTRY_GROUP: _bindgen_ty_22 = _bindgen_ty_22::VXLAN_VNIFILTER_ENTRY_GROUP; +pub const VXLAN_VNIFILTER_ENTRY_GROUP6: _bindgen_ty_22 = _bindgen_ty_22::VXLAN_VNIFILTER_ENTRY_GROUP6; +pub const VXLAN_VNIFILTER_ENTRY_STATS: _bindgen_ty_22 = _bindgen_ty_22::VXLAN_VNIFILTER_ENTRY_STATS; +pub const __VXLAN_VNIFILTER_ENTRY_MAX: _bindgen_ty_22 = _bindgen_ty_22::__VXLAN_VNIFILTER_ENTRY_MAX; +pub const VXLAN_VNIFILTER_UNSPEC: _bindgen_ty_23 = _bindgen_ty_23::VXLAN_VNIFILTER_UNSPEC; +pub const VXLAN_VNIFILTER_ENTRY: _bindgen_ty_23 = _bindgen_ty_23::VXLAN_VNIFILTER_ENTRY; +pub const __VXLAN_VNIFILTER_MAX: _bindgen_ty_23 = _bindgen_ty_23::__VXLAN_VNIFILTER_MAX; +pub const IFLA_VXLAN_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_UNSPEC; +pub const IFLA_VXLAN_ID: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_ID; +pub const IFLA_VXLAN_GROUP: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_GROUP; +pub const IFLA_VXLAN_LINK: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_LINK; +pub const IFLA_VXLAN_LOCAL: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_LOCAL; +pub const IFLA_VXLAN_TTL: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_TTL; +pub const IFLA_VXLAN_TOS: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_TOS; +pub const IFLA_VXLAN_LEARNING: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_LEARNING; +pub const IFLA_VXLAN_AGEING: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_AGEING; +pub const IFLA_VXLAN_LIMIT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_LIMIT; +pub const IFLA_VXLAN_PORT_RANGE: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_PORT_RANGE; +pub const IFLA_VXLAN_PROXY: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_PROXY; +pub const IFLA_VXLAN_RSC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_RSC; +pub const IFLA_VXLAN_L2MISS: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_L2MISS; +pub const IFLA_VXLAN_L3MISS: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_L3MISS; +pub const IFLA_VXLAN_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_PORT; +pub const IFLA_VXLAN_GROUP6: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_GROUP6; +pub const IFLA_VXLAN_LOCAL6: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_LOCAL6; +pub const IFLA_VXLAN_UDP_CSUM: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_UDP_CSUM; +pub const IFLA_VXLAN_UDP_ZERO_CSUM6_TX: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_UDP_ZERO_CSUM6_TX; +pub const IFLA_VXLAN_UDP_ZERO_CSUM6_RX: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_UDP_ZERO_CSUM6_RX; +pub const IFLA_VXLAN_REMCSUM_TX: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_REMCSUM_TX; +pub const IFLA_VXLAN_REMCSUM_RX: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_REMCSUM_RX; +pub const IFLA_VXLAN_GBP: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_GBP; +pub const IFLA_VXLAN_REMCSUM_NOPARTIAL: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_REMCSUM_NOPARTIAL; +pub const IFLA_VXLAN_COLLECT_METADATA: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_COLLECT_METADATA; +pub const IFLA_VXLAN_LABEL: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_LABEL; +pub const IFLA_VXLAN_GPE: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_GPE; +pub const IFLA_VXLAN_TTL_INHERIT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_TTL_INHERIT; +pub const IFLA_VXLAN_DF: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_DF; +pub const IFLA_VXLAN_VNIFILTER: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_VNIFILTER; +pub const IFLA_VXLAN_LOCALBYPASS: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_LOCALBYPASS; +pub const IFLA_VXLAN_LABEL_POLICY: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_LABEL_POLICY; +pub const IFLA_VXLAN_RESERVED_BITS: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_RESERVED_BITS; +pub const IFLA_VXLAN_MC_ROUTE: _bindgen_ty_24 = _bindgen_ty_24::IFLA_VXLAN_MC_ROUTE; +pub const __IFLA_VXLAN_MAX: _bindgen_ty_24 = _bindgen_ty_24::__IFLA_VXLAN_MAX; +pub const IFLA_GENEVE_UNSPEC: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_UNSPEC; +pub const IFLA_GENEVE_ID: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_ID; +pub const IFLA_GENEVE_REMOTE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_REMOTE; +pub const IFLA_GENEVE_TTL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL; +pub const IFLA_GENEVE_TOS: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TOS; +pub const IFLA_GENEVE_PORT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT; +pub const IFLA_GENEVE_COLLECT_METADATA: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_COLLECT_METADATA; +pub const IFLA_GENEVE_REMOTE6: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_REMOTE6; +pub const IFLA_GENEVE_UDP_CSUM: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_UDP_CSUM; +pub const IFLA_GENEVE_UDP_ZERO_CSUM6_TX: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_UDP_ZERO_CSUM6_TX; +pub const IFLA_GENEVE_UDP_ZERO_CSUM6_RX: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_UDP_ZERO_CSUM6_RX; +pub const IFLA_GENEVE_LABEL: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_LABEL; +pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_TTL_INHERIT; +pub const IFLA_GENEVE_DF: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_DF; +pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GENEVE_PORT_RANGE; +pub const __IFLA_GENEVE_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GENEVE_MAX; +pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_UNSPEC; +pub const IFLA_BAREUDP_PORT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_PORT; +pub const IFLA_BAREUDP_ETHERTYPE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_ETHERTYPE; +pub const IFLA_BAREUDP_SRCPORT_MIN: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_SRCPORT_MIN; +pub const IFLA_BAREUDP_MULTIPROTO_MODE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BAREUDP_MULTIPROTO_MODE; +pub const __IFLA_BAREUDP_MAX: _bindgen_ty_26 = _bindgen_ty_26::__IFLA_BAREUDP_MAX; +pub const IFLA_PPP_UNSPEC: _bindgen_ty_27 = _bindgen_ty_27::IFLA_PPP_UNSPEC; +pub const IFLA_PPP_DEV_FD: _bindgen_ty_27 = _bindgen_ty_27::IFLA_PPP_DEV_FD; +pub const __IFLA_PPP_MAX: _bindgen_ty_27 = _bindgen_ty_27::__IFLA_PPP_MAX; +pub const IFLA_GTP_UNSPEC: _bindgen_ty_28 = _bindgen_ty_28::IFLA_GTP_UNSPEC; +pub const IFLA_GTP_FD0: _bindgen_ty_28 = _bindgen_ty_28::IFLA_GTP_FD0; +pub const IFLA_GTP_FD1: _bindgen_ty_28 = _bindgen_ty_28::IFLA_GTP_FD1; +pub const IFLA_GTP_PDP_HASHSIZE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_GTP_PDP_HASHSIZE; +pub const IFLA_GTP_ROLE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_GTP_ROLE; +pub const IFLA_GTP_CREATE_SOCKETS: _bindgen_ty_28 = _bindgen_ty_28::IFLA_GTP_CREATE_SOCKETS; +pub const IFLA_GTP_RESTART_COUNT: _bindgen_ty_28 = _bindgen_ty_28::IFLA_GTP_RESTART_COUNT; +pub const IFLA_GTP_LOCAL: _bindgen_ty_28 = _bindgen_ty_28::IFLA_GTP_LOCAL; +pub const IFLA_GTP_LOCAL6: _bindgen_ty_28 = _bindgen_ty_28::IFLA_GTP_LOCAL6; +pub const __IFLA_GTP_MAX: _bindgen_ty_28 = _bindgen_ty_28::__IFLA_GTP_MAX; +pub const IFLA_BOND_UNSPEC: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_UNSPEC; +pub const IFLA_BOND_MODE: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_MODE; +pub const IFLA_BOND_ACTIVE_SLAVE: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_ACTIVE_SLAVE; +pub const IFLA_BOND_MIIMON: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_MIIMON; +pub const IFLA_BOND_UPDELAY: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_UPDELAY; +pub const IFLA_BOND_DOWNDELAY: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_DOWNDELAY; +pub const IFLA_BOND_USE_CARRIER: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_USE_CARRIER; +pub const IFLA_BOND_ARP_INTERVAL: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_ARP_INTERVAL; +pub const IFLA_BOND_ARP_IP_TARGET: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_ARP_IP_TARGET; +pub const IFLA_BOND_ARP_VALIDATE: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_ARP_VALIDATE; +pub const IFLA_BOND_ARP_ALL_TARGETS: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_ARP_ALL_TARGETS; +pub const IFLA_BOND_PRIMARY: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_PRIMARY; +pub const IFLA_BOND_PRIMARY_RESELECT: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_PRIMARY_RESELECT; +pub const IFLA_BOND_FAIL_OVER_MAC: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_FAIL_OVER_MAC; +pub const IFLA_BOND_XMIT_HASH_POLICY: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_XMIT_HASH_POLICY; +pub const IFLA_BOND_RESEND_IGMP: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_RESEND_IGMP; +pub const IFLA_BOND_NUM_PEER_NOTIF: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_NUM_PEER_NOTIF; +pub const IFLA_BOND_ALL_SLAVES_ACTIVE: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_ALL_SLAVES_ACTIVE; +pub const IFLA_BOND_MIN_LINKS: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_MIN_LINKS; +pub const IFLA_BOND_LP_INTERVAL: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_LP_INTERVAL; +pub const IFLA_BOND_PACKETS_PER_SLAVE: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_PACKETS_PER_SLAVE; +pub const IFLA_BOND_AD_LACP_RATE: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_LACP_RATE; +pub const IFLA_BOND_AD_SELECT: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_SELECT; +pub const IFLA_BOND_AD_INFO: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO; +pub const IFLA_BOND_AD_ACTOR_SYS_PRIO: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_ACTOR_SYS_PRIO; +pub const IFLA_BOND_AD_USER_PORT_KEY: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_USER_PORT_KEY; +pub const IFLA_BOND_AD_ACTOR_SYSTEM: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_ACTOR_SYSTEM; +pub const IFLA_BOND_TLB_DYNAMIC_LB: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_TLB_DYNAMIC_LB; +pub const IFLA_BOND_PEER_NOTIF_DELAY: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_PEER_NOTIF_DELAY; +pub const IFLA_BOND_AD_LACP_ACTIVE: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_LACP_ACTIVE; +pub const IFLA_BOND_MISSED_MAX: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_MISSED_MAX; +pub const IFLA_BOND_NS_IP6_TARGET: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_NS_IP6_TARGET; +pub const IFLA_BOND_COUPLED_CONTROL: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_COUPLED_CONTROL; +pub const IFLA_BOND_BROADCAST_NEIGH: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_BROADCAST_NEIGH; +pub const __IFLA_BOND_MAX: _bindgen_ty_29 = _bindgen_ty_29::__IFLA_BOND_MAX; +pub const IFLA_BOND_AD_INFO_UNSPEC: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_AD_INFO_UNSPEC; +pub const IFLA_BOND_AD_INFO_AGGREGATOR: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_AD_INFO_AGGREGATOR; +pub const IFLA_BOND_AD_INFO_NUM_PORTS: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_AD_INFO_NUM_PORTS; +pub const IFLA_BOND_AD_INFO_ACTOR_KEY: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_AD_INFO_ACTOR_KEY; +pub const IFLA_BOND_AD_INFO_PARTNER_KEY: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_AD_INFO_PARTNER_KEY; +pub const IFLA_BOND_AD_INFO_PARTNER_MAC: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_AD_INFO_PARTNER_MAC; +pub const __IFLA_BOND_AD_INFO_MAX: _bindgen_ty_30 = _bindgen_ty_30::__IFLA_BOND_AD_INFO_MAX; +pub const IFLA_BOND_SLAVE_UNSPEC: _bindgen_ty_31 = _bindgen_ty_31::IFLA_BOND_SLAVE_UNSPEC; +pub const IFLA_BOND_SLAVE_STATE: _bindgen_ty_31 = _bindgen_ty_31::IFLA_BOND_SLAVE_STATE; +pub const IFLA_BOND_SLAVE_MII_STATUS: _bindgen_ty_31 = _bindgen_ty_31::IFLA_BOND_SLAVE_MII_STATUS; +pub const IFLA_BOND_SLAVE_LINK_FAILURE_COUNT: _bindgen_ty_31 = _bindgen_ty_31::IFLA_BOND_SLAVE_LINK_FAILURE_COUNT; +pub const IFLA_BOND_SLAVE_PERM_HWADDR: _bindgen_ty_31 = _bindgen_ty_31::IFLA_BOND_SLAVE_PERM_HWADDR; +pub const IFLA_BOND_SLAVE_QUEUE_ID: _bindgen_ty_31 = _bindgen_ty_31::IFLA_BOND_SLAVE_QUEUE_ID; +pub const IFLA_BOND_SLAVE_AD_AGGREGATOR_ID: _bindgen_ty_31 = _bindgen_ty_31::IFLA_BOND_SLAVE_AD_AGGREGATOR_ID; +pub const IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE: _bindgen_ty_31 = _bindgen_ty_31::IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE; +pub const IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE: _bindgen_ty_31 = _bindgen_ty_31::IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE; +pub const IFLA_BOND_SLAVE_PRIO: _bindgen_ty_31 = _bindgen_ty_31::IFLA_BOND_SLAVE_PRIO; +pub const __IFLA_BOND_SLAVE_MAX: _bindgen_ty_31 = _bindgen_ty_31::__IFLA_BOND_SLAVE_MAX; +pub const IFLA_VF_INFO_UNSPEC: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_INFO_UNSPEC; +pub const IFLA_VF_INFO: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_INFO; +pub const __IFLA_VF_INFO_MAX: _bindgen_ty_32 = _bindgen_ty_32::__IFLA_VF_INFO_MAX; +pub const IFLA_VF_UNSPEC: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_UNSPEC; +pub const IFLA_VF_MAC: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_MAC; +pub const IFLA_VF_VLAN: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_VLAN; +pub const IFLA_VF_TX_RATE: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_TX_RATE; +pub const IFLA_VF_SPOOFCHK: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_SPOOFCHK; +pub const IFLA_VF_LINK_STATE: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_LINK_STATE; +pub const IFLA_VF_RATE: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_RATE; +pub const IFLA_VF_RSS_QUERY_EN: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_RSS_QUERY_EN; +pub const IFLA_VF_STATS: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS; +pub const IFLA_VF_TRUST: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_TRUST; +pub const IFLA_VF_IB_NODE_GUID: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_IB_NODE_GUID; +pub const IFLA_VF_IB_PORT_GUID: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_IB_PORT_GUID; +pub const IFLA_VF_VLAN_LIST: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_VLAN_LIST; +pub const IFLA_VF_BROADCAST: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_BROADCAST; +pub const __IFLA_VF_MAX: _bindgen_ty_33 = _bindgen_ty_33::__IFLA_VF_MAX; +pub const IFLA_VF_VLAN_INFO_UNSPEC: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_VLAN_INFO_UNSPEC; +pub const IFLA_VF_VLAN_INFO: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_VLAN_INFO; +pub const __IFLA_VF_VLAN_INFO_MAX: _bindgen_ty_34 = _bindgen_ty_34::__IFLA_VF_VLAN_INFO_MAX; +pub const IFLA_VF_LINK_STATE_AUTO: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_LINK_STATE_AUTO; +pub const IFLA_VF_LINK_STATE_ENABLE: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_LINK_STATE_ENABLE; +pub const IFLA_VF_LINK_STATE_DISABLE: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_LINK_STATE_DISABLE; +pub const __IFLA_VF_LINK_STATE_MAX: _bindgen_ty_35 = _bindgen_ty_35::__IFLA_VF_LINK_STATE_MAX; +pub const IFLA_VF_STATS_RX_PACKETS: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_STATS_RX_PACKETS; +pub const IFLA_VF_STATS_TX_PACKETS: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_STATS_TX_PACKETS; +pub const IFLA_VF_STATS_RX_BYTES: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_STATS_RX_BYTES; +pub const IFLA_VF_STATS_TX_BYTES: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_STATS_TX_BYTES; +pub const IFLA_VF_STATS_BROADCAST: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_STATS_BROADCAST; +pub const IFLA_VF_STATS_MULTICAST: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_STATS_MULTICAST; +pub const IFLA_VF_STATS_PAD: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_STATS_PAD; +pub const IFLA_VF_STATS_RX_DROPPED: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_STATS_RX_DROPPED; +pub const IFLA_VF_STATS_TX_DROPPED: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_STATS_TX_DROPPED; +pub const __IFLA_VF_STATS_MAX: _bindgen_ty_36 = _bindgen_ty_36::__IFLA_VF_STATS_MAX; +pub const IFLA_VF_PORT_UNSPEC: _bindgen_ty_37 = _bindgen_ty_37::IFLA_VF_PORT_UNSPEC; +pub const IFLA_VF_PORT: _bindgen_ty_37 = _bindgen_ty_37::IFLA_VF_PORT; +pub const __IFLA_VF_PORT_MAX: _bindgen_ty_37 = _bindgen_ty_37::__IFLA_VF_PORT_MAX; +pub const IFLA_PORT_UNSPEC: _bindgen_ty_38 = _bindgen_ty_38::IFLA_PORT_UNSPEC; +pub const IFLA_PORT_VF: _bindgen_ty_38 = _bindgen_ty_38::IFLA_PORT_VF; +pub const IFLA_PORT_PROFILE: _bindgen_ty_38 = _bindgen_ty_38::IFLA_PORT_PROFILE; +pub const IFLA_PORT_VSI_TYPE: _bindgen_ty_38 = _bindgen_ty_38::IFLA_PORT_VSI_TYPE; +pub const IFLA_PORT_INSTANCE_UUID: _bindgen_ty_38 = _bindgen_ty_38::IFLA_PORT_INSTANCE_UUID; +pub const IFLA_PORT_HOST_UUID: _bindgen_ty_38 = _bindgen_ty_38::IFLA_PORT_HOST_UUID; +pub const IFLA_PORT_REQUEST: _bindgen_ty_38 = _bindgen_ty_38::IFLA_PORT_REQUEST; +pub const IFLA_PORT_RESPONSE: _bindgen_ty_38 = _bindgen_ty_38::IFLA_PORT_RESPONSE; +pub const __IFLA_PORT_MAX: _bindgen_ty_38 = _bindgen_ty_38::__IFLA_PORT_MAX; +pub const PORT_REQUEST_PREASSOCIATE: _bindgen_ty_39 = _bindgen_ty_39::PORT_REQUEST_PREASSOCIATE; +pub const PORT_REQUEST_PREASSOCIATE_RR: _bindgen_ty_39 = _bindgen_ty_39::PORT_REQUEST_PREASSOCIATE_RR; +pub const PORT_REQUEST_ASSOCIATE: _bindgen_ty_39 = _bindgen_ty_39::PORT_REQUEST_ASSOCIATE; +pub const PORT_REQUEST_DISASSOCIATE: _bindgen_ty_39 = _bindgen_ty_39::PORT_REQUEST_DISASSOCIATE; +pub const PORT_VDP_RESPONSE_SUCCESS: _bindgen_ty_40 = _bindgen_ty_40::PORT_VDP_RESPONSE_SUCCESS; +pub const PORT_VDP_RESPONSE_INVALID_FORMAT: _bindgen_ty_40 = _bindgen_ty_40::PORT_VDP_RESPONSE_INVALID_FORMAT; +pub const PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_40 = _bindgen_ty_40::PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES; +pub const PORT_VDP_RESPONSE_UNUSED_VTID: _bindgen_ty_40 = _bindgen_ty_40::PORT_VDP_RESPONSE_UNUSED_VTID; +pub const PORT_VDP_RESPONSE_VTID_VIOLATION: _bindgen_ty_40 = _bindgen_ty_40::PORT_VDP_RESPONSE_VTID_VIOLATION; +pub const PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION: _bindgen_ty_40 = _bindgen_ty_40::PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION; +pub const PORT_VDP_RESPONSE_OUT_OF_SYNC: _bindgen_ty_40 = _bindgen_ty_40::PORT_VDP_RESPONSE_OUT_OF_SYNC; +pub const PORT_PROFILE_RESPONSE_SUCCESS: _bindgen_ty_40 = _bindgen_ty_40::PORT_PROFILE_RESPONSE_SUCCESS; +pub const PORT_PROFILE_RESPONSE_INPROGRESS: _bindgen_ty_40 = _bindgen_ty_40::PORT_PROFILE_RESPONSE_INPROGRESS; +pub const PORT_PROFILE_RESPONSE_INVALID: _bindgen_ty_40 = _bindgen_ty_40::PORT_PROFILE_RESPONSE_INVALID; +pub const PORT_PROFILE_RESPONSE_BADSTATE: _bindgen_ty_40 = _bindgen_ty_40::PORT_PROFILE_RESPONSE_BADSTATE; +pub const PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_40 = _bindgen_ty_40::PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES; +pub const PORT_PROFILE_RESPONSE_ERROR: _bindgen_ty_40 = _bindgen_ty_40::PORT_PROFILE_RESPONSE_ERROR; +pub const IFLA_IPOIB_UNSPEC: _bindgen_ty_41 = _bindgen_ty_41::IFLA_IPOIB_UNSPEC; +pub const IFLA_IPOIB_PKEY: _bindgen_ty_41 = _bindgen_ty_41::IFLA_IPOIB_PKEY; +pub const IFLA_IPOIB_MODE: _bindgen_ty_41 = _bindgen_ty_41::IFLA_IPOIB_MODE; +pub const IFLA_IPOIB_UMCAST: _bindgen_ty_41 = _bindgen_ty_41::IFLA_IPOIB_UMCAST; +pub const __IFLA_IPOIB_MAX: _bindgen_ty_41 = _bindgen_ty_41::__IFLA_IPOIB_MAX; +pub const IPOIB_MODE_DATAGRAM: _bindgen_ty_42 = _bindgen_ty_42::IPOIB_MODE_DATAGRAM; +pub const IPOIB_MODE_CONNECTED: _bindgen_ty_42 = _bindgen_ty_42::IPOIB_MODE_CONNECTED; +pub const HSR_PROTOCOL_HSR: _bindgen_ty_43 = _bindgen_ty_43::HSR_PROTOCOL_HSR; +pub const HSR_PROTOCOL_PRP: _bindgen_ty_43 = _bindgen_ty_43::HSR_PROTOCOL_PRP; +pub const HSR_PROTOCOL_MAX: _bindgen_ty_43 = _bindgen_ty_43::HSR_PROTOCOL_MAX; +pub const IFLA_HSR_UNSPEC: _bindgen_ty_44 = _bindgen_ty_44::IFLA_HSR_UNSPEC; +pub const IFLA_HSR_SLAVE1: _bindgen_ty_44 = _bindgen_ty_44::IFLA_HSR_SLAVE1; +pub const IFLA_HSR_SLAVE2: _bindgen_ty_44 = _bindgen_ty_44::IFLA_HSR_SLAVE2; +pub const IFLA_HSR_MULTICAST_SPEC: _bindgen_ty_44 = _bindgen_ty_44::IFLA_HSR_MULTICAST_SPEC; +pub const IFLA_HSR_SUPERVISION_ADDR: _bindgen_ty_44 = _bindgen_ty_44::IFLA_HSR_SUPERVISION_ADDR; +pub const IFLA_HSR_SEQ_NR: _bindgen_ty_44 = _bindgen_ty_44::IFLA_HSR_SEQ_NR; +pub const IFLA_HSR_VERSION: _bindgen_ty_44 = _bindgen_ty_44::IFLA_HSR_VERSION; +pub const IFLA_HSR_PROTOCOL: _bindgen_ty_44 = _bindgen_ty_44::IFLA_HSR_PROTOCOL; +pub const IFLA_HSR_INTERLINK: _bindgen_ty_44 = _bindgen_ty_44::IFLA_HSR_INTERLINK; +pub const __IFLA_HSR_MAX: _bindgen_ty_44 = _bindgen_ty_44::__IFLA_HSR_MAX; +pub const IFLA_STATS_UNSPEC: _bindgen_ty_45 = _bindgen_ty_45::IFLA_STATS_UNSPEC; +pub const IFLA_STATS_LINK_64: _bindgen_ty_45 = _bindgen_ty_45::IFLA_STATS_LINK_64; +pub const IFLA_STATS_LINK_XSTATS: _bindgen_ty_45 = _bindgen_ty_45::IFLA_STATS_LINK_XSTATS; +pub const IFLA_STATS_LINK_XSTATS_SLAVE: _bindgen_ty_45 = _bindgen_ty_45::IFLA_STATS_LINK_XSTATS_SLAVE; +pub const IFLA_STATS_LINK_OFFLOAD_XSTATS: _bindgen_ty_45 = _bindgen_ty_45::IFLA_STATS_LINK_OFFLOAD_XSTATS; +pub const IFLA_STATS_AF_SPEC: _bindgen_ty_45 = _bindgen_ty_45::IFLA_STATS_AF_SPEC; +pub const __IFLA_STATS_MAX: _bindgen_ty_45 = _bindgen_ty_45::__IFLA_STATS_MAX; +pub const IFLA_STATS_GETSET_UNSPEC: _bindgen_ty_46 = _bindgen_ty_46::IFLA_STATS_GETSET_UNSPEC; +pub const IFLA_STATS_GET_FILTERS: _bindgen_ty_46 = _bindgen_ty_46::IFLA_STATS_GET_FILTERS; +pub const IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_46 = _bindgen_ty_46::IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS; +pub const __IFLA_STATS_GETSET_MAX: _bindgen_ty_46 = _bindgen_ty_46::__IFLA_STATS_GETSET_MAX; +pub const LINK_XSTATS_TYPE_UNSPEC: _bindgen_ty_47 = _bindgen_ty_47::LINK_XSTATS_TYPE_UNSPEC; +pub const LINK_XSTATS_TYPE_BRIDGE: _bindgen_ty_47 = _bindgen_ty_47::LINK_XSTATS_TYPE_BRIDGE; +pub const LINK_XSTATS_TYPE_BOND: _bindgen_ty_47 = _bindgen_ty_47::LINK_XSTATS_TYPE_BOND; +pub const __LINK_XSTATS_TYPE_MAX: _bindgen_ty_47 = _bindgen_ty_47::__LINK_XSTATS_TYPE_MAX; +pub const IFLA_OFFLOAD_XSTATS_UNSPEC: _bindgen_ty_48 = _bindgen_ty_48::IFLA_OFFLOAD_XSTATS_UNSPEC; +pub const IFLA_OFFLOAD_XSTATS_CPU_HIT: _bindgen_ty_48 = _bindgen_ty_48::IFLA_OFFLOAD_XSTATS_CPU_HIT; +pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO: _bindgen_ty_48 = _bindgen_ty_48::IFLA_OFFLOAD_XSTATS_HW_S_INFO; +pub const IFLA_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_48 = _bindgen_ty_48::IFLA_OFFLOAD_XSTATS_L3_STATS; +pub const __IFLA_OFFLOAD_XSTATS_MAX: _bindgen_ty_48 = _bindgen_ty_48::__IFLA_OFFLOAD_XSTATS_MAX; +pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC: _bindgen_ty_49 = _bindgen_ty_49::IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC; +pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST: _bindgen_ty_49 = _bindgen_ty_49::IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST; +pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED: _bindgen_ty_49 = _bindgen_ty_49::IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED; +pub const __IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX: _bindgen_ty_49 = _bindgen_ty_49::__IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX; +pub const XDP_ATTACHED_NONE: _bindgen_ty_50 = _bindgen_ty_50::XDP_ATTACHED_NONE; +pub const XDP_ATTACHED_DRV: _bindgen_ty_50 = _bindgen_ty_50::XDP_ATTACHED_DRV; +pub const XDP_ATTACHED_SKB: _bindgen_ty_50 = _bindgen_ty_50::XDP_ATTACHED_SKB; +pub const XDP_ATTACHED_HW: _bindgen_ty_50 = _bindgen_ty_50::XDP_ATTACHED_HW; +pub const XDP_ATTACHED_MULTI: _bindgen_ty_50 = _bindgen_ty_50::XDP_ATTACHED_MULTI; +pub const IFLA_XDP_UNSPEC: _bindgen_ty_51 = _bindgen_ty_51::IFLA_XDP_UNSPEC; +pub const IFLA_XDP_FD: _bindgen_ty_51 = _bindgen_ty_51::IFLA_XDP_FD; +pub const IFLA_XDP_ATTACHED: _bindgen_ty_51 = _bindgen_ty_51::IFLA_XDP_ATTACHED; +pub const IFLA_XDP_FLAGS: _bindgen_ty_51 = _bindgen_ty_51::IFLA_XDP_FLAGS; +pub const IFLA_XDP_PROG_ID: _bindgen_ty_51 = _bindgen_ty_51::IFLA_XDP_PROG_ID; +pub const IFLA_XDP_DRV_PROG_ID: _bindgen_ty_51 = _bindgen_ty_51::IFLA_XDP_DRV_PROG_ID; +pub const IFLA_XDP_SKB_PROG_ID: _bindgen_ty_51 = _bindgen_ty_51::IFLA_XDP_SKB_PROG_ID; +pub const IFLA_XDP_HW_PROG_ID: _bindgen_ty_51 = _bindgen_ty_51::IFLA_XDP_HW_PROG_ID; +pub const IFLA_XDP_EXPECTED_FD: _bindgen_ty_51 = _bindgen_ty_51::IFLA_XDP_EXPECTED_FD; +pub const __IFLA_XDP_MAX: _bindgen_ty_51 = _bindgen_ty_51::__IFLA_XDP_MAX; +pub const IFLA_EVENT_NONE: _bindgen_ty_52 = _bindgen_ty_52::IFLA_EVENT_NONE; +pub const IFLA_EVENT_REBOOT: _bindgen_ty_52 = _bindgen_ty_52::IFLA_EVENT_REBOOT; +pub const IFLA_EVENT_FEATURES: _bindgen_ty_52 = _bindgen_ty_52::IFLA_EVENT_FEATURES; +pub const IFLA_EVENT_BONDING_FAILOVER: _bindgen_ty_52 = _bindgen_ty_52::IFLA_EVENT_BONDING_FAILOVER; +pub const IFLA_EVENT_NOTIFY_PEERS: _bindgen_ty_52 = _bindgen_ty_52::IFLA_EVENT_NOTIFY_PEERS; +pub const IFLA_EVENT_IGMP_RESEND: _bindgen_ty_52 = _bindgen_ty_52::IFLA_EVENT_IGMP_RESEND; +pub const IFLA_EVENT_BONDING_OPTIONS: _bindgen_ty_52 = _bindgen_ty_52::IFLA_EVENT_BONDING_OPTIONS; +pub const IFLA_TUN_UNSPEC: _bindgen_ty_53 = _bindgen_ty_53::IFLA_TUN_UNSPEC; +pub const IFLA_TUN_OWNER: _bindgen_ty_53 = _bindgen_ty_53::IFLA_TUN_OWNER; +pub const IFLA_TUN_GROUP: _bindgen_ty_53 = _bindgen_ty_53::IFLA_TUN_GROUP; +pub const IFLA_TUN_TYPE: _bindgen_ty_53 = _bindgen_ty_53::IFLA_TUN_TYPE; +pub const IFLA_TUN_PI: _bindgen_ty_53 = _bindgen_ty_53::IFLA_TUN_PI; +pub const IFLA_TUN_VNET_HDR: _bindgen_ty_53 = _bindgen_ty_53::IFLA_TUN_VNET_HDR; +pub const IFLA_TUN_PERSIST: _bindgen_ty_53 = _bindgen_ty_53::IFLA_TUN_PERSIST; +pub const IFLA_TUN_MULTI_QUEUE: _bindgen_ty_53 = _bindgen_ty_53::IFLA_TUN_MULTI_QUEUE; +pub const IFLA_TUN_NUM_QUEUES: _bindgen_ty_53 = _bindgen_ty_53::IFLA_TUN_NUM_QUEUES; +pub const IFLA_TUN_NUM_DISABLED_QUEUES: _bindgen_ty_53 = _bindgen_ty_53::IFLA_TUN_NUM_DISABLED_QUEUES; +pub const __IFLA_TUN_MAX: _bindgen_ty_53 = _bindgen_ty_53::__IFLA_TUN_MAX; +pub const IFLA_RMNET_UNSPEC: _bindgen_ty_54 = _bindgen_ty_54::IFLA_RMNET_UNSPEC; +pub const IFLA_RMNET_MUX_ID: _bindgen_ty_54 = _bindgen_ty_54::IFLA_RMNET_MUX_ID; +pub const IFLA_RMNET_FLAGS: _bindgen_ty_54 = _bindgen_ty_54::IFLA_RMNET_FLAGS; +pub const __IFLA_RMNET_MAX: _bindgen_ty_54 = _bindgen_ty_54::__IFLA_RMNET_MAX; +pub const IFLA_MCTP_UNSPEC: _bindgen_ty_55 = _bindgen_ty_55::IFLA_MCTP_UNSPEC; +pub const IFLA_MCTP_NET: _bindgen_ty_55 = _bindgen_ty_55::IFLA_MCTP_NET; +pub const IFLA_MCTP_PHYS_BINDING: _bindgen_ty_55 = _bindgen_ty_55::IFLA_MCTP_PHYS_BINDING; +pub const __IFLA_MCTP_MAX: _bindgen_ty_55 = _bindgen_ty_55::__IFLA_MCTP_MAX; +pub const IFLA_DSA_UNSPEC: _bindgen_ty_56 = _bindgen_ty_56::IFLA_DSA_UNSPEC; +pub const IFLA_DSA_CONDUIT: _bindgen_ty_56 = _bindgen_ty_56::IFLA_DSA_CONDUIT; +pub const IFLA_DSA_MASTER: _bindgen_ty_56 = _bindgen_ty_56::IFLA_DSA_CONDUIT; +pub const __IFLA_DSA_MAX: _bindgen_ty_56 = _bindgen_ty_56::__IFLA_DSA_MAX; +pub const IFLA_OVPN_UNSPEC: _bindgen_ty_57 = _bindgen_ty_57::IFLA_OVPN_UNSPEC; +pub const IFLA_OVPN_MODE: _bindgen_ty_57 = _bindgen_ty_57::IFLA_OVPN_MODE; +pub const __IFLA_OVPN_MAX: _bindgen_ty_57 = _bindgen_ty_57::__IFLA_OVPN_MAX; +pub const IF_PORT_UNKNOWN: _bindgen_ty_58 = _bindgen_ty_58::IF_PORT_UNKNOWN; +pub const IF_PORT_10BASE2: _bindgen_ty_58 = _bindgen_ty_58::IF_PORT_10BASE2; +pub const IF_PORT_10BASET: _bindgen_ty_58 = _bindgen_ty_58::IF_PORT_10BASET; +pub const IF_PORT_AUI: _bindgen_ty_58 = _bindgen_ty_58::IF_PORT_AUI; +pub const IF_PORT_100BASET: _bindgen_ty_58 = _bindgen_ty_58::IF_PORT_100BASET; +pub const IF_PORT_100BASETX: _bindgen_ty_58 = _bindgen_ty_58::IF_PORT_100BASETX; +pub const IF_PORT_100BASEFX: _bindgen_ty_58 = _bindgen_ty_58::IF_PORT_100BASEFX; +#[repr(u32)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum net_device_flags { +IFF_UP = 1, +IFF_BROADCAST = 2, +IFF_DEBUG = 4, +IFF_LOOPBACK = 8, +IFF_POINTOPOINT = 16, +IFF_NOTRAILERS = 32, +IFF_RUNNING = 64, +IFF_NOARP = 128, +IFF_PROMISC = 256, +IFF_ALLMULTI = 512, +IFF_MASTER = 1024, +IFF_SLAVE = 2048, +IFF_MULTICAST = 4096, +IFF_PORTSEL = 8192, +IFF_AUTOMEDIA = 16384, +IFF_DYNAMIC = 32768, +IFF_LOWER_UP = 65536, +IFF_DORMANT = 131072, +IFF_ECHO = 262144, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_1 { +IF_OPER_UNKNOWN = 0, +IF_OPER_NOTPRESENT = 1, +IF_OPER_DOWN = 2, +IF_OPER_LOWERLAYERDOWN = 3, +IF_OPER_TESTING = 4, +IF_OPER_DORMANT = 5, +IF_OPER_UP = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_2 { +IF_LINK_MODE_DEFAULT = 0, +IF_LINK_MODE_DORMANT = 1, +IF_LINK_MODE_TESTING = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum tpacket_versions { +TPACKET_V1 = 0, +TPACKET_V2 = 1, +TPACKET_V3 = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nlmsgerr_attrs { +NLMSGERR_ATTR_UNUSED = 0, +NLMSGERR_ATTR_MSG = 1, +NLMSGERR_ATTR_OFFS = 2, +NLMSGERR_ATTR_COOKIE = 3, +NLMSGERR_ATTR_POLICY = 4, +NLMSGERR_ATTR_MISS_TYPE = 5, +NLMSGERR_ATTR_MISS_NEST = 6, +__NLMSGERR_ATTR_MAX = 7, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl_mmap_status { +NL_MMAP_STATUS_UNUSED = 0, +NL_MMAP_STATUS_RESERVED = 1, +NL_MMAP_STATUS_VALID = 2, +NL_MMAP_STATUS_COPY = 3, +NL_MMAP_STATUS_SKIP = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_3 { +NETLINK_UNCONNECTED = 0, +NETLINK_CONNECTED = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum netlink_attribute_type { +NL_ATTR_TYPE_INVALID = 0, +NL_ATTR_TYPE_FLAG = 1, +NL_ATTR_TYPE_U8 = 2, +NL_ATTR_TYPE_U16 = 3, +NL_ATTR_TYPE_U32 = 4, +NL_ATTR_TYPE_U64 = 5, +NL_ATTR_TYPE_S8 = 6, +NL_ATTR_TYPE_S16 = 7, +NL_ATTR_TYPE_S32 = 8, +NL_ATTR_TYPE_S64 = 9, +NL_ATTR_TYPE_BINARY = 10, +NL_ATTR_TYPE_STRING = 11, +NL_ATTR_TYPE_NUL_STRING = 12, +NL_ATTR_TYPE_NESTED = 13, +NL_ATTR_TYPE_NESTED_ARRAY = 14, +NL_ATTR_TYPE_BITFIELD32 = 15, +NL_ATTR_TYPE_SINT = 16, +NL_ATTR_TYPE_UINT = 17, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum netlink_policy_type_attr { +NL_POLICY_TYPE_ATTR_UNSPEC = 0, +NL_POLICY_TYPE_ATTR_TYPE = 1, +NL_POLICY_TYPE_ATTR_MIN_VALUE_S = 2, +NL_POLICY_TYPE_ATTR_MAX_VALUE_S = 3, +NL_POLICY_TYPE_ATTR_MIN_VALUE_U = 4, +NL_POLICY_TYPE_ATTR_MAX_VALUE_U = 5, +NL_POLICY_TYPE_ATTR_MIN_LENGTH = 6, +NL_POLICY_TYPE_ATTR_MAX_LENGTH = 7, +NL_POLICY_TYPE_ATTR_POLICY_IDX = 8, +NL_POLICY_TYPE_ATTR_POLICY_MAXTYPE = 9, +NL_POLICY_TYPE_ATTR_BITFIELD32_MASK = 10, +NL_POLICY_TYPE_ATTR_PAD = 11, +NL_POLICY_TYPE_ATTR_MASK = 12, +__NL_POLICY_TYPE_ATTR_MAX = 13, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_4 { +IFLA_UNSPEC = 0, +IFLA_ADDRESS = 1, +IFLA_BROADCAST = 2, +IFLA_IFNAME = 3, +IFLA_MTU = 4, +IFLA_LINK = 5, +IFLA_QDISC = 6, +IFLA_STATS = 7, +IFLA_COST = 8, +IFLA_PRIORITY = 9, +IFLA_MASTER = 10, +IFLA_WIRELESS = 11, +IFLA_PROTINFO = 12, +IFLA_TXQLEN = 13, +IFLA_MAP = 14, +IFLA_WEIGHT = 15, +IFLA_OPERSTATE = 16, +IFLA_LINKMODE = 17, +IFLA_LINKINFO = 18, +IFLA_NET_NS_PID = 19, +IFLA_IFALIAS = 20, +IFLA_NUM_VF = 21, +IFLA_VFINFO_LIST = 22, +IFLA_STATS64 = 23, +IFLA_VF_PORTS = 24, +IFLA_PORT_SELF = 25, +IFLA_AF_SPEC = 26, +IFLA_GROUP = 27, +IFLA_NET_NS_FD = 28, +IFLA_EXT_MASK = 29, +IFLA_PROMISCUITY = 30, +IFLA_NUM_TX_QUEUES = 31, +IFLA_NUM_RX_QUEUES = 32, +IFLA_CARRIER = 33, +IFLA_PHYS_PORT_ID = 34, +IFLA_CARRIER_CHANGES = 35, +IFLA_PHYS_SWITCH_ID = 36, +IFLA_LINK_NETNSID = 37, +IFLA_PHYS_PORT_NAME = 38, +IFLA_PROTO_DOWN = 39, +IFLA_GSO_MAX_SEGS = 40, +IFLA_GSO_MAX_SIZE = 41, +IFLA_PAD = 42, +IFLA_XDP = 43, +IFLA_EVENT = 44, +IFLA_NEW_NETNSID = 45, +IFLA_IF_NETNSID = 46, +IFLA_CARRIER_UP_COUNT = 47, +IFLA_CARRIER_DOWN_COUNT = 48, +IFLA_NEW_IFINDEX = 49, +IFLA_MIN_MTU = 50, +IFLA_MAX_MTU = 51, +IFLA_PROP_LIST = 52, +IFLA_ALT_IFNAME = 53, +IFLA_PERM_ADDRESS = 54, +IFLA_PROTO_DOWN_REASON = 55, +IFLA_PARENT_DEV_NAME = 56, +IFLA_PARENT_DEV_BUS_NAME = 57, +IFLA_GRO_MAX_SIZE = 58, +IFLA_TSO_MAX_SIZE = 59, +IFLA_TSO_MAX_SEGS = 60, +IFLA_ALLMULTI = 61, +IFLA_DEVLINK_PORT = 62, +IFLA_GSO_IPV4_MAX_SIZE = 63, +IFLA_GRO_IPV4_MAX_SIZE = 64, +IFLA_DPLL_PIN = 65, +IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_5 { +IFLA_PROTO_DOWN_REASON_UNSPEC = 0, +IFLA_PROTO_DOWN_REASON_MASK = 1, +IFLA_PROTO_DOWN_REASON_VALUE = 2, +__IFLA_PROTO_DOWN_REASON_CNT = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_6 { +IFLA_INET_UNSPEC = 0, +IFLA_INET_CONF = 1, +__IFLA_INET_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_7 { +IFLA_INET6_UNSPEC = 0, +IFLA_INET6_FLAGS = 1, +IFLA_INET6_CONF = 2, +IFLA_INET6_STATS = 3, +IFLA_INET6_MCAST = 4, +IFLA_INET6_CACHEINFO = 5, +IFLA_INET6_ICMP6STATS = 6, +IFLA_INET6_TOKEN = 7, +IFLA_INET6_ADDR_GEN_MODE = 8, +IFLA_INET6_RA_MTU = 9, +__IFLA_INET6_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum in6_addr_gen_mode { +IN6_ADDR_GEN_MODE_EUI64 = 0, +IN6_ADDR_GEN_MODE_NONE = 1, +IN6_ADDR_GEN_MODE_STABLE_PRIVACY = 2, +IN6_ADDR_GEN_MODE_RANDOM = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_8 { +IFLA_BR_UNSPEC = 0, +IFLA_BR_FORWARD_DELAY = 1, +IFLA_BR_HELLO_TIME = 2, +IFLA_BR_MAX_AGE = 3, +IFLA_BR_AGEING_TIME = 4, +IFLA_BR_STP_STATE = 5, +IFLA_BR_PRIORITY = 6, +IFLA_BR_VLAN_FILTERING = 7, +IFLA_BR_VLAN_PROTOCOL = 8, +IFLA_BR_GROUP_FWD_MASK = 9, +IFLA_BR_ROOT_ID = 10, +IFLA_BR_BRIDGE_ID = 11, +IFLA_BR_ROOT_PORT = 12, +IFLA_BR_ROOT_PATH_COST = 13, +IFLA_BR_TOPOLOGY_CHANGE = 14, +IFLA_BR_TOPOLOGY_CHANGE_DETECTED = 15, +IFLA_BR_HELLO_TIMER = 16, +IFLA_BR_TCN_TIMER = 17, +IFLA_BR_TOPOLOGY_CHANGE_TIMER = 18, +IFLA_BR_GC_TIMER = 19, +IFLA_BR_GROUP_ADDR = 20, +IFLA_BR_FDB_FLUSH = 21, +IFLA_BR_MCAST_ROUTER = 22, +IFLA_BR_MCAST_SNOOPING = 23, +IFLA_BR_MCAST_QUERY_USE_IFADDR = 24, +IFLA_BR_MCAST_QUERIER = 25, +IFLA_BR_MCAST_HASH_ELASTICITY = 26, +IFLA_BR_MCAST_HASH_MAX = 27, +IFLA_BR_MCAST_LAST_MEMBER_CNT = 28, +IFLA_BR_MCAST_STARTUP_QUERY_CNT = 29, +IFLA_BR_MCAST_LAST_MEMBER_INTVL = 30, +IFLA_BR_MCAST_MEMBERSHIP_INTVL = 31, +IFLA_BR_MCAST_QUERIER_INTVL = 32, +IFLA_BR_MCAST_QUERY_INTVL = 33, +IFLA_BR_MCAST_QUERY_RESPONSE_INTVL = 34, +IFLA_BR_MCAST_STARTUP_QUERY_INTVL = 35, +IFLA_BR_NF_CALL_IPTABLES = 36, +IFLA_BR_NF_CALL_IP6TABLES = 37, +IFLA_BR_NF_CALL_ARPTABLES = 38, +IFLA_BR_VLAN_DEFAULT_PVID = 39, +IFLA_BR_PAD = 40, +IFLA_BR_VLAN_STATS_ENABLED = 41, +IFLA_BR_MCAST_STATS_ENABLED = 42, +IFLA_BR_MCAST_IGMP_VERSION = 43, +IFLA_BR_MCAST_MLD_VERSION = 44, +IFLA_BR_VLAN_STATS_PER_PORT = 45, +IFLA_BR_MULTI_BOOLOPT = 46, +IFLA_BR_MCAST_QUERIER_STATE = 47, +IFLA_BR_FDB_N_LEARNED = 48, +IFLA_BR_FDB_MAX_LEARNED = 49, +__IFLA_BR_MAX = 50, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_9 { +BRIDGE_MODE_UNSPEC = 0, +BRIDGE_MODE_HAIRPIN = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_10 { +IFLA_BRPORT_UNSPEC = 0, +IFLA_BRPORT_STATE = 1, +IFLA_BRPORT_PRIORITY = 2, +IFLA_BRPORT_COST = 3, +IFLA_BRPORT_MODE = 4, +IFLA_BRPORT_GUARD = 5, +IFLA_BRPORT_PROTECT = 6, +IFLA_BRPORT_FAST_LEAVE = 7, +IFLA_BRPORT_LEARNING = 8, +IFLA_BRPORT_UNICAST_FLOOD = 9, +IFLA_BRPORT_PROXYARP = 10, +IFLA_BRPORT_LEARNING_SYNC = 11, +IFLA_BRPORT_PROXYARP_WIFI = 12, +IFLA_BRPORT_ROOT_ID = 13, +IFLA_BRPORT_BRIDGE_ID = 14, +IFLA_BRPORT_DESIGNATED_PORT = 15, +IFLA_BRPORT_DESIGNATED_COST = 16, +IFLA_BRPORT_ID = 17, +IFLA_BRPORT_NO = 18, +IFLA_BRPORT_TOPOLOGY_CHANGE_ACK = 19, +IFLA_BRPORT_CONFIG_PENDING = 20, +IFLA_BRPORT_MESSAGE_AGE_TIMER = 21, +IFLA_BRPORT_FORWARD_DELAY_TIMER = 22, +IFLA_BRPORT_HOLD_TIMER = 23, +IFLA_BRPORT_FLUSH = 24, +IFLA_BRPORT_MULTICAST_ROUTER = 25, +IFLA_BRPORT_PAD = 26, +IFLA_BRPORT_MCAST_FLOOD = 27, +IFLA_BRPORT_MCAST_TO_UCAST = 28, +IFLA_BRPORT_VLAN_TUNNEL = 29, +IFLA_BRPORT_BCAST_FLOOD = 30, +IFLA_BRPORT_GROUP_FWD_MASK = 31, +IFLA_BRPORT_NEIGH_SUPPRESS = 32, +IFLA_BRPORT_ISOLATED = 33, +IFLA_BRPORT_BACKUP_PORT = 34, +IFLA_BRPORT_MRP_RING_OPEN = 35, +IFLA_BRPORT_MRP_IN_OPEN = 36, +IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT = 37, +IFLA_BRPORT_MCAST_EHT_HOSTS_CNT = 38, +IFLA_BRPORT_LOCKED = 39, +IFLA_BRPORT_MAB = 40, +IFLA_BRPORT_MCAST_N_GROUPS = 41, +IFLA_BRPORT_MCAST_MAX_GROUPS = 42, +IFLA_BRPORT_NEIGH_VLAN_SUPPRESS = 43, +IFLA_BRPORT_BACKUP_NHID = 44, +__IFLA_BRPORT_MAX = 45, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_11 { +IFLA_INFO_UNSPEC = 0, +IFLA_INFO_KIND = 1, +IFLA_INFO_DATA = 2, +IFLA_INFO_XSTATS = 3, +IFLA_INFO_SLAVE_KIND = 4, +IFLA_INFO_SLAVE_DATA = 5, +__IFLA_INFO_MAX = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_12 { +IFLA_VLAN_UNSPEC = 0, +IFLA_VLAN_ID = 1, +IFLA_VLAN_FLAGS = 2, +IFLA_VLAN_EGRESS_QOS = 3, +IFLA_VLAN_INGRESS_QOS = 4, +IFLA_VLAN_PROTOCOL = 5, +__IFLA_VLAN_MAX = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_13 { +IFLA_VLAN_QOS_UNSPEC = 0, +IFLA_VLAN_QOS_MAPPING = 1, +__IFLA_VLAN_QOS_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_14 { +IFLA_MACVLAN_UNSPEC = 0, +IFLA_MACVLAN_MODE = 1, +IFLA_MACVLAN_FLAGS = 2, +IFLA_MACVLAN_MACADDR_MODE = 3, +IFLA_MACVLAN_MACADDR = 4, +IFLA_MACVLAN_MACADDR_DATA = 5, +IFLA_MACVLAN_MACADDR_COUNT = 6, +IFLA_MACVLAN_BC_QUEUE_LEN = 7, +IFLA_MACVLAN_BC_QUEUE_LEN_USED = 8, +IFLA_MACVLAN_BC_CUTOFF = 9, +__IFLA_MACVLAN_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum macvlan_mode { +MACVLAN_MODE_PRIVATE = 1, +MACVLAN_MODE_VEPA = 2, +MACVLAN_MODE_BRIDGE = 4, +MACVLAN_MODE_PASSTHRU = 8, +MACVLAN_MODE_SOURCE = 16, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum macvlan_macaddr_mode { +MACVLAN_MACADDR_ADD = 0, +MACVLAN_MACADDR_DEL = 1, +MACVLAN_MACADDR_FLUSH = 2, +MACVLAN_MACADDR_SET = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_15 { +IFLA_VRF_UNSPEC = 0, +IFLA_VRF_TABLE = 1, +__IFLA_VRF_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_16 { +IFLA_VRF_PORT_UNSPEC = 0, +IFLA_VRF_PORT_TABLE = 1, +__IFLA_VRF_PORT_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_17 { +IFLA_MACSEC_UNSPEC = 0, +IFLA_MACSEC_SCI = 1, +IFLA_MACSEC_PORT = 2, +IFLA_MACSEC_ICV_LEN = 3, +IFLA_MACSEC_CIPHER_SUITE = 4, +IFLA_MACSEC_WINDOW = 5, +IFLA_MACSEC_ENCODING_SA = 6, +IFLA_MACSEC_ENCRYPT = 7, +IFLA_MACSEC_PROTECT = 8, +IFLA_MACSEC_INC_SCI = 9, +IFLA_MACSEC_ES = 10, +IFLA_MACSEC_SCB = 11, +IFLA_MACSEC_REPLAY_PROTECT = 12, +IFLA_MACSEC_VALIDATION = 13, +IFLA_MACSEC_PAD = 14, +IFLA_MACSEC_OFFLOAD = 15, +__IFLA_MACSEC_MAX = 16, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_18 { +IFLA_XFRM_UNSPEC = 0, +IFLA_XFRM_LINK = 1, +IFLA_XFRM_IF_ID = 2, +IFLA_XFRM_COLLECT_METADATA = 3, +__IFLA_XFRM_MAX = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum macsec_validation_type { +MACSEC_VALIDATE_DISABLED = 0, +MACSEC_VALIDATE_CHECK = 1, +MACSEC_VALIDATE_STRICT = 2, +__MACSEC_VALIDATE_END = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum macsec_offload { +MACSEC_OFFLOAD_OFF = 0, +MACSEC_OFFLOAD_PHY = 1, +MACSEC_OFFLOAD_MAC = 2, +__MACSEC_OFFLOAD_END = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_19 { +IFLA_IPVLAN_UNSPEC = 0, +IFLA_IPVLAN_MODE = 1, +IFLA_IPVLAN_FLAGS = 2, +__IFLA_IPVLAN_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum ipvlan_mode { +IPVLAN_MODE_L2 = 0, +IPVLAN_MODE_L3 = 1, +IPVLAN_MODE_L3S = 2, +IPVLAN_MODE_MAX = 3, +} +#[repr(i8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum netkit_action { +NETKIT_NEXT = -1, +NETKIT_PASS = 0, +NETKIT_DROP = 2, +NETKIT_REDIRECT = 7, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum netkit_mode { +NETKIT_L2 = 0, +NETKIT_L3 = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum netkit_scrub { +NETKIT_SCRUB_NONE = 0, +NETKIT_SCRUB_DEFAULT = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_20 { +IFLA_NETKIT_UNSPEC = 0, +IFLA_NETKIT_PEER_INFO = 1, +IFLA_NETKIT_PRIMARY = 2, +IFLA_NETKIT_POLICY = 3, +IFLA_NETKIT_PEER_POLICY = 4, +IFLA_NETKIT_MODE = 5, +IFLA_NETKIT_SCRUB = 6, +IFLA_NETKIT_PEER_SCRUB = 7, +IFLA_NETKIT_HEADROOM = 8, +IFLA_NETKIT_TAILROOM = 9, +__IFLA_NETKIT_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_21 { +VNIFILTER_ENTRY_STATS_UNSPEC = 0, +VNIFILTER_ENTRY_STATS_RX_BYTES = 1, +VNIFILTER_ENTRY_STATS_RX_PKTS = 2, +VNIFILTER_ENTRY_STATS_RX_DROPS = 3, +VNIFILTER_ENTRY_STATS_RX_ERRORS = 4, +VNIFILTER_ENTRY_STATS_TX_BYTES = 5, +VNIFILTER_ENTRY_STATS_TX_PKTS = 6, +VNIFILTER_ENTRY_STATS_TX_DROPS = 7, +VNIFILTER_ENTRY_STATS_TX_ERRORS = 8, +VNIFILTER_ENTRY_STATS_PAD = 9, +__VNIFILTER_ENTRY_STATS_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_22 { +VXLAN_VNIFILTER_ENTRY_UNSPEC = 0, +VXLAN_VNIFILTER_ENTRY_START = 1, +VXLAN_VNIFILTER_ENTRY_END = 2, +VXLAN_VNIFILTER_ENTRY_GROUP = 3, +VXLAN_VNIFILTER_ENTRY_GROUP6 = 4, +VXLAN_VNIFILTER_ENTRY_STATS = 5, +__VXLAN_VNIFILTER_ENTRY_MAX = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_23 { +VXLAN_VNIFILTER_UNSPEC = 0, +VXLAN_VNIFILTER_ENTRY = 1, +__VXLAN_VNIFILTER_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_24 { +IFLA_VXLAN_UNSPEC = 0, +IFLA_VXLAN_ID = 1, +IFLA_VXLAN_GROUP = 2, +IFLA_VXLAN_LINK = 3, +IFLA_VXLAN_LOCAL = 4, +IFLA_VXLAN_TTL = 5, +IFLA_VXLAN_TOS = 6, +IFLA_VXLAN_LEARNING = 7, +IFLA_VXLAN_AGEING = 8, +IFLA_VXLAN_LIMIT = 9, +IFLA_VXLAN_PORT_RANGE = 10, +IFLA_VXLAN_PROXY = 11, +IFLA_VXLAN_RSC = 12, +IFLA_VXLAN_L2MISS = 13, +IFLA_VXLAN_L3MISS = 14, +IFLA_VXLAN_PORT = 15, +IFLA_VXLAN_GROUP6 = 16, +IFLA_VXLAN_LOCAL6 = 17, +IFLA_VXLAN_UDP_CSUM = 18, +IFLA_VXLAN_UDP_ZERO_CSUM6_TX = 19, +IFLA_VXLAN_UDP_ZERO_CSUM6_RX = 20, +IFLA_VXLAN_REMCSUM_TX = 21, +IFLA_VXLAN_REMCSUM_RX = 22, +IFLA_VXLAN_GBP = 23, +IFLA_VXLAN_REMCSUM_NOPARTIAL = 24, +IFLA_VXLAN_COLLECT_METADATA = 25, +IFLA_VXLAN_LABEL = 26, +IFLA_VXLAN_GPE = 27, +IFLA_VXLAN_TTL_INHERIT = 28, +IFLA_VXLAN_DF = 29, +IFLA_VXLAN_VNIFILTER = 30, +IFLA_VXLAN_LOCALBYPASS = 31, +IFLA_VXLAN_LABEL_POLICY = 32, +IFLA_VXLAN_RESERVED_BITS = 33, +IFLA_VXLAN_MC_ROUTE = 34, +__IFLA_VXLAN_MAX = 35, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum ifla_vxlan_df { +VXLAN_DF_UNSET = 0, +VXLAN_DF_SET = 1, +VXLAN_DF_INHERIT = 2, +__VXLAN_DF_END = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum ifla_vxlan_label_policy { +VXLAN_LABEL_FIXED = 0, +VXLAN_LABEL_INHERIT = 1, +__VXLAN_LABEL_END = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_25 { +IFLA_GENEVE_UNSPEC = 0, +IFLA_GENEVE_ID = 1, +IFLA_GENEVE_REMOTE = 2, +IFLA_GENEVE_TTL = 3, +IFLA_GENEVE_TOS = 4, +IFLA_GENEVE_PORT = 5, +IFLA_GENEVE_COLLECT_METADATA = 6, +IFLA_GENEVE_REMOTE6 = 7, +IFLA_GENEVE_UDP_CSUM = 8, +IFLA_GENEVE_UDP_ZERO_CSUM6_TX = 9, +IFLA_GENEVE_UDP_ZERO_CSUM6_RX = 10, +IFLA_GENEVE_LABEL = 11, +IFLA_GENEVE_TTL_INHERIT = 12, +IFLA_GENEVE_DF = 13, +IFLA_GENEVE_INNER_PROTO_INHERIT = 14, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum ifla_geneve_df { +GENEVE_DF_UNSET = 0, +GENEVE_DF_SET = 1, +GENEVE_DF_INHERIT = 2, +__GENEVE_DF_END = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_26 { +IFLA_BAREUDP_UNSPEC = 0, +IFLA_BAREUDP_PORT = 1, +IFLA_BAREUDP_ETHERTYPE = 2, +IFLA_BAREUDP_SRCPORT_MIN = 3, +IFLA_BAREUDP_MULTIPROTO_MODE = 4, +__IFLA_BAREUDP_MAX = 5, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_27 { +IFLA_PPP_UNSPEC = 0, +IFLA_PPP_DEV_FD = 1, +__IFLA_PPP_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum ifla_gtp_role { +GTP_ROLE_GGSN = 0, +GTP_ROLE_SGSN = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_28 { +IFLA_GTP_UNSPEC = 0, +IFLA_GTP_FD0 = 1, +IFLA_GTP_FD1 = 2, +IFLA_GTP_PDP_HASHSIZE = 3, +IFLA_GTP_ROLE = 4, +IFLA_GTP_CREATE_SOCKETS = 5, +IFLA_GTP_RESTART_COUNT = 6, +IFLA_GTP_LOCAL = 7, +IFLA_GTP_LOCAL6 = 8, +__IFLA_GTP_MAX = 9, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_29 { +IFLA_BOND_UNSPEC = 0, +IFLA_BOND_MODE = 1, +IFLA_BOND_ACTIVE_SLAVE = 2, +IFLA_BOND_MIIMON = 3, +IFLA_BOND_UPDELAY = 4, +IFLA_BOND_DOWNDELAY = 5, +IFLA_BOND_USE_CARRIER = 6, +IFLA_BOND_ARP_INTERVAL = 7, +IFLA_BOND_ARP_IP_TARGET = 8, +IFLA_BOND_ARP_VALIDATE = 9, +IFLA_BOND_ARP_ALL_TARGETS = 10, +IFLA_BOND_PRIMARY = 11, +IFLA_BOND_PRIMARY_RESELECT = 12, +IFLA_BOND_FAIL_OVER_MAC = 13, +IFLA_BOND_XMIT_HASH_POLICY = 14, +IFLA_BOND_RESEND_IGMP = 15, +IFLA_BOND_NUM_PEER_NOTIF = 16, +IFLA_BOND_ALL_SLAVES_ACTIVE = 17, +IFLA_BOND_MIN_LINKS = 18, +IFLA_BOND_LP_INTERVAL = 19, +IFLA_BOND_PACKETS_PER_SLAVE = 20, +IFLA_BOND_AD_LACP_RATE = 21, +IFLA_BOND_AD_SELECT = 22, +IFLA_BOND_AD_INFO = 23, +IFLA_BOND_AD_ACTOR_SYS_PRIO = 24, +IFLA_BOND_AD_USER_PORT_KEY = 25, +IFLA_BOND_AD_ACTOR_SYSTEM = 26, +IFLA_BOND_TLB_DYNAMIC_LB = 27, +IFLA_BOND_PEER_NOTIF_DELAY = 28, +IFLA_BOND_AD_LACP_ACTIVE = 29, +IFLA_BOND_MISSED_MAX = 30, +IFLA_BOND_NS_IP6_TARGET = 31, +IFLA_BOND_COUPLED_CONTROL = 32, +IFLA_BOND_BROADCAST_NEIGH = 33, +__IFLA_BOND_MAX = 34, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_30 { +IFLA_BOND_AD_INFO_UNSPEC = 0, +IFLA_BOND_AD_INFO_AGGREGATOR = 1, +IFLA_BOND_AD_INFO_NUM_PORTS = 2, +IFLA_BOND_AD_INFO_ACTOR_KEY = 3, +IFLA_BOND_AD_INFO_PARTNER_KEY = 4, +IFLA_BOND_AD_INFO_PARTNER_MAC = 5, +__IFLA_BOND_AD_INFO_MAX = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_31 { +IFLA_BOND_SLAVE_UNSPEC = 0, +IFLA_BOND_SLAVE_STATE = 1, +IFLA_BOND_SLAVE_MII_STATUS = 2, +IFLA_BOND_SLAVE_LINK_FAILURE_COUNT = 3, +IFLA_BOND_SLAVE_PERM_HWADDR = 4, +IFLA_BOND_SLAVE_QUEUE_ID = 5, +IFLA_BOND_SLAVE_AD_AGGREGATOR_ID = 6, +IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE = 7, +IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE = 8, +IFLA_BOND_SLAVE_PRIO = 9, +__IFLA_BOND_SLAVE_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_32 { +IFLA_VF_INFO_UNSPEC = 0, +IFLA_VF_INFO = 1, +__IFLA_VF_INFO_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_33 { +IFLA_VF_UNSPEC = 0, +IFLA_VF_MAC = 1, +IFLA_VF_VLAN = 2, +IFLA_VF_TX_RATE = 3, +IFLA_VF_SPOOFCHK = 4, +IFLA_VF_LINK_STATE = 5, +IFLA_VF_RATE = 6, +IFLA_VF_RSS_QUERY_EN = 7, +IFLA_VF_STATS = 8, +IFLA_VF_TRUST = 9, +IFLA_VF_IB_NODE_GUID = 10, +IFLA_VF_IB_PORT_GUID = 11, +IFLA_VF_VLAN_LIST = 12, +IFLA_VF_BROADCAST = 13, +__IFLA_VF_MAX = 14, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_34 { +IFLA_VF_VLAN_INFO_UNSPEC = 0, +IFLA_VF_VLAN_INFO = 1, +__IFLA_VF_VLAN_INFO_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_35 { +IFLA_VF_LINK_STATE_AUTO = 0, +IFLA_VF_LINK_STATE_ENABLE = 1, +IFLA_VF_LINK_STATE_DISABLE = 2, +__IFLA_VF_LINK_STATE_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_36 { +IFLA_VF_STATS_RX_PACKETS = 0, +IFLA_VF_STATS_TX_PACKETS = 1, +IFLA_VF_STATS_RX_BYTES = 2, +IFLA_VF_STATS_TX_BYTES = 3, +IFLA_VF_STATS_BROADCAST = 4, +IFLA_VF_STATS_MULTICAST = 5, +IFLA_VF_STATS_PAD = 6, +IFLA_VF_STATS_RX_DROPPED = 7, +IFLA_VF_STATS_TX_DROPPED = 8, +__IFLA_VF_STATS_MAX = 9, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_37 { +IFLA_VF_PORT_UNSPEC = 0, +IFLA_VF_PORT = 1, +__IFLA_VF_PORT_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_38 { +IFLA_PORT_UNSPEC = 0, +IFLA_PORT_VF = 1, +IFLA_PORT_PROFILE = 2, +IFLA_PORT_VSI_TYPE = 3, +IFLA_PORT_INSTANCE_UUID = 4, +IFLA_PORT_HOST_UUID = 5, +IFLA_PORT_REQUEST = 6, +IFLA_PORT_RESPONSE = 7, +__IFLA_PORT_MAX = 8, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_39 { +PORT_REQUEST_PREASSOCIATE = 0, +PORT_REQUEST_PREASSOCIATE_RR = 1, +PORT_REQUEST_ASSOCIATE = 2, +PORT_REQUEST_DISASSOCIATE = 3, +} +#[repr(u16)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_40 { +PORT_VDP_RESPONSE_SUCCESS = 0, +PORT_VDP_RESPONSE_INVALID_FORMAT = 1, +PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES = 2, +PORT_VDP_RESPONSE_UNUSED_VTID = 3, +PORT_VDP_RESPONSE_VTID_VIOLATION = 4, +PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION = 5, +PORT_VDP_RESPONSE_OUT_OF_SYNC = 6, +PORT_PROFILE_RESPONSE_SUCCESS = 256, +PORT_PROFILE_RESPONSE_INPROGRESS = 257, +PORT_PROFILE_RESPONSE_INVALID = 258, +PORT_PROFILE_RESPONSE_BADSTATE = 259, +PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES = 260, +PORT_PROFILE_RESPONSE_ERROR = 261, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_41 { +IFLA_IPOIB_UNSPEC = 0, +IFLA_IPOIB_PKEY = 1, +IFLA_IPOIB_MODE = 2, +IFLA_IPOIB_UMCAST = 3, +__IFLA_IPOIB_MAX = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_42 { +IPOIB_MODE_DATAGRAM = 0, +IPOIB_MODE_CONNECTED = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_43 { +HSR_PROTOCOL_HSR = 0, +HSR_PROTOCOL_PRP = 1, +HSR_PROTOCOL_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_44 { +IFLA_HSR_UNSPEC = 0, +IFLA_HSR_SLAVE1 = 1, +IFLA_HSR_SLAVE2 = 2, +IFLA_HSR_MULTICAST_SPEC = 3, +IFLA_HSR_SUPERVISION_ADDR = 4, +IFLA_HSR_SEQ_NR = 5, +IFLA_HSR_VERSION = 6, +IFLA_HSR_PROTOCOL = 7, +IFLA_HSR_INTERLINK = 8, +__IFLA_HSR_MAX = 9, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_45 { +IFLA_STATS_UNSPEC = 0, +IFLA_STATS_LINK_64 = 1, +IFLA_STATS_LINK_XSTATS = 2, +IFLA_STATS_LINK_XSTATS_SLAVE = 3, +IFLA_STATS_LINK_OFFLOAD_XSTATS = 4, +IFLA_STATS_AF_SPEC = 5, +__IFLA_STATS_MAX = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_46 { +IFLA_STATS_GETSET_UNSPEC = 0, +IFLA_STATS_GET_FILTERS = 1, +IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS = 2, +__IFLA_STATS_GETSET_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_47 { +LINK_XSTATS_TYPE_UNSPEC = 0, +LINK_XSTATS_TYPE_BRIDGE = 1, +LINK_XSTATS_TYPE_BOND = 2, +__LINK_XSTATS_TYPE_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_48 { +IFLA_OFFLOAD_XSTATS_UNSPEC = 0, +IFLA_OFFLOAD_XSTATS_CPU_HIT = 1, +IFLA_OFFLOAD_XSTATS_HW_S_INFO = 2, +IFLA_OFFLOAD_XSTATS_L3_STATS = 3, +__IFLA_OFFLOAD_XSTATS_MAX = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_49 { +IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC = 0, +IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST = 1, +IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED = 2, +__IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_50 { +XDP_ATTACHED_NONE = 0, +XDP_ATTACHED_DRV = 1, +XDP_ATTACHED_SKB = 2, +XDP_ATTACHED_HW = 3, +XDP_ATTACHED_MULTI = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_51 { +IFLA_XDP_UNSPEC = 0, +IFLA_XDP_FD = 1, +IFLA_XDP_ATTACHED = 2, +IFLA_XDP_FLAGS = 3, +IFLA_XDP_PROG_ID = 4, +IFLA_XDP_DRV_PROG_ID = 5, +IFLA_XDP_SKB_PROG_ID = 6, +IFLA_XDP_HW_PROG_ID = 7, +IFLA_XDP_EXPECTED_FD = 8, +__IFLA_XDP_MAX = 9, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_52 { +IFLA_EVENT_NONE = 0, +IFLA_EVENT_REBOOT = 1, +IFLA_EVENT_FEATURES = 2, +IFLA_EVENT_BONDING_FAILOVER = 3, +IFLA_EVENT_NOTIFY_PEERS = 4, +IFLA_EVENT_IGMP_RESEND = 5, +IFLA_EVENT_BONDING_OPTIONS = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_53 { +IFLA_TUN_UNSPEC = 0, +IFLA_TUN_OWNER = 1, +IFLA_TUN_GROUP = 2, +IFLA_TUN_TYPE = 3, +IFLA_TUN_PI = 4, +IFLA_TUN_VNET_HDR = 5, +IFLA_TUN_PERSIST = 6, +IFLA_TUN_MULTI_QUEUE = 7, +IFLA_TUN_NUM_QUEUES = 8, +IFLA_TUN_NUM_DISABLED_QUEUES = 9, +__IFLA_TUN_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_54 { +IFLA_RMNET_UNSPEC = 0, +IFLA_RMNET_MUX_ID = 1, +IFLA_RMNET_FLAGS = 2, +__IFLA_RMNET_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_55 { +IFLA_MCTP_UNSPEC = 0, +IFLA_MCTP_NET = 1, +IFLA_MCTP_PHYS_BINDING = 2, +__IFLA_MCTP_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_56 { +IFLA_DSA_UNSPEC = 0, +IFLA_DSA_CONDUIT = 1, +__IFLA_DSA_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum ovpn_mode { +OVPN_MODE_P2P = 0, +OVPN_MODE_MP = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_57 { +IFLA_OVPN_UNSPEC = 0, +IFLA_OVPN_MODE = 1, +__IFLA_OVPN_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_58 { +IF_PORT_UNKNOWN = 0, +IF_PORT_10BASE2 = 1, +IF_PORT_10BASET = 2, +IF_PORT_AUI = 3, +IF_PORT_100BASET = 4, +IF_PORT_100BASETX = 5, +IF_PORT_100BASEFX = 6, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union __kernel_sockaddr_storage__bindgen_ty_1 { +pub __bindgen_anon_1: __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1, +pub __align: *mut crate::ctypes::c_void, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union if_settings__bindgen_ty_1 { +pub raw_hdlc: *mut raw_hdlc_proto, +pub cisco: *mut cisco_proto, +pub fr: *mut fr_proto, +pub fr_pvc: *mut fr_proto_pvc, +pub fr_pvc_info: *mut fr_proto_pvc_info, +pub x25: *mut x25_hdlc_proto, +pub sync: *mut sync_serial_settings, +pub te1: *mut te1_settings, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ifreq__bindgen_ty_1 { +pub ifrn_name: [crate::ctypes::c_char; 16usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ifreq__bindgen_ty_2 { +pub ifru_addr: sockaddr, +pub ifru_dstaddr: sockaddr, +pub ifru_broadaddr: sockaddr, +pub ifru_netmask: sockaddr, +pub ifru_hwaddr: sockaddr, +pub ifru_flags: crate::ctypes::c_short, +pub ifru_ivalue: crate::ctypes::c_int, +pub ifru_mtu: crate::ctypes::c_int, +pub ifru_map: ifmap, +pub ifru_slave: [crate::ctypes::c_char; 16usize], +pub ifru_newname: [crate::ctypes::c_char; 16usize], +pub ifru_data: *mut crate::ctypes::c_void, +pub ifru_settings: if_settings, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ifconf__bindgen_ty_1 { +pub ifcu_buf: *mut crate::ctypes::c_char, +pub ifcu_req: *mut ifreq, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tpacket_stats_u { +pub stats1: tpacket_stats, +pub stats3: tpacket_stats_v3, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tpacket3_hdr__bindgen_ty_1 { +pub hv1: tpacket_hdr_variant1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tpacket_bd_ts__bindgen_ty_1 { +pub ts_usec: crate::ctypes::c_uint, +pub ts_nsec: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tpacket_bd_header_u { +pub bh1: tpacket_hdr_v1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tpacket_req_u { +pub req: tpacket_req, +pub req3: tpacket_req3, +} +impl nlmsgerr_attrs { +pub const NLMSGERR_ATTR_MAX: nlmsgerr_attrs = nlmsgerr_attrs::NLMSGERR_ATTR_MISS_NEST; +} +impl netlink_policy_type_attr { +pub const NL_POLICY_TYPE_ATTR_MAX: netlink_policy_type_attr = netlink_policy_type_attr::NL_POLICY_TYPE_ATTR_MASK; +} +impl macsec_validation_type { +pub const MACSEC_VALIDATE_MAX: macsec_validation_type = macsec_validation_type::MACSEC_VALIDATE_STRICT; +} +impl macsec_offload { +pub const MACSEC_OFFLOAD_MAX: macsec_offload = macsec_offload::MACSEC_OFFLOAD_MAC; +} +impl ifla_vxlan_df { +pub const VXLAN_DF_MAX: ifla_vxlan_df = ifla_vxlan_df::VXLAN_DF_INHERIT; +} +impl ifla_vxlan_label_policy { +pub const VXLAN_LABEL_MAX: ifla_vxlan_label_policy = ifla_vxlan_label_policy::VXLAN_LABEL_INHERIT; +} +impl ifla_geneve_df { +pub const GENEVE_DF_MAX: ifla_geneve_df = ifla_geneve_df::GENEVE_DF_INHERIT; +} diff --git a/src/hexagon/if_ether.rs b/src/hexagon/if_ether.rs new file mode 100644 index 00000000..37b55703 --- /dev/null +++ b/src/hexagon/if_ether.rs @@ -0,0 +1,168 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct ethhdr { +pub h_dest: [crate::ctypes::c_uchar; 6usize], +pub h_source: [crate::ctypes::c_uchar; 6usize], +pub h_proto: __be16, +} +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const ETH_ALEN: u32 = 6; +pub const ETH_TLEN: u32 = 2; +pub const ETH_HLEN: u32 = 14; +pub const ETH_ZLEN: u32 = 60; +pub const ETH_DATA_LEN: u32 = 1500; +pub const ETH_FRAME_LEN: u32 = 1514; +pub const ETH_FCS_LEN: u32 = 4; +pub const ETH_MIN_MTU: u32 = 68; +pub const ETH_MAX_MTU: u32 = 65535; +pub const ETH_P_LOOP: u32 = 96; +pub const ETH_P_PUP: u32 = 512; +pub const ETH_P_PUPAT: u32 = 513; +pub const ETH_P_TSN: u32 = 8944; +pub const ETH_P_ERSPAN2: u32 = 8939; +pub const ETH_P_IP: u32 = 2048; +pub const ETH_P_X25: u32 = 2053; +pub const ETH_P_ARP: u32 = 2054; +pub const ETH_P_BPQ: u32 = 2303; +pub const ETH_P_IEEEPUP: u32 = 2560; +pub const ETH_P_IEEEPUPAT: u32 = 2561; +pub const ETH_P_BATMAN: u32 = 17157; +pub const ETH_P_DEC: u32 = 24576; +pub const ETH_P_DNA_DL: u32 = 24577; +pub const ETH_P_DNA_RC: u32 = 24578; +pub const ETH_P_DNA_RT: u32 = 24579; +pub const ETH_P_LAT: u32 = 24580; +pub const ETH_P_DIAG: u32 = 24581; +pub const ETH_P_CUST: u32 = 24582; +pub const ETH_P_SCA: u32 = 24583; +pub const ETH_P_TEB: u32 = 25944; +pub const ETH_P_RARP: u32 = 32821; +pub const ETH_P_ATALK: u32 = 32923; +pub const ETH_P_AARP: u32 = 33011; +pub const ETH_P_8021Q: u32 = 33024; +pub const ETH_P_ERSPAN: u32 = 35006; +pub const ETH_P_IPX: u32 = 33079; +pub const ETH_P_IPV6: u32 = 34525; +pub const ETH_P_PAUSE: u32 = 34824; +pub const ETH_P_SLOW: u32 = 34825; +pub const ETH_P_WCCP: u32 = 34878; +pub const ETH_P_MPLS_UC: u32 = 34887; +pub const ETH_P_MPLS_MC: u32 = 34888; +pub const ETH_P_ATMMPOA: u32 = 34892; +pub const ETH_P_PPP_DISC: u32 = 34915; +pub const ETH_P_PPP_SES: u32 = 34916; +pub const ETH_P_LINK_CTL: u32 = 34924; +pub const ETH_P_ATMFATE: u32 = 34948; +pub const ETH_P_PAE: u32 = 34958; +pub const ETH_P_PROFINET: u32 = 34962; +pub const ETH_P_REALTEK: u32 = 34969; +pub const ETH_P_AOE: u32 = 34978; +pub const ETH_P_ETHERCAT: u32 = 34980; +pub const ETH_P_8021AD: u32 = 34984; +pub const ETH_P_802_EX1: u32 = 34997; +pub const ETH_P_PREAUTH: u32 = 35015; +pub const ETH_P_TIPC: u32 = 35018; +pub const ETH_P_LLDP: u32 = 35020; +pub const ETH_P_MRP: u32 = 35043; +pub const ETH_P_MACSEC: u32 = 35045; +pub const ETH_P_8021AH: u32 = 35047; +pub const ETH_P_MVRP: u32 = 35061; +pub const ETH_P_1588: u32 = 35063; +pub const ETH_P_NCSI: u32 = 35064; +pub const ETH_P_PRP: u32 = 35067; +pub const ETH_P_CFM: u32 = 35074; +pub const ETH_P_FCOE: u32 = 35078; +pub const ETH_P_IBOE: u32 = 35093; +pub const ETH_P_TDLS: u32 = 35085; +pub const ETH_P_FIP: u32 = 35092; +pub const ETH_P_80221: u32 = 35095; +pub const ETH_P_HSR: u32 = 35119; +pub const ETH_P_NSH: u32 = 35151; +pub const ETH_P_LOOPBACK: u32 = 36864; +pub const ETH_P_QINQ1: u32 = 37120; +pub const ETH_P_QINQ2: u32 = 37376; +pub const ETH_P_QINQ3: u32 = 37632; +pub const ETH_P_EDSA: u32 = 56026; +pub const ETH_P_DSA_8021Q: u32 = 56027; +pub const ETH_P_DSA_A5PSW: u32 = 57345; +pub const ETH_P_IFE: u32 = 60734; +pub const ETH_P_AF_IUCV: u32 = 64507; +pub const ETH_P_802_3_MIN: u32 = 1536; +pub const ETH_P_802_3: u32 = 1; +pub const ETH_P_AX25: u32 = 2; +pub const ETH_P_ALL: u32 = 3; +pub const ETH_P_802_2: u32 = 4; +pub const ETH_P_SNAP: u32 = 5; +pub const ETH_P_DDCMP: u32 = 6; +pub const ETH_P_WAN_PPP: u32 = 7; +pub const ETH_P_PPP_MP: u32 = 8; +pub const ETH_P_LOCALTALK: u32 = 9; +pub const ETH_P_CAN: u32 = 12; +pub const ETH_P_CANFD: u32 = 13; +pub const ETH_P_CANXL: u32 = 14; +pub const ETH_P_PPPTALK: u32 = 16; +pub const ETH_P_TR_802_2: u32 = 17; +pub const ETH_P_MOBITEX: u32 = 21; +pub const ETH_P_CONTROL: u32 = 22; +pub const ETH_P_IRDA: u32 = 23; +pub const ETH_P_ECONET: u32 = 24; +pub const ETH_P_HDLC: u32 = 25; +pub const ETH_P_ARCNET: u32 = 26; +pub const ETH_P_DSA: u32 = 27; +pub const ETH_P_TRAILER: u32 = 28; +pub const ETH_P_PHONET: u32 = 245; +pub const ETH_P_IEEE802154: u32 = 246; +pub const ETH_P_CAIF: u32 = 247; +pub const ETH_P_XDSA: u32 = 248; +pub const ETH_P_MAP: u32 = 249; +pub const ETH_P_MCTP: u32 = 250; diff --git a/src/hexagon/if_packet.rs b/src/hexagon/if_packet.rs new file mode 100644 index 00000000..8b03f00d --- /dev/null +++ b/src/hexagon/if_packet.rs @@ -0,0 +1,309 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_pkt { +pub spkt_family: crate::ctypes::c_ushort, +pub spkt_device: [crate::ctypes::c_uchar; 14usize], +pub spkt_protocol: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_ll { +pub sll_family: crate::ctypes::c_ushort, +pub sll_protocol: __be16, +pub sll_ifindex: crate::ctypes::c_int, +pub sll_hatype: crate::ctypes::c_ushort, +pub sll_pkttype: crate::ctypes::c_uchar, +pub sll_halen: crate::ctypes::c_uchar, +pub sll_addr: [crate::ctypes::c_uchar; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_stats { +pub tp_packets: crate::ctypes::c_uint, +pub tp_drops: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_stats_v3 { +pub tp_packets: crate::ctypes::c_uint, +pub tp_drops: crate::ctypes::c_uint, +pub tp_freeze_q_cnt: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_rollover_stats { +pub tp_all: __u64, +pub tp_huge: __u64, +pub tp_failed: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_auxdata { +pub tp_status: __u32, +pub tp_len: __u32, +pub tp_snaplen: __u32, +pub tp_mac: __u16, +pub tp_net: __u16, +pub tp_vlan_tci: __u16, +pub tp_vlan_tpid: __u16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_hdr { +pub tp_status: crate::ctypes::c_ulong, +pub tp_len: crate::ctypes::c_uint, +pub tp_snaplen: crate::ctypes::c_uint, +pub tp_mac: crate::ctypes::c_ushort, +pub tp_net: crate::ctypes::c_ushort, +pub tp_sec: crate::ctypes::c_uint, +pub tp_usec: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket2_hdr { +pub tp_status: __u32, +pub tp_len: __u32, +pub tp_snaplen: __u32, +pub tp_mac: __u16, +pub tp_net: __u16, +pub tp_sec: __u32, +pub tp_nsec: __u32, +pub tp_vlan_tci: __u16, +pub tp_vlan_tpid: __u16, +pub tp_padding: [__u8; 4usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_hdr_variant1 { +pub tp_rxhash: __u32, +pub tp_vlan_tci: __u32, +pub tp_vlan_tpid: __u16, +pub tp_padding: __u16, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tpacket3_hdr { +pub tp_next_offset: __u32, +pub tp_sec: __u32, +pub tp_nsec: __u32, +pub tp_snaplen: __u32, +pub tp_len: __u32, +pub tp_status: __u32, +pub tp_mac: __u16, +pub tp_net: __u16, +pub __bindgen_anon_1: tpacket3_hdr__bindgen_ty_1, +pub tp_padding: [__u8; 8usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tpacket_bd_ts { +pub ts_sec: crate::ctypes::c_uint, +pub __bindgen_anon_1: tpacket_bd_ts__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tpacket_hdr_v1 { +pub block_status: __u32, +pub num_pkts: __u32, +pub offset_to_first_pkt: __u32, +pub blk_len: __u32, +pub seq_num: __u64, +pub ts_first_pkt: tpacket_bd_ts, +pub ts_last_pkt: tpacket_bd_ts, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tpacket_block_desc { +pub version: __u32, +pub offset_to_priv: __u32, +pub hdr: tpacket_bd_header_u, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_req { +pub tp_block_size: crate::ctypes::c_uint, +pub tp_block_nr: crate::ctypes::c_uint, +pub tp_frame_size: crate::ctypes::c_uint, +pub tp_frame_nr: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tpacket_req3 { +pub tp_block_size: crate::ctypes::c_uint, +pub tp_block_nr: crate::ctypes::c_uint, +pub tp_frame_size: crate::ctypes::c_uint, +pub tp_frame_nr: crate::ctypes::c_uint, +pub tp_retire_blk_tov: crate::ctypes::c_uint, +pub tp_sizeof_priv: crate::ctypes::c_uint, +pub tp_feature_req_word: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct packet_mreq { +pub mr_ifindex: crate::ctypes::c_int, +pub mr_type: crate::ctypes::c_ushort, +pub mr_alen: crate::ctypes::c_ushort, +pub mr_address: [crate::ctypes::c_uchar; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fanout_args { +pub id: __u16, +pub type_flags: __u16, +pub max_num_members: __u32, +} +pub const __LITTLE_ENDIAN: u32 = 1234; +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const PACKET_HOST: u32 = 0; +pub const PACKET_BROADCAST: u32 = 1; +pub const PACKET_MULTICAST: u32 = 2; +pub const PACKET_OTHERHOST: u32 = 3; +pub const PACKET_OUTGOING: u32 = 4; +pub const PACKET_LOOPBACK: u32 = 5; +pub const PACKET_USER: u32 = 6; +pub const PACKET_KERNEL: u32 = 7; +pub const PACKET_FASTROUTE: u32 = 6; +pub const PACKET_ADD_MEMBERSHIP: u32 = 1; +pub const PACKET_DROP_MEMBERSHIP: u32 = 2; +pub const PACKET_RECV_OUTPUT: u32 = 3; +pub const PACKET_RX_RING: u32 = 5; +pub const PACKET_STATISTICS: u32 = 6; +pub const PACKET_COPY_THRESH: u32 = 7; +pub const PACKET_AUXDATA: u32 = 8; +pub const PACKET_ORIGDEV: u32 = 9; +pub const PACKET_VERSION: u32 = 10; +pub const PACKET_HDRLEN: u32 = 11; +pub const PACKET_RESERVE: u32 = 12; +pub const PACKET_TX_RING: u32 = 13; +pub const PACKET_LOSS: u32 = 14; +pub const PACKET_VNET_HDR: u32 = 15; +pub const PACKET_TX_TIMESTAMP: u32 = 16; +pub const PACKET_TIMESTAMP: u32 = 17; +pub const PACKET_FANOUT: u32 = 18; +pub const PACKET_TX_HAS_OFF: u32 = 19; +pub const PACKET_QDISC_BYPASS: u32 = 20; +pub const PACKET_ROLLOVER_STATS: u32 = 21; +pub const PACKET_FANOUT_DATA: u32 = 22; +pub const PACKET_IGNORE_OUTGOING: u32 = 23; +pub const PACKET_VNET_HDR_SZ: u32 = 24; +pub const PACKET_FANOUT_HASH: u32 = 0; +pub const PACKET_FANOUT_LB: u32 = 1; +pub const PACKET_FANOUT_CPU: u32 = 2; +pub const PACKET_FANOUT_ROLLOVER: u32 = 3; +pub const PACKET_FANOUT_RND: u32 = 4; +pub const PACKET_FANOUT_QM: u32 = 5; +pub const PACKET_FANOUT_CBPF: u32 = 6; +pub const PACKET_FANOUT_EBPF: u32 = 7; +pub const PACKET_FANOUT_FLAG_ROLLOVER: u32 = 4096; +pub const PACKET_FANOUT_FLAG_UNIQUEID: u32 = 8192; +pub const PACKET_FANOUT_FLAG_IGNORE_OUTGOING: u32 = 16384; +pub const PACKET_FANOUT_FLAG_DEFRAG: u32 = 32768; +pub const TP_STATUS_KERNEL: u32 = 0; +pub const TP_STATUS_USER: u32 = 1; +pub const TP_STATUS_COPY: u32 = 2; +pub const TP_STATUS_LOSING: u32 = 4; +pub const TP_STATUS_CSUMNOTREADY: u32 = 8; +pub const TP_STATUS_VLAN_VALID: u32 = 16; +pub const TP_STATUS_BLK_TMO: u32 = 32; +pub const TP_STATUS_VLAN_TPID_VALID: u32 = 64; +pub const TP_STATUS_CSUM_VALID: u32 = 128; +pub const TP_STATUS_GSO_TCP: u32 = 256; +pub const TP_STATUS_AVAILABLE: u32 = 0; +pub const TP_STATUS_SEND_REQUEST: u32 = 1; +pub const TP_STATUS_SENDING: u32 = 2; +pub const TP_STATUS_WRONG_FORMAT: u32 = 4; +pub const TP_STATUS_TS_SOFTWARE: u32 = 536870912; +pub const TP_STATUS_TS_SYS_HARDWARE: u32 = 1073741824; +pub const TP_STATUS_TS_RAW_HARDWARE: u32 = 2147483648; +pub const TP_FT_REQ_FILL_RXHASH: u32 = 1; +pub const TPACKET_ALIGNMENT: u32 = 16; +pub const PACKET_MR_MULTICAST: u32 = 0; +pub const PACKET_MR_PROMISC: u32 = 1; +pub const PACKET_MR_ALLMULTI: u32 = 2; +pub const PACKET_MR_UNICAST: u32 = 3; +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum tpacket_versions { +TPACKET_V1 = 0, +TPACKET_V2 = 1, +TPACKET_V3 = 2, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tpacket_stats_u { +pub stats1: tpacket_stats, +pub stats3: tpacket_stats_v3, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tpacket3_hdr__bindgen_ty_1 { +pub hv1: tpacket_hdr_variant1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tpacket_bd_ts__bindgen_ty_1 { +pub ts_usec: crate::ctypes::c_uint, +pub ts_nsec: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tpacket_bd_header_u { +pub bh1: tpacket_hdr_v1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tpacket_req_u { +pub req: tpacket_req, +pub req3: tpacket_req3, +} diff --git a/src/hexagon/if_tun.rs b/src/hexagon/if_tun.rs new file mode 100644 index 00000000..a2929007 --- /dev/null +++ b/src/hexagon/if_tun.rs @@ -0,0 +1,317 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +#[repr(C)] +#[derive(Default)] +pub struct __IncompleteArrayField(::core::marker::PhantomData, [T; 0]); +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct ethhdr { +pub h_dest: [crate::ctypes::c_uchar; 6usize], +pub h_source: [crate::ctypes::c_uchar; 6usize], +pub h_proto: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sock_filter { +pub code: __u16, +pub jt: __u8, +pub jf: __u8, +pub k: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sock_fprog { +pub len: crate::ctypes::c_ushort, +pub filter: *mut sock_filter, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tun_pi { +pub flags: __u16, +pub proto: __be16, +} +#[repr(C)] +#[derive(Debug)] +pub struct tun_filter { +pub flags: __u16, +pub count: __u16, +pub addr: __IncompleteArrayField<[__u8; 6usize]>, +} +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const ETH_ALEN: u32 = 6; +pub const ETH_TLEN: u32 = 2; +pub const ETH_HLEN: u32 = 14; +pub const ETH_ZLEN: u32 = 60; +pub const ETH_DATA_LEN: u32 = 1500; +pub const ETH_FRAME_LEN: u32 = 1514; +pub const ETH_FCS_LEN: u32 = 4; +pub const ETH_MIN_MTU: u32 = 68; +pub const ETH_MAX_MTU: u32 = 65535; +pub const ETH_P_LOOP: u32 = 96; +pub const ETH_P_PUP: u32 = 512; +pub const ETH_P_PUPAT: u32 = 513; +pub const ETH_P_TSN: u32 = 8944; +pub const ETH_P_ERSPAN2: u32 = 8939; +pub const ETH_P_IP: u32 = 2048; +pub const ETH_P_X25: u32 = 2053; +pub const ETH_P_ARP: u32 = 2054; +pub const ETH_P_BPQ: u32 = 2303; +pub const ETH_P_IEEEPUP: u32 = 2560; +pub const ETH_P_IEEEPUPAT: u32 = 2561; +pub const ETH_P_BATMAN: u32 = 17157; +pub const ETH_P_DEC: u32 = 24576; +pub const ETH_P_DNA_DL: u32 = 24577; +pub const ETH_P_DNA_RC: u32 = 24578; +pub const ETH_P_DNA_RT: u32 = 24579; +pub const ETH_P_LAT: u32 = 24580; +pub const ETH_P_DIAG: u32 = 24581; +pub const ETH_P_CUST: u32 = 24582; +pub const ETH_P_SCA: u32 = 24583; +pub const ETH_P_TEB: u32 = 25944; +pub const ETH_P_RARP: u32 = 32821; +pub const ETH_P_ATALK: u32 = 32923; +pub const ETH_P_AARP: u32 = 33011; +pub const ETH_P_8021Q: u32 = 33024; +pub const ETH_P_ERSPAN: u32 = 35006; +pub const ETH_P_IPX: u32 = 33079; +pub const ETH_P_IPV6: u32 = 34525; +pub const ETH_P_PAUSE: u32 = 34824; +pub const ETH_P_SLOW: u32 = 34825; +pub const ETH_P_WCCP: u32 = 34878; +pub const ETH_P_MPLS_UC: u32 = 34887; +pub const ETH_P_MPLS_MC: u32 = 34888; +pub const ETH_P_ATMMPOA: u32 = 34892; +pub const ETH_P_PPP_DISC: u32 = 34915; +pub const ETH_P_PPP_SES: u32 = 34916; +pub const ETH_P_LINK_CTL: u32 = 34924; +pub const ETH_P_ATMFATE: u32 = 34948; +pub const ETH_P_PAE: u32 = 34958; +pub const ETH_P_PROFINET: u32 = 34962; +pub const ETH_P_REALTEK: u32 = 34969; +pub const ETH_P_AOE: u32 = 34978; +pub const ETH_P_ETHERCAT: u32 = 34980; +pub const ETH_P_8021AD: u32 = 34984; +pub const ETH_P_802_EX1: u32 = 34997; +pub const ETH_P_PREAUTH: u32 = 35015; +pub const ETH_P_TIPC: u32 = 35018; +pub const ETH_P_LLDP: u32 = 35020; +pub const ETH_P_MRP: u32 = 35043; +pub const ETH_P_MACSEC: u32 = 35045; +pub const ETH_P_8021AH: u32 = 35047; +pub const ETH_P_MVRP: u32 = 35061; +pub const ETH_P_1588: u32 = 35063; +pub const ETH_P_NCSI: u32 = 35064; +pub const ETH_P_PRP: u32 = 35067; +pub const ETH_P_CFM: u32 = 35074; +pub const ETH_P_FCOE: u32 = 35078; +pub const ETH_P_IBOE: u32 = 35093; +pub const ETH_P_TDLS: u32 = 35085; +pub const ETH_P_FIP: u32 = 35092; +pub const ETH_P_80221: u32 = 35095; +pub const ETH_P_HSR: u32 = 35119; +pub const ETH_P_NSH: u32 = 35151; +pub const ETH_P_LOOPBACK: u32 = 36864; +pub const ETH_P_QINQ1: u32 = 37120; +pub const ETH_P_QINQ2: u32 = 37376; +pub const ETH_P_QINQ3: u32 = 37632; +pub const ETH_P_EDSA: u32 = 56026; +pub const ETH_P_DSA_8021Q: u32 = 56027; +pub const ETH_P_DSA_A5PSW: u32 = 57345; +pub const ETH_P_IFE: u32 = 60734; +pub const ETH_P_AF_IUCV: u32 = 64507; +pub const ETH_P_802_3_MIN: u32 = 1536; +pub const ETH_P_802_3: u32 = 1; +pub const ETH_P_AX25: u32 = 2; +pub const ETH_P_ALL: u32 = 3; +pub const ETH_P_802_2: u32 = 4; +pub const ETH_P_SNAP: u32 = 5; +pub const ETH_P_DDCMP: u32 = 6; +pub const ETH_P_WAN_PPP: u32 = 7; +pub const ETH_P_PPP_MP: u32 = 8; +pub const ETH_P_LOCALTALK: u32 = 9; +pub const ETH_P_CAN: u32 = 12; +pub const ETH_P_CANFD: u32 = 13; +pub const ETH_P_CANXL: u32 = 14; +pub const ETH_P_PPPTALK: u32 = 16; +pub const ETH_P_TR_802_2: u32 = 17; +pub const ETH_P_MOBITEX: u32 = 21; +pub const ETH_P_CONTROL: u32 = 22; +pub const ETH_P_IRDA: u32 = 23; +pub const ETH_P_ECONET: u32 = 24; +pub const ETH_P_HDLC: u32 = 25; +pub const ETH_P_ARCNET: u32 = 26; +pub const ETH_P_DSA: u32 = 27; +pub const ETH_P_TRAILER: u32 = 28; +pub const ETH_P_PHONET: u32 = 245; +pub const ETH_P_IEEE802154: u32 = 246; +pub const ETH_P_CAIF: u32 = 247; +pub const ETH_P_XDSA: u32 = 248; +pub const ETH_P_MAP: u32 = 249; +pub const ETH_P_MCTP: u32 = 250; +pub const BPF_LD: u32 = 0; +pub const BPF_LDX: u32 = 1; +pub const BPF_ST: u32 = 2; +pub const BPF_STX: u32 = 3; +pub const BPF_ALU: u32 = 4; +pub const BPF_JMP: u32 = 5; +pub const BPF_RET: u32 = 6; +pub const BPF_MISC: u32 = 7; +pub const BPF_W: u32 = 0; +pub const BPF_H: u32 = 8; +pub const BPF_B: u32 = 16; +pub const BPF_IMM: u32 = 0; +pub const BPF_ABS: u32 = 32; +pub const BPF_IND: u32 = 64; +pub const BPF_MEM: u32 = 96; +pub const BPF_LEN: u32 = 128; +pub const BPF_MSH: u32 = 160; +pub const BPF_ADD: u32 = 0; +pub const BPF_SUB: u32 = 16; +pub const BPF_MUL: u32 = 32; +pub const BPF_DIV: u32 = 48; +pub const BPF_OR: u32 = 64; +pub const BPF_AND: u32 = 80; +pub const BPF_LSH: u32 = 96; +pub const BPF_RSH: u32 = 112; +pub const BPF_NEG: u32 = 128; +pub const BPF_MOD: u32 = 144; +pub const BPF_XOR: u32 = 160; +pub const BPF_JA: u32 = 0; +pub const BPF_JEQ: u32 = 16; +pub const BPF_JGT: u32 = 32; +pub const BPF_JGE: u32 = 48; +pub const BPF_JSET: u32 = 64; +pub const BPF_K: u32 = 0; +pub const BPF_X: u32 = 8; +pub const BPF_MAXINSNS: u32 = 4096; +pub const BPF_MAJOR_VERSION: u32 = 1; +pub const BPF_MINOR_VERSION: u32 = 1; +pub const BPF_A: u32 = 16; +pub const BPF_TAX: u32 = 0; +pub const BPF_TXA: u32 = 128; +pub const BPF_MEMWORDS: u32 = 16; +pub const SKF_AD_OFF: i32 = -4096; +pub const SKF_AD_PROTOCOL: u32 = 0; +pub const SKF_AD_PKTTYPE: u32 = 4; +pub const SKF_AD_IFINDEX: u32 = 8; +pub const SKF_AD_NLATTR: u32 = 12; +pub const SKF_AD_NLATTR_NEST: u32 = 16; +pub const SKF_AD_MARK: u32 = 20; +pub const SKF_AD_QUEUE: u32 = 24; +pub const SKF_AD_HATYPE: u32 = 28; +pub const SKF_AD_RXHASH: u32 = 32; +pub const SKF_AD_CPU: u32 = 36; +pub const SKF_AD_ALU_XOR_X: u32 = 40; +pub const SKF_AD_VLAN_TAG: u32 = 44; +pub const SKF_AD_VLAN_TAG_PRESENT: u32 = 48; +pub const SKF_AD_PAY_OFFSET: u32 = 52; +pub const SKF_AD_RANDOM: u32 = 56; +pub const SKF_AD_VLAN_TPID: u32 = 60; +pub const SKF_AD_MAX: u32 = 64; +pub const SKF_NET_OFF: i32 = -1048576; +pub const SKF_LL_OFF: i32 = -2097152; +pub const BPF_NET_OFF: i32 = -1048576; +pub const BPF_LL_OFF: i32 = -2097152; +pub const TUN_READQ_SIZE: u32 = 500; +pub const TUN_TYPE_MASK: u32 = 15; +pub const IFF_TUN: u32 = 1; +pub const IFF_TAP: u32 = 2; +pub const IFF_NAPI: u32 = 16; +pub const IFF_NAPI_FRAGS: u32 = 32; +pub const IFF_NO_CARRIER: u32 = 64; +pub const IFF_NO_PI: u32 = 4096; +pub const IFF_ONE_QUEUE: u32 = 8192; +pub const IFF_VNET_HDR: u32 = 16384; +pub const IFF_TUN_EXCL: u32 = 32768; +pub const IFF_MULTI_QUEUE: u32 = 256; +pub const IFF_ATTACH_QUEUE: u32 = 512; +pub const IFF_DETACH_QUEUE: u32 = 1024; +pub const IFF_PERSIST: u32 = 2048; +pub const IFF_NOFILTER: u32 = 4096; +pub const TUN_TX_TIMESTAMP: u32 = 1; +pub const TUN_F_CSUM: u32 = 1; +pub const TUN_F_TSO4: u32 = 2; +pub const TUN_F_TSO6: u32 = 4; +pub const TUN_F_TSO_ECN: u32 = 8; +pub const TUN_F_UFO: u32 = 16; +pub const TUN_F_USO4: u32 = 32; +pub const TUN_F_USO6: u32 = 64; +pub const TUN_F_UDP_TUNNEL_GSO: u32 = 128; +pub const TUN_F_UDP_TUNNEL_GSO_CSUM: u32 = 256; +pub const TUN_PKT_STRIP: u32 = 1; +pub const TUN_FLT_ALLMULTI: u32 = 1; +impl __IncompleteArrayField { +#[inline] +pub const fn new() -> Self { +__IncompleteArrayField(::core::marker::PhantomData, []) +} +#[inline] +pub fn as_ptr(&self) -> *const T { +self as *const _ as *const T +} +#[inline] +pub fn as_mut_ptr(&mut self) -> *mut T { +self as *mut _ as *mut T +} +#[inline] +pub unsafe fn as_slice(&self, len: usize) -> &[T] { +::core::slice::from_raw_parts(self.as_ptr(), len) +} +#[inline] +pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { +::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len) +} +} +impl ::core::fmt::Debug for __IncompleteArrayField { +fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { +fmt.write_str("__IncompleteArrayField") +} +} diff --git a/src/hexagon/image.rs b/src/hexagon/image.rs new file mode 100644 index 00000000..bff15e37 --- /dev/null +++ b/src/hexagon/image.rs @@ -0,0 +1,3 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + + diff --git a/src/hexagon/io_uring.rs b/src/hexagon/io_uring.rs new file mode 100644 index 00000000..4fc3f172 --- /dev/null +++ b/src/hexagon/io_uring.rs @@ -0,0 +1,1489 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +pub type __kernel_rwf_t = crate::ctypes::c_int; +#[repr(C)] +#[derive(Default)] +pub struct __IncompleteArrayField(::core::marker::PhantomData, [T; 0]); +#[repr(C)] +pub struct __BindgenUnionField(::core::marker::PhantomData); +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fscrypt_policy_v1 { +pub version: __u8, +pub contents_encryption_mode: __u8, +pub filenames_encryption_mode: __u8, +pub flags: __u8, +pub master_key_descriptor: [__u8; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fscrypt_key { +pub mode: __u32, +pub raw: [__u8; 64usize], +pub size: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fscrypt_policy_v2 { +pub version: __u8, +pub contents_encryption_mode: __u8, +pub filenames_encryption_mode: __u8, +pub flags: __u8, +pub log2_data_unit_size: __u8, +pub __reserved: [__u8; 3usize], +pub master_key_identifier: [__u8; 16usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct fscrypt_get_policy_ex_arg { +pub policy_size: __u64, +pub policy: fscrypt_get_policy_ex_arg__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct fscrypt_key_specifier { +pub type_: __u32, +pub __reserved: __u32, +pub u: fscrypt_key_specifier__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug)] +pub struct fscrypt_provisioning_key_payload { +pub type_: __u32, +pub flags: __u32, +pub raw: __IncompleteArrayField<__u8>, +} +#[repr(C)] +pub struct fscrypt_add_key_arg { +pub key_spec: fscrypt_key_specifier, +pub raw_size: __u32, +pub key_id: __u32, +pub flags: __u32, +pub __reserved: [__u32; 7usize], +pub raw: __IncompleteArrayField<__u8>, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct fscrypt_remove_key_arg { +pub key_spec: fscrypt_key_specifier, +pub removal_status_flags: __u32, +pub __reserved: [__u32; 5usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct fscrypt_get_key_status_arg { +pub key_spec: fscrypt_key_specifier, +pub __reserved: [__u32; 6usize], +pub status: __u32, +pub status_flags: __u32, +pub user_count: __u32, +pub __out_reserved: [__u32; 13usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct mount_attr { +pub attr_set: __u64, +pub attr_clr: __u64, +pub propagation: __u64, +pub userns_fd: __u64, +} +#[repr(C)] +#[derive(Debug)] +pub struct statmount { +pub size: __u32, +pub mnt_opts: __u32, +pub mask: __u64, +pub sb_dev_major: __u32, +pub sb_dev_minor: __u32, +pub sb_magic: __u64, +pub sb_flags: __u32, +pub fs_type: __u32, +pub mnt_id: __u64, +pub mnt_parent_id: __u64, +pub mnt_id_old: __u32, +pub mnt_parent_id_old: __u32, +pub mnt_attr: __u64, +pub mnt_propagation: __u64, +pub mnt_peer_group: __u64, +pub mnt_master: __u64, +pub propagate_from: __u64, +pub mnt_root: __u32, +pub mnt_point: __u32, +pub mnt_ns_id: __u64, +pub fs_subtype: __u32, +pub sb_source: __u32, +pub opt_num: __u32, +pub opt_array: __u32, +pub opt_sec_num: __u32, +pub opt_sec_array: __u32, +pub supported_mask: __u64, +pub mnt_uidmap_num: __u32, +pub mnt_uidmap: __u32, +pub mnt_gidmap_num: __u32, +pub mnt_gidmap: __u32, +pub __spare2: [__u64; 43usize], +pub str_: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct mnt_id_req { +pub size: __u32, +pub spare: __u32, +pub mnt_id: __u64, +pub param: __u64, +pub mnt_ns_id: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct file_clone_range { +pub src_fd: __s64, +pub src_offset: __u64, +pub src_length: __u64, +pub dest_offset: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fstrim_range { +pub start: __u64, +pub len: __u64, +pub minlen: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fsuuid2 { +pub len: __u8, +pub uuid: [__u8; 16usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fs_sysfs_path { +pub len: __u8, +pub name: [__u8; 128usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct logical_block_metadata_cap { +pub lbmd_flags: __u32, +pub lbmd_interval: __u16, +pub lbmd_size: __u8, +pub lbmd_opaque_size: __u8, +pub lbmd_opaque_offset: __u8, +pub lbmd_pi_size: __u8, +pub lbmd_pi_offset: __u8, +pub lbmd_guard_tag_type: __u8, +pub lbmd_app_tag_size: __u8, +pub lbmd_ref_tag_size: __u8, +pub lbmd_storage_tag_size: __u8, +pub pad: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct file_dedupe_range_info { +pub dest_fd: __s64, +pub dest_offset: __u64, +pub bytes_deduped: __u64, +pub status: __s32, +pub reserved: __u32, +} +#[repr(C)] +#[derive(Debug)] +pub struct file_dedupe_range { +pub src_offset: __u64, +pub src_length: __u64, +pub dest_count: __u16, +pub reserved1: __u16, +pub reserved2: __u32, +pub info: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct files_stat_struct { +pub nr_files: crate::ctypes::c_ulong, +pub nr_free_files: crate::ctypes::c_ulong, +pub max_files: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct inodes_stat_t { +pub nr_inodes: crate::ctypes::c_long, +pub nr_unused: crate::ctypes::c_long, +pub dummy: [crate::ctypes::c_long; 5usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fsxattr { +pub fsx_xflags: __u32, +pub fsx_extsize: __u32, +pub fsx_nextents: __u32, +pub fsx_projid: __u32, +pub fsx_cowextsize: __u32, +pub fsx_pad: [crate::ctypes::c_uchar; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct file_attr { +pub fa_xflags: __u64, +pub fa_extsize: __u32, +pub fa_nextents: __u32, +pub fa_projid: __u32, +pub fa_cowextsize: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct page_region { +pub start: __u64, +pub end: __u64, +pub categories: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pm_scan_arg { +pub size: __u64, +pub flags: __u64, +pub start: __u64, +pub end: __u64, +pub walk_end: __u64, +pub vec: __u64, +pub vec_len: __u64, +pub max_pages: __u64, +pub category_inverted: __u64, +pub category_mask: __u64, +pub category_anyof_mask: __u64, +pub return_mask: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct procmap_query { +pub size: __u64, +pub query_flags: __u64, +pub query_addr: __u64, +pub vma_start: __u64, +pub vma_end: __u64, +pub vma_flags: __u64, +pub vma_page_size: __u64, +pub vma_offset: __u64, +pub inode: __u64, +pub dev_major: __u32, +pub dev_minor: __u32, +pub vma_name_size: __u32, +pub build_id_size: __u32, +pub vma_name_addr: __u64, +pub build_id_addr: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_timespec { +pub tv_sec: __kernel_time64_t, +pub tv_nsec: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_itimerspec { +pub it_interval: __kernel_timespec, +pub it_value: __kernel_timespec, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_old_timeval { +pub tv_sec: __kernel_long_t, +pub tv_usec: __kernel_long_t, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_old_timespec { +pub tv_sec: __kernel_old_time_t, +pub tv_nsec: crate::ctypes::c_long, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_old_itimerval { +pub it_interval: __kernel_old_timeval, +pub it_value: __kernel_old_timeval, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_sock_timeval { +pub tv_sec: __s64, +pub tv_usec: __s64, +} +#[repr(C)] +pub struct io_uring_sqe { +pub opcode: __u8, +pub flags: __u8, +pub ioprio: __u16, +pub fd: __s32, +pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_1, +pub __bindgen_anon_2: io_uring_sqe__bindgen_ty_2, +pub len: __u32, +pub __bindgen_anon_3: io_uring_sqe__bindgen_ty_3, +pub user_data: __u64, +pub __bindgen_anon_4: io_uring_sqe__bindgen_ty_4, +pub personality: __u16, +pub __bindgen_anon_5: io_uring_sqe__bindgen_ty_5, +pub __bindgen_anon_6: io_uring_sqe__bindgen_ty_6, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_sqe__bindgen_ty_1__bindgen_ty_1 { +pub cmd_op: __u32, +pub __pad1: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_sqe__bindgen_ty_2__bindgen_ty_1 { +pub level: __u32, +pub optname: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_sqe__bindgen_ty_5__bindgen_ty_1 { +pub addr_len: __u16, +pub __pad3: [__u16; 1usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_sqe__bindgen_ty_5__bindgen_ty_2 { +pub write_stream: __u8, +pub __pad4: [__u8; 3usize], +} +#[repr(C)] +pub struct io_uring_sqe__bindgen_ty_6 { +pub __bindgen_anon_1: __BindgenUnionField, +pub __bindgen_anon_2: __BindgenUnionField, +pub optval: __BindgenUnionField<__u64>, +pub cmd: __BindgenUnionField<[__u8; 0usize]>, +pub bindgen_union_field: [u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_sqe__bindgen_ty_6__bindgen_ty_1 { +pub addr3: __u64, +pub __pad2: [__u64; 1usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_sqe__bindgen_ty_6__bindgen_ty_2 { +pub attr_ptr: __u64, +pub attr_type_mask: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_attr_pi { +pub flags: __u16, +pub app_tag: __u16, +pub len: __u32, +pub addr: __u64, +pub seed: __u64, +pub rsvd: __u64, +} +#[repr(C)] +#[derive(Debug)] +pub struct io_uring_cqe { +pub user_data: __u64, +pub res: __s32, +pub flags: __u32, +pub big_cqe: __IncompleteArrayField<__u64>, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_sqring_offsets { +pub head: __u32, +pub tail: __u32, +pub ring_mask: __u32, +pub ring_entries: __u32, +pub flags: __u32, +pub dropped: __u32, +pub array: __u32, +pub resv1: __u32, +pub user_addr: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_cqring_offsets { +pub head: __u32, +pub tail: __u32, +pub ring_mask: __u32, +pub ring_entries: __u32, +pub overflow: __u32, +pub cqes: __u32, +pub flags: __u32, +pub resv1: __u32, +pub user_addr: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_params { +pub sq_entries: __u32, +pub cq_entries: __u32, +pub flags: __u32, +pub sq_thread_cpu: __u32, +pub sq_thread_idle: __u32, +pub features: __u32, +pub wq_fd: __u32, +pub resv: [__u32; 3usize], +pub sq_off: io_sqring_offsets, +pub cq_off: io_cqring_offsets, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_files_update { +pub offset: __u32, +pub resv: __u32, +pub fds: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_region_desc { +pub user_addr: __u64, +pub size: __u64, +pub flags: __u32, +pub id: __u32, +pub mmap_offset: __u64, +pub __resv: [__u64; 4usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_mem_region_reg { +pub region_uptr: __u64, +pub flags: __u64, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_rsrc_register { +pub nr: __u32, +pub flags: __u32, +pub resv2: __u64, +pub data: __u64, +pub tags: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_rsrc_update { +pub offset: __u32, +pub resv: __u32, +pub data: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_rsrc_update2 { +pub offset: __u32, +pub resv: __u32, +pub data: __u64, +pub tags: __u64, +pub nr: __u32, +pub resv2: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_probe_op { +pub op: __u8, +pub resv: __u8, +pub flags: __u16, +pub resv2: __u32, +} +#[repr(C)] +#[derive(Debug)] +pub struct io_uring_probe { +pub last_op: __u8, +pub ops_len: __u8, +pub resv: __u16, +pub resv2: [__u32; 3usize], +pub ops: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct io_uring_restriction { +pub opcode: __u16, +pub __bindgen_anon_1: io_uring_restriction__bindgen_ty_1, +pub resv: __u8, +pub resv2: [__u32; 3usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_clock_register { +pub clockid: __u32, +pub __resv: [__u32; 3usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_clone_buffers { +pub src_fd: __u32, +pub flags: __u32, +pub src_off: __u32, +pub dst_off: __u32, +pub nr: __u32, +pub pad: [__u32; 3usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_buf { +pub addr: __u64, +pub len: __u32, +pub bid: __u16, +pub resv: __u16, +} +#[repr(C)] +pub struct io_uring_buf_ring { +pub __bindgen_anon_1: io_uring_buf_ring__bindgen_ty_1, +} +#[repr(C)] +pub struct io_uring_buf_ring__bindgen_ty_1 { +pub __bindgen_anon_1: __BindgenUnionField, +pub __bindgen_anon_2: __BindgenUnionField, +pub bindgen_union_field: [u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_buf_ring__bindgen_ty_1__bindgen_ty_1 { +pub resv1: __u64, +pub resv2: __u32, +pub resv3: __u16, +pub tail: __u16, +} +#[repr(C)] +#[derive(Debug)] +pub struct io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2 { +pub __empty_bufs: io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1, +pub bufs: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_buf_ring__bindgen_ty_1__bindgen_ty_2__bindgen_ty_1 {} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_buf_reg { +pub ring_addr: __u64, +pub ring_entries: __u32, +pub bgid: __u16, +pub flags: __u16, +pub resv: [__u64; 3usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_buf_status { +pub buf_group: __u32, +pub head: __u32, +pub resv: [__u32; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_napi { +pub busy_poll_to: __u32, +pub prefer_busy_poll: __u8, +pub opcode: __u8, +pub pad: [__u8; 2usize], +pub op_param: __u32, +pub resv: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_reg_wait { +pub ts: __kernel_timespec, +pub min_wait_usec: __u32, +pub flags: __u32, +pub sigmask: __u64, +pub sigmask_sz: __u32, +pub pad: [__u32; 3usize], +pub pad2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_getevents_arg { +pub sigmask: __u64, +pub sigmask_sz: __u32, +pub min_wait_usec: __u32, +pub ts: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_sync_cancel_reg { +pub addr: __u64, +pub fd: __s32, +pub flags: __u32, +pub timeout: __kernel_timespec, +pub opcode: __u8, +pub pad: [__u8; 7usize], +pub pad2: [__u64; 3usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_file_index_range { +pub off: __u32, +pub len: __u32, +pub resv: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_recvmsg_out { +pub namelen: __u32, +pub controllen: __u32, +pub payloadlen: __u32, +pub flags: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_timespec { +pub tv_sec: __u64, +pub tv_nsec: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_rqe { +pub off: __u64, +pub len: __u32, +pub __pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_cqe { +pub off: __u64, +pub __pad: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_offsets { +pub head: __u32, +pub tail: __u32, +pub rqes: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_area_reg { +pub addr: __u64, +pub len: __u64, +pub rq_area_token: __u64, +pub flags: __u32, +pub dmabuf_fd: __u32, +pub __resv2: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct io_uring_zcrx_ifq_reg { +pub if_idx: __u32, +pub if_rxq: __u32, +pub rq_entries: __u32, +pub flags: __u32, +pub area_ptr: __u64, +pub region_ptr: __u64, +pub offsets: io_uring_zcrx_offsets, +pub zcrx_id: __u32, +pub __resv2: __u32, +pub __resv: [__u64; 3usize], +} +pub const NR_OPEN: u32 = 1024; +pub const NGROUPS_MAX: u32 = 65536; +pub const ARG_MAX: u32 = 131072; +pub const LINK_MAX: u32 = 127; +pub const MAX_CANON: u32 = 255; +pub const MAX_INPUT: u32 = 255; +pub const NAME_MAX: u32 = 255; +pub const PATH_MAX: u32 = 4096; +pub const PIPE_BUF: u32 = 4096; +pub const XATTR_NAME_MAX: u32 = 255; +pub const XATTR_SIZE_MAX: u32 = 65536; +pub const XATTR_LIST_MAX: u32 = 65536; +pub const RTSIG_MAX: u32 = 32; +pub const _IOC_NRBITS: u32 = 8; +pub const _IOC_TYPEBITS: u32 = 8; +pub const _IOC_SIZEBITS: u32 = 14; +pub const _IOC_DIRBITS: u32 = 2; +pub const _IOC_NRMASK: u32 = 255; +pub const _IOC_TYPEMASK: u32 = 255; +pub const _IOC_SIZEMASK: u32 = 16383; +pub const _IOC_DIRMASK: u32 = 3; +pub const _IOC_NRSHIFT: u32 = 0; +pub const _IOC_TYPESHIFT: u32 = 8; +pub const _IOC_SIZESHIFT: u32 = 16; +pub const _IOC_DIRSHIFT: u32 = 30; +pub const _IOC_NONE: u32 = 0; +pub const _IOC_WRITE: u32 = 1; +pub const _IOC_READ: u32 = 2; +pub const IOC_IN: u32 = 1073741824; +pub const IOC_OUT: u32 = 2147483648; +pub const IOC_INOUT: u32 = 3221225472; +pub const IOCSIZE_MASK: u32 = 1073676288; +pub const IOCSIZE_SHIFT: u32 = 16; +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const FSCRYPT_POLICY_FLAGS_PAD_4: u32 = 0; +pub const FSCRYPT_POLICY_FLAGS_PAD_8: u32 = 1; +pub const FSCRYPT_POLICY_FLAGS_PAD_16: u32 = 2; +pub const FSCRYPT_POLICY_FLAGS_PAD_32: u32 = 3; +pub const FSCRYPT_POLICY_FLAGS_PAD_MASK: u32 = 3; +pub const FSCRYPT_POLICY_FLAG_DIRECT_KEY: u32 = 4; +pub const FSCRYPT_POLICY_FLAG_IV_INO_LBLK_64: u32 = 8; +pub const FSCRYPT_POLICY_FLAG_IV_INO_LBLK_32: u32 = 16; +pub const FSCRYPT_MODE_AES_256_XTS: u32 = 1; +pub const FSCRYPT_MODE_AES_256_CTS: u32 = 4; +pub const FSCRYPT_MODE_AES_128_CBC: u32 = 5; +pub const FSCRYPT_MODE_AES_128_CTS: u32 = 6; +pub const FSCRYPT_MODE_SM4_XTS: u32 = 7; +pub const FSCRYPT_MODE_SM4_CTS: u32 = 8; +pub const FSCRYPT_MODE_ADIANTUM: u32 = 9; +pub const FSCRYPT_MODE_AES_256_HCTR2: u32 = 10; +pub const FSCRYPT_POLICY_V1: u32 = 0; +pub const FSCRYPT_KEY_DESCRIPTOR_SIZE: u32 = 8; +pub const FSCRYPT_KEY_DESC_PREFIX: &[u8; 9] = b"fscrypt:\0"; +pub const FSCRYPT_KEY_DESC_PREFIX_SIZE: u32 = 8; +pub const FSCRYPT_MAX_KEY_SIZE: u32 = 64; +pub const FSCRYPT_POLICY_V2: u32 = 2; +pub const FSCRYPT_KEY_IDENTIFIER_SIZE: u32 = 16; +pub const FSCRYPT_KEY_SPEC_TYPE_DESCRIPTOR: u32 = 1; +pub const FSCRYPT_KEY_SPEC_TYPE_IDENTIFIER: u32 = 2; +pub const FSCRYPT_ADD_KEY_FLAG_HW_WRAPPED: u32 = 1; +pub const FSCRYPT_KEY_REMOVAL_STATUS_FLAG_FILES_BUSY: u32 = 1; +pub const FSCRYPT_KEY_REMOVAL_STATUS_FLAG_OTHER_USERS: u32 = 2; +pub const FSCRYPT_KEY_STATUS_ABSENT: u32 = 1; +pub const FSCRYPT_KEY_STATUS_PRESENT: u32 = 2; +pub const FSCRYPT_KEY_STATUS_INCOMPLETELY_REMOVED: u32 = 3; +pub const FSCRYPT_KEY_STATUS_FLAG_ADDED_BY_SELF: u32 = 1; +pub const FS_KEY_DESCRIPTOR_SIZE: u32 = 8; +pub const FS_POLICY_FLAGS_PAD_4: u32 = 0; +pub const FS_POLICY_FLAGS_PAD_8: u32 = 1; +pub const FS_POLICY_FLAGS_PAD_16: u32 = 2; +pub const FS_POLICY_FLAGS_PAD_32: u32 = 3; +pub const FS_POLICY_FLAGS_PAD_MASK: u32 = 3; +pub const FS_POLICY_FLAG_DIRECT_KEY: u32 = 4; +pub const FS_POLICY_FLAGS_VALID: u32 = 7; +pub const FS_ENCRYPTION_MODE_INVALID: u32 = 0; +pub const FS_ENCRYPTION_MODE_AES_256_XTS: u32 = 1; +pub const FS_ENCRYPTION_MODE_AES_256_GCM: u32 = 2; +pub const FS_ENCRYPTION_MODE_AES_256_CBC: u32 = 3; +pub const FS_ENCRYPTION_MODE_AES_256_CTS: u32 = 4; +pub const FS_ENCRYPTION_MODE_AES_128_CBC: u32 = 5; +pub const FS_ENCRYPTION_MODE_AES_128_CTS: u32 = 6; +pub const FS_ENCRYPTION_MODE_ADIANTUM: u32 = 9; +pub const FS_KEY_DESC_PREFIX: &[u8; 9] = b"fscrypt:\0"; +pub const FS_KEY_DESC_PREFIX_SIZE: u32 = 8; +pub const FS_MAX_KEY_SIZE: u32 = 64; +pub const MS_RDONLY: u32 = 1; +pub const MS_NOSUID: u32 = 2; +pub const MS_NODEV: u32 = 4; +pub const MS_NOEXEC: u32 = 8; +pub const MS_SYNCHRONOUS: u32 = 16; +pub const MS_REMOUNT: u32 = 32; +pub const MS_MANDLOCK: u32 = 64; +pub const MS_DIRSYNC: u32 = 128; +pub const MS_NOSYMFOLLOW: u32 = 256; +pub const MS_NOATIME: u32 = 1024; +pub const MS_NODIRATIME: u32 = 2048; +pub const MS_BIND: u32 = 4096; +pub const MS_MOVE: u32 = 8192; +pub const MS_REC: u32 = 16384; +pub const MS_VERBOSE: u32 = 32768; +pub const MS_SILENT: u32 = 32768; +pub const MS_POSIXACL: u32 = 65536; +pub const MS_UNBINDABLE: u32 = 131072; +pub const MS_PRIVATE: u32 = 262144; +pub const MS_SLAVE: u32 = 524288; +pub const MS_SHARED: u32 = 1048576; +pub const MS_RELATIME: u32 = 2097152; +pub const MS_KERNMOUNT: u32 = 4194304; +pub const MS_I_VERSION: u32 = 8388608; +pub const MS_STRICTATIME: u32 = 16777216; +pub const MS_LAZYTIME: u32 = 33554432; +pub const MS_SUBMOUNT: u32 = 67108864; +pub const MS_NOREMOTELOCK: u32 = 134217728; +pub const MS_NOSEC: u32 = 268435456; +pub const MS_BORN: u32 = 536870912; +pub const MS_ACTIVE: u32 = 1073741824; +pub const MS_NOUSER: u32 = 2147483648; +pub const MS_RMT_MASK: u32 = 41943121; +pub const MS_MGC_VAL: u32 = 3236757504; +pub const MS_MGC_MSK: u32 = 4294901760; +pub const OPEN_TREE_CLONE: u32 = 1; +pub const MOVE_MOUNT_F_SYMLINKS: u32 = 1; +pub const MOVE_MOUNT_F_AUTOMOUNTS: u32 = 2; +pub const MOVE_MOUNT_F_EMPTY_PATH: u32 = 4; +pub const MOVE_MOUNT_T_SYMLINKS: u32 = 16; +pub const MOVE_MOUNT_T_AUTOMOUNTS: u32 = 32; +pub const MOVE_MOUNT_T_EMPTY_PATH: u32 = 64; +pub const MOVE_MOUNT_SET_GROUP: u32 = 256; +pub const MOVE_MOUNT_BENEATH: u32 = 512; +pub const MOVE_MOUNT__MASK: u32 = 887; +pub const FSOPEN_CLOEXEC: u32 = 1; +pub const FSPICK_CLOEXEC: u32 = 1; +pub const FSPICK_SYMLINK_NOFOLLOW: u32 = 2; +pub const FSPICK_NO_AUTOMOUNT: u32 = 4; +pub const FSPICK_EMPTY_PATH: u32 = 8; +pub const FSMOUNT_CLOEXEC: u32 = 1; +pub const MOUNT_ATTR_RDONLY: u32 = 1; +pub const MOUNT_ATTR_NOSUID: u32 = 2; +pub const MOUNT_ATTR_NODEV: u32 = 4; +pub const MOUNT_ATTR_NOEXEC: u32 = 8; +pub const MOUNT_ATTR__ATIME: u32 = 112; +pub const MOUNT_ATTR_RELATIME: u32 = 0; +pub const MOUNT_ATTR_NOATIME: u32 = 16; +pub const MOUNT_ATTR_STRICTATIME: u32 = 32; +pub const MOUNT_ATTR_NODIRATIME: u32 = 128; +pub const MOUNT_ATTR_IDMAP: u32 = 1048576; +pub const MOUNT_ATTR_NOSYMFOLLOW: u32 = 2097152; +pub const MOUNT_ATTR_SIZE_VER0: u32 = 32; +pub const MNT_ID_REQ_SIZE_VER0: u32 = 24; +pub const MNT_ID_REQ_SIZE_VER1: u32 = 32; +pub const STATMOUNT_SB_BASIC: u32 = 1; +pub const STATMOUNT_MNT_BASIC: u32 = 2; +pub const STATMOUNT_PROPAGATE_FROM: u32 = 4; +pub const STATMOUNT_MNT_ROOT: u32 = 8; +pub const STATMOUNT_MNT_POINT: u32 = 16; +pub const STATMOUNT_FS_TYPE: u32 = 32; +pub const STATMOUNT_MNT_NS_ID: u32 = 64; +pub const STATMOUNT_MNT_OPTS: u32 = 128; +pub const STATMOUNT_FS_SUBTYPE: u32 = 256; +pub const STATMOUNT_SB_SOURCE: u32 = 512; +pub const STATMOUNT_OPT_ARRAY: u32 = 1024; +pub const STATMOUNT_OPT_SEC_ARRAY: u32 = 2048; +pub const STATMOUNT_SUPPORTED_MASK: u32 = 4096; +pub const STATMOUNT_MNT_UIDMAP: u32 = 8192; +pub const STATMOUNT_MNT_GIDMAP: u32 = 16384; +pub const LSMT_ROOT: i32 = -1; +pub const LISTMOUNT_REVERSE: u32 = 1; +pub const INR_OPEN_CUR: u32 = 1024; +pub const INR_OPEN_MAX: u32 = 4096; +pub const BLOCK_SIZE_BITS: u32 = 10; +pub const BLOCK_SIZE: u32 = 1024; +pub const IO_INTEGRITY_CHK_GUARD: u32 = 1; +pub const IO_INTEGRITY_CHK_REFTAG: u32 = 2; +pub const IO_INTEGRITY_CHK_APPTAG: u32 = 4; +pub const IO_INTEGRITY_VALID_FLAGS: u32 = 7; +pub const SEEK_SET: u32 = 0; +pub const SEEK_CUR: u32 = 1; +pub const SEEK_END: u32 = 2; +pub const SEEK_DATA: u32 = 3; +pub const SEEK_HOLE: u32 = 4; +pub const SEEK_MAX: u32 = 4; +pub const RENAME_NOREPLACE: u32 = 1; +pub const RENAME_EXCHANGE: u32 = 2; +pub const RENAME_WHITEOUT: u32 = 4; +pub const LBMD_PI_CAP_INTEGRITY: u32 = 1; +pub const LBMD_PI_CAP_REFTAG: u32 = 2; +pub const LBMD_PI_CSUM_NONE: u32 = 0; +pub const LBMD_PI_CSUM_IP: u32 = 1; +pub const LBMD_PI_CSUM_CRC16_T10DIF: u32 = 2; +pub const LBMD_PI_CSUM_CRC64_NVME: u32 = 4; +pub const LBMD_SIZE_VER0: u32 = 16; +pub const FILE_DEDUPE_RANGE_SAME: u32 = 0; +pub const FILE_DEDUPE_RANGE_DIFFERS: u32 = 1; +pub const NR_FILE: u32 = 8192; +pub const FILE_ATTR_SIZE_VER0: u32 = 24; +pub const FILE_ATTR_SIZE_LATEST: u32 = 24; +pub const FS_XFLAG_REALTIME: u32 = 1; +pub const FS_XFLAG_PREALLOC: u32 = 2; +pub const FS_XFLAG_IMMUTABLE: u32 = 8; +pub const FS_XFLAG_APPEND: u32 = 16; +pub const FS_XFLAG_SYNC: u32 = 32; +pub const FS_XFLAG_NOATIME: u32 = 64; +pub const FS_XFLAG_NODUMP: u32 = 128; +pub const FS_XFLAG_RTINHERIT: u32 = 256; +pub const FS_XFLAG_PROJINHERIT: u32 = 512; +pub const FS_XFLAG_NOSYMLINKS: u32 = 1024; +pub const FS_XFLAG_EXTSIZE: u32 = 2048; +pub const FS_XFLAG_EXTSZINHERIT: u32 = 4096; +pub const FS_XFLAG_NODEFRAG: u32 = 8192; +pub const FS_XFLAG_FILESTREAM: u32 = 16384; +pub const FS_XFLAG_DAX: u32 = 32768; +pub const FS_XFLAG_COWEXTSIZE: u32 = 65536; +pub const FS_XFLAG_HASATTR: u32 = 2147483648; +pub const BMAP_IOCTL: u32 = 1; +pub const FSLABEL_MAX: u32 = 256; +pub const FS_SECRM_FL: u32 = 1; +pub const FS_UNRM_FL: u32 = 2; +pub const FS_COMPR_FL: u32 = 4; +pub const FS_SYNC_FL: u32 = 8; +pub const FS_IMMUTABLE_FL: u32 = 16; +pub const FS_APPEND_FL: u32 = 32; +pub const FS_NODUMP_FL: u32 = 64; +pub const FS_NOATIME_FL: u32 = 128; +pub const FS_DIRTY_FL: u32 = 256; +pub const FS_COMPRBLK_FL: u32 = 512; +pub const FS_NOCOMP_FL: u32 = 1024; +pub const FS_ENCRYPT_FL: u32 = 2048; +pub const FS_BTREE_FL: u32 = 4096; +pub const FS_INDEX_FL: u32 = 4096; +pub const FS_IMAGIC_FL: u32 = 8192; +pub const FS_JOURNAL_DATA_FL: u32 = 16384; +pub const FS_NOTAIL_FL: u32 = 32768; +pub const FS_DIRSYNC_FL: u32 = 65536; +pub const FS_TOPDIR_FL: u32 = 131072; +pub const FS_HUGE_FILE_FL: u32 = 262144; +pub const FS_EXTENT_FL: u32 = 524288; +pub const FS_VERITY_FL: u32 = 1048576; +pub const FS_EA_INODE_FL: u32 = 2097152; +pub const FS_EOFBLOCKS_FL: u32 = 4194304; +pub const FS_NOCOW_FL: u32 = 8388608; +pub const FS_DAX_FL: u32 = 33554432; +pub const FS_INLINE_DATA_FL: u32 = 268435456; +pub const FS_PROJINHERIT_FL: u32 = 536870912; +pub const FS_CASEFOLD_FL: u32 = 1073741824; +pub const FS_RESERVED_FL: u32 = 2147483648; +pub const FS_FL_USER_VISIBLE: u32 = 253951; +pub const FS_FL_USER_MODIFIABLE: u32 = 229631; +pub const SYNC_FILE_RANGE_WAIT_BEFORE: u32 = 1; +pub const SYNC_FILE_RANGE_WRITE: u32 = 2; +pub const SYNC_FILE_RANGE_WAIT_AFTER: u32 = 4; +pub const SYNC_FILE_RANGE_WRITE_AND_WAIT: u32 = 7; +pub const PROCFS_IOCTL_MAGIC: u8 = 102u8; +pub const PAGE_IS_WPALLOWED: u32 = 1; +pub const PAGE_IS_WRITTEN: u32 = 2; +pub const PAGE_IS_FILE: u32 = 4; +pub const PAGE_IS_PRESENT: u32 = 8; +pub const PAGE_IS_SWAPPED: u32 = 16; +pub const PAGE_IS_PFNZERO: u32 = 32; +pub const PAGE_IS_HUGE: u32 = 64; +pub const PAGE_IS_SOFT_DIRTY: u32 = 128; +pub const PAGE_IS_GUARD: u32 = 256; +pub const PM_SCAN_WP_MATCHING: u32 = 1; +pub const PM_SCAN_CHECK_WPASYNC: u32 = 2; +pub const IORING_RW_ATTR_FLAG_PI: u32 = 1; +pub const IORING_FILE_INDEX_ALLOC: i32 = -1; +pub const IORING_SETUP_IOPOLL: u32 = 1; +pub const IORING_SETUP_SQPOLL: u32 = 2; +pub const IORING_SETUP_SQ_AFF: u32 = 4; +pub const IORING_SETUP_CQSIZE: u32 = 8; +pub const IORING_SETUP_CLAMP: u32 = 16; +pub const IORING_SETUP_ATTACH_WQ: u32 = 32; +pub const IORING_SETUP_R_DISABLED: u32 = 64; +pub const IORING_SETUP_SUBMIT_ALL: u32 = 128; +pub const IORING_SETUP_COOP_TASKRUN: u32 = 256; +pub const IORING_SETUP_TASKRUN_FLAG: u32 = 512; +pub const IORING_SETUP_SQE128: u32 = 1024; +pub const IORING_SETUP_CQE32: u32 = 2048; +pub const IORING_SETUP_SINGLE_ISSUER: u32 = 4096; +pub const IORING_SETUP_DEFER_TASKRUN: u32 = 8192; +pub const IORING_SETUP_NO_MMAP: u32 = 16384; +pub const IORING_SETUP_REGISTERED_FD_ONLY: u32 = 32768; +pub const IORING_SETUP_NO_SQARRAY: u32 = 65536; +pub const IORING_SETUP_HYBRID_IOPOLL: u32 = 131072; +pub const IORING_URING_CMD_FIXED: u32 = 1; +pub const IORING_URING_CMD_MASK: u32 = 1; +pub const IORING_FSYNC_DATASYNC: u32 = 1; +pub const IORING_TIMEOUT_ABS: u32 = 1; +pub const IORING_TIMEOUT_UPDATE: u32 = 2; +pub const IORING_TIMEOUT_BOOTTIME: u32 = 4; +pub const IORING_TIMEOUT_REALTIME: u32 = 8; +pub const IORING_LINK_TIMEOUT_UPDATE: u32 = 16; +pub const IORING_TIMEOUT_ETIME_SUCCESS: u32 = 32; +pub const IORING_TIMEOUT_MULTISHOT: u32 = 64; +pub const IORING_TIMEOUT_CLOCK_MASK: u32 = 12; +pub const IORING_TIMEOUT_UPDATE_MASK: u32 = 18; +pub const SPLICE_F_FD_IN_FIXED: u32 = 2147483648; +pub const IORING_POLL_ADD_MULTI: u32 = 1; +pub const IORING_POLL_UPDATE_EVENTS: u32 = 2; +pub const IORING_POLL_UPDATE_USER_DATA: u32 = 4; +pub const IORING_POLL_ADD_LEVEL: u32 = 8; +pub const IORING_ASYNC_CANCEL_ALL: u32 = 1; +pub const IORING_ASYNC_CANCEL_FD: u32 = 2; +pub const IORING_ASYNC_CANCEL_ANY: u32 = 4; +pub const IORING_ASYNC_CANCEL_FD_FIXED: u32 = 8; +pub const IORING_ASYNC_CANCEL_USERDATA: u32 = 16; +pub const IORING_ASYNC_CANCEL_OP: u32 = 32; +pub const IORING_RECVSEND_POLL_FIRST: u32 = 1; +pub const IORING_RECV_MULTISHOT: u32 = 2; +pub const IORING_RECVSEND_FIXED_BUF: u32 = 4; +pub const IORING_SEND_ZC_REPORT_USAGE: u32 = 8; +pub const IORING_RECVSEND_BUNDLE: u32 = 16; +pub const IORING_SEND_VECTORIZED: u32 = 32; +pub const IORING_NOTIF_USAGE_ZC_COPIED: u32 = 2147483648; +pub const IORING_ACCEPT_MULTISHOT: u32 = 1; +pub const IORING_ACCEPT_DONTWAIT: u32 = 2; +pub const IORING_ACCEPT_POLL_FIRST: u32 = 4; +pub const IORING_MSG_RING_CQE_SKIP: u32 = 1; +pub const IORING_MSG_RING_FLAGS_PASS: u32 = 2; +pub const IORING_FIXED_FD_NO_CLOEXEC: u32 = 1; +pub const IORING_NOP_INJECT_RESULT: u32 = 1; +pub const IORING_NOP_FILE: u32 = 2; +pub const IORING_NOP_FIXED_FILE: u32 = 4; +pub const IORING_NOP_FIXED_BUFFER: u32 = 8; +pub const IORING_NOP_TW: u32 = 16; +pub const IORING_CQE_F_BUFFER: u32 = 1; +pub const IORING_CQE_F_MORE: u32 = 2; +pub const IORING_CQE_F_SOCK_NONEMPTY: u32 = 4; +pub const IORING_CQE_F_NOTIF: u32 = 8; +pub const IORING_CQE_F_BUF_MORE: u32 = 16; +pub const IORING_CQE_BUFFER_SHIFT: u32 = 16; +pub const IORING_OFF_SQ_RING: u32 = 0; +pub const IORING_OFF_CQ_RING: u32 = 134217728; +pub const IORING_OFF_SQES: u32 = 268435456; +pub const IORING_OFF_PBUF_RING: u32 = 2147483648; +pub const IORING_OFF_PBUF_SHIFT: u32 = 16; +pub const IORING_OFF_MMAP_MASK: u32 = 4160749568; +pub const IORING_SQ_NEED_WAKEUP: u32 = 1; +pub const IORING_SQ_CQ_OVERFLOW: u32 = 2; +pub const IORING_SQ_TASKRUN: u32 = 4; +pub const IORING_CQ_EVENTFD_DISABLED: u32 = 1; +pub const IORING_ENTER_GETEVENTS: u32 = 1; +pub const IORING_ENTER_SQ_WAKEUP: u32 = 2; +pub const IORING_ENTER_SQ_WAIT: u32 = 4; +pub const IORING_ENTER_EXT_ARG: u32 = 8; +pub const IORING_ENTER_REGISTERED_RING: u32 = 16; +pub const IORING_ENTER_ABS_TIMER: u32 = 32; +pub const IORING_ENTER_EXT_ARG_REG: u32 = 64; +pub const IORING_ENTER_NO_IOWAIT: u32 = 128; +pub const IORING_FEAT_SINGLE_MMAP: u32 = 1; +pub const IORING_FEAT_NODROP: u32 = 2; +pub const IORING_FEAT_SUBMIT_STABLE: u32 = 4; +pub const IORING_FEAT_RW_CUR_POS: u32 = 8; +pub const IORING_FEAT_CUR_PERSONALITY: u32 = 16; +pub const IORING_FEAT_FAST_POLL: u32 = 32; +pub const IORING_FEAT_POLL_32BITS: u32 = 64; +pub const IORING_FEAT_SQPOLL_NONFIXED: u32 = 128; +pub const IORING_FEAT_EXT_ARG: u32 = 256; +pub const IORING_FEAT_NATIVE_WORKERS: u32 = 512; +pub const IORING_FEAT_RSRC_TAGS: u32 = 1024; +pub const IORING_FEAT_CQE_SKIP: u32 = 2048; +pub const IORING_FEAT_LINKED_FILE: u32 = 4096; +pub const IORING_FEAT_REG_REG_RING: u32 = 8192; +pub const IORING_FEAT_RECVSEND_BUNDLE: u32 = 16384; +pub const IORING_FEAT_MIN_TIMEOUT: u32 = 32768; +pub const IORING_FEAT_RW_ATTR: u32 = 65536; +pub const IORING_FEAT_NO_IOWAIT: u32 = 131072; +pub const IORING_RSRC_REGISTER_SPARSE: u32 = 1; +pub const IORING_REGISTER_FILES_SKIP: i32 = -2; +pub const IO_URING_OP_SUPPORTED: u32 = 1; +pub const IORING_TIMESTAMP_HW_SHIFT: u32 = 16; +pub const IORING_TIMESTAMP_TYPE_SHIFT: u32 = 17; +pub const IORING_ZCRX_AREA_SHIFT: u32 = 48; +pub const IORING_MEM_REGION_TYPE_USER: _bindgen_ty_1 = _bindgen_ty_1::IORING_MEM_REGION_TYPE_USER; +pub const IORING_MEM_REGION_REG_WAIT_ARG: _bindgen_ty_2 = _bindgen_ty_2::IORING_MEM_REGION_REG_WAIT_ARG; +pub const IORING_REGISTER_SRC_REGISTERED: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_SRC_REGISTERED; +pub const IORING_REGISTER_DST_REPLACE: _bindgen_ty_3 = _bindgen_ty_3::IORING_REGISTER_DST_REPLACE; +pub const IORING_REG_WAIT_TS: _bindgen_ty_4 = _bindgen_ty_4::IORING_REG_WAIT_TS; +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum fsconfig_command { +FSCONFIG_SET_FLAG = 0, +FSCONFIG_SET_STRING = 1, +FSCONFIG_SET_BINARY = 2, +FSCONFIG_SET_PATH = 3, +FSCONFIG_SET_PATH_EMPTY = 4, +FSCONFIG_SET_FD = 5, +FSCONFIG_CMD_CREATE = 6, +FSCONFIG_CMD_RECONFIGURE = 7, +FSCONFIG_CMD_CREATE_EXCL = 8, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum procfs_ino { +PROCFS_ROOT_INO = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum procmap_query_flags { +PROCMAP_QUERY_VMA_READABLE = 1, +PROCMAP_QUERY_VMA_WRITABLE = 2, +PROCMAP_QUERY_VMA_EXECUTABLE = 4, +PROCMAP_QUERY_VMA_SHARED = 8, +PROCMAP_QUERY_COVERING_OR_NEXT_VMA = 16, +PROCMAP_QUERY_FILE_BACKED_VMA = 32, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum io_uring_sqe_flags_bit { +IOSQE_FIXED_FILE_BIT = 0, +IOSQE_IO_DRAIN_BIT = 1, +IOSQE_IO_LINK_BIT = 2, +IOSQE_IO_HARDLINK_BIT = 3, +IOSQE_ASYNC_BIT = 4, +IOSQE_BUFFER_SELECT_BIT = 5, +IOSQE_CQE_SKIP_SUCCESS_BIT = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum io_uring_op { +IORING_OP_NOP = 0, +IORING_OP_READV = 1, +IORING_OP_WRITEV = 2, +IORING_OP_FSYNC = 3, +IORING_OP_READ_FIXED = 4, +IORING_OP_WRITE_FIXED = 5, +IORING_OP_POLL_ADD = 6, +IORING_OP_POLL_REMOVE = 7, +IORING_OP_SYNC_FILE_RANGE = 8, +IORING_OP_SENDMSG = 9, +IORING_OP_RECVMSG = 10, +IORING_OP_TIMEOUT = 11, +IORING_OP_TIMEOUT_REMOVE = 12, +IORING_OP_ACCEPT = 13, +IORING_OP_ASYNC_CANCEL = 14, +IORING_OP_LINK_TIMEOUT = 15, +IORING_OP_CONNECT = 16, +IORING_OP_FALLOCATE = 17, +IORING_OP_OPENAT = 18, +IORING_OP_CLOSE = 19, +IORING_OP_FILES_UPDATE = 20, +IORING_OP_STATX = 21, +IORING_OP_READ = 22, +IORING_OP_WRITE = 23, +IORING_OP_FADVISE = 24, +IORING_OP_MADVISE = 25, +IORING_OP_SEND = 26, +IORING_OP_RECV = 27, +IORING_OP_OPENAT2 = 28, +IORING_OP_EPOLL_CTL = 29, +IORING_OP_SPLICE = 30, +IORING_OP_PROVIDE_BUFFERS = 31, +IORING_OP_REMOVE_BUFFERS = 32, +IORING_OP_TEE = 33, +IORING_OP_SHUTDOWN = 34, +IORING_OP_RENAMEAT = 35, +IORING_OP_UNLINKAT = 36, +IORING_OP_MKDIRAT = 37, +IORING_OP_SYMLINKAT = 38, +IORING_OP_LINKAT = 39, +IORING_OP_MSG_RING = 40, +IORING_OP_FSETXATTR = 41, +IORING_OP_SETXATTR = 42, +IORING_OP_FGETXATTR = 43, +IORING_OP_GETXATTR = 44, +IORING_OP_SOCKET = 45, +IORING_OP_URING_CMD = 46, +IORING_OP_SEND_ZC = 47, +IORING_OP_SENDMSG_ZC = 48, +IORING_OP_READ_MULTISHOT = 49, +IORING_OP_WAITID = 50, +IORING_OP_FUTEX_WAIT = 51, +IORING_OP_FUTEX_WAKE = 52, +IORING_OP_FUTEX_WAITV = 53, +IORING_OP_FIXED_FD_INSTALL = 54, +IORING_OP_FTRUNCATE = 55, +IORING_OP_BIND = 56, +IORING_OP_LISTEN = 57, +IORING_OP_RECV_ZC = 58, +IORING_OP_EPOLL_WAIT = 59, +IORING_OP_READV_FIXED = 60, +IORING_OP_WRITEV_FIXED = 61, +IORING_OP_PIPE = 62, +IORING_OP_LAST = 63, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum io_uring_msg_ring_flags { +IORING_MSG_DATA = 0, +IORING_MSG_SEND_FD = 1, +} +#[repr(u32)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum io_uring_register_op { +IORING_REGISTER_BUFFERS = 0, +IORING_UNREGISTER_BUFFERS = 1, +IORING_REGISTER_FILES = 2, +IORING_UNREGISTER_FILES = 3, +IORING_REGISTER_EVENTFD = 4, +IORING_UNREGISTER_EVENTFD = 5, +IORING_REGISTER_FILES_UPDATE = 6, +IORING_REGISTER_EVENTFD_ASYNC = 7, +IORING_REGISTER_PROBE = 8, +IORING_REGISTER_PERSONALITY = 9, +IORING_UNREGISTER_PERSONALITY = 10, +IORING_REGISTER_RESTRICTIONS = 11, +IORING_REGISTER_ENABLE_RINGS = 12, +IORING_REGISTER_FILES2 = 13, +IORING_REGISTER_FILES_UPDATE2 = 14, +IORING_REGISTER_BUFFERS2 = 15, +IORING_REGISTER_BUFFERS_UPDATE = 16, +IORING_REGISTER_IOWQ_AFF = 17, +IORING_UNREGISTER_IOWQ_AFF = 18, +IORING_REGISTER_IOWQ_MAX_WORKERS = 19, +IORING_REGISTER_RING_FDS = 20, +IORING_UNREGISTER_RING_FDS = 21, +IORING_REGISTER_PBUF_RING = 22, +IORING_UNREGISTER_PBUF_RING = 23, +IORING_REGISTER_SYNC_CANCEL = 24, +IORING_REGISTER_FILE_ALLOC_RANGE = 25, +IORING_REGISTER_PBUF_STATUS = 26, +IORING_REGISTER_NAPI = 27, +IORING_UNREGISTER_NAPI = 28, +IORING_REGISTER_CLOCK = 29, +IORING_REGISTER_CLONE_BUFFERS = 30, +IORING_REGISTER_SEND_MSG_RING = 31, +IORING_REGISTER_ZCRX_IFQ = 32, +IORING_REGISTER_RESIZE_RINGS = 33, +IORING_REGISTER_MEM_REGION = 34, +IORING_REGISTER_LAST = 35, +IORING_REGISTER_USE_REGISTERED_RING = 2147483648, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum io_wq_type { +IO_WQ_BOUND = 0, +IO_WQ_UNBOUND = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_1 { +IORING_MEM_REGION_TYPE_USER = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_2 { +IORING_MEM_REGION_REG_WAIT_ARG = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_3 { +IORING_REGISTER_SRC_REGISTERED = 1, +IORING_REGISTER_DST_REPLACE = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum io_uring_register_pbuf_ring_flags { +IOU_PBUF_RING_MMAP = 1, +IOU_PBUF_RING_INC = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum io_uring_napi_op { +IO_URING_NAPI_REGISTER_OP = 0, +IO_URING_NAPI_STATIC_ADD_ID = 1, +IO_URING_NAPI_STATIC_DEL_ID = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum io_uring_napi_tracking_strategy { +IO_URING_NAPI_TRACKING_DYNAMIC = 0, +IO_URING_NAPI_TRACKING_STATIC = 1, +IO_URING_NAPI_TRACKING_INACTIVE = 255, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum io_uring_register_restriction_op { +IORING_RESTRICTION_REGISTER_OP = 0, +IORING_RESTRICTION_SQE_OP = 1, +IORING_RESTRICTION_SQE_FLAGS_ALLOWED = 2, +IORING_RESTRICTION_SQE_FLAGS_REQUIRED = 3, +IORING_RESTRICTION_LAST = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_4 { +IORING_REG_WAIT_TS = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum io_uring_socket_op { +SOCKET_URING_OP_SIOCINQ = 0, +SOCKET_URING_OP_SIOCOUTQ = 1, +SOCKET_URING_OP_GETSOCKOPT = 2, +SOCKET_URING_OP_SETSOCKOPT = 3, +SOCKET_URING_OP_TX_TIMESTAMP = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum io_uring_zcrx_area_flags { +IORING_ZCRX_AREA_DMABUF = 1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union fscrypt_get_policy_ex_arg__bindgen_ty_1 { +pub version: __u8, +pub v1: fscrypt_policy_v1, +pub v2: fscrypt_policy_v2, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union fscrypt_key_specifier__bindgen_ty_1 { +pub __reserved: [__u8; 32usize], +pub descriptor: [__u8; 8usize], +pub identifier: [__u8; 16usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union io_uring_sqe__bindgen_ty_1 { +pub off: __u64, +pub addr2: __u64, +pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_1__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union io_uring_sqe__bindgen_ty_2 { +pub addr: __u64, +pub splice_off_in: __u64, +pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_2__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union io_uring_sqe__bindgen_ty_3 { +pub rw_flags: __u32, +pub fsync_flags: __u32, +pub poll_events: __u16, +pub poll32_events: __u32, +pub sync_range_flags: __u32, +pub msg_flags: __u32, +pub timeout_flags: __u32, +pub accept_flags: __u32, +pub cancel_flags: __u32, +pub open_flags: __u32, +pub statx_flags: __u32, +pub fadvise_advice: __u32, +pub splice_flags: __u32, +pub rename_flags: __u32, +pub unlink_flags: __u32, +pub hardlink_flags: __u32, +pub xattr_flags: __u32, +pub msg_ring_flags: __u32, +pub uring_cmd_flags: __u32, +pub waitid_flags: __u32, +pub futex_flags: __u32, +pub install_fd_flags: __u32, +pub nop_flags: __u32, +pub pipe_flags: __u32, +} +#[repr(C, packed)] +#[derive(Copy, Clone)] +pub union io_uring_sqe__bindgen_ty_4 { +pub buf_index: __u16, +pub buf_group: __u16, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union io_uring_sqe__bindgen_ty_5 { +pub splice_fd_in: __s32, +pub file_index: __u32, +pub zcrx_ifq_idx: __u32, +pub optlen: __u32, +pub __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, +pub __bindgen_anon_2: io_uring_sqe__bindgen_ty_5__bindgen_ty_2, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union io_uring_restriction__bindgen_ty_1 { +pub register_op: __u8, +pub sqe_op: __u8, +pub sqe_flags: __u8, +} +impl __IncompleteArrayField { +#[inline] +pub const fn new() -> Self { +__IncompleteArrayField(::core::marker::PhantomData, []) +} +#[inline] +pub fn as_ptr(&self) -> *const T { +self as *const _ as *const T +} +#[inline] +pub fn as_mut_ptr(&mut self) -> *mut T { +self as *mut _ as *mut T +} +#[inline] +pub unsafe fn as_slice(&self, len: usize) -> &[T] { +::core::slice::from_raw_parts(self.as_ptr(), len) +} +#[inline] +pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { +::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len) +} +} +impl ::core::fmt::Debug for __IncompleteArrayField { +fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { +fmt.write_str("__IncompleteArrayField") +} +} +impl __BindgenUnionField { +#[inline] +pub const fn new() -> Self { +__BindgenUnionField(::core::marker::PhantomData) +} +#[inline] +pub unsafe fn as_ref(&self) -> &T { +::core::mem::transmute(self) +} +#[inline] +pub unsafe fn as_mut(&mut self) -> &mut T { +::core::mem::transmute(self) +} +} +impl ::core::default::Default for __BindgenUnionField { +#[inline] +fn default() -> Self { +Self::new() +} +} +impl ::core::clone::Clone for __BindgenUnionField { +#[inline] +fn clone(&self) -> Self { +*self +} +} +impl ::core::marker::Copy for __BindgenUnionField {} +impl ::core::fmt::Debug for __BindgenUnionField { +fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { +fmt.write_str("__BindgenUnionField") +} +} +impl ::core::hash::Hash for __BindgenUnionField { +fn hash(&self, _state: &mut H) {} +} +impl ::core::cmp::PartialEq for __BindgenUnionField { +fn eq(&self, _other: &__BindgenUnionField) -> bool { +true +} +} +impl ::core::cmp::Eq for __BindgenUnionField {} diff --git a/src/hexagon/ioctl.rs b/src/hexagon/ioctl.rs new file mode 100644 index 00000000..bff15e37 --- /dev/null +++ b/src/hexagon/ioctl.rs @@ -0,0 +1,3 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + + diff --git a/src/hexagon/landlock.rs b/src/hexagon/landlock.rs new file mode 100644 index 00000000..6dd3378d --- /dev/null +++ b/src/hexagon/landlock.rs @@ -0,0 +1,102 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct landlock_ruleset_attr { +pub handled_access_fs: __u64, +pub handled_access_net: __u64, +pub scoped: __u64, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct landlock_path_beneath_attr { +pub allowed_access: __u64, +pub parent_fd: __s32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct landlock_net_port_attr { +pub allowed_access: __u64, +pub port: __u64, +} +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; +pub const LANDLOCK_CREATE_RULESET_ERRATA: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SAME_EXEC_OFF: u32 = 1; +pub const LANDLOCK_RESTRICT_SELF_LOG_NEW_EXEC_ON: u32 = 2; +pub const LANDLOCK_RESTRICT_SELF_LOG_SUBDOMAINS_OFF: u32 = 4; +pub const LANDLOCK_ACCESS_FS_EXECUTE: u32 = 1; +pub const LANDLOCK_ACCESS_FS_WRITE_FILE: u32 = 2; +pub const LANDLOCK_ACCESS_FS_READ_FILE: u32 = 4; +pub const LANDLOCK_ACCESS_FS_READ_DIR: u32 = 8; +pub const LANDLOCK_ACCESS_FS_REMOVE_DIR: u32 = 16; +pub const LANDLOCK_ACCESS_FS_REMOVE_FILE: u32 = 32; +pub const LANDLOCK_ACCESS_FS_MAKE_CHAR: u32 = 64; +pub const LANDLOCK_ACCESS_FS_MAKE_DIR: u32 = 128; +pub const LANDLOCK_ACCESS_FS_MAKE_REG: u32 = 256; +pub const LANDLOCK_ACCESS_FS_MAKE_SOCK: u32 = 512; +pub const LANDLOCK_ACCESS_FS_MAKE_FIFO: u32 = 1024; +pub const LANDLOCK_ACCESS_FS_MAKE_BLOCK: u32 = 2048; +pub const LANDLOCK_ACCESS_FS_MAKE_SYM: u32 = 4096; +pub const LANDLOCK_ACCESS_FS_REFER: u32 = 8192; +pub const LANDLOCK_ACCESS_FS_TRUNCATE: u32 = 16384; +pub const LANDLOCK_ACCESS_FS_IOCTL_DEV: u32 = 32768; +pub const LANDLOCK_ACCESS_NET_BIND_TCP: u32 = 1; +pub const LANDLOCK_ACCESS_NET_CONNECT_TCP: u32 = 2; +pub const LANDLOCK_SCOPE_ABSTRACT_UNIX_SOCKET: u32 = 1; +pub const LANDLOCK_SCOPE_SIGNAL: u32 = 2; +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum landlock_rule_type { +LANDLOCK_RULE_PATH_BENEATH = 1, +LANDLOCK_RULE_NET_PORT = 2, +} diff --git a/src/hexagon/loop_device.rs b/src/hexagon/loop_device.rs new file mode 100644 index 00000000..e708bce2 --- /dev/null +++ b/src/hexagon/loop_device.rs @@ -0,0 +1,132 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct loop_info { +pub lo_number: crate::ctypes::c_int, +pub lo_device: __kernel_old_dev_t, +pub lo_inode: crate::ctypes::c_ulong, +pub lo_rdevice: __kernel_old_dev_t, +pub lo_offset: crate::ctypes::c_int, +pub lo_encrypt_type: crate::ctypes::c_int, +pub lo_encrypt_key_size: crate::ctypes::c_int, +pub lo_flags: crate::ctypes::c_int, +pub lo_name: [crate::ctypes::c_char; 64usize], +pub lo_encrypt_key: [crate::ctypes::c_uchar; 32usize], +pub lo_init: [crate::ctypes::c_ulong; 2usize], +pub reserved: [crate::ctypes::c_char; 4usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct loop_info64 { +pub lo_device: __u64, +pub lo_inode: __u64, +pub lo_rdevice: __u64, +pub lo_offset: __u64, +pub lo_sizelimit: __u64, +pub lo_number: __u32, +pub lo_encrypt_type: __u32, +pub lo_encrypt_key_size: __u32, +pub lo_flags: __u32, +pub lo_file_name: [__u8; 64usize], +pub lo_crypt_name: [__u8; 64usize], +pub lo_encrypt_key: [__u8; 32usize], +pub lo_init: [__u64; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct loop_config { +pub fd: __u32, +pub block_size: __u32, +pub info: loop_info64, +pub __reserved: [__u64; 8usize], +} +pub const LO_NAME_SIZE: u32 = 64; +pub const LO_KEY_SIZE: u32 = 32; +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const LO_CRYPT_NONE: u32 = 0; +pub const LO_CRYPT_XOR: u32 = 1; +pub const LO_CRYPT_DES: u32 = 2; +pub const LO_CRYPT_FISH2: u32 = 3; +pub const LO_CRYPT_BLOW: u32 = 4; +pub const LO_CRYPT_CAST128: u32 = 5; +pub const LO_CRYPT_IDEA: u32 = 6; +pub const LO_CRYPT_DUMMY: u32 = 9; +pub const LO_CRYPT_SKIPJACK: u32 = 10; +pub const LO_CRYPT_CRYPTOAPI: u32 = 18; +pub const MAX_LO_CRYPT: u32 = 20; +pub const LOOP_SET_FD: u32 = 19456; +pub const LOOP_CLR_FD: u32 = 19457; +pub const LOOP_SET_STATUS: u32 = 19458; +pub const LOOP_GET_STATUS: u32 = 19459; +pub const LOOP_SET_STATUS64: u32 = 19460; +pub const LOOP_GET_STATUS64: u32 = 19461; +pub const LOOP_CHANGE_FD: u32 = 19462; +pub const LOOP_SET_CAPACITY: u32 = 19463; +pub const LOOP_SET_DIRECT_IO: u32 = 19464; +pub const LOOP_SET_BLOCK_SIZE: u32 = 19465; +pub const LOOP_CONFIGURE: u32 = 19466; +pub const LOOP_CTL_ADD: u32 = 19584; +pub const LOOP_CTL_REMOVE: u32 = 19585; +pub const LOOP_CTL_GET_FREE: u32 = 19586; +pub const LO_FLAGS_READ_ONLY: _bindgen_ty_1 = _bindgen_ty_1::LO_FLAGS_READ_ONLY; +pub const LO_FLAGS_AUTOCLEAR: _bindgen_ty_1 = _bindgen_ty_1::LO_FLAGS_AUTOCLEAR; +pub const LO_FLAGS_PARTSCAN: _bindgen_ty_1 = _bindgen_ty_1::LO_FLAGS_PARTSCAN; +pub const LO_FLAGS_DIRECT_IO: _bindgen_ty_1 = _bindgen_ty_1::LO_FLAGS_DIRECT_IO; +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_1 { +LO_FLAGS_READ_ONLY = 1, +LO_FLAGS_AUTOCLEAR = 4, +LO_FLAGS_PARTSCAN = 8, +LO_FLAGS_DIRECT_IO = 16, +} diff --git a/src/hexagon/mempolicy.rs b/src/hexagon/mempolicy.rs new file mode 100644 index 00000000..a9fe500d --- /dev/null +++ b/src/hexagon/mempolicy.rs @@ -0,0 +1,175 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub const EPERM: u32 = 1; +pub const ENOENT: u32 = 2; +pub const ESRCH: u32 = 3; +pub const EINTR: u32 = 4; +pub const EIO: u32 = 5; +pub const ENXIO: u32 = 6; +pub const E2BIG: u32 = 7; +pub const ENOEXEC: u32 = 8; +pub const EBADF: u32 = 9; +pub const ECHILD: u32 = 10; +pub const EAGAIN: u32 = 11; +pub const ENOMEM: u32 = 12; +pub const EACCES: u32 = 13; +pub const EFAULT: u32 = 14; +pub const ENOTBLK: u32 = 15; +pub const EBUSY: u32 = 16; +pub const EEXIST: u32 = 17; +pub const EXDEV: u32 = 18; +pub const ENODEV: u32 = 19; +pub const ENOTDIR: u32 = 20; +pub const EISDIR: u32 = 21; +pub const EINVAL: u32 = 22; +pub const ENFILE: u32 = 23; +pub const EMFILE: u32 = 24; +pub const ENOTTY: u32 = 25; +pub const ETXTBSY: u32 = 26; +pub const EFBIG: u32 = 27; +pub const ENOSPC: u32 = 28; +pub const ESPIPE: u32 = 29; +pub const EROFS: u32 = 30; +pub const EMLINK: u32 = 31; +pub const EPIPE: u32 = 32; +pub const EDOM: u32 = 33; +pub const ERANGE: u32 = 34; +pub const EDEADLK: u32 = 35; +pub const ENAMETOOLONG: u32 = 36; +pub const ENOLCK: u32 = 37; +pub const ENOSYS: u32 = 38; +pub const ENOTEMPTY: u32 = 39; +pub const ELOOP: u32 = 40; +pub const EWOULDBLOCK: u32 = 11; +pub const ENOMSG: u32 = 42; +pub const EIDRM: u32 = 43; +pub const ECHRNG: u32 = 44; +pub const EL2NSYNC: u32 = 45; +pub const EL3HLT: u32 = 46; +pub const EL3RST: u32 = 47; +pub const ELNRNG: u32 = 48; +pub const EUNATCH: u32 = 49; +pub const ENOCSI: u32 = 50; +pub const EL2HLT: u32 = 51; +pub const EBADE: u32 = 52; +pub const EBADR: u32 = 53; +pub const EXFULL: u32 = 54; +pub const ENOANO: u32 = 55; +pub const EBADRQC: u32 = 56; +pub const EBADSLT: u32 = 57; +pub const EDEADLOCK: u32 = 35; +pub const EBFONT: u32 = 59; +pub const ENOSTR: u32 = 60; +pub const ENODATA: u32 = 61; +pub const ETIME: u32 = 62; +pub const ENOSR: u32 = 63; +pub const ENONET: u32 = 64; +pub const ENOPKG: u32 = 65; +pub const EREMOTE: u32 = 66; +pub const ENOLINK: u32 = 67; +pub const EADV: u32 = 68; +pub const ESRMNT: u32 = 69; +pub const ECOMM: u32 = 70; +pub const EPROTO: u32 = 71; +pub const EMULTIHOP: u32 = 72; +pub const EDOTDOT: u32 = 73; +pub const EBADMSG: u32 = 74; +pub const EOVERFLOW: u32 = 75; +pub const ENOTUNIQ: u32 = 76; +pub const EBADFD: u32 = 77; +pub const EREMCHG: u32 = 78; +pub const ELIBACC: u32 = 79; +pub const ELIBBAD: u32 = 80; +pub const ELIBSCN: u32 = 81; +pub const ELIBMAX: u32 = 82; +pub const ELIBEXEC: u32 = 83; +pub const EILSEQ: u32 = 84; +pub const ERESTART: u32 = 85; +pub const ESTRPIPE: u32 = 86; +pub const EUSERS: u32 = 87; +pub const ENOTSOCK: u32 = 88; +pub const EDESTADDRREQ: u32 = 89; +pub const EMSGSIZE: u32 = 90; +pub const EPROTOTYPE: u32 = 91; +pub const ENOPROTOOPT: u32 = 92; +pub const EPROTONOSUPPORT: u32 = 93; +pub const ESOCKTNOSUPPORT: u32 = 94; +pub const EOPNOTSUPP: u32 = 95; +pub const EPFNOSUPPORT: u32 = 96; +pub const EAFNOSUPPORT: u32 = 97; +pub const EADDRINUSE: u32 = 98; +pub const EADDRNOTAVAIL: u32 = 99; +pub const ENETDOWN: u32 = 100; +pub const ENETUNREACH: u32 = 101; +pub const ENETRESET: u32 = 102; +pub const ECONNABORTED: u32 = 103; +pub const ECONNRESET: u32 = 104; +pub const ENOBUFS: u32 = 105; +pub const EISCONN: u32 = 106; +pub const ENOTCONN: u32 = 107; +pub const ESHUTDOWN: u32 = 108; +pub const ETOOMANYREFS: u32 = 109; +pub const ETIMEDOUT: u32 = 110; +pub const ECONNREFUSED: u32 = 111; +pub const EHOSTDOWN: u32 = 112; +pub const EHOSTUNREACH: u32 = 113; +pub const EALREADY: u32 = 114; +pub const EINPROGRESS: u32 = 115; +pub const ESTALE: u32 = 116; +pub const EUCLEAN: u32 = 117; +pub const ENOTNAM: u32 = 118; +pub const ENAVAIL: u32 = 119; +pub const EISNAM: u32 = 120; +pub const EREMOTEIO: u32 = 121; +pub const EDQUOT: u32 = 122; +pub const ENOMEDIUM: u32 = 123; +pub const EMEDIUMTYPE: u32 = 124; +pub const ECANCELED: u32 = 125; +pub const ENOKEY: u32 = 126; +pub const EKEYEXPIRED: u32 = 127; +pub const EKEYREVOKED: u32 = 128; +pub const EKEYREJECTED: u32 = 129; +pub const EOWNERDEAD: u32 = 130; +pub const ENOTRECOVERABLE: u32 = 131; +pub const ERFKILL: u32 = 132; +pub const EHWPOISON: u32 = 133; +pub const MPOL_F_STATIC_NODES: u32 = 32768; +pub const MPOL_F_RELATIVE_NODES: u32 = 16384; +pub const MPOL_F_NUMA_BALANCING: u32 = 8192; +pub const MPOL_MODE_FLAGS: u32 = 57344; +pub const MPOL_F_NODE: u32 = 1; +pub const MPOL_F_ADDR: u32 = 2; +pub const MPOL_F_MEMS_ALLOWED: u32 = 4; +pub const MPOL_MF_STRICT: u32 = 1; +pub const MPOL_MF_MOVE: u32 = 2; +pub const MPOL_MF_MOVE_ALL: u32 = 4; +pub const MPOL_MF_LAZY: u32 = 8; +pub const MPOL_MF_INTERNAL: u32 = 16; +pub const MPOL_MF_VALID: u32 = 7; +pub const MPOL_F_SHARED: u32 = 1; +pub const MPOL_F_MOF: u32 = 8; +pub const MPOL_F_MORON: u32 = 16; +pub const RECLAIM_ZONE: u32 = 1; +pub const RECLAIM_WRITE: u32 = 2; +pub const RECLAIM_UNMAP: u32 = 4; +pub const MPOL_DEFAULT: _bindgen_ty_1 = _bindgen_ty_1::MPOL_DEFAULT; +pub const MPOL_PREFERRED: _bindgen_ty_1 = _bindgen_ty_1::MPOL_PREFERRED; +pub const MPOL_BIND: _bindgen_ty_1 = _bindgen_ty_1::MPOL_BIND; +pub const MPOL_INTERLEAVE: _bindgen_ty_1 = _bindgen_ty_1::MPOL_INTERLEAVE; +pub const MPOL_LOCAL: _bindgen_ty_1 = _bindgen_ty_1::MPOL_LOCAL; +pub const MPOL_PREFERRED_MANY: _bindgen_ty_1 = _bindgen_ty_1::MPOL_PREFERRED_MANY; +pub const MPOL_WEIGHTED_INTERLEAVE: _bindgen_ty_1 = _bindgen_ty_1::MPOL_WEIGHTED_INTERLEAVE; +pub const MPOL_MAX: _bindgen_ty_1 = _bindgen_ty_1::MPOL_MAX; +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_1 { +MPOL_DEFAULT = 0, +MPOL_PREFERRED = 1, +MPOL_BIND = 2, +MPOL_INTERLEAVE = 3, +MPOL_LOCAL = 4, +MPOL_PREFERRED_MANY = 5, +MPOL_WEIGHTED_INTERLEAVE = 6, +MPOL_MAX = 7, +} diff --git a/src/hexagon/net.rs b/src/hexagon/net.rs new file mode 100644 index 00000000..f4db6751 --- /dev/null +++ b/src/hexagon/net.rs @@ -0,0 +1,3487 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +pub type __kernel_sa_family_t = crate::ctypes::c_ushort; +pub type socklen_t = crate::ctypes::c_uint; +#[repr(C)] +#[derive(Copy, Clone, Debug, Default, Eq, Hash, Ord, PartialEq, PartialOrd)] +pub struct __BindgenBitfieldUnit { +storage: Storage, +} +#[repr(C)] +#[derive(Default)] +pub struct __IncompleteArrayField(::core::marker::PhantomData, [T; 0]); +#[repr(C)] +pub struct __BindgenUnionField(::core::marker::PhantomData); +#[repr(C)] +#[derive(Copy, Clone)] +pub struct __kernel_sockaddr_storage { +pub __bindgen_anon_1: __kernel_sockaddr_storage__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1 { +pub ss_family: __kernel_sa_family_t, +pub __data: [crate::ctypes::c_char; 126usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct in_addr { +pub s_addr: __be32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ip_mreq { +pub imr_multiaddr: in_addr, +pub imr_interface: in_addr, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ip_mreqn { +pub imr_multiaddr: in_addr, +pub imr_address: in_addr, +pub imr_ifindex: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ip_mreq_source { +pub imr_multiaddr: __be32, +pub imr_interface: __be32, +pub imr_sourceaddr: __be32, +} +#[repr(C)] +pub struct ip_msfilter { +pub imsf_multiaddr: __be32, +pub imsf_interface: __be32, +pub imsf_fmode: __u32, +pub imsf_numsrc: __u32, +pub __bindgen_anon_1: ip_msfilter__bindgen_ty_1, +} +#[repr(C)] +pub struct ip_msfilter__bindgen_ty_1 { +pub imsf_slist: __BindgenUnionField<[__be32; 1usize]>, +pub __bindgen_anon_1: __BindgenUnionField, +pub bindgen_union_field: u32, +} +#[repr(C)] +#[derive(Debug)] +pub struct ip_msfilter__bindgen_ty_1__bindgen_ty_1 { +pub __empty_imsf_slist_flex: ip_msfilter__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1, +pub imsf_slist_flex: __IncompleteArrayField<__be32>, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ip_msfilter__bindgen_ty_1__bindgen_ty_1__bindgen_ty_1 {} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct group_req { +pub gr_interface: __u32, +pub gr_group: __kernel_sockaddr_storage, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct group_source_req { +pub gsr_interface: __u32, +pub gsr_group: __kernel_sockaddr_storage, +pub gsr_source: __kernel_sockaddr_storage, +} +#[repr(C)] +pub struct group_filter { +pub __bindgen_anon_1: group_filter__bindgen_ty_1, +} +#[repr(C)] +pub struct group_filter__bindgen_ty_1 { +pub __bindgen_anon_1: __BindgenUnionField, +pub __bindgen_anon_2: __BindgenUnionField, +pub bindgen_union_field: [u32; 67usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct group_filter__bindgen_ty_1__bindgen_ty_1 { +pub gf_interface_aux: __u32, +pub gf_group_aux: __kernel_sockaddr_storage, +pub gf_fmode_aux: __u32, +pub gf_numsrc_aux: __u32, +pub gf_slist: [__kernel_sockaddr_storage; 1usize], +} +#[repr(C)] +pub struct group_filter__bindgen_ty_1__bindgen_ty_2 { +pub gf_interface: __u32, +pub gf_group: __kernel_sockaddr_storage, +pub gf_fmode: __u32, +pub gf_numsrc: __u32, +pub gf_slist_flex: __IncompleteArrayField<__kernel_sockaddr_storage>, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct in_pktinfo { +pub ipi_ifindex: crate::ctypes::c_int, +pub ipi_spec_dst: in_addr, +pub ipi_addr: in_addr, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_in { +pub sin_family: __kernel_sa_family_t, +pub sin_port: __be16, +pub sin_addr: in_addr, +pub __pad: [crate::ctypes::c_uchar; 8usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct iphdr { +pub _bitfield_align_1: [u8; 0], +pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, +pub tos: __u8, +pub tot_len: __be16, +pub id: __be16, +pub frag_off: __be16, +pub ttl: __u8, +pub protocol: __u8, +pub check: __sum16, +pub __bindgen_anon_1: iphdr__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct iphdr__bindgen_ty_1__bindgen_ty_1 { +pub saddr: __be32, +pub daddr: __be32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct iphdr__bindgen_ty_1__bindgen_ty_2 { +pub saddr: __be32, +pub daddr: __be32, +} +#[repr(C)] +#[derive(Debug)] +pub struct ip_auth_hdr { +pub nexthdr: __u8, +pub hdrlen: __u8, +pub reserved: __be16, +pub spi: __be32, +pub seq_no: __be32, +pub auth_data: __IncompleteArrayField<__u8>, +} +#[repr(C)] +#[derive(Debug)] +pub struct ip_esp_hdr { +pub spi: __be32, +pub seq_no: __be32, +pub enc_data: __IncompleteArrayField<__u8>, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ip_comp_hdr { +pub nexthdr: __u8, +pub flags: __u8, +pub cpi: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ip_beet_phdr { +pub nexthdr: __u8, +pub hdrlen: __u8, +pub padlen: __u8, +pub reserved: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ip_iptfs_hdr { +pub subtype: __u8, +pub flags: __u8, +pub block_offset: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ip_iptfs_cc_hdr { +pub subtype: __u8, +pub flags: __u8, +pub block_offset: __be16, +pub loss_rate: __be32, +pub rtt_adelay_xdelay: __be64, +pub tval: __be32, +pub techo: __be32, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct in6_addr { +pub in6_u: in6_addr__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct sockaddr_in6 { +pub sin6_family: crate::ctypes::c_ushort, +pub sin6_port: __be16, +pub sin6_flowinfo: __be32, +pub sin6_addr: in6_addr, +pub sin6_scope_id: __u32, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ipv6_mreq { +pub ipv6mr_multiaddr: in6_addr, +pub ipv6mr_ifindex: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct in6_flowlabel_req { +pub flr_dst: in6_addr, +pub flr_label: __be32, +pub flr_action: __u8, +pub flr_share: __u8, +pub flr_flags: __u16, +pub flr_expires: __u16, +pub flr_linger: __u16, +pub __flr_pad: __u32, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct in6_pktinfo { +pub ipi6_addr: in6_addr, +pub ipi6_ifindex: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ip6_mtuinfo { +pub ip6m_addr: sockaddr_in6, +pub ip6m_mtu: __u32, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct in6_ifreq { +pub ifr6_addr: in6_addr, +pub ifr6_prefixlen: __u32, +pub ifr6_ifindex: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ipv6_rt_hdr { +pub nexthdr: __u8, +pub hdrlen: __u8, +pub type_: __u8, +pub segments_left: __u8, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct ipv6_opt_hdr { +pub nexthdr: __u8, +pub hdrlen: __u8, +} +#[repr(C)] +pub struct rt0_hdr { +pub rt_hdr: ipv6_rt_hdr, +pub reserved: __u32, +pub addr: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct rt2_hdr { +pub rt_hdr: ipv6_rt_hdr, +pub reserved: __u32, +pub addr: in6_addr, +} +#[repr(C, packed)] +#[derive(Copy, Clone)] +pub struct ipv6_destopt_hao { +pub type_: __u8, +pub length: __u8, +pub addr: in6_addr, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ipv6hdr { +pub _bitfield_align_1: [u8; 0], +pub _bitfield_1: __BindgenBitfieldUnit<[u8; 1usize]>, +pub flow_lbl: [__u8; 3usize], +pub payload_len: __be16, +pub nexthdr: __u8, +pub hop_limit: __u8, +pub __bindgen_anon_1: ipv6hdr__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ipv6hdr__bindgen_ty_1__bindgen_ty_1 { +pub saddr: in6_addr, +pub daddr: in6_addr, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ipv6hdr__bindgen_ty_1__bindgen_ty_2 { +pub saddr: in6_addr, +pub daddr: in6_addr, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tcphdr { +pub source: __be16, +pub dest: __be16, +pub seq: __be32, +pub ack_seq: __be32, +pub _bitfield_align_1: [u8; 0], +pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>, +pub window: __be16, +pub check: __sum16, +pub urg_ptr: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tcp_repair_opt { +pub opt_code: __u32, +pub opt_val: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tcp_repair_window { +pub snd_wl1: __u32, +pub snd_wnd: __u32, +pub max_window: __u32, +pub rcv_wnd: __u32, +pub rcv_wup: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tcp_info { +pub tcpi_state: __u8, +pub tcpi_ca_state: __u8, +pub tcpi_retransmits: __u8, +pub tcpi_probes: __u8, +pub tcpi_backoff: __u8, +pub tcpi_options: __u8, +pub _bitfield_align_1: [u8; 0], +pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>, +pub tcpi_rto: __u32, +pub tcpi_ato: __u32, +pub tcpi_snd_mss: __u32, +pub tcpi_rcv_mss: __u32, +pub tcpi_unacked: __u32, +pub tcpi_sacked: __u32, +pub tcpi_lost: __u32, +pub tcpi_retrans: __u32, +pub tcpi_fackets: __u32, +pub tcpi_last_data_sent: __u32, +pub tcpi_last_ack_sent: __u32, +pub tcpi_last_data_recv: __u32, +pub tcpi_last_ack_recv: __u32, +pub tcpi_pmtu: __u32, +pub tcpi_rcv_ssthresh: __u32, +pub tcpi_rtt: __u32, +pub tcpi_rttvar: __u32, +pub tcpi_snd_ssthresh: __u32, +pub tcpi_snd_cwnd: __u32, +pub tcpi_advmss: __u32, +pub tcpi_reordering: __u32, +pub tcpi_rcv_rtt: __u32, +pub tcpi_rcv_space: __u32, +pub tcpi_total_retrans: __u32, +pub tcpi_pacing_rate: __u64, +pub tcpi_max_pacing_rate: __u64, +pub tcpi_bytes_acked: __u64, +pub tcpi_bytes_received: __u64, +pub tcpi_segs_out: __u32, +pub tcpi_segs_in: __u32, +pub tcpi_notsent_bytes: __u32, +pub tcpi_min_rtt: __u32, +pub tcpi_data_segs_in: __u32, +pub tcpi_data_segs_out: __u32, +pub tcpi_delivery_rate: __u64, +pub tcpi_busy_time: __u64, +pub tcpi_rwnd_limited: __u64, +pub tcpi_sndbuf_limited: __u64, +pub tcpi_delivered: __u32, +pub tcpi_delivered_ce: __u32, +pub tcpi_bytes_sent: __u64, +pub tcpi_bytes_retrans: __u64, +pub tcpi_dsack_dups: __u32, +pub tcpi_reord_seen: __u32, +pub tcpi_rcv_ooopack: __u32, +pub tcpi_snd_wnd: __u32, +pub tcpi_rcv_wnd: __u32, +pub tcpi_rehash: __u32, +pub tcpi_total_rto: __u16, +pub tcpi_total_rto_recoveries: __u16, +pub tcpi_total_rto_time: __u32, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tcp_md5sig { +pub tcpm_addr: __kernel_sockaddr_storage, +pub tcpm_flags: __u8, +pub tcpm_prefixlen: __u8, +pub tcpm_keylen: __u16, +pub tcpm_ifindex: crate::ctypes::c_int, +pub tcpm_key: [__u8; 80usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tcp_diag_md5sig { +pub tcpm_family: __u8, +pub tcpm_prefixlen: __u8, +pub tcpm_keylen: __u16, +pub tcpm_addr: [__be32; 4usize], +pub tcpm_key: [__u8; 80usize], +} +#[repr(C)] +#[repr(align(8))] +#[derive(Copy, Clone)] +pub struct tcp_ao_add { +pub addr: __kernel_sockaddr_storage, +pub alg_name: [crate::ctypes::c_char; 64usize], +pub ifindex: __s32, +pub _bitfield_align_1: [u32; 0], +pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, +pub reserved2: __u16, +pub prefix: __u8, +pub sndid: __u8, +pub rcvid: __u8, +pub maclen: __u8, +pub keyflags: __u8, +pub keylen: __u8, +pub key: [__u8; 80usize], +} +#[repr(C)] +#[repr(align(8))] +#[derive(Copy, Clone)] +pub struct tcp_ao_del { +pub addr: __kernel_sockaddr_storage, +pub ifindex: __s32, +pub _bitfield_align_1: [u32; 0], +pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, +pub reserved2: __u16, +pub prefix: __u8, +pub sndid: __u8, +pub rcvid: __u8, +pub current_key: __u8, +pub rnext: __u8, +pub keyflags: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tcp_ao_info_opt { +pub _bitfield_align_1: [u32; 0], +pub _bitfield_1: __BindgenBitfieldUnit<[u8; 4usize]>, +pub reserved2: __u16, +pub current_key: __u8, +pub rnext: __u8, +pub pkt_good: __u64, +pub pkt_bad: __u64, +pub pkt_key_not_found: __u64, +pub pkt_ao_required: __u64, +pub pkt_dropped_icmp: __u64, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct tcp_ao_getsockopt { +pub addr: __kernel_sockaddr_storage, +pub alg_name: [crate::ctypes::c_char; 64usize], +pub key: [__u8; 80usize], +pub nkeys: __u32, +pub _bitfield_align_1: [u16; 0], +pub _bitfield_1: __BindgenBitfieldUnit<[u8; 2usize]>, +pub sndid: __u8, +pub rcvid: __u8, +pub prefix: __u8, +pub maclen: __u8, +pub keyflags: __u8, +pub keylen: __u8, +pub ifindex: __s32, +pub pkt_good: __u64, +pub pkt_bad: __u64, +} +#[repr(C)] +#[repr(align(8))] +#[derive(Debug, Copy, Clone)] +pub struct tcp_ao_repair { +pub snt_isn: __be32, +pub rcv_isn: __be32, +pub snd_sne: __u32, +pub rcv_sne: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tcp_zerocopy_receive { +pub address: __u64, +pub length: __u32, +pub recv_skip_hint: __u32, +pub inq: __u32, +pub err: __s32, +pub copybuf_address: __u64, +pub copybuf_len: __s32, +pub flags: __u32, +pub msg_control: __u64, +pub msg_controllen: __u64, +pub msg_flags: __u32, +pub reserved: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_un { +pub sun_family: __kernel_sa_family_t, +pub sun_path: [crate::ctypes::c_char; 108usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct sockaddr { +pub __storage: __kernel_sockaddr_storage, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sync_serial_settings { +pub clock_rate: crate::ctypes::c_uint, +pub clock_type: crate::ctypes::c_uint, +pub loopback: crate::ctypes::c_ushort, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct te1_settings { +pub clock_rate: crate::ctypes::c_uint, +pub clock_type: crate::ctypes::c_uint, +pub loopback: crate::ctypes::c_ushort, +pub slot_map: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct raw_hdlc_proto { +pub encoding: crate::ctypes::c_ushort, +pub parity: crate::ctypes::c_ushort, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fr_proto { +pub t391: crate::ctypes::c_uint, +pub t392: crate::ctypes::c_uint, +pub n391: crate::ctypes::c_uint, +pub n392: crate::ctypes::c_uint, +pub n393: crate::ctypes::c_uint, +pub lmi: crate::ctypes::c_ushort, +pub dce: crate::ctypes::c_ushort, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fr_proto_pvc { +pub dlci: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct fr_proto_pvc_info { +pub dlci: crate::ctypes::c_uint, +pub master: [crate::ctypes::c_char; 16usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct cisco_proto { +pub interval: crate::ctypes::c_uint, +pub timeout: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct x25_hdlc_proto { +pub dce: crate::ctypes::c_ushort, +pub modulo: crate::ctypes::c_uint, +pub window: crate::ctypes::c_uint, +pub t1: crate::ctypes::c_uint, +pub t2: crate::ctypes::c_uint, +pub n2: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifmap { +pub mem_start: crate::ctypes::c_ulong, +pub mem_end: crate::ctypes::c_ulong, +pub base_addr: crate::ctypes::c_ushort, +pub irq: crate::ctypes::c_uchar, +pub dma: crate::ctypes::c_uchar, +pub port: crate::ctypes::c_uchar, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct if_settings { +pub type_: crate::ctypes::c_uint, +pub size: crate::ctypes::c_uint, +pub ifs_ifsu: if_settings__bindgen_ty_1, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ifreq { +pub ifr_ifrn: ifreq__bindgen_ty_1, +pub ifr_ifru: ifreq__bindgen_ty_2, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ifconf { +pub ifc_len: crate::ctypes::c_int, +pub ifc_ifcu: ifconf__bindgen_ty_1, +} +#[repr(C)] +pub struct xt_entry_match { +pub u: xt_entry_match__bindgen_ty_1, +pub data: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xt_entry_match__bindgen_ty_1__bindgen_ty_1 { +pub match_size: __u16, +pub name: [crate::ctypes::c_char; 29usize], +pub revision: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xt_entry_match__bindgen_ty_1__bindgen_ty_2 { +pub match_size: __u16, +pub match_: *mut xt_match, +} +#[repr(C)] +pub struct xt_entry_target { +pub u: xt_entry_target__bindgen_ty_1, +pub data: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xt_entry_target__bindgen_ty_1__bindgen_ty_1 { +pub target_size: __u16, +pub name: [crate::ctypes::c_char; 29usize], +pub revision: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xt_entry_target__bindgen_ty_1__bindgen_ty_2 { +pub target_size: __u16, +pub target: *mut xt_target, +} +#[repr(C)] +pub struct xt_standard_target { +pub target: xt_entry_target, +pub verdict: crate::ctypes::c_int, +} +#[repr(C)] +pub struct xt_error_target { +pub target: xt_entry_target, +pub errorname: [crate::ctypes::c_char; 30usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xt_get_revision { +pub name: [crate::ctypes::c_char; 29usize], +pub revision: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct _xt_align { +pub u8_: __u8, +pub u16_: __u16, +pub u32_: __u32, +pub u64_: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xt_counters { +pub pcnt: __u64, +pub bcnt: __u64, +} +#[repr(C)] +#[derive(Debug)] +pub struct xt_counters_info { +pub name: [crate::ctypes::c_char; 32usize], +pub num_counters: crate::ctypes::c_uint, +pub counters: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xt_tcp { +pub spts: [__u16; 2usize], +pub dpts: [__u16; 2usize], +pub option: __u8, +pub flg_mask: __u8, +pub flg_cmp: __u8, +pub invflags: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xt_udp { +pub spts: [__u16; 2usize], +pub dpts: [__u16; 2usize], +pub invflags: __u8, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ip6t_ip6 { +pub src: in6_addr, +pub dst: in6_addr, +pub smsk: in6_addr, +pub dmsk: in6_addr, +pub iniface: [crate::ctypes::c_char; 16usize], +pub outiface: [crate::ctypes::c_char; 16usize], +pub iniface_mask: [crate::ctypes::c_uchar; 16usize], +pub outiface_mask: [crate::ctypes::c_uchar; 16usize], +pub proto: __u16, +pub tos: __u8, +pub flags: __u8, +pub invflags: __u8, +} +#[repr(C)] +pub struct ip6t_entry { +pub ipv6: ip6t_ip6, +pub nfcache: crate::ctypes::c_uint, +pub target_offset: __u16, +pub next_offset: __u16, +pub comefrom: crate::ctypes::c_uint, +pub counters: xt_counters, +pub elems: __IncompleteArrayField, +} +#[repr(C)] +pub struct ip6t_standard { +pub entry: ip6t_entry, +pub target: xt_standard_target, +} +#[repr(C)] +pub struct ip6t_error { +pub entry: ip6t_entry, +pub target: xt_error_target, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ip6t_icmp { +pub type_: __u8, +pub code: [__u8; 2usize], +pub invflags: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ip6t_getinfo { +pub name: [crate::ctypes::c_char; 32usize], +pub valid_hooks: crate::ctypes::c_uint, +pub hook_entry: [crate::ctypes::c_uint; 5usize], +pub underflow: [crate::ctypes::c_uint; 5usize], +pub num_entries: crate::ctypes::c_uint, +pub size: crate::ctypes::c_uint, +} +#[repr(C)] +pub struct ip6t_replace { +pub name: [crate::ctypes::c_char; 32usize], +pub valid_hooks: crate::ctypes::c_uint, +pub num_entries: crate::ctypes::c_uint, +pub size: crate::ctypes::c_uint, +pub hook_entry: [crate::ctypes::c_uint; 5usize], +pub underflow: [crate::ctypes::c_uint; 5usize], +pub num_counters: crate::ctypes::c_uint, +pub counters: *mut xt_counters, +pub entries: __IncompleteArrayField, +} +#[repr(C)] +pub struct ip6t_get_entries { +pub name: [crate::ctypes::c_char; 32usize], +pub size: crate::ctypes::c_uint, +pub entrytable: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct so_timestamping { +pub flags: crate::ctypes::c_int, +pub bind_phc: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct hwtstamp_config { +pub flags: crate::ctypes::c_int, +pub tx_type: crate::ctypes::c_int, +pub rx_filter: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct scm_ts_pktinfo { +pub if_index: __u32, +pub pkt_length: __u32, +pub reserved: [__u32; 2usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sock_txtime { +pub clockid: __kernel_clockid_t, +pub flags: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct linger { +pub l_onoff: crate::ctypes::c_int, +pub l_linger: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct msghdr { +pub msg_name: *mut crate::ctypes::c_void, +pub msg_namelen: crate::ctypes::c_int, +pub msg_iov: *mut iovec, +pub msg_iovlen: usize, +pub msg_control: *mut crate::ctypes::c_void, +pub msg_controllen: usize, +pub msg_flags: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct cmsghdr { +pub cmsg_len: usize, +pub cmsg_level: crate::ctypes::c_int, +pub cmsg_type: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ucred { +pub pid: __u32, +pub uid: __u32, +pub gid: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct mmsghdr { +pub msg_hdr: msghdr, +pub msg_len: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xt_match { +pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xt_target { +pub _address: u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct iovec { +pub _address: u8, +} +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const _K_SS_MAXSIZE: u32 = 128; +pub const SOCK_SNDBUF_LOCK: u32 = 1; +pub const SOCK_RCVBUF_LOCK: u32 = 2; +pub const SOCK_BUF_LOCK_MASK: u32 = 3; +pub const SOCK_TXREHASH_DEFAULT: u32 = 255; +pub const SOCK_TXREHASH_DISABLED: u32 = 0; +pub const SOCK_TXREHASH_ENABLED: u32 = 1; +pub const IP_TOS: u32 = 1; +pub const IP_TTL: u32 = 2; +pub const IP_HDRINCL: u32 = 3; +pub const IP_OPTIONS: u32 = 4; +pub const IP_ROUTER_ALERT: u32 = 5; +pub const IP_RECVOPTS: u32 = 6; +pub const IP_RETOPTS: u32 = 7; +pub const IP_PKTINFO: u32 = 8; +pub const IP_PKTOPTIONS: u32 = 9; +pub const IP_MTU_DISCOVER: u32 = 10; +pub const IP_RECVERR: u32 = 11; +pub const IP_RECVTTL: u32 = 12; +pub const IP_RECVTOS: u32 = 13; +pub const IP_MTU: u32 = 14; +pub const IP_FREEBIND: u32 = 15; +pub const IP_IPSEC_POLICY: u32 = 16; +pub const IP_XFRM_POLICY: u32 = 17; +pub const IP_PASSSEC: u32 = 18; +pub const IP_TRANSPARENT: u32 = 19; +pub const IP_RECVRETOPTS: u32 = 7; +pub const IP_ORIGDSTADDR: u32 = 20; +pub const IP_RECVORIGDSTADDR: u32 = 20; +pub const IP_MINTTL: u32 = 21; +pub const IP_NODEFRAG: u32 = 22; +pub const IP_CHECKSUM: u32 = 23; +pub const IP_BIND_ADDRESS_NO_PORT: u32 = 24; +pub const IP_RECVFRAGSIZE: u32 = 25; +pub const IP_RECVERR_RFC4884: u32 = 26; +pub const IP_PMTUDISC_DONT: u32 = 0; +pub const IP_PMTUDISC_WANT: u32 = 1; +pub const IP_PMTUDISC_DO: u32 = 2; +pub const IP_PMTUDISC_PROBE: u32 = 3; +pub const IP_PMTUDISC_INTERFACE: u32 = 4; +pub const IP_PMTUDISC_OMIT: u32 = 5; +pub const IP_MULTICAST_IF: u32 = 32; +pub const IP_MULTICAST_TTL: u32 = 33; +pub const IP_MULTICAST_LOOP: u32 = 34; +pub const IP_ADD_MEMBERSHIP: u32 = 35; +pub const IP_DROP_MEMBERSHIP: u32 = 36; +pub const IP_UNBLOCK_SOURCE: u32 = 37; +pub const IP_BLOCK_SOURCE: u32 = 38; +pub const IP_ADD_SOURCE_MEMBERSHIP: u32 = 39; +pub const IP_DROP_SOURCE_MEMBERSHIP: u32 = 40; +pub const IP_MSFILTER: u32 = 41; +pub const MCAST_JOIN_GROUP: u32 = 42; +pub const MCAST_BLOCK_SOURCE: u32 = 43; +pub const MCAST_UNBLOCK_SOURCE: u32 = 44; +pub const MCAST_LEAVE_GROUP: u32 = 45; +pub const MCAST_JOIN_SOURCE_GROUP: u32 = 46; +pub const MCAST_LEAVE_SOURCE_GROUP: u32 = 47; +pub const MCAST_MSFILTER: u32 = 48; +pub const IP_MULTICAST_ALL: u32 = 49; +pub const IP_UNICAST_IF: u32 = 50; +pub const IP_LOCAL_PORT_RANGE: u32 = 51; +pub const IP_PROTOCOL: u32 = 52; +pub const MCAST_EXCLUDE: u32 = 0; +pub const MCAST_INCLUDE: u32 = 1; +pub const IP_DEFAULT_MULTICAST_TTL: u32 = 1; +pub const IP_DEFAULT_MULTICAST_LOOP: u32 = 1; +pub const __SOCK_SIZE__: u32 = 16; +pub const IN_CLASSA_NET: u32 = 4278190080; +pub const IN_CLASSA_NSHIFT: u32 = 24; +pub const IN_CLASSA_HOST: u32 = 16777215; +pub const IN_CLASSA_MAX: u32 = 128; +pub const IN_CLASSB_NET: u32 = 4294901760; +pub const IN_CLASSB_NSHIFT: u32 = 16; +pub const IN_CLASSB_HOST: u32 = 65535; +pub const IN_CLASSB_MAX: u32 = 65536; +pub const IN_CLASSC_NET: u32 = 4294967040; +pub const IN_CLASSC_NSHIFT: u32 = 8; +pub const IN_CLASSC_HOST: u32 = 255; +pub const IN_MULTICAST_NET: u32 = 3758096384; +pub const IN_CLASSE_NET: u32 = 4294967295; +pub const IN_CLASSE_NSHIFT: u32 = 0; +pub const IN_LOOPBACKNET: u32 = 127; +pub const INADDR_LOOPBACK: u32 = 2130706433; +pub const INADDR_UNSPEC_GROUP: u32 = 3758096384; +pub const INADDR_ALLHOSTS_GROUP: u32 = 3758096385; +pub const INADDR_ALLRTRS_GROUP: u32 = 3758096386; +pub const INADDR_ALLSNOOPERS_GROUP: u32 = 3758096490; +pub const INADDR_MAX_LOCAL_GROUP: u32 = 3758096639; +pub const __LITTLE_ENDIAN: u32 = 1234; +pub const IPTOS_TOS_MASK: u32 = 30; +pub const IPTOS_LOWDELAY: u32 = 16; +pub const IPTOS_THROUGHPUT: u32 = 8; +pub const IPTOS_RELIABILITY: u32 = 4; +pub const IPTOS_MINCOST: u32 = 2; +pub const IPTOS_PREC_MASK: u32 = 224; +pub const IPTOS_PREC_NETCONTROL: u32 = 224; +pub const IPTOS_PREC_INTERNETCONTROL: u32 = 192; +pub const IPTOS_PREC_CRITIC_ECP: u32 = 160; +pub const IPTOS_PREC_FLASHOVERRIDE: u32 = 128; +pub const IPTOS_PREC_FLASH: u32 = 96; +pub const IPTOS_PREC_IMMEDIATE: u32 = 64; +pub const IPTOS_PREC_PRIORITY: u32 = 32; +pub const IPTOS_PREC_ROUTINE: u32 = 0; +pub const IPOPT_COPY: u32 = 128; +pub const IPOPT_CLASS_MASK: u32 = 96; +pub const IPOPT_NUMBER_MASK: u32 = 31; +pub const IPOPT_CONTROL: u32 = 0; +pub const IPOPT_RESERVED1: u32 = 32; +pub const IPOPT_MEASUREMENT: u32 = 64; +pub const IPOPT_RESERVED2: u32 = 96; +pub const IPOPT_END: u32 = 0; +pub const IPOPT_NOOP: u32 = 1; +pub const IPOPT_SEC: u32 = 130; +pub const IPOPT_LSRR: u32 = 131; +pub const IPOPT_TIMESTAMP: u32 = 68; +pub const IPOPT_CIPSO: u32 = 134; +pub const IPOPT_RR: u32 = 7; +pub const IPOPT_SID: u32 = 136; +pub const IPOPT_SSRR: u32 = 137; +pub const IPOPT_RA: u32 = 148; +pub const IPVERSION: u32 = 4; +pub const MAXTTL: u32 = 255; +pub const IPDEFTTL: u32 = 64; +pub const IPOPT_OPTVAL: u32 = 0; +pub const IPOPT_OLEN: u32 = 1; +pub const IPOPT_OFFSET: u32 = 2; +pub const IPOPT_MINOFF: u32 = 4; +pub const MAX_IPOPTLEN: u32 = 40; +pub const IPOPT_NOP: u32 = 1; +pub const IPOPT_EOL: u32 = 0; +pub const IPOPT_TS: u32 = 68; +pub const IPOPT_TS_TSONLY: u32 = 0; +pub const IPOPT_TS_TSANDADDR: u32 = 1; +pub const IPOPT_TS_PRESPEC: u32 = 3; +pub const IPV4_BEET_PHMAXLEN: u32 = 8; +pub const IPV6_FL_A_GET: u32 = 0; +pub const IPV6_FL_A_PUT: u32 = 1; +pub const IPV6_FL_A_RENEW: u32 = 2; +pub const IPV6_FL_F_CREATE: u32 = 1; +pub const IPV6_FL_F_EXCL: u32 = 2; +pub const IPV6_FL_F_REFLECT: u32 = 4; +pub const IPV6_FL_F_REMOTE: u32 = 8; +pub const IPV6_FL_S_NONE: u32 = 0; +pub const IPV6_FL_S_EXCL: u32 = 1; +pub const IPV6_FL_S_PROCESS: u32 = 2; +pub const IPV6_FL_S_USER: u32 = 3; +pub const IPV6_FL_S_ANY: u32 = 255; +pub const IPV6_FLOWINFO_FLOWLABEL: u32 = 1048575; +pub const IPV6_FLOWINFO_PRIORITY: u32 = 267386880; +pub const IPV6_PRIORITY_UNCHARACTERIZED: u32 = 0; +pub const IPV6_PRIORITY_FILLER: u32 = 256; +pub const IPV6_PRIORITY_UNATTENDED: u32 = 512; +pub const IPV6_PRIORITY_RESERVED1: u32 = 768; +pub const IPV6_PRIORITY_BULK: u32 = 1024; +pub const IPV6_PRIORITY_RESERVED2: u32 = 1280; +pub const IPV6_PRIORITY_INTERACTIVE: u32 = 1536; +pub const IPV6_PRIORITY_CONTROL: u32 = 1792; +pub const IPV6_PRIORITY_8: u32 = 2048; +pub const IPV6_PRIORITY_9: u32 = 2304; +pub const IPV6_PRIORITY_10: u32 = 2560; +pub const IPV6_PRIORITY_11: u32 = 2816; +pub const IPV6_PRIORITY_12: u32 = 3072; +pub const IPV6_PRIORITY_13: u32 = 3328; +pub const IPV6_PRIORITY_14: u32 = 3584; +pub const IPV6_PRIORITY_15: u32 = 3840; +pub const IPPROTO_HOPOPTS: u32 = 0; +pub const IPPROTO_ROUTING: u32 = 43; +pub const IPPROTO_FRAGMENT: u32 = 44; +pub const IPPROTO_ICMPV6: u32 = 58; +pub const IPPROTO_NONE: u32 = 59; +pub const IPPROTO_DSTOPTS: u32 = 60; +pub const IPPROTO_MH: u32 = 135; +pub const IPV6_TLV_PAD1: u32 = 0; +pub const IPV6_TLV_PADN: u32 = 1; +pub const IPV6_TLV_ROUTERALERT: u32 = 5; +pub const IPV6_TLV_CALIPSO: u32 = 7; +pub const IPV6_TLV_IOAM: u32 = 49; +pub const IPV6_TLV_JUMBO: u32 = 194; +pub const IPV6_TLV_HAO: u32 = 201; +pub const IPV6_ADDRFORM: u32 = 1; +pub const IPV6_2292PKTINFO: u32 = 2; +pub const IPV6_2292HOPOPTS: u32 = 3; +pub const IPV6_2292DSTOPTS: u32 = 4; +pub const IPV6_2292RTHDR: u32 = 5; +pub const IPV6_2292PKTOPTIONS: u32 = 6; +pub const IPV6_CHECKSUM: u32 = 7; +pub const IPV6_2292HOPLIMIT: u32 = 8; +pub const IPV6_NEXTHOP: u32 = 9; +pub const IPV6_AUTHHDR: u32 = 10; +pub const IPV6_FLOWINFO: u32 = 11; +pub const IPV6_UNICAST_HOPS: u32 = 16; +pub const IPV6_MULTICAST_IF: u32 = 17; +pub const IPV6_MULTICAST_HOPS: u32 = 18; +pub const IPV6_MULTICAST_LOOP: u32 = 19; +pub const IPV6_ADD_MEMBERSHIP: u32 = 20; +pub const IPV6_DROP_MEMBERSHIP: u32 = 21; +pub const IPV6_ROUTER_ALERT: u32 = 22; +pub const IPV6_MTU_DISCOVER: u32 = 23; +pub const IPV6_MTU: u32 = 24; +pub const IPV6_RECVERR: u32 = 25; +pub const IPV6_V6ONLY: u32 = 26; +pub const IPV6_JOIN_ANYCAST: u32 = 27; +pub const IPV6_LEAVE_ANYCAST: u32 = 28; +pub const IPV6_MULTICAST_ALL: u32 = 29; +pub const IPV6_ROUTER_ALERT_ISOLATE: u32 = 30; +pub const IPV6_RECVERR_RFC4884: u32 = 31; +pub const IPV6_PMTUDISC_DONT: u32 = 0; +pub const IPV6_PMTUDISC_WANT: u32 = 1; +pub const IPV6_PMTUDISC_DO: u32 = 2; +pub const IPV6_PMTUDISC_PROBE: u32 = 3; +pub const IPV6_PMTUDISC_INTERFACE: u32 = 4; +pub const IPV6_PMTUDISC_OMIT: u32 = 5; +pub const IPV6_FLOWLABEL_MGR: u32 = 32; +pub const IPV6_FLOWINFO_SEND: u32 = 33; +pub const IPV6_IPSEC_POLICY: u32 = 34; +pub const IPV6_XFRM_POLICY: u32 = 35; +pub const IPV6_HDRINCL: u32 = 36; +pub const IPV6_RECVPKTINFO: u32 = 49; +pub const IPV6_PKTINFO: u32 = 50; +pub const IPV6_RECVHOPLIMIT: u32 = 51; +pub const IPV6_HOPLIMIT: u32 = 52; +pub const IPV6_RECVHOPOPTS: u32 = 53; +pub const IPV6_HOPOPTS: u32 = 54; +pub const IPV6_RTHDRDSTOPTS: u32 = 55; +pub const IPV6_RECVRTHDR: u32 = 56; +pub const IPV6_RTHDR: u32 = 57; +pub const IPV6_RECVDSTOPTS: u32 = 58; +pub const IPV6_DSTOPTS: u32 = 59; +pub const IPV6_RECVPATHMTU: u32 = 60; +pub const IPV6_PATHMTU: u32 = 61; +pub const IPV6_DONTFRAG: u32 = 62; +pub const IPV6_RECVTCLASS: u32 = 66; +pub const IPV6_TCLASS: u32 = 67; +pub const IPV6_AUTOFLOWLABEL: u32 = 70; +pub const IPV6_ADDR_PREFERENCES: u32 = 72; +pub const IPV6_PREFER_SRC_TMP: u32 = 1; +pub const IPV6_PREFER_SRC_PUBLIC: u32 = 2; +pub const IPV6_PREFER_SRC_PUBTMP_DEFAULT: u32 = 256; +pub const IPV6_PREFER_SRC_COA: u32 = 4; +pub const IPV6_PREFER_SRC_HOME: u32 = 1024; +pub const IPV6_PREFER_SRC_CGA: u32 = 8; +pub const IPV6_PREFER_SRC_NONCGA: u32 = 2048; +pub const IPV6_MINHOPCOUNT: u32 = 73; +pub const IPV6_ORIGDSTADDR: u32 = 74; +pub const IPV6_RECVORIGDSTADDR: u32 = 74; +pub const IPV6_TRANSPARENT: u32 = 75; +pub const IPV6_UNICAST_IF: u32 = 76; +pub const IPV6_RECVFRAGSIZE: u32 = 77; +pub const IPV6_FREEBIND: u32 = 78; +pub const IPV6_MIN_MTU: u32 = 1280; +pub const IPV6_SRCRT_STRICT: u32 = 1; +pub const IPV6_SRCRT_TYPE_0: u32 = 0; +pub const IPV6_SRCRT_TYPE_2: u32 = 2; +pub const IPV6_SRCRT_TYPE_3: u32 = 3; +pub const IPV6_SRCRT_TYPE_4: u32 = 4; +pub const IPV6_OPT_ROUTERALERT_MLD: u32 = 0; +pub const SIOCGSTAMP_OLD: u32 = 35078; +pub const SIOCGSTAMPNS_OLD: u32 = 35079; +pub const SOL_SOCKET: u32 = 1; +pub const SO_DEBUG: u32 = 1; +pub const SO_REUSEADDR: u32 = 2; +pub const SO_TYPE: u32 = 3; +pub const SO_ERROR: u32 = 4; +pub const SO_DONTROUTE: u32 = 5; +pub const SO_BROADCAST: u32 = 6; +pub const SO_SNDBUF: u32 = 7; +pub const SO_RCVBUF: u32 = 8; +pub const SO_SNDBUFFORCE: u32 = 32; +pub const SO_RCVBUFFORCE: u32 = 33; +pub const SO_KEEPALIVE: u32 = 9; +pub const SO_OOBINLINE: u32 = 10; +pub const SO_NO_CHECK: u32 = 11; +pub const SO_PRIORITY: u32 = 12; +pub const SO_LINGER: u32 = 13; +pub const SO_BSDCOMPAT: u32 = 14; +pub const SO_REUSEPORT: u32 = 15; +pub const SO_PASSCRED: u32 = 16; +pub const SO_PEERCRED: u32 = 17; +pub const SO_RCVLOWAT: u32 = 18; +pub const SO_SNDLOWAT: u32 = 19; +pub const SO_RCVTIMEO_OLD: u32 = 20; +pub const SO_SNDTIMEO_OLD: u32 = 21; +pub const SO_SECURITY_AUTHENTICATION: u32 = 22; +pub const SO_SECURITY_ENCRYPTION_TRANSPORT: u32 = 23; +pub const SO_SECURITY_ENCRYPTION_NETWORK: u32 = 24; +pub const SO_BINDTODEVICE: u32 = 25; +pub const SO_ATTACH_FILTER: u32 = 26; +pub const SO_DETACH_FILTER: u32 = 27; +pub const SO_GET_FILTER: u32 = 26; +pub const SO_PEERNAME: u32 = 28; +pub const SO_ACCEPTCONN: u32 = 30; +pub const SO_PEERSEC: u32 = 31; +pub const SO_PASSSEC: u32 = 34; +pub const SO_MARK: u32 = 36; +pub const SO_PROTOCOL: u32 = 38; +pub const SO_DOMAIN: u32 = 39; +pub const SO_RXQ_OVFL: u32 = 40; +pub const SO_WIFI_STATUS: u32 = 41; +pub const SCM_WIFI_STATUS: u32 = 41; +pub const SO_PEEK_OFF: u32 = 42; +pub const SO_NOFCS: u32 = 43; +pub const SO_LOCK_FILTER: u32 = 44; +pub const SO_SELECT_ERR_QUEUE: u32 = 45; +pub const SO_BUSY_POLL: u32 = 46; +pub const SO_MAX_PACING_RATE: u32 = 47; +pub const SO_BPF_EXTENSIONS: u32 = 48; +pub const SO_INCOMING_CPU: u32 = 49; +pub const SO_ATTACH_BPF: u32 = 50; +pub const SO_DETACH_BPF: u32 = 27; +pub const SO_ATTACH_REUSEPORT_CBPF: u32 = 51; +pub const SO_ATTACH_REUSEPORT_EBPF: u32 = 52; +pub const SO_CNX_ADVICE: u32 = 53; +pub const SCM_TIMESTAMPING_OPT_STATS: u32 = 54; +pub const SO_MEMINFO: u32 = 55; +pub const SO_INCOMING_NAPI_ID: u32 = 56; +pub const SO_COOKIE: u32 = 57; +pub const SCM_TIMESTAMPING_PKTINFO: u32 = 58; +pub const SO_PEERGROUPS: u32 = 59; +pub const SO_ZEROCOPY: u32 = 60; +pub const SO_TXTIME: u32 = 61; +pub const SCM_TXTIME: u32 = 61; +pub const SO_BINDTOIFINDEX: u32 = 62; +pub const SO_TIMESTAMP_OLD: u32 = 29; +pub const SO_TIMESTAMPNS_OLD: u32 = 35; +pub const SO_TIMESTAMPING_OLD: u32 = 37; +pub const SO_TIMESTAMP_NEW: u32 = 63; +pub const SO_TIMESTAMPNS_NEW: u32 = 64; +pub const SO_TIMESTAMPING_NEW: u32 = 65; +pub const SO_RCVTIMEO_NEW: u32 = 66; +pub const SO_SNDTIMEO_NEW: u32 = 67; +pub const SO_DETACH_REUSEPORT_BPF: u32 = 68; +pub const SO_PREFER_BUSY_POLL: u32 = 69; +pub const SO_BUSY_POLL_BUDGET: u32 = 70; +pub const SO_NETNS_COOKIE: u32 = 71; +pub const SO_BUF_LOCK: u32 = 72; +pub const SO_RESERVE_MEM: u32 = 73; +pub const SO_TXREHASH: u32 = 74; +pub const SO_RCVMARK: u32 = 75; +pub const SO_PASSPIDFD: u32 = 76; +pub const SO_PEERPIDFD: u32 = 77; +pub const SO_DEVMEM_LINEAR: u32 = 78; +pub const SCM_DEVMEM_LINEAR: u32 = 78; +pub const SO_DEVMEM_DMABUF: u32 = 79; +pub const SCM_DEVMEM_DMABUF: u32 = 79; +pub const SO_DEVMEM_DONTNEED: u32 = 80; +pub const SCM_TS_OPT_ID: u32 = 81; +pub const SO_RCVPRIORITY: u32 = 82; +pub const SO_PASSRIGHTS: u32 = 83; +pub const SO_INQ: u32 = 84; +pub const SCM_INQ: u32 = 84; +pub const SYS_SOCKET: u32 = 1; +pub const SYS_BIND: u32 = 2; +pub const SYS_CONNECT: u32 = 3; +pub const SYS_LISTEN: u32 = 4; +pub const SYS_ACCEPT: u32 = 5; +pub const SYS_GETSOCKNAME: u32 = 6; +pub const SYS_GETPEERNAME: u32 = 7; +pub const SYS_SOCKETPAIR: u32 = 8; +pub const SYS_SEND: u32 = 9; +pub const SYS_RECV: u32 = 10; +pub const SYS_SENDTO: u32 = 11; +pub const SYS_RECVFROM: u32 = 12; +pub const SYS_SHUTDOWN: u32 = 13; +pub const SYS_SETSOCKOPT: u32 = 14; +pub const SYS_GETSOCKOPT: u32 = 15; +pub const SYS_SENDMSG: u32 = 16; +pub const SYS_RECVMSG: u32 = 17; +pub const SYS_ACCEPT4: u32 = 18; +pub const SYS_RECVMMSG: u32 = 19; +pub const SYS_SENDMMSG: u32 = 20; +pub const __SO_ACCEPTCON: u32 = 65536; +pub const TCP_MSS_DEFAULT: u32 = 536; +pub const TCP_MSS_DESIRED: u32 = 1220; +pub const TCP_NODELAY: u32 = 1; +pub const TCP_MAXSEG: u32 = 2; +pub const TCP_CORK: u32 = 3; +pub const TCP_KEEPIDLE: u32 = 4; +pub const TCP_KEEPINTVL: u32 = 5; +pub const TCP_KEEPCNT: u32 = 6; +pub const TCP_SYNCNT: u32 = 7; +pub const TCP_LINGER2: u32 = 8; +pub const TCP_DEFER_ACCEPT: u32 = 9; +pub const TCP_WINDOW_CLAMP: u32 = 10; +pub const TCP_INFO: u32 = 11; +pub const TCP_QUICKACK: u32 = 12; +pub const TCP_CONGESTION: u32 = 13; +pub const TCP_MD5SIG: u32 = 14; +pub const TCP_THIN_LINEAR_TIMEOUTS: u32 = 16; +pub const TCP_THIN_DUPACK: u32 = 17; +pub const TCP_USER_TIMEOUT: u32 = 18; +pub const TCP_REPAIR: u32 = 19; +pub const TCP_REPAIR_QUEUE: u32 = 20; +pub const TCP_QUEUE_SEQ: u32 = 21; +pub const TCP_REPAIR_OPTIONS: u32 = 22; +pub const TCP_FASTOPEN: u32 = 23; +pub const TCP_TIMESTAMP: u32 = 24; +pub const TCP_NOTSENT_LOWAT: u32 = 25; +pub const TCP_CC_INFO: u32 = 26; +pub const TCP_SAVE_SYN: u32 = 27; +pub const TCP_SAVED_SYN: u32 = 28; +pub const TCP_REPAIR_WINDOW: u32 = 29; +pub const TCP_FASTOPEN_CONNECT: u32 = 30; +pub const TCP_ULP: u32 = 31; +pub const TCP_MD5SIG_EXT: u32 = 32; +pub const TCP_FASTOPEN_KEY: u32 = 33; +pub const TCP_FASTOPEN_NO_COOKIE: u32 = 34; +pub const TCP_ZEROCOPY_RECEIVE: u32 = 35; +pub const TCP_INQ: u32 = 36; +pub const TCP_CM_INQ: u32 = 36; +pub const TCP_TX_DELAY: u32 = 37; +pub const TCP_AO_ADD_KEY: u32 = 38; +pub const TCP_AO_DEL_KEY: u32 = 39; +pub const TCP_AO_INFO: u32 = 40; +pub const TCP_AO_GET_KEYS: u32 = 41; +pub const TCP_AO_REPAIR: u32 = 42; +pub const TCP_IS_MPTCP: u32 = 43; +pub const TCP_RTO_MAX_MS: u32 = 44; +pub const TCP_RTO_MIN_US: u32 = 45; +pub const TCP_DELACK_MAX_US: u32 = 46; +pub const TCP_REPAIR_ON: u32 = 1; +pub const TCP_REPAIR_OFF: u32 = 0; +pub const TCP_REPAIR_OFF_NO_WP: i32 = -1; +pub const TCPI_OPT_TIMESTAMPS: u32 = 1; +pub const TCPI_OPT_SACK: u32 = 2; +pub const TCPI_OPT_WSCALE: u32 = 4; +pub const TCPI_OPT_ECN: u32 = 8; +pub const TCPI_OPT_ECN_SEEN: u32 = 16; +pub const TCPI_OPT_SYN_DATA: u32 = 32; +pub const TCPI_OPT_USEC_TS: u32 = 64; +pub const TCPI_OPT_TFO_CHILD: u32 = 128; +pub const TCP_MD5SIG_MAXKEYLEN: u32 = 80; +pub const TCP_MD5SIG_FLAG_PREFIX: u32 = 1; +pub const TCP_MD5SIG_FLAG_IFINDEX: u32 = 2; +pub const TCP_AO_MAXKEYLEN: u32 = 80; +pub const TCP_AO_KEYF_IFINDEX: u32 = 1; +pub const TCP_AO_KEYF_EXCLUDE_OPT: u32 = 2; +pub const TCP_RECEIVE_ZEROCOPY_FLAG_TLB_CLEAN_HINT: u32 = 1; +pub const UNIX_PATH_MAX: u32 = 108; +pub const IFNAMSIZ: u32 = 16; +pub const IFALIASZ: u32 = 256; +pub const ALTIFNAMSIZ: u32 = 128; +pub const GENERIC_HDLC_VERSION: u32 = 4; +pub const CLOCK_DEFAULT: u32 = 0; +pub const CLOCK_EXT: u32 = 1; +pub const CLOCK_INT: u32 = 2; +pub const CLOCK_TXINT: u32 = 3; +pub const CLOCK_TXFROMRX: u32 = 4; +pub const ENCODING_DEFAULT: u32 = 0; +pub const ENCODING_NRZ: u32 = 1; +pub const ENCODING_NRZI: u32 = 2; +pub const ENCODING_FM_MARK: u32 = 3; +pub const ENCODING_FM_SPACE: u32 = 4; +pub const ENCODING_MANCHESTER: u32 = 5; +pub const PARITY_DEFAULT: u32 = 0; +pub const PARITY_NONE: u32 = 1; +pub const PARITY_CRC16_PR0: u32 = 2; +pub const PARITY_CRC16_PR1: u32 = 3; +pub const PARITY_CRC16_PR0_CCITT: u32 = 4; +pub const PARITY_CRC16_PR1_CCITT: u32 = 5; +pub const PARITY_CRC32_PR0_CCITT: u32 = 6; +pub const PARITY_CRC32_PR1_CCITT: u32 = 7; +pub const LMI_DEFAULT: u32 = 0; +pub const LMI_NONE: u32 = 1; +pub const LMI_ANSI: u32 = 2; +pub const LMI_CCITT: u32 = 3; +pub const LMI_CISCO: u32 = 4; +pub const IF_GET_IFACE: u32 = 1; +pub const IF_GET_PROTO: u32 = 2; +pub const IF_IFACE_V35: u32 = 4096; +pub const IF_IFACE_V24: u32 = 4097; +pub const IF_IFACE_X21: u32 = 4098; +pub const IF_IFACE_T1: u32 = 4099; +pub const IF_IFACE_E1: u32 = 4100; +pub const IF_IFACE_SYNC_SERIAL: u32 = 4101; +pub const IF_IFACE_X21D: u32 = 4102; +pub const IF_PROTO_HDLC: u32 = 8192; +pub const IF_PROTO_PPP: u32 = 8193; +pub const IF_PROTO_CISCO: u32 = 8194; +pub const IF_PROTO_FR: u32 = 8195; +pub const IF_PROTO_FR_ADD_PVC: u32 = 8196; +pub const IF_PROTO_FR_DEL_PVC: u32 = 8197; +pub const IF_PROTO_X25: u32 = 8198; +pub const IF_PROTO_HDLC_ETH: u32 = 8199; +pub const IF_PROTO_FR_ADD_ETH_PVC: u32 = 8200; +pub const IF_PROTO_FR_DEL_ETH_PVC: u32 = 8201; +pub const IF_PROTO_FR_PVC: u32 = 8202; +pub const IF_PROTO_FR_ETH_PVC: u32 = 8203; +pub const IF_PROTO_RAW: u32 = 8204; +pub const IFHWADDRLEN: u32 = 6; +pub const NF_DROP: u32 = 0; +pub const NF_ACCEPT: u32 = 1; +pub const NF_STOLEN: u32 = 2; +pub const NF_QUEUE: u32 = 3; +pub const NF_REPEAT: u32 = 4; +pub const NF_STOP: u32 = 5; +pub const NF_MAX_VERDICT: u32 = 5; +pub const NF_VERDICT_MASK: u32 = 255; +pub const NF_VERDICT_FLAG_QUEUE_BYPASS: u32 = 32768; +pub const NF_VERDICT_QMASK: u32 = 4294901760; +pub const NF_VERDICT_QBITS: u32 = 16; +pub const NF_VERDICT_BITS: u32 = 16; +pub const NF_IP6_PRE_ROUTING: u32 = 0; +pub const NF_IP6_LOCAL_IN: u32 = 1; +pub const NF_IP6_FORWARD: u32 = 2; +pub const NF_IP6_LOCAL_OUT: u32 = 3; +pub const NF_IP6_POST_ROUTING: u32 = 4; +pub const NF_IP6_NUMHOOKS: u32 = 5; +pub const XT_FUNCTION_MAXNAMELEN: u32 = 30; +pub const XT_EXTENSION_MAXNAMELEN: u32 = 29; +pub const XT_TABLE_MAXNAMELEN: u32 = 32; +pub const XT_CONTINUE: u32 = 4294967295; +pub const XT_RETURN: i32 = -5; +pub const XT_STANDARD_TARGET: &[u8; 1] = b"\0"; +pub const XT_ERROR_TARGET: &[u8; 6] = b"ERROR\0"; +pub const XT_INV_PROTO: u32 = 64; +pub const IP6T_FUNCTION_MAXNAMELEN: u32 = 30; +pub const IP6T_TABLE_MAXNAMELEN: u32 = 32; +pub const IP6T_CONTINUE: u32 = 4294967295; +pub const IP6T_RETURN: i32 = -5; +pub const XT_TCP_INV_SRCPT: u32 = 1; +pub const XT_TCP_INV_DSTPT: u32 = 2; +pub const XT_TCP_INV_FLAGS: u32 = 4; +pub const XT_TCP_INV_OPTION: u32 = 8; +pub const XT_TCP_INV_MASK: u32 = 15; +pub const XT_UDP_INV_SRCPT: u32 = 1; +pub const XT_UDP_INV_DSTPT: u32 = 2; +pub const XT_UDP_INV_MASK: u32 = 3; +pub const IP6T_TCP_INV_SRCPT: u32 = 1; +pub const IP6T_TCP_INV_DSTPT: u32 = 2; +pub const IP6T_TCP_INV_FLAGS: u32 = 4; +pub const IP6T_TCP_INV_OPTION: u32 = 8; +pub const IP6T_TCP_INV_MASK: u32 = 15; +pub const IP6T_UDP_INV_SRCPT: u32 = 1; +pub const IP6T_UDP_INV_DSTPT: u32 = 2; +pub const IP6T_UDP_INV_MASK: u32 = 3; +pub const IP6T_STANDARD_TARGET: &[u8; 1] = b"\0"; +pub const IP6T_ERROR_TARGET: &[u8; 6] = b"ERROR\0"; +pub const IP6T_F_PROTO: u32 = 1; +pub const IP6T_F_TOS: u32 = 2; +pub const IP6T_F_GOTO: u32 = 4; +pub const IP6T_F_MASK: u32 = 7; +pub const IP6T_INV_VIA_IN: u32 = 1; +pub const IP6T_INV_VIA_OUT: u32 = 2; +pub const IP6T_INV_TOS: u32 = 4; +pub const IP6T_INV_SRCIP: u32 = 8; +pub const IP6T_INV_DSTIP: u32 = 16; +pub const IP6T_INV_FRAG: u32 = 32; +pub const IP6T_INV_PROTO: u32 = 64; +pub const IP6T_INV_MASK: u32 = 127; +pub const IP6T_BASE_CTL: u32 = 64; +pub const IP6T_SO_SET_REPLACE: u32 = 64; +pub const IP6T_SO_SET_ADD_COUNTERS: u32 = 65; +pub const IP6T_SO_SET_MAX: u32 = 65; +pub const IP6T_SO_GET_INFO: u32 = 64; +pub const IP6T_SO_GET_ENTRIES: u32 = 65; +pub const IP6T_SO_GET_REVISION_MATCH: u32 = 68; +pub const IP6T_SO_GET_REVISION_TARGET: u32 = 69; +pub const IP6T_SO_GET_MAX: u32 = 69; +pub const IP6T_SO_ORIGINAL_DST: u32 = 80; +pub const IP6T_ICMP_INV: u32 = 1; +pub const NF_IP_PRE_ROUTING: u32 = 0; +pub const NF_IP_LOCAL_IN: u32 = 1; +pub const NF_IP_FORWARD: u32 = 2; +pub const NF_IP_LOCAL_OUT: u32 = 3; +pub const NF_IP_POST_ROUTING: u32 = 4; +pub const NF_IP_NUMHOOKS: u32 = 5; +pub const SO_ORIGINAL_DST: u32 = 80; +pub const SHUT_RD: u32 = 0; +pub const SHUT_WR: u32 = 1; +pub const SHUT_RDWR: u32 = 2; +pub const SOCK_STREAM: u32 = 1; +pub const SOCK_DGRAM: u32 = 2; +pub const SOCK_RAW: u32 = 3; +pub const SOCK_RDM: u32 = 4; +pub const SOCK_SEQPACKET: u32 = 5; +pub const MSG_DONTWAIT: u32 = 64; +pub const AF_UNSPEC: u32 = 0; +pub const AF_UNIX: u32 = 1; +pub const AF_INET: u32 = 2; +pub const AF_AX25: u32 = 3; +pub const AF_IPX: u32 = 4; +pub const AF_APPLETALK: u32 = 5; +pub const AF_NETROM: u32 = 6; +pub const AF_BRIDGE: u32 = 7; +pub const AF_ATMPVC: u32 = 8; +pub const AF_X25: u32 = 9; +pub const AF_INET6: u32 = 10; +pub const AF_ROSE: u32 = 11; +pub const AF_DECnet: u32 = 12; +pub const AF_NETBEUI: u32 = 13; +pub const AF_SECURITY: u32 = 14; +pub const AF_KEY: u32 = 15; +pub const AF_NETLINK: u32 = 16; +pub const AF_PACKET: u32 = 17; +pub const AF_ASH: u32 = 18; +pub const AF_ECONET: u32 = 19; +pub const AF_ATMSVC: u32 = 20; +pub const AF_RDS: u32 = 21; +pub const AF_SNA: u32 = 22; +pub const AF_IRDA: u32 = 23; +pub const AF_PPPOX: u32 = 24; +pub const AF_WANPIPE: u32 = 25; +pub const AF_LLC: u32 = 26; +pub const AF_CAN: u32 = 29; +pub const AF_TIPC: u32 = 30; +pub const AF_BLUETOOTH: u32 = 31; +pub const AF_IUCV: u32 = 32; +pub const AF_RXRPC: u32 = 33; +pub const AF_ISDN: u32 = 34; +pub const AF_PHONET: u32 = 35; +pub const AF_IEEE802154: u32 = 36; +pub const AF_CAIF: u32 = 37; +pub const AF_ALG: u32 = 38; +pub const AF_NFC: u32 = 39; +pub const AF_VSOCK: u32 = 40; +pub const AF_KCM: u32 = 41; +pub const AF_QIPCRTR: u32 = 42; +pub const AF_SMC: u32 = 43; +pub const AF_XDP: u32 = 44; +pub const AF_MCTP: u32 = 45; +pub const AF_MAX: u32 = 46; +pub const MSG_OOB: u32 = 1; +pub const MSG_PEEK: u32 = 2; +pub const MSG_DONTROUTE: u32 = 4; +pub const MSG_CTRUNC: u32 = 8; +pub const MSG_PROBE: u32 = 16; +pub const MSG_TRUNC: u32 = 32; +pub const MSG_EOR: u32 = 128; +pub const MSG_WAITALL: u32 = 256; +pub const MSG_FIN: u32 = 512; +pub const MSG_SYN: u32 = 1024; +pub const MSG_CONFIRM: u32 = 2048; +pub const MSG_RST: u32 = 4096; +pub const MSG_ERRQUEUE: u32 = 8192; +pub const MSG_NOSIGNAL: u32 = 16384; +pub const MSG_MORE: u32 = 32768; +pub const MSG_CMSG_CLOEXEC: u32 = 1073741824; +pub const SCM_RIGHTS: u32 = 1; +pub const SCM_CREDENTIALS: u32 = 2; +pub const SCM_SECURITY: u32 = 3; +pub const SOL_IP: u32 = 0; +pub const SOL_TCP: u32 = 6; +pub const SOL_UDP: u32 = 17; +pub const SOL_IPV6: u32 = 41; +pub const SOL_ICMPV6: u32 = 58; +pub const SOL_SCTP: u32 = 132; +pub const SOL_UDPLITE: u32 = 136; +pub const SOL_RAW: u32 = 255; +pub const SOL_IPX: u32 = 256; +pub const SOL_AX25: u32 = 257; +pub const SOL_ATALK: u32 = 258; +pub const SOL_NETROM: u32 = 259; +pub const SOL_ROSE: u32 = 260; +pub const SOL_DECNET: u32 = 261; +pub const SOL_X25: u32 = 262; +pub const SOL_PACKET: u32 = 263; +pub const SOL_ATM: u32 = 264; +pub const SOL_AAL: u32 = 265; +pub const SOL_IRDA: u32 = 266; +pub const SOL_NETBEUI: u32 = 267; +pub const SOL_LLC: u32 = 268; +pub const SOL_DCCP: u32 = 269; +pub const SOL_NETLINK: u32 = 270; +pub const SOL_TIPC: u32 = 271; +pub const SOL_RXRPC: u32 = 272; +pub const SOL_PPPOL2TP: u32 = 273; +pub const SOL_BLUETOOTH: u32 = 274; +pub const SOL_PNPIPE: u32 = 275; +pub const SOL_RDS: u32 = 276; +pub const SOL_IUCV: u32 = 277; +pub const SOL_CAIF: u32 = 278; +pub const SOL_ALG: u32 = 279; +pub const SOL_NFC: u32 = 280; +pub const SOL_KCM: u32 = 281; +pub const SOL_TLS: u32 = 282; +pub const SOL_XDP: u32 = 283; +pub const SOL_MPTCP: u32 = 284; +pub const SOL_MCTP: u32 = 285; +pub const SOL_SMC: u32 = 286; +pub const IPPROTO_IP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IP; +pub const IPPROTO_ICMP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_ICMP; +pub const IPPROTO_IGMP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IGMP; +pub const IPPROTO_IPIP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IPIP; +pub const IPPROTO_TCP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_TCP; +pub const IPPROTO_EGP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_EGP; +pub const IPPROTO_PUP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_PUP; +pub const IPPROTO_UDP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_UDP; +pub const IPPROTO_IDP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IDP; +pub const IPPROTO_TP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_TP; +pub const IPPROTO_DCCP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_DCCP; +pub const IPPROTO_IPV6: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_IPV6; +pub const IPPROTO_RSVP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_RSVP; +pub const IPPROTO_GRE: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_GRE; +pub const IPPROTO_ESP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_ESP; +pub const IPPROTO_AH: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_AH; +pub const IPPROTO_MTP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_MTP; +pub const IPPROTO_BEETPH: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_BEETPH; +pub const IPPROTO_ENCAP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_ENCAP; +pub const IPPROTO_PIM: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_PIM; +pub const IPPROTO_COMP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_COMP; +pub const IPPROTO_L2TP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_L2TP; +pub const IPPROTO_SCTP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_SCTP; +pub const IPPROTO_UDPLITE: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_UDPLITE; +pub const IPPROTO_MPLS: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_MPLS; +pub const IPPROTO_ETHERNET: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_ETHERNET; +pub const IPPROTO_AGGFRAG: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_AGGFRAG; +pub const IPPROTO_RAW: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_RAW; +pub const IPPROTO_SMC: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_SMC; +pub const IPPROTO_MPTCP: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_MPTCP; +pub const IPPROTO_MAX: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_MAX; +pub const IPV4_DEVCONF_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORWARDING; +pub const IPV4_DEVCONF_MC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MC_FORWARDING; +pub const IPV4_DEVCONF_PROXY_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP; +pub const IPV4_DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_REDIRECTS; +pub const IPV4_DEVCONF_SECURE_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SECURE_REDIRECTS; +pub const IPV4_DEVCONF_SEND_REDIRECTS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SEND_REDIRECTS; +pub const IPV4_DEVCONF_SHARED_MEDIA: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SHARED_MEDIA; +pub const IPV4_DEVCONF_RP_FILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_RP_FILTER; +pub const IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE; +pub const IPV4_DEVCONF_BOOTP_RELAY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BOOTP_RELAY; +pub const IPV4_DEVCONF_LOG_MARTIANS: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_LOG_MARTIANS; +pub const IPV4_DEVCONF_TAG: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_TAG; +pub const IPV4_DEVCONF_ARPFILTER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARPFILTER; +pub const IPV4_DEVCONF_MEDIUM_ID: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_MEDIUM_ID; +pub const IPV4_DEVCONF_NOXFRM: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOXFRM; +pub const IPV4_DEVCONF_NOPOLICY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_NOPOLICY; +pub const IPV4_DEVCONF_FORCE_IGMP_VERSION: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_FORCE_IGMP_VERSION; +pub const IPV4_DEVCONF_ARP_ANNOUNCE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ANNOUNCE; +pub const IPV4_DEVCONF_ARP_IGNORE: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_IGNORE; +pub const IPV4_DEVCONF_PROMOTE_SECONDARIES: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROMOTE_SECONDARIES; +pub const IPV4_DEVCONF_ARP_ACCEPT: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_ACCEPT; +pub const IPV4_DEVCONF_ARP_NOTIFY: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_NOTIFY; +pub const IPV4_DEVCONF_ACCEPT_LOCAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ACCEPT_LOCAL; +pub const IPV4_DEVCONF_SRC_VMARK: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_SRC_VMARK; +pub const IPV4_DEVCONF_PROXY_ARP_PVLAN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_PROXY_ARP_PVLAN; +pub const IPV4_DEVCONF_ROUTE_LOCALNET: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ROUTE_LOCALNET; +pub const IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL; +pub const IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL; +pub const IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN; +pub const IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST; +pub const IPV4_DEVCONF_DROP_GRATUITOUS_ARP: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_DROP_GRATUITOUS_ARP; +pub const IPV4_DEVCONF_BC_FORWARDING: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_BC_FORWARDING; +pub const IPV4_DEVCONF_ARP_EVICT_NOCARRIER: _bindgen_ty_2 = _bindgen_ty_2::IPV4_DEVCONF_ARP_EVICT_NOCARRIER; +pub const __IPV4_DEVCONF_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IPV4_DEVCONF_MAX; +pub const DEVCONF_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORWARDING; +pub const DEVCONF_HOPLIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_HOPLIMIT; +pub const DEVCONF_MTU6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MTU6; +pub const DEVCONF_ACCEPT_RA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA; +pub const DEVCONF_ACCEPT_REDIRECTS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_REDIRECTS; +pub const DEVCONF_AUTOCONF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_AUTOCONF; +pub const DEVCONF_DAD_TRANSMITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DAD_TRANSMITS; +pub const DEVCONF_RTR_SOLICITS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICITS; +pub const DEVCONF_RTR_SOLICIT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_INTERVAL; +pub const DEVCONF_RTR_SOLICIT_DELAY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_DELAY; +pub const DEVCONF_USE_TEMPADDR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_TEMPADDR; +pub const DEVCONF_TEMP_VALID_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_VALID_LFT; +pub const DEVCONF_TEMP_PREFERED_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_TEMP_PREFERED_LFT; +pub const DEVCONF_REGEN_MAX_RETRY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_REGEN_MAX_RETRY; +pub const DEVCONF_MAX_DESYNC_FACTOR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_DESYNC_FACTOR; +pub const DEVCONF_MAX_ADDRESSES: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX_ADDRESSES; +pub const DEVCONF_FORCE_MLD_VERSION: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_MLD_VERSION; +pub const DEVCONF_ACCEPT_RA_DEFRTR: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_DEFRTR; +pub const DEVCONF_ACCEPT_RA_PINFO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_PINFO; +pub const DEVCONF_ACCEPT_RA_RTR_PREF: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RTR_PREF; +pub const DEVCONF_RTR_PROBE_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_PROBE_INTERVAL; +pub const DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN; +pub const DEVCONF_PROXY_NDP: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_PROXY_NDP; +pub const DEVCONF_OPTIMISTIC_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_OPTIMISTIC_DAD; +pub const DEVCONF_ACCEPT_SOURCE_ROUTE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_SOURCE_ROUTE; +pub const DEVCONF_MC_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MC_FORWARDING; +pub const DEVCONF_DISABLE_IPV6: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_IPV6; +pub const DEVCONF_ACCEPT_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_DAD; +pub const DEVCONF_FORCE_TLLAO: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_TLLAO; +pub const DEVCONF_NDISC_NOTIFY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_NOTIFY; +pub const DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL; +pub const DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL; +pub const DEVCONF_SUPPRESS_FRAG_NDISC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SUPPRESS_FRAG_NDISC; +pub const DEVCONF_ACCEPT_RA_FROM_LOCAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_FROM_LOCAL; +pub const DEVCONF_USE_OPTIMISTIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OPTIMISTIC; +pub const DEVCONF_ACCEPT_RA_MTU: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MTU; +pub const DEVCONF_STABLE_SECRET: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_STABLE_SECRET; +pub const DEVCONF_USE_OIF_ADDRS_ONLY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_USE_OIF_ADDRS_ONLY; +pub const DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT; +pub const DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN; +pub const DEVCONF_DROP_UNICAST_IN_L2_MULTICAST: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNICAST_IN_L2_MULTICAST; +pub const DEVCONF_DROP_UNSOLICITED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DROP_UNSOLICITED_NA; +pub const DEVCONF_KEEP_ADDR_ON_DOWN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_KEEP_ADDR_ON_DOWN; +pub const DEVCONF_RTR_SOLICIT_MAX_INTERVAL: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RTR_SOLICIT_MAX_INTERVAL; +pub const DEVCONF_SEG6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_ENABLED; +pub const DEVCONF_SEG6_REQUIRE_HMAC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_SEG6_REQUIRE_HMAC; +pub const DEVCONF_ENHANCED_DAD: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ENHANCED_DAD; +pub const DEVCONF_ADDR_GEN_MODE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ADDR_GEN_MODE; +pub const DEVCONF_DISABLE_POLICY: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_DISABLE_POLICY; +pub const DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN; +pub const DEVCONF_NDISC_TCLASS: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_TCLASS; +pub const DEVCONF_RPL_SEG_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RPL_SEG_ENABLED; +pub const DEVCONF_RA_DEFRTR_METRIC: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_RA_DEFRTR_METRIC; +pub const DEVCONF_IOAM6_ENABLED: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IOAM6_ENABLED; +pub const DEVCONF_IOAM6_ID: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IOAM6_ID; +pub const DEVCONF_IOAM6_ID_WIDE: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_IOAM6_ID_WIDE; +pub const DEVCONF_NDISC_EVICT_NOCARRIER: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_NDISC_EVICT_NOCARRIER; +pub const DEVCONF_ACCEPT_UNTRACKED_NA: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_UNTRACKED_NA; +pub const DEVCONF_ACCEPT_RA_MIN_LFT: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_ACCEPT_RA_MIN_LFT; +pub const DEVCONF_FORCE_FORWARDING: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_FORCE_FORWARDING; +pub const DEVCONF_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; +pub const TCP_FLAG_AE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_AE; +pub const TCP_FLAG_CWR: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_CWR; +pub const TCP_FLAG_ECE: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ECE; +pub const TCP_FLAG_URG: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_URG; +pub const TCP_FLAG_ACK: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_ACK; +pub const TCP_FLAG_PSH: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_PSH; +pub const TCP_FLAG_RST: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_RST; +pub const TCP_FLAG_SYN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_SYN; +pub const TCP_FLAG_FIN: _bindgen_ty_4 = _bindgen_ty_4::TCP_FLAG_FIN; +pub const TCP_RESERVED_BITS: _bindgen_ty_4 = _bindgen_ty_4::TCP_RESERVED_BITS; +pub const TCP_DATA_OFFSET: _bindgen_ty_4 = _bindgen_ty_4::TCP_DATA_OFFSET; +pub const TCP_NO_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_NO_QUEUE; +pub const TCP_RECV_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_RECV_QUEUE; +pub const TCP_SEND_QUEUE: _bindgen_ty_5 = _bindgen_ty_5::TCP_SEND_QUEUE; +pub const TCP_QUEUES_NR: _bindgen_ty_5 = _bindgen_ty_5::TCP_QUEUES_NR; +pub const TCP_NLA_PAD: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PAD; +pub const TCP_NLA_BUSY: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BUSY; +pub const TCP_NLA_RWND_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RWND_LIMITED; +pub const TCP_NLA_SNDBUF_LIMITED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDBUF_LIMITED; +pub const TCP_NLA_DATA_SEGS_OUT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DATA_SEGS_OUT; +pub const TCP_NLA_TOTAL_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TOTAL_RETRANS; +pub const TCP_NLA_PACING_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_PACING_RATE; +pub const TCP_NLA_DELIVERY_RATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE; +pub const TCP_NLA_SND_CWND: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_CWND; +pub const TCP_NLA_REORDERING: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORDERING; +pub const TCP_NLA_MIN_RTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_MIN_RTT; +pub const TCP_NLA_RECUR_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_RECUR_RETRANS; +pub const TCP_NLA_DELIVERY_RATE_APP_LMT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERY_RATE_APP_LMT; +pub const TCP_NLA_SNDQ_SIZE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SNDQ_SIZE; +pub const TCP_NLA_CA_STATE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_CA_STATE; +pub const TCP_NLA_SND_SSTHRESH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SND_SSTHRESH; +pub const TCP_NLA_DELIVERED: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED; +pub const TCP_NLA_DELIVERED_CE: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DELIVERED_CE; +pub const TCP_NLA_BYTES_SENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_SENT; +pub const TCP_NLA_BYTES_RETRANS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_RETRANS; +pub const TCP_NLA_DSACK_DUPS: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_DSACK_DUPS; +pub const TCP_NLA_REORD_SEEN: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REORD_SEEN; +pub const TCP_NLA_SRTT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_SRTT; +pub const TCP_NLA_TIMEOUT_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TIMEOUT_REHASH; +pub const TCP_NLA_BYTES_NOTSENT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_BYTES_NOTSENT; +pub const TCP_NLA_EDT: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_EDT; +pub const TCP_NLA_TTL: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_TTL; +pub const TCP_NLA_REHASH: _bindgen_ty_6 = _bindgen_ty_6::TCP_NLA_REHASH; +pub const IF_OPER_UNKNOWN: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_UNKNOWN; +pub const IF_OPER_NOTPRESENT: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_NOTPRESENT; +pub const IF_OPER_DOWN: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_DOWN; +pub const IF_OPER_LOWERLAYERDOWN: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_LOWERLAYERDOWN; +pub const IF_OPER_TESTING: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_TESTING; +pub const IF_OPER_DORMANT: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_DORMANT; +pub const IF_OPER_UP: _bindgen_ty_7 = _bindgen_ty_7::IF_OPER_UP; +pub const IF_LINK_MODE_DEFAULT: _bindgen_ty_8 = _bindgen_ty_8::IF_LINK_MODE_DEFAULT; +pub const IF_LINK_MODE_DORMANT: _bindgen_ty_8 = _bindgen_ty_8::IF_LINK_MODE_DORMANT; +pub const IF_LINK_MODE_TESTING: _bindgen_ty_8 = _bindgen_ty_8::IF_LINK_MODE_TESTING; +pub const NFPROTO_UNSPEC: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_UNSPEC; +pub const NFPROTO_INET: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_INET; +pub const NFPROTO_IPV4: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_IPV4; +pub const NFPROTO_ARP: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_ARP; +pub const NFPROTO_NETDEV: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_NETDEV; +pub const NFPROTO_BRIDGE: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_BRIDGE; +pub const NFPROTO_IPV6: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_IPV6; +pub const NFPROTO_DECNET: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_DECNET; +pub const NFPROTO_NUMPROTO: _bindgen_ty_9 = _bindgen_ty_9::NFPROTO_NUMPROTO; +pub const SOF_TIMESTAMPING_TX_HARDWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_HARDWARE; +pub const SOF_TIMESTAMPING_TX_SOFTWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_SOFTWARE; +pub const SOF_TIMESTAMPING_RX_HARDWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_RX_HARDWARE; +pub const SOF_TIMESTAMPING_RX_SOFTWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_RX_SOFTWARE; +pub const SOF_TIMESTAMPING_SOFTWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_SOFTWARE; +pub const SOF_TIMESTAMPING_SYS_HARDWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_SYS_HARDWARE; +pub const SOF_TIMESTAMPING_RAW_HARDWARE: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_RAW_HARDWARE; +pub const SOF_TIMESTAMPING_OPT_ID: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID; +pub const SOF_TIMESTAMPING_TX_SCHED: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_SCHED; +pub const SOF_TIMESTAMPING_TX_ACK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_ACK; +pub const SOF_TIMESTAMPING_OPT_CMSG: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_CMSG; +pub const SOF_TIMESTAMPING_OPT_TSONLY: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_TSONLY; +pub const SOF_TIMESTAMPING_OPT_STATS: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_STATS; +pub const SOF_TIMESTAMPING_OPT_PKTINFO: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_PKTINFO; +pub const SOF_TIMESTAMPING_OPT_TX_SWHW: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_TX_SWHW; +pub const SOF_TIMESTAMPING_BIND_PHC: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_BIND_PHC; +pub const SOF_TIMESTAMPING_OPT_ID_TCP: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_ID_TCP; +pub const SOF_TIMESTAMPING_OPT_RX_FILTER: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_OPT_RX_FILTER; +pub const SOF_TIMESTAMPING_TX_COMPLETION: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_LAST: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_TX_COMPLETION; +pub const SOF_TIMESTAMPING_MASK: _bindgen_ty_10 = _bindgen_ty_10::SOF_TIMESTAMPING_MASK; +#[repr(u16)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_1 { +IPPROTO_IP = 0, +IPPROTO_ICMP = 1, +IPPROTO_IGMP = 2, +IPPROTO_IPIP = 4, +IPPROTO_TCP = 6, +IPPROTO_EGP = 8, +IPPROTO_PUP = 12, +IPPROTO_UDP = 17, +IPPROTO_IDP = 22, +IPPROTO_TP = 29, +IPPROTO_DCCP = 33, +IPPROTO_IPV6 = 41, +IPPROTO_RSVP = 46, +IPPROTO_GRE = 47, +IPPROTO_ESP = 50, +IPPROTO_AH = 51, +IPPROTO_MTP = 92, +IPPROTO_BEETPH = 94, +IPPROTO_ENCAP = 98, +IPPROTO_PIM = 103, +IPPROTO_COMP = 108, +IPPROTO_L2TP = 115, +IPPROTO_SCTP = 132, +IPPROTO_UDPLITE = 136, +IPPROTO_MPLS = 137, +IPPROTO_ETHERNET = 143, +IPPROTO_AGGFRAG = 144, +IPPROTO_RAW = 255, +IPPROTO_SMC = 256, +IPPROTO_MPTCP = 262, +IPPROTO_MAX = 263, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_2 { +IPV4_DEVCONF_FORWARDING = 1, +IPV4_DEVCONF_MC_FORWARDING = 2, +IPV4_DEVCONF_PROXY_ARP = 3, +IPV4_DEVCONF_ACCEPT_REDIRECTS = 4, +IPV4_DEVCONF_SECURE_REDIRECTS = 5, +IPV4_DEVCONF_SEND_REDIRECTS = 6, +IPV4_DEVCONF_SHARED_MEDIA = 7, +IPV4_DEVCONF_RP_FILTER = 8, +IPV4_DEVCONF_ACCEPT_SOURCE_ROUTE = 9, +IPV4_DEVCONF_BOOTP_RELAY = 10, +IPV4_DEVCONF_LOG_MARTIANS = 11, +IPV4_DEVCONF_TAG = 12, +IPV4_DEVCONF_ARPFILTER = 13, +IPV4_DEVCONF_MEDIUM_ID = 14, +IPV4_DEVCONF_NOXFRM = 15, +IPV4_DEVCONF_NOPOLICY = 16, +IPV4_DEVCONF_FORCE_IGMP_VERSION = 17, +IPV4_DEVCONF_ARP_ANNOUNCE = 18, +IPV4_DEVCONF_ARP_IGNORE = 19, +IPV4_DEVCONF_PROMOTE_SECONDARIES = 20, +IPV4_DEVCONF_ARP_ACCEPT = 21, +IPV4_DEVCONF_ARP_NOTIFY = 22, +IPV4_DEVCONF_ACCEPT_LOCAL = 23, +IPV4_DEVCONF_SRC_VMARK = 24, +IPV4_DEVCONF_PROXY_ARP_PVLAN = 25, +IPV4_DEVCONF_ROUTE_LOCALNET = 26, +IPV4_DEVCONF_IGMPV2_UNSOLICITED_REPORT_INTERVAL = 27, +IPV4_DEVCONF_IGMPV3_UNSOLICITED_REPORT_INTERVAL = 28, +IPV4_DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 29, +IPV4_DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 30, +IPV4_DEVCONF_DROP_GRATUITOUS_ARP = 31, +IPV4_DEVCONF_BC_FORWARDING = 32, +IPV4_DEVCONF_ARP_EVICT_NOCARRIER = 33, +__IPV4_DEVCONF_MAX = 34, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_3 { +DEVCONF_FORWARDING = 0, +DEVCONF_HOPLIMIT = 1, +DEVCONF_MTU6 = 2, +DEVCONF_ACCEPT_RA = 3, +DEVCONF_ACCEPT_REDIRECTS = 4, +DEVCONF_AUTOCONF = 5, +DEVCONF_DAD_TRANSMITS = 6, +DEVCONF_RTR_SOLICITS = 7, +DEVCONF_RTR_SOLICIT_INTERVAL = 8, +DEVCONF_RTR_SOLICIT_DELAY = 9, +DEVCONF_USE_TEMPADDR = 10, +DEVCONF_TEMP_VALID_LFT = 11, +DEVCONF_TEMP_PREFERED_LFT = 12, +DEVCONF_REGEN_MAX_RETRY = 13, +DEVCONF_MAX_DESYNC_FACTOR = 14, +DEVCONF_MAX_ADDRESSES = 15, +DEVCONF_FORCE_MLD_VERSION = 16, +DEVCONF_ACCEPT_RA_DEFRTR = 17, +DEVCONF_ACCEPT_RA_PINFO = 18, +DEVCONF_ACCEPT_RA_RTR_PREF = 19, +DEVCONF_RTR_PROBE_INTERVAL = 20, +DEVCONF_ACCEPT_RA_RT_INFO_MAX_PLEN = 21, +DEVCONF_PROXY_NDP = 22, +DEVCONF_OPTIMISTIC_DAD = 23, +DEVCONF_ACCEPT_SOURCE_ROUTE = 24, +DEVCONF_MC_FORWARDING = 25, +DEVCONF_DISABLE_IPV6 = 26, +DEVCONF_ACCEPT_DAD = 27, +DEVCONF_FORCE_TLLAO = 28, +DEVCONF_NDISC_NOTIFY = 29, +DEVCONF_MLDV1_UNSOLICITED_REPORT_INTERVAL = 30, +DEVCONF_MLDV2_UNSOLICITED_REPORT_INTERVAL = 31, +DEVCONF_SUPPRESS_FRAG_NDISC = 32, +DEVCONF_ACCEPT_RA_FROM_LOCAL = 33, +DEVCONF_USE_OPTIMISTIC = 34, +DEVCONF_ACCEPT_RA_MTU = 35, +DEVCONF_STABLE_SECRET = 36, +DEVCONF_USE_OIF_ADDRS_ONLY = 37, +DEVCONF_ACCEPT_RA_MIN_HOP_LIMIT = 38, +DEVCONF_IGNORE_ROUTES_WITH_LINKDOWN = 39, +DEVCONF_DROP_UNICAST_IN_L2_MULTICAST = 40, +DEVCONF_DROP_UNSOLICITED_NA = 41, +DEVCONF_KEEP_ADDR_ON_DOWN = 42, +DEVCONF_RTR_SOLICIT_MAX_INTERVAL = 43, +DEVCONF_SEG6_ENABLED = 44, +DEVCONF_SEG6_REQUIRE_HMAC = 45, +DEVCONF_ENHANCED_DAD = 46, +DEVCONF_ADDR_GEN_MODE = 47, +DEVCONF_DISABLE_POLICY = 48, +DEVCONF_ACCEPT_RA_RT_INFO_MIN_PLEN = 49, +DEVCONF_NDISC_TCLASS = 50, +DEVCONF_RPL_SEG_ENABLED = 51, +DEVCONF_RA_DEFRTR_METRIC = 52, +DEVCONF_IOAM6_ENABLED = 53, +DEVCONF_IOAM6_ID = 54, +DEVCONF_IOAM6_ID_WIDE = 55, +DEVCONF_NDISC_EVICT_NOCARRIER = 56, +DEVCONF_ACCEPT_UNTRACKED_NA = 57, +DEVCONF_ACCEPT_RA_MIN_LFT = 58, +DEVCONF_FORCE_FORWARDING = 59, +DEVCONF_MAX = 60, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum socket_state { +SS_FREE = 0, +SS_UNCONNECTED = 1, +SS_CONNECTING = 2, +SS_CONNECTED = 3, +SS_DISCONNECTING = 4, +} +#[repr(u16)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_4 { +TCP_FLAG_AE = 1, +TCP_FLAG_CWR = 32768, +TCP_FLAG_ECE = 16384, +TCP_FLAG_URG = 8192, +TCP_FLAG_ACK = 4096, +TCP_FLAG_PSH = 2048, +TCP_FLAG_RST = 1024, +TCP_FLAG_SYN = 512, +TCP_FLAG_FIN = 256, +TCP_RESERVED_BITS = 14, +TCP_DATA_OFFSET = 240, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_5 { +TCP_NO_QUEUE = 0, +TCP_RECV_QUEUE = 1, +TCP_SEND_QUEUE = 2, +TCP_QUEUES_NR = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum tcp_fastopen_client_fail { +TFO_STATUS_UNSPEC = 0, +TFO_COOKIE_UNAVAILABLE = 1, +TFO_DATA_NOT_ACKED = 2, +TFO_SYN_RETRANSMITTED = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum tcp_ca_state { +TCP_CA_Open = 0, +TCP_CA_Disorder = 1, +TCP_CA_CWR = 2, +TCP_CA_Recovery = 3, +TCP_CA_Loss = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_6 { +TCP_NLA_PAD = 0, +TCP_NLA_BUSY = 1, +TCP_NLA_RWND_LIMITED = 2, +TCP_NLA_SNDBUF_LIMITED = 3, +TCP_NLA_DATA_SEGS_OUT = 4, +TCP_NLA_TOTAL_RETRANS = 5, +TCP_NLA_PACING_RATE = 6, +TCP_NLA_DELIVERY_RATE = 7, +TCP_NLA_SND_CWND = 8, +TCP_NLA_REORDERING = 9, +TCP_NLA_MIN_RTT = 10, +TCP_NLA_RECUR_RETRANS = 11, +TCP_NLA_DELIVERY_RATE_APP_LMT = 12, +TCP_NLA_SNDQ_SIZE = 13, +TCP_NLA_CA_STATE = 14, +TCP_NLA_SND_SSTHRESH = 15, +TCP_NLA_DELIVERED = 16, +TCP_NLA_DELIVERED_CE = 17, +TCP_NLA_BYTES_SENT = 18, +TCP_NLA_BYTES_RETRANS = 19, +TCP_NLA_DSACK_DUPS = 20, +TCP_NLA_REORD_SEEN = 21, +TCP_NLA_SRTT = 22, +TCP_NLA_TIMEOUT_REHASH = 23, +TCP_NLA_BYTES_NOTSENT = 24, +TCP_NLA_EDT = 25, +TCP_NLA_TTL = 26, +TCP_NLA_REHASH = 27, +} +#[repr(u32)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum net_device_flags { +IFF_UP = 1, +IFF_BROADCAST = 2, +IFF_DEBUG = 4, +IFF_LOOPBACK = 8, +IFF_POINTOPOINT = 16, +IFF_NOTRAILERS = 32, +IFF_RUNNING = 64, +IFF_NOARP = 128, +IFF_PROMISC = 256, +IFF_ALLMULTI = 512, +IFF_MASTER = 1024, +IFF_SLAVE = 2048, +IFF_MULTICAST = 4096, +IFF_PORTSEL = 8192, +IFF_AUTOMEDIA = 16384, +IFF_DYNAMIC = 32768, +IFF_LOWER_UP = 65536, +IFF_DORMANT = 131072, +IFF_ECHO = 262144, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_7 { +IF_OPER_UNKNOWN = 0, +IF_OPER_NOTPRESENT = 1, +IF_OPER_DOWN = 2, +IF_OPER_LOWERLAYERDOWN = 3, +IF_OPER_TESTING = 4, +IF_OPER_DORMANT = 5, +IF_OPER_UP = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_8 { +IF_LINK_MODE_DEFAULT = 0, +IF_LINK_MODE_DORMANT = 1, +IF_LINK_MODE_TESTING = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nf_inet_hooks { +NF_INET_PRE_ROUTING = 0, +NF_INET_LOCAL_IN = 1, +NF_INET_FORWARD = 2, +NF_INET_LOCAL_OUT = 3, +NF_INET_POST_ROUTING = 4, +NF_INET_NUMHOOKS = 5, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nf_dev_hooks { +NF_NETDEV_INGRESS = 0, +NF_NETDEV_EGRESS = 1, +NF_NETDEV_NUMHOOKS = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_9 { +NFPROTO_UNSPEC = 0, +NFPROTO_INET = 1, +NFPROTO_IPV4 = 2, +NFPROTO_ARP = 3, +NFPROTO_NETDEV = 5, +NFPROTO_BRIDGE = 7, +NFPROTO_IPV6 = 10, +NFPROTO_DECNET = 12, +NFPROTO_NUMPROTO = 13, +} +#[repr(i32)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nf_ip6_hook_priorities { +NF_IP6_PRI_FIRST = -2147483648, +NF_IP6_PRI_RAW_BEFORE_DEFRAG = -450, +NF_IP6_PRI_CONNTRACK_DEFRAG = -400, +NF_IP6_PRI_RAW = -300, +NF_IP6_PRI_SELINUX_FIRST = -225, +NF_IP6_PRI_CONNTRACK = -200, +NF_IP6_PRI_MANGLE = -150, +NF_IP6_PRI_NAT_DST = -100, +NF_IP6_PRI_FILTER = 0, +NF_IP6_PRI_SECURITY = 50, +NF_IP6_PRI_NAT_SRC = 100, +NF_IP6_PRI_SELINUX_LAST = 225, +NF_IP6_PRI_CONNTRACK_HELPER = 300, +NF_IP6_PRI_LAST = 2147483647, +} +#[repr(i32)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nf_ip_hook_priorities { +NF_IP_PRI_FIRST = -2147483648, +NF_IP_PRI_RAW_BEFORE_DEFRAG = -450, +NF_IP_PRI_CONNTRACK_DEFRAG = -400, +NF_IP_PRI_RAW = -300, +NF_IP_PRI_SELINUX_FIRST = -225, +NF_IP_PRI_CONNTRACK = -200, +NF_IP_PRI_MANGLE = -150, +NF_IP_PRI_NAT_DST = -100, +NF_IP_PRI_FILTER = 0, +NF_IP_PRI_SECURITY = 50, +NF_IP_PRI_NAT_SRC = 100, +NF_IP_PRI_SELINUX_LAST = 225, +NF_IP_PRI_CONNTRACK_HELPER = 300, +NF_IP_PRI_CONNTRACK_CONFIRM = 2147483647, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum hwtstamp_provider_qualifier { +HWTSTAMP_PROVIDER_QUALIFIER_PRECISE = 0, +HWTSTAMP_PROVIDER_QUALIFIER_APPROX = 1, +HWTSTAMP_PROVIDER_QUALIFIER_CNT = 2, +} +#[repr(u32)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_10 { +SOF_TIMESTAMPING_TX_HARDWARE = 1, +SOF_TIMESTAMPING_TX_SOFTWARE = 2, +SOF_TIMESTAMPING_RX_HARDWARE = 4, +SOF_TIMESTAMPING_RX_SOFTWARE = 8, +SOF_TIMESTAMPING_SOFTWARE = 16, +SOF_TIMESTAMPING_SYS_HARDWARE = 32, +SOF_TIMESTAMPING_RAW_HARDWARE = 64, +SOF_TIMESTAMPING_OPT_ID = 128, +SOF_TIMESTAMPING_TX_SCHED = 256, +SOF_TIMESTAMPING_TX_ACK = 512, +SOF_TIMESTAMPING_OPT_CMSG = 1024, +SOF_TIMESTAMPING_OPT_TSONLY = 2048, +SOF_TIMESTAMPING_OPT_STATS = 4096, +SOF_TIMESTAMPING_OPT_PKTINFO = 8192, +SOF_TIMESTAMPING_OPT_TX_SWHW = 16384, +SOF_TIMESTAMPING_BIND_PHC = 32768, +SOF_TIMESTAMPING_OPT_ID_TCP = 65536, +SOF_TIMESTAMPING_OPT_RX_FILTER = 131072, +SOF_TIMESTAMPING_TX_COMPLETION = 262144, +SOF_TIMESTAMPING_MASK = 524287, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum hwtstamp_flags { +HWTSTAMP_FLAG_BONDED_PHC_INDEX = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum hwtstamp_tx_types { +HWTSTAMP_TX_OFF = 0, +HWTSTAMP_TX_ON = 1, +HWTSTAMP_TX_ONESTEP_SYNC = 2, +HWTSTAMP_TX_ONESTEP_P2P = 3, +__HWTSTAMP_TX_CNT = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum hwtstamp_rx_filters { +HWTSTAMP_FILTER_NONE = 0, +HWTSTAMP_FILTER_ALL = 1, +HWTSTAMP_FILTER_SOME = 2, +HWTSTAMP_FILTER_PTP_V1_L4_EVENT = 3, +HWTSTAMP_FILTER_PTP_V1_L4_SYNC = 4, +HWTSTAMP_FILTER_PTP_V1_L4_DELAY_REQ = 5, +HWTSTAMP_FILTER_PTP_V2_L4_EVENT = 6, +HWTSTAMP_FILTER_PTP_V2_L4_SYNC = 7, +HWTSTAMP_FILTER_PTP_V2_L4_DELAY_REQ = 8, +HWTSTAMP_FILTER_PTP_V2_L2_EVENT = 9, +HWTSTAMP_FILTER_PTP_V2_L2_SYNC = 10, +HWTSTAMP_FILTER_PTP_V2_L2_DELAY_REQ = 11, +HWTSTAMP_FILTER_PTP_V2_EVENT = 12, +HWTSTAMP_FILTER_PTP_V2_SYNC = 13, +HWTSTAMP_FILTER_PTP_V2_DELAY_REQ = 14, +HWTSTAMP_FILTER_NTP_ALL = 15, +__HWTSTAMP_FILTER_CNT = 16, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum txtime_flags { +SOF_TXTIME_DEADLINE_MODE = 1, +SOF_TXTIME_REPORT_ERRORS = 2, +SOF_TXTIME_FLAGS_MASK = 3, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union __kernel_sockaddr_storage__bindgen_ty_1 { +pub __bindgen_anon_1: __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1, +pub __align: *mut crate::ctypes::c_void, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union iphdr__bindgen_ty_1 { +pub __bindgen_anon_1: iphdr__bindgen_ty_1__bindgen_ty_1, +pub addrs: iphdr__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union in6_addr__bindgen_ty_1 { +pub u6_addr8: [__u8; 16usize], +pub u6_addr16: [__be16; 8usize], +pub u6_addr32: [__be32; 4usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ipv6hdr__bindgen_ty_1 { +pub __bindgen_anon_1: ipv6hdr__bindgen_ty_1__bindgen_ty_1, +pub addrs: ipv6hdr__bindgen_ty_1__bindgen_ty_2, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union tcp_word_hdr { +pub hdr: tcphdr, +pub words: [__be32; 5usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union if_settings__bindgen_ty_1 { +pub raw_hdlc: *mut raw_hdlc_proto, +pub cisco: *mut cisco_proto, +pub fr: *mut fr_proto, +pub fr_pvc: *mut fr_proto_pvc, +pub fr_pvc_info: *mut fr_proto_pvc_info, +pub x25: *mut x25_hdlc_proto, +pub sync: *mut sync_serial_settings, +pub te1: *mut te1_settings, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ifreq__bindgen_ty_1 { +pub ifrn_name: [crate::ctypes::c_char; 16usize], +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ifreq__bindgen_ty_2 { +pub ifru_addr: sockaddr, +pub ifru_dstaddr: sockaddr, +pub ifru_broadaddr: sockaddr, +pub ifru_netmask: sockaddr, +pub ifru_hwaddr: sockaddr, +pub ifru_flags: crate::ctypes::c_short, +pub ifru_ivalue: crate::ctypes::c_int, +pub ifru_mtu: crate::ctypes::c_int, +pub ifru_map: ifmap, +pub ifru_slave: [crate::ctypes::c_char; 16usize], +pub ifru_newname: [crate::ctypes::c_char; 16usize], +pub ifru_data: *mut crate::ctypes::c_void, +pub ifru_settings: if_settings, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ifconf__bindgen_ty_1 { +pub ifcu_buf: *mut crate::ctypes::c_char, +pub ifcu_req: *mut ifreq, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union nf_inet_addr { +pub all: [__u32; 4usize], +pub ip: __be32, +pub ip6: [__be32; 4usize], +pub in_: in_addr, +pub in6: in6_addr, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union xt_entry_match__bindgen_ty_1 { +pub user: xt_entry_match__bindgen_ty_1__bindgen_ty_1, +pub kernel: xt_entry_match__bindgen_ty_1__bindgen_ty_2, +pub match_size: __u16, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union xt_entry_target__bindgen_ty_1 { +pub user: xt_entry_target__bindgen_ty_1__bindgen_ty_1, +pub kernel: xt_entry_target__bindgen_ty_1__bindgen_ty_2, +pub target_size: __u16, +} +impl __BindgenBitfieldUnit { +#[inline] +pub const fn new(storage: Storage) -> Self { +Self { storage } +} +} +impl __BindgenBitfieldUnit +where +Storage: AsRef<[u8]> + AsMut<[u8]>, +{ +#[inline] +fn extract_bit(byte: u8, index: usize) -> bool { +let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 }; +let mask = 1 << bit_index; +byte & mask == mask +} +#[inline] +pub fn get_bit(&self, index: usize) -> bool { +debug_assert!(index / 8 < self.storage.as_ref().len()); +let byte_index = index / 8; +let byte = self.storage.as_ref()[byte_index]; +Self::extract_bit(byte, index) +} +#[inline] +pub unsafe fn raw_get_bit(this: *const Self, index: usize) -> bool { +debug_assert!(index / 8 < core::mem::size_of::()); +let byte_index = index / 8; +let byte = unsafe { *(core::ptr::addr_of!((*this).storage) as *const u8).offset(byte_index as isize) }; +Self::extract_bit(byte, index) +} +#[inline] +fn change_bit(byte: u8, index: usize, val: bool) -> u8 { +let bit_index = if cfg!(target_endian = "big") { 7 - (index % 8) } else { index % 8 }; +let mask = 1 << bit_index; +if val { +byte | mask +} else { +byte & !mask +} +} +#[inline] +pub fn set_bit(&mut self, index: usize, val: bool) { +debug_assert!(index / 8 < self.storage.as_ref().len()); +let byte_index = index / 8; +let byte = &mut self.storage.as_mut()[byte_index]; +*byte = Self::change_bit(*byte, index, val); +} +#[inline] +pub unsafe fn raw_set_bit(this: *mut Self, index: usize, val: bool) { +debug_assert!(index / 8 < core::mem::size_of::()); +let byte_index = index / 8; +let byte = unsafe { (core::ptr::addr_of_mut!((*this).storage) as *mut u8).offset(byte_index as isize) }; +unsafe { *byte = Self::change_bit(*byte, index, val) }; +} +#[inline] +pub fn get(&self, bit_offset: usize, bit_width: u8) -> u64 { +debug_assert!(bit_width <= 64); +debug_assert!(bit_offset / 8 < self.storage.as_ref().len()); +debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len()); +let mut val = 0; +for i in 0..(bit_width as usize) { +if self.get_bit(i + bit_offset) { +let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i }; +val |= 1 << index; +} +} +val +} +#[inline] +pub unsafe fn raw_get(this: *const Self, bit_offset: usize, bit_width: u8) -> u64 { +debug_assert!(bit_width <= 64); +debug_assert!(bit_offset / 8 < core::mem::size_of::()); +debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::()); +let mut val = 0; +for i in 0..(bit_width as usize) { +if unsafe { Self::raw_get_bit(this, i + bit_offset) } { +let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i }; +val |= 1 << index; +} +} +val +} +#[inline] +pub fn set(&mut self, bit_offset: usize, bit_width: u8, val: u64) { +debug_assert!(bit_width <= 64); +debug_assert!(bit_offset / 8 < self.storage.as_ref().len()); +debug_assert!((bit_offset + (bit_width as usize)) / 8 <= self.storage.as_ref().len()); +for i in 0..(bit_width as usize) { +let mask = 1 << i; +let val_bit_is_set = val & mask == mask; +let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i }; +self.set_bit(index + bit_offset, val_bit_is_set); +} +} +#[inline] +pub unsafe fn raw_set(this: *mut Self, bit_offset: usize, bit_width: u8, val: u64) { +debug_assert!(bit_width <= 64); +debug_assert!(bit_offset / 8 < core::mem::size_of::()); +debug_assert!((bit_offset + (bit_width as usize)) / 8 <= core::mem::size_of::()); +for i in 0..(bit_width as usize) { +let mask = 1 << i; +let val_bit_is_set = val & mask == mask; +let index = if cfg!(target_endian = "big") { bit_width as usize - 1 - i } else { i }; +unsafe { Self::raw_set_bit(this, index + bit_offset, val_bit_is_set) }; +} +} +} +impl __IncompleteArrayField { +#[inline] +pub const fn new() -> Self { +__IncompleteArrayField(::core::marker::PhantomData, []) +} +#[inline] +pub fn as_ptr(&self) -> *const T { +self as *const _ as *const T +} +#[inline] +pub fn as_mut_ptr(&mut self) -> *mut T { +self as *mut _ as *mut T +} +#[inline] +pub unsafe fn as_slice(&self, len: usize) -> &[T] { +::core::slice::from_raw_parts(self.as_ptr(), len) +} +#[inline] +pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { +::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len) +} +} +impl ::core::fmt::Debug for __IncompleteArrayField { +fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { +fmt.write_str("__IncompleteArrayField") +} +} +impl __BindgenUnionField { +#[inline] +pub const fn new() -> Self { +__BindgenUnionField(::core::marker::PhantomData) +} +#[inline] +pub unsafe fn as_ref(&self) -> &T { +::core::mem::transmute(self) +} +#[inline] +pub unsafe fn as_mut(&mut self) -> &mut T { +::core::mem::transmute(self) +} +} +impl ::core::default::Default for __BindgenUnionField { +#[inline] +fn default() -> Self { +Self::new() +} +} +impl ::core::clone::Clone for __BindgenUnionField { +#[inline] +fn clone(&self) -> Self { +*self +} +} +impl ::core::marker::Copy for __BindgenUnionField {} +impl ::core::fmt::Debug for __BindgenUnionField { +fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { +fmt.write_str("__BindgenUnionField") +} +} +impl ::core::hash::Hash for __BindgenUnionField { +fn hash(&self, _state: &mut H) {} +} +impl ::core::cmp::PartialEq for __BindgenUnionField { +fn eq(&self, _other: &__BindgenUnionField) -> bool { +true +} +} +impl ::core::cmp::Eq for __BindgenUnionField {} +impl iphdr { +#[inline] +pub fn ihl(&self) -> __u8 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) } +} +#[inline] +pub fn set_ihl(&mut self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 4u8, val as u64) +} +} +#[inline] +pub unsafe fn ihl_raw(this: *const Self) -> __u8 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u8) } +} +#[inline] +pub unsafe fn set_ihl_raw(this: *mut Self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64) +} +} +#[inline] +pub fn version(&self) -> __u8 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) } +} +#[inline] +pub fn set_version(&mut self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +self._bitfield_1.set(4usize, 4u8, val as u64) +} +} +#[inline] +pub unsafe fn version_raw(this: *const Self) -> __u8 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u8) } +} +#[inline] +pub unsafe fn set_version_raw(this: *mut Self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +} +} +#[inline] +pub fn new_bitfield_1(ihl: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { +let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); +__bindgen_bitfield_unit.set(0usize, 4u8, { +let ihl: u8 = unsafe { ::core::mem::transmute(ihl) }; +ihl as u64 +}); +__bindgen_bitfield_unit.set(4usize, 4u8, { +let version: u8 = unsafe { ::core::mem::transmute(version) }; +version as u64 +}); +__bindgen_bitfield_unit +} +} +impl ipv6hdr { +#[inline] +pub fn priority(&self) -> __u8 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) } +} +#[inline] +pub fn set_priority(&mut self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 4u8, val as u64) +} +} +#[inline] +pub unsafe fn priority_raw(this: *const Self) -> __u8 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u8) } +} +#[inline] +pub unsafe fn set_priority_raw(this: *mut Self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64) +} +} +#[inline] +pub fn version(&self) -> __u8 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) } +} +#[inline] +pub fn set_version(&mut self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +self._bitfield_1.set(4usize, 4u8, val as u64) +} +} +#[inline] +pub unsafe fn version_raw(this: *const Self) -> __u8 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u8) } +} +#[inline] +pub unsafe fn set_version_raw(this: *mut Self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 1usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +} +} +#[inline] +pub fn new_bitfield_1(priority: __u8, version: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { +let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); +__bindgen_bitfield_unit.set(0usize, 4u8, { +let priority: u8 = unsafe { ::core::mem::transmute(priority) }; +priority as u64 +}); +__bindgen_bitfield_unit.set(4usize, 4u8, { +let version: u8 = unsafe { ::core::mem::transmute(version) }; +version as u64 +}); +__bindgen_bitfield_unit +} +} +impl tcphdr { +#[inline] +pub fn ae(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) } +} +#[inline] +pub fn set_ae(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ae_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ae_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] +pub fn res1(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 3u8) as u16) } +} +#[inline] +pub fn set_res1(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(1usize, 3u8, val as u64) +} +} +#[inline] +pub unsafe fn res1_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 3u8) as u16) } +} +#[inline] +pub unsafe fn set_res1_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 3u8, val as u64) +} +} +#[inline] +pub fn doff(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) } +} +#[inline] +pub fn set_doff(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(4usize, 4u8, val as u64) +} +} +#[inline] +pub unsafe fn doff_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u16) } +} +#[inline] +pub unsafe fn set_doff_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +} +} +#[inline] +pub fn fin(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u16) } +} +#[inline] +pub fn set_fin(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(8usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn fin_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 8usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_fin_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 8usize, 1u8, val as u64) +} +} +#[inline] +pub fn syn(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u16) } +} +#[inline] +pub fn set_syn(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(9usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn syn_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 9usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_syn_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 9usize, 1u8, val as u64) +} +} +#[inline] +pub fn rst(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u16) } +} +#[inline] +pub fn set_rst(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(10usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn rst_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 10usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_rst_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 10usize, 1u8, val as u64) +} +} +#[inline] +pub fn psh(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u16) } +} +#[inline] +pub fn set_psh(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(11usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn psh_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 11usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_psh_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 11usize, 1u8, val as u64) +} +} +#[inline] +pub fn ack(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u16) } +} +#[inline] +pub fn set_ack(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(12usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ack_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 12usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ack_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 12usize, 1u8, val as u64) +} +} +#[inline] +pub fn urg(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u16) } +} +#[inline] +pub fn set_urg(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(13usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn urg_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 13usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_urg_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 13usize, 1u8, val as u64) +} +} +#[inline] +pub fn ece(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u16) } +} +#[inline] +pub fn set_ece(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(14usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ece_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 14usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_ece_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 14usize, 1u8, val as u64) +} +} +#[inline] +pub fn cwr(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u16) } +} +#[inline] +pub fn set_cwr(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(15usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn cwr_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 15usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_cwr_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 15usize, 1u8, val as u64) +} +} +#[inline] +pub fn new_bitfield_1(ae: __u16, res1: __u16, doff: __u16, fin: __u16, syn: __u16, rst: __u16, psh: __u16, ack: __u16, urg: __u16, ece: __u16, cwr: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { +let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); +__bindgen_bitfield_unit.set(0usize, 1u8, { +let ae: u16 = unsafe { ::core::mem::transmute(ae) }; +ae as u64 +}); +__bindgen_bitfield_unit.set(1usize, 3u8, { +let res1: u16 = unsafe { ::core::mem::transmute(res1) }; +res1 as u64 +}); +__bindgen_bitfield_unit.set(4usize, 4u8, { +let doff: u16 = unsafe { ::core::mem::transmute(doff) }; +doff as u64 +}); +__bindgen_bitfield_unit.set(8usize, 1u8, { +let fin: u16 = unsafe { ::core::mem::transmute(fin) }; +fin as u64 +}); +__bindgen_bitfield_unit.set(9usize, 1u8, { +let syn: u16 = unsafe { ::core::mem::transmute(syn) }; +syn as u64 +}); +__bindgen_bitfield_unit.set(10usize, 1u8, { +let rst: u16 = unsafe { ::core::mem::transmute(rst) }; +rst as u64 +}); +__bindgen_bitfield_unit.set(11usize, 1u8, { +let psh: u16 = unsafe { ::core::mem::transmute(psh) }; +psh as u64 +}); +__bindgen_bitfield_unit.set(12usize, 1u8, { +let ack: u16 = unsafe { ::core::mem::transmute(ack) }; +ack as u64 +}); +__bindgen_bitfield_unit.set(13usize, 1u8, { +let urg: u16 = unsafe { ::core::mem::transmute(urg) }; +urg as u64 +}); +__bindgen_bitfield_unit.set(14usize, 1u8, { +let ece: u16 = unsafe { ::core::mem::transmute(ece) }; +ece as u64 +}); +__bindgen_bitfield_unit.set(15usize, 1u8, { +let cwr: u16 = unsafe { ::core::mem::transmute(cwr) }; +cwr as u64 +}); +__bindgen_bitfield_unit +} +} +impl tcp_info { +#[inline] +pub fn tcpi_snd_wscale(&self) -> __u8 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) } +} +#[inline] +pub fn set_tcpi_snd_wscale(&mut self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 4u8, val as u64) +} +} +#[inline] +pub unsafe fn tcpi_snd_wscale_raw(this: *const Self) -> __u8 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 4u8) as u8) } +} +#[inline] +pub unsafe fn set_tcpi_snd_wscale_raw(this: *mut Self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 4u8, val as u64) +} +} +#[inline] +pub fn tcpi_rcv_wscale(&self) -> __u8 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) } +} +#[inline] +pub fn set_tcpi_rcv_wscale(&mut self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +self._bitfield_1.set(4usize, 4u8, val as u64) +} +} +#[inline] +pub unsafe fn tcpi_rcv_wscale_raw(this: *const Self) -> __u8 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 4u8) as u8) } +} +#[inline] +pub unsafe fn set_tcpi_rcv_wscale_raw(this: *mut Self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 4u8, val as u64) +} +} +#[inline] +pub fn tcpi_delivery_rate_app_limited(&self) -> __u8 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u8) } +} +#[inline] +pub fn set_tcpi_delivery_rate_app_limited(&mut self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +self._bitfield_1.set(8usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn tcpi_delivery_rate_app_limited_raw(this: *const Self) -> __u8 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 8usize, 1u8) as u8) } +} +#[inline] +pub unsafe fn set_tcpi_delivery_rate_app_limited_raw(this: *mut Self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 8usize, 1u8, val as u64) +} +} +#[inline] +pub fn tcpi_fastopen_client_fail(&self) -> __u8 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 2u8) as u8) } +} +#[inline] +pub fn set_tcpi_fastopen_client_fail(&mut self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +self._bitfield_1.set(9usize, 2u8, val as u64) +} +} +#[inline] +pub unsafe fn tcpi_fastopen_client_fail_raw(this: *const Self) -> __u8 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 9usize, 2u8) as u8) } +} +#[inline] +pub unsafe fn set_tcpi_fastopen_client_fail_raw(this: *mut Self, val: __u8) { +unsafe { +let val: u8 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 9usize, 2u8, val as u64) +} +} +#[inline] +pub fn new_bitfield_1(tcpi_snd_wscale: __u8, tcpi_rcv_wscale: __u8, tcpi_delivery_rate_app_limited: __u8, tcpi_fastopen_client_fail: __u8) -> __BindgenBitfieldUnit<[u8; 2usize]> { +let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); +__bindgen_bitfield_unit.set(0usize, 4u8, { +let tcpi_snd_wscale: u8 = unsafe { ::core::mem::transmute(tcpi_snd_wscale) }; +tcpi_snd_wscale as u64 +}); +__bindgen_bitfield_unit.set(4usize, 4u8, { +let tcpi_rcv_wscale: u8 = unsafe { ::core::mem::transmute(tcpi_rcv_wscale) }; +tcpi_rcv_wscale as u64 +}); +__bindgen_bitfield_unit.set(8usize, 1u8, { +let tcpi_delivery_rate_app_limited: u8 = unsafe { ::core::mem::transmute(tcpi_delivery_rate_app_limited) }; +tcpi_delivery_rate_app_limited as u64 +}); +__bindgen_bitfield_unit.set(9usize, 2u8, { +let tcpi_fastopen_client_fail: u8 = unsafe { ::core::mem::transmute(tcpi_fastopen_client_fail) }; +tcpi_fastopen_client_fail as u64 +}); +__bindgen_bitfield_unit +} +} +impl tcp_ao_add { +#[inline] +pub fn set_current(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) } +} +#[inline] +pub fn set_set_current(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn set_current_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_set_current_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] +pub fn set_rnext(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) } +} +#[inline] +pub fn set_set_rnext(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(1usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn set_rnext_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_set_rnext_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 1u8, val as u64) +} +} +#[inline] +pub fn reserved(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 30u8) as u32) } +} +#[inline] +pub fn set_reserved(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(2usize, 30u8, val as u64) +} +} +#[inline] +pub unsafe fn reserved_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 2usize, 30u8) as u32) } +} +#[inline] +pub unsafe fn set_reserved_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 2usize, 30u8, val as u64) +} +} +#[inline] +pub fn new_bitfield_1(set_current: __u32, set_rnext: __u32, reserved: __u32) -> __BindgenBitfieldUnit<[u8; 4usize]> { +let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); +__bindgen_bitfield_unit.set(0usize, 1u8, { +let set_current: u32 = unsafe { ::core::mem::transmute(set_current) }; +set_current as u64 +}); +__bindgen_bitfield_unit.set(1usize, 1u8, { +let set_rnext: u32 = unsafe { ::core::mem::transmute(set_rnext) }; +set_rnext as u64 +}); +__bindgen_bitfield_unit.set(2usize, 30u8, { +let reserved: u32 = unsafe { ::core::mem::transmute(reserved) }; +reserved as u64 +}); +__bindgen_bitfield_unit +} +} +impl tcp_ao_del { +#[inline] +pub fn set_current(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) } +} +#[inline] +pub fn set_set_current(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn set_current_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_set_current_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] +pub fn set_rnext(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) } +} +#[inline] +pub fn set_set_rnext(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(1usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn set_rnext_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_set_rnext_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 1u8, val as u64) +} +} +#[inline] +pub fn del_async(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) } +} +#[inline] +pub fn set_del_async(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(2usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn del_async_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 2usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_del_async_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 2usize, 1u8, val as u64) +} +} +#[inline] +pub fn reserved(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 29u8) as u32) } +} +#[inline] +pub fn set_reserved(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(3usize, 29u8, val as u64) +} +} +#[inline] +pub unsafe fn reserved_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 3usize, 29u8) as u32) } +} +#[inline] +pub unsafe fn set_reserved_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 3usize, 29u8, val as u64) +} +} +#[inline] +pub fn new_bitfield_1(set_current: __u32, set_rnext: __u32, del_async: __u32, reserved: __u32) -> __BindgenBitfieldUnit<[u8; 4usize]> { +let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); +__bindgen_bitfield_unit.set(0usize, 1u8, { +let set_current: u32 = unsafe { ::core::mem::transmute(set_current) }; +set_current as u64 +}); +__bindgen_bitfield_unit.set(1usize, 1u8, { +let set_rnext: u32 = unsafe { ::core::mem::transmute(set_rnext) }; +set_rnext as u64 +}); +__bindgen_bitfield_unit.set(2usize, 1u8, { +let del_async: u32 = unsafe { ::core::mem::transmute(del_async) }; +del_async as u64 +}); +__bindgen_bitfield_unit.set(3usize, 29u8, { +let reserved: u32 = unsafe { ::core::mem::transmute(reserved) }; +reserved as u64 +}); +__bindgen_bitfield_unit +} +} +impl tcp_ao_info_opt { +#[inline] +pub fn set_current(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u32) } +} +#[inline] +pub fn set_set_current(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn set_current_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_set_current_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] +pub fn set_rnext(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u32) } +} +#[inline] +pub fn set_set_rnext(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(1usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn set_rnext_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_set_rnext_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 1u8, val as u64) +} +} +#[inline] +pub fn ao_required(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u32) } +} +#[inline] +pub fn set_ao_required(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(2usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn ao_required_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 2usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_ao_required_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 2usize, 1u8, val as u64) +} +} +#[inline] +pub fn set_counters(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 1u8) as u32) } +} +#[inline] +pub fn set_set_counters(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(3usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn set_counters_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 3usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_set_counters_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 3usize, 1u8, val as u64) +} +} +#[inline] +pub fn accept_icmps(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 1u8) as u32) } +} +#[inline] +pub fn set_accept_icmps(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(4usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn accept_icmps_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 4usize, 1u8) as u32) } +} +#[inline] +pub unsafe fn set_accept_icmps_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 4usize, 1u8, val as u64) +} +} +#[inline] +pub fn reserved(&self) -> __u32 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(5usize, 27u8) as u32) } +} +#[inline] +pub fn set_reserved(&mut self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +self._bitfield_1.set(5usize, 27u8, val as u64) +} +} +#[inline] +pub unsafe fn reserved_raw(this: *const Self) -> __u32 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 5usize, 27u8) as u32) } +} +#[inline] +pub unsafe fn set_reserved_raw(this: *mut Self, val: __u32) { +unsafe { +let val: u32 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 4usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 5usize, 27u8, val as u64) +} +} +#[inline] +pub fn new_bitfield_1(set_current: __u32, set_rnext: __u32, ao_required: __u32, set_counters: __u32, accept_icmps: __u32, reserved: __u32) -> __BindgenBitfieldUnit<[u8; 4usize]> { +let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 4usize]> = Default::default(); +__bindgen_bitfield_unit.set(0usize, 1u8, { +let set_current: u32 = unsafe { ::core::mem::transmute(set_current) }; +set_current as u64 +}); +__bindgen_bitfield_unit.set(1usize, 1u8, { +let set_rnext: u32 = unsafe { ::core::mem::transmute(set_rnext) }; +set_rnext as u64 +}); +__bindgen_bitfield_unit.set(2usize, 1u8, { +let ao_required: u32 = unsafe { ::core::mem::transmute(ao_required) }; +ao_required as u64 +}); +__bindgen_bitfield_unit.set(3usize, 1u8, { +let set_counters: u32 = unsafe { ::core::mem::transmute(set_counters) }; +set_counters as u64 +}); +__bindgen_bitfield_unit.set(4usize, 1u8, { +let accept_icmps: u32 = unsafe { ::core::mem::transmute(accept_icmps) }; +accept_icmps as u64 +}); +__bindgen_bitfield_unit.set(5usize, 27u8, { +let reserved: u32 = unsafe { ::core::mem::transmute(reserved) }; +reserved as u64 +}); +__bindgen_bitfield_unit +} +} +impl tcp_ao_getsockopt { +#[inline] +pub fn is_current(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 1u8) as u16) } +} +#[inline] +pub fn set_is_current(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(0usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn is_current_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 0usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_is_current_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 0usize, 1u8, val as u64) +} +} +#[inline] +pub fn is_rnext(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(1usize, 1u8) as u16) } +} +#[inline] +pub fn set_is_rnext(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(1usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn is_rnext_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 1usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_is_rnext_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 1usize, 1u8, val as u64) +} +} +#[inline] +pub fn get_all(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(2usize, 1u8) as u16) } +} +#[inline] +pub fn set_get_all(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(2usize, 1u8, val as u64) +} +} +#[inline] +pub unsafe fn get_all_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 2usize, 1u8) as u16) } +} +#[inline] +pub unsafe fn set_get_all_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 2usize, 1u8, val as u64) +} +} +#[inline] +pub fn reserved(&self) -> __u16 { +unsafe { ::core::mem::transmute(self._bitfield_1.get(3usize, 13u8) as u16) } +} +#[inline] +pub fn set_reserved(&mut self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +self._bitfield_1.set(3usize, 13u8, val as u64) +} +} +#[inline] +pub unsafe fn reserved_raw(this: *const Self) -> __u16 { +unsafe { ::core::mem::transmute(<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_get(::core::ptr::addr_of!((*this)._bitfield_1), 3usize, 13u8) as u16) } +} +#[inline] +pub unsafe fn set_reserved_raw(this: *mut Self, val: __u16) { +unsafe { +let val: u16 = ::core::mem::transmute(val); +<__BindgenBitfieldUnit<[u8; 2usize]>>::raw_set(::core::ptr::addr_of_mut!((*this)._bitfield_1), 3usize, 13u8, val as u64) +} +} +#[inline] +pub fn new_bitfield_1(is_current: __u16, is_rnext: __u16, get_all: __u16, reserved: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { +let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); +__bindgen_bitfield_unit.set(0usize, 1u8, { +let is_current: u16 = unsafe { ::core::mem::transmute(is_current) }; +is_current as u64 +}); +__bindgen_bitfield_unit.set(1usize, 1u8, { +let is_rnext: u16 = unsafe { ::core::mem::transmute(is_rnext) }; +is_rnext as u64 +}); +__bindgen_bitfield_unit.set(2usize, 1u8, { +let get_all: u16 = unsafe { ::core::mem::transmute(get_all) }; +get_all as u64 +}); +__bindgen_bitfield_unit.set(3usize, 13u8, { +let reserved: u16 = unsafe { ::core::mem::transmute(reserved) }; +reserved as u64 +}); +__bindgen_bitfield_unit +} +} +impl nf_inet_hooks { +pub const NF_INET_INGRESS: nf_inet_hooks = nf_inet_hooks::NF_INET_NUMHOOKS; +} +impl nf_ip_hook_priorities { +pub const NF_IP_PRI_LAST: nf_ip_hook_priorities = nf_ip_hook_priorities::NF_IP_PRI_CONNTRACK_CONFIRM; +} +impl hwtstamp_flags { +pub const HWTSTAMP_FLAG_LAST: hwtstamp_flags = hwtstamp_flags::HWTSTAMP_FLAG_BONDED_PHC_INDEX; +} +impl hwtstamp_flags { +pub const HWTSTAMP_FLAG_MASK: hwtstamp_flags = hwtstamp_flags::HWTSTAMP_FLAG_BONDED_PHC_INDEX; +} +impl txtime_flags { +pub const SOF_TXTIME_FLAGS_LAST: txtime_flags = txtime_flags::SOF_TXTIME_REPORT_ERRORS; +} diff --git a/src/hexagon/netlink.rs b/src/hexagon/netlink.rs new file mode 100644 index 00000000..e81e7cc7 --- /dev/null +++ b/src/hexagon/netlink.rs @@ -0,0 +1,5480 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __kernel_sa_family_t = crate::ctypes::c_ushort; +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +#[repr(C)] +#[derive(Default)] +pub struct __IncompleteArrayField(::core::marker::PhantomData, [T; 0]); +#[repr(C)] +#[derive(Copy, Clone)] +pub struct __kernel_sockaddr_storage { +pub __bindgen_anon_1: __kernel_sockaddr_storage__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1 { +pub ss_family: __kernel_sa_family_t, +pub __data: [crate::ctypes::c_char; 126usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_nl { +pub nl_family: __kernel_sa_family_t, +pub nl_pad: crate::ctypes::c_ushort, +pub nl_pid: __u32, +pub nl_groups: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nlmsghdr { +pub nlmsg_len: __u32, +pub nlmsg_type: __u16, +pub nlmsg_flags: __u16, +pub nlmsg_seq: __u32, +pub nlmsg_pid: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nlmsgerr { +pub error: crate::ctypes::c_int, +pub msg: nlmsghdr, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nl_pktinfo { +pub group: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nl_mmap_req { +pub nm_block_size: crate::ctypes::c_uint, +pub nm_block_nr: crate::ctypes::c_uint, +pub nm_frame_size: crate::ctypes::c_uint, +pub nm_frame_nr: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nl_mmap_hdr { +pub nm_status: crate::ctypes::c_uint, +pub nm_len: crate::ctypes::c_uint, +pub nm_group: __u32, +pub nm_pid: __u32, +pub nm_uid: __u32, +pub nm_gid: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nlattr { +pub nla_len: __u16, +pub nla_type: __u16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nla_bitfield32 { +pub value: __u32, +pub selector: __u32, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct nl80211_sta_flag_update { +pub mask: __u32, +pub set: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nl80211_txrate_vht { +pub mcs: [__u16; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nl80211_txrate_he { +pub mcs: [__u16; 8usize], +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct nl80211_pattern_support { +pub max_patterns: __u32, +pub min_pattern_len: __u32, +pub max_pattern_len: __u32, +pub max_pkt_offset: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nl80211_wowlan_tcp_data_seq { +pub start: __u32, +pub offset: __u32, +pub len: __u32, +} +#[repr(C)] +#[derive(Debug)] +pub struct nl80211_wowlan_tcp_data_token { +pub offset: __u32, +pub len: __u32, +pub token_stream: __IncompleteArrayField<__u8>, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nl80211_wowlan_tcp_data_token_feature { +pub min_len: __u32, +pub max_len: __u32, +pub bufsize: __u32, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct nl80211_coalesce_rule_support { +pub max_rules: __u32, +pub pat: nl80211_pattern_support, +pub max_delay: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nl80211_vendor_cmd_info { +pub vendor_id: __u32, +pub subcmd: __u32, +} +#[repr(C, packed)] +#[derive(Debug, Copy, Clone)] +pub struct nl80211_bss_select_rssi_adjust { +pub band: __u8, +pub delta: __s8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rtnl_link_stats { +pub rx_packets: __u32, +pub tx_packets: __u32, +pub rx_bytes: __u32, +pub tx_bytes: __u32, +pub rx_errors: __u32, +pub tx_errors: __u32, +pub rx_dropped: __u32, +pub tx_dropped: __u32, +pub multicast: __u32, +pub collisions: __u32, +pub rx_length_errors: __u32, +pub rx_over_errors: __u32, +pub rx_crc_errors: __u32, +pub rx_frame_errors: __u32, +pub rx_fifo_errors: __u32, +pub rx_missed_errors: __u32, +pub tx_aborted_errors: __u32, +pub tx_carrier_errors: __u32, +pub tx_fifo_errors: __u32, +pub tx_heartbeat_errors: __u32, +pub tx_window_errors: __u32, +pub rx_compressed: __u32, +pub tx_compressed: __u32, +pub rx_nohandler: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rtnl_link_stats64 { +pub rx_packets: __u64, +pub tx_packets: __u64, +pub rx_bytes: __u64, +pub tx_bytes: __u64, +pub rx_errors: __u64, +pub tx_errors: __u64, +pub rx_dropped: __u64, +pub tx_dropped: __u64, +pub multicast: __u64, +pub collisions: __u64, +pub rx_length_errors: __u64, +pub rx_over_errors: __u64, +pub rx_crc_errors: __u64, +pub rx_frame_errors: __u64, +pub rx_fifo_errors: __u64, +pub rx_missed_errors: __u64, +pub tx_aborted_errors: __u64, +pub tx_carrier_errors: __u64, +pub tx_fifo_errors: __u64, +pub tx_heartbeat_errors: __u64, +pub tx_window_errors: __u64, +pub rx_compressed: __u64, +pub tx_compressed: __u64, +pub rx_nohandler: __u64, +pub rx_otherhost_dropped: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rtnl_hw_stats64 { +pub rx_packets: __u64, +pub tx_packets: __u64, +pub rx_bytes: __u64, +pub tx_bytes: __u64, +pub rx_errors: __u64, +pub tx_errors: __u64, +pub rx_dropped: __u64, +pub tx_dropped: __u64, +pub multicast: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rtnl_link_ifmap { +pub mem_start: __u64, +pub mem_end: __u64, +pub base_addr: __u64, +pub irq: __u16, +pub dma: __u8, +pub port: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_bridge_id { +pub prio: [__u8; 2usize], +pub addr: [__u8; 6usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_cacheinfo { +pub max_reasm_len: __u32, +pub tstamp: __u32, +pub reachable_time: __u32, +pub retrans_time: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vlan_flags { +pub flags: __u32, +pub mask: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vlan_qos_mapping { +pub from: __u32, +pub to: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tunnel_msg { +pub family: __u8, +pub flags: __u8, +pub reserved2: __u16, +pub ifindex: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vxlan_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_geneve_port_range { +pub low: __be16, +pub high: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_mac { +pub vf: __u32, +pub mac: [__u8; 32usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_broadcast { +pub broadcast: [__u8; 32usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_vlan { +pub vf: __u32, +pub vlan: __u32, +pub qos: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_vlan_info { +pub vf: __u32, +pub vlan: __u32, +pub qos: __u32, +pub vlan_proto: __be16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_tx_rate { +pub vf: __u32, +pub rate: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_rate { +pub vf: __u32, +pub min_tx_rate: __u32, +pub max_tx_rate: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_spoofchk { +pub vf: __u32, +pub setting: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_guid { +pub vf: __u32, +pub guid: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_link_state { +pub vf: __u32, +pub link_state: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_rss_query_en { +pub vf: __u32, +pub setting: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_vf_trust { +pub vf: __u32, +pub setting: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_port_vsi { +pub vsi_mgr_id: __u8, +pub vsi_type_id: [__u8; 3usize], +pub vsi_type_version: __u8, +pub pad: [__u8; 3usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct if_stats_msg { +pub family: __u8, +pub pad1: __u8, +pub pad2: __u16, +pub ifindex: __u32, +pub filter_mask: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifla_rmnet_flags { +pub flags: __u32, +pub mask: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifaddrmsg { +pub ifa_family: __u8, +pub ifa_prefixlen: __u8, +pub ifa_flags: __u8, +pub ifa_scope: __u8, +pub ifa_index: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifa_cacheinfo { +pub ifa_prefered: __u32, +pub ifa_valid: __u32, +pub cstamp: __u32, +pub tstamp: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndmsg { +pub ndm_family: __u8, +pub ndm_pad1: __u8, +pub ndm_pad2: __u16, +pub ndm_ifindex: __s32, +pub ndm_state: __u16, +pub ndm_flags: __u8, +pub ndm_type: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nda_cacheinfo { +pub ndm_confirmed: __u32, +pub ndm_used: __u32, +pub ndm_updated: __u32, +pub ndm_refcnt: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndt_stats { +pub ndts_allocs: __u64, +pub ndts_destroys: __u64, +pub ndts_hash_grows: __u64, +pub ndts_res_failed: __u64, +pub ndts_lookups: __u64, +pub ndts_hits: __u64, +pub ndts_rcv_probes_mcast: __u64, +pub ndts_rcv_probes_ucast: __u64, +pub ndts_periodic_gc_runs: __u64, +pub ndts_forced_gc_runs: __u64, +pub ndts_table_fulls: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndtmsg { +pub ndtm_family: __u8, +pub ndtm_pad1: __u8, +pub ndtm_pad2: __u16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ndt_config { +pub ndtc_key_len: __u16, +pub ndtc_entry_size: __u16, +pub ndtc_entries: __u32, +pub ndtc_last_flush: __u32, +pub ndtc_last_rand: __u32, +pub ndtc_hash_rnd: __u32, +pub ndtc_hash_mask: __u32, +pub ndtc_hash_chain_gc: __u32, +pub ndtc_proxy_qlen: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rtattr { +pub rta_len: crate::ctypes::c_ushort, +pub rta_type: crate::ctypes::c_ushort, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rtmsg { +pub rtm_family: crate::ctypes::c_uchar, +pub rtm_dst_len: crate::ctypes::c_uchar, +pub rtm_src_len: crate::ctypes::c_uchar, +pub rtm_tos: crate::ctypes::c_uchar, +pub rtm_table: crate::ctypes::c_uchar, +pub rtm_protocol: crate::ctypes::c_uchar, +pub rtm_scope: crate::ctypes::c_uchar, +pub rtm_type: crate::ctypes::c_uchar, +pub rtm_flags: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rtnexthop { +pub rtnh_len: crate::ctypes::c_ushort, +pub rtnh_flags: crate::ctypes::c_uchar, +pub rtnh_hops: crate::ctypes::c_uchar, +pub rtnh_ifindex: crate::ctypes::c_int, +} +#[repr(C)] +#[derive(Debug)] +pub struct rtvia { +pub rtvia_family: __kernel_sa_family_t, +pub rtvia_addr: __IncompleteArrayField<__u8>, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rta_cacheinfo { +pub rta_clntref: __u32, +pub rta_lastuse: __u32, +pub rta_expires: __s32, +pub rta_error: __u32, +pub rta_used: __u32, +pub rta_id: __u32, +pub rta_ts: __u32, +pub rta_tsage: __u32, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct rta_session { +pub proto: __u8, +pub pad1: __u8, +pub pad2: __u16, +pub u: rta_session__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rta_session__bindgen_ty_1__bindgen_ty_1 { +pub sport: __u16, +pub dport: __u16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rta_session__bindgen_ty_1__bindgen_ty_2 { +pub type_: __u8, +pub code: __u8, +pub ident: __u16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rta_mfc_stats { +pub mfcs_packets: __u64, +pub mfcs_bytes: __u64, +pub mfcs_wrong_if: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct rtgenmsg { +pub rtgen_family: crate::ctypes::c_uchar, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ifinfomsg { +pub ifi_family: crate::ctypes::c_uchar, +pub __ifi_pad: crate::ctypes::c_uchar, +pub ifi_type: crate::ctypes::c_ushort, +pub ifi_index: crate::ctypes::c_int, +pub ifi_flags: crate::ctypes::c_uint, +pub ifi_change: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct prefixmsg { +pub prefix_family: crate::ctypes::c_uchar, +pub prefix_pad1: crate::ctypes::c_uchar, +pub prefix_pad2: crate::ctypes::c_ushort, +pub prefix_ifindex: crate::ctypes::c_int, +pub prefix_type: crate::ctypes::c_uchar, +pub prefix_len: crate::ctypes::c_uchar, +pub prefix_flags: crate::ctypes::c_uchar, +pub prefix_pad3: crate::ctypes::c_uchar, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct prefix_cacheinfo { +pub preferred_time: __u32, +pub valid_time: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tcmsg { +pub tcm_family: crate::ctypes::c_uchar, +pub tcm__pad1: crate::ctypes::c_uchar, +pub tcm__pad2: crate::ctypes::c_ushort, +pub tcm_ifindex: crate::ctypes::c_int, +pub tcm_handle: __u32, +pub tcm_parent: __u32, +pub tcm_info: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct nduseroptmsg { +pub nduseropt_family: crate::ctypes::c_uchar, +pub nduseropt_pad1: crate::ctypes::c_uchar, +pub nduseropt_opts_len: crate::ctypes::c_ushort, +pub nduseropt_ifindex: crate::ctypes::c_int, +pub nduseropt_icmp_type: __u8, +pub nduseropt_icmp_code: __u8, +pub nduseropt_pad2: crate::ctypes::c_ushort, +pub nduseropt_pad3: crate::ctypes::c_uint, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct tcamsg { +pub tca_family: crate::ctypes::c_uchar, +pub tca__pad1: crate::ctypes::c_uchar, +pub tca__pad2: crate::ctypes::c_ushort, +} +pub const _K_SS_MAXSIZE: u32 = 128; +pub const SOCK_SNDBUF_LOCK: u32 = 1; +pub const SOCK_RCVBUF_LOCK: u32 = 2; +pub const SOCK_BUF_LOCK_MASK: u32 = 3; +pub const SOCK_TXREHASH_DEFAULT: u32 = 255; +pub const SOCK_TXREHASH_DISABLED: u32 = 0; +pub const SOCK_TXREHASH_ENABLED: u32 = 1; +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const NETLINK_ROUTE: u32 = 0; +pub const NETLINK_UNUSED: u32 = 1; +pub const NETLINK_USERSOCK: u32 = 2; +pub const NETLINK_FIREWALL: u32 = 3; +pub const NETLINK_SOCK_DIAG: u32 = 4; +pub const NETLINK_NFLOG: u32 = 5; +pub const NETLINK_XFRM: u32 = 6; +pub const NETLINK_SELINUX: u32 = 7; +pub const NETLINK_ISCSI: u32 = 8; +pub const NETLINK_AUDIT: u32 = 9; +pub const NETLINK_FIB_LOOKUP: u32 = 10; +pub const NETLINK_CONNECTOR: u32 = 11; +pub const NETLINK_NETFILTER: u32 = 12; +pub const NETLINK_IP6_FW: u32 = 13; +pub const NETLINK_DNRTMSG: u32 = 14; +pub const NETLINK_KOBJECT_UEVENT: u32 = 15; +pub const NETLINK_GENERIC: u32 = 16; +pub const NETLINK_SCSITRANSPORT: u32 = 18; +pub const NETLINK_ECRYPTFS: u32 = 19; +pub const NETLINK_RDMA: u32 = 20; +pub const NETLINK_CRYPTO: u32 = 21; +pub const NETLINK_SMC: u32 = 22; +pub const NETLINK_INET_DIAG: u32 = 4; +pub const MAX_LINKS: u32 = 32; +pub const NLM_F_REQUEST: u32 = 1; +pub const NLM_F_MULTI: u32 = 2; +pub const NLM_F_ACK: u32 = 4; +pub const NLM_F_ECHO: u32 = 8; +pub const NLM_F_DUMP_INTR: u32 = 16; +pub const NLM_F_DUMP_FILTERED: u32 = 32; +pub const NLM_F_ROOT: u32 = 256; +pub const NLM_F_MATCH: u32 = 512; +pub const NLM_F_ATOMIC: u32 = 1024; +pub const NLM_F_DUMP: u32 = 768; +pub const NLM_F_REPLACE: u32 = 256; +pub const NLM_F_EXCL: u32 = 512; +pub const NLM_F_CREATE: u32 = 1024; +pub const NLM_F_APPEND: u32 = 2048; +pub const NLM_F_NONREC: u32 = 256; +pub const NLM_F_BULK: u32 = 512; +pub const NLM_F_CAPPED: u32 = 256; +pub const NLM_F_ACK_TLVS: u32 = 512; +pub const NLMSG_ALIGNTO: u32 = 4; +pub const NLMSG_NOOP: u32 = 1; +pub const NLMSG_ERROR: u32 = 2; +pub const NLMSG_DONE: u32 = 3; +pub const NLMSG_OVERRUN: u32 = 4; +pub const NLMSG_MIN_TYPE: u32 = 16; +pub const NETLINK_ADD_MEMBERSHIP: u32 = 1; +pub const NETLINK_DROP_MEMBERSHIP: u32 = 2; +pub const NETLINK_PKTINFO: u32 = 3; +pub const NETLINK_BROADCAST_ERROR: u32 = 4; +pub const NETLINK_NO_ENOBUFS: u32 = 5; +pub const NETLINK_RX_RING: u32 = 6; +pub const NETLINK_TX_RING: u32 = 7; +pub const NETLINK_LISTEN_ALL_NSID: u32 = 8; +pub const NETLINK_LIST_MEMBERSHIPS: u32 = 9; +pub const NETLINK_CAP_ACK: u32 = 10; +pub const NETLINK_EXT_ACK: u32 = 11; +pub const NETLINK_GET_STRICT_CHK: u32 = 12; +pub const NL_MMAP_MSG_ALIGNMENT: u32 = 4; +pub const NET_MAJOR: u32 = 36; +pub const NLA_F_NESTED: u32 = 32768; +pub const NLA_F_NET_BYTEORDER: u32 = 16384; +pub const NLA_TYPE_MASK: i32 = -49153; +pub const NLA_ALIGNTO: u32 = 4; +pub const NL80211_GENL_NAME: &[u8; 8] = b"nl80211\0"; +pub const NL80211_MULTICAST_GROUP_CONFIG: &[u8; 7] = b"config\0"; +pub const NL80211_MULTICAST_GROUP_SCAN: &[u8; 5] = b"scan\0"; +pub const NL80211_MULTICAST_GROUP_REG: &[u8; 11] = b"regulatory\0"; +pub const NL80211_MULTICAST_GROUP_MLME: &[u8; 5] = b"mlme\0"; +pub const NL80211_MULTICAST_GROUP_VENDOR: &[u8; 7] = b"vendor\0"; +pub const NL80211_MULTICAST_GROUP_NAN: &[u8; 4] = b"nan\0"; +pub const NL80211_MULTICAST_GROUP_TESTMODE: &[u8; 9] = b"testmode\0"; +pub const NL80211_EDMG_BW_CONFIG_MIN: u32 = 4; +pub const NL80211_EDMG_BW_CONFIG_MAX: u32 = 15; +pub const NL80211_EDMG_CHANNELS_MIN: u32 = 1; +pub const NL80211_EDMG_CHANNELS_MAX: u32 = 60; +pub const NL80211_WIPHY_NAME_MAXLEN: u32 = 64; +pub const NL80211_MAX_SUPP_RATES: u32 = 32; +pub const NL80211_MAX_SUPP_SELECTORS: u32 = 128; +pub const NL80211_MAX_SUPP_HT_RATES: u32 = 77; +pub const NL80211_MAX_SUPP_REG_RULES: u32 = 128; +pub const NL80211_TKIP_DATA_OFFSET_ENCR_KEY: u32 = 0; +pub const NL80211_TKIP_DATA_OFFSET_TX_MIC_KEY: u32 = 16; +pub const NL80211_TKIP_DATA_OFFSET_RX_MIC_KEY: u32 = 24; +pub const NL80211_HT_CAPABILITY_LEN: u32 = 26; +pub const NL80211_VHT_CAPABILITY_LEN: u32 = 12; +pub const NL80211_HE_MIN_CAPABILITY_LEN: u32 = 16; +pub const NL80211_HE_MAX_CAPABILITY_LEN: u32 = 54; +pub const NL80211_MAX_NR_CIPHER_SUITES: u32 = 5; +pub const NL80211_MAX_NR_AKM_SUITES: u32 = 2; +pub const NL80211_EHT_MIN_CAPABILITY_LEN: u32 = 13; +pub const NL80211_EHT_MAX_CAPABILITY_LEN: u32 = 51; +pub const NL80211_MIN_REMAIN_ON_CHANNEL_TIME: u32 = 10; +pub const NL80211_SCAN_RSSI_THOLD_OFF: i32 = -300; +pub const NL80211_CQM_TXE_MAX_INTVL: u32 = 1800; +pub const NL80211_VHT_NSS_MAX: u32 = 8; +pub const NL80211_HE_NSS_MAX: u32 = 8; +pub const NL80211_KCK_LEN: u32 = 16; +pub const NL80211_KEK_LEN: u32 = 16; +pub const NL80211_KCK_EXT_LEN: u32 = 24; +pub const NL80211_KEK_EXT_LEN: u32 = 32; +pub const NL80211_KCK_EXT_LEN_32: u32 = 32; +pub const NL80211_REPLAY_CTR_LEN: u32 = 8; +pub const NL80211_CRIT_PROTO_MAX_DURATION: u32 = 5000; +pub const NL80211_VENDOR_ID_IS_LINUX: u32 = 2147483648; +pub const NL80211_NAN_FUNC_SERVICE_ID_LEN: u32 = 6; +pub const NL80211_NAN_FUNC_SERVICE_SPEC_INFO_MAX_LEN: u32 = 255; +pub const NL80211_NAN_FUNC_SRF_MAX_LEN: u32 = 255; +pub const NL80211_FILS_DISCOVERY_TMPL_MIN_LEN: u32 = 42; +pub const MACVLAN_FLAG_NOPROMISC: u32 = 1; +pub const MACVLAN_FLAG_NODST: u32 = 2; +pub const IPVLAN_F_PRIVATE: u32 = 1; +pub const IPVLAN_F_VEPA: u32 = 2; +pub const TUNNEL_MSG_FLAG_STATS: u32 = 1; +pub const TUNNEL_MSG_VALID_USER_FLAGS: u32 = 1; +pub const MAX_VLAN_LIST_LEN: u32 = 1; +pub const PORT_PROFILE_MAX: u32 = 40; +pub const PORT_UUID_MAX: u32 = 16; +pub const PORT_SELF_VF: i32 = -1; +pub const XDP_FLAGS_UPDATE_IF_NOEXIST: u32 = 1; +pub const XDP_FLAGS_SKB_MODE: u32 = 2; +pub const XDP_FLAGS_DRV_MODE: u32 = 4; +pub const XDP_FLAGS_HW_MODE: u32 = 8; +pub const XDP_FLAGS_REPLACE: u32 = 16; +pub const XDP_FLAGS_MODES: u32 = 14; +pub const XDP_FLAGS_MASK: u32 = 31; +pub const RMNET_FLAGS_INGRESS_DEAGGREGATION: u32 = 1; +pub const RMNET_FLAGS_INGRESS_MAP_COMMANDS: u32 = 2; +pub const RMNET_FLAGS_INGRESS_MAP_CKSUMV4: u32 = 4; +pub const RMNET_FLAGS_EGRESS_MAP_CKSUMV4: u32 = 8; +pub const RMNET_FLAGS_INGRESS_MAP_CKSUMV5: u32 = 16; +pub const RMNET_FLAGS_EGRESS_MAP_CKSUMV5: u32 = 32; +pub const IFA_F_SECONDARY: u32 = 1; +pub const IFA_F_TEMPORARY: u32 = 1; +pub const IFA_F_NODAD: u32 = 2; +pub const IFA_F_OPTIMISTIC: u32 = 4; +pub const IFA_F_DADFAILED: u32 = 8; +pub const IFA_F_HOMEADDRESS: u32 = 16; +pub const IFA_F_DEPRECATED: u32 = 32; +pub const IFA_F_TENTATIVE: u32 = 64; +pub const IFA_F_PERMANENT: u32 = 128; +pub const IFA_F_MANAGETEMPADDR: u32 = 256; +pub const IFA_F_NOPREFIXROUTE: u32 = 512; +pub const IFA_F_MCAUTOJOIN: u32 = 1024; +pub const IFA_F_STABLE_PRIVACY: u32 = 2048; +pub const IFAPROT_UNSPEC: u32 = 0; +pub const IFAPROT_KERNEL_LO: u32 = 1; +pub const IFAPROT_KERNEL_RA: u32 = 2; +pub const IFAPROT_KERNEL_LL: u32 = 3; +pub const NTF_USE: u32 = 1; +pub const NTF_SELF: u32 = 2; +pub const NTF_MASTER: u32 = 4; +pub const NTF_PROXY: u32 = 8; +pub const NTF_EXT_LEARNED: u32 = 16; +pub const NTF_OFFLOADED: u32 = 32; +pub const NTF_STICKY: u32 = 64; +pub const NTF_ROUTER: u32 = 128; +pub const NTF_EXT_MANAGED: u32 = 1; +pub const NTF_EXT_LOCKED: u32 = 2; +pub const NTF_EXT_EXT_VALIDATED: u32 = 4; +pub const NUD_INCOMPLETE: u32 = 1; +pub const NUD_REACHABLE: u32 = 2; +pub const NUD_STALE: u32 = 4; +pub const NUD_DELAY: u32 = 8; +pub const NUD_PROBE: u32 = 16; +pub const NUD_FAILED: u32 = 32; +pub const NUD_NOARP: u32 = 64; +pub const NUD_PERMANENT: u32 = 128; +pub const NUD_NONE: u32 = 0; +pub const RTNL_FAMILY_IPMR: u32 = 128; +pub const RTNL_FAMILY_IP6MR: u32 = 129; +pub const RTNL_FAMILY_MAX: u32 = 129; +pub const RTA_ALIGNTO: u32 = 4; +pub const RTPROT_UNSPEC: u32 = 0; +pub const RTPROT_REDIRECT: u32 = 1; +pub const RTPROT_KERNEL: u32 = 2; +pub const RTPROT_BOOT: u32 = 3; +pub const RTPROT_STATIC: u32 = 4; +pub const RTPROT_GATED: u32 = 8; +pub const RTPROT_RA: u32 = 9; +pub const RTPROT_MRT: u32 = 10; +pub const RTPROT_ZEBRA: u32 = 11; +pub const RTPROT_BIRD: u32 = 12; +pub const RTPROT_DNROUTED: u32 = 13; +pub const RTPROT_XORP: u32 = 14; +pub const RTPROT_NTK: u32 = 15; +pub const RTPROT_DHCP: u32 = 16; +pub const RTPROT_MROUTED: u32 = 17; +pub const RTPROT_KEEPALIVED: u32 = 18; +pub const RTPROT_BABEL: u32 = 42; +pub const RTPROT_OVN: u32 = 84; +pub const RTPROT_OPENR: u32 = 99; +pub const RTPROT_BGP: u32 = 186; +pub const RTPROT_ISIS: u32 = 187; +pub const RTPROT_OSPF: u32 = 188; +pub const RTPROT_RIP: u32 = 189; +pub const RTPROT_EIGRP: u32 = 192; +pub const RTM_F_NOTIFY: u32 = 256; +pub const RTM_F_CLONED: u32 = 512; +pub const RTM_F_EQUALIZE: u32 = 1024; +pub const RTM_F_PREFIX: u32 = 2048; +pub const RTM_F_LOOKUP_TABLE: u32 = 4096; +pub const RTM_F_FIB_MATCH: u32 = 8192; +pub const RTM_F_OFFLOAD: u32 = 16384; +pub const RTM_F_TRAP: u32 = 32768; +pub const RTM_F_OFFLOAD_FAILED: u32 = 536870912; +pub const RTNH_F_DEAD: u32 = 1; +pub const RTNH_F_PERVASIVE: u32 = 2; +pub const RTNH_F_ONLINK: u32 = 4; +pub const RTNH_F_OFFLOAD: u32 = 8; +pub const RTNH_F_LINKDOWN: u32 = 16; +pub const RTNH_F_UNRESOLVED: u32 = 32; +pub const RTNH_F_TRAP: u32 = 64; +pub const RTNH_COMPARE_MASK: u32 = 89; +pub const RTNH_ALIGNTO: u32 = 4; +pub const RTNETLINK_HAVE_PEERINFO: u32 = 1; +pub const RTAX_FEATURE_ECN: u32 = 1; +pub const RTAX_FEATURE_SACK: u32 = 2; +pub const RTAX_FEATURE_TIMESTAMP: u32 = 4; +pub const RTAX_FEATURE_ALLFRAG: u32 = 8; +pub const RTAX_FEATURE_TCP_USEC_TS: u32 = 16; +pub const RTAX_FEATURE_MASK: u32 = 31; +pub const TCM_IFINDEX_MAGIC_BLOCK: u32 = 4294967295; +pub const TCA_DUMP_FLAGS_TERSE: u32 = 1; +pub const RTMGRP_LINK: u32 = 1; +pub const RTMGRP_NOTIFY: u32 = 2; +pub const RTMGRP_NEIGH: u32 = 4; +pub const RTMGRP_TC: u32 = 8; +pub const RTMGRP_IPV4_IFADDR: u32 = 16; +pub const RTMGRP_IPV4_MROUTE: u32 = 32; +pub const RTMGRP_IPV4_ROUTE: u32 = 64; +pub const RTMGRP_IPV4_RULE: u32 = 128; +pub const RTMGRP_IPV6_IFADDR: u32 = 256; +pub const RTMGRP_IPV6_MROUTE: u32 = 512; +pub const RTMGRP_IPV6_ROUTE: u32 = 1024; +pub const RTMGRP_IPV6_IFINFO: u32 = 2048; +pub const RTMGRP_DECnet_IFADDR: u32 = 4096; +pub const RTMGRP_DECnet_ROUTE: u32 = 16384; +pub const RTMGRP_IPV6_PREFIX: u32 = 131072; +pub const TCA_FLAG_LARGE_DUMP_ON: u32 = 1; +pub const TCA_ACT_FLAG_LARGE_DUMP_ON: u32 = 1; +pub const TCA_ACT_FLAG_TERSE_DUMP: u32 = 2; +pub const RTEXT_FILTER_VF: u32 = 1; +pub const RTEXT_FILTER_BRVLAN: u32 = 2; +pub const RTEXT_FILTER_BRVLAN_COMPRESSED: u32 = 4; +pub const RTEXT_FILTER_SKIP_STATS: u32 = 8; +pub const RTEXT_FILTER_MRP: u32 = 16; +pub const RTEXT_FILTER_CFM_CONFIG: u32 = 32; +pub const RTEXT_FILTER_CFM_STATUS: u32 = 64; +pub const RTEXT_FILTER_MST: u32 = 128; +pub const NETLINK_UNCONNECTED: _bindgen_ty_1 = _bindgen_ty_1::NETLINK_UNCONNECTED; +pub const NETLINK_CONNECTED: _bindgen_ty_1 = _bindgen_ty_1::NETLINK_CONNECTED; +pub const IFLA_UNSPEC: _bindgen_ty_2 = _bindgen_ty_2::IFLA_UNSPEC; +pub const IFLA_ADDRESS: _bindgen_ty_2 = _bindgen_ty_2::IFLA_ADDRESS; +pub const IFLA_BROADCAST: _bindgen_ty_2 = _bindgen_ty_2::IFLA_BROADCAST; +pub const IFLA_IFNAME: _bindgen_ty_2 = _bindgen_ty_2::IFLA_IFNAME; +pub const IFLA_MTU: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MTU; +pub const IFLA_LINK: _bindgen_ty_2 = _bindgen_ty_2::IFLA_LINK; +pub const IFLA_QDISC: _bindgen_ty_2 = _bindgen_ty_2::IFLA_QDISC; +pub const IFLA_STATS: _bindgen_ty_2 = _bindgen_ty_2::IFLA_STATS; +pub const IFLA_COST: _bindgen_ty_2 = _bindgen_ty_2::IFLA_COST; +pub const IFLA_PRIORITY: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PRIORITY; +pub const IFLA_MASTER: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MASTER; +pub const IFLA_WIRELESS: _bindgen_ty_2 = _bindgen_ty_2::IFLA_WIRELESS; +pub const IFLA_PROTINFO: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PROTINFO; +pub const IFLA_TXQLEN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_TXQLEN; +pub const IFLA_MAP: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAP; +pub const IFLA_WEIGHT: _bindgen_ty_2 = _bindgen_ty_2::IFLA_WEIGHT; +pub const IFLA_OPERSTATE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_OPERSTATE; +pub const IFLA_LINKMODE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_LINKMODE; +pub const IFLA_LINKINFO: _bindgen_ty_2 = _bindgen_ty_2::IFLA_LINKINFO; +pub const IFLA_NET_NS_PID: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NET_NS_PID; +pub const IFLA_IFALIAS: _bindgen_ty_2 = _bindgen_ty_2::IFLA_IFALIAS; +pub const IFLA_NUM_VF: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NUM_VF; +pub const IFLA_VFINFO_LIST: _bindgen_ty_2 = _bindgen_ty_2::IFLA_VFINFO_LIST; +pub const IFLA_STATS64: _bindgen_ty_2 = _bindgen_ty_2::IFLA_STATS64; +pub const IFLA_VF_PORTS: _bindgen_ty_2 = _bindgen_ty_2::IFLA_VF_PORTS; +pub const IFLA_PORT_SELF: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PORT_SELF; +pub const IFLA_AF_SPEC: _bindgen_ty_2 = _bindgen_ty_2::IFLA_AF_SPEC; +pub const IFLA_GROUP: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GROUP; +pub const IFLA_NET_NS_FD: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NET_NS_FD; +pub const IFLA_EXT_MASK: _bindgen_ty_2 = _bindgen_ty_2::IFLA_EXT_MASK; +pub const IFLA_PROMISCUITY: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PROMISCUITY; +pub const IFLA_NUM_TX_QUEUES: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NUM_TX_QUEUES; +pub const IFLA_NUM_RX_QUEUES: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NUM_RX_QUEUES; +pub const IFLA_CARRIER: _bindgen_ty_2 = _bindgen_ty_2::IFLA_CARRIER; +pub const IFLA_PHYS_PORT_ID: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PHYS_PORT_ID; +pub const IFLA_CARRIER_CHANGES: _bindgen_ty_2 = _bindgen_ty_2::IFLA_CARRIER_CHANGES; +pub const IFLA_PHYS_SWITCH_ID: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PHYS_SWITCH_ID; +pub const IFLA_LINK_NETNSID: _bindgen_ty_2 = _bindgen_ty_2::IFLA_LINK_NETNSID; +pub const IFLA_PHYS_PORT_NAME: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PHYS_PORT_NAME; +pub const IFLA_PROTO_DOWN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PROTO_DOWN; +pub const IFLA_GSO_MAX_SEGS: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_MAX_SEGS; +pub const IFLA_GSO_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_MAX_SIZE; +pub const IFLA_PAD: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PAD; +pub const IFLA_XDP: _bindgen_ty_2 = _bindgen_ty_2::IFLA_XDP; +pub const IFLA_EVENT: _bindgen_ty_2 = _bindgen_ty_2::IFLA_EVENT; +pub const IFLA_NEW_NETNSID: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NEW_NETNSID; +pub const IFLA_IF_NETNSID: _bindgen_ty_2 = _bindgen_ty_2::IFLA_IF_NETNSID; +pub const IFLA_TARGET_NETNSID: _bindgen_ty_2 = _bindgen_ty_2::IFLA_IF_NETNSID; +pub const IFLA_CARRIER_UP_COUNT: _bindgen_ty_2 = _bindgen_ty_2::IFLA_CARRIER_UP_COUNT; +pub const IFLA_CARRIER_DOWN_COUNT: _bindgen_ty_2 = _bindgen_ty_2::IFLA_CARRIER_DOWN_COUNT; +pub const IFLA_NEW_IFINDEX: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NEW_IFINDEX; +pub const IFLA_MIN_MTU: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MIN_MTU; +pub const IFLA_MAX_MTU: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_MTU; +pub const IFLA_PROP_LIST: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PROP_LIST; +pub const IFLA_ALT_IFNAME: _bindgen_ty_2 = _bindgen_ty_2::IFLA_ALT_IFNAME; +pub const IFLA_PERM_ADDRESS: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PERM_ADDRESS; +pub const IFLA_PROTO_DOWN_REASON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PROTO_DOWN_REASON; +pub const IFLA_PARENT_DEV_NAME: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PARENT_DEV_NAME; +pub const IFLA_PARENT_DEV_BUS_NAME: _bindgen_ty_2 = _bindgen_ty_2::IFLA_PARENT_DEV_BUS_NAME; +pub const IFLA_GRO_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_MAX_SIZE; +pub const IFLA_TSO_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_TSO_MAX_SIZE; +pub const IFLA_TSO_MAX_SEGS: _bindgen_ty_2 = _bindgen_ty_2::IFLA_TSO_MAX_SEGS; +pub const IFLA_ALLMULTI: _bindgen_ty_2 = _bindgen_ty_2::IFLA_ALLMULTI; +pub const IFLA_DEVLINK_PORT: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DEVLINK_PORT; +pub const IFLA_GSO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GSO_IPV4_MAX_SIZE; +pub const IFLA_GRO_IPV4_MAX_SIZE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_GRO_IPV4_MAX_SIZE; +pub const IFLA_DPLL_PIN: _bindgen_ty_2 = _bindgen_ty_2::IFLA_DPLL_PIN; +pub const IFLA_MAX_PACING_OFFLOAD_HORIZON: _bindgen_ty_2 = _bindgen_ty_2::IFLA_MAX_PACING_OFFLOAD_HORIZON; +pub const IFLA_NETNS_IMMUTABLE: _bindgen_ty_2 = _bindgen_ty_2::IFLA_NETNS_IMMUTABLE; +pub const __IFLA_MAX: _bindgen_ty_2 = _bindgen_ty_2::__IFLA_MAX; +pub const IFLA_PROTO_DOWN_REASON_UNSPEC: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_UNSPEC; +pub const IFLA_PROTO_DOWN_REASON_MASK: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_MASK; +pub const IFLA_PROTO_DOWN_REASON_VALUE: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_VALUE; +pub const __IFLA_PROTO_DOWN_REASON_CNT: _bindgen_ty_3 = _bindgen_ty_3::__IFLA_PROTO_DOWN_REASON_CNT; +pub const IFLA_PROTO_DOWN_REASON_MAX: _bindgen_ty_3 = _bindgen_ty_3::IFLA_PROTO_DOWN_REASON_VALUE; +pub const IFLA_INET_UNSPEC: _bindgen_ty_4 = _bindgen_ty_4::IFLA_INET_UNSPEC; +pub const IFLA_INET_CONF: _bindgen_ty_4 = _bindgen_ty_4::IFLA_INET_CONF; +pub const __IFLA_INET_MAX: _bindgen_ty_4 = _bindgen_ty_4::__IFLA_INET_MAX; +pub const IFLA_INET6_UNSPEC: _bindgen_ty_5 = _bindgen_ty_5::IFLA_INET6_UNSPEC; +pub const IFLA_INET6_FLAGS: _bindgen_ty_5 = _bindgen_ty_5::IFLA_INET6_FLAGS; +pub const IFLA_INET6_CONF: _bindgen_ty_5 = _bindgen_ty_5::IFLA_INET6_CONF; +pub const IFLA_INET6_STATS: _bindgen_ty_5 = _bindgen_ty_5::IFLA_INET6_STATS; +pub const IFLA_INET6_MCAST: _bindgen_ty_5 = _bindgen_ty_5::IFLA_INET6_MCAST; +pub const IFLA_INET6_CACHEINFO: _bindgen_ty_5 = _bindgen_ty_5::IFLA_INET6_CACHEINFO; +pub const IFLA_INET6_ICMP6STATS: _bindgen_ty_5 = _bindgen_ty_5::IFLA_INET6_ICMP6STATS; +pub const IFLA_INET6_TOKEN: _bindgen_ty_5 = _bindgen_ty_5::IFLA_INET6_TOKEN; +pub const IFLA_INET6_ADDR_GEN_MODE: _bindgen_ty_5 = _bindgen_ty_5::IFLA_INET6_ADDR_GEN_MODE; +pub const IFLA_INET6_RA_MTU: _bindgen_ty_5 = _bindgen_ty_5::IFLA_INET6_RA_MTU; +pub const __IFLA_INET6_MAX: _bindgen_ty_5 = _bindgen_ty_5::__IFLA_INET6_MAX; +pub const IFLA_BR_UNSPEC: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_UNSPEC; +pub const IFLA_BR_FORWARD_DELAY: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_FORWARD_DELAY; +pub const IFLA_BR_HELLO_TIME: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_HELLO_TIME; +pub const IFLA_BR_MAX_AGE: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MAX_AGE; +pub const IFLA_BR_AGEING_TIME: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_AGEING_TIME; +pub const IFLA_BR_STP_STATE: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_STP_STATE; +pub const IFLA_BR_PRIORITY: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_PRIORITY; +pub const IFLA_BR_VLAN_FILTERING: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_VLAN_FILTERING; +pub const IFLA_BR_VLAN_PROTOCOL: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_VLAN_PROTOCOL; +pub const IFLA_BR_GROUP_FWD_MASK: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_GROUP_FWD_MASK; +pub const IFLA_BR_ROOT_ID: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_ROOT_ID; +pub const IFLA_BR_BRIDGE_ID: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_BRIDGE_ID; +pub const IFLA_BR_ROOT_PORT: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_ROOT_PORT; +pub const IFLA_BR_ROOT_PATH_COST: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_ROOT_PATH_COST; +pub const IFLA_BR_TOPOLOGY_CHANGE: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_TOPOLOGY_CHANGE; +pub const IFLA_BR_TOPOLOGY_CHANGE_DETECTED: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_TOPOLOGY_CHANGE_DETECTED; +pub const IFLA_BR_HELLO_TIMER: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_HELLO_TIMER; +pub const IFLA_BR_TCN_TIMER: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_TCN_TIMER; +pub const IFLA_BR_TOPOLOGY_CHANGE_TIMER: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_TOPOLOGY_CHANGE_TIMER; +pub const IFLA_BR_GC_TIMER: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_GC_TIMER; +pub const IFLA_BR_GROUP_ADDR: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_GROUP_ADDR; +pub const IFLA_BR_FDB_FLUSH: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_FDB_FLUSH; +pub const IFLA_BR_MCAST_ROUTER: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_ROUTER; +pub const IFLA_BR_MCAST_SNOOPING: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_SNOOPING; +pub const IFLA_BR_MCAST_QUERY_USE_IFADDR: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_QUERY_USE_IFADDR; +pub const IFLA_BR_MCAST_QUERIER: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_QUERIER; +pub const IFLA_BR_MCAST_HASH_ELASTICITY: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_HASH_ELASTICITY; +pub const IFLA_BR_MCAST_HASH_MAX: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_HASH_MAX; +pub const IFLA_BR_MCAST_LAST_MEMBER_CNT: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_LAST_MEMBER_CNT; +pub const IFLA_BR_MCAST_STARTUP_QUERY_CNT: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_STARTUP_QUERY_CNT; +pub const IFLA_BR_MCAST_LAST_MEMBER_INTVL: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_LAST_MEMBER_INTVL; +pub const IFLA_BR_MCAST_MEMBERSHIP_INTVL: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_MEMBERSHIP_INTVL; +pub const IFLA_BR_MCAST_QUERIER_INTVL: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_QUERIER_INTVL; +pub const IFLA_BR_MCAST_QUERY_INTVL: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_QUERY_INTVL; +pub const IFLA_BR_MCAST_QUERY_RESPONSE_INTVL: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_QUERY_RESPONSE_INTVL; +pub const IFLA_BR_MCAST_STARTUP_QUERY_INTVL: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_STARTUP_QUERY_INTVL; +pub const IFLA_BR_NF_CALL_IPTABLES: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_NF_CALL_IPTABLES; +pub const IFLA_BR_NF_CALL_IP6TABLES: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_NF_CALL_IP6TABLES; +pub const IFLA_BR_NF_CALL_ARPTABLES: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_NF_CALL_ARPTABLES; +pub const IFLA_BR_VLAN_DEFAULT_PVID: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_VLAN_DEFAULT_PVID; +pub const IFLA_BR_PAD: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_PAD; +pub const IFLA_BR_VLAN_STATS_ENABLED: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_VLAN_STATS_ENABLED; +pub const IFLA_BR_MCAST_STATS_ENABLED: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_STATS_ENABLED; +pub const IFLA_BR_MCAST_IGMP_VERSION: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_IGMP_VERSION; +pub const IFLA_BR_MCAST_MLD_VERSION: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_MLD_VERSION; +pub const IFLA_BR_VLAN_STATS_PER_PORT: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_VLAN_STATS_PER_PORT; +pub const IFLA_BR_MULTI_BOOLOPT: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MULTI_BOOLOPT; +pub const IFLA_BR_MCAST_QUERIER_STATE: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_MCAST_QUERIER_STATE; +pub const IFLA_BR_FDB_N_LEARNED: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_FDB_N_LEARNED; +pub const IFLA_BR_FDB_MAX_LEARNED: _bindgen_ty_6 = _bindgen_ty_6::IFLA_BR_FDB_MAX_LEARNED; +pub const __IFLA_BR_MAX: _bindgen_ty_6 = _bindgen_ty_6::__IFLA_BR_MAX; +pub const BRIDGE_MODE_UNSPEC: _bindgen_ty_7 = _bindgen_ty_7::BRIDGE_MODE_UNSPEC; +pub const BRIDGE_MODE_HAIRPIN: _bindgen_ty_7 = _bindgen_ty_7::BRIDGE_MODE_HAIRPIN; +pub const IFLA_BRPORT_UNSPEC: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_UNSPEC; +pub const IFLA_BRPORT_STATE: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_STATE; +pub const IFLA_BRPORT_PRIORITY: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_PRIORITY; +pub const IFLA_BRPORT_COST: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_COST; +pub const IFLA_BRPORT_MODE: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_MODE; +pub const IFLA_BRPORT_GUARD: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_GUARD; +pub const IFLA_BRPORT_PROTECT: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_PROTECT; +pub const IFLA_BRPORT_FAST_LEAVE: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_FAST_LEAVE; +pub const IFLA_BRPORT_LEARNING: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_LEARNING; +pub const IFLA_BRPORT_UNICAST_FLOOD: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_UNICAST_FLOOD; +pub const IFLA_BRPORT_PROXYARP: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_PROXYARP; +pub const IFLA_BRPORT_LEARNING_SYNC: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_LEARNING_SYNC; +pub const IFLA_BRPORT_PROXYARP_WIFI: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_PROXYARP_WIFI; +pub const IFLA_BRPORT_ROOT_ID: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_ROOT_ID; +pub const IFLA_BRPORT_BRIDGE_ID: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_BRIDGE_ID; +pub const IFLA_BRPORT_DESIGNATED_PORT: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_DESIGNATED_PORT; +pub const IFLA_BRPORT_DESIGNATED_COST: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_DESIGNATED_COST; +pub const IFLA_BRPORT_ID: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_ID; +pub const IFLA_BRPORT_NO: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_NO; +pub const IFLA_BRPORT_TOPOLOGY_CHANGE_ACK: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_TOPOLOGY_CHANGE_ACK; +pub const IFLA_BRPORT_CONFIG_PENDING: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_CONFIG_PENDING; +pub const IFLA_BRPORT_MESSAGE_AGE_TIMER: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_MESSAGE_AGE_TIMER; +pub const IFLA_BRPORT_FORWARD_DELAY_TIMER: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_FORWARD_DELAY_TIMER; +pub const IFLA_BRPORT_HOLD_TIMER: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_HOLD_TIMER; +pub const IFLA_BRPORT_FLUSH: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_FLUSH; +pub const IFLA_BRPORT_MULTICAST_ROUTER: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_MULTICAST_ROUTER; +pub const IFLA_BRPORT_PAD: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_PAD; +pub const IFLA_BRPORT_MCAST_FLOOD: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_MCAST_FLOOD; +pub const IFLA_BRPORT_MCAST_TO_UCAST: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_MCAST_TO_UCAST; +pub const IFLA_BRPORT_VLAN_TUNNEL: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_VLAN_TUNNEL; +pub const IFLA_BRPORT_BCAST_FLOOD: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_BCAST_FLOOD; +pub const IFLA_BRPORT_GROUP_FWD_MASK: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_GROUP_FWD_MASK; +pub const IFLA_BRPORT_NEIGH_SUPPRESS: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_NEIGH_SUPPRESS; +pub const IFLA_BRPORT_ISOLATED: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_ISOLATED; +pub const IFLA_BRPORT_BACKUP_PORT: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_BACKUP_PORT; +pub const IFLA_BRPORT_MRP_RING_OPEN: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_MRP_RING_OPEN; +pub const IFLA_BRPORT_MRP_IN_OPEN: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_MRP_IN_OPEN; +pub const IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT; +pub const IFLA_BRPORT_MCAST_EHT_HOSTS_CNT: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_MCAST_EHT_HOSTS_CNT; +pub const IFLA_BRPORT_LOCKED: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_LOCKED; +pub const IFLA_BRPORT_MAB: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_MAB; +pub const IFLA_BRPORT_MCAST_N_GROUPS: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_MCAST_N_GROUPS; +pub const IFLA_BRPORT_MCAST_MAX_GROUPS: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_MCAST_MAX_GROUPS; +pub const IFLA_BRPORT_NEIGH_VLAN_SUPPRESS: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_NEIGH_VLAN_SUPPRESS; +pub const IFLA_BRPORT_BACKUP_NHID: _bindgen_ty_8 = _bindgen_ty_8::IFLA_BRPORT_BACKUP_NHID; +pub const __IFLA_BRPORT_MAX: _bindgen_ty_8 = _bindgen_ty_8::__IFLA_BRPORT_MAX; +pub const IFLA_INFO_UNSPEC: _bindgen_ty_9 = _bindgen_ty_9::IFLA_INFO_UNSPEC; +pub const IFLA_INFO_KIND: _bindgen_ty_9 = _bindgen_ty_9::IFLA_INFO_KIND; +pub const IFLA_INFO_DATA: _bindgen_ty_9 = _bindgen_ty_9::IFLA_INFO_DATA; +pub const IFLA_INFO_XSTATS: _bindgen_ty_9 = _bindgen_ty_9::IFLA_INFO_XSTATS; +pub const IFLA_INFO_SLAVE_KIND: _bindgen_ty_9 = _bindgen_ty_9::IFLA_INFO_SLAVE_KIND; +pub const IFLA_INFO_SLAVE_DATA: _bindgen_ty_9 = _bindgen_ty_9::IFLA_INFO_SLAVE_DATA; +pub const __IFLA_INFO_MAX: _bindgen_ty_9 = _bindgen_ty_9::__IFLA_INFO_MAX; +pub const IFLA_VLAN_UNSPEC: _bindgen_ty_10 = _bindgen_ty_10::IFLA_VLAN_UNSPEC; +pub const IFLA_VLAN_ID: _bindgen_ty_10 = _bindgen_ty_10::IFLA_VLAN_ID; +pub const IFLA_VLAN_FLAGS: _bindgen_ty_10 = _bindgen_ty_10::IFLA_VLAN_FLAGS; +pub const IFLA_VLAN_EGRESS_QOS: _bindgen_ty_10 = _bindgen_ty_10::IFLA_VLAN_EGRESS_QOS; +pub const IFLA_VLAN_INGRESS_QOS: _bindgen_ty_10 = _bindgen_ty_10::IFLA_VLAN_INGRESS_QOS; +pub const IFLA_VLAN_PROTOCOL: _bindgen_ty_10 = _bindgen_ty_10::IFLA_VLAN_PROTOCOL; +pub const __IFLA_VLAN_MAX: _bindgen_ty_10 = _bindgen_ty_10::__IFLA_VLAN_MAX; +pub const IFLA_VLAN_QOS_UNSPEC: _bindgen_ty_11 = _bindgen_ty_11::IFLA_VLAN_QOS_UNSPEC; +pub const IFLA_VLAN_QOS_MAPPING: _bindgen_ty_11 = _bindgen_ty_11::IFLA_VLAN_QOS_MAPPING; +pub const __IFLA_VLAN_QOS_MAX: _bindgen_ty_11 = _bindgen_ty_11::__IFLA_VLAN_QOS_MAX; +pub const IFLA_MACVLAN_UNSPEC: _bindgen_ty_12 = _bindgen_ty_12::IFLA_MACVLAN_UNSPEC; +pub const IFLA_MACVLAN_MODE: _bindgen_ty_12 = _bindgen_ty_12::IFLA_MACVLAN_MODE; +pub const IFLA_MACVLAN_FLAGS: _bindgen_ty_12 = _bindgen_ty_12::IFLA_MACVLAN_FLAGS; +pub const IFLA_MACVLAN_MACADDR_MODE: _bindgen_ty_12 = _bindgen_ty_12::IFLA_MACVLAN_MACADDR_MODE; +pub const IFLA_MACVLAN_MACADDR: _bindgen_ty_12 = _bindgen_ty_12::IFLA_MACVLAN_MACADDR; +pub const IFLA_MACVLAN_MACADDR_DATA: _bindgen_ty_12 = _bindgen_ty_12::IFLA_MACVLAN_MACADDR_DATA; +pub const IFLA_MACVLAN_MACADDR_COUNT: _bindgen_ty_12 = _bindgen_ty_12::IFLA_MACVLAN_MACADDR_COUNT; +pub const IFLA_MACVLAN_BC_QUEUE_LEN: _bindgen_ty_12 = _bindgen_ty_12::IFLA_MACVLAN_BC_QUEUE_LEN; +pub const IFLA_MACVLAN_BC_QUEUE_LEN_USED: _bindgen_ty_12 = _bindgen_ty_12::IFLA_MACVLAN_BC_QUEUE_LEN_USED; +pub const IFLA_MACVLAN_BC_CUTOFF: _bindgen_ty_12 = _bindgen_ty_12::IFLA_MACVLAN_BC_CUTOFF; +pub const __IFLA_MACVLAN_MAX: _bindgen_ty_12 = _bindgen_ty_12::__IFLA_MACVLAN_MAX; +pub const IFLA_VRF_UNSPEC: _bindgen_ty_13 = _bindgen_ty_13::IFLA_VRF_UNSPEC; +pub const IFLA_VRF_TABLE: _bindgen_ty_13 = _bindgen_ty_13::IFLA_VRF_TABLE; +pub const __IFLA_VRF_MAX: _bindgen_ty_13 = _bindgen_ty_13::__IFLA_VRF_MAX; +pub const IFLA_VRF_PORT_UNSPEC: _bindgen_ty_14 = _bindgen_ty_14::IFLA_VRF_PORT_UNSPEC; +pub const IFLA_VRF_PORT_TABLE: _bindgen_ty_14 = _bindgen_ty_14::IFLA_VRF_PORT_TABLE; +pub const __IFLA_VRF_PORT_MAX: _bindgen_ty_14 = _bindgen_ty_14::__IFLA_VRF_PORT_MAX; +pub const IFLA_MACSEC_UNSPEC: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_UNSPEC; +pub const IFLA_MACSEC_SCI: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_SCI; +pub const IFLA_MACSEC_PORT: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_PORT; +pub const IFLA_MACSEC_ICV_LEN: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_ICV_LEN; +pub const IFLA_MACSEC_CIPHER_SUITE: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_CIPHER_SUITE; +pub const IFLA_MACSEC_WINDOW: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_WINDOW; +pub const IFLA_MACSEC_ENCODING_SA: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_ENCODING_SA; +pub const IFLA_MACSEC_ENCRYPT: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_ENCRYPT; +pub const IFLA_MACSEC_PROTECT: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_PROTECT; +pub const IFLA_MACSEC_INC_SCI: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_INC_SCI; +pub const IFLA_MACSEC_ES: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_ES; +pub const IFLA_MACSEC_SCB: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_SCB; +pub const IFLA_MACSEC_REPLAY_PROTECT: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_REPLAY_PROTECT; +pub const IFLA_MACSEC_VALIDATION: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_VALIDATION; +pub const IFLA_MACSEC_PAD: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_PAD; +pub const IFLA_MACSEC_OFFLOAD: _bindgen_ty_15 = _bindgen_ty_15::IFLA_MACSEC_OFFLOAD; +pub const __IFLA_MACSEC_MAX: _bindgen_ty_15 = _bindgen_ty_15::__IFLA_MACSEC_MAX; +pub const IFLA_XFRM_UNSPEC: _bindgen_ty_16 = _bindgen_ty_16::IFLA_XFRM_UNSPEC; +pub const IFLA_XFRM_LINK: _bindgen_ty_16 = _bindgen_ty_16::IFLA_XFRM_LINK; +pub const IFLA_XFRM_IF_ID: _bindgen_ty_16 = _bindgen_ty_16::IFLA_XFRM_IF_ID; +pub const IFLA_XFRM_COLLECT_METADATA: _bindgen_ty_16 = _bindgen_ty_16::IFLA_XFRM_COLLECT_METADATA; +pub const __IFLA_XFRM_MAX: _bindgen_ty_16 = _bindgen_ty_16::__IFLA_XFRM_MAX; +pub const IFLA_IPVLAN_UNSPEC: _bindgen_ty_17 = _bindgen_ty_17::IFLA_IPVLAN_UNSPEC; +pub const IFLA_IPVLAN_MODE: _bindgen_ty_17 = _bindgen_ty_17::IFLA_IPVLAN_MODE; +pub const IFLA_IPVLAN_FLAGS: _bindgen_ty_17 = _bindgen_ty_17::IFLA_IPVLAN_FLAGS; +pub const __IFLA_IPVLAN_MAX: _bindgen_ty_17 = _bindgen_ty_17::__IFLA_IPVLAN_MAX; +pub const IFLA_NETKIT_UNSPEC: _bindgen_ty_18 = _bindgen_ty_18::IFLA_NETKIT_UNSPEC; +pub const IFLA_NETKIT_PEER_INFO: _bindgen_ty_18 = _bindgen_ty_18::IFLA_NETKIT_PEER_INFO; +pub const IFLA_NETKIT_PRIMARY: _bindgen_ty_18 = _bindgen_ty_18::IFLA_NETKIT_PRIMARY; +pub const IFLA_NETKIT_POLICY: _bindgen_ty_18 = _bindgen_ty_18::IFLA_NETKIT_POLICY; +pub const IFLA_NETKIT_PEER_POLICY: _bindgen_ty_18 = _bindgen_ty_18::IFLA_NETKIT_PEER_POLICY; +pub const IFLA_NETKIT_MODE: _bindgen_ty_18 = _bindgen_ty_18::IFLA_NETKIT_MODE; +pub const IFLA_NETKIT_SCRUB: _bindgen_ty_18 = _bindgen_ty_18::IFLA_NETKIT_SCRUB; +pub const IFLA_NETKIT_PEER_SCRUB: _bindgen_ty_18 = _bindgen_ty_18::IFLA_NETKIT_PEER_SCRUB; +pub const IFLA_NETKIT_HEADROOM: _bindgen_ty_18 = _bindgen_ty_18::IFLA_NETKIT_HEADROOM; +pub const IFLA_NETKIT_TAILROOM: _bindgen_ty_18 = _bindgen_ty_18::IFLA_NETKIT_TAILROOM; +pub const __IFLA_NETKIT_MAX: _bindgen_ty_18 = _bindgen_ty_18::__IFLA_NETKIT_MAX; +pub const VNIFILTER_ENTRY_STATS_UNSPEC: _bindgen_ty_19 = _bindgen_ty_19::VNIFILTER_ENTRY_STATS_UNSPEC; +pub const VNIFILTER_ENTRY_STATS_RX_BYTES: _bindgen_ty_19 = _bindgen_ty_19::VNIFILTER_ENTRY_STATS_RX_BYTES; +pub const VNIFILTER_ENTRY_STATS_RX_PKTS: _bindgen_ty_19 = _bindgen_ty_19::VNIFILTER_ENTRY_STATS_RX_PKTS; +pub const VNIFILTER_ENTRY_STATS_RX_DROPS: _bindgen_ty_19 = _bindgen_ty_19::VNIFILTER_ENTRY_STATS_RX_DROPS; +pub const VNIFILTER_ENTRY_STATS_RX_ERRORS: _bindgen_ty_19 = _bindgen_ty_19::VNIFILTER_ENTRY_STATS_RX_ERRORS; +pub const VNIFILTER_ENTRY_STATS_TX_BYTES: _bindgen_ty_19 = _bindgen_ty_19::VNIFILTER_ENTRY_STATS_TX_BYTES; +pub const VNIFILTER_ENTRY_STATS_TX_PKTS: _bindgen_ty_19 = _bindgen_ty_19::VNIFILTER_ENTRY_STATS_TX_PKTS; +pub const VNIFILTER_ENTRY_STATS_TX_DROPS: _bindgen_ty_19 = _bindgen_ty_19::VNIFILTER_ENTRY_STATS_TX_DROPS; +pub const VNIFILTER_ENTRY_STATS_TX_ERRORS: _bindgen_ty_19 = _bindgen_ty_19::VNIFILTER_ENTRY_STATS_TX_ERRORS; +pub const VNIFILTER_ENTRY_STATS_PAD: _bindgen_ty_19 = _bindgen_ty_19::VNIFILTER_ENTRY_STATS_PAD; +pub const __VNIFILTER_ENTRY_STATS_MAX: _bindgen_ty_19 = _bindgen_ty_19::__VNIFILTER_ENTRY_STATS_MAX; +pub const VXLAN_VNIFILTER_ENTRY_UNSPEC: _bindgen_ty_20 = _bindgen_ty_20::VXLAN_VNIFILTER_ENTRY_UNSPEC; +pub const VXLAN_VNIFILTER_ENTRY_START: _bindgen_ty_20 = _bindgen_ty_20::VXLAN_VNIFILTER_ENTRY_START; +pub const VXLAN_VNIFILTER_ENTRY_END: _bindgen_ty_20 = _bindgen_ty_20::VXLAN_VNIFILTER_ENTRY_END; +pub const VXLAN_VNIFILTER_ENTRY_GROUP: _bindgen_ty_20 = _bindgen_ty_20::VXLAN_VNIFILTER_ENTRY_GROUP; +pub const VXLAN_VNIFILTER_ENTRY_GROUP6: _bindgen_ty_20 = _bindgen_ty_20::VXLAN_VNIFILTER_ENTRY_GROUP6; +pub const VXLAN_VNIFILTER_ENTRY_STATS: _bindgen_ty_20 = _bindgen_ty_20::VXLAN_VNIFILTER_ENTRY_STATS; +pub const __VXLAN_VNIFILTER_ENTRY_MAX: _bindgen_ty_20 = _bindgen_ty_20::__VXLAN_VNIFILTER_ENTRY_MAX; +pub const VXLAN_VNIFILTER_UNSPEC: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_UNSPEC; +pub const VXLAN_VNIFILTER_ENTRY: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY; +pub const __VXLAN_VNIFILTER_MAX: _bindgen_ty_21 = _bindgen_ty_21::__VXLAN_VNIFILTER_MAX; +pub const IFLA_VXLAN_UNSPEC: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_UNSPEC; +pub const IFLA_VXLAN_ID: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_ID; +pub const IFLA_VXLAN_GROUP: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_GROUP; +pub const IFLA_VXLAN_LINK: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_LINK; +pub const IFLA_VXLAN_LOCAL: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_LOCAL; +pub const IFLA_VXLAN_TTL: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_TTL; +pub const IFLA_VXLAN_TOS: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_TOS; +pub const IFLA_VXLAN_LEARNING: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_LEARNING; +pub const IFLA_VXLAN_AGEING: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_AGEING; +pub const IFLA_VXLAN_LIMIT: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_LIMIT; +pub const IFLA_VXLAN_PORT_RANGE: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_PORT_RANGE; +pub const IFLA_VXLAN_PROXY: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_PROXY; +pub const IFLA_VXLAN_RSC: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_RSC; +pub const IFLA_VXLAN_L2MISS: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_L2MISS; +pub const IFLA_VXLAN_L3MISS: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_L3MISS; +pub const IFLA_VXLAN_PORT: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_PORT; +pub const IFLA_VXLAN_GROUP6: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_GROUP6; +pub const IFLA_VXLAN_LOCAL6: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_LOCAL6; +pub const IFLA_VXLAN_UDP_CSUM: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_UDP_CSUM; +pub const IFLA_VXLAN_UDP_ZERO_CSUM6_TX: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_UDP_ZERO_CSUM6_TX; +pub const IFLA_VXLAN_UDP_ZERO_CSUM6_RX: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_UDP_ZERO_CSUM6_RX; +pub const IFLA_VXLAN_REMCSUM_TX: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_REMCSUM_TX; +pub const IFLA_VXLAN_REMCSUM_RX: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_REMCSUM_RX; +pub const IFLA_VXLAN_GBP: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_GBP; +pub const IFLA_VXLAN_REMCSUM_NOPARTIAL: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_REMCSUM_NOPARTIAL; +pub const IFLA_VXLAN_COLLECT_METADATA: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_COLLECT_METADATA; +pub const IFLA_VXLAN_LABEL: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_LABEL; +pub const IFLA_VXLAN_GPE: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_GPE; +pub const IFLA_VXLAN_TTL_INHERIT: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_TTL_INHERIT; +pub const IFLA_VXLAN_DF: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_DF; +pub const IFLA_VXLAN_VNIFILTER: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_VNIFILTER; +pub const IFLA_VXLAN_LOCALBYPASS: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_LOCALBYPASS; +pub const IFLA_VXLAN_LABEL_POLICY: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_LABEL_POLICY; +pub const IFLA_VXLAN_RESERVED_BITS: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_RESERVED_BITS; +pub const IFLA_VXLAN_MC_ROUTE: _bindgen_ty_22 = _bindgen_ty_22::IFLA_VXLAN_MC_ROUTE; +pub const __IFLA_VXLAN_MAX: _bindgen_ty_22 = _bindgen_ty_22::__IFLA_VXLAN_MAX; +pub const IFLA_GENEVE_UNSPEC: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_UNSPEC; +pub const IFLA_GENEVE_ID: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_ID; +pub const IFLA_GENEVE_REMOTE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_REMOTE; +pub const IFLA_GENEVE_TTL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL; +pub const IFLA_GENEVE_TOS: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TOS; +pub const IFLA_GENEVE_PORT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT; +pub const IFLA_GENEVE_COLLECT_METADATA: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_COLLECT_METADATA; +pub const IFLA_GENEVE_REMOTE6: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_REMOTE6; +pub const IFLA_GENEVE_UDP_CSUM: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_UDP_CSUM; +pub const IFLA_GENEVE_UDP_ZERO_CSUM6_TX: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_UDP_ZERO_CSUM6_TX; +pub const IFLA_GENEVE_UDP_ZERO_CSUM6_RX: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_UDP_ZERO_CSUM6_RX; +pub const IFLA_GENEVE_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_LABEL; +pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_TTL_INHERIT; +pub const IFLA_GENEVE_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_DF; +pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_INNER_PROTO_INHERIT; +pub const IFLA_GENEVE_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_GENEVE_PORT_RANGE; +pub const __IFLA_GENEVE_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_GENEVE_MAX; +pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_UNSPEC; +pub const IFLA_BAREUDP_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_PORT; +pub const IFLA_BAREUDP_ETHERTYPE: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_ETHERTYPE; +pub const IFLA_BAREUDP_SRCPORT_MIN: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_SRCPORT_MIN; +pub const IFLA_BAREUDP_MULTIPROTO_MODE: _bindgen_ty_24 = _bindgen_ty_24::IFLA_BAREUDP_MULTIPROTO_MODE; +pub const __IFLA_BAREUDP_MAX: _bindgen_ty_24 = _bindgen_ty_24::__IFLA_BAREUDP_MAX; +pub const IFLA_PPP_UNSPEC: _bindgen_ty_25 = _bindgen_ty_25::IFLA_PPP_UNSPEC; +pub const IFLA_PPP_DEV_FD: _bindgen_ty_25 = _bindgen_ty_25::IFLA_PPP_DEV_FD; +pub const __IFLA_PPP_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_PPP_MAX; +pub const IFLA_GTP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_GTP_UNSPEC; +pub const IFLA_GTP_FD0: _bindgen_ty_26 = _bindgen_ty_26::IFLA_GTP_FD0; +pub const IFLA_GTP_FD1: _bindgen_ty_26 = _bindgen_ty_26::IFLA_GTP_FD1; +pub const IFLA_GTP_PDP_HASHSIZE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_GTP_PDP_HASHSIZE; +pub const IFLA_GTP_ROLE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_GTP_ROLE; +pub const IFLA_GTP_CREATE_SOCKETS: _bindgen_ty_26 = _bindgen_ty_26::IFLA_GTP_CREATE_SOCKETS; +pub const IFLA_GTP_RESTART_COUNT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_GTP_RESTART_COUNT; +pub const IFLA_GTP_LOCAL: _bindgen_ty_26 = _bindgen_ty_26::IFLA_GTP_LOCAL; +pub const IFLA_GTP_LOCAL6: _bindgen_ty_26 = _bindgen_ty_26::IFLA_GTP_LOCAL6; +pub const __IFLA_GTP_MAX: _bindgen_ty_26 = _bindgen_ty_26::__IFLA_GTP_MAX; +pub const IFLA_BOND_UNSPEC: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_UNSPEC; +pub const IFLA_BOND_MODE: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_MODE; +pub const IFLA_BOND_ACTIVE_SLAVE: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_ACTIVE_SLAVE; +pub const IFLA_BOND_MIIMON: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_MIIMON; +pub const IFLA_BOND_UPDELAY: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_UPDELAY; +pub const IFLA_BOND_DOWNDELAY: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_DOWNDELAY; +pub const IFLA_BOND_USE_CARRIER: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_USE_CARRIER; +pub const IFLA_BOND_ARP_INTERVAL: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_ARP_INTERVAL; +pub const IFLA_BOND_ARP_IP_TARGET: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_ARP_IP_TARGET; +pub const IFLA_BOND_ARP_VALIDATE: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_ARP_VALIDATE; +pub const IFLA_BOND_ARP_ALL_TARGETS: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_ARP_ALL_TARGETS; +pub const IFLA_BOND_PRIMARY: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_PRIMARY; +pub const IFLA_BOND_PRIMARY_RESELECT: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_PRIMARY_RESELECT; +pub const IFLA_BOND_FAIL_OVER_MAC: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_FAIL_OVER_MAC; +pub const IFLA_BOND_XMIT_HASH_POLICY: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_XMIT_HASH_POLICY; +pub const IFLA_BOND_RESEND_IGMP: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_RESEND_IGMP; +pub const IFLA_BOND_NUM_PEER_NOTIF: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_NUM_PEER_NOTIF; +pub const IFLA_BOND_ALL_SLAVES_ACTIVE: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_ALL_SLAVES_ACTIVE; +pub const IFLA_BOND_MIN_LINKS: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_MIN_LINKS; +pub const IFLA_BOND_LP_INTERVAL: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_LP_INTERVAL; +pub const IFLA_BOND_PACKETS_PER_SLAVE: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_PACKETS_PER_SLAVE; +pub const IFLA_BOND_AD_LACP_RATE: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_LACP_RATE; +pub const IFLA_BOND_AD_SELECT: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_SELECT; +pub const IFLA_BOND_AD_INFO: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO; +pub const IFLA_BOND_AD_ACTOR_SYS_PRIO: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_ACTOR_SYS_PRIO; +pub const IFLA_BOND_AD_USER_PORT_KEY: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_USER_PORT_KEY; +pub const IFLA_BOND_AD_ACTOR_SYSTEM: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_ACTOR_SYSTEM; +pub const IFLA_BOND_TLB_DYNAMIC_LB: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_TLB_DYNAMIC_LB; +pub const IFLA_BOND_PEER_NOTIF_DELAY: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_PEER_NOTIF_DELAY; +pub const IFLA_BOND_AD_LACP_ACTIVE: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_LACP_ACTIVE; +pub const IFLA_BOND_MISSED_MAX: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_MISSED_MAX; +pub const IFLA_BOND_NS_IP6_TARGET: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_NS_IP6_TARGET; +pub const IFLA_BOND_COUPLED_CONTROL: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_COUPLED_CONTROL; +pub const IFLA_BOND_BROADCAST_NEIGH: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_BROADCAST_NEIGH; +pub const __IFLA_BOND_MAX: _bindgen_ty_27 = _bindgen_ty_27::__IFLA_BOND_MAX; +pub const IFLA_BOND_AD_INFO_UNSPEC: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_INFO_UNSPEC; +pub const IFLA_BOND_AD_INFO_AGGREGATOR: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_INFO_AGGREGATOR; +pub const IFLA_BOND_AD_INFO_NUM_PORTS: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_INFO_NUM_PORTS; +pub const IFLA_BOND_AD_INFO_ACTOR_KEY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_INFO_ACTOR_KEY; +pub const IFLA_BOND_AD_INFO_PARTNER_KEY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_INFO_PARTNER_KEY; +pub const IFLA_BOND_AD_INFO_PARTNER_MAC: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_INFO_PARTNER_MAC; +pub const __IFLA_BOND_AD_INFO_MAX: _bindgen_ty_28 = _bindgen_ty_28::__IFLA_BOND_AD_INFO_MAX; +pub const IFLA_BOND_SLAVE_UNSPEC: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_SLAVE_UNSPEC; +pub const IFLA_BOND_SLAVE_STATE: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_SLAVE_STATE; +pub const IFLA_BOND_SLAVE_MII_STATUS: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_SLAVE_MII_STATUS; +pub const IFLA_BOND_SLAVE_LINK_FAILURE_COUNT: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_SLAVE_LINK_FAILURE_COUNT; +pub const IFLA_BOND_SLAVE_PERM_HWADDR: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_SLAVE_PERM_HWADDR; +pub const IFLA_BOND_SLAVE_QUEUE_ID: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_SLAVE_QUEUE_ID; +pub const IFLA_BOND_SLAVE_AD_AGGREGATOR_ID: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_SLAVE_AD_AGGREGATOR_ID; +pub const IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE; +pub const IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE; +pub const IFLA_BOND_SLAVE_PRIO: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_SLAVE_PRIO; +pub const __IFLA_BOND_SLAVE_MAX: _bindgen_ty_29 = _bindgen_ty_29::__IFLA_BOND_SLAVE_MAX; +pub const IFLA_VF_INFO_UNSPEC: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_INFO_UNSPEC; +pub const IFLA_VF_INFO: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_INFO; +pub const __IFLA_VF_INFO_MAX: _bindgen_ty_30 = _bindgen_ty_30::__IFLA_VF_INFO_MAX; +pub const IFLA_VF_UNSPEC: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_UNSPEC; +pub const IFLA_VF_MAC: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_MAC; +pub const IFLA_VF_VLAN: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_VLAN; +pub const IFLA_VF_TX_RATE: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_TX_RATE; +pub const IFLA_VF_SPOOFCHK: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_SPOOFCHK; +pub const IFLA_VF_LINK_STATE: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_LINK_STATE; +pub const IFLA_VF_RATE: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_RATE; +pub const IFLA_VF_RSS_QUERY_EN: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_RSS_QUERY_EN; +pub const IFLA_VF_STATS: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_STATS; +pub const IFLA_VF_TRUST: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_TRUST; +pub const IFLA_VF_IB_NODE_GUID: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_IB_NODE_GUID; +pub const IFLA_VF_IB_PORT_GUID: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_IB_PORT_GUID; +pub const IFLA_VF_VLAN_LIST: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_VLAN_LIST; +pub const IFLA_VF_BROADCAST: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_BROADCAST; +pub const __IFLA_VF_MAX: _bindgen_ty_31 = _bindgen_ty_31::__IFLA_VF_MAX; +pub const IFLA_VF_VLAN_INFO_UNSPEC: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_VLAN_INFO_UNSPEC; +pub const IFLA_VF_VLAN_INFO: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_VLAN_INFO; +pub const __IFLA_VF_VLAN_INFO_MAX: _bindgen_ty_32 = _bindgen_ty_32::__IFLA_VF_VLAN_INFO_MAX; +pub const IFLA_VF_LINK_STATE_AUTO: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_LINK_STATE_AUTO; +pub const IFLA_VF_LINK_STATE_ENABLE: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_LINK_STATE_ENABLE; +pub const IFLA_VF_LINK_STATE_DISABLE: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_LINK_STATE_DISABLE; +pub const __IFLA_VF_LINK_STATE_MAX: _bindgen_ty_33 = _bindgen_ty_33::__IFLA_VF_LINK_STATE_MAX; +pub const IFLA_VF_STATS_RX_PACKETS: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_STATS_RX_PACKETS; +pub const IFLA_VF_STATS_TX_PACKETS: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_STATS_TX_PACKETS; +pub const IFLA_VF_STATS_RX_BYTES: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_STATS_RX_BYTES; +pub const IFLA_VF_STATS_TX_BYTES: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_STATS_TX_BYTES; +pub const IFLA_VF_STATS_BROADCAST: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_STATS_BROADCAST; +pub const IFLA_VF_STATS_MULTICAST: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_STATS_MULTICAST; +pub const IFLA_VF_STATS_PAD: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_STATS_PAD; +pub const IFLA_VF_STATS_RX_DROPPED: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_STATS_RX_DROPPED; +pub const IFLA_VF_STATS_TX_DROPPED: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_STATS_TX_DROPPED; +pub const __IFLA_VF_STATS_MAX: _bindgen_ty_34 = _bindgen_ty_34::__IFLA_VF_STATS_MAX; +pub const IFLA_VF_PORT_UNSPEC: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_PORT_UNSPEC; +pub const IFLA_VF_PORT: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_PORT; +pub const __IFLA_VF_PORT_MAX: _bindgen_ty_35 = _bindgen_ty_35::__IFLA_VF_PORT_MAX; +pub const IFLA_PORT_UNSPEC: _bindgen_ty_36 = _bindgen_ty_36::IFLA_PORT_UNSPEC; +pub const IFLA_PORT_VF: _bindgen_ty_36 = _bindgen_ty_36::IFLA_PORT_VF; +pub const IFLA_PORT_PROFILE: _bindgen_ty_36 = _bindgen_ty_36::IFLA_PORT_PROFILE; +pub const IFLA_PORT_VSI_TYPE: _bindgen_ty_36 = _bindgen_ty_36::IFLA_PORT_VSI_TYPE; +pub const IFLA_PORT_INSTANCE_UUID: _bindgen_ty_36 = _bindgen_ty_36::IFLA_PORT_INSTANCE_UUID; +pub const IFLA_PORT_HOST_UUID: _bindgen_ty_36 = _bindgen_ty_36::IFLA_PORT_HOST_UUID; +pub const IFLA_PORT_REQUEST: _bindgen_ty_36 = _bindgen_ty_36::IFLA_PORT_REQUEST; +pub const IFLA_PORT_RESPONSE: _bindgen_ty_36 = _bindgen_ty_36::IFLA_PORT_RESPONSE; +pub const __IFLA_PORT_MAX: _bindgen_ty_36 = _bindgen_ty_36::__IFLA_PORT_MAX; +pub const PORT_REQUEST_PREASSOCIATE: _bindgen_ty_37 = _bindgen_ty_37::PORT_REQUEST_PREASSOCIATE; +pub const PORT_REQUEST_PREASSOCIATE_RR: _bindgen_ty_37 = _bindgen_ty_37::PORT_REQUEST_PREASSOCIATE_RR; +pub const PORT_REQUEST_ASSOCIATE: _bindgen_ty_37 = _bindgen_ty_37::PORT_REQUEST_ASSOCIATE; +pub const PORT_REQUEST_DISASSOCIATE: _bindgen_ty_37 = _bindgen_ty_37::PORT_REQUEST_DISASSOCIATE; +pub const PORT_VDP_RESPONSE_SUCCESS: _bindgen_ty_38 = _bindgen_ty_38::PORT_VDP_RESPONSE_SUCCESS; +pub const PORT_VDP_RESPONSE_INVALID_FORMAT: _bindgen_ty_38 = _bindgen_ty_38::PORT_VDP_RESPONSE_INVALID_FORMAT; +pub const PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_38 = _bindgen_ty_38::PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES; +pub const PORT_VDP_RESPONSE_UNUSED_VTID: _bindgen_ty_38 = _bindgen_ty_38::PORT_VDP_RESPONSE_UNUSED_VTID; +pub const PORT_VDP_RESPONSE_VTID_VIOLATION: _bindgen_ty_38 = _bindgen_ty_38::PORT_VDP_RESPONSE_VTID_VIOLATION; +pub const PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION: _bindgen_ty_38 = _bindgen_ty_38::PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION; +pub const PORT_VDP_RESPONSE_OUT_OF_SYNC: _bindgen_ty_38 = _bindgen_ty_38::PORT_VDP_RESPONSE_OUT_OF_SYNC; +pub const PORT_PROFILE_RESPONSE_SUCCESS: _bindgen_ty_38 = _bindgen_ty_38::PORT_PROFILE_RESPONSE_SUCCESS; +pub const PORT_PROFILE_RESPONSE_INPROGRESS: _bindgen_ty_38 = _bindgen_ty_38::PORT_PROFILE_RESPONSE_INPROGRESS; +pub const PORT_PROFILE_RESPONSE_INVALID: _bindgen_ty_38 = _bindgen_ty_38::PORT_PROFILE_RESPONSE_INVALID; +pub const PORT_PROFILE_RESPONSE_BADSTATE: _bindgen_ty_38 = _bindgen_ty_38::PORT_PROFILE_RESPONSE_BADSTATE; +pub const PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_38 = _bindgen_ty_38::PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES; +pub const PORT_PROFILE_RESPONSE_ERROR: _bindgen_ty_38 = _bindgen_ty_38::PORT_PROFILE_RESPONSE_ERROR; +pub const IFLA_IPOIB_UNSPEC: _bindgen_ty_39 = _bindgen_ty_39::IFLA_IPOIB_UNSPEC; +pub const IFLA_IPOIB_PKEY: _bindgen_ty_39 = _bindgen_ty_39::IFLA_IPOIB_PKEY; +pub const IFLA_IPOIB_MODE: _bindgen_ty_39 = _bindgen_ty_39::IFLA_IPOIB_MODE; +pub const IFLA_IPOIB_UMCAST: _bindgen_ty_39 = _bindgen_ty_39::IFLA_IPOIB_UMCAST; +pub const __IFLA_IPOIB_MAX: _bindgen_ty_39 = _bindgen_ty_39::__IFLA_IPOIB_MAX; +pub const IPOIB_MODE_DATAGRAM: _bindgen_ty_40 = _bindgen_ty_40::IPOIB_MODE_DATAGRAM; +pub const IPOIB_MODE_CONNECTED: _bindgen_ty_40 = _bindgen_ty_40::IPOIB_MODE_CONNECTED; +pub const HSR_PROTOCOL_HSR: _bindgen_ty_41 = _bindgen_ty_41::HSR_PROTOCOL_HSR; +pub const HSR_PROTOCOL_PRP: _bindgen_ty_41 = _bindgen_ty_41::HSR_PROTOCOL_PRP; +pub const HSR_PROTOCOL_MAX: _bindgen_ty_41 = _bindgen_ty_41::HSR_PROTOCOL_MAX; +pub const IFLA_HSR_UNSPEC: _bindgen_ty_42 = _bindgen_ty_42::IFLA_HSR_UNSPEC; +pub const IFLA_HSR_SLAVE1: _bindgen_ty_42 = _bindgen_ty_42::IFLA_HSR_SLAVE1; +pub const IFLA_HSR_SLAVE2: _bindgen_ty_42 = _bindgen_ty_42::IFLA_HSR_SLAVE2; +pub const IFLA_HSR_MULTICAST_SPEC: _bindgen_ty_42 = _bindgen_ty_42::IFLA_HSR_MULTICAST_SPEC; +pub const IFLA_HSR_SUPERVISION_ADDR: _bindgen_ty_42 = _bindgen_ty_42::IFLA_HSR_SUPERVISION_ADDR; +pub const IFLA_HSR_SEQ_NR: _bindgen_ty_42 = _bindgen_ty_42::IFLA_HSR_SEQ_NR; +pub const IFLA_HSR_VERSION: _bindgen_ty_42 = _bindgen_ty_42::IFLA_HSR_VERSION; +pub const IFLA_HSR_PROTOCOL: _bindgen_ty_42 = _bindgen_ty_42::IFLA_HSR_PROTOCOL; +pub const IFLA_HSR_INTERLINK: _bindgen_ty_42 = _bindgen_ty_42::IFLA_HSR_INTERLINK; +pub const __IFLA_HSR_MAX: _bindgen_ty_42 = _bindgen_ty_42::__IFLA_HSR_MAX; +pub const IFLA_STATS_UNSPEC: _bindgen_ty_43 = _bindgen_ty_43::IFLA_STATS_UNSPEC; +pub const IFLA_STATS_LINK_64: _bindgen_ty_43 = _bindgen_ty_43::IFLA_STATS_LINK_64; +pub const IFLA_STATS_LINK_XSTATS: _bindgen_ty_43 = _bindgen_ty_43::IFLA_STATS_LINK_XSTATS; +pub const IFLA_STATS_LINK_XSTATS_SLAVE: _bindgen_ty_43 = _bindgen_ty_43::IFLA_STATS_LINK_XSTATS_SLAVE; +pub const IFLA_STATS_LINK_OFFLOAD_XSTATS: _bindgen_ty_43 = _bindgen_ty_43::IFLA_STATS_LINK_OFFLOAD_XSTATS; +pub const IFLA_STATS_AF_SPEC: _bindgen_ty_43 = _bindgen_ty_43::IFLA_STATS_AF_SPEC; +pub const __IFLA_STATS_MAX: _bindgen_ty_43 = _bindgen_ty_43::__IFLA_STATS_MAX; +pub const IFLA_STATS_GETSET_UNSPEC: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_GETSET_UNSPEC; +pub const IFLA_STATS_GET_FILTERS: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_GET_FILTERS; +pub const IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS; +pub const __IFLA_STATS_GETSET_MAX: _bindgen_ty_44 = _bindgen_ty_44::__IFLA_STATS_GETSET_MAX; +pub const LINK_XSTATS_TYPE_UNSPEC: _bindgen_ty_45 = _bindgen_ty_45::LINK_XSTATS_TYPE_UNSPEC; +pub const LINK_XSTATS_TYPE_BRIDGE: _bindgen_ty_45 = _bindgen_ty_45::LINK_XSTATS_TYPE_BRIDGE; +pub const LINK_XSTATS_TYPE_BOND: _bindgen_ty_45 = _bindgen_ty_45::LINK_XSTATS_TYPE_BOND; +pub const __LINK_XSTATS_TYPE_MAX: _bindgen_ty_45 = _bindgen_ty_45::__LINK_XSTATS_TYPE_MAX; +pub const IFLA_OFFLOAD_XSTATS_UNSPEC: _bindgen_ty_46 = _bindgen_ty_46::IFLA_OFFLOAD_XSTATS_UNSPEC; +pub const IFLA_OFFLOAD_XSTATS_CPU_HIT: _bindgen_ty_46 = _bindgen_ty_46::IFLA_OFFLOAD_XSTATS_CPU_HIT; +pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO: _bindgen_ty_46 = _bindgen_ty_46::IFLA_OFFLOAD_XSTATS_HW_S_INFO; +pub const IFLA_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_46 = _bindgen_ty_46::IFLA_OFFLOAD_XSTATS_L3_STATS; +pub const __IFLA_OFFLOAD_XSTATS_MAX: _bindgen_ty_46 = _bindgen_ty_46::__IFLA_OFFLOAD_XSTATS_MAX; +pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC: _bindgen_ty_47 = _bindgen_ty_47::IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC; +pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST: _bindgen_ty_47 = _bindgen_ty_47::IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST; +pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED: _bindgen_ty_47 = _bindgen_ty_47::IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED; +pub const __IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX: _bindgen_ty_47 = _bindgen_ty_47::__IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX; +pub const XDP_ATTACHED_NONE: _bindgen_ty_48 = _bindgen_ty_48::XDP_ATTACHED_NONE; +pub const XDP_ATTACHED_DRV: _bindgen_ty_48 = _bindgen_ty_48::XDP_ATTACHED_DRV; +pub const XDP_ATTACHED_SKB: _bindgen_ty_48 = _bindgen_ty_48::XDP_ATTACHED_SKB; +pub const XDP_ATTACHED_HW: _bindgen_ty_48 = _bindgen_ty_48::XDP_ATTACHED_HW; +pub const XDP_ATTACHED_MULTI: _bindgen_ty_48 = _bindgen_ty_48::XDP_ATTACHED_MULTI; +pub const IFLA_XDP_UNSPEC: _bindgen_ty_49 = _bindgen_ty_49::IFLA_XDP_UNSPEC; +pub const IFLA_XDP_FD: _bindgen_ty_49 = _bindgen_ty_49::IFLA_XDP_FD; +pub const IFLA_XDP_ATTACHED: _bindgen_ty_49 = _bindgen_ty_49::IFLA_XDP_ATTACHED; +pub const IFLA_XDP_FLAGS: _bindgen_ty_49 = _bindgen_ty_49::IFLA_XDP_FLAGS; +pub const IFLA_XDP_PROG_ID: _bindgen_ty_49 = _bindgen_ty_49::IFLA_XDP_PROG_ID; +pub const IFLA_XDP_DRV_PROG_ID: _bindgen_ty_49 = _bindgen_ty_49::IFLA_XDP_DRV_PROG_ID; +pub const IFLA_XDP_SKB_PROG_ID: _bindgen_ty_49 = _bindgen_ty_49::IFLA_XDP_SKB_PROG_ID; +pub const IFLA_XDP_HW_PROG_ID: _bindgen_ty_49 = _bindgen_ty_49::IFLA_XDP_HW_PROG_ID; +pub const IFLA_XDP_EXPECTED_FD: _bindgen_ty_49 = _bindgen_ty_49::IFLA_XDP_EXPECTED_FD; +pub const __IFLA_XDP_MAX: _bindgen_ty_49 = _bindgen_ty_49::__IFLA_XDP_MAX; +pub const IFLA_EVENT_NONE: _bindgen_ty_50 = _bindgen_ty_50::IFLA_EVENT_NONE; +pub const IFLA_EVENT_REBOOT: _bindgen_ty_50 = _bindgen_ty_50::IFLA_EVENT_REBOOT; +pub const IFLA_EVENT_FEATURES: _bindgen_ty_50 = _bindgen_ty_50::IFLA_EVENT_FEATURES; +pub const IFLA_EVENT_BONDING_FAILOVER: _bindgen_ty_50 = _bindgen_ty_50::IFLA_EVENT_BONDING_FAILOVER; +pub const IFLA_EVENT_NOTIFY_PEERS: _bindgen_ty_50 = _bindgen_ty_50::IFLA_EVENT_NOTIFY_PEERS; +pub const IFLA_EVENT_IGMP_RESEND: _bindgen_ty_50 = _bindgen_ty_50::IFLA_EVENT_IGMP_RESEND; +pub const IFLA_EVENT_BONDING_OPTIONS: _bindgen_ty_50 = _bindgen_ty_50::IFLA_EVENT_BONDING_OPTIONS; +pub const IFLA_TUN_UNSPEC: _bindgen_ty_51 = _bindgen_ty_51::IFLA_TUN_UNSPEC; +pub const IFLA_TUN_OWNER: _bindgen_ty_51 = _bindgen_ty_51::IFLA_TUN_OWNER; +pub const IFLA_TUN_GROUP: _bindgen_ty_51 = _bindgen_ty_51::IFLA_TUN_GROUP; +pub const IFLA_TUN_TYPE: _bindgen_ty_51 = _bindgen_ty_51::IFLA_TUN_TYPE; +pub const IFLA_TUN_PI: _bindgen_ty_51 = _bindgen_ty_51::IFLA_TUN_PI; +pub const IFLA_TUN_VNET_HDR: _bindgen_ty_51 = _bindgen_ty_51::IFLA_TUN_VNET_HDR; +pub const IFLA_TUN_PERSIST: _bindgen_ty_51 = _bindgen_ty_51::IFLA_TUN_PERSIST; +pub const IFLA_TUN_MULTI_QUEUE: _bindgen_ty_51 = _bindgen_ty_51::IFLA_TUN_MULTI_QUEUE; +pub const IFLA_TUN_NUM_QUEUES: _bindgen_ty_51 = _bindgen_ty_51::IFLA_TUN_NUM_QUEUES; +pub const IFLA_TUN_NUM_DISABLED_QUEUES: _bindgen_ty_51 = _bindgen_ty_51::IFLA_TUN_NUM_DISABLED_QUEUES; +pub const __IFLA_TUN_MAX: _bindgen_ty_51 = _bindgen_ty_51::__IFLA_TUN_MAX; +pub const IFLA_RMNET_UNSPEC: _bindgen_ty_52 = _bindgen_ty_52::IFLA_RMNET_UNSPEC; +pub const IFLA_RMNET_MUX_ID: _bindgen_ty_52 = _bindgen_ty_52::IFLA_RMNET_MUX_ID; +pub const IFLA_RMNET_FLAGS: _bindgen_ty_52 = _bindgen_ty_52::IFLA_RMNET_FLAGS; +pub const __IFLA_RMNET_MAX: _bindgen_ty_52 = _bindgen_ty_52::__IFLA_RMNET_MAX; +pub const IFLA_MCTP_UNSPEC: _bindgen_ty_53 = _bindgen_ty_53::IFLA_MCTP_UNSPEC; +pub const IFLA_MCTP_NET: _bindgen_ty_53 = _bindgen_ty_53::IFLA_MCTP_NET; +pub const IFLA_MCTP_PHYS_BINDING: _bindgen_ty_53 = _bindgen_ty_53::IFLA_MCTP_PHYS_BINDING; +pub const __IFLA_MCTP_MAX: _bindgen_ty_53 = _bindgen_ty_53::__IFLA_MCTP_MAX; +pub const IFLA_DSA_UNSPEC: _bindgen_ty_54 = _bindgen_ty_54::IFLA_DSA_UNSPEC; +pub const IFLA_DSA_CONDUIT: _bindgen_ty_54 = _bindgen_ty_54::IFLA_DSA_CONDUIT; +pub const IFLA_DSA_MASTER: _bindgen_ty_54 = _bindgen_ty_54::IFLA_DSA_CONDUIT; +pub const __IFLA_DSA_MAX: _bindgen_ty_54 = _bindgen_ty_54::__IFLA_DSA_MAX; +pub const IFLA_OVPN_UNSPEC: _bindgen_ty_55 = _bindgen_ty_55::IFLA_OVPN_UNSPEC; +pub const IFLA_OVPN_MODE: _bindgen_ty_55 = _bindgen_ty_55::IFLA_OVPN_MODE; +pub const __IFLA_OVPN_MAX: _bindgen_ty_55 = _bindgen_ty_55::__IFLA_OVPN_MAX; +pub const IFA_UNSPEC: _bindgen_ty_56 = _bindgen_ty_56::IFA_UNSPEC; +pub const IFA_ADDRESS: _bindgen_ty_56 = _bindgen_ty_56::IFA_ADDRESS; +pub const IFA_LOCAL: _bindgen_ty_56 = _bindgen_ty_56::IFA_LOCAL; +pub const IFA_LABEL: _bindgen_ty_56 = _bindgen_ty_56::IFA_LABEL; +pub const IFA_BROADCAST: _bindgen_ty_56 = _bindgen_ty_56::IFA_BROADCAST; +pub const IFA_ANYCAST: _bindgen_ty_56 = _bindgen_ty_56::IFA_ANYCAST; +pub const IFA_CACHEINFO: _bindgen_ty_56 = _bindgen_ty_56::IFA_CACHEINFO; +pub const IFA_MULTICAST: _bindgen_ty_56 = _bindgen_ty_56::IFA_MULTICAST; +pub const IFA_FLAGS: _bindgen_ty_56 = _bindgen_ty_56::IFA_FLAGS; +pub const IFA_RT_PRIORITY: _bindgen_ty_56 = _bindgen_ty_56::IFA_RT_PRIORITY; +pub const IFA_TARGET_NETNSID: _bindgen_ty_56 = _bindgen_ty_56::IFA_TARGET_NETNSID; +pub const IFA_PROTO: _bindgen_ty_56 = _bindgen_ty_56::IFA_PROTO; +pub const __IFA_MAX: _bindgen_ty_56 = _bindgen_ty_56::__IFA_MAX; +pub const NDA_UNSPEC: _bindgen_ty_57 = _bindgen_ty_57::NDA_UNSPEC; +pub const NDA_DST: _bindgen_ty_57 = _bindgen_ty_57::NDA_DST; +pub const NDA_LLADDR: _bindgen_ty_57 = _bindgen_ty_57::NDA_LLADDR; +pub const NDA_CACHEINFO: _bindgen_ty_57 = _bindgen_ty_57::NDA_CACHEINFO; +pub const NDA_PROBES: _bindgen_ty_57 = _bindgen_ty_57::NDA_PROBES; +pub const NDA_VLAN: _bindgen_ty_57 = _bindgen_ty_57::NDA_VLAN; +pub const NDA_PORT: _bindgen_ty_57 = _bindgen_ty_57::NDA_PORT; +pub const NDA_VNI: _bindgen_ty_57 = _bindgen_ty_57::NDA_VNI; +pub const NDA_IFINDEX: _bindgen_ty_57 = _bindgen_ty_57::NDA_IFINDEX; +pub const NDA_MASTER: _bindgen_ty_57 = _bindgen_ty_57::NDA_MASTER; +pub const NDA_LINK_NETNSID: _bindgen_ty_57 = _bindgen_ty_57::NDA_LINK_NETNSID; +pub const NDA_SRC_VNI: _bindgen_ty_57 = _bindgen_ty_57::NDA_SRC_VNI; +pub const NDA_PROTOCOL: _bindgen_ty_57 = _bindgen_ty_57::NDA_PROTOCOL; +pub const NDA_NH_ID: _bindgen_ty_57 = _bindgen_ty_57::NDA_NH_ID; +pub const NDA_FDB_EXT_ATTRS: _bindgen_ty_57 = _bindgen_ty_57::NDA_FDB_EXT_ATTRS; +pub const NDA_FLAGS_EXT: _bindgen_ty_57 = _bindgen_ty_57::NDA_FLAGS_EXT; +pub const NDA_NDM_STATE_MASK: _bindgen_ty_57 = _bindgen_ty_57::NDA_NDM_STATE_MASK; +pub const NDA_NDM_FLAGS_MASK: _bindgen_ty_57 = _bindgen_ty_57::NDA_NDM_FLAGS_MASK; +pub const __NDA_MAX: _bindgen_ty_57 = _bindgen_ty_57::__NDA_MAX; +pub const NDTPA_UNSPEC: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_UNSPEC; +pub const NDTPA_IFINDEX: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_IFINDEX; +pub const NDTPA_REFCNT: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_REFCNT; +pub const NDTPA_REACHABLE_TIME: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_REACHABLE_TIME; +pub const NDTPA_BASE_REACHABLE_TIME: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_BASE_REACHABLE_TIME; +pub const NDTPA_RETRANS_TIME: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_RETRANS_TIME; +pub const NDTPA_GC_STALETIME: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_GC_STALETIME; +pub const NDTPA_DELAY_PROBE_TIME: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_DELAY_PROBE_TIME; +pub const NDTPA_QUEUE_LEN: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_QUEUE_LEN; +pub const NDTPA_APP_PROBES: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_APP_PROBES; +pub const NDTPA_UCAST_PROBES: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_UCAST_PROBES; +pub const NDTPA_MCAST_PROBES: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_MCAST_PROBES; +pub const NDTPA_ANYCAST_DELAY: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_ANYCAST_DELAY; +pub const NDTPA_PROXY_DELAY: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_PROXY_DELAY; +pub const NDTPA_PROXY_QLEN: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_PROXY_QLEN; +pub const NDTPA_LOCKTIME: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_LOCKTIME; +pub const NDTPA_QUEUE_LENBYTES: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_QUEUE_LENBYTES; +pub const NDTPA_MCAST_REPROBES: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_MCAST_REPROBES; +pub const NDTPA_PAD: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_PAD; +pub const NDTPA_INTERVAL_PROBE_TIME_MS: _bindgen_ty_58 = _bindgen_ty_58::NDTPA_INTERVAL_PROBE_TIME_MS; +pub const __NDTPA_MAX: _bindgen_ty_58 = _bindgen_ty_58::__NDTPA_MAX; +pub const NDTA_UNSPEC: _bindgen_ty_59 = _bindgen_ty_59::NDTA_UNSPEC; +pub const NDTA_NAME: _bindgen_ty_59 = _bindgen_ty_59::NDTA_NAME; +pub const NDTA_THRESH1: _bindgen_ty_59 = _bindgen_ty_59::NDTA_THRESH1; +pub const NDTA_THRESH2: _bindgen_ty_59 = _bindgen_ty_59::NDTA_THRESH2; +pub const NDTA_THRESH3: _bindgen_ty_59 = _bindgen_ty_59::NDTA_THRESH3; +pub const NDTA_CONFIG: _bindgen_ty_59 = _bindgen_ty_59::NDTA_CONFIG; +pub const NDTA_PARMS: _bindgen_ty_59 = _bindgen_ty_59::NDTA_PARMS; +pub const NDTA_STATS: _bindgen_ty_59 = _bindgen_ty_59::NDTA_STATS; +pub const NDTA_GC_INTERVAL: _bindgen_ty_59 = _bindgen_ty_59::NDTA_GC_INTERVAL; +pub const NDTA_PAD: _bindgen_ty_59 = _bindgen_ty_59::NDTA_PAD; +pub const __NDTA_MAX: _bindgen_ty_59 = _bindgen_ty_59::__NDTA_MAX; +pub const FDB_NOTIFY_BIT: _bindgen_ty_60 = _bindgen_ty_60::FDB_NOTIFY_BIT; +pub const FDB_NOTIFY_INACTIVE_BIT: _bindgen_ty_60 = _bindgen_ty_60::FDB_NOTIFY_INACTIVE_BIT; +pub const NFEA_UNSPEC: _bindgen_ty_61 = _bindgen_ty_61::NFEA_UNSPEC; +pub const NFEA_ACTIVITY_NOTIFY: _bindgen_ty_61 = _bindgen_ty_61::NFEA_ACTIVITY_NOTIFY; +pub const NFEA_DONT_REFRESH: _bindgen_ty_61 = _bindgen_ty_61::NFEA_DONT_REFRESH; +pub const __NFEA_MAX: _bindgen_ty_61 = _bindgen_ty_61::__NFEA_MAX; +pub const RTM_BASE: _bindgen_ty_62 = _bindgen_ty_62::RTM_BASE; +pub const RTM_NEWLINK: _bindgen_ty_62 = _bindgen_ty_62::RTM_BASE; +pub const RTM_DELLINK: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELLINK; +pub const RTM_GETLINK: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETLINK; +pub const RTM_SETLINK: _bindgen_ty_62 = _bindgen_ty_62::RTM_SETLINK; +pub const RTM_NEWADDR: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWADDR; +pub const RTM_DELADDR: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELADDR; +pub const RTM_GETADDR: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETADDR; +pub const RTM_NEWROUTE: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWROUTE; +pub const RTM_DELROUTE: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELROUTE; +pub const RTM_GETROUTE: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETROUTE; +pub const RTM_NEWNEIGH: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWNEIGH; +pub const RTM_DELNEIGH: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELNEIGH; +pub const RTM_GETNEIGH: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETNEIGH; +pub const RTM_NEWRULE: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWRULE; +pub const RTM_DELRULE: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELRULE; +pub const RTM_GETRULE: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETRULE; +pub const RTM_NEWQDISC: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWQDISC; +pub const RTM_DELQDISC: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELQDISC; +pub const RTM_GETQDISC: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETQDISC; +pub const RTM_NEWTCLASS: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWTCLASS; +pub const RTM_DELTCLASS: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELTCLASS; +pub const RTM_GETTCLASS: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETTCLASS; +pub const RTM_NEWTFILTER: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWTFILTER; +pub const RTM_DELTFILTER: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELTFILTER; +pub const RTM_GETTFILTER: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETTFILTER; +pub const RTM_NEWACTION: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWACTION; +pub const RTM_DELACTION: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELACTION; +pub const RTM_GETACTION: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETACTION; +pub const RTM_NEWPREFIX: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWPREFIX; +pub const RTM_NEWMULTICAST: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWMULTICAST; +pub const RTM_DELMULTICAST: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELMULTICAST; +pub const RTM_GETMULTICAST: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETMULTICAST; +pub const RTM_NEWANYCAST: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWANYCAST; +pub const RTM_DELANYCAST: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELANYCAST; +pub const RTM_GETANYCAST: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETANYCAST; +pub const RTM_NEWNEIGHTBL: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWNEIGHTBL; +pub const RTM_GETNEIGHTBL: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETNEIGHTBL; +pub const RTM_SETNEIGHTBL: _bindgen_ty_62 = _bindgen_ty_62::RTM_SETNEIGHTBL; +pub const RTM_NEWNDUSEROPT: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWNDUSEROPT; +pub const RTM_NEWADDRLABEL: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWADDRLABEL; +pub const RTM_DELADDRLABEL: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELADDRLABEL; +pub const RTM_GETADDRLABEL: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETADDRLABEL; +pub const RTM_GETDCB: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETDCB; +pub const RTM_SETDCB: _bindgen_ty_62 = _bindgen_ty_62::RTM_SETDCB; +pub const RTM_NEWNETCONF: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWNETCONF; +pub const RTM_DELNETCONF: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELNETCONF; +pub const RTM_GETNETCONF: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETNETCONF; +pub const RTM_NEWMDB: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWMDB; +pub const RTM_DELMDB: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELMDB; +pub const RTM_GETMDB: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETMDB; +pub const RTM_NEWNSID: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWNSID; +pub const RTM_DELNSID: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELNSID; +pub const RTM_GETNSID: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETNSID; +pub const RTM_NEWSTATS: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWSTATS; +pub const RTM_GETSTATS: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETSTATS; +pub const RTM_SETSTATS: _bindgen_ty_62 = _bindgen_ty_62::RTM_SETSTATS; +pub const RTM_NEWCACHEREPORT: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWCACHEREPORT; +pub const RTM_NEWCHAIN: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWCHAIN; +pub const RTM_DELCHAIN: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELCHAIN; +pub const RTM_GETCHAIN: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETCHAIN; +pub const RTM_NEWNEXTHOP: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWNEXTHOP; +pub const RTM_DELNEXTHOP: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELNEXTHOP; +pub const RTM_GETNEXTHOP: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETNEXTHOP; +pub const RTM_NEWLINKPROP: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWLINKPROP; +pub const RTM_DELLINKPROP: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELLINKPROP; +pub const RTM_GETLINKPROP: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETLINKPROP; +pub const RTM_NEWVLAN: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWVLAN; +pub const RTM_DELVLAN: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELVLAN; +pub const RTM_GETVLAN: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETVLAN; +pub const RTM_NEWNEXTHOPBUCKET: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWNEXTHOPBUCKET; +pub const RTM_DELNEXTHOPBUCKET: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELNEXTHOPBUCKET; +pub const RTM_GETNEXTHOPBUCKET: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETNEXTHOPBUCKET; +pub const RTM_NEWTUNNEL: _bindgen_ty_62 = _bindgen_ty_62::RTM_NEWTUNNEL; +pub const RTM_DELTUNNEL: _bindgen_ty_62 = _bindgen_ty_62::RTM_DELTUNNEL; +pub const RTM_GETTUNNEL: _bindgen_ty_62 = _bindgen_ty_62::RTM_GETTUNNEL; +pub const __RTM_MAX: _bindgen_ty_62 = _bindgen_ty_62::__RTM_MAX; +pub const RTN_UNSPEC: _bindgen_ty_63 = _bindgen_ty_63::RTN_UNSPEC; +pub const RTN_UNICAST: _bindgen_ty_63 = _bindgen_ty_63::RTN_UNICAST; +pub const RTN_LOCAL: _bindgen_ty_63 = _bindgen_ty_63::RTN_LOCAL; +pub const RTN_BROADCAST: _bindgen_ty_63 = _bindgen_ty_63::RTN_BROADCAST; +pub const RTN_ANYCAST: _bindgen_ty_63 = _bindgen_ty_63::RTN_ANYCAST; +pub const RTN_MULTICAST: _bindgen_ty_63 = _bindgen_ty_63::RTN_MULTICAST; +pub const RTN_BLACKHOLE: _bindgen_ty_63 = _bindgen_ty_63::RTN_BLACKHOLE; +pub const RTN_UNREACHABLE: _bindgen_ty_63 = _bindgen_ty_63::RTN_UNREACHABLE; +pub const RTN_PROHIBIT: _bindgen_ty_63 = _bindgen_ty_63::RTN_PROHIBIT; +pub const RTN_THROW: _bindgen_ty_63 = _bindgen_ty_63::RTN_THROW; +pub const RTN_NAT: _bindgen_ty_63 = _bindgen_ty_63::RTN_NAT; +pub const RTN_XRESOLVE: _bindgen_ty_63 = _bindgen_ty_63::RTN_XRESOLVE; +pub const __RTN_MAX: _bindgen_ty_63 = _bindgen_ty_63::__RTN_MAX; +pub const RTAX_UNSPEC: _bindgen_ty_64 = _bindgen_ty_64::RTAX_UNSPEC; +pub const RTAX_LOCK: _bindgen_ty_64 = _bindgen_ty_64::RTAX_LOCK; +pub const RTAX_MTU: _bindgen_ty_64 = _bindgen_ty_64::RTAX_MTU; +pub const RTAX_WINDOW: _bindgen_ty_64 = _bindgen_ty_64::RTAX_WINDOW; +pub const RTAX_RTT: _bindgen_ty_64 = _bindgen_ty_64::RTAX_RTT; +pub const RTAX_RTTVAR: _bindgen_ty_64 = _bindgen_ty_64::RTAX_RTTVAR; +pub const RTAX_SSTHRESH: _bindgen_ty_64 = _bindgen_ty_64::RTAX_SSTHRESH; +pub const RTAX_CWND: _bindgen_ty_64 = _bindgen_ty_64::RTAX_CWND; +pub const RTAX_ADVMSS: _bindgen_ty_64 = _bindgen_ty_64::RTAX_ADVMSS; +pub const RTAX_REORDERING: _bindgen_ty_64 = _bindgen_ty_64::RTAX_REORDERING; +pub const RTAX_HOPLIMIT: _bindgen_ty_64 = _bindgen_ty_64::RTAX_HOPLIMIT; +pub const RTAX_INITCWND: _bindgen_ty_64 = _bindgen_ty_64::RTAX_INITCWND; +pub const RTAX_FEATURES: _bindgen_ty_64 = _bindgen_ty_64::RTAX_FEATURES; +pub const RTAX_RTO_MIN: _bindgen_ty_64 = _bindgen_ty_64::RTAX_RTO_MIN; +pub const RTAX_INITRWND: _bindgen_ty_64 = _bindgen_ty_64::RTAX_INITRWND; +pub const RTAX_QUICKACK: _bindgen_ty_64 = _bindgen_ty_64::RTAX_QUICKACK; +pub const RTAX_CC_ALGO: _bindgen_ty_64 = _bindgen_ty_64::RTAX_CC_ALGO; +pub const RTAX_FASTOPEN_NO_COOKIE: _bindgen_ty_64 = _bindgen_ty_64::RTAX_FASTOPEN_NO_COOKIE; +pub const __RTAX_MAX: _bindgen_ty_64 = _bindgen_ty_64::__RTAX_MAX; +pub const PREFIX_UNSPEC: _bindgen_ty_65 = _bindgen_ty_65::PREFIX_UNSPEC; +pub const PREFIX_ADDRESS: _bindgen_ty_65 = _bindgen_ty_65::PREFIX_ADDRESS; +pub const PREFIX_CACHEINFO: _bindgen_ty_65 = _bindgen_ty_65::PREFIX_CACHEINFO; +pub const __PREFIX_MAX: _bindgen_ty_65 = _bindgen_ty_65::__PREFIX_MAX; +pub const TCA_UNSPEC: _bindgen_ty_66 = _bindgen_ty_66::TCA_UNSPEC; +pub const TCA_KIND: _bindgen_ty_66 = _bindgen_ty_66::TCA_KIND; +pub const TCA_OPTIONS: _bindgen_ty_66 = _bindgen_ty_66::TCA_OPTIONS; +pub const TCA_STATS: _bindgen_ty_66 = _bindgen_ty_66::TCA_STATS; +pub const TCA_XSTATS: _bindgen_ty_66 = _bindgen_ty_66::TCA_XSTATS; +pub const TCA_RATE: _bindgen_ty_66 = _bindgen_ty_66::TCA_RATE; +pub const TCA_FCNT: _bindgen_ty_66 = _bindgen_ty_66::TCA_FCNT; +pub const TCA_STATS2: _bindgen_ty_66 = _bindgen_ty_66::TCA_STATS2; +pub const TCA_STAB: _bindgen_ty_66 = _bindgen_ty_66::TCA_STAB; +pub const TCA_PAD: _bindgen_ty_66 = _bindgen_ty_66::TCA_PAD; +pub const TCA_DUMP_INVISIBLE: _bindgen_ty_66 = _bindgen_ty_66::TCA_DUMP_INVISIBLE; +pub const TCA_CHAIN: _bindgen_ty_66 = _bindgen_ty_66::TCA_CHAIN; +pub const TCA_HW_OFFLOAD: _bindgen_ty_66 = _bindgen_ty_66::TCA_HW_OFFLOAD; +pub const TCA_INGRESS_BLOCK: _bindgen_ty_66 = _bindgen_ty_66::TCA_INGRESS_BLOCK; +pub const TCA_EGRESS_BLOCK: _bindgen_ty_66 = _bindgen_ty_66::TCA_EGRESS_BLOCK; +pub const TCA_DUMP_FLAGS: _bindgen_ty_66 = _bindgen_ty_66::TCA_DUMP_FLAGS; +pub const TCA_EXT_WARN_MSG: _bindgen_ty_66 = _bindgen_ty_66::TCA_EXT_WARN_MSG; +pub const __TCA_MAX: _bindgen_ty_66 = _bindgen_ty_66::__TCA_MAX; +pub const NDUSEROPT_UNSPEC: _bindgen_ty_67 = _bindgen_ty_67::NDUSEROPT_UNSPEC; +pub const NDUSEROPT_SRCADDR: _bindgen_ty_67 = _bindgen_ty_67::NDUSEROPT_SRCADDR; +pub const __NDUSEROPT_MAX: _bindgen_ty_67 = _bindgen_ty_67::__NDUSEROPT_MAX; +pub const TCA_ROOT_UNSPEC: _bindgen_ty_68 = _bindgen_ty_68::TCA_ROOT_UNSPEC; +pub const TCA_ROOT_TAB: _bindgen_ty_68 = _bindgen_ty_68::TCA_ROOT_TAB; +pub const TCA_ROOT_FLAGS: _bindgen_ty_68 = _bindgen_ty_68::TCA_ROOT_FLAGS; +pub const TCA_ROOT_COUNT: _bindgen_ty_68 = _bindgen_ty_68::TCA_ROOT_COUNT; +pub const TCA_ROOT_TIME_DELTA: _bindgen_ty_68 = _bindgen_ty_68::TCA_ROOT_TIME_DELTA; +pub const TCA_ROOT_EXT_WARN_MSG: _bindgen_ty_68 = _bindgen_ty_68::TCA_ROOT_EXT_WARN_MSG; +pub const __TCA_ROOT_MAX: _bindgen_ty_68 = _bindgen_ty_68::__TCA_ROOT_MAX; +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nlmsgerr_attrs { +NLMSGERR_ATTR_UNUSED = 0, +NLMSGERR_ATTR_MSG = 1, +NLMSGERR_ATTR_OFFS = 2, +NLMSGERR_ATTR_COOKIE = 3, +NLMSGERR_ATTR_POLICY = 4, +NLMSGERR_ATTR_MISS_TYPE = 5, +NLMSGERR_ATTR_MISS_NEST = 6, +__NLMSGERR_ATTR_MAX = 7, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl_mmap_status { +NL_MMAP_STATUS_UNUSED = 0, +NL_MMAP_STATUS_RESERVED = 1, +NL_MMAP_STATUS_VALID = 2, +NL_MMAP_STATUS_COPY = 3, +NL_MMAP_STATUS_SKIP = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_1 { +NETLINK_UNCONNECTED = 0, +NETLINK_CONNECTED = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum netlink_attribute_type { +NL_ATTR_TYPE_INVALID = 0, +NL_ATTR_TYPE_FLAG = 1, +NL_ATTR_TYPE_U8 = 2, +NL_ATTR_TYPE_U16 = 3, +NL_ATTR_TYPE_U32 = 4, +NL_ATTR_TYPE_U64 = 5, +NL_ATTR_TYPE_S8 = 6, +NL_ATTR_TYPE_S16 = 7, +NL_ATTR_TYPE_S32 = 8, +NL_ATTR_TYPE_S64 = 9, +NL_ATTR_TYPE_BINARY = 10, +NL_ATTR_TYPE_STRING = 11, +NL_ATTR_TYPE_NUL_STRING = 12, +NL_ATTR_TYPE_NESTED = 13, +NL_ATTR_TYPE_NESTED_ARRAY = 14, +NL_ATTR_TYPE_BITFIELD32 = 15, +NL_ATTR_TYPE_SINT = 16, +NL_ATTR_TYPE_UINT = 17, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum netlink_policy_type_attr { +NL_POLICY_TYPE_ATTR_UNSPEC = 0, +NL_POLICY_TYPE_ATTR_TYPE = 1, +NL_POLICY_TYPE_ATTR_MIN_VALUE_S = 2, +NL_POLICY_TYPE_ATTR_MAX_VALUE_S = 3, +NL_POLICY_TYPE_ATTR_MIN_VALUE_U = 4, +NL_POLICY_TYPE_ATTR_MAX_VALUE_U = 5, +NL_POLICY_TYPE_ATTR_MIN_LENGTH = 6, +NL_POLICY_TYPE_ATTR_MAX_LENGTH = 7, +NL_POLICY_TYPE_ATTR_POLICY_IDX = 8, +NL_POLICY_TYPE_ATTR_POLICY_MAXTYPE = 9, +NL_POLICY_TYPE_ATTR_BITFIELD32_MASK = 10, +NL_POLICY_TYPE_ATTR_PAD = 11, +NL_POLICY_TYPE_ATTR_MASK = 12, +__NL_POLICY_TYPE_ATTR_MAX = 13, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_commands { +NL80211_CMD_UNSPEC = 0, +NL80211_CMD_GET_WIPHY = 1, +NL80211_CMD_SET_WIPHY = 2, +NL80211_CMD_NEW_WIPHY = 3, +NL80211_CMD_DEL_WIPHY = 4, +NL80211_CMD_GET_INTERFACE = 5, +NL80211_CMD_SET_INTERFACE = 6, +NL80211_CMD_NEW_INTERFACE = 7, +NL80211_CMD_DEL_INTERFACE = 8, +NL80211_CMD_GET_KEY = 9, +NL80211_CMD_SET_KEY = 10, +NL80211_CMD_NEW_KEY = 11, +NL80211_CMD_DEL_KEY = 12, +NL80211_CMD_GET_BEACON = 13, +NL80211_CMD_SET_BEACON = 14, +NL80211_CMD_START_AP = 15, +NL80211_CMD_STOP_AP = 16, +NL80211_CMD_GET_STATION = 17, +NL80211_CMD_SET_STATION = 18, +NL80211_CMD_NEW_STATION = 19, +NL80211_CMD_DEL_STATION = 20, +NL80211_CMD_GET_MPATH = 21, +NL80211_CMD_SET_MPATH = 22, +NL80211_CMD_NEW_MPATH = 23, +NL80211_CMD_DEL_MPATH = 24, +NL80211_CMD_SET_BSS = 25, +NL80211_CMD_SET_REG = 26, +NL80211_CMD_REQ_SET_REG = 27, +NL80211_CMD_GET_MESH_CONFIG = 28, +NL80211_CMD_SET_MESH_CONFIG = 29, +NL80211_CMD_SET_MGMT_EXTRA_IE = 30, +NL80211_CMD_GET_REG = 31, +NL80211_CMD_GET_SCAN = 32, +NL80211_CMD_TRIGGER_SCAN = 33, +NL80211_CMD_NEW_SCAN_RESULTS = 34, +NL80211_CMD_SCAN_ABORTED = 35, +NL80211_CMD_REG_CHANGE = 36, +NL80211_CMD_AUTHENTICATE = 37, +NL80211_CMD_ASSOCIATE = 38, +NL80211_CMD_DEAUTHENTICATE = 39, +NL80211_CMD_DISASSOCIATE = 40, +NL80211_CMD_MICHAEL_MIC_FAILURE = 41, +NL80211_CMD_REG_BEACON_HINT = 42, +NL80211_CMD_JOIN_IBSS = 43, +NL80211_CMD_LEAVE_IBSS = 44, +NL80211_CMD_TESTMODE = 45, +NL80211_CMD_CONNECT = 46, +NL80211_CMD_ROAM = 47, +NL80211_CMD_DISCONNECT = 48, +NL80211_CMD_SET_WIPHY_NETNS = 49, +NL80211_CMD_GET_SURVEY = 50, +NL80211_CMD_NEW_SURVEY_RESULTS = 51, +NL80211_CMD_SET_PMKSA = 52, +NL80211_CMD_DEL_PMKSA = 53, +NL80211_CMD_FLUSH_PMKSA = 54, +NL80211_CMD_REMAIN_ON_CHANNEL = 55, +NL80211_CMD_CANCEL_REMAIN_ON_CHANNEL = 56, +NL80211_CMD_SET_TX_BITRATE_MASK = 57, +NL80211_CMD_REGISTER_FRAME = 58, +NL80211_CMD_FRAME = 59, +NL80211_CMD_FRAME_TX_STATUS = 60, +NL80211_CMD_SET_POWER_SAVE = 61, +NL80211_CMD_GET_POWER_SAVE = 62, +NL80211_CMD_SET_CQM = 63, +NL80211_CMD_NOTIFY_CQM = 64, +NL80211_CMD_SET_CHANNEL = 65, +NL80211_CMD_SET_WDS_PEER = 66, +NL80211_CMD_FRAME_WAIT_CANCEL = 67, +NL80211_CMD_JOIN_MESH = 68, +NL80211_CMD_LEAVE_MESH = 69, +NL80211_CMD_UNPROT_DEAUTHENTICATE = 70, +NL80211_CMD_UNPROT_DISASSOCIATE = 71, +NL80211_CMD_NEW_PEER_CANDIDATE = 72, +NL80211_CMD_GET_WOWLAN = 73, +NL80211_CMD_SET_WOWLAN = 74, +NL80211_CMD_START_SCHED_SCAN = 75, +NL80211_CMD_STOP_SCHED_SCAN = 76, +NL80211_CMD_SCHED_SCAN_RESULTS = 77, +NL80211_CMD_SCHED_SCAN_STOPPED = 78, +NL80211_CMD_SET_REKEY_OFFLOAD = 79, +NL80211_CMD_PMKSA_CANDIDATE = 80, +NL80211_CMD_TDLS_OPER = 81, +NL80211_CMD_TDLS_MGMT = 82, +NL80211_CMD_UNEXPECTED_FRAME = 83, +NL80211_CMD_PROBE_CLIENT = 84, +NL80211_CMD_REGISTER_BEACONS = 85, +NL80211_CMD_UNEXPECTED_4ADDR_FRAME = 86, +NL80211_CMD_SET_NOACK_MAP = 87, +NL80211_CMD_CH_SWITCH_NOTIFY = 88, +NL80211_CMD_START_P2P_DEVICE = 89, +NL80211_CMD_STOP_P2P_DEVICE = 90, +NL80211_CMD_CONN_FAILED = 91, +NL80211_CMD_SET_MCAST_RATE = 92, +NL80211_CMD_SET_MAC_ACL = 93, +NL80211_CMD_RADAR_DETECT = 94, +NL80211_CMD_GET_PROTOCOL_FEATURES = 95, +NL80211_CMD_UPDATE_FT_IES = 96, +NL80211_CMD_FT_EVENT = 97, +NL80211_CMD_CRIT_PROTOCOL_START = 98, +NL80211_CMD_CRIT_PROTOCOL_STOP = 99, +NL80211_CMD_GET_COALESCE = 100, +NL80211_CMD_SET_COALESCE = 101, +NL80211_CMD_CHANNEL_SWITCH = 102, +NL80211_CMD_VENDOR = 103, +NL80211_CMD_SET_QOS_MAP = 104, +NL80211_CMD_ADD_TX_TS = 105, +NL80211_CMD_DEL_TX_TS = 106, +NL80211_CMD_GET_MPP = 107, +NL80211_CMD_JOIN_OCB = 108, +NL80211_CMD_LEAVE_OCB = 109, +NL80211_CMD_CH_SWITCH_STARTED_NOTIFY = 110, +NL80211_CMD_TDLS_CHANNEL_SWITCH = 111, +NL80211_CMD_TDLS_CANCEL_CHANNEL_SWITCH = 112, +NL80211_CMD_WIPHY_REG_CHANGE = 113, +NL80211_CMD_ABORT_SCAN = 114, +NL80211_CMD_START_NAN = 115, +NL80211_CMD_STOP_NAN = 116, +NL80211_CMD_ADD_NAN_FUNCTION = 117, +NL80211_CMD_DEL_NAN_FUNCTION = 118, +NL80211_CMD_CHANGE_NAN_CONFIG = 119, +NL80211_CMD_NAN_MATCH = 120, +NL80211_CMD_SET_MULTICAST_TO_UNICAST = 121, +NL80211_CMD_UPDATE_CONNECT_PARAMS = 122, +NL80211_CMD_SET_PMK = 123, +NL80211_CMD_DEL_PMK = 124, +NL80211_CMD_PORT_AUTHORIZED = 125, +NL80211_CMD_RELOAD_REGDB = 126, +NL80211_CMD_EXTERNAL_AUTH = 127, +NL80211_CMD_STA_OPMODE_CHANGED = 128, +NL80211_CMD_CONTROL_PORT_FRAME = 129, +NL80211_CMD_GET_FTM_RESPONDER_STATS = 130, +NL80211_CMD_PEER_MEASUREMENT_START = 131, +NL80211_CMD_PEER_MEASUREMENT_RESULT = 132, +NL80211_CMD_PEER_MEASUREMENT_COMPLETE = 133, +NL80211_CMD_NOTIFY_RADAR = 134, +NL80211_CMD_UPDATE_OWE_INFO = 135, +NL80211_CMD_PROBE_MESH_LINK = 136, +NL80211_CMD_SET_TID_CONFIG = 137, +NL80211_CMD_UNPROT_BEACON = 138, +NL80211_CMD_CONTROL_PORT_FRAME_TX_STATUS = 139, +NL80211_CMD_SET_SAR_SPECS = 140, +NL80211_CMD_OBSS_COLOR_COLLISION = 141, +NL80211_CMD_COLOR_CHANGE_REQUEST = 142, +NL80211_CMD_COLOR_CHANGE_STARTED = 143, +NL80211_CMD_COLOR_CHANGE_ABORTED = 144, +NL80211_CMD_COLOR_CHANGE_COMPLETED = 145, +NL80211_CMD_SET_FILS_AAD = 146, +NL80211_CMD_ASSOC_COMEBACK = 147, +NL80211_CMD_ADD_LINK = 148, +NL80211_CMD_REMOVE_LINK = 149, +NL80211_CMD_ADD_LINK_STA = 150, +NL80211_CMD_MODIFY_LINK_STA = 151, +NL80211_CMD_REMOVE_LINK_STA = 152, +NL80211_CMD_SET_HW_TIMESTAMP = 153, +NL80211_CMD_LINKS_REMOVED = 154, +NL80211_CMD_SET_TID_TO_LINK_MAPPING = 155, +NL80211_CMD_ASSOC_MLO_RECONF = 156, +NL80211_CMD_EPCS_CFG = 157, +__NL80211_CMD_AFTER_LAST = 158, +} +#[repr(u16)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_attrs { +NL80211_ATTR_UNSPEC = 0, +NL80211_ATTR_WIPHY = 1, +NL80211_ATTR_WIPHY_NAME = 2, +NL80211_ATTR_IFINDEX = 3, +NL80211_ATTR_IFNAME = 4, +NL80211_ATTR_IFTYPE = 5, +NL80211_ATTR_MAC = 6, +NL80211_ATTR_KEY_DATA = 7, +NL80211_ATTR_KEY_IDX = 8, +NL80211_ATTR_KEY_CIPHER = 9, +NL80211_ATTR_KEY_SEQ = 10, +NL80211_ATTR_KEY_DEFAULT = 11, +NL80211_ATTR_BEACON_INTERVAL = 12, +NL80211_ATTR_DTIM_PERIOD = 13, +NL80211_ATTR_BEACON_HEAD = 14, +NL80211_ATTR_BEACON_TAIL = 15, +NL80211_ATTR_STA_AID = 16, +NL80211_ATTR_STA_FLAGS = 17, +NL80211_ATTR_STA_LISTEN_INTERVAL = 18, +NL80211_ATTR_STA_SUPPORTED_RATES = 19, +NL80211_ATTR_STA_VLAN = 20, +NL80211_ATTR_STA_INFO = 21, +NL80211_ATTR_WIPHY_BANDS = 22, +NL80211_ATTR_MNTR_FLAGS = 23, +NL80211_ATTR_MESH_ID = 24, +NL80211_ATTR_STA_PLINK_ACTION = 25, +NL80211_ATTR_MPATH_NEXT_HOP = 26, +NL80211_ATTR_MPATH_INFO = 27, +NL80211_ATTR_BSS_CTS_PROT = 28, +NL80211_ATTR_BSS_SHORT_PREAMBLE = 29, +NL80211_ATTR_BSS_SHORT_SLOT_TIME = 30, +NL80211_ATTR_HT_CAPABILITY = 31, +NL80211_ATTR_SUPPORTED_IFTYPES = 32, +NL80211_ATTR_REG_ALPHA2 = 33, +NL80211_ATTR_REG_RULES = 34, +NL80211_ATTR_MESH_CONFIG = 35, +NL80211_ATTR_BSS_BASIC_RATES = 36, +NL80211_ATTR_WIPHY_TXQ_PARAMS = 37, +NL80211_ATTR_WIPHY_FREQ = 38, +NL80211_ATTR_WIPHY_CHANNEL_TYPE = 39, +NL80211_ATTR_KEY_DEFAULT_MGMT = 40, +NL80211_ATTR_MGMT_SUBTYPE = 41, +NL80211_ATTR_IE = 42, +NL80211_ATTR_MAX_NUM_SCAN_SSIDS = 43, +NL80211_ATTR_SCAN_FREQUENCIES = 44, +NL80211_ATTR_SCAN_SSIDS = 45, +NL80211_ATTR_GENERATION = 46, +NL80211_ATTR_BSS = 47, +NL80211_ATTR_REG_INITIATOR = 48, +NL80211_ATTR_REG_TYPE = 49, +NL80211_ATTR_SUPPORTED_COMMANDS = 50, +NL80211_ATTR_FRAME = 51, +NL80211_ATTR_SSID = 52, +NL80211_ATTR_AUTH_TYPE = 53, +NL80211_ATTR_REASON_CODE = 54, +NL80211_ATTR_KEY_TYPE = 55, +NL80211_ATTR_MAX_SCAN_IE_LEN = 56, +NL80211_ATTR_CIPHER_SUITES = 57, +NL80211_ATTR_FREQ_BEFORE = 58, +NL80211_ATTR_FREQ_AFTER = 59, +NL80211_ATTR_FREQ_FIXED = 60, +NL80211_ATTR_WIPHY_RETRY_SHORT = 61, +NL80211_ATTR_WIPHY_RETRY_LONG = 62, +NL80211_ATTR_WIPHY_FRAG_THRESHOLD = 63, +NL80211_ATTR_WIPHY_RTS_THRESHOLD = 64, +NL80211_ATTR_TIMED_OUT = 65, +NL80211_ATTR_USE_MFP = 66, +NL80211_ATTR_STA_FLAGS2 = 67, +NL80211_ATTR_CONTROL_PORT = 68, +NL80211_ATTR_TESTDATA = 69, +NL80211_ATTR_PRIVACY = 70, +NL80211_ATTR_DISCONNECTED_BY_AP = 71, +NL80211_ATTR_STATUS_CODE = 72, +NL80211_ATTR_CIPHER_SUITES_PAIRWISE = 73, +NL80211_ATTR_CIPHER_SUITE_GROUP = 74, +NL80211_ATTR_WPA_VERSIONS = 75, +NL80211_ATTR_AKM_SUITES = 76, +NL80211_ATTR_REQ_IE = 77, +NL80211_ATTR_RESP_IE = 78, +NL80211_ATTR_PREV_BSSID = 79, +NL80211_ATTR_KEY = 80, +NL80211_ATTR_KEYS = 81, +NL80211_ATTR_PID = 82, +NL80211_ATTR_4ADDR = 83, +NL80211_ATTR_SURVEY_INFO = 84, +NL80211_ATTR_PMKID = 85, +NL80211_ATTR_MAX_NUM_PMKIDS = 86, +NL80211_ATTR_DURATION = 87, +NL80211_ATTR_COOKIE = 88, +NL80211_ATTR_WIPHY_COVERAGE_CLASS = 89, +NL80211_ATTR_TX_RATES = 90, +NL80211_ATTR_FRAME_MATCH = 91, +NL80211_ATTR_ACK = 92, +NL80211_ATTR_PS_STATE = 93, +NL80211_ATTR_CQM = 94, +NL80211_ATTR_LOCAL_STATE_CHANGE = 95, +NL80211_ATTR_AP_ISOLATE = 96, +NL80211_ATTR_WIPHY_TX_POWER_SETTING = 97, +NL80211_ATTR_WIPHY_TX_POWER_LEVEL = 98, +NL80211_ATTR_TX_FRAME_TYPES = 99, +NL80211_ATTR_RX_FRAME_TYPES = 100, +NL80211_ATTR_FRAME_TYPE = 101, +NL80211_ATTR_CONTROL_PORT_ETHERTYPE = 102, +NL80211_ATTR_CONTROL_PORT_NO_ENCRYPT = 103, +NL80211_ATTR_SUPPORT_IBSS_RSN = 104, +NL80211_ATTR_WIPHY_ANTENNA_TX = 105, +NL80211_ATTR_WIPHY_ANTENNA_RX = 106, +NL80211_ATTR_MCAST_RATE = 107, +NL80211_ATTR_OFFCHANNEL_TX_OK = 108, +NL80211_ATTR_BSS_HT_OPMODE = 109, +NL80211_ATTR_KEY_DEFAULT_TYPES = 110, +NL80211_ATTR_MAX_REMAIN_ON_CHANNEL_DURATION = 111, +NL80211_ATTR_MESH_SETUP = 112, +NL80211_ATTR_WIPHY_ANTENNA_AVAIL_TX = 113, +NL80211_ATTR_WIPHY_ANTENNA_AVAIL_RX = 114, +NL80211_ATTR_SUPPORT_MESH_AUTH = 115, +NL80211_ATTR_STA_PLINK_STATE = 116, +NL80211_ATTR_WOWLAN_TRIGGERS = 117, +NL80211_ATTR_WOWLAN_TRIGGERS_SUPPORTED = 118, +NL80211_ATTR_SCHED_SCAN_INTERVAL = 119, +NL80211_ATTR_INTERFACE_COMBINATIONS = 120, +NL80211_ATTR_SOFTWARE_IFTYPES = 121, +NL80211_ATTR_REKEY_DATA = 122, +NL80211_ATTR_MAX_NUM_SCHED_SCAN_SSIDS = 123, +NL80211_ATTR_MAX_SCHED_SCAN_IE_LEN = 124, +NL80211_ATTR_SCAN_SUPP_RATES = 125, +NL80211_ATTR_HIDDEN_SSID = 126, +NL80211_ATTR_IE_PROBE_RESP = 127, +NL80211_ATTR_IE_ASSOC_RESP = 128, +NL80211_ATTR_STA_WME = 129, +NL80211_ATTR_SUPPORT_AP_UAPSD = 130, +NL80211_ATTR_ROAM_SUPPORT = 131, +NL80211_ATTR_SCHED_SCAN_MATCH = 132, +NL80211_ATTR_MAX_MATCH_SETS = 133, +NL80211_ATTR_PMKSA_CANDIDATE = 134, +NL80211_ATTR_TX_NO_CCK_RATE = 135, +NL80211_ATTR_TDLS_ACTION = 136, +NL80211_ATTR_TDLS_DIALOG_TOKEN = 137, +NL80211_ATTR_TDLS_OPERATION = 138, +NL80211_ATTR_TDLS_SUPPORT = 139, +NL80211_ATTR_TDLS_EXTERNAL_SETUP = 140, +NL80211_ATTR_DEVICE_AP_SME = 141, +NL80211_ATTR_DONT_WAIT_FOR_ACK = 142, +NL80211_ATTR_FEATURE_FLAGS = 143, +NL80211_ATTR_PROBE_RESP_OFFLOAD = 144, +NL80211_ATTR_PROBE_RESP = 145, +NL80211_ATTR_DFS_REGION = 146, +NL80211_ATTR_DISABLE_HT = 147, +NL80211_ATTR_HT_CAPABILITY_MASK = 148, +NL80211_ATTR_NOACK_MAP = 149, +NL80211_ATTR_INACTIVITY_TIMEOUT = 150, +NL80211_ATTR_RX_SIGNAL_DBM = 151, +NL80211_ATTR_BG_SCAN_PERIOD = 152, +NL80211_ATTR_WDEV = 153, +NL80211_ATTR_USER_REG_HINT_TYPE = 154, +NL80211_ATTR_CONN_FAILED_REASON = 155, +NL80211_ATTR_AUTH_DATA = 156, +NL80211_ATTR_VHT_CAPABILITY = 157, +NL80211_ATTR_SCAN_FLAGS = 158, +NL80211_ATTR_CHANNEL_WIDTH = 159, +NL80211_ATTR_CENTER_FREQ1 = 160, +NL80211_ATTR_CENTER_FREQ2 = 161, +NL80211_ATTR_P2P_CTWINDOW = 162, +NL80211_ATTR_P2P_OPPPS = 163, +NL80211_ATTR_LOCAL_MESH_POWER_MODE = 164, +NL80211_ATTR_ACL_POLICY = 165, +NL80211_ATTR_MAC_ADDRS = 166, +NL80211_ATTR_MAC_ACL_MAX = 167, +NL80211_ATTR_RADAR_EVENT = 168, +NL80211_ATTR_EXT_CAPA = 169, +NL80211_ATTR_EXT_CAPA_MASK = 170, +NL80211_ATTR_STA_CAPABILITY = 171, +NL80211_ATTR_STA_EXT_CAPABILITY = 172, +NL80211_ATTR_PROTOCOL_FEATURES = 173, +NL80211_ATTR_SPLIT_WIPHY_DUMP = 174, +NL80211_ATTR_DISABLE_VHT = 175, +NL80211_ATTR_VHT_CAPABILITY_MASK = 176, +NL80211_ATTR_MDID = 177, +NL80211_ATTR_IE_RIC = 178, +NL80211_ATTR_CRIT_PROT_ID = 179, +NL80211_ATTR_MAX_CRIT_PROT_DURATION = 180, +NL80211_ATTR_PEER_AID = 181, +NL80211_ATTR_COALESCE_RULE = 182, +NL80211_ATTR_CH_SWITCH_COUNT = 183, +NL80211_ATTR_CH_SWITCH_BLOCK_TX = 184, +NL80211_ATTR_CSA_IES = 185, +NL80211_ATTR_CNTDWN_OFFS_BEACON = 186, +NL80211_ATTR_CNTDWN_OFFS_PRESP = 187, +NL80211_ATTR_RXMGMT_FLAGS = 188, +NL80211_ATTR_STA_SUPPORTED_CHANNELS = 189, +NL80211_ATTR_STA_SUPPORTED_OPER_CLASSES = 190, +NL80211_ATTR_HANDLE_DFS = 191, +NL80211_ATTR_SUPPORT_5_MHZ = 192, +NL80211_ATTR_SUPPORT_10_MHZ = 193, +NL80211_ATTR_OPMODE_NOTIF = 194, +NL80211_ATTR_VENDOR_ID = 195, +NL80211_ATTR_VENDOR_SUBCMD = 196, +NL80211_ATTR_VENDOR_DATA = 197, +NL80211_ATTR_VENDOR_EVENTS = 198, +NL80211_ATTR_QOS_MAP = 199, +NL80211_ATTR_MAC_HINT = 200, +NL80211_ATTR_WIPHY_FREQ_HINT = 201, +NL80211_ATTR_MAX_AP_ASSOC_STA = 202, +NL80211_ATTR_TDLS_PEER_CAPABILITY = 203, +NL80211_ATTR_SOCKET_OWNER = 204, +NL80211_ATTR_CSA_C_OFFSETS_TX = 205, +NL80211_ATTR_MAX_CSA_COUNTERS = 206, +NL80211_ATTR_TDLS_INITIATOR = 207, +NL80211_ATTR_USE_RRM = 208, +NL80211_ATTR_WIPHY_DYN_ACK = 209, +NL80211_ATTR_TSID = 210, +NL80211_ATTR_USER_PRIO = 211, +NL80211_ATTR_ADMITTED_TIME = 212, +NL80211_ATTR_SMPS_MODE = 213, +NL80211_ATTR_OPER_CLASS = 214, +NL80211_ATTR_MAC_MASK = 215, +NL80211_ATTR_WIPHY_SELF_MANAGED_REG = 216, +NL80211_ATTR_EXT_FEATURES = 217, +NL80211_ATTR_SURVEY_RADIO_STATS = 218, +NL80211_ATTR_NETNS_FD = 219, +NL80211_ATTR_SCHED_SCAN_DELAY = 220, +NL80211_ATTR_REG_INDOOR = 221, +NL80211_ATTR_MAX_NUM_SCHED_SCAN_PLANS = 222, +NL80211_ATTR_MAX_SCAN_PLAN_INTERVAL = 223, +NL80211_ATTR_MAX_SCAN_PLAN_ITERATIONS = 224, +NL80211_ATTR_SCHED_SCAN_PLANS = 225, +NL80211_ATTR_PBSS = 226, +NL80211_ATTR_BSS_SELECT = 227, +NL80211_ATTR_STA_SUPPORT_P2P_PS = 228, +NL80211_ATTR_PAD = 229, +NL80211_ATTR_IFTYPE_EXT_CAPA = 230, +NL80211_ATTR_MU_MIMO_GROUP_DATA = 231, +NL80211_ATTR_MU_MIMO_FOLLOW_MAC_ADDR = 232, +NL80211_ATTR_SCAN_START_TIME_TSF = 233, +NL80211_ATTR_SCAN_START_TIME_TSF_BSSID = 234, +NL80211_ATTR_MEASUREMENT_DURATION = 235, +NL80211_ATTR_MEASUREMENT_DURATION_MANDATORY = 236, +NL80211_ATTR_MESH_PEER_AID = 237, +NL80211_ATTR_NAN_MASTER_PREF = 238, +NL80211_ATTR_BANDS = 239, +NL80211_ATTR_NAN_FUNC = 240, +NL80211_ATTR_NAN_MATCH = 241, +NL80211_ATTR_FILS_KEK = 242, +NL80211_ATTR_FILS_NONCES = 243, +NL80211_ATTR_MULTICAST_TO_UNICAST_ENABLED = 244, +NL80211_ATTR_BSSID = 245, +NL80211_ATTR_SCHED_SCAN_RELATIVE_RSSI = 246, +NL80211_ATTR_SCHED_SCAN_RSSI_ADJUST = 247, +NL80211_ATTR_TIMEOUT_REASON = 248, +NL80211_ATTR_FILS_ERP_USERNAME = 249, +NL80211_ATTR_FILS_ERP_REALM = 250, +NL80211_ATTR_FILS_ERP_NEXT_SEQ_NUM = 251, +NL80211_ATTR_FILS_ERP_RRK = 252, +NL80211_ATTR_FILS_CACHE_ID = 253, +NL80211_ATTR_PMK = 254, +NL80211_ATTR_SCHED_SCAN_MULTI = 255, +NL80211_ATTR_SCHED_SCAN_MAX_REQS = 256, +NL80211_ATTR_WANT_1X_4WAY_HS = 257, +NL80211_ATTR_PMKR0_NAME = 258, +NL80211_ATTR_PORT_AUTHORIZED = 259, +NL80211_ATTR_EXTERNAL_AUTH_ACTION = 260, +NL80211_ATTR_EXTERNAL_AUTH_SUPPORT = 261, +NL80211_ATTR_NSS = 262, +NL80211_ATTR_ACK_SIGNAL = 263, +NL80211_ATTR_CONTROL_PORT_OVER_NL80211 = 264, +NL80211_ATTR_TXQ_STATS = 265, +NL80211_ATTR_TXQ_LIMIT = 266, +NL80211_ATTR_TXQ_MEMORY_LIMIT = 267, +NL80211_ATTR_TXQ_QUANTUM = 268, +NL80211_ATTR_HE_CAPABILITY = 269, +NL80211_ATTR_FTM_RESPONDER = 270, +NL80211_ATTR_FTM_RESPONDER_STATS = 271, +NL80211_ATTR_TIMEOUT = 272, +NL80211_ATTR_PEER_MEASUREMENTS = 273, +NL80211_ATTR_AIRTIME_WEIGHT = 274, +NL80211_ATTR_STA_TX_POWER_SETTING = 275, +NL80211_ATTR_STA_TX_POWER = 276, +NL80211_ATTR_SAE_PASSWORD = 277, +NL80211_ATTR_TWT_RESPONDER = 278, +NL80211_ATTR_HE_OBSS_PD = 279, +NL80211_ATTR_WIPHY_EDMG_CHANNELS = 280, +NL80211_ATTR_WIPHY_EDMG_BW_CONFIG = 281, +NL80211_ATTR_VLAN_ID = 282, +NL80211_ATTR_HE_BSS_COLOR = 283, +NL80211_ATTR_IFTYPE_AKM_SUITES = 284, +NL80211_ATTR_TID_CONFIG = 285, +NL80211_ATTR_CONTROL_PORT_NO_PREAUTH = 286, +NL80211_ATTR_PMK_LIFETIME = 287, +NL80211_ATTR_PMK_REAUTH_THRESHOLD = 288, +NL80211_ATTR_RECEIVE_MULTICAST = 289, +NL80211_ATTR_WIPHY_FREQ_OFFSET = 290, +NL80211_ATTR_CENTER_FREQ1_OFFSET = 291, +NL80211_ATTR_SCAN_FREQ_KHZ = 292, +NL80211_ATTR_HE_6GHZ_CAPABILITY = 293, +NL80211_ATTR_FILS_DISCOVERY = 294, +NL80211_ATTR_UNSOL_BCAST_PROBE_RESP = 295, +NL80211_ATTR_S1G_CAPABILITY = 296, +NL80211_ATTR_S1G_CAPABILITY_MASK = 297, +NL80211_ATTR_SAE_PWE = 298, +NL80211_ATTR_RECONNECT_REQUESTED = 299, +NL80211_ATTR_SAR_SPEC = 300, +NL80211_ATTR_DISABLE_HE = 301, +NL80211_ATTR_OBSS_COLOR_BITMAP = 302, +NL80211_ATTR_COLOR_CHANGE_COUNT = 303, +NL80211_ATTR_COLOR_CHANGE_COLOR = 304, +NL80211_ATTR_COLOR_CHANGE_ELEMS = 305, +NL80211_ATTR_MBSSID_CONFIG = 306, +NL80211_ATTR_MBSSID_ELEMS = 307, +NL80211_ATTR_RADAR_BACKGROUND = 308, +NL80211_ATTR_AP_SETTINGS_FLAGS = 309, +NL80211_ATTR_EHT_CAPABILITY = 310, +NL80211_ATTR_DISABLE_EHT = 311, +NL80211_ATTR_MLO_LINKS = 312, +NL80211_ATTR_MLO_LINK_ID = 313, +NL80211_ATTR_MLD_ADDR = 314, +NL80211_ATTR_MLO_SUPPORT = 315, +NL80211_ATTR_MAX_NUM_AKM_SUITES = 316, +NL80211_ATTR_EML_CAPABILITY = 317, +NL80211_ATTR_MLD_CAPA_AND_OPS = 318, +NL80211_ATTR_TX_HW_TIMESTAMP = 319, +NL80211_ATTR_RX_HW_TIMESTAMP = 320, +NL80211_ATTR_TD_BITMAP = 321, +NL80211_ATTR_PUNCT_BITMAP = 322, +NL80211_ATTR_MAX_HW_TIMESTAMP_PEERS = 323, +NL80211_ATTR_HW_TIMESTAMP_ENABLED = 324, +NL80211_ATTR_EMA_RNR_ELEMS = 325, +NL80211_ATTR_MLO_LINK_DISABLED = 326, +NL80211_ATTR_BSS_DUMP_INCLUDE_USE_DATA = 327, +NL80211_ATTR_MLO_TTLM_DLINK = 328, +NL80211_ATTR_MLO_TTLM_ULINK = 329, +NL80211_ATTR_ASSOC_SPP_AMSDU = 330, +NL80211_ATTR_WIPHY_RADIOS = 331, +NL80211_ATTR_WIPHY_INTERFACE_COMBINATIONS = 332, +NL80211_ATTR_VIF_RADIO_MASK = 333, +NL80211_ATTR_SUPPORTED_SELECTORS = 334, +NL80211_ATTR_MLO_RECONF_REM_LINKS = 335, +NL80211_ATTR_EPCS = 336, +NL80211_ATTR_ASSOC_MLD_EXT_CAPA_OPS = 337, +NL80211_ATTR_WIPHY_RADIO_INDEX = 338, +NL80211_ATTR_S1G_LONG_BEACON_PERIOD = 339, +NL80211_ATTR_S1G_SHORT_BEACON = 340, +__NL80211_ATTR_AFTER_LAST = 341, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_iftype { +NL80211_IFTYPE_UNSPECIFIED = 0, +NL80211_IFTYPE_ADHOC = 1, +NL80211_IFTYPE_STATION = 2, +NL80211_IFTYPE_AP = 3, +NL80211_IFTYPE_AP_VLAN = 4, +NL80211_IFTYPE_WDS = 5, +NL80211_IFTYPE_MONITOR = 6, +NL80211_IFTYPE_MESH_POINT = 7, +NL80211_IFTYPE_P2P_CLIENT = 8, +NL80211_IFTYPE_P2P_GO = 9, +NL80211_IFTYPE_P2P_DEVICE = 10, +NL80211_IFTYPE_OCB = 11, +NL80211_IFTYPE_NAN = 12, +NUM_NL80211_IFTYPES = 13, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_sta_flags { +__NL80211_STA_FLAG_INVALID = 0, +NL80211_STA_FLAG_AUTHORIZED = 1, +NL80211_STA_FLAG_SHORT_PREAMBLE = 2, +NL80211_STA_FLAG_WME = 3, +NL80211_STA_FLAG_MFP = 4, +NL80211_STA_FLAG_AUTHENTICATED = 5, +NL80211_STA_FLAG_TDLS_PEER = 6, +NL80211_STA_FLAG_ASSOCIATED = 7, +NL80211_STA_FLAG_SPP_AMSDU = 8, +__NL80211_STA_FLAG_AFTER_LAST = 9, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_sta_p2p_ps_status { +NL80211_P2P_PS_UNSUPPORTED = 0, +NL80211_P2P_PS_SUPPORTED = 1, +NUM_NL80211_P2P_PS_STATUS = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_he_gi { +NL80211_RATE_INFO_HE_GI_0_8 = 0, +NL80211_RATE_INFO_HE_GI_1_6 = 1, +NL80211_RATE_INFO_HE_GI_3_2 = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_he_ltf { +NL80211_RATE_INFO_HE_1XLTF = 0, +NL80211_RATE_INFO_HE_2XLTF = 1, +NL80211_RATE_INFO_HE_4XLTF = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_he_ru_alloc { +NL80211_RATE_INFO_HE_RU_ALLOC_26 = 0, +NL80211_RATE_INFO_HE_RU_ALLOC_52 = 1, +NL80211_RATE_INFO_HE_RU_ALLOC_106 = 2, +NL80211_RATE_INFO_HE_RU_ALLOC_242 = 3, +NL80211_RATE_INFO_HE_RU_ALLOC_484 = 4, +NL80211_RATE_INFO_HE_RU_ALLOC_996 = 5, +NL80211_RATE_INFO_HE_RU_ALLOC_2x996 = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_eht_gi { +NL80211_RATE_INFO_EHT_GI_0_8 = 0, +NL80211_RATE_INFO_EHT_GI_1_6 = 1, +NL80211_RATE_INFO_EHT_GI_3_2 = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_eht_ru_alloc { +NL80211_RATE_INFO_EHT_RU_ALLOC_26 = 0, +NL80211_RATE_INFO_EHT_RU_ALLOC_52 = 1, +NL80211_RATE_INFO_EHT_RU_ALLOC_52P26 = 2, +NL80211_RATE_INFO_EHT_RU_ALLOC_106 = 3, +NL80211_RATE_INFO_EHT_RU_ALLOC_106P26 = 4, +NL80211_RATE_INFO_EHT_RU_ALLOC_242 = 5, +NL80211_RATE_INFO_EHT_RU_ALLOC_484 = 6, +NL80211_RATE_INFO_EHT_RU_ALLOC_484P242 = 7, +NL80211_RATE_INFO_EHT_RU_ALLOC_996 = 8, +NL80211_RATE_INFO_EHT_RU_ALLOC_996P484 = 9, +NL80211_RATE_INFO_EHT_RU_ALLOC_996P484P242 = 10, +NL80211_RATE_INFO_EHT_RU_ALLOC_2x996 = 11, +NL80211_RATE_INFO_EHT_RU_ALLOC_2x996P484 = 12, +NL80211_RATE_INFO_EHT_RU_ALLOC_3x996 = 13, +NL80211_RATE_INFO_EHT_RU_ALLOC_3x996P484 = 14, +NL80211_RATE_INFO_EHT_RU_ALLOC_4x996 = 15, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_rate_info { +__NL80211_RATE_INFO_INVALID = 0, +NL80211_RATE_INFO_BITRATE = 1, +NL80211_RATE_INFO_MCS = 2, +NL80211_RATE_INFO_40_MHZ_WIDTH = 3, +NL80211_RATE_INFO_SHORT_GI = 4, +NL80211_RATE_INFO_BITRATE32 = 5, +NL80211_RATE_INFO_VHT_MCS = 6, +NL80211_RATE_INFO_VHT_NSS = 7, +NL80211_RATE_INFO_80_MHZ_WIDTH = 8, +NL80211_RATE_INFO_80P80_MHZ_WIDTH = 9, +NL80211_RATE_INFO_160_MHZ_WIDTH = 10, +NL80211_RATE_INFO_10_MHZ_WIDTH = 11, +NL80211_RATE_INFO_5_MHZ_WIDTH = 12, +NL80211_RATE_INFO_HE_MCS = 13, +NL80211_RATE_INFO_HE_NSS = 14, +NL80211_RATE_INFO_HE_GI = 15, +NL80211_RATE_INFO_HE_DCM = 16, +NL80211_RATE_INFO_HE_RU_ALLOC = 17, +NL80211_RATE_INFO_320_MHZ_WIDTH = 18, +NL80211_RATE_INFO_EHT_MCS = 19, +NL80211_RATE_INFO_EHT_NSS = 20, +NL80211_RATE_INFO_EHT_GI = 21, +NL80211_RATE_INFO_EHT_RU_ALLOC = 22, +NL80211_RATE_INFO_S1G_MCS = 23, +NL80211_RATE_INFO_S1G_NSS = 24, +NL80211_RATE_INFO_1_MHZ_WIDTH = 25, +NL80211_RATE_INFO_2_MHZ_WIDTH = 26, +NL80211_RATE_INFO_4_MHZ_WIDTH = 27, +NL80211_RATE_INFO_8_MHZ_WIDTH = 28, +NL80211_RATE_INFO_16_MHZ_WIDTH = 29, +__NL80211_RATE_INFO_AFTER_LAST = 30, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_sta_bss_param { +__NL80211_STA_BSS_PARAM_INVALID = 0, +NL80211_STA_BSS_PARAM_CTS_PROT = 1, +NL80211_STA_BSS_PARAM_SHORT_PREAMBLE = 2, +NL80211_STA_BSS_PARAM_SHORT_SLOT_TIME = 3, +NL80211_STA_BSS_PARAM_DTIM_PERIOD = 4, +NL80211_STA_BSS_PARAM_BEACON_INTERVAL = 5, +__NL80211_STA_BSS_PARAM_AFTER_LAST = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_sta_info { +__NL80211_STA_INFO_INVALID = 0, +NL80211_STA_INFO_INACTIVE_TIME = 1, +NL80211_STA_INFO_RX_BYTES = 2, +NL80211_STA_INFO_TX_BYTES = 3, +NL80211_STA_INFO_LLID = 4, +NL80211_STA_INFO_PLID = 5, +NL80211_STA_INFO_PLINK_STATE = 6, +NL80211_STA_INFO_SIGNAL = 7, +NL80211_STA_INFO_TX_BITRATE = 8, +NL80211_STA_INFO_RX_PACKETS = 9, +NL80211_STA_INFO_TX_PACKETS = 10, +NL80211_STA_INFO_TX_RETRIES = 11, +NL80211_STA_INFO_TX_FAILED = 12, +NL80211_STA_INFO_SIGNAL_AVG = 13, +NL80211_STA_INFO_RX_BITRATE = 14, +NL80211_STA_INFO_BSS_PARAM = 15, +NL80211_STA_INFO_CONNECTED_TIME = 16, +NL80211_STA_INFO_STA_FLAGS = 17, +NL80211_STA_INFO_BEACON_LOSS = 18, +NL80211_STA_INFO_T_OFFSET = 19, +NL80211_STA_INFO_LOCAL_PM = 20, +NL80211_STA_INFO_PEER_PM = 21, +NL80211_STA_INFO_NONPEER_PM = 22, +NL80211_STA_INFO_RX_BYTES64 = 23, +NL80211_STA_INFO_TX_BYTES64 = 24, +NL80211_STA_INFO_CHAIN_SIGNAL = 25, +NL80211_STA_INFO_CHAIN_SIGNAL_AVG = 26, +NL80211_STA_INFO_EXPECTED_THROUGHPUT = 27, +NL80211_STA_INFO_RX_DROP_MISC = 28, +NL80211_STA_INFO_BEACON_RX = 29, +NL80211_STA_INFO_BEACON_SIGNAL_AVG = 30, +NL80211_STA_INFO_TID_STATS = 31, +NL80211_STA_INFO_RX_DURATION = 32, +NL80211_STA_INFO_PAD = 33, +NL80211_STA_INFO_ACK_SIGNAL = 34, +NL80211_STA_INFO_ACK_SIGNAL_AVG = 35, +NL80211_STA_INFO_RX_MPDUS = 36, +NL80211_STA_INFO_FCS_ERROR_COUNT = 37, +NL80211_STA_INFO_CONNECTED_TO_GATE = 38, +NL80211_STA_INFO_TX_DURATION = 39, +NL80211_STA_INFO_AIRTIME_WEIGHT = 40, +NL80211_STA_INFO_AIRTIME_LINK_METRIC = 41, +NL80211_STA_INFO_ASSOC_AT_BOOTTIME = 42, +NL80211_STA_INFO_CONNECTED_TO_AS = 43, +__NL80211_STA_INFO_AFTER_LAST = 44, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_tid_stats { +__NL80211_TID_STATS_INVALID = 0, +NL80211_TID_STATS_RX_MSDU = 1, +NL80211_TID_STATS_TX_MSDU = 2, +NL80211_TID_STATS_TX_MSDU_RETRIES = 3, +NL80211_TID_STATS_TX_MSDU_FAILED = 4, +NL80211_TID_STATS_PAD = 5, +NL80211_TID_STATS_TXQ_STATS = 6, +NUM_NL80211_TID_STATS = 7, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_txq_stats { +__NL80211_TXQ_STATS_INVALID = 0, +NL80211_TXQ_STATS_BACKLOG_BYTES = 1, +NL80211_TXQ_STATS_BACKLOG_PACKETS = 2, +NL80211_TXQ_STATS_FLOWS = 3, +NL80211_TXQ_STATS_DROPS = 4, +NL80211_TXQ_STATS_ECN_MARKS = 5, +NL80211_TXQ_STATS_OVERLIMIT = 6, +NL80211_TXQ_STATS_OVERMEMORY = 7, +NL80211_TXQ_STATS_COLLISIONS = 8, +NL80211_TXQ_STATS_TX_BYTES = 9, +NL80211_TXQ_STATS_TX_PACKETS = 10, +NL80211_TXQ_STATS_MAX_FLOWS = 11, +NUM_NL80211_TXQ_STATS = 12, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_mpath_flags { +NL80211_MPATH_FLAG_ACTIVE = 1, +NL80211_MPATH_FLAG_RESOLVING = 2, +NL80211_MPATH_FLAG_SN_VALID = 4, +NL80211_MPATH_FLAG_FIXED = 8, +NL80211_MPATH_FLAG_RESOLVED = 16, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_mpath_info { +__NL80211_MPATH_INFO_INVALID = 0, +NL80211_MPATH_INFO_FRAME_QLEN = 1, +NL80211_MPATH_INFO_SN = 2, +NL80211_MPATH_INFO_METRIC = 3, +NL80211_MPATH_INFO_EXPTIME = 4, +NL80211_MPATH_INFO_FLAGS = 5, +NL80211_MPATH_INFO_DISCOVERY_TIMEOUT = 6, +NL80211_MPATH_INFO_DISCOVERY_RETRIES = 7, +NL80211_MPATH_INFO_HOP_COUNT = 8, +NL80211_MPATH_INFO_PATH_CHANGE = 9, +__NL80211_MPATH_INFO_AFTER_LAST = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_band_iftype_attr { +__NL80211_BAND_IFTYPE_ATTR_INVALID = 0, +NL80211_BAND_IFTYPE_ATTR_IFTYPES = 1, +NL80211_BAND_IFTYPE_ATTR_HE_CAP_MAC = 2, +NL80211_BAND_IFTYPE_ATTR_HE_CAP_PHY = 3, +NL80211_BAND_IFTYPE_ATTR_HE_CAP_MCS_SET = 4, +NL80211_BAND_IFTYPE_ATTR_HE_CAP_PPE = 5, +NL80211_BAND_IFTYPE_ATTR_HE_6GHZ_CAPA = 6, +NL80211_BAND_IFTYPE_ATTR_VENDOR_ELEMS = 7, +NL80211_BAND_IFTYPE_ATTR_EHT_CAP_MAC = 8, +NL80211_BAND_IFTYPE_ATTR_EHT_CAP_PHY = 9, +NL80211_BAND_IFTYPE_ATTR_EHT_CAP_MCS_SET = 10, +NL80211_BAND_IFTYPE_ATTR_EHT_CAP_PPE = 11, +__NL80211_BAND_IFTYPE_ATTR_AFTER_LAST = 12, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_band_attr { +__NL80211_BAND_ATTR_INVALID = 0, +NL80211_BAND_ATTR_FREQS = 1, +NL80211_BAND_ATTR_RATES = 2, +NL80211_BAND_ATTR_HT_MCS_SET = 3, +NL80211_BAND_ATTR_HT_CAPA = 4, +NL80211_BAND_ATTR_HT_AMPDU_FACTOR = 5, +NL80211_BAND_ATTR_HT_AMPDU_DENSITY = 6, +NL80211_BAND_ATTR_VHT_MCS_SET = 7, +NL80211_BAND_ATTR_VHT_CAPA = 8, +NL80211_BAND_ATTR_IFTYPE_DATA = 9, +NL80211_BAND_ATTR_EDMG_CHANNELS = 10, +NL80211_BAND_ATTR_EDMG_BW_CONFIG = 11, +NL80211_BAND_ATTR_S1G_MCS_NSS_SET = 12, +NL80211_BAND_ATTR_S1G_CAPA = 13, +__NL80211_BAND_ATTR_AFTER_LAST = 14, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_wmm_rule { +__NL80211_WMMR_INVALID = 0, +NL80211_WMMR_CW_MIN = 1, +NL80211_WMMR_CW_MAX = 2, +NL80211_WMMR_AIFSN = 3, +NL80211_WMMR_TXOP = 4, +__NL80211_WMMR_LAST = 5, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_frequency_attr { +__NL80211_FREQUENCY_ATTR_INVALID = 0, +NL80211_FREQUENCY_ATTR_FREQ = 1, +NL80211_FREQUENCY_ATTR_DISABLED = 2, +NL80211_FREQUENCY_ATTR_NO_IR = 3, +__NL80211_FREQUENCY_ATTR_NO_IBSS = 4, +NL80211_FREQUENCY_ATTR_RADAR = 5, +NL80211_FREQUENCY_ATTR_MAX_TX_POWER = 6, +NL80211_FREQUENCY_ATTR_DFS_STATE = 7, +NL80211_FREQUENCY_ATTR_DFS_TIME = 8, +NL80211_FREQUENCY_ATTR_NO_HT40_MINUS = 9, +NL80211_FREQUENCY_ATTR_NO_HT40_PLUS = 10, +NL80211_FREQUENCY_ATTR_NO_80MHZ = 11, +NL80211_FREQUENCY_ATTR_NO_160MHZ = 12, +NL80211_FREQUENCY_ATTR_DFS_CAC_TIME = 13, +NL80211_FREQUENCY_ATTR_INDOOR_ONLY = 14, +NL80211_FREQUENCY_ATTR_IR_CONCURRENT = 15, +NL80211_FREQUENCY_ATTR_NO_20MHZ = 16, +NL80211_FREQUENCY_ATTR_NO_10MHZ = 17, +NL80211_FREQUENCY_ATTR_WMM = 18, +NL80211_FREQUENCY_ATTR_NO_HE = 19, +NL80211_FREQUENCY_ATTR_OFFSET = 20, +NL80211_FREQUENCY_ATTR_1MHZ = 21, +NL80211_FREQUENCY_ATTR_2MHZ = 22, +NL80211_FREQUENCY_ATTR_4MHZ = 23, +NL80211_FREQUENCY_ATTR_8MHZ = 24, +NL80211_FREQUENCY_ATTR_16MHZ = 25, +NL80211_FREQUENCY_ATTR_NO_320MHZ = 26, +NL80211_FREQUENCY_ATTR_NO_EHT = 27, +NL80211_FREQUENCY_ATTR_PSD = 28, +NL80211_FREQUENCY_ATTR_DFS_CONCURRENT = 29, +NL80211_FREQUENCY_ATTR_NO_6GHZ_VLP_CLIENT = 30, +NL80211_FREQUENCY_ATTR_NO_6GHZ_AFC_CLIENT = 31, +NL80211_FREQUENCY_ATTR_CAN_MONITOR = 32, +NL80211_FREQUENCY_ATTR_ALLOW_6GHZ_VLP_AP = 33, +NL80211_FREQUENCY_ATTR_ALLOW_20MHZ_ACTIVITY = 34, +__NL80211_FREQUENCY_ATTR_AFTER_LAST = 35, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_bitrate_attr { +__NL80211_BITRATE_ATTR_INVALID = 0, +NL80211_BITRATE_ATTR_RATE = 1, +NL80211_BITRATE_ATTR_2GHZ_SHORTPREAMBLE = 2, +__NL80211_BITRATE_ATTR_AFTER_LAST = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_reg_initiator { +NL80211_REGDOM_SET_BY_CORE = 0, +NL80211_REGDOM_SET_BY_USER = 1, +NL80211_REGDOM_SET_BY_DRIVER = 2, +NL80211_REGDOM_SET_BY_COUNTRY_IE = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_reg_type { +NL80211_REGDOM_TYPE_COUNTRY = 0, +NL80211_REGDOM_TYPE_WORLD = 1, +NL80211_REGDOM_TYPE_CUSTOM_WORLD = 2, +NL80211_REGDOM_TYPE_INTERSECTION = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_reg_rule_attr { +__NL80211_REG_RULE_ATTR_INVALID = 0, +NL80211_ATTR_REG_RULE_FLAGS = 1, +NL80211_ATTR_FREQ_RANGE_START = 2, +NL80211_ATTR_FREQ_RANGE_END = 3, +NL80211_ATTR_FREQ_RANGE_MAX_BW = 4, +NL80211_ATTR_POWER_RULE_MAX_ANT_GAIN = 5, +NL80211_ATTR_POWER_RULE_MAX_EIRP = 6, +NL80211_ATTR_DFS_CAC_TIME = 7, +NL80211_ATTR_POWER_RULE_PSD = 8, +__NL80211_REG_RULE_ATTR_AFTER_LAST = 9, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_sched_scan_match_attr { +__NL80211_SCHED_SCAN_MATCH_ATTR_INVALID = 0, +NL80211_SCHED_SCAN_MATCH_ATTR_SSID = 1, +NL80211_SCHED_SCAN_MATCH_ATTR_RSSI = 2, +NL80211_SCHED_SCAN_MATCH_ATTR_RELATIVE_RSSI = 3, +NL80211_SCHED_SCAN_MATCH_ATTR_RSSI_ADJUST = 4, +NL80211_SCHED_SCAN_MATCH_ATTR_BSSID = 5, +NL80211_SCHED_SCAN_MATCH_PER_BAND_RSSI = 6, +__NL80211_SCHED_SCAN_MATCH_ATTR_AFTER_LAST = 7, +} +#[repr(u32)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_reg_rule_flags { +NL80211_RRF_NO_OFDM = 1, +NL80211_RRF_NO_CCK = 2, +NL80211_RRF_NO_INDOOR = 4, +NL80211_RRF_NO_OUTDOOR = 8, +NL80211_RRF_DFS = 16, +NL80211_RRF_PTP_ONLY = 32, +NL80211_RRF_PTMP_ONLY = 64, +NL80211_RRF_NO_IR = 128, +__NL80211_RRF_NO_IBSS = 256, +NL80211_RRF_AUTO_BW = 2048, +NL80211_RRF_IR_CONCURRENT = 4096, +NL80211_RRF_NO_HT40MINUS = 8192, +NL80211_RRF_NO_HT40PLUS = 16384, +NL80211_RRF_NO_80MHZ = 32768, +NL80211_RRF_NO_160MHZ = 65536, +NL80211_RRF_NO_HE = 131072, +NL80211_RRF_NO_320MHZ = 262144, +NL80211_RRF_NO_EHT = 524288, +NL80211_RRF_PSD = 1048576, +NL80211_RRF_DFS_CONCURRENT = 2097152, +NL80211_RRF_NO_6GHZ_VLP_CLIENT = 4194304, +NL80211_RRF_NO_6GHZ_AFC_CLIENT = 8388608, +NL80211_RRF_ALLOW_6GHZ_VLP_AP = 16777216, +NL80211_RRF_ALLOW_20MHZ_ACTIVITY = 33554432, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_dfs_regions { +NL80211_DFS_UNSET = 0, +NL80211_DFS_FCC = 1, +NL80211_DFS_ETSI = 2, +NL80211_DFS_JP = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_user_reg_hint_type { +NL80211_USER_REG_HINT_USER = 0, +NL80211_USER_REG_HINT_CELL_BASE = 1, +NL80211_USER_REG_HINT_INDOOR = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_survey_info { +__NL80211_SURVEY_INFO_INVALID = 0, +NL80211_SURVEY_INFO_FREQUENCY = 1, +NL80211_SURVEY_INFO_NOISE = 2, +NL80211_SURVEY_INFO_IN_USE = 3, +NL80211_SURVEY_INFO_TIME = 4, +NL80211_SURVEY_INFO_TIME_BUSY = 5, +NL80211_SURVEY_INFO_TIME_EXT_BUSY = 6, +NL80211_SURVEY_INFO_TIME_RX = 7, +NL80211_SURVEY_INFO_TIME_TX = 8, +NL80211_SURVEY_INFO_TIME_SCAN = 9, +NL80211_SURVEY_INFO_PAD = 10, +NL80211_SURVEY_INFO_TIME_BSS_RX = 11, +NL80211_SURVEY_INFO_FREQUENCY_OFFSET = 12, +__NL80211_SURVEY_INFO_AFTER_LAST = 13, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_mntr_flags { +__NL80211_MNTR_FLAG_INVALID = 0, +NL80211_MNTR_FLAG_FCSFAIL = 1, +NL80211_MNTR_FLAG_PLCPFAIL = 2, +NL80211_MNTR_FLAG_CONTROL = 3, +NL80211_MNTR_FLAG_OTHER_BSS = 4, +NL80211_MNTR_FLAG_COOK_FRAMES = 5, +NL80211_MNTR_FLAG_ACTIVE = 6, +NL80211_MNTR_FLAG_SKIP_TX = 7, +__NL80211_MNTR_FLAG_AFTER_LAST = 8, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_mesh_power_mode { +NL80211_MESH_POWER_UNKNOWN = 0, +NL80211_MESH_POWER_ACTIVE = 1, +NL80211_MESH_POWER_LIGHT_SLEEP = 2, +NL80211_MESH_POWER_DEEP_SLEEP = 3, +__NL80211_MESH_POWER_AFTER_LAST = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_meshconf_params { +__NL80211_MESHCONF_INVALID = 0, +NL80211_MESHCONF_RETRY_TIMEOUT = 1, +NL80211_MESHCONF_CONFIRM_TIMEOUT = 2, +NL80211_MESHCONF_HOLDING_TIMEOUT = 3, +NL80211_MESHCONF_MAX_PEER_LINKS = 4, +NL80211_MESHCONF_MAX_RETRIES = 5, +NL80211_MESHCONF_TTL = 6, +NL80211_MESHCONF_AUTO_OPEN_PLINKS = 7, +NL80211_MESHCONF_HWMP_MAX_PREQ_RETRIES = 8, +NL80211_MESHCONF_PATH_REFRESH_TIME = 9, +NL80211_MESHCONF_MIN_DISCOVERY_TIMEOUT = 10, +NL80211_MESHCONF_HWMP_ACTIVE_PATH_TIMEOUT = 11, +NL80211_MESHCONF_HWMP_PREQ_MIN_INTERVAL = 12, +NL80211_MESHCONF_HWMP_NET_DIAM_TRVS_TIME = 13, +NL80211_MESHCONF_HWMP_ROOTMODE = 14, +NL80211_MESHCONF_ELEMENT_TTL = 15, +NL80211_MESHCONF_HWMP_RANN_INTERVAL = 16, +NL80211_MESHCONF_GATE_ANNOUNCEMENTS = 17, +NL80211_MESHCONF_HWMP_PERR_MIN_INTERVAL = 18, +NL80211_MESHCONF_FORWARDING = 19, +NL80211_MESHCONF_RSSI_THRESHOLD = 20, +NL80211_MESHCONF_SYNC_OFFSET_MAX_NEIGHBOR = 21, +NL80211_MESHCONF_HT_OPMODE = 22, +NL80211_MESHCONF_HWMP_PATH_TO_ROOT_TIMEOUT = 23, +NL80211_MESHCONF_HWMP_ROOT_INTERVAL = 24, +NL80211_MESHCONF_HWMP_CONFIRMATION_INTERVAL = 25, +NL80211_MESHCONF_POWER_MODE = 26, +NL80211_MESHCONF_AWAKE_WINDOW = 27, +NL80211_MESHCONF_PLINK_TIMEOUT = 28, +NL80211_MESHCONF_CONNECTED_TO_GATE = 29, +NL80211_MESHCONF_NOLEARN = 30, +NL80211_MESHCONF_CONNECTED_TO_AS = 31, +__NL80211_MESHCONF_ATTR_AFTER_LAST = 32, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_mesh_setup_params { +__NL80211_MESH_SETUP_INVALID = 0, +NL80211_MESH_SETUP_ENABLE_VENDOR_PATH_SEL = 1, +NL80211_MESH_SETUP_ENABLE_VENDOR_METRIC = 2, +NL80211_MESH_SETUP_IE = 3, +NL80211_MESH_SETUP_USERSPACE_AUTH = 4, +NL80211_MESH_SETUP_USERSPACE_AMPE = 5, +NL80211_MESH_SETUP_ENABLE_VENDOR_SYNC = 6, +NL80211_MESH_SETUP_USERSPACE_MPM = 7, +NL80211_MESH_SETUP_AUTH_PROTOCOL = 8, +__NL80211_MESH_SETUP_ATTR_AFTER_LAST = 9, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_txq_attr { +__NL80211_TXQ_ATTR_INVALID = 0, +NL80211_TXQ_ATTR_AC = 1, +NL80211_TXQ_ATTR_TXOP = 2, +NL80211_TXQ_ATTR_CWMIN = 3, +NL80211_TXQ_ATTR_CWMAX = 4, +NL80211_TXQ_ATTR_AIFS = 5, +__NL80211_TXQ_ATTR_AFTER_LAST = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_ac { +NL80211_AC_VO = 0, +NL80211_AC_VI = 1, +NL80211_AC_BE = 2, +NL80211_AC_BK = 3, +NL80211_NUM_ACS = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_channel_type { +NL80211_CHAN_NO_HT = 0, +NL80211_CHAN_HT20 = 1, +NL80211_CHAN_HT40MINUS = 2, +NL80211_CHAN_HT40PLUS = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_key_mode { +NL80211_KEY_RX_TX = 0, +NL80211_KEY_NO_TX = 1, +NL80211_KEY_SET_TX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_chan_width { +NL80211_CHAN_WIDTH_20_NOHT = 0, +NL80211_CHAN_WIDTH_20 = 1, +NL80211_CHAN_WIDTH_40 = 2, +NL80211_CHAN_WIDTH_80 = 3, +NL80211_CHAN_WIDTH_80P80 = 4, +NL80211_CHAN_WIDTH_160 = 5, +NL80211_CHAN_WIDTH_5 = 6, +NL80211_CHAN_WIDTH_10 = 7, +NL80211_CHAN_WIDTH_1 = 8, +NL80211_CHAN_WIDTH_2 = 9, +NL80211_CHAN_WIDTH_4 = 10, +NL80211_CHAN_WIDTH_8 = 11, +NL80211_CHAN_WIDTH_16 = 12, +NL80211_CHAN_WIDTH_320 = 13, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_bss_scan_width { +NL80211_BSS_CHAN_WIDTH_20 = 0, +NL80211_BSS_CHAN_WIDTH_10 = 1, +NL80211_BSS_CHAN_WIDTH_5 = 2, +NL80211_BSS_CHAN_WIDTH_1 = 3, +NL80211_BSS_CHAN_WIDTH_2 = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_bss_use_for { +NL80211_BSS_USE_FOR_NORMAL = 1, +NL80211_BSS_USE_FOR_MLD_LINK = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_bss_cannot_use_reasons { +NL80211_BSS_CANNOT_USE_NSTR_NONPRIMARY = 1, +NL80211_BSS_CANNOT_USE_6GHZ_PWR_MISMATCH = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_bss { +__NL80211_BSS_INVALID = 0, +NL80211_BSS_BSSID = 1, +NL80211_BSS_FREQUENCY = 2, +NL80211_BSS_TSF = 3, +NL80211_BSS_BEACON_INTERVAL = 4, +NL80211_BSS_CAPABILITY = 5, +NL80211_BSS_INFORMATION_ELEMENTS = 6, +NL80211_BSS_SIGNAL_MBM = 7, +NL80211_BSS_SIGNAL_UNSPEC = 8, +NL80211_BSS_STATUS = 9, +NL80211_BSS_SEEN_MS_AGO = 10, +NL80211_BSS_BEACON_IES = 11, +NL80211_BSS_CHAN_WIDTH = 12, +NL80211_BSS_BEACON_TSF = 13, +NL80211_BSS_PRESP_DATA = 14, +NL80211_BSS_LAST_SEEN_BOOTTIME = 15, +NL80211_BSS_PAD = 16, +NL80211_BSS_PARENT_TSF = 17, +NL80211_BSS_PARENT_BSSID = 18, +NL80211_BSS_CHAIN_SIGNAL = 19, +NL80211_BSS_FREQUENCY_OFFSET = 20, +NL80211_BSS_MLO_LINK_ID = 21, +NL80211_BSS_MLD_ADDR = 22, +NL80211_BSS_USE_FOR = 23, +NL80211_BSS_CANNOT_USE_REASONS = 24, +__NL80211_BSS_AFTER_LAST = 25, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_bss_status { +NL80211_BSS_STATUS_AUTHENTICATED = 0, +NL80211_BSS_STATUS_ASSOCIATED = 1, +NL80211_BSS_STATUS_IBSS_JOINED = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_auth_type { +NL80211_AUTHTYPE_OPEN_SYSTEM = 0, +NL80211_AUTHTYPE_SHARED_KEY = 1, +NL80211_AUTHTYPE_FT = 2, +NL80211_AUTHTYPE_NETWORK_EAP = 3, +NL80211_AUTHTYPE_SAE = 4, +NL80211_AUTHTYPE_FILS_SK = 5, +NL80211_AUTHTYPE_FILS_SK_PFS = 6, +NL80211_AUTHTYPE_FILS_PK = 7, +__NL80211_AUTHTYPE_NUM = 8, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_key_type { +NL80211_KEYTYPE_GROUP = 0, +NL80211_KEYTYPE_PAIRWISE = 1, +NL80211_KEYTYPE_PEERKEY = 2, +NUM_NL80211_KEYTYPES = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_mfp { +NL80211_MFP_NO = 0, +NL80211_MFP_REQUIRED = 1, +NL80211_MFP_OPTIONAL = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_wpa_versions { +NL80211_WPA_VERSION_1 = 1, +NL80211_WPA_VERSION_2 = 2, +NL80211_WPA_VERSION_3 = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_key_default_types { +__NL80211_KEY_DEFAULT_TYPE_INVALID = 0, +NL80211_KEY_DEFAULT_TYPE_UNICAST = 1, +NL80211_KEY_DEFAULT_TYPE_MULTICAST = 2, +NUM_NL80211_KEY_DEFAULT_TYPES = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_key_attributes { +__NL80211_KEY_INVALID = 0, +NL80211_KEY_DATA = 1, +NL80211_KEY_IDX = 2, +NL80211_KEY_CIPHER = 3, +NL80211_KEY_SEQ = 4, +NL80211_KEY_DEFAULT = 5, +NL80211_KEY_DEFAULT_MGMT = 6, +NL80211_KEY_TYPE = 7, +NL80211_KEY_DEFAULT_TYPES = 8, +NL80211_KEY_MODE = 9, +NL80211_KEY_DEFAULT_BEACON = 10, +__NL80211_KEY_AFTER_LAST = 11, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_tx_rate_attributes { +__NL80211_TXRATE_INVALID = 0, +NL80211_TXRATE_LEGACY = 1, +NL80211_TXRATE_HT = 2, +NL80211_TXRATE_VHT = 3, +NL80211_TXRATE_GI = 4, +NL80211_TXRATE_HE = 5, +NL80211_TXRATE_HE_GI = 6, +NL80211_TXRATE_HE_LTF = 7, +__NL80211_TXRATE_AFTER_LAST = 8, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_txrate_gi { +NL80211_TXRATE_DEFAULT_GI = 0, +NL80211_TXRATE_FORCE_SGI = 1, +NL80211_TXRATE_FORCE_LGI = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_band { +NL80211_BAND_2GHZ = 0, +NL80211_BAND_5GHZ = 1, +NL80211_BAND_60GHZ = 2, +NL80211_BAND_6GHZ = 3, +NL80211_BAND_S1GHZ = 4, +NL80211_BAND_LC = 5, +NUM_NL80211_BANDS = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_ps_state { +NL80211_PS_DISABLED = 0, +NL80211_PS_ENABLED = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_attr_cqm { +__NL80211_ATTR_CQM_INVALID = 0, +NL80211_ATTR_CQM_RSSI_THOLD = 1, +NL80211_ATTR_CQM_RSSI_HYST = 2, +NL80211_ATTR_CQM_RSSI_THRESHOLD_EVENT = 3, +NL80211_ATTR_CQM_PKT_LOSS_EVENT = 4, +NL80211_ATTR_CQM_TXE_RATE = 5, +NL80211_ATTR_CQM_TXE_PKTS = 6, +NL80211_ATTR_CQM_TXE_INTVL = 7, +NL80211_ATTR_CQM_BEACON_LOSS_EVENT = 8, +NL80211_ATTR_CQM_RSSI_LEVEL = 9, +__NL80211_ATTR_CQM_AFTER_LAST = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_cqm_rssi_threshold_event { +NL80211_CQM_RSSI_THRESHOLD_EVENT_LOW = 0, +NL80211_CQM_RSSI_THRESHOLD_EVENT_HIGH = 1, +NL80211_CQM_RSSI_BEACON_LOSS_EVENT = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_tx_power_setting { +NL80211_TX_POWER_AUTOMATIC = 0, +NL80211_TX_POWER_LIMITED = 1, +NL80211_TX_POWER_FIXED = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_tid_config { +NL80211_TID_CONFIG_ENABLE = 0, +NL80211_TID_CONFIG_DISABLE = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_tx_rate_setting { +NL80211_TX_RATE_AUTOMATIC = 0, +NL80211_TX_RATE_LIMITED = 1, +NL80211_TX_RATE_FIXED = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_tid_config_attr { +__NL80211_TID_CONFIG_ATTR_INVALID = 0, +NL80211_TID_CONFIG_ATTR_PAD = 1, +NL80211_TID_CONFIG_ATTR_VIF_SUPP = 2, +NL80211_TID_CONFIG_ATTR_PEER_SUPP = 3, +NL80211_TID_CONFIG_ATTR_OVERRIDE = 4, +NL80211_TID_CONFIG_ATTR_TIDS = 5, +NL80211_TID_CONFIG_ATTR_NOACK = 6, +NL80211_TID_CONFIG_ATTR_RETRY_SHORT = 7, +NL80211_TID_CONFIG_ATTR_RETRY_LONG = 8, +NL80211_TID_CONFIG_ATTR_AMPDU_CTRL = 9, +NL80211_TID_CONFIG_ATTR_RTSCTS_CTRL = 10, +NL80211_TID_CONFIG_ATTR_AMSDU_CTRL = 11, +NL80211_TID_CONFIG_ATTR_TX_RATE_TYPE = 12, +NL80211_TID_CONFIG_ATTR_TX_RATE = 13, +__NL80211_TID_CONFIG_ATTR_AFTER_LAST = 14, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_packet_pattern_attr { +__NL80211_PKTPAT_INVALID = 0, +NL80211_PKTPAT_MASK = 1, +NL80211_PKTPAT_PATTERN = 2, +NL80211_PKTPAT_OFFSET = 3, +NUM_NL80211_PKTPAT = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_wowlan_triggers { +__NL80211_WOWLAN_TRIG_INVALID = 0, +NL80211_WOWLAN_TRIG_ANY = 1, +NL80211_WOWLAN_TRIG_DISCONNECT = 2, +NL80211_WOWLAN_TRIG_MAGIC_PKT = 3, +NL80211_WOWLAN_TRIG_PKT_PATTERN = 4, +NL80211_WOWLAN_TRIG_GTK_REKEY_SUPPORTED = 5, +NL80211_WOWLAN_TRIG_GTK_REKEY_FAILURE = 6, +NL80211_WOWLAN_TRIG_EAP_IDENT_REQUEST = 7, +NL80211_WOWLAN_TRIG_4WAY_HANDSHAKE = 8, +NL80211_WOWLAN_TRIG_RFKILL_RELEASE = 9, +NL80211_WOWLAN_TRIG_WAKEUP_PKT_80211 = 10, +NL80211_WOWLAN_TRIG_WAKEUP_PKT_80211_LEN = 11, +NL80211_WOWLAN_TRIG_WAKEUP_PKT_8023 = 12, +NL80211_WOWLAN_TRIG_WAKEUP_PKT_8023_LEN = 13, +NL80211_WOWLAN_TRIG_TCP_CONNECTION = 14, +NL80211_WOWLAN_TRIG_WAKEUP_TCP_MATCH = 15, +NL80211_WOWLAN_TRIG_WAKEUP_TCP_CONNLOST = 16, +NL80211_WOWLAN_TRIG_WAKEUP_TCP_NOMORETOKENS = 17, +NL80211_WOWLAN_TRIG_NET_DETECT = 18, +NL80211_WOWLAN_TRIG_NET_DETECT_RESULTS = 19, +NL80211_WOWLAN_TRIG_UNPROTECTED_DEAUTH_DISASSOC = 20, +NUM_NL80211_WOWLAN_TRIG = 21, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_wowlan_tcp_attrs { +__NL80211_WOWLAN_TCP_INVALID = 0, +NL80211_WOWLAN_TCP_SRC_IPV4 = 1, +NL80211_WOWLAN_TCP_DST_IPV4 = 2, +NL80211_WOWLAN_TCP_DST_MAC = 3, +NL80211_WOWLAN_TCP_SRC_PORT = 4, +NL80211_WOWLAN_TCP_DST_PORT = 5, +NL80211_WOWLAN_TCP_DATA_PAYLOAD = 6, +NL80211_WOWLAN_TCP_DATA_PAYLOAD_SEQ = 7, +NL80211_WOWLAN_TCP_DATA_PAYLOAD_TOKEN = 8, +NL80211_WOWLAN_TCP_DATA_INTERVAL = 9, +NL80211_WOWLAN_TCP_WAKE_PAYLOAD = 10, +NL80211_WOWLAN_TCP_WAKE_MASK = 11, +NUM_NL80211_WOWLAN_TCP = 12, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_attr_coalesce_rule { +__NL80211_COALESCE_RULE_INVALID = 0, +NL80211_ATTR_COALESCE_RULE_DELAY = 1, +NL80211_ATTR_COALESCE_RULE_CONDITION = 2, +NL80211_ATTR_COALESCE_RULE_PKT_PATTERN = 3, +NUM_NL80211_ATTR_COALESCE_RULE = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_coalesce_condition { +NL80211_COALESCE_CONDITION_MATCH = 0, +NL80211_COALESCE_CONDITION_NO_MATCH = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_iface_limit_attrs { +NL80211_IFACE_LIMIT_UNSPEC = 0, +NL80211_IFACE_LIMIT_MAX = 1, +NL80211_IFACE_LIMIT_TYPES = 2, +NUM_NL80211_IFACE_LIMIT = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_if_combination_attrs { +NL80211_IFACE_COMB_UNSPEC = 0, +NL80211_IFACE_COMB_LIMITS = 1, +NL80211_IFACE_COMB_MAXNUM = 2, +NL80211_IFACE_COMB_STA_AP_BI_MATCH = 3, +NL80211_IFACE_COMB_NUM_CHANNELS = 4, +NL80211_IFACE_COMB_RADAR_DETECT_WIDTHS = 5, +NL80211_IFACE_COMB_RADAR_DETECT_REGIONS = 6, +NL80211_IFACE_COMB_BI_MIN_GCD = 7, +NUM_NL80211_IFACE_COMB = 8, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_plink_state { +NL80211_PLINK_LISTEN = 0, +NL80211_PLINK_OPN_SNT = 1, +NL80211_PLINK_OPN_RCVD = 2, +NL80211_PLINK_CNF_RCVD = 3, +NL80211_PLINK_ESTAB = 4, +NL80211_PLINK_HOLDING = 5, +NL80211_PLINK_BLOCKED = 6, +NUM_NL80211_PLINK_STATES = 7, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_plink_action { +NL80211_PLINK_ACTION_NO_ACTION = 0, +NL80211_PLINK_ACTION_OPEN = 1, +NL80211_PLINK_ACTION_BLOCK = 2, +NUM_NL80211_PLINK_ACTIONS = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_rekey_data { +__NL80211_REKEY_DATA_INVALID = 0, +NL80211_REKEY_DATA_KEK = 1, +NL80211_REKEY_DATA_KCK = 2, +NL80211_REKEY_DATA_REPLAY_CTR = 3, +NL80211_REKEY_DATA_AKM = 4, +NUM_NL80211_REKEY_DATA = 5, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_hidden_ssid { +NL80211_HIDDEN_SSID_NOT_IN_USE = 0, +NL80211_HIDDEN_SSID_ZERO_LEN = 1, +NL80211_HIDDEN_SSID_ZERO_CONTENTS = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_sta_wme_attr { +__NL80211_STA_WME_INVALID = 0, +NL80211_STA_WME_UAPSD_QUEUES = 1, +NL80211_STA_WME_MAX_SP = 2, +__NL80211_STA_WME_AFTER_LAST = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_pmksa_candidate_attr { +__NL80211_PMKSA_CANDIDATE_INVALID = 0, +NL80211_PMKSA_CANDIDATE_INDEX = 1, +NL80211_PMKSA_CANDIDATE_BSSID = 2, +NL80211_PMKSA_CANDIDATE_PREAUTH = 3, +NUM_NL80211_PMKSA_CANDIDATE = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_tdls_operation { +NL80211_TDLS_DISCOVERY_REQ = 0, +NL80211_TDLS_SETUP = 1, +NL80211_TDLS_TEARDOWN = 2, +NL80211_TDLS_ENABLE_LINK = 3, +NL80211_TDLS_DISABLE_LINK = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_ap_sme_features { +NL80211_AP_SME_SA_QUERY_OFFLOAD = 1, +} +#[repr(u32)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_feature_flags { +NL80211_FEATURE_SK_TX_STATUS = 1, +NL80211_FEATURE_HT_IBSS = 2, +NL80211_FEATURE_INACTIVITY_TIMER = 4, +NL80211_FEATURE_CELL_BASE_REG_HINTS = 8, +NL80211_FEATURE_P2P_DEVICE_NEEDS_CHANNEL = 16, +NL80211_FEATURE_SAE = 32, +NL80211_FEATURE_LOW_PRIORITY_SCAN = 64, +NL80211_FEATURE_SCAN_FLUSH = 128, +NL80211_FEATURE_AP_SCAN = 256, +NL80211_FEATURE_VIF_TXPOWER = 512, +NL80211_FEATURE_NEED_OBSS_SCAN = 1024, +NL80211_FEATURE_P2P_GO_CTWIN = 2048, +NL80211_FEATURE_P2P_GO_OPPPS = 4096, +NL80211_FEATURE_ADVERTISE_CHAN_LIMITS = 16384, +NL80211_FEATURE_FULL_AP_CLIENT_STATE = 32768, +NL80211_FEATURE_USERSPACE_MPM = 65536, +NL80211_FEATURE_ACTIVE_MONITOR = 131072, +NL80211_FEATURE_AP_MODE_CHAN_WIDTH_CHANGE = 262144, +NL80211_FEATURE_DS_PARAM_SET_IE_IN_PROBES = 524288, +NL80211_FEATURE_WFA_TPC_IE_IN_PROBES = 1048576, +NL80211_FEATURE_QUIET = 2097152, +NL80211_FEATURE_TX_POWER_INSERTION = 4194304, +NL80211_FEATURE_ACKTO_ESTIMATION = 8388608, +NL80211_FEATURE_STATIC_SMPS = 16777216, +NL80211_FEATURE_DYNAMIC_SMPS = 33554432, +NL80211_FEATURE_SUPPORTS_WMM_ADMISSION = 67108864, +NL80211_FEATURE_MAC_ON_CREATE = 134217728, +NL80211_FEATURE_TDLS_CHANNEL_SWITCH = 268435456, +NL80211_FEATURE_SCAN_RANDOM_MAC_ADDR = 536870912, +NL80211_FEATURE_SCHED_SCAN_RANDOM_MAC_ADDR = 1073741824, +NL80211_FEATURE_ND_RANDOM_MAC_ADDR = 2147483648, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_ext_feature_index { +NL80211_EXT_FEATURE_VHT_IBSS = 0, +NL80211_EXT_FEATURE_RRM = 1, +NL80211_EXT_FEATURE_MU_MIMO_AIR_SNIFFER = 2, +NL80211_EXT_FEATURE_SCAN_START_TIME = 3, +NL80211_EXT_FEATURE_BSS_PARENT_TSF = 4, +NL80211_EXT_FEATURE_SET_SCAN_DWELL = 5, +NL80211_EXT_FEATURE_BEACON_RATE_LEGACY = 6, +NL80211_EXT_FEATURE_BEACON_RATE_HT = 7, +NL80211_EXT_FEATURE_BEACON_RATE_VHT = 8, +NL80211_EXT_FEATURE_FILS_STA = 9, +NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA = 10, +NL80211_EXT_FEATURE_MGMT_TX_RANDOM_TA_CONNECTED = 11, +NL80211_EXT_FEATURE_SCHED_SCAN_RELATIVE_RSSI = 12, +NL80211_EXT_FEATURE_CQM_RSSI_LIST = 13, +NL80211_EXT_FEATURE_FILS_SK_OFFLOAD = 14, +NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_PSK = 15, +NL80211_EXT_FEATURE_4WAY_HANDSHAKE_STA_1X = 16, +NL80211_EXT_FEATURE_FILS_MAX_CHANNEL_TIME = 17, +NL80211_EXT_FEATURE_ACCEPT_BCAST_PROBE_RESP = 18, +NL80211_EXT_FEATURE_OCE_PROBE_REQ_HIGH_TX_RATE = 19, +NL80211_EXT_FEATURE_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION = 20, +NL80211_EXT_FEATURE_MFP_OPTIONAL = 21, +NL80211_EXT_FEATURE_LOW_SPAN_SCAN = 22, +NL80211_EXT_FEATURE_LOW_POWER_SCAN = 23, +NL80211_EXT_FEATURE_HIGH_ACCURACY_SCAN = 24, +NL80211_EXT_FEATURE_DFS_OFFLOAD = 25, +NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211 = 26, +NL80211_EXT_FEATURE_ACK_SIGNAL_SUPPORT = 27, +NL80211_EXT_FEATURE_TXQS = 28, +NL80211_EXT_FEATURE_SCAN_RANDOM_SN = 29, +NL80211_EXT_FEATURE_SCAN_MIN_PREQ_CONTENT = 30, +NL80211_EXT_FEATURE_CAN_REPLACE_PTK0 = 31, +NL80211_EXT_FEATURE_ENABLE_FTM_RESPONDER = 32, +NL80211_EXT_FEATURE_AIRTIME_FAIRNESS = 33, +NL80211_EXT_FEATURE_AP_PMKSA_CACHING = 34, +NL80211_EXT_FEATURE_SCHED_SCAN_BAND_SPECIFIC_RSSI_THOLD = 35, +NL80211_EXT_FEATURE_EXT_KEY_ID = 36, +NL80211_EXT_FEATURE_STA_TX_PWR = 37, +NL80211_EXT_FEATURE_SAE_OFFLOAD = 38, +NL80211_EXT_FEATURE_VLAN_OFFLOAD = 39, +NL80211_EXT_FEATURE_AQL = 40, +NL80211_EXT_FEATURE_BEACON_PROTECTION = 41, +NL80211_EXT_FEATURE_CONTROL_PORT_NO_PREAUTH = 42, +NL80211_EXT_FEATURE_PROTECTED_TWT = 43, +NL80211_EXT_FEATURE_DEL_IBSS_STA = 44, +NL80211_EXT_FEATURE_MULTICAST_REGISTRATIONS = 45, +NL80211_EXT_FEATURE_BEACON_PROTECTION_CLIENT = 46, +NL80211_EXT_FEATURE_SCAN_FREQ_KHZ = 47, +NL80211_EXT_FEATURE_CONTROL_PORT_OVER_NL80211_TX_STATUS = 48, +NL80211_EXT_FEATURE_OPERATING_CHANNEL_VALIDATION = 49, +NL80211_EXT_FEATURE_4WAY_HANDSHAKE_AP_PSK = 50, +NL80211_EXT_FEATURE_SAE_OFFLOAD_AP = 51, +NL80211_EXT_FEATURE_FILS_DISCOVERY = 52, +NL80211_EXT_FEATURE_UNSOL_BCAST_PROBE_RESP = 53, +NL80211_EXT_FEATURE_BEACON_RATE_HE = 54, +NL80211_EXT_FEATURE_SECURE_LTF = 55, +NL80211_EXT_FEATURE_SECURE_RTT = 56, +NL80211_EXT_FEATURE_PROT_RANGE_NEGO_AND_MEASURE = 57, +NL80211_EXT_FEATURE_BSS_COLOR = 58, +NL80211_EXT_FEATURE_FILS_CRYPTO_OFFLOAD = 59, +NL80211_EXT_FEATURE_RADAR_BACKGROUND = 60, +NL80211_EXT_FEATURE_POWERED_ADDR_CHANGE = 61, +NL80211_EXT_FEATURE_PUNCT = 62, +NL80211_EXT_FEATURE_SECURE_NAN = 63, +NL80211_EXT_FEATURE_AUTH_AND_DEAUTH_RANDOM_TA = 64, +NL80211_EXT_FEATURE_OWE_OFFLOAD = 65, +NL80211_EXT_FEATURE_OWE_OFFLOAD_AP = 66, +NL80211_EXT_FEATURE_DFS_CONCURRENT = 67, +NL80211_EXT_FEATURE_SPP_AMSDU_SUPPORT = 68, +NUM_NL80211_EXT_FEATURES = 69, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_probe_resp_offload_support_attr { +NL80211_PROBE_RESP_OFFLOAD_SUPPORT_WPS = 1, +NL80211_PROBE_RESP_OFFLOAD_SUPPORT_WPS2 = 2, +NL80211_PROBE_RESP_OFFLOAD_SUPPORT_P2P = 4, +NL80211_PROBE_RESP_OFFLOAD_SUPPORT_80211U = 8, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_connect_failed_reason { +NL80211_CONN_FAIL_MAX_CLIENTS = 0, +NL80211_CONN_FAIL_BLOCKED_CLIENT = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_timeout_reason { +NL80211_TIMEOUT_UNSPECIFIED = 0, +NL80211_TIMEOUT_SCAN = 1, +NL80211_TIMEOUT_AUTH = 2, +NL80211_TIMEOUT_ASSOC = 3, +} +#[repr(u16)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_scan_flags { +NL80211_SCAN_FLAG_LOW_PRIORITY = 1, +NL80211_SCAN_FLAG_FLUSH = 2, +NL80211_SCAN_FLAG_AP = 4, +NL80211_SCAN_FLAG_RANDOM_ADDR = 8, +NL80211_SCAN_FLAG_FILS_MAX_CHANNEL_TIME = 16, +NL80211_SCAN_FLAG_ACCEPT_BCAST_PROBE_RESP = 32, +NL80211_SCAN_FLAG_OCE_PROBE_REQ_HIGH_TX_RATE = 64, +NL80211_SCAN_FLAG_OCE_PROBE_REQ_DEFERRAL_SUPPRESSION = 128, +NL80211_SCAN_FLAG_LOW_SPAN = 256, +NL80211_SCAN_FLAG_LOW_POWER = 512, +NL80211_SCAN_FLAG_HIGH_ACCURACY = 1024, +NL80211_SCAN_FLAG_RANDOM_SN = 2048, +NL80211_SCAN_FLAG_MIN_PREQ_CONTENT = 4096, +NL80211_SCAN_FLAG_FREQ_KHZ = 8192, +NL80211_SCAN_FLAG_COLOCATED_6GHZ = 16384, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_acl_policy { +NL80211_ACL_POLICY_ACCEPT_UNLESS_LISTED = 0, +NL80211_ACL_POLICY_DENY_UNLESS_LISTED = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_smps_mode { +NL80211_SMPS_OFF = 0, +NL80211_SMPS_STATIC = 1, +NL80211_SMPS_DYNAMIC = 2, +__NL80211_SMPS_AFTER_LAST = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_radar_event { +NL80211_RADAR_DETECTED = 0, +NL80211_RADAR_CAC_FINISHED = 1, +NL80211_RADAR_CAC_ABORTED = 2, +NL80211_RADAR_NOP_FINISHED = 3, +NL80211_RADAR_PRE_CAC_EXPIRED = 4, +NL80211_RADAR_CAC_STARTED = 5, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_dfs_state { +NL80211_DFS_USABLE = 0, +NL80211_DFS_UNAVAILABLE = 1, +NL80211_DFS_AVAILABLE = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_protocol_features { +NL80211_PROTOCOL_FEATURE_SPLIT_WIPHY_DUMP = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_crit_proto_id { +NL80211_CRIT_PROTO_UNSPEC = 0, +NL80211_CRIT_PROTO_DHCP = 1, +NL80211_CRIT_PROTO_EAPOL = 2, +NL80211_CRIT_PROTO_APIPA = 3, +NUM_NL80211_CRIT_PROTO = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_rxmgmt_flags { +NL80211_RXMGMT_FLAG_ANSWERED = 1, +NL80211_RXMGMT_FLAG_EXTERNAL_AUTH = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_tdls_peer_capability { +NL80211_TDLS_PEER_HT = 1, +NL80211_TDLS_PEER_VHT = 2, +NL80211_TDLS_PEER_WMM = 4, +NL80211_TDLS_PEER_HE = 8, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_sched_scan_plan { +__NL80211_SCHED_SCAN_PLAN_INVALID = 0, +NL80211_SCHED_SCAN_PLAN_INTERVAL = 1, +NL80211_SCHED_SCAN_PLAN_ITERATIONS = 2, +__NL80211_SCHED_SCAN_PLAN_AFTER_LAST = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_bss_select_attr { +__NL80211_BSS_SELECT_ATTR_INVALID = 0, +NL80211_BSS_SELECT_ATTR_RSSI = 1, +NL80211_BSS_SELECT_ATTR_BAND_PREF = 2, +NL80211_BSS_SELECT_ATTR_RSSI_ADJUST = 3, +__NL80211_BSS_SELECT_ATTR_AFTER_LAST = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_nan_function_type { +NL80211_NAN_FUNC_PUBLISH = 0, +NL80211_NAN_FUNC_SUBSCRIBE = 1, +NL80211_NAN_FUNC_FOLLOW_UP = 2, +__NL80211_NAN_FUNC_TYPE_AFTER_LAST = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_nan_publish_type { +NL80211_NAN_SOLICITED_PUBLISH = 1, +NL80211_NAN_UNSOLICITED_PUBLISH = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_nan_func_term_reason { +NL80211_NAN_FUNC_TERM_REASON_USER_REQUEST = 0, +NL80211_NAN_FUNC_TERM_REASON_TTL_EXPIRED = 1, +NL80211_NAN_FUNC_TERM_REASON_ERROR = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_nan_func_attributes { +__NL80211_NAN_FUNC_INVALID = 0, +NL80211_NAN_FUNC_TYPE = 1, +NL80211_NAN_FUNC_SERVICE_ID = 2, +NL80211_NAN_FUNC_PUBLISH_TYPE = 3, +NL80211_NAN_FUNC_PUBLISH_BCAST = 4, +NL80211_NAN_FUNC_SUBSCRIBE_ACTIVE = 5, +NL80211_NAN_FUNC_FOLLOW_UP_ID = 6, +NL80211_NAN_FUNC_FOLLOW_UP_REQ_ID = 7, +NL80211_NAN_FUNC_FOLLOW_UP_DEST = 8, +NL80211_NAN_FUNC_CLOSE_RANGE = 9, +NL80211_NAN_FUNC_TTL = 10, +NL80211_NAN_FUNC_SERVICE_INFO = 11, +NL80211_NAN_FUNC_SRF = 12, +NL80211_NAN_FUNC_RX_MATCH_FILTER = 13, +NL80211_NAN_FUNC_TX_MATCH_FILTER = 14, +NL80211_NAN_FUNC_INSTANCE_ID = 15, +NL80211_NAN_FUNC_TERM_REASON = 16, +NUM_NL80211_NAN_FUNC_ATTR = 17, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_nan_srf_attributes { +__NL80211_NAN_SRF_INVALID = 0, +NL80211_NAN_SRF_INCLUDE = 1, +NL80211_NAN_SRF_BF = 2, +NL80211_NAN_SRF_BF_IDX = 3, +NL80211_NAN_SRF_MAC_ADDRS = 4, +NUM_NL80211_NAN_SRF_ATTR = 5, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_nan_match_attributes { +__NL80211_NAN_MATCH_INVALID = 0, +NL80211_NAN_MATCH_FUNC_LOCAL = 1, +NL80211_NAN_MATCH_FUNC_PEER = 2, +NUM_NL80211_NAN_MATCH_ATTR = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_external_auth_action { +NL80211_EXTERNAL_AUTH_START = 0, +NL80211_EXTERNAL_AUTH_ABORT = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_ftm_responder_attributes { +__NL80211_FTM_RESP_ATTR_INVALID = 0, +NL80211_FTM_RESP_ATTR_ENABLED = 1, +NL80211_FTM_RESP_ATTR_LCI = 2, +NL80211_FTM_RESP_ATTR_CIVICLOC = 3, +__NL80211_FTM_RESP_ATTR_LAST = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_ftm_responder_stats { +__NL80211_FTM_STATS_INVALID = 0, +NL80211_FTM_STATS_SUCCESS_NUM = 1, +NL80211_FTM_STATS_PARTIAL_NUM = 2, +NL80211_FTM_STATS_FAILED_NUM = 3, +NL80211_FTM_STATS_ASAP_NUM = 4, +NL80211_FTM_STATS_NON_ASAP_NUM = 5, +NL80211_FTM_STATS_TOTAL_DURATION_MSEC = 6, +NL80211_FTM_STATS_UNKNOWN_TRIGGERS_NUM = 7, +NL80211_FTM_STATS_RESCHEDULE_REQUESTS_NUM = 8, +NL80211_FTM_STATS_OUT_OF_WINDOW_TRIGGERS_NUM = 9, +NL80211_FTM_STATS_PAD = 10, +__NL80211_FTM_STATS_AFTER_LAST = 11, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_preamble { +NL80211_PREAMBLE_LEGACY = 0, +NL80211_PREAMBLE_HT = 1, +NL80211_PREAMBLE_VHT = 2, +NL80211_PREAMBLE_DMG = 3, +NL80211_PREAMBLE_HE = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_peer_measurement_type { +NL80211_PMSR_TYPE_INVALID = 0, +NL80211_PMSR_TYPE_FTM = 1, +NUM_NL80211_PMSR_TYPES = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_peer_measurement_status { +NL80211_PMSR_STATUS_SUCCESS = 0, +NL80211_PMSR_STATUS_REFUSED = 1, +NL80211_PMSR_STATUS_TIMEOUT = 2, +NL80211_PMSR_STATUS_FAILURE = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_peer_measurement_req { +__NL80211_PMSR_REQ_ATTR_INVALID = 0, +NL80211_PMSR_REQ_ATTR_DATA = 1, +NL80211_PMSR_REQ_ATTR_GET_AP_TSF = 2, +NUM_NL80211_PMSR_REQ_ATTRS = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_peer_measurement_resp { +__NL80211_PMSR_RESP_ATTR_INVALID = 0, +NL80211_PMSR_RESP_ATTR_DATA = 1, +NL80211_PMSR_RESP_ATTR_STATUS = 2, +NL80211_PMSR_RESP_ATTR_HOST_TIME = 3, +NL80211_PMSR_RESP_ATTR_AP_TSF = 4, +NL80211_PMSR_RESP_ATTR_FINAL = 5, +NL80211_PMSR_RESP_ATTR_PAD = 6, +NUM_NL80211_PMSR_RESP_ATTRS = 7, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_peer_measurement_peer_attrs { +__NL80211_PMSR_PEER_ATTR_INVALID = 0, +NL80211_PMSR_PEER_ATTR_ADDR = 1, +NL80211_PMSR_PEER_ATTR_CHAN = 2, +NL80211_PMSR_PEER_ATTR_REQ = 3, +NL80211_PMSR_PEER_ATTR_RESP = 4, +NUM_NL80211_PMSR_PEER_ATTRS = 5, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_peer_measurement_attrs { +__NL80211_PMSR_ATTR_INVALID = 0, +NL80211_PMSR_ATTR_MAX_PEERS = 1, +NL80211_PMSR_ATTR_REPORT_AP_TSF = 2, +NL80211_PMSR_ATTR_RANDOMIZE_MAC_ADDR = 3, +NL80211_PMSR_ATTR_TYPE_CAPA = 4, +NL80211_PMSR_ATTR_PEERS = 5, +NUM_NL80211_PMSR_ATTR = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_peer_measurement_ftm_capa { +__NL80211_PMSR_FTM_CAPA_ATTR_INVALID = 0, +NL80211_PMSR_FTM_CAPA_ATTR_ASAP = 1, +NL80211_PMSR_FTM_CAPA_ATTR_NON_ASAP = 2, +NL80211_PMSR_FTM_CAPA_ATTR_REQ_LCI = 3, +NL80211_PMSR_FTM_CAPA_ATTR_REQ_CIVICLOC = 4, +NL80211_PMSR_FTM_CAPA_ATTR_PREAMBLES = 5, +NL80211_PMSR_FTM_CAPA_ATTR_BANDWIDTHS = 6, +NL80211_PMSR_FTM_CAPA_ATTR_MAX_BURSTS_EXPONENT = 7, +NL80211_PMSR_FTM_CAPA_ATTR_MAX_FTMS_PER_BURST = 8, +NL80211_PMSR_FTM_CAPA_ATTR_TRIGGER_BASED = 9, +NL80211_PMSR_FTM_CAPA_ATTR_NON_TRIGGER_BASED = 10, +NUM_NL80211_PMSR_FTM_CAPA_ATTR = 11, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_peer_measurement_ftm_req { +__NL80211_PMSR_FTM_REQ_ATTR_INVALID = 0, +NL80211_PMSR_FTM_REQ_ATTR_ASAP = 1, +NL80211_PMSR_FTM_REQ_ATTR_PREAMBLE = 2, +NL80211_PMSR_FTM_REQ_ATTR_NUM_BURSTS_EXP = 3, +NL80211_PMSR_FTM_REQ_ATTR_BURST_PERIOD = 4, +NL80211_PMSR_FTM_REQ_ATTR_BURST_DURATION = 5, +NL80211_PMSR_FTM_REQ_ATTR_FTMS_PER_BURST = 6, +NL80211_PMSR_FTM_REQ_ATTR_NUM_FTMR_RETRIES = 7, +NL80211_PMSR_FTM_REQ_ATTR_REQUEST_LCI = 8, +NL80211_PMSR_FTM_REQ_ATTR_REQUEST_CIVICLOC = 9, +NL80211_PMSR_FTM_REQ_ATTR_TRIGGER_BASED = 10, +NL80211_PMSR_FTM_REQ_ATTR_NON_TRIGGER_BASED = 11, +NL80211_PMSR_FTM_REQ_ATTR_LMR_FEEDBACK = 12, +NL80211_PMSR_FTM_REQ_ATTR_BSS_COLOR = 13, +NUM_NL80211_PMSR_FTM_REQ_ATTR = 14, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_peer_measurement_ftm_failure_reasons { +NL80211_PMSR_FTM_FAILURE_UNSPECIFIED = 0, +NL80211_PMSR_FTM_FAILURE_NO_RESPONSE = 1, +NL80211_PMSR_FTM_FAILURE_REJECTED = 2, +NL80211_PMSR_FTM_FAILURE_WRONG_CHANNEL = 3, +NL80211_PMSR_FTM_FAILURE_PEER_NOT_CAPABLE = 4, +NL80211_PMSR_FTM_FAILURE_INVALID_TIMESTAMP = 5, +NL80211_PMSR_FTM_FAILURE_PEER_BUSY = 6, +NL80211_PMSR_FTM_FAILURE_BAD_CHANGED_PARAMS = 7, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_peer_measurement_ftm_resp { +__NL80211_PMSR_FTM_RESP_ATTR_INVALID = 0, +NL80211_PMSR_FTM_RESP_ATTR_FAIL_REASON = 1, +NL80211_PMSR_FTM_RESP_ATTR_BURST_INDEX = 2, +NL80211_PMSR_FTM_RESP_ATTR_NUM_FTMR_ATTEMPTS = 3, +NL80211_PMSR_FTM_RESP_ATTR_NUM_FTMR_SUCCESSES = 4, +NL80211_PMSR_FTM_RESP_ATTR_BUSY_RETRY_TIME = 5, +NL80211_PMSR_FTM_RESP_ATTR_NUM_BURSTS_EXP = 6, +NL80211_PMSR_FTM_RESP_ATTR_BURST_DURATION = 7, +NL80211_PMSR_FTM_RESP_ATTR_FTMS_PER_BURST = 8, +NL80211_PMSR_FTM_RESP_ATTR_RSSI_AVG = 9, +NL80211_PMSR_FTM_RESP_ATTR_RSSI_SPREAD = 10, +NL80211_PMSR_FTM_RESP_ATTR_TX_RATE = 11, +NL80211_PMSR_FTM_RESP_ATTR_RX_RATE = 12, +NL80211_PMSR_FTM_RESP_ATTR_RTT_AVG = 13, +NL80211_PMSR_FTM_RESP_ATTR_RTT_VARIANCE = 14, +NL80211_PMSR_FTM_RESP_ATTR_RTT_SPREAD = 15, +NL80211_PMSR_FTM_RESP_ATTR_DIST_AVG = 16, +NL80211_PMSR_FTM_RESP_ATTR_DIST_VARIANCE = 17, +NL80211_PMSR_FTM_RESP_ATTR_DIST_SPREAD = 18, +NL80211_PMSR_FTM_RESP_ATTR_LCI = 19, +NL80211_PMSR_FTM_RESP_ATTR_CIVICLOC = 20, +NL80211_PMSR_FTM_RESP_ATTR_PAD = 21, +NUM_NL80211_PMSR_FTM_RESP_ATTR = 22, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_obss_pd_attributes { +__NL80211_HE_OBSS_PD_ATTR_INVALID = 0, +NL80211_HE_OBSS_PD_ATTR_MIN_OFFSET = 1, +NL80211_HE_OBSS_PD_ATTR_MAX_OFFSET = 2, +NL80211_HE_OBSS_PD_ATTR_NON_SRG_MAX_OFFSET = 3, +NL80211_HE_OBSS_PD_ATTR_BSS_COLOR_BITMAP = 4, +NL80211_HE_OBSS_PD_ATTR_PARTIAL_BSSID_BITMAP = 5, +NL80211_HE_OBSS_PD_ATTR_SR_CTRL = 6, +__NL80211_HE_OBSS_PD_ATTR_LAST = 7, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_bss_color_attributes { +__NL80211_HE_BSS_COLOR_ATTR_INVALID = 0, +NL80211_HE_BSS_COLOR_ATTR_COLOR = 1, +NL80211_HE_BSS_COLOR_ATTR_DISABLED = 2, +NL80211_HE_BSS_COLOR_ATTR_PARTIAL = 3, +__NL80211_HE_BSS_COLOR_ATTR_LAST = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_iftype_akm_attributes { +__NL80211_IFTYPE_AKM_ATTR_INVALID = 0, +NL80211_IFTYPE_AKM_ATTR_IFTYPES = 1, +NL80211_IFTYPE_AKM_ATTR_SUITES = 2, +__NL80211_IFTYPE_AKM_ATTR_LAST = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_fils_discovery_attributes { +__NL80211_FILS_DISCOVERY_ATTR_INVALID = 0, +NL80211_FILS_DISCOVERY_ATTR_INT_MIN = 1, +NL80211_FILS_DISCOVERY_ATTR_INT_MAX = 2, +NL80211_FILS_DISCOVERY_ATTR_TMPL = 3, +__NL80211_FILS_DISCOVERY_ATTR_LAST = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_unsol_bcast_probe_resp_attributes { +__NL80211_UNSOL_BCAST_PROBE_RESP_ATTR_INVALID = 0, +NL80211_UNSOL_BCAST_PROBE_RESP_ATTR_INT = 1, +NL80211_UNSOL_BCAST_PROBE_RESP_ATTR_TMPL = 2, +__NL80211_UNSOL_BCAST_PROBE_RESP_ATTR_LAST = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_sae_pwe_mechanism { +NL80211_SAE_PWE_UNSPECIFIED = 0, +NL80211_SAE_PWE_HUNT_AND_PECK = 1, +NL80211_SAE_PWE_HASH_TO_ELEMENT = 2, +NL80211_SAE_PWE_BOTH = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_sar_type { +NL80211_SAR_TYPE_POWER = 0, +NUM_NL80211_SAR_TYPE = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_sar_attrs { +__NL80211_SAR_ATTR_INVALID = 0, +NL80211_SAR_ATTR_TYPE = 1, +NL80211_SAR_ATTR_SPECS = 2, +__NL80211_SAR_ATTR_LAST = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_sar_specs_attrs { +__NL80211_SAR_ATTR_SPECS_INVALID = 0, +NL80211_SAR_ATTR_SPECS_POWER = 1, +NL80211_SAR_ATTR_SPECS_RANGE_INDEX = 2, +NL80211_SAR_ATTR_SPECS_START_FREQ = 3, +NL80211_SAR_ATTR_SPECS_END_FREQ = 4, +__NL80211_SAR_ATTR_SPECS_LAST = 5, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_mbssid_config_attributes { +__NL80211_MBSSID_CONFIG_ATTR_INVALID = 0, +NL80211_MBSSID_CONFIG_ATTR_MAX_INTERFACES = 1, +NL80211_MBSSID_CONFIG_ATTR_MAX_EMA_PROFILE_PERIODICITY = 2, +NL80211_MBSSID_CONFIG_ATTR_INDEX = 3, +NL80211_MBSSID_CONFIG_ATTR_TX_IFINDEX = 4, +NL80211_MBSSID_CONFIG_ATTR_EMA = 5, +NL80211_MBSSID_CONFIG_ATTR_TX_LINK_ID = 6, +__NL80211_MBSSID_CONFIG_ATTR_LAST = 7, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_ap_settings_flags { +NL80211_AP_SETTINGS_EXTERNAL_AUTH_SUPPORT = 1, +NL80211_AP_SETTINGS_SA_QUERY_OFFLOAD_SUPPORT = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_wiphy_radio_attrs { +__NL80211_WIPHY_RADIO_ATTR_INVALID = 0, +NL80211_WIPHY_RADIO_ATTR_INDEX = 1, +NL80211_WIPHY_RADIO_ATTR_FREQ_RANGE = 2, +NL80211_WIPHY_RADIO_ATTR_INTERFACE_COMBINATION = 3, +NL80211_WIPHY_RADIO_ATTR_ANTENNA_MASK = 4, +NL80211_WIPHY_RADIO_ATTR_RTS_THRESHOLD = 5, +__NL80211_WIPHY_RADIO_ATTR_LAST = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_wiphy_radio_freq_range { +__NL80211_WIPHY_RADIO_FREQ_ATTR_INVALID = 0, +NL80211_WIPHY_RADIO_FREQ_ATTR_START = 1, +NL80211_WIPHY_RADIO_FREQ_ATTR_END = 2, +__NL80211_WIPHY_RADIO_FREQ_ATTR_LAST = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum nl80211_s1g_short_beacon_attrs { +__NL80211_S1G_SHORT_BEACON_ATTR_INVALID = 0, +NL80211_S1G_SHORT_BEACON_ATTR_HEAD = 1, +NL80211_S1G_SHORT_BEACON_ATTR_TAIL = 2, +__NL80211_S1G_SHORT_BEACON_ATTR_LAST = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_2 { +IFLA_UNSPEC = 0, +IFLA_ADDRESS = 1, +IFLA_BROADCAST = 2, +IFLA_IFNAME = 3, +IFLA_MTU = 4, +IFLA_LINK = 5, +IFLA_QDISC = 6, +IFLA_STATS = 7, +IFLA_COST = 8, +IFLA_PRIORITY = 9, +IFLA_MASTER = 10, +IFLA_WIRELESS = 11, +IFLA_PROTINFO = 12, +IFLA_TXQLEN = 13, +IFLA_MAP = 14, +IFLA_WEIGHT = 15, +IFLA_OPERSTATE = 16, +IFLA_LINKMODE = 17, +IFLA_LINKINFO = 18, +IFLA_NET_NS_PID = 19, +IFLA_IFALIAS = 20, +IFLA_NUM_VF = 21, +IFLA_VFINFO_LIST = 22, +IFLA_STATS64 = 23, +IFLA_VF_PORTS = 24, +IFLA_PORT_SELF = 25, +IFLA_AF_SPEC = 26, +IFLA_GROUP = 27, +IFLA_NET_NS_FD = 28, +IFLA_EXT_MASK = 29, +IFLA_PROMISCUITY = 30, +IFLA_NUM_TX_QUEUES = 31, +IFLA_NUM_RX_QUEUES = 32, +IFLA_CARRIER = 33, +IFLA_PHYS_PORT_ID = 34, +IFLA_CARRIER_CHANGES = 35, +IFLA_PHYS_SWITCH_ID = 36, +IFLA_LINK_NETNSID = 37, +IFLA_PHYS_PORT_NAME = 38, +IFLA_PROTO_DOWN = 39, +IFLA_GSO_MAX_SEGS = 40, +IFLA_GSO_MAX_SIZE = 41, +IFLA_PAD = 42, +IFLA_XDP = 43, +IFLA_EVENT = 44, +IFLA_NEW_NETNSID = 45, +IFLA_IF_NETNSID = 46, +IFLA_CARRIER_UP_COUNT = 47, +IFLA_CARRIER_DOWN_COUNT = 48, +IFLA_NEW_IFINDEX = 49, +IFLA_MIN_MTU = 50, +IFLA_MAX_MTU = 51, +IFLA_PROP_LIST = 52, +IFLA_ALT_IFNAME = 53, +IFLA_PERM_ADDRESS = 54, +IFLA_PROTO_DOWN_REASON = 55, +IFLA_PARENT_DEV_NAME = 56, +IFLA_PARENT_DEV_BUS_NAME = 57, +IFLA_GRO_MAX_SIZE = 58, +IFLA_TSO_MAX_SIZE = 59, +IFLA_TSO_MAX_SEGS = 60, +IFLA_ALLMULTI = 61, +IFLA_DEVLINK_PORT = 62, +IFLA_GSO_IPV4_MAX_SIZE = 63, +IFLA_GRO_IPV4_MAX_SIZE = 64, +IFLA_DPLL_PIN = 65, +IFLA_MAX_PACING_OFFLOAD_HORIZON = 66, +IFLA_NETNS_IMMUTABLE = 67, +__IFLA_MAX = 68, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_3 { +IFLA_PROTO_DOWN_REASON_UNSPEC = 0, +IFLA_PROTO_DOWN_REASON_MASK = 1, +IFLA_PROTO_DOWN_REASON_VALUE = 2, +__IFLA_PROTO_DOWN_REASON_CNT = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_4 { +IFLA_INET_UNSPEC = 0, +IFLA_INET_CONF = 1, +__IFLA_INET_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_5 { +IFLA_INET6_UNSPEC = 0, +IFLA_INET6_FLAGS = 1, +IFLA_INET6_CONF = 2, +IFLA_INET6_STATS = 3, +IFLA_INET6_MCAST = 4, +IFLA_INET6_CACHEINFO = 5, +IFLA_INET6_ICMP6STATS = 6, +IFLA_INET6_TOKEN = 7, +IFLA_INET6_ADDR_GEN_MODE = 8, +IFLA_INET6_RA_MTU = 9, +__IFLA_INET6_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum in6_addr_gen_mode { +IN6_ADDR_GEN_MODE_EUI64 = 0, +IN6_ADDR_GEN_MODE_NONE = 1, +IN6_ADDR_GEN_MODE_STABLE_PRIVACY = 2, +IN6_ADDR_GEN_MODE_RANDOM = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_6 { +IFLA_BR_UNSPEC = 0, +IFLA_BR_FORWARD_DELAY = 1, +IFLA_BR_HELLO_TIME = 2, +IFLA_BR_MAX_AGE = 3, +IFLA_BR_AGEING_TIME = 4, +IFLA_BR_STP_STATE = 5, +IFLA_BR_PRIORITY = 6, +IFLA_BR_VLAN_FILTERING = 7, +IFLA_BR_VLAN_PROTOCOL = 8, +IFLA_BR_GROUP_FWD_MASK = 9, +IFLA_BR_ROOT_ID = 10, +IFLA_BR_BRIDGE_ID = 11, +IFLA_BR_ROOT_PORT = 12, +IFLA_BR_ROOT_PATH_COST = 13, +IFLA_BR_TOPOLOGY_CHANGE = 14, +IFLA_BR_TOPOLOGY_CHANGE_DETECTED = 15, +IFLA_BR_HELLO_TIMER = 16, +IFLA_BR_TCN_TIMER = 17, +IFLA_BR_TOPOLOGY_CHANGE_TIMER = 18, +IFLA_BR_GC_TIMER = 19, +IFLA_BR_GROUP_ADDR = 20, +IFLA_BR_FDB_FLUSH = 21, +IFLA_BR_MCAST_ROUTER = 22, +IFLA_BR_MCAST_SNOOPING = 23, +IFLA_BR_MCAST_QUERY_USE_IFADDR = 24, +IFLA_BR_MCAST_QUERIER = 25, +IFLA_BR_MCAST_HASH_ELASTICITY = 26, +IFLA_BR_MCAST_HASH_MAX = 27, +IFLA_BR_MCAST_LAST_MEMBER_CNT = 28, +IFLA_BR_MCAST_STARTUP_QUERY_CNT = 29, +IFLA_BR_MCAST_LAST_MEMBER_INTVL = 30, +IFLA_BR_MCAST_MEMBERSHIP_INTVL = 31, +IFLA_BR_MCAST_QUERIER_INTVL = 32, +IFLA_BR_MCAST_QUERY_INTVL = 33, +IFLA_BR_MCAST_QUERY_RESPONSE_INTVL = 34, +IFLA_BR_MCAST_STARTUP_QUERY_INTVL = 35, +IFLA_BR_NF_CALL_IPTABLES = 36, +IFLA_BR_NF_CALL_IP6TABLES = 37, +IFLA_BR_NF_CALL_ARPTABLES = 38, +IFLA_BR_VLAN_DEFAULT_PVID = 39, +IFLA_BR_PAD = 40, +IFLA_BR_VLAN_STATS_ENABLED = 41, +IFLA_BR_MCAST_STATS_ENABLED = 42, +IFLA_BR_MCAST_IGMP_VERSION = 43, +IFLA_BR_MCAST_MLD_VERSION = 44, +IFLA_BR_VLAN_STATS_PER_PORT = 45, +IFLA_BR_MULTI_BOOLOPT = 46, +IFLA_BR_MCAST_QUERIER_STATE = 47, +IFLA_BR_FDB_N_LEARNED = 48, +IFLA_BR_FDB_MAX_LEARNED = 49, +__IFLA_BR_MAX = 50, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_7 { +BRIDGE_MODE_UNSPEC = 0, +BRIDGE_MODE_HAIRPIN = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_8 { +IFLA_BRPORT_UNSPEC = 0, +IFLA_BRPORT_STATE = 1, +IFLA_BRPORT_PRIORITY = 2, +IFLA_BRPORT_COST = 3, +IFLA_BRPORT_MODE = 4, +IFLA_BRPORT_GUARD = 5, +IFLA_BRPORT_PROTECT = 6, +IFLA_BRPORT_FAST_LEAVE = 7, +IFLA_BRPORT_LEARNING = 8, +IFLA_BRPORT_UNICAST_FLOOD = 9, +IFLA_BRPORT_PROXYARP = 10, +IFLA_BRPORT_LEARNING_SYNC = 11, +IFLA_BRPORT_PROXYARP_WIFI = 12, +IFLA_BRPORT_ROOT_ID = 13, +IFLA_BRPORT_BRIDGE_ID = 14, +IFLA_BRPORT_DESIGNATED_PORT = 15, +IFLA_BRPORT_DESIGNATED_COST = 16, +IFLA_BRPORT_ID = 17, +IFLA_BRPORT_NO = 18, +IFLA_BRPORT_TOPOLOGY_CHANGE_ACK = 19, +IFLA_BRPORT_CONFIG_PENDING = 20, +IFLA_BRPORT_MESSAGE_AGE_TIMER = 21, +IFLA_BRPORT_FORWARD_DELAY_TIMER = 22, +IFLA_BRPORT_HOLD_TIMER = 23, +IFLA_BRPORT_FLUSH = 24, +IFLA_BRPORT_MULTICAST_ROUTER = 25, +IFLA_BRPORT_PAD = 26, +IFLA_BRPORT_MCAST_FLOOD = 27, +IFLA_BRPORT_MCAST_TO_UCAST = 28, +IFLA_BRPORT_VLAN_TUNNEL = 29, +IFLA_BRPORT_BCAST_FLOOD = 30, +IFLA_BRPORT_GROUP_FWD_MASK = 31, +IFLA_BRPORT_NEIGH_SUPPRESS = 32, +IFLA_BRPORT_ISOLATED = 33, +IFLA_BRPORT_BACKUP_PORT = 34, +IFLA_BRPORT_MRP_RING_OPEN = 35, +IFLA_BRPORT_MRP_IN_OPEN = 36, +IFLA_BRPORT_MCAST_EHT_HOSTS_LIMIT = 37, +IFLA_BRPORT_MCAST_EHT_HOSTS_CNT = 38, +IFLA_BRPORT_LOCKED = 39, +IFLA_BRPORT_MAB = 40, +IFLA_BRPORT_MCAST_N_GROUPS = 41, +IFLA_BRPORT_MCAST_MAX_GROUPS = 42, +IFLA_BRPORT_NEIGH_VLAN_SUPPRESS = 43, +IFLA_BRPORT_BACKUP_NHID = 44, +__IFLA_BRPORT_MAX = 45, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_9 { +IFLA_INFO_UNSPEC = 0, +IFLA_INFO_KIND = 1, +IFLA_INFO_DATA = 2, +IFLA_INFO_XSTATS = 3, +IFLA_INFO_SLAVE_KIND = 4, +IFLA_INFO_SLAVE_DATA = 5, +__IFLA_INFO_MAX = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_10 { +IFLA_VLAN_UNSPEC = 0, +IFLA_VLAN_ID = 1, +IFLA_VLAN_FLAGS = 2, +IFLA_VLAN_EGRESS_QOS = 3, +IFLA_VLAN_INGRESS_QOS = 4, +IFLA_VLAN_PROTOCOL = 5, +__IFLA_VLAN_MAX = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_11 { +IFLA_VLAN_QOS_UNSPEC = 0, +IFLA_VLAN_QOS_MAPPING = 1, +__IFLA_VLAN_QOS_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_12 { +IFLA_MACVLAN_UNSPEC = 0, +IFLA_MACVLAN_MODE = 1, +IFLA_MACVLAN_FLAGS = 2, +IFLA_MACVLAN_MACADDR_MODE = 3, +IFLA_MACVLAN_MACADDR = 4, +IFLA_MACVLAN_MACADDR_DATA = 5, +IFLA_MACVLAN_MACADDR_COUNT = 6, +IFLA_MACVLAN_BC_QUEUE_LEN = 7, +IFLA_MACVLAN_BC_QUEUE_LEN_USED = 8, +IFLA_MACVLAN_BC_CUTOFF = 9, +__IFLA_MACVLAN_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum macvlan_mode { +MACVLAN_MODE_PRIVATE = 1, +MACVLAN_MODE_VEPA = 2, +MACVLAN_MODE_BRIDGE = 4, +MACVLAN_MODE_PASSTHRU = 8, +MACVLAN_MODE_SOURCE = 16, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum macvlan_macaddr_mode { +MACVLAN_MACADDR_ADD = 0, +MACVLAN_MACADDR_DEL = 1, +MACVLAN_MACADDR_FLUSH = 2, +MACVLAN_MACADDR_SET = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_13 { +IFLA_VRF_UNSPEC = 0, +IFLA_VRF_TABLE = 1, +__IFLA_VRF_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_14 { +IFLA_VRF_PORT_UNSPEC = 0, +IFLA_VRF_PORT_TABLE = 1, +__IFLA_VRF_PORT_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_15 { +IFLA_MACSEC_UNSPEC = 0, +IFLA_MACSEC_SCI = 1, +IFLA_MACSEC_PORT = 2, +IFLA_MACSEC_ICV_LEN = 3, +IFLA_MACSEC_CIPHER_SUITE = 4, +IFLA_MACSEC_WINDOW = 5, +IFLA_MACSEC_ENCODING_SA = 6, +IFLA_MACSEC_ENCRYPT = 7, +IFLA_MACSEC_PROTECT = 8, +IFLA_MACSEC_INC_SCI = 9, +IFLA_MACSEC_ES = 10, +IFLA_MACSEC_SCB = 11, +IFLA_MACSEC_REPLAY_PROTECT = 12, +IFLA_MACSEC_VALIDATION = 13, +IFLA_MACSEC_PAD = 14, +IFLA_MACSEC_OFFLOAD = 15, +__IFLA_MACSEC_MAX = 16, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_16 { +IFLA_XFRM_UNSPEC = 0, +IFLA_XFRM_LINK = 1, +IFLA_XFRM_IF_ID = 2, +IFLA_XFRM_COLLECT_METADATA = 3, +__IFLA_XFRM_MAX = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum macsec_validation_type { +MACSEC_VALIDATE_DISABLED = 0, +MACSEC_VALIDATE_CHECK = 1, +MACSEC_VALIDATE_STRICT = 2, +__MACSEC_VALIDATE_END = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum macsec_offload { +MACSEC_OFFLOAD_OFF = 0, +MACSEC_OFFLOAD_PHY = 1, +MACSEC_OFFLOAD_MAC = 2, +__MACSEC_OFFLOAD_END = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_17 { +IFLA_IPVLAN_UNSPEC = 0, +IFLA_IPVLAN_MODE = 1, +IFLA_IPVLAN_FLAGS = 2, +__IFLA_IPVLAN_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum ipvlan_mode { +IPVLAN_MODE_L2 = 0, +IPVLAN_MODE_L3 = 1, +IPVLAN_MODE_L3S = 2, +IPVLAN_MODE_MAX = 3, +} +#[repr(i8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum netkit_action { +NETKIT_NEXT = -1, +NETKIT_PASS = 0, +NETKIT_DROP = 2, +NETKIT_REDIRECT = 7, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum netkit_mode { +NETKIT_L2 = 0, +NETKIT_L3 = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum netkit_scrub { +NETKIT_SCRUB_NONE = 0, +NETKIT_SCRUB_DEFAULT = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_18 { +IFLA_NETKIT_UNSPEC = 0, +IFLA_NETKIT_PEER_INFO = 1, +IFLA_NETKIT_PRIMARY = 2, +IFLA_NETKIT_POLICY = 3, +IFLA_NETKIT_PEER_POLICY = 4, +IFLA_NETKIT_MODE = 5, +IFLA_NETKIT_SCRUB = 6, +IFLA_NETKIT_PEER_SCRUB = 7, +IFLA_NETKIT_HEADROOM = 8, +IFLA_NETKIT_TAILROOM = 9, +__IFLA_NETKIT_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_19 { +VNIFILTER_ENTRY_STATS_UNSPEC = 0, +VNIFILTER_ENTRY_STATS_RX_BYTES = 1, +VNIFILTER_ENTRY_STATS_RX_PKTS = 2, +VNIFILTER_ENTRY_STATS_RX_DROPS = 3, +VNIFILTER_ENTRY_STATS_RX_ERRORS = 4, +VNIFILTER_ENTRY_STATS_TX_BYTES = 5, +VNIFILTER_ENTRY_STATS_TX_PKTS = 6, +VNIFILTER_ENTRY_STATS_TX_DROPS = 7, +VNIFILTER_ENTRY_STATS_TX_ERRORS = 8, +VNIFILTER_ENTRY_STATS_PAD = 9, +__VNIFILTER_ENTRY_STATS_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_20 { +VXLAN_VNIFILTER_ENTRY_UNSPEC = 0, +VXLAN_VNIFILTER_ENTRY_START = 1, +VXLAN_VNIFILTER_ENTRY_END = 2, +VXLAN_VNIFILTER_ENTRY_GROUP = 3, +VXLAN_VNIFILTER_ENTRY_GROUP6 = 4, +VXLAN_VNIFILTER_ENTRY_STATS = 5, +__VXLAN_VNIFILTER_ENTRY_MAX = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_21 { +VXLAN_VNIFILTER_UNSPEC = 0, +VXLAN_VNIFILTER_ENTRY = 1, +__VXLAN_VNIFILTER_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_22 { +IFLA_VXLAN_UNSPEC = 0, +IFLA_VXLAN_ID = 1, +IFLA_VXLAN_GROUP = 2, +IFLA_VXLAN_LINK = 3, +IFLA_VXLAN_LOCAL = 4, +IFLA_VXLAN_TTL = 5, +IFLA_VXLAN_TOS = 6, +IFLA_VXLAN_LEARNING = 7, +IFLA_VXLAN_AGEING = 8, +IFLA_VXLAN_LIMIT = 9, +IFLA_VXLAN_PORT_RANGE = 10, +IFLA_VXLAN_PROXY = 11, +IFLA_VXLAN_RSC = 12, +IFLA_VXLAN_L2MISS = 13, +IFLA_VXLAN_L3MISS = 14, +IFLA_VXLAN_PORT = 15, +IFLA_VXLAN_GROUP6 = 16, +IFLA_VXLAN_LOCAL6 = 17, +IFLA_VXLAN_UDP_CSUM = 18, +IFLA_VXLAN_UDP_ZERO_CSUM6_TX = 19, +IFLA_VXLAN_UDP_ZERO_CSUM6_RX = 20, +IFLA_VXLAN_REMCSUM_TX = 21, +IFLA_VXLAN_REMCSUM_RX = 22, +IFLA_VXLAN_GBP = 23, +IFLA_VXLAN_REMCSUM_NOPARTIAL = 24, +IFLA_VXLAN_COLLECT_METADATA = 25, +IFLA_VXLAN_LABEL = 26, +IFLA_VXLAN_GPE = 27, +IFLA_VXLAN_TTL_INHERIT = 28, +IFLA_VXLAN_DF = 29, +IFLA_VXLAN_VNIFILTER = 30, +IFLA_VXLAN_LOCALBYPASS = 31, +IFLA_VXLAN_LABEL_POLICY = 32, +IFLA_VXLAN_RESERVED_BITS = 33, +IFLA_VXLAN_MC_ROUTE = 34, +__IFLA_VXLAN_MAX = 35, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum ifla_vxlan_df { +VXLAN_DF_UNSET = 0, +VXLAN_DF_SET = 1, +VXLAN_DF_INHERIT = 2, +__VXLAN_DF_END = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum ifla_vxlan_label_policy { +VXLAN_LABEL_FIXED = 0, +VXLAN_LABEL_INHERIT = 1, +__VXLAN_LABEL_END = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_23 { +IFLA_GENEVE_UNSPEC = 0, +IFLA_GENEVE_ID = 1, +IFLA_GENEVE_REMOTE = 2, +IFLA_GENEVE_TTL = 3, +IFLA_GENEVE_TOS = 4, +IFLA_GENEVE_PORT = 5, +IFLA_GENEVE_COLLECT_METADATA = 6, +IFLA_GENEVE_REMOTE6 = 7, +IFLA_GENEVE_UDP_CSUM = 8, +IFLA_GENEVE_UDP_ZERO_CSUM6_TX = 9, +IFLA_GENEVE_UDP_ZERO_CSUM6_RX = 10, +IFLA_GENEVE_LABEL = 11, +IFLA_GENEVE_TTL_INHERIT = 12, +IFLA_GENEVE_DF = 13, +IFLA_GENEVE_INNER_PROTO_INHERIT = 14, +IFLA_GENEVE_PORT_RANGE = 15, +__IFLA_GENEVE_MAX = 16, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum ifla_geneve_df { +GENEVE_DF_UNSET = 0, +GENEVE_DF_SET = 1, +GENEVE_DF_INHERIT = 2, +__GENEVE_DF_END = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_24 { +IFLA_BAREUDP_UNSPEC = 0, +IFLA_BAREUDP_PORT = 1, +IFLA_BAREUDP_ETHERTYPE = 2, +IFLA_BAREUDP_SRCPORT_MIN = 3, +IFLA_BAREUDP_MULTIPROTO_MODE = 4, +__IFLA_BAREUDP_MAX = 5, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_25 { +IFLA_PPP_UNSPEC = 0, +IFLA_PPP_DEV_FD = 1, +__IFLA_PPP_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum ifla_gtp_role { +GTP_ROLE_GGSN = 0, +GTP_ROLE_SGSN = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_26 { +IFLA_GTP_UNSPEC = 0, +IFLA_GTP_FD0 = 1, +IFLA_GTP_FD1 = 2, +IFLA_GTP_PDP_HASHSIZE = 3, +IFLA_GTP_ROLE = 4, +IFLA_GTP_CREATE_SOCKETS = 5, +IFLA_GTP_RESTART_COUNT = 6, +IFLA_GTP_LOCAL = 7, +IFLA_GTP_LOCAL6 = 8, +__IFLA_GTP_MAX = 9, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_27 { +IFLA_BOND_UNSPEC = 0, +IFLA_BOND_MODE = 1, +IFLA_BOND_ACTIVE_SLAVE = 2, +IFLA_BOND_MIIMON = 3, +IFLA_BOND_UPDELAY = 4, +IFLA_BOND_DOWNDELAY = 5, +IFLA_BOND_USE_CARRIER = 6, +IFLA_BOND_ARP_INTERVAL = 7, +IFLA_BOND_ARP_IP_TARGET = 8, +IFLA_BOND_ARP_VALIDATE = 9, +IFLA_BOND_ARP_ALL_TARGETS = 10, +IFLA_BOND_PRIMARY = 11, +IFLA_BOND_PRIMARY_RESELECT = 12, +IFLA_BOND_FAIL_OVER_MAC = 13, +IFLA_BOND_XMIT_HASH_POLICY = 14, +IFLA_BOND_RESEND_IGMP = 15, +IFLA_BOND_NUM_PEER_NOTIF = 16, +IFLA_BOND_ALL_SLAVES_ACTIVE = 17, +IFLA_BOND_MIN_LINKS = 18, +IFLA_BOND_LP_INTERVAL = 19, +IFLA_BOND_PACKETS_PER_SLAVE = 20, +IFLA_BOND_AD_LACP_RATE = 21, +IFLA_BOND_AD_SELECT = 22, +IFLA_BOND_AD_INFO = 23, +IFLA_BOND_AD_ACTOR_SYS_PRIO = 24, +IFLA_BOND_AD_USER_PORT_KEY = 25, +IFLA_BOND_AD_ACTOR_SYSTEM = 26, +IFLA_BOND_TLB_DYNAMIC_LB = 27, +IFLA_BOND_PEER_NOTIF_DELAY = 28, +IFLA_BOND_AD_LACP_ACTIVE = 29, +IFLA_BOND_MISSED_MAX = 30, +IFLA_BOND_NS_IP6_TARGET = 31, +IFLA_BOND_COUPLED_CONTROL = 32, +IFLA_BOND_BROADCAST_NEIGH = 33, +__IFLA_BOND_MAX = 34, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_28 { +IFLA_BOND_AD_INFO_UNSPEC = 0, +IFLA_BOND_AD_INFO_AGGREGATOR = 1, +IFLA_BOND_AD_INFO_NUM_PORTS = 2, +IFLA_BOND_AD_INFO_ACTOR_KEY = 3, +IFLA_BOND_AD_INFO_PARTNER_KEY = 4, +IFLA_BOND_AD_INFO_PARTNER_MAC = 5, +__IFLA_BOND_AD_INFO_MAX = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_29 { +IFLA_BOND_SLAVE_UNSPEC = 0, +IFLA_BOND_SLAVE_STATE = 1, +IFLA_BOND_SLAVE_MII_STATUS = 2, +IFLA_BOND_SLAVE_LINK_FAILURE_COUNT = 3, +IFLA_BOND_SLAVE_PERM_HWADDR = 4, +IFLA_BOND_SLAVE_QUEUE_ID = 5, +IFLA_BOND_SLAVE_AD_AGGREGATOR_ID = 6, +IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE = 7, +IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE = 8, +IFLA_BOND_SLAVE_PRIO = 9, +__IFLA_BOND_SLAVE_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_30 { +IFLA_VF_INFO_UNSPEC = 0, +IFLA_VF_INFO = 1, +__IFLA_VF_INFO_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_31 { +IFLA_VF_UNSPEC = 0, +IFLA_VF_MAC = 1, +IFLA_VF_VLAN = 2, +IFLA_VF_TX_RATE = 3, +IFLA_VF_SPOOFCHK = 4, +IFLA_VF_LINK_STATE = 5, +IFLA_VF_RATE = 6, +IFLA_VF_RSS_QUERY_EN = 7, +IFLA_VF_STATS = 8, +IFLA_VF_TRUST = 9, +IFLA_VF_IB_NODE_GUID = 10, +IFLA_VF_IB_PORT_GUID = 11, +IFLA_VF_VLAN_LIST = 12, +IFLA_VF_BROADCAST = 13, +__IFLA_VF_MAX = 14, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_32 { +IFLA_VF_VLAN_INFO_UNSPEC = 0, +IFLA_VF_VLAN_INFO = 1, +__IFLA_VF_VLAN_INFO_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_33 { +IFLA_VF_LINK_STATE_AUTO = 0, +IFLA_VF_LINK_STATE_ENABLE = 1, +IFLA_VF_LINK_STATE_DISABLE = 2, +__IFLA_VF_LINK_STATE_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_34 { +IFLA_VF_STATS_RX_PACKETS = 0, +IFLA_VF_STATS_TX_PACKETS = 1, +IFLA_VF_STATS_RX_BYTES = 2, +IFLA_VF_STATS_TX_BYTES = 3, +IFLA_VF_STATS_BROADCAST = 4, +IFLA_VF_STATS_MULTICAST = 5, +IFLA_VF_STATS_PAD = 6, +IFLA_VF_STATS_RX_DROPPED = 7, +IFLA_VF_STATS_TX_DROPPED = 8, +__IFLA_VF_STATS_MAX = 9, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_35 { +IFLA_VF_PORT_UNSPEC = 0, +IFLA_VF_PORT = 1, +__IFLA_VF_PORT_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_36 { +IFLA_PORT_UNSPEC = 0, +IFLA_PORT_VF = 1, +IFLA_PORT_PROFILE = 2, +IFLA_PORT_VSI_TYPE = 3, +IFLA_PORT_INSTANCE_UUID = 4, +IFLA_PORT_HOST_UUID = 5, +IFLA_PORT_REQUEST = 6, +IFLA_PORT_RESPONSE = 7, +__IFLA_PORT_MAX = 8, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_37 { +PORT_REQUEST_PREASSOCIATE = 0, +PORT_REQUEST_PREASSOCIATE_RR = 1, +PORT_REQUEST_ASSOCIATE = 2, +PORT_REQUEST_DISASSOCIATE = 3, +} +#[repr(u16)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_38 { +PORT_VDP_RESPONSE_SUCCESS = 0, +PORT_VDP_RESPONSE_INVALID_FORMAT = 1, +PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES = 2, +PORT_VDP_RESPONSE_UNUSED_VTID = 3, +PORT_VDP_RESPONSE_VTID_VIOLATION = 4, +PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION = 5, +PORT_VDP_RESPONSE_OUT_OF_SYNC = 6, +PORT_PROFILE_RESPONSE_SUCCESS = 256, +PORT_PROFILE_RESPONSE_INPROGRESS = 257, +PORT_PROFILE_RESPONSE_INVALID = 258, +PORT_PROFILE_RESPONSE_BADSTATE = 259, +PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES = 260, +PORT_PROFILE_RESPONSE_ERROR = 261, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_39 { +IFLA_IPOIB_UNSPEC = 0, +IFLA_IPOIB_PKEY = 1, +IFLA_IPOIB_MODE = 2, +IFLA_IPOIB_UMCAST = 3, +__IFLA_IPOIB_MAX = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_40 { +IPOIB_MODE_DATAGRAM = 0, +IPOIB_MODE_CONNECTED = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_41 { +HSR_PROTOCOL_HSR = 0, +HSR_PROTOCOL_PRP = 1, +HSR_PROTOCOL_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_42 { +IFLA_HSR_UNSPEC = 0, +IFLA_HSR_SLAVE1 = 1, +IFLA_HSR_SLAVE2 = 2, +IFLA_HSR_MULTICAST_SPEC = 3, +IFLA_HSR_SUPERVISION_ADDR = 4, +IFLA_HSR_SEQ_NR = 5, +IFLA_HSR_VERSION = 6, +IFLA_HSR_PROTOCOL = 7, +IFLA_HSR_INTERLINK = 8, +__IFLA_HSR_MAX = 9, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_43 { +IFLA_STATS_UNSPEC = 0, +IFLA_STATS_LINK_64 = 1, +IFLA_STATS_LINK_XSTATS = 2, +IFLA_STATS_LINK_XSTATS_SLAVE = 3, +IFLA_STATS_LINK_OFFLOAD_XSTATS = 4, +IFLA_STATS_AF_SPEC = 5, +__IFLA_STATS_MAX = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_44 { +IFLA_STATS_GETSET_UNSPEC = 0, +IFLA_STATS_GET_FILTERS = 1, +IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS = 2, +__IFLA_STATS_GETSET_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_45 { +LINK_XSTATS_TYPE_UNSPEC = 0, +LINK_XSTATS_TYPE_BRIDGE = 1, +LINK_XSTATS_TYPE_BOND = 2, +__LINK_XSTATS_TYPE_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_46 { +IFLA_OFFLOAD_XSTATS_UNSPEC = 0, +IFLA_OFFLOAD_XSTATS_CPU_HIT = 1, +IFLA_OFFLOAD_XSTATS_HW_S_INFO = 2, +IFLA_OFFLOAD_XSTATS_L3_STATS = 3, +__IFLA_OFFLOAD_XSTATS_MAX = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_47 { +IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC = 0, +IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST = 1, +IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED = 2, +__IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_48 { +XDP_ATTACHED_NONE = 0, +XDP_ATTACHED_DRV = 1, +XDP_ATTACHED_SKB = 2, +XDP_ATTACHED_HW = 3, +XDP_ATTACHED_MULTI = 4, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_49 { +IFLA_XDP_UNSPEC = 0, +IFLA_XDP_FD = 1, +IFLA_XDP_ATTACHED = 2, +IFLA_XDP_FLAGS = 3, +IFLA_XDP_PROG_ID = 4, +IFLA_XDP_DRV_PROG_ID = 5, +IFLA_XDP_SKB_PROG_ID = 6, +IFLA_XDP_HW_PROG_ID = 7, +IFLA_XDP_EXPECTED_FD = 8, +__IFLA_XDP_MAX = 9, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_50 { +IFLA_EVENT_NONE = 0, +IFLA_EVENT_REBOOT = 1, +IFLA_EVENT_FEATURES = 2, +IFLA_EVENT_BONDING_FAILOVER = 3, +IFLA_EVENT_NOTIFY_PEERS = 4, +IFLA_EVENT_IGMP_RESEND = 5, +IFLA_EVENT_BONDING_OPTIONS = 6, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_51 { +IFLA_TUN_UNSPEC = 0, +IFLA_TUN_OWNER = 1, +IFLA_TUN_GROUP = 2, +IFLA_TUN_TYPE = 3, +IFLA_TUN_PI = 4, +IFLA_TUN_VNET_HDR = 5, +IFLA_TUN_PERSIST = 6, +IFLA_TUN_MULTI_QUEUE = 7, +IFLA_TUN_NUM_QUEUES = 8, +IFLA_TUN_NUM_DISABLED_QUEUES = 9, +__IFLA_TUN_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_52 { +IFLA_RMNET_UNSPEC = 0, +IFLA_RMNET_MUX_ID = 1, +IFLA_RMNET_FLAGS = 2, +__IFLA_RMNET_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_53 { +IFLA_MCTP_UNSPEC = 0, +IFLA_MCTP_NET = 1, +IFLA_MCTP_PHYS_BINDING = 2, +__IFLA_MCTP_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_54 { +IFLA_DSA_UNSPEC = 0, +IFLA_DSA_CONDUIT = 1, +__IFLA_DSA_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum ovpn_mode { +OVPN_MODE_P2P = 0, +OVPN_MODE_MP = 1, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_55 { +IFLA_OVPN_UNSPEC = 0, +IFLA_OVPN_MODE = 1, +__IFLA_OVPN_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_56 { +IFA_UNSPEC = 0, +IFA_ADDRESS = 1, +IFA_LOCAL = 2, +IFA_LABEL = 3, +IFA_BROADCAST = 4, +IFA_ANYCAST = 5, +IFA_CACHEINFO = 6, +IFA_MULTICAST = 7, +IFA_FLAGS = 8, +IFA_RT_PRIORITY = 9, +IFA_TARGET_NETNSID = 10, +IFA_PROTO = 11, +__IFA_MAX = 12, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_57 { +NDA_UNSPEC = 0, +NDA_DST = 1, +NDA_LLADDR = 2, +NDA_CACHEINFO = 3, +NDA_PROBES = 4, +NDA_VLAN = 5, +NDA_PORT = 6, +NDA_VNI = 7, +NDA_IFINDEX = 8, +NDA_MASTER = 9, +NDA_LINK_NETNSID = 10, +NDA_SRC_VNI = 11, +NDA_PROTOCOL = 12, +NDA_NH_ID = 13, +NDA_FDB_EXT_ATTRS = 14, +NDA_FLAGS_EXT = 15, +NDA_NDM_STATE_MASK = 16, +NDA_NDM_FLAGS_MASK = 17, +__NDA_MAX = 18, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_58 { +NDTPA_UNSPEC = 0, +NDTPA_IFINDEX = 1, +NDTPA_REFCNT = 2, +NDTPA_REACHABLE_TIME = 3, +NDTPA_BASE_REACHABLE_TIME = 4, +NDTPA_RETRANS_TIME = 5, +NDTPA_GC_STALETIME = 6, +NDTPA_DELAY_PROBE_TIME = 7, +NDTPA_QUEUE_LEN = 8, +NDTPA_APP_PROBES = 9, +NDTPA_UCAST_PROBES = 10, +NDTPA_MCAST_PROBES = 11, +NDTPA_ANYCAST_DELAY = 12, +NDTPA_PROXY_DELAY = 13, +NDTPA_PROXY_QLEN = 14, +NDTPA_LOCKTIME = 15, +NDTPA_QUEUE_LENBYTES = 16, +NDTPA_MCAST_REPROBES = 17, +NDTPA_PAD = 18, +NDTPA_INTERVAL_PROBE_TIME_MS = 19, +__NDTPA_MAX = 20, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_59 { +NDTA_UNSPEC = 0, +NDTA_NAME = 1, +NDTA_THRESH1 = 2, +NDTA_THRESH2 = 3, +NDTA_THRESH3 = 4, +NDTA_CONFIG = 5, +NDTA_PARMS = 6, +NDTA_STATS = 7, +NDTA_GC_INTERVAL = 8, +NDTA_PAD = 9, +__NDTA_MAX = 10, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_60 { +FDB_NOTIFY_BIT = 1, +FDB_NOTIFY_INACTIVE_BIT = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_61 { +NFEA_UNSPEC = 0, +NFEA_ACTIVITY_NOTIFY = 1, +NFEA_DONT_REFRESH = 2, +__NFEA_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_62 { +RTM_BASE = 16, +RTM_DELLINK = 17, +RTM_GETLINK = 18, +RTM_SETLINK = 19, +RTM_NEWADDR = 20, +RTM_DELADDR = 21, +RTM_GETADDR = 22, +RTM_NEWROUTE = 24, +RTM_DELROUTE = 25, +RTM_GETROUTE = 26, +RTM_NEWNEIGH = 28, +RTM_DELNEIGH = 29, +RTM_GETNEIGH = 30, +RTM_NEWRULE = 32, +RTM_DELRULE = 33, +RTM_GETRULE = 34, +RTM_NEWQDISC = 36, +RTM_DELQDISC = 37, +RTM_GETQDISC = 38, +RTM_NEWTCLASS = 40, +RTM_DELTCLASS = 41, +RTM_GETTCLASS = 42, +RTM_NEWTFILTER = 44, +RTM_DELTFILTER = 45, +RTM_GETTFILTER = 46, +RTM_NEWACTION = 48, +RTM_DELACTION = 49, +RTM_GETACTION = 50, +RTM_NEWPREFIX = 52, +RTM_NEWMULTICAST = 56, +RTM_DELMULTICAST = 57, +RTM_GETMULTICAST = 58, +RTM_NEWANYCAST = 60, +RTM_DELANYCAST = 61, +RTM_GETANYCAST = 62, +RTM_NEWNEIGHTBL = 64, +RTM_GETNEIGHTBL = 66, +RTM_SETNEIGHTBL = 67, +RTM_NEWNDUSEROPT = 68, +RTM_NEWADDRLABEL = 72, +RTM_DELADDRLABEL = 73, +RTM_GETADDRLABEL = 74, +RTM_GETDCB = 78, +RTM_SETDCB = 79, +RTM_NEWNETCONF = 80, +RTM_DELNETCONF = 81, +RTM_GETNETCONF = 82, +RTM_NEWMDB = 84, +RTM_DELMDB = 85, +RTM_GETMDB = 86, +RTM_NEWNSID = 88, +RTM_DELNSID = 89, +RTM_GETNSID = 90, +RTM_NEWSTATS = 92, +RTM_GETSTATS = 94, +RTM_SETSTATS = 95, +RTM_NEWCACHEREPORT = 96, +RTM_NEWCHAIN = 100, +RTM_DELCHAIN = 101, +RTM_GETCHAIN = 102, +RTM_NEWNEXTHOP = 104, +RTM_DELNEXTHOP = 105, +RTM_GETNEXTHOP = 106, +RTM_NEWLINKPROP = 108, +RTM_DELLINKPROP = 109, +RTM_GETLINKPROP = 110, +RTM_NEWVLAN = 112, +RTM_DELVLAN = 113, +RTM_GETVLAN = 114, +RTM_NEWNEXTHOPBUCKET = 116, +RTM_DELNEXTHOPBUCKET = 117, +RTM_GETNEXTHOPBUCKET = 118, +RTM_NEWTUNNEL = 120, +RTM_DELTUNNEL = 121, +RTM_GETTUNNEL = 122, +__RTM_MAX = 123, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_63 { +RTN_UNSPEC = 0, +RTN_UNICAST = 1, +RTN_LOCAL = 2, +RTN_BROADCAST = 3, +RTN_ANYCAST = 4, +RTN_MULTICAST = 5, +RTN_BLACKHOLE = 6, +RTN_UNREACHABLE = 7, +RTN_PROHIBIT = 8, +RTN_THROW = 9, +RTN_NAT = 10, +RTN_XRESOLVE = 11, +__RTN_MAX = 12, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum rt_scope_t { +RT_SCOPE_UNIVERSE = 0, +RT_SCOPE_SITE = 200, +RT_SCOPE_LINK = 253, +RT_SCOPE_HOST = 254, +RT_SCOPE_NOWHERE = 255, +} +#[repr(u32)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum rt_class_t { +RT_TABLE_UNSPEC = 0, +RT_TABLE_COMPAT = 252, +RT_TABLE_DEFAULT = 253, +RT_TABLE_MAIN = 254, +RT_TABLE_LOCAL = 255, +RT_TABLE_MAX = 4294967295, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum rtattr_type_t { +RTA_UNSPEC = 0, +RTA_DST = 1, +RTA_SRC = 2, +RTA_IIF = 3, +RTA_OIF = 4, +RTA_GATEWAY = 5, +RTA_PRIORITY = 6, +RTA_PREFSRC = 7, +RTA_METRICS = 8, +RTA_MULTIPATH = 9, +RTA_PROTOINFO = 10, +RTA_FLOW = 11, +RTA_CACHEINFO = 12, +RTA_SESSION = 13, +RTA_MP_ALGO = 14, +RTA_TABLE = 15, +RTA_MARK = 16, +RTA_MFC_STATS = 17, +RTA_VIA = 18, +RTA_NEWDST = 19, +RTA_PREF = 20, +RTA_ENCAP_TYPE = 21, +RTA_ENCAP = 22, +RTA_EXPIRES = 23, +RTA_PAD = 24, +RTA_UID = 25, +RTA_TTL_PROPAGATE = 26, +RTA_IP_PROTO = 27, +RTA_SPORT = 28, +RTA_DPORT = 29, +RTA_NH_ID = 30, +RTA_FLOWLABEL = 31, +__RTA_MAX = 32, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_64 { +RTAX_UNSPEC = 0, +RTAX_LOCK = 1, +RTAX_MTU = 2, +RTAX_WINDOW = 3, +RTAX_RTT = 4, +RTAX_RTTVAR = 5, +RTAX_SSTHRESH = 6, +RTAX_CWND = 7, +RTAX_ADVMSS = 8, +RTAX_REORDERING = 9, +RTAX_HOPLIMIT = 10, +RTAX_INITCWND = 11, +RTAX_FEATURES = 12, +RTAX_RTO_MIN = 13, +RTAX_INITRWND = 14, +RTAX_QUICKACK = 15, +RTAX_CC_ALGO = 16, +RTAX_FASTOPEN_NO_COOKIE = 17, +__RTAX_MAX = 18, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_65 { +PREFIX_UNSPEC = 0, +PREFIX_ADDRESS = 1, +PREFIX_CACHEINFO = 2, +__PREFIX_MAX = 3, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_66 { +TCA_UNSPEC = 0, +TCA_KIND = 1, +TCA_OPTIONS = 2, +TCA_STATS = 3, +TCA_XSTATS = 4, +TCA_RATE = 5, +TCA_FCNT = 6, +TCA_STATS2 = 7, +TCA_STAB = 8, +TCA_PAD = 9, +TCA_DUMP_INVISIBLE = 10, +TCA_CHAIN = 11, +TCA_HW_OFFLOAD = 12, +TCA_INGRESS_BLOCK = 13, +TCA_EGRESS_BLOCK = 14, +TCA_DUMP_FLAGS = 15, +TCA_EXT_WARN_MSG = 16, +__TCA_MAX = 17, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_67 { +NDUSEROPT_UNSPEC = 0, +NDUSEROPT_SRCADDR = 1, +__NDUSEROPT_MAX = 2, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum rtnetlink_groups { +RTNLGRP_NONE = 0, +RTNLGRP_LINK = 1, +RTNLGRP_NOTIFY = 2, +RTNLGRP_NEIGH = 3, +RTNLGRP_TC = 4, +RTNLGRP_IPV4_IFADDR = 5, +RTNLGRP_IPV4_MROUTE = 6, +RTNLGRP_IPV4_ROUTE = 7, +RTNLGRP_IPV4_RULE = 8, +RTNLGRP_IPV6_IFADDR = 9, +RTNLGRP_IPV6_MROUTE = 10, +RTNLGRP_IPV6_ROUTE = 11, +RTNLGRP_IPV6_IFINFO = 12, +RTNLGRP_DECnet_IFADDR = 13, +RTNLGRP_NOP2 = 14, +RTNLGRP_DECnet_ROUTE = 15, +RTNLGRP_DECnet_RULE = 16, +RTNLGRP_NOP4 = 17, +RTNLGRP_IPV6_PREFIX = 18, +RTNLGRP_IPV6_RULE = 19, +RTNLGRP_ND_USEROPT = 20, +RTNLGRP_PHONET_IFADDR = 21, +RTNLGRP_PHONET_ROUTE = 22, +RTNLGRP_DCB = 23, +RTNLGRP_IPV4_NETCONF = 24, +RTNLGRP_IPV6_NETCONF = 25, +RTNLGRP_MDB = 26, +RTNLGRP_MPLS_ROUTE = 27, +RTNLGRP_NSID = 28, +RTNLGRP_MPLS_NETCONF = 29, +RTNLGRP_IPV4_MROUTE_R = 30, +RTNLGRP_IPV6_MROUTE_R = 31, +RTNLGRP_NEXTHOP = 32, +RTNLGRP_BRVLAN = 33, +RTNLGRP_MCTP_IFADDR = 34, +RTNLGRP_TUNNEL = 35, +RTNLGRP_STATS = 36, +RTNLGRP_IPV4_MCADDR = 37, +RTNLGRP_IPV6_MCADDR = 38, +RTNLGRP_IPV6_ACADDR = 39, +__RTNLGRP_MAX = 40, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_68 { +TCA_ROOT_UNSPEC = 0, +TCA_ROOT_TAB = 1, +TCA_ROOT_FLAGS = 2, +TCA_ROOT_COUNT = 3, +TCA_ROOT_TIME_DELTA = 4, +TCA_ROOT_EXT_WARN_MSG = 5, +__TCA_ROOT_MAX = 6, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union __kernel_sockaddr_storage__bindgen_ty_1 { +pub __bindgen_anon_1: __kernel_sockaddr_storage__bindgen_ty_1__bindgen_ty_1, +pub __align: *mut crate::ctypes::c_void, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union rta_session__bindgen_ty_1 { +pub ports: rta_session__bindgen_ty_1__bindgen_ty_1, +pub icmpt: rta_session__bindgen_ty_1__bindgen_ty_2, +pub spi: __u32, +} +impl __IncompleteArrayField { +#[inline] +pub const fn new() -> Self { +__IncompleteArrayField(::core::marker::PhantomData, []) +} +#[inline] +pub fn as_ptr(&self) -> *const T { +self as *const _ as *const T +} +#[inline] +pub fn as_mut_ptr(&mut self) -> *mut T { +self as *mut _ as *mut T +} +#[inline] +pub unsafe fn as_slice(&self, len: usize) -> &[T] { +::core::slice::from_raw_parts(self.as_ptr(), len) +} +#[inline] +pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { +::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len) +} +} +impl ::core::fmt::Debug for __IncompleteArrayField { +fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { +fmt.write_str("__IncompleteArrayField") +} +} +impl nlmsgerr_attrs { +pub const NLMSGERR_ATTR_MAX: nlmsgerr_attrs = nlmsgerr_attrs::NLMSGERR_ATTR_MISS_NEST; +} +impl netlink_policy_type_attr { +pub const NL_POLICY_TYPE_ATTR_MAX: netlink_policy_type_attr = netlink_policy_type_attr::NL_POLICY_TYPE_ATTR_MASK; +} +impl nl80211_commands { +pub const NL80211_CMD_NEW_BEACON: nl80211_commands = nl80211_commands::NL80211_CMD_START_AP; +} +impl nl80211_commands { +pub const NL80211_CMD_DEL_BEACON: nl80211_commands = nl80211_commands::NL80211_CMD_STOP_AP; +} +impl nl80211_commands { +pub const NL80211_CMD_REGISTER_ACTION: nl80211_commands = nl80211_commands::NL80211_CMD_REGISTER_FRAME; +} +impl nl80211_commands { +pub const NL80211_CMD_ACTION: nl80211_commands = nl80211_commands::NL80211_CMD_FRAME; +} +impl nl80211_commands { +pub const NL80211_CMD_ACTION_TX_STATUS: nl80211_commands = nl80211_commands::NL80211_CMD_FRAME_TX_STATUS; +} +impl nl80211_commands { +pub const NL80211_CMD_MAX: nl80211_commands = nl80211_commands::NL80211_CMD_EPCS_CFG; +} +impl nl80211_attrs { +pub const NUM_NL80211_ATTR: nl80211_attrs = nl80211_attrs::__NL80211_ATTR_AFTER_LAST; +} +impl nl80211_attrs { +pub const NL80211_ATTR_MAX: nl80211_attrs = nl80211_attrs::NL80211_ATTR_S1G_SHORT_BEACON; +} +impl nl80211_iftype { +pub const NL80211_IFTYPE_MAX: nl80211_iftype = nl80211_iftype::NL80211_IFTYPE_NAN; +} +impl nl80211_sta_flags { +pub const NL80211_STA_FLAG_MAX: nl80211_sta_flags = nl80211_sta_flags::NL80211_STA_FLAG_SPP_AMSDU; +} +impl nl80211_rate_info { +pub const NL80211_RATE_INFO_MAX: nl80211_rate_info = nl80211_rate_info::NL80211_RATE_INFO_16_MHZ_WIDTH; +} +impl nl80211_sta_bss_param { +pub const NL80211_STA_BSS_PARAM_MAX: nl80211_sta_bss_param = nl80211_sta_bss_param::NL80211_STA_BSS_PARAM_BEACON_INTERVAL; +} +impl nl80211_sta_info { +pub const NL80211_STA_INFO_MAX: nl80211_sta_info = nl80211_sta_info::NL80211_STA_INFO_CONNECTED_TO_AS; +} +impl nl80211_tid_stats { +pub const NL80211_TID_STATS_MAX: nl80211_tid_stats = nl80211_tid_stats::NL80211_TID_STATS_TXQ_STATS; +} +impl nl80211_txq_stats { +pub const NL80211_TXQ_STATS_MAX: nl80211_txq_stats = nl80211_txq_stats::NL80211_TXQ_STATS_MAX_FLOWS; +} +impl nl80211_mpath_info { +pub const NL80211_MPATH_INFO_MAX: nl80211_mpath_info = nl80211_mpath_info::NL80211_MPATH_INFO_PATH_CHANGE; +} +impl nl80211_band_iftype_attr { +pub const NL80211_BAND_IFTYPE_ATTR_MAX: nl80211_band_iftype_attr = nl80211_band_iftype_attr::NL80211_BAND_IFTYPE_ATTR_EHT_CAP_PPE; +} +impl nl80211_band_attr { +pub const NL80211_BAND_ATTR_MAX: nl80211_band_attr = nl80211_band_attr::NL80211_BAND_ATTR_S1G_CAPA; +} +impl nl80211_wmm_rule { +pub const NL80211_WMMR_MAX: nl80211_wmm_rule = nl80211_wmm_rule::NL80211_WMMR_TXOP; +} +impl nl80211_frequency_attr { +pub const NL80211_FREQUENCY_ATTR_MAX: nl80211_frequency_attr = nl80211_frequency_attr::NL80211_FREQUENCY_ATTR_ALLOW_20MHZ_ACTIVITY; +} +impl nl80211_bitrate_attr { +pub const NL80211_BITRATE_ATTR_MAX: nl80211_bitrate_attr = nl80211_bitrate_attr::NL80211_BITRATE_ATTR_2GHZ_SHORTPREAMBLE; +} +impl nl80211_reg_rule_attr { +pub const NL80211_REG_RULE_ATTR_MAX: nl80211_reg_rule_attr = nl80211_reg_rule_attr::NL80211_ATTR_POWER_RULE_PSD; +} +impl nl80211_sched_scan_match_attr { +pub const NL80211_SCHED_SCAN_MATCH_ATTR_MAX: nl80211_sched_scan_match_attr = nl80211_sched_scan_match_attr::NL80211_SCHED_SCAN_MATCH_PER_BAND_RSSI; +} +impl nl80211_survey_info { +pub const NL80211_SURVEY_INFO_MAX: nl80211_survey_info = nl80211_survey_info::NL80211_SURVEY_INFO_FREQUENCY_OFFSET; +} +impl nl80211_mntr_flags { +pub const NL80211_MNTR_FLAG_MAX: nl80211_mntr_flags = nl80211_mntr_flags::NL80211_MNTR_FLAG_SKIP_TX; +} +impl nl80211_mesh_power_mode { +pub const NL80211_MESH_POWER_MAX: nl80211_mesh_power_mode = nl80211_mesh_power_mode::NL80211_MESH_POWER_DEEP_SLEEP; +} +impl nl80211_meshconf_params { +pub const NL80211_MESHCONF_ATTR_MAX: nl80211_meshconf_params = nl80211_meshconf_params::NL80211_MESHCONF_CONNECTED_TO_AS; +} +impl nl80211_mesh_setup_params { +pub const NL80211_MESH_SETUP_ATTR_MAX: nl80211_mesh_setup_params = nl80211_mesh_setup_params::NL80211_MESH_SETUP_AUTH_PROTOCOL; +} +impl nl80211_txq_attr { +pub const NL80211_TXQ_ATTR_MAX: nl80211_txq_attr = nl80211_txq_attr::NL80211_TXQ_ATTR_AIFS; +} +impl nl80211_bss { +pub const NL80211_BSS_MAX: nl80211_bss = nl80211_bss::NL80211_BSS_CANNOT_USE_REASONS; +} +impl nl80211_auth_type { +pub const NL80211_AUTHTYPE_MAX: nl80211_auth_type = nl80211_auth_type::NL80211_AUTHTYPE_FILS_PK; +} +impl nl80211_auth_type { +pub const NL80211_AUTHTYPE_AUTOMATIC: nl80211_auth_type = nl80211_auth_type::__NL80211_AUTHTYPE_NUM; +} +impl nl80211_key_attributes { +pub const NL80211_KEY_MAX: nl80211_key_attributes = nl80211_key_attributes::NL80211_KEY_DEFAULT_BEACON; +} +impl nl80211_tx_rate_attributes { +pub const NL80211_TXRATE_MAX: nl80211_tx_rate_attributes = nl80211_tx_rate_attributes::NL80211_TXRATE_HE_LTF; +} +impl nl80211_attr_cqm { +pub const NL80211_ATTR_CQM_MAX: nl80211_attr_cqm = nl80211_attr_cqm::NL80211_ATTR_CQM_RSSI_LEVEL; +} +impl nl80211_tid_config_attr { +pub const NL80211_TID_CONFIG_ATTR_MAX: nl80211_tid_config_attr = nl80211_tid_config_attr::NL80211_TID_CONFIG_ATTR_TX_RATE; +} +impl nl80211_packet_pattern_attr { +pub const MAX_NL80211_PKTPAT: nl80211_packet_pattern_attr = nl80211_packet_pattern_attr::NL80211_PKTPAT_OFFSET; +} +impl nl80211_wowlan_triggers { +pub const MAX_NL80211_WOWLAN_TRIG: nl80211_wowlan_triggers = nl80211_wowlan_triggers::NL80211_WOWLAN_TRIG_UNPROTECTED_DEAUTH_DISASSOC; +} +impl nl80211_wowlan_tcp_attrs { +pub const MAX_NL80211_WOWLAN_TCP: nl80211_wowlan_tcp_attrs = nl80211_wowlan_tcp_attrs::NL80211_WOWLAN_TCP_WAKE_MASK; +} +impl nl80211_attr_coalesce_rule { +pub const NL80211_ATTR_COALESCE_RULE_MAX: nl80211_attr_coalesce_rule = nl80211_attr_coalesce_rule::NL80211_ATTR_COALESCE_RULE_PKT_PATTERN; +} +impl nl80211_iface_limit_attrs { +pub const MAX_NL80211_IFACE_LIMIT: nl80211_iface_limit_attrs = nl80211_iface_limit_attrs::NL80211_IFACE_LIMIT_TYPES; +} +impl nl80211_if_combination_attrs { +pub const MAX_NL80211_IFACE_COMB: nl80211_if_combination_attrs = nl80211_if_combination_attrs::NL80211_IFACE_COMB_BI_MIN_GCD; +} +impl nl80211_plink_state { +pub const MAX_NL80211_PLINK_STATES: nl80211_plink_state = nl80211_plink_state::NL80211_PLINK_BLOCKED; +} +impl nl80211_rekey_data { +pub const MAX_NL80211_REKEY_DATA: nl80211_rekey_data = nl80211_rekey_data::NL80211_REKEY_DATA_AKM; +} +impl nl80211_sta_wme_attr { +pub const NL80211_STA_WME_MAX: nl80211_sta_wme_attr = nl80211_sta_wme_attr::NL80211_STA_WME_MAX_SP; +} +impl nl80211_pmksa_candidate_attr { +pub const MAX_NL80211_PMKSA_CANDIDATE: nl80211_pmksa_candidate_attr = nl80211_pmksa_candidate_attr::NL80211_PMKSA_CANDIDATE_PREAUTH; +} +impl nl80211_ext_feature_index { +pub const NL80211_EXT_FEATURE_DATA_ACK_SIGNAL_SUPPORT: nl80211_ext_feature_index = nl80211_ext_feature_index::NL80211_EXT_FEATURE_ACK_SIGNAL_SUPPORT; +} +impl nl80211_ext_feature_index { +pub const MAX_NL80211_EXT_FEATURES: nl80211_ext_feature_index = nl80211_ext_feature_index::NL80211_EXT_FEATURE_SPP_AMSDU_SUPPORT; +} +impl nl80211_smps_mode { +pub const NL80211_SMPS_MAX: nl80211_smps_mode = nl80211_smps_mode::NL80211_SMPS_DYNAMIC; +} +impl nl80211_sched_scan_plan { +pub const NL80211_SCHED_SCAN_PLAN_MAX: nl80211_sched_scan_plan = nl80211_sched_scan_plan::NL80211_SCHED_SCAN_PLAN_ITERATIONS; +} +impl nl80211_bss_select_attr { +pub const NL80211_BSS_SELECT_ATTR_MAX: nl80211_bss_select_attr = nl80211_bss_select_attr::NL80211_BSS_SELECT_ATTR_RSSI_ADJUST; +} +impl nl80211_nan_function_type { +pub const NL80211_NAN_FUNC_MAX_TYPE: nl80211_nan_function_type = nl80211_nan_function_type::NL80211_NAN_FUNC_FOLLOW_UP; +} +impl nl80211_nan_func_attributes { +pub const NL80211_NAN_FUNC_ATTR_MAX: nl80211_nan_func_attributes = nl80211_nan_func_attributes::NL80211_NAN_FUNC_TERM_REASON; +} +impl nl80211_nan_srf_attributes { +pub const NL80211_NAN_SRF_ATTR_MAX: nl80211_nan_srf_attributes = nl80211_nan_srf_attributes::NL80211_NAN_SRF_MAC_ADDRS; +} +impl nl80211_nan_match_attributes { +pub const NL80211_NAN_MATCH_ATTR_MAX: nl80211_nan_match_attributes = nl80211_nan_match_attributes::NL80211_NAN_MATCH_FUNC_PEER; +} +impl nl80211_ftm_responder_attributes { +pub const NL80211_FTM_RESP_ATTR_MAX: nl80211_ftm_responder_attributes = nl80211_ftm_responder_attributes::NL80211_FTM_RESP_ATTR_CIVICLOC; +} +impl nl80211_ftm_responder_stats { +pub const NL80211_FTM_STATS_MAX: nl80211_ftm_responder_stats = nl80211_ftm_responder_stats::NL80211_FTM_STATS_PAD; +} +impl nl80211_peer_measurement_type { +pub const NL80211_PMSR_TYPE_MAX: nl80211_peer_measurement_type = nl80211_peer_measurement_type::NL80211_PMSR_TYPE_FTM; +} +impl nl80211_peer_measurement_req { +pub const NL80211_PMSR_REQ_ATTR_MAX: nl80211_peer_measurement_req = nl80211_peer_measurement_req::NL80211_PMSR_REQ_ATTR_GET_AP_TSF; +} +impl nl80211_peer_measurement_resp { +pub const NL80211_PMSR_RESP_ATTR_MAX: nl80211_peer_measurement_resp = nl80211_peer_measurement_resp::NL80211_PMSR_RESP_ATTR_PAD; +} +impl nl80211_peer_measurement_peer_attrs { +pub const NL80211_PMSR_PEER_ATTR_MAX: nl80211_peer_measurement_peer_attrs = nl80211_peer_measurement_peer_attrs::NL80211_PMSR_PEER_ATTR_RESP; +} +impl nl80211_peer_measurement_attrs { +pub const NL80211_PMSR_ATTR_MAX: nl80211_peer_measurement_attrs = nl80211_peer_measurement_attrs::NL80211_PMSR_ATTR_PEERS; +} +impl nl80211_peer_measurement_ftm_capa { +pub const NL80211_PMSR_FTM_CAPA_ATTR_MAX: nl80211_peer_measurement_ftm_capa = nl80211_peer_measurement_ftm_capa::NL80211_PMSR_FTM_CAPA_ATTR_NON_TRIGGER_BASED; +} +impl nl80211_peer_measurement_ftm_req { +pub const NL80211_PMSR_FTM_REQ_ATTR_MAX: nl80211_peer_measurement_ftm_req = nl80211_peer_measurement_ftm_req::NL80211_PMSR_FTM_REQ_ATTR_BSS_COLOR; +} +impl nl80211_peer_measurement_ftm_resp { +pub const NL80211_PMSR_FTM_RESP_ATTR_MAX: nl80211_peer_measurement_ftm_resp = nl80211_peer_measurement_ftm_resp::NL80211_PMSR_FTM_RESP_ATTR_PAD; +} +impl nl80211_obss_pd_attributes { +pub const NL80211_HE_OBSS_PD_ATTR_MAX: nl80211_obss_pd_attributes = nl80211_obss_pd_attributes::NL80211_HE_OBSS_PD_ATTR_SR_CTRL; +} +impl nl80211_bss_color_attributes { +pub const NL80211_HE_BSS_COLOR_ATTR_MAX: nl80211_bss_color_attributes = nl80211_bss_color_attributes::NL80211_HE_BSS_COLOR_ATTR_PARTIAL; +} +impl nl80211_iftype_akm_attributes { +pub const NL80211_IFTYPE_AKM_ATTR_MAX: nl80211_iftype_akm_attributes = nl80211_iftype_akm_attributes::NL80211_IFTYPE_AKM_ATTR_SUITES; +} +impl nl80211_fils_discovery_attributes { +pub const NL80211_FILS_DISCOVERY_ATTR_MAX: nl80211_fils_discovery_attributes = nl80211_fils_discovery_attributes::NL80211_FILS_DISCOVERY_ATTR_TMPL; +} +impl nl80211_unsol_bcast_probe_resp_attributes { +pub const NL80211_UNSOL_BCAST_PROBE_RESP_ATTR_MAX: nl80211_unsol_bcast_probe_resp_attributes = nl80211_unsol_bcast_probe_resp_attributes::NL80211_UNSOL_BCAST_PROBE_RESP_ATTR_TMPL; +} +impl nl80211_sar_attrs { +pub const NL80211_SAR_ATTR_MAX: nl80211_sar_attrs = nl80211_sar_attrs::NL80211_SAR_ATTR_SPECS; +} +impl nl80211_sar_specs_attrs { +pub const NL80211_SAR_ATTR_SPECS_MAX: nl80211_sar_specs_attrs = nl80211_sar_specs_attrs::NL80211_SAR_ATTR_SPECS_END_FREQ; +} +impl nl80211_mbssid_config_attributes { +pub const NL80211_MBSSID_CONFIG_ATTR_MAX: nl80211_mbssid_config_attributes = nl80211_mbssid_config_attributes::NL80211_MBSSID_CONFIG_ATTR_TX_LINK_ID; +} +impl nl80211_wiphy_radio_attrs { +pub const NL80211_WIPHY_RADIO_ATTR_MAX: nl80211_wiphy_radio_attrs = nl80211_wiphy_radio_attrs::NL80211_WIPHY_RADIO_ATTR_RTS_THRESHOLD; +} +impl nl80211_wiphy_radio_freq_range { +pub const NL80211_WIPHY_RADIO_FREQ_ATTR_MAX: nl80211_wiphy_radio_freq_range = nl80211_wiphy_radio_freq_range::NL80211_WIPHY_RADIO_FREQ_ATTR_END; +} +impl nl80211_s1g_short_beacon_attrs { +pub const NL80211_S1G_SHORT_BEACON_ATTR_MAX: nl80211_s1g_short_beacon_attrs = nl80211_s1g_short_beacon_attrs::NL80211_S1G_SHORT_BEACON_ATTR_TAIL; +} +impl macsec_validation_type { +pub const MACSEC_VALIDATE_MAX: macsec_validation_type = macsec_validation_type::MACSEC_VALIDATE_STRICT; +} +impl macsec_offload { +pub const MACSEC_OFFLOAD_MAX: macsec_offload = macsec_offload::MACSEC_OFFLOAD_MAC; +} +impl ifla_vxlan_df { +pub const VXLAN_DF_MAX: ifla_vxlan_df = ifla_vxlan_df::VXLAN_DF_INHERIT; +} +impl ifla_vxlan_label_policy { +pub const VXLAN_LABEL_MAX: ifla_vxlan_label_policy = ifla_vxlan_label_policy::VXLAN_LABEL_INHERIT; +} +impl ifla_geneve_df { +pub const GENEVE_DF_MAX: ifla_geneve_df = ifla_geneve_df::GENEVE_DF_INHERIT; +} diff --git a/src/hexagon/prctl.rs b/src/hexagon/prctl.rs new file mode 100644 index 00000000..ff251ffa --- /dev/null +++ b/src/hexagon/prctl.rs @@ -0,0 +1,270 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct prctl_mm_map { +pub start_code: __u64, +pub end_code: __u64, +pub start_data: __u64, +pub end_data: __u64, +pub start_brk: __u64, +pub brk: __u64, +pub start_stack: __u64, +pub arg_start: __u64, +pub arg_end: __u64, +pub env_start: __u64, +pub env_end: __u64, +pub auxv: *mut __u64, +pub auxv_size: __u32, +pub exe_fd: __u32, +} +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const PR_SET_PDEATHSIG: u32 = 1; +pub const PR_GET_PDEATHSIG: u32 = 2; +pub const PR_GET_DUMPABLE: u32 = 3; +pub const PR_SET_DUMPABLE: u32 = 4; +pub const PR_GET_UNALIGN: u32 = 5; +pub const PR_SET_UNALIGN: u32 = 6; +pub const PR_UNALIGN_NOPRINT: u32 = 1; +pub const PR_UNALIGN_SIGBUS: u32 = 2; +pub const PR_GET_KEEPCAPS: u32 = 7; +pub const PR_SET_KEEPCAPS: u32 = 8; +pub const PR_GET_FPEMU: u32 = 9; +pub const PR_SET_FPEMU: u32 = 10; +pub const PR_FPEMU_NOPRINT: u32 = 1; +pub const PR_FPEMU_SIGFPE: u32 = 2; +pub const PR_GET_FPEXC: u32 = 11; +pub const PR_SET_FPEXC: u32 = 12; +pub const PR_FP_EXC_SW_ENABLE: u32 = 128; +pub const PR_FP_EXC_DIV: u32 = 65536; +pub const PR_FP_EXC_OVF: u32 = 131072; +pub const PR_FP_EXC_UND: u32 = 262144; +pub const PR_FP_EXC_RES: u32 = 524288; +pub const PR_FP_EXC_INV: u32 = 1048576; +pub const PR_FP_EXC_DISABLED: u32 = 0; +pub const PR_FP_EXC_NONRECOV: u32 = 1; +pub const PR_FP_EXC_ASYNC: u32 = 2; +pub const PR_FP_EXC_PRECISE: u32 = 3; +pub const PR_GET_TIMING: u32 = 13; +pub const PR_SET_TIMING: u32 = 14; +pub const PR_TIMING_STATISTICAL: u32 = 0; +pub const PR_TIMING_TIMESTAMP: u32 = 1; +pub const PR_SET_NAME: u32 = 15; +pub const PR_GET_NAME: u32 = 16; +pub const PR_GET_ENDIAN: u32 = 19; +pub const PR_SET_ENDIAN: u32 = 20; +pub const PR_ENDIAN_BIG: u32 = 0; +pub const PR_ENDIAN_LITTLE: u32 = 1; +pub const PR_ENDIAN_PPC_LITTLE: u32 = 2; +pub const PR_GET_SECCOMP: u32 = 21; +pub const PR_SET_SECCOMP: u32 = 22; +pub const PR_CAPBSET_READ: u32 = 23; +pub const PR_CAPBSET_DROP: u32 = 24; +pub const PR_GET_TSC: u32 = 25; +pub const PR_SET_TSC: u32 = 26; +pub const PR_TSC_ENABLE: u32 = 1; +pub const PR_TSC_SIGSEGV: u32 = 2; +pub const PR_GET_SECUREBITS: u32 = 27; +pub const PR_SET_SECUREBITS: u32 = 28; +pub const PR_SET_TIMERSLACK: u32 = 29; +pub const PR_GET_TIMERSLACK: u32 = 30; +pub const PR_TASK_PERF_EVENTS_DISABLE: u32 = 31; +pub const PR_TASK_PERF_EVENTS_ENABLE: u32 = 32; +pub const PR_MCE_KILL: u32 = 33; +pub const PR_MCE_KILL_CLEAR: u32 = 0; +pub const PR_MCE_KILL_SET: u32 = 1; +pub const PR_MCE_KILL_LATE: u32 = 0; +pub const PR_MCE_KILL_EARLY: u32 = 1; +pub const PR_MCE_KILL_DEFAULT: u32 = 2; +pub const PR_MCE_KILL_GET: u32 = 34; +pub const PR_SET_MM: u32 = 35; +pub const PR_SET_MM_START_CODE: u32 = 1; +pub const PR_SET_MM_END_CODE: u32 = 2; +pub const PR_SET_MM_START_DATA: u32 = 3; +pub const PR_SET_MM_END_DATA: u32 = 4; +pub const PR_SET_MM_START_STACK: u32 = 5; +pub const PR_SET_MM_START_BRK: u32 = 6; +pub const PR_SET_MM_BRK: u32 = 7; +pub const PR_SET_MM_ARG_START: u32 = 8; +pub const PR_SET_MM_ARG_END: u32 = 9; +pub const PR_SET_MM_ENV_START: u32 = 10; +pub const PR_SET_MM_ENV_END: u32 = 11; +pub const PR_SET_MM_AUXV: u32 = 12; +pub const PR_SET_MM_EXE_FILE: u32 = 13; +pub const PR_SET_MM_MAP: u32 = 14; +pub const PR_SET_MM_MAP_SIZE: u32 = 15; +pub const PR_SET_PTRACER: u32 = 1499557217; +pub const PR_SET_CHILD_SUBREAPER: u32 = 36; +pub const PR_GET_CHILD_SUBREAPER: u32 = 37; +pub const PR_SET_NO_NEW_PRIVS: u32 = 38; +pub const PR_GET_NO_NEW_PRIVS: u32 = 39; +pub const PR_GET_TID_ADDRESS: u32 = 40; +pub const PR_SET_THP_DISABLE: u32 = 41; +pub const PR_GET_THP_DISABLE: u32 = 42; +pub const PR_MPX_ENABLE_MANAGEMENT: u32 = 43; +pub const PR_MPX_DISABLE_MANAGEMENT: u32 = 44; +pub const PR_SET_FP_MODE: u32 = 45; +pub const PR_GET_FP_MODE: u32 = 46; +pub const PR_FP_MODE_FR: u32 = 1; +pub const PR_FP_MODE_FRE: u32 = 2; +pub const PR_CAP_AMBIENT: u32 = 47; +pub const PR_CAP_AMBIENT_IS_SET: u32 = 1; +pub const PR_CAP_AMBIENT_RAISE: u32 = 2; +pub const PR_CAP_AMBIENT_LOWER: u32 = 3; +pub const PR_CAP_AMBIENT_CLEAR_ALL: u32 = 4; +pub const PR_SVE_SET_VL: u32 = 50; +pub const PR_SVE_SET_VL_ONEXEC: u32 = 262144; +pub const PR_SVE_GET_VL: u32 = 51; +pub const PR_SVE_VL_LEN_MASK: u32 = 65535; +pub const PR_SVE_VL_INHERIT: u32 = 131072; +pub const PR_GET_SPECULATION_CTRL: u32 = 52; +pub const PR_SET_SPECULATION_CTRL: u32 = 53; +pub const PR_SPEC_STORE_BYPASS: u32 = 0; +pub const PR_SPEC_INDIRECT_BRANCH: u32 = 1; +pub const PR_SPEC_L1D_FLUSH: u32 = 2; +pub const PR_SPEC_NOT_AFFECTED: u32 = 0; +pub const PR_SPEC_PRCTL: u32 = 1; +pub const PR_SPEC_ENABLE: u32 = 2; +pub const PR_SPEC_DISABLE: u32 = 4; +pub const PR_SPEC_FORCE_DISABLE: u32 = 8; +pub const PR_SPEC_DISABLE_NOEXEC: u32 = 16; +pub const PR_PAC_RESET_KEYS: u32 = 54; +pub const PR_PAC_APIAKEY: u32 = 1; +pub const PR_PAC_APIBKEY: u32 = 2; +pub const PR_PAC_APDAKEY: u32 = 4; +pub const PR_PAC_APDBKEY: u32 = 8; +pub const PR_PAC_APGAKEY: u32 = 16; +pub const PR_SET_TAGGED_ADDR_CTRL: u32 = 55; +pub const PR_GET_TAGGED_ADDR_CTRL: u32 = 56; +pub const PR_TAGGED_ADDR_ENABLE: u32 = 1; +pub const PR_MTE_TCF_NONE: u32 = 0; +pub const PR_MTE_TCF_SYNC: u32 = 2; +pub const PR_MTE_TCF_ASYNC: u32 = 4; +pub const PR_MTE_TCF_MASK: u32 = 6; +pub const PR_MTE_TAG_SHIFT: u32 = 3; +pub const PR_MTE_TAG_MASK: u32 = 524280; +pub const PR_MTE_TCF_SHIFT: u32 = 1; +pub const PR_MTE_STORE_ONLY: u32 = 524288; +pub const PR_PMLEN_SHIFT: u32 = 24; +pub const PR_PMLEN_MASK: u32 = 2130706432; +pub const PR_SET_IO_FLUSHER: u32 = 57; +pub const PR_GET_IO_FLUSHER: u32 = 58; +pub const PR_SET_SYSCALL_USER_DISPATCH: u32 = 59; +pub const PR_SYS_DISPATCH_OFF: u32 = 0; +pub const PR_SYS_DISPATCH_EXCLUSIVE_ON: u32 = 1; +pub const PR_SYS_DISPATCH_INCLUSIVE_ON: u32 = 2; +pub const PR_SYS_DISPATCH_ON: u32 = 1; +pub const SYSCALL_DISPATCH_FILTER_ALLOW: u32 = 0; +pub const SYSCALL_DISPATCH_FILTER_BLOCK: u32 = 1; +pub const PR_PAC_SET_ENABLED_KEYS: u32 = 60; +pub const PR_PAC_GET_ENABLED_KEYS: u32 = 61; +pub const PR_SCHED_CORE: u32 = 62; +pub const PR_SCHED_CORE_GET: u32 = 0; +pub const PR_SCHED_CORE_CREATE: u32 = 1; +pub const PR_SCHED_CORE_SHARE_TO: u32 = 2; +pub const PR_SCHED_CORE_SHARE_FROM: u32 = 3; +pub const PR_SCHED_CORE_MAX: u32 = 4; +pub const PR_SCHED_CORE_SCOPE_THREAD: u32 = 0; +pub const PR_SCHED_CORE_SCOPE_THREAD_GROUP: u32 = 1; +pub const PR_SCHED_CORE_SCOPE_PROCESS_GROUP: u32 = 2; +pub const PR_SME_SET_VL: u32 = 63; +pub const PR_SME_SET_VL_ONEXEC: u32 = 262144; +pub const PR_SME_GET_VL: u32 = 64; +pub const PR_SME_VL_LEN_MASK: u32 = 65535; +pub const PR_SME_VL_INHERIT: u32 = 131072; +pub const PR_SET_MDWE: u32 = 65; +pub const PR_MDWE_REFUSE_EXEC_GAIN: u32 = 1; +pub const PR_MDWE_NO_INHERIT: u32 = 2; +pub const PR_GET_MDWE: u32 = 66; +pub const PR_SET_VMA: u32 = 1398164801; +pub const PR_SET_VMA_ANON_NAME: u32 = 0; +pub const PR_GET_AUXV: u32 = 1096112214; +pub const PR_SET_MEMORY_MERGE: u32 = 67; +pub const PR_GET_MEMORY_MERGE: u32 = 68; +pub const PR_RISCV_V_SET_CONTROL: u32 = 69; +pub const PR_RISCV_V_GET_CONTROL: u32 = 70; +pub const PR_RISCV_V_VSTATE_CTRL_DEFAULT: u32 = 0; +pub const PR_RISCV_V_VSTATE_CTRL_OFF: u32 = 1; +pub const PR_RISCV_V_VSTATE_CTRL_ON: u32 = 2; +pub const PR_RISCV_V_VSTATE_CTRL_INHERIT: u32 = 16; +pub const PR_RISCV_V_VSTATE_CTRL_CUR_MASK: u32 = 3; +pub const PR_RISCV_V_VSTATE_CTRL_NEXT_MASK: u32 = 12; +pub const PR_RISCV_V_VSTATE_CTRL_MASK: u32 = 31; +pub const PR_RISCV_SET_ICACHE_FLUSH_CTX: u32 = 71; +pub const PR_RISCV_CTX_SW_FENCEI_ON: u32 = 0; +pub const PR_RISCV_CTX_SW_FENCEI_OFF: u32 = 1; +pub const PR_RISCV_SCOPE_PER_PROCESS: u32 = 0; +pub const PR_RISCV_SCOPE_PER_THREAD: u32 = 1; +pub const PR_PPC_GET_DEXCR: u32 = 72; +pub const PR_PPC_SET_DEXCR: u32 = 73; +pub const PR_PPC_DEXCR_SBHE: u32 = 0; +pub const PR_PPC_DEXCR_IBRTPD: u32 = 1; +pub const PR_PPC_DEXCR_SRAPD: u32 = 2; +pub const PR_PPC_DEXCR_NPHIE: u32 = 3; +pub const PR_PPC_DEXCR_CTRL_EDITABLE: u32 = 1; +pub const PR_PPC_DEXCR_CTRL_SET: u32 = 2; +pub const PR_PPC_DEXCR_CTRL_CLEAR: u32 = 4; +pub const PR_PPC_DEXCR_CTRL_SET_ONEXEC: u32 = 8; +pub const PR_PPC_DEXCR_CTRL_CLEAR_ONEXEC: u32 = 16; +pub const PR_PPC_DEXCR_CTRL_MASK: u32 = 31; +pub const PR_GET_SHADOW_STACK_STATUS: u32 = 74; +pub const PR_SET_SHADOW_STACK_STATUS: u32 = 75; +pub const PR_SHADOW_STACK_ENABLE: u32 = 1; +pub const PR_SHADOW_STACK_WRITE: u32 = 2; +pub const PR_SHADOW_STACK_PUSH: u32 = 4; +pub const PR_LOCK_SHADOW_STACK_STATUS: u32 = 76; +pub const PR_TIMER_CREATE_RESTORE_IDS: u32 = 77; +pub const PR_TIMER_CREATE_RESTORE_IDS_OFF: u32 = 0; +pub const PR_TIMER_CREATE_RESTORE_IDS_ON: u32 = 1; +pub const PR_TIMER_CREATE_RESTORE_IDS_GET: u32 = 2; +pub const PR_FUTEX_HASH: u32 = 78; +pub const PR_FUTEX_HASH_SET_SLOTS: u32 = 1; +pub const PR_FUTEX_HASH_GET_SLOTS: u32 = 2; diff --git a/src/hexagon/ptrace.rs b/src/hexagon/ptrace.rs new file mode 100644 index 00000000..332870f0 --- /dev/null +++ b/src/hexagon/ptrace.rs @@ -0,0 +1,1091 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +#[repr(C)] +#[derive(Default)] +pub struct __IncompleteArrayField(::core::marker::PhantomData, [T; 0]); +#[repr(C)] +#[derive(Copy, Clone)] +pub struct audit_status { +pub mask: __u32, +pub enabled: __u32, +pub failure: __u32, +pub pid: __u32, +pub rate_limit: __u32, +pub backlog_limit: __u32, +pub lost: __u32, +pub backlog: __u32, +pub __bindgen_anon_1: audit_status__bindgen_ty_1, +pub backlog_wait_time: __u32, +pub backlog_wait_time_actual: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct audit_features { +pub vers: __u32, +pub mask: __u32, +pub features: __u32, +pub lock: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct audit_tty_status { +pub enabled: __u32, +pub log_passwd: __u32, +} +#[repr(C)] +#[derive(Debug)] +pub struct audit_rule_data { +pub flags: __u32, +pub action: __u32, +pub field_count: __u32, +pub mask: [__u32; 64usize], +pub fields: [__u32; 64usize], +pub values: [__u32; 64usize], +pub fieldflags: [__u32; 64usize], +pub buflen: __u32, +pub buf: __IncompleteArrayField, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sock_filter { +pub code: __u16, +pub jt: __u8, +pub jf: __u8, +pub k: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sock_fprog { +pub len: crate::ctypes::c_ushort, +pub filter: *mut sock_filter, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ptrace_peeksiginfo_args { +pub off: __u64, +pub flags: __u32, +pub nr: __s32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct seccomp_metadata { +pub filter_off: __u64, +pub flags: __u64, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct ptrace_syscall_info { +pub op: __u8, +pub reserved: __u8, +pub flags: __u16, +pub arch: __u32, +pub instruction_pointer: __u64, +pub stack_pointer: __u64, +pub __bindgen_anon_1: ptrace_syscall_info__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ptrace_syscall_info__bindgen_ty_1__bindgen_ty_1 { +pub nr: __u64, +pub args: [__u64; 6usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ptrace_syscall_info__bindgen_ty_1__bindgen_ty_2 { +pub rval: __s64, +pub is_error: __u8, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ptrace_syscall_info__bindgen_ty_1__bindgen_ty_3 { +pub nr: __u64, +pub args: [__u64; 6usize], +pub ret_data: __u32, +pub reserved2: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ptrace_rseq_configuration { +pub rseq_abi_pointer: __u64, +pub rseq_abi_size: __u32, +pub signature: __u32, +pub flags: __u32, +pub pad: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct ptrace_sud_config { +pub mode: __u64, +pub selector: __u64, +pub offset: __u64, +pub len: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct hvm_event_record { +pub vmel: crate::ctypes::c_ulong, +pub vmest: crate::ctypes::c_ulong, +pub vmpsp: crate::ctypes::c_ulong, +pub vmbadva: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct pt_regs { +pub restart_r0: crate::ctypes::c_long, +pub syscall_nr: crate::ctypes::c_long, +pub __bindgen_anon_1: pt_regs__bindgen_ty_1, +pub __bindgen_anon_2: pt_regs__bindgen_ty_2, +pub __bindgen_anon_3: pt_regs__bindgen_ty_3, +pub __bindgen_anon_4: pt_regs__bindgen_ty_4, +pub __bindgen_anon_5: pt_regs__bindgen_ty_5, +pub __bindgen_anon_6: pt_regs__bindgen_ty_6, +pub __bindgen_anon_7: pt_regs__bindgen_ty_7, +pub __bindgen_anon_8: pt_regs__bindgen_ty_8, +pub __bindgen_anon_9: pt_regs__bindgen_ty_9, +pub __bindgen_anon_10: pt_regs__bindgen_ty_10, +pub __bindgen_anon_11: pt_regs__bindgen_ty_11, +pub __bindgen_anon_12: pt_regs__bindgen_ty_12, +pub __bindgen_anon_13: pt_regs__bindgen_ty_13, +pub __bindgen_anon_14: pt_regs__bindgen_ty_14, +pub __bindgen_anon_15: pt_regs__bindgen_ty_15, +pub __bindgen_anon_16: pt_regs__bindgen_ty_16, +pub __bindgen_anon_17: pt_regs__bindgen_ty_17, +pub __bindgen_anon_18: pt_regs__bindgen_ty_18, +pub __bindgen_anon_19: pt_regs__bindgen_ty_19, +pub __bindgen_anon_20: pt_regs__bindgen_ty_20, +pub __bindgen_anon_21: pt_regs__bindgen_ty_21, +pub __bindgen_anon_22: pt_regs__bindgen_ty_22, +pub hvmer: hvm_event_record, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_1__bindgen_ty_1 { +pub usr: crate::ctypes::c_ulong, +pub preds: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_2__bindgen_ty_1 { +pub m0: crate::ctypes::c_ulong, +pub m1: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_3__bindgen_ty_1 { +pub sa1: crate::ctypes::c_ulong, +pub lc1: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_4__bindgen_ty_1 { +pub sa0: crate::ctypes::c_ulong, +pub lc0: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_5__bindgen_ty_1 { +pub ugp: crate::ctypes::c_ulong, +pub gp: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_6__bindgen_ty_1 { +pub cs0: crate::ctypes::c_ulong, +pub cs1: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_7__bindgen_ty_1 { +pub r00: crate::ctypes::c_ulong, +pub r01: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_8__bindgen_ty_1 { +pub r02: crate::ctypes::c_ulong, +pub r03: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_9__bindgen_ty_1 { +pub r04: crate::ctypes::c_ulong, +pub r05: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_10__bindgen_ty_1 { +pub r06: crate::ctypes::c_ulong, +pub r07: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_11__bindgen_ty_1 { +pub r08: crate::ctypes::c_ulong, +pub r09: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_12__bindgen_ty_1 { +pub r10: crate::ctypes::c_ulong, +pub r11: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_13__bindgen_ty_1 { +pub r12: crate::ctypes::c_ulong, +pub r13: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_14__bindgen_ty_1 { +pub r14: crate::ctypes::c_ulong, +pub r15: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_15__bindgen_ty_1 { +pub r16: crate::ctypes::c_ulong, +pub r17: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_16__bindgen_ty_1 { +pub r18: crate::ctypes::c_ulong, +pub r19: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_17__bindgen_ty_1 { +pub r20: crate::ctypes::c_ulong, +pub r21: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_18__bindgen_ty_1 { +pub r22: crate::ctypes::c_ulong, +pub r23: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_19__bindgen_ty_1 { +pub r24: crate::ctypes::c_ulong, +pub r25: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_20__bindgen_ty_1 { +pub r26: crate::ctypes::c_ulong, +pub r27: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_21__bindgen_ty_1 { +pub r28: crate::ctypes::c_ulong, +pub r29: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct pt_regs__bindgen_ty_22__bindgen_ty_1 { +pub r30: crate::ctypes::c_ulong, +pub r31: crate::ctypes::c_ulong, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct seccomp_data { +pub nr: crate::ctypes::c_int, +pub arch: __u32, +pub instruction_pointer: __u64, +pub args: [__u64; 6usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct seccomp_notif_sizes { +pub seccomp_notif: __u16, +pub seccomp_notif_resp: __u16, +pub seccomp_data: __u16, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct seccomp_notif { +pub id: __u64, +pub pid: __u32, +pub flags: __u32, +pub data: seccomp_data, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct seccomp_notif_resp { +pub id: __u64, +pub val: __s64, +pub error: __s32, +pub flags: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct seccomp_notif_addfd { +pub id: __u64, +pub flags: __u32, +pub srcfd: __u32, +pub newfd: __u32, +pub newfd_flags: __u32, +} +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const EM_NONE: u32 = 0; +pub const EM_M32: u32 = 1; +pub const EM_SPARC: u32 = 2; +pub const EM_386: u32 = 3; +pub const EM_68K: u32 = 4; +pub const EM_88K: u32 = 5; +pub const EM_486: u32 = 6; +pub const EM_860: u32 = 7; +pub const EM_MIPS: u32 = 8; +pub const EM_MIPS_RS3_LE: u32 = 10; +pub const EM_MIPS_RS4_BE: u32 = 10; +pub const EM_PARISC: u32 = 15; +pub const EM_SPARC32PLUS: u32 = 18; +pub const EM_PPC: u32 = 20; +pub const EM_PPC64: u32 = 21; +pub const EM_SPU: u32 = 23; +pub const EM_ARM: u32 = 40; +pub const EM_SH: u32 = 42; +pub const EM_SPARCV9: u32 = 43; +pub const EM_H8_300: u32 = 46; +pub const EM_IA_64: u32 = 50; +pub const EM_X86_64: u32 = 62; +pub const EM_S390: u32 = 22; +pub const EM_CRIS: u32 = 76; +pub const EM_M32R: u32 = 88; +pub const EM_MN10300: u32 = 89; +pub const EM_OPENRISC: u32 = 92; +pub const EM_ARCOMPACT: u32 = 93; +pub const EM_XTENSA: u32 = 94; +pub const EM_BLACKFIN: u32 = 106; +pub const EM_UNICORE: u32 = 110; +pub const EM_ALTERA_NIOS2: u32 = 113; +pub const EM_TI_C6000: u32 = 140; +pub const EM_HEXAGON: u32 = 164; +pub const EM_NDS32: u32 = 167; +pub const EM_AARCH64: u32 = 183; +pub const EM_TILEPRO: u32 = 188; +pub const EM_MICROBLAZE: u32 = 189; +pub const EM_TILEGX: u32 = 191; +pub const EM_ARCV2: u32 = 195; +pub const EM_RISCV: u32 = 243; +pub const EM_BPF: u32 = 247; +pub const EM_CSKY: u32 = 252; +pub const EM_LOONGARCH: u32 = 258; +pub const EM_FRV: u32 = 21569; +pub const EM_ALPHA: u32 = 36902; +pub const EM_CYGNUS_M32R: u32 = 36929; +pub const EM_S390_OLD: u32 = 41872; +pub const EM_CYGNUS_MN10300: u32 = 48879; +pub const AUDIT_GET: u32 = 1000; +pub const AUDIT_SET: u32 = 1001; +pub const AUDIT_LIST: u32 = 1002; +pub const AUDIT_ADD: u32 = 1003; +pub const AUDIT_DEL: u32 = 1004; +pub const AUDIT_USER: u32 = 1005; +pub const AUDIT_LOGIN: u32 = 1006; +pub const AUDIT_WATCH_INS: u32 = 1007; +pub const AUDIT_WATCH_REM: u32 = 1008; +pub const AUDIT_WATCH_LIST: u32 = 1009; +pub const AUDIT_SIGNAL_INFO: u32 = 1010; +pub const AUDIT_ADD_RULE: u32 = 1011; +pub const AUDIT_DEL_RULE: u32 = 1012; +pub const AUDIT_LIST_RULES: u32 = 1013; +pub const AUDIT_TRIM: u32 = 1014; +pub const AUDIT_MAKE_EQUIV: u32 = 1015; +pub const AUDIT_TTY_GET: u32 = 1016; +pub const AUDIT_TTY_SET: u32 = 1017; +pub const AUDIT_SET_FEATURE: u32 = 1018; +pub const AUDIT_GET_FEATURE: u32 = 1019; +pub const AUDIT_FIRST_USER_MSG: u32 = 1100; +pub const AUDIT_USER_AVC: u32 = 1107; +pub const AUDIT_USER_TTY: u32 = 1124; +pub const AUDIT_LAST_USER_MSG: u32 = 1199; +pub const AUDIT_FIRST_USER_MSG2: u32 = 2100; +pub const AUDIT_LAST_USER_MSG2: u32 = 2999; +pub const AUDIT_DAEMON_START: u32 = 1200; +pub const AUDIT_DAEMON_END: u32 = 1201; +pub const AUDIT_DAEMON_ABORT: u32 = 1202; +pub const AUDIT_DAEMON_CONFIG: u32 = 1203; +pub const AUDIT_SYSCALL: u32 = 1300; +pub const AUDIT_PATH: u32 = 1302; +pub const AUDIT_IPC: u32 = 1303; +pub const AUDIT_SOCKETCALL: u32 = 1304; +pub const AUDIT_CONFIG_CHANGE: u32 = 1305; +pub const AUDIT_SOCKADDR: u32 = 1306; +pub const AUDIT_CWD: u32 = 1307; +pub const AUDIT_EXECVE: u32 = 1309; +pub const AUDIT_IPC_SET_PERM: u32 = 1311; +pub const AUDIT_MQ_OPEN: u32 = 1312; +pub const AUDIT_MQ_SENDRECV: u32 = 1313; +pub const AUDIT_MQ_NOTIFY: u32 = 1314; +pub const AUDIT_MQ_GETSETATTR: u32 = 1315; +pub const AUDIT_KERNEL_OTHER: u32 = 1316; +pub const AUDIT_FD_PAIR: u32 = 1317; +pub const AUDIT_OBJ_PID: u32 = 1318; +pub const AUDIT_TTY: u32 = 1319; +pub const AUDIT_EOE: u32 = 1320; +pub const AUDIT_BPRM_FCAPS: u32 = 1321; +pub const AUDIT_CAPSET: u32 = 1322; +pub const AUDIT_MMAP: u32 = 1323; +pub const AUDIT_NETFILTER_PKT: u32 = 1324; +pub const AUDIT_NETFILTER_CFG: u32 = 1325; +pub const AUDIT_SECCOMP: u32 = 1326; +pub const AUDIT_PROCTITLE: u32 = 1327; +pub const AUDIT_FEATURE_CHANGE: u32 = 1328; +pub const AUDIT_REPLACE: u32 = 1329; +pub const AUDIT_KERN_MODULE: u32 = 1330; +pub const AUDIT_FANOTIFY: u32 = 1331; +pub const AUDIT_TIME_INJOFFSET: u32 = 1332; +pub const AUDIT_TIME_ADJNTPVAL: u32 = 1333; +pub const AUDIT_BPF: u32 = 1334; +pub const AUDIT_EVENT_LISTENER: u32 = 1335; +pub const AUDIT_URINGOP: u32 = 1336; +pub const AUDIT_OPENAT2: u32 = 1337; +pub const AUDIT_DM_CTRL: u32 = 1338; +pub const AUDIT_DM_EVENT: u32 = 1339; +pub const AUDIT_AVC: u32 = 1400; +pub const AUDIT_SELINUX_ERR: u32 = 1401; +pub const AUDIT_AVC_PATH: u32 = 1402; +pub const AUDIT_MAC_POLICY_LOAD: u32 = 1403; +pub const AUDIT_MAC_STATUS: u32 = 1404; +pub const AUDIT_MAC_CONFIG_CHANGE: u32 = 1405; +pub const AUDIT_MAC_UNLBL_ALLOW: u32 = 1406; +pub const AUDIT_MAC_CIPSOV4_ADD: u32 = 1407; +pub const AUDIT_MAC_CIPSOV4_DEL: u32 = 1408; +pub const AUDIT_MAC_MAP_ADD: u32 = 1409; +pub const AUDIT_MAC_MAP_DEL: u32 = 1410; +pub const AUDIT_MAC_IPSEC_ADDSA: u32 = 1411; +pub const AUDIT_MAC_IPSEC_DELSA: u32 = 1412; +pub const AUDIT_MAC_IPSEC_ADDSPD: u32 = 1413; +pub const AUDIT_MAC_IPSEC_DELSPD: u32 = 1414; +pub const AUDIT_MAC_IPSEC_EVENT: u32 = 1415; +pub const AUDIT_MAC_UNLBL_STCADD: u32 = 1416; +pub const AUDIT_MAC_UNLBL_STCDEL: u32 = 1417; +pub const AUDIT_MAC_CALIPSO_ADD: u32 = 1418; +pub const AUDIT_MAC_CALIPSO_DEL: u32 = 1419; +pub const AUDIT_IPE_ACCESS: u32 = 1420; +pub const AUDIT_IPE_CONFIG_CHANGE: u32 = 1421; +pub const AUDIT_IPE_POLICY_LOAD: u32 = 1422; +pub const AUDIT_LANDLOCK_ACCESS: u32 = 1423; +pub const AUDIT_LANDLOCK_DOMAIN: u32 = 1424; +pub const AUDIT_FIRST_KERN_ANOM_MSG: u32 = 1700; +pub const AUDIT_LAST_KERN_ANOM_MSG: u32 = 1799; +pub const AUDIT_ANOM_PROMISCUOUS: u32 = 1700; +pub const AUDIT_ANOM_ABEND: u32 = 1701; +pub const AUDIT_ANOM_LINK: u32 = 1702; +pub const AUDIT_ANOM_CREAT: u32 = 1703; +pub const AUDIT_INTEGRITY_DATA: u32 = 1800; +pub const AUDIT_INTEGRITY_METADATA: u32 = 1801; +pub const AUDIT_INTEGRITY_STATUS: u32 = 1802; +pub const AUDIT_INTEGRITY_HASH: u32 = 1803; +pub const AUDIT_INTEGRITY_PCR: u32 = 1804; +pub const AUDIT_INTEGRITY_RULE: u32 = 1805; +pub const AUDIT_INTEGRITY_EVM_XATTR: u32 = 1806; +pub const AUDIT_INTEGRITY_POLICY_RULE: u32 = 1807; +pub const AUDIT_INTEGRITY_USERSPACE: u32 = 1808; +pub const AUDIT_KERNEL: u32 = 2000; +pub const AUDIT_FILTER_USER: u32 = 0; +pub const AUDIT_FILTER_TASK: u32 = 1; +pub const AUDIT_FILTER_ENTRY: u32 = 2; +pub const AUDIT_FILTER_WATCH: u32 = 3; +pub const AUDIT_FILTER_EXIT: u32 = 4; +pub const AUDIT_FILTER_EXCLUDE: u32 = 5; +pub const AUDIT_FILTER_TYPE: u32 = 5; +pub const AUDIT_FILTER_FS: u32 = 6; +pub const AUDIT_FILTER_URING_EXIT: u32 = 7; +pub const AUDIT_NR_FILTERS: u32 = 8; +pub const AUDIT_FILTER_PREPEND: u32 = 16; +pub const AUDIT_NEVER: u32 = 0; +pub const AUDIT_POSSIBLE: u32 = 1; +pub const AUDIT_ALWAYS: u32 = 2; +pub const AUDIT_MAX_FIELDS: u32 = 64; +pub const AUDIT_MAX_KEY_LEN: u32 = 256; +pub const AUDIT_BITMASK_SIZE: u32 = 64; +pub const AUDIT_SYSCALL_CLASSES: u32 = 16; +pub const AUDIT_CLASS_DIR_WRITE: u32 = 0; +pub const AUDIT_CLASS_DIR_WRITE_32: u32 = 1; +pub const AUDIT_CLASS_CHATTR: u32 = 2; +pub const AUDIT_CLASS_CHATTR_32: u32 = 3; +pub const AUDIT_CLASS_READ: u32 = 4; +pub const AUDIT_CLASS_READ_32: u32 = 5; +pub const AUDIT_CLASS_WRITE: u32 = 6; +pub const AUDIT_CLASS_WRITE_32: u32 = 7; +pub const AUDIT_CLASS_SIGNAL: u32 = 8; +pub const AUDIT_CLASS_SIGNAL_32: u32 = 9; +pub const AUDIT_UNUSED_BITS: u32 = 134216704; +pub const AUDIT_COMPARE_UID_TO_OBJ_UID: u32 = 1; +pub const AUDIT_COMPARE_GID_TO_OBJ_GID: u32 = 2; +pub const AUDIT_COMPARE_EUID_TO_OBJ_UID: u32 = 3; +pub const AUDIT_COMPARE_EGID_TO_OBJ_GID: u32 = 4; +pub const AUDIT_COMPARE_AUID_TO_OBJ_UID: u32 = 5; +pub const AUDIT_COMPARE_SUID_TO_OBJ_UID: u32 = 6; +pub const AUDIT_COMPARE_SGID_TO_OBJ_GID: u32 = 7; +pub const AUDIT_COMPARE_FSUID_TO_OBJ_UID: u32 = 8; +pub const AUDIT_COMPARE_FSGID_TO_OBJ_GID: u32 = 9; +pub const AUDIT_COMPARE_UID_TO_AUID: u32 = 10; +pub const AUDIT_COMPARE_UID_TO_EUID: u32 = 11; +pub const AUDIT_COMPARE_UID_TO_FSUID: u32 = 12; +pub const AUDIT_COMPARE_UID_TO_SUID: u32 = 13; +pub const AUDIT_COMPARE_AUID_TO_FSUID: u32 = 14; +pub const AUDIT_COMPARE_AUID_TO_SUID: u32 = 15; +pub const AUDIT_COMPARE_AUID_TO_EUID: u32 = 16; +pub const AUDIT_COMPARE_EUID_TO_SUID: u32 = 17; +pub const AUDIT_COMPARE_EUID_TO_FSUID: u32 = 18; +pub const AUDIT_COMPARE_SUID_TO_FSUID: u32 = 19; +pub const AUDIT_COMPARE_GID_TO_EGID: u32 = 20; +pub const AUDIT_COMPARE_GID_TO_FSGID: u32 = 21; +pub const AUDIT_COMPARE_GID_TO_SGID: u32 = 22; +pub const AUDIT_COMPARE_EGID_TO_FSGID: u32 = 23; +pub const AUDIT_COMPARE_EGID_TO_SGID: u32 = 24; +pub const AUDIT_COMPARE_SGID_TO_FSGID: u32 = 25; +pub const AUDIT_MAX_FIELD_COMPARE: u32 = 25; +pub const AUDIT_PID: u32 = 0; +pub const AUDIT_UID: u32 = 1; +pub const AUDIT_EUID: u32 = 2; +pub const AUDIT_SUID: u32 = 3; +pub const AUDIT_FSUID: u32 = 4; +pub const AUDIT_GID: u32 = 5; +pub const AUDIT_EGID: u32 = 6; +pub const AUDIT_SGID: u32 = 7; +pub const AUDIT_FSGID: u32 = 8; +pub const AUDIT_LOGINUID: u32 = 9; +pub const AUDIT_PERS: u32 = 10; +pub const AUDIT_ARCH: u32 = 11; +pub const AUDIT_MSGTYPE: u32 = 12; +pub const AUDIT_SUBJ_USER: u32 = 13; +pub const AUDIT_SUBJ_ROLE: u32 = 14; +pub const AUDIT_SUBJ_TYPE: u32 = 15; +pub const AUDIT_SUBJ_SEN: u32 = 16; +pub const AUDIT_SUBJ_CLR: u32 = 17; +pub const AUDIT_PPID: u32 = 18; +pub const AUDIT_OBJ_USER: u32 = 19; +pub const AUDIT_OBJ_ROLE: u32 = 20; +pub const AUDIT_OBJ_TYPE: u32 = 21; +pub const AUDIT_OBJ_LEV_LOW: u32 = 22; +pub const AUDIT_OBJ_LEV_HIGH: u32 = 23; +pub const AUDIT_LOGINUID_SET: u32 = 24; +pub const AUDIT_SESSIONID: u32 = 25; +pub const AUDIT_FSTYPE: u32 = 26; +pub const AUDIT_DEVMAJOR: u32 = 100; +pub const AUDIT_DEVMINOR: u32 = 101; +pub const AUDIT_INODE: u32 = 102; +pub const AUDIT_EXIT: u32 = 103; +pub const AUDIT_SUCCESS: u32 = 104; +pub const AUDIT_WATCH: u32 = 105; +pub const AUDIT_PERM: u32 = 106; +pub const AUDIT_DIR: u32 = 107; +pub const AUDIT_FILETYPE: u32 = 108; +pub const AUDIT_OBJ_UID: u32 = 109; +pub const AUDIT_OBJ_GID: u32 = 110; +pub const AUDIT_FIELD_COMPARE: u32 = 111; +pub const AUDIT_EXE: u32 = 112; +pub const AUDIT_SADDR_FAM: u32 = 113; +pub const AUDIT_ARG0: u32 = 200; +pub const AUDIT_ARG1: u32 = 201; +pub const AUDIT_ARG2: u32 = 202; +pub const AUDIT_ARG3: u32 = 203; +pub const AUDIT_FILTERKEY: u32 = 210; +pub const AUDIT_NEGATE: u32 = 2147483648; +pub const AUDIT_BIT_MASK: u32 = 134217728; +pub const AUDIT_LESS_THAN: u32 = 268435456; +pub const AUDIT_GREATER_THAN: u32 = 536870912; +pub const AUDIT_NOT_EQUAL: u32 = 805306368; +pub const AUDIT_EQUAL: u32 = 1073741824; +pub const AUDIT_BIT_TEST: u32 = 1207959552; +pub const AUDIT_LESS_THAN_OR_EQUAL: u32 = 1342177280; +pub const AUDIT_GREATER_THAN_OR_EQUAL: u32 = 1610612736; +pub const AUDIT_OPERATORS: u32 = 2013265920; +pub const AUDIT_STATUS_ENABLED: u32 = 1; +pub const AUDIT_STATUS_FAILURE: u32 = 2; +pub const AUDIT_STATUS_PID: u32 = 4; +pub const AUDIT_STATUS_RATE_LIMIT: u32 = 8; +pub const AUDIT_STATUS_BACKLOG_LIMIT: u32 = 16; +pub const AUDIT_STATUS_BACKLOG_WAIT_TIME: u32 = 32; +pub const AUDIT_STATUS_LOST: u32 = 64; +pub const AUDIT_STATUS_BACKLOG_WAIT_TIME_ACTUAL: u32 = 128; +pub const AUDIT_FEATURE_BITMAP_BACKLOG_LIMIT: u32 = 1; +pub const AUDIT_FEATURE_BITMAP_BACKLOG_WAIT_TIME: u32 = 2; +pub const AUDIT_FEATURE_BITMAP_EXECUTABLE_PATH: u32 = 4; +pub const AUDIT_FEATURE_BITMAP_EXCLUDE_EXTEND: u32 = 8; +pub const AUDIT_FEATURE_BITMAP_SESSIONID_FILTER: u32 = 16; +pub const AUDIT_FEATURE_BITMAP_LOST_RESET: u32 = 32; +pub const AUDIT_FEATURE_BITMAP_FILTER_FS: u32 = 64; +pub const AUDIT_FEATURE_BITMAP_ALL: u32 = 127; +pub const AUDIT_VERSION_LATEST: u32 = 127; +pub const AUDIT_VERSION_BACKLOG_LIMIT: u32 = 1; +pub const AUDIT_VERSION_BACKLOG_WAIT_TIME: u32 = 2; +pub const AUDIT_FAIL_SILENT: u32 = 0; +pub const AUDIT_FAIL_PRINTK: u32 = 1; +pub const AUDIT_FAIL_PANIC: u32 = 2; +pub const __AUDIT_ARCH_CONVENTION_MASK: u32 = 805306368; +pub const __AUDIT_ARCH_CONVENTION_MIPS64_N32: u32 = 536870912; +pub const __AUDIT_ARCH_64BIT: u32 = 2147483648; +pub const __AUDIT_ARCH_LE: u32 = 1073741824; +pub const AUDIT_ARCH_AARCH64: u32 = 3221225655; +pub const AUDIT_ARCH_ALPHA: u32 = 3221262374; +pub const AUDIT_ARCH_ARCOMPACT: u32 = 1073741917; +pub const AUDIT_ARCH_ARCOMPACTBE: u32 = 93; +pub const AUDIT_ARCH_ARCV2: u32 = 1073742019; +pub const AUDIT_ARCH_ARCV2BE: u32 = 195; +pub const AUDIT_ARCH_ARM: u32 = 1073741864; +pub const AUDIT_ARCH_ARMEB: u32 = 40; +pub const AUDIT_ARCH_C6X: u32 = 1073741964; +pub const AUDIT_ARCH_C6XBE: u32 = 140; +pub const AUDIT_ARCH_CRIS: u32 = 1073741900; +pub const AUDIT_ARCH_CSKY: u32 = 1073742076; +pub const AUDIT_ARCH_FRV: u32 = 21569; +pub const AUDIT_ARCH_H8300: u32 = 46; +pub const AUDIT_ARCH_HEXAGON: u32 = 164; +pub const AUDIT_ARCH_I386: u32 = 1073741827; +pub const AUDIT_ARCH_IA64: u32 = 3221225522; +pub const AUDIT_ARCH_M32R: u32 = 88; +pub const AUDIT_ARCH_M68K: u32 = 4; +pub const AUDIT_ARCH_MICROBLAZE: u32 = 189; +pub const AUDIT_ARCH_MIPS: u32 = 8; +pub const AUDIT_ARCH_MIPSEL: u32 = 1073741832; +pub const AUDIT_ARCH_MIPS64: u32 = 2147483656; +pub const AUDIT_ARCH_MIPS64N32: u32 = 2684354568; +pub const AUDIT_ARCH_MIPSEL64: u32 = 3221225480; +pub const AUDIT_ARCH_MIPSEL64N32: u32 = 3758096392; +pub const AUDIT_ARCH_NDS32: u32 = 1073741991; +pub const AUDIT_ARCH_NDS32BE: u32 = 167; +pub const AUDIT_ARCH_NIOS2: u32 = 1073741937; +pub const AUDIT_ARCH_OPENRISC: u32 = 92; +pub const AUDIT_ARCH_PARISC: u32 = 15; +pub const AUDIT_ARCH_PARISC64: u32 = 2147483663; +pub const AUDIT_ARCH_PPC: u32 = 20; +pub const AUDIT_ARCH_PPC64: u32 = 2147483669; +pub const AUDIT_ARCH_PPC64LE: u32 = 3221225493; +pub const AUDIT_ARCH_RISCV32: u32 = 1073742067; +pub const AUDIT_ARCH_RISCV64: u32 = 3221225715; +pub const AUDIT_ARCH_S390: u32 = 22; +pub const AUDIT_ARCH_S390X: u32 = 2147483670; +pub const AUDIT_ARCH_SH: u32 = 42; +pub const AUDIT_ARCH_SHEL: u32 = 1073741866; +pub const AUDIT_ARCH_SH64: u32 = 2147483690; +pub const AUDIT_ARCH_SHEL64: u32 = 3221225514; +pub const AUDIT_ARCH_SPARC: u32 = 2; +pub const AUDIT_ARCH_SPARC64: u32 = 2147483691; +pub const AUDIT_ARCH_TILEGX: u32 = 3221225663; +pub const AUDIT_ARCH_TILEGX32: u32 = 1073742015; +pub const AUDIT_ARCH_TILEPRO: u32 = 1073742012; +pub const AUDIT_ARCH_UNICORE: u32 = 1073741934; +pub const AUDIT_ARCH_X86_64: u32 = 3221225534; +pub const AUDIT_ARCH_XTENSA: u32 = 94; +pub const AUDIT_ARCH_LOONGARCH32: u32 = 1073742082; +pub const AUDIT_ARCH_LOONGARCH64: u32 = 3221225730; +pub const AUDIT_PERM_EXEC: u32 = 1; +pub const AUDIT_PERM_WRITE: u32 = 2; +pub const AUDIT_PERM_READ: u32 = 4; +pub const AUDIT_PERM_ATTR: u32 = 8; +pub const AUDIT_MESSAGE_TEXT_MAX: u32 = 8560; +pub const AUDIT_FEATURE_VERSION: u32 = 1; +pub const AUDIT_FEATURE_ONLY_UNSET_LOGINUID: u32 = 0; +pub const AUDIT_FEATURE_LOGINUID_IMMUTABLE: u32 = 1; +pub const AUDIT_LAST_FEATURE: u32 = 1; +pub const BPF_LD: u32 = 0; +pub const BPF_LDX: u32 = 1; +pub const BPF_ST: u32 = 2; +pub const BPF_STX: u32 = 3; +pub const BPF_ALU: u32 = 4; +pub const BPF_JMP: u32 = 5; +pub const BPF_RET: u32 = 6; +pub const BPF_MISC: u32 = 7; +pub const BPF_W: u32 = 0; +pub const BPF_H: u32 = 8; +pub const BPF_B: u32 = 16; +pub const BPF_IMM: u32 = 0; +pub const BPF_ABS: u32 = 32; +pub const BPF_IND: u32 = 64; +pub const BPF_MEM: u32 = 96; +pub const BPF_LEN: u32 = 128; +pub const BPF_MSH: u32 = 160; +pub const BPF_ADD: u32 = 0; +pub const BPF_SUB: u32 = 16; +pub const BPF_MUL: u32 = 32; +pub const BPF_DIV: u32 = 48; +pub const BPF_OR: u32 = 64; +pub const BPF_AND: u32 = 80; +pub const BPF_LSH: u32 = 96; +pub const BPF_RSH: u32 = 112; +pub const BPF_NEG: u32 = 128; +pub const BPF_MOD: u32 = 144; +pub const BPF_XOR: u32 = 160; +pub const BPF_JA: u32 = 0; +pub const BPF_JEQ: u32 = 16; +pub const BPF_JGT: u32 = 32; +pub const BPF_JGE: u32 = 48; +pub const BPF_JSET: u32 = 64; +pub const BPF_K: u32 = 0; +pub const BPF_X: u32 = 8; +pub const BPF_MAXINSNS: u32 = 4096; +pub const BPF_MAJOR_VERSION: u32 = 1; +pub const BPF_MINOR_VERSION: u32 = 1; +pub const BPF_A: u32 = 16; +pub const BPF_TAX: u32 = 0; +pub const BPF_TXA: u32 = 128; +pub const BPF_MEMWORDS: u32 = 16; +pub const SKF_AD_OFF: i32 = -4096; +pub const SKF_AD_PROTOCOL: u32 = 0; +pub const SKF_AD_PKTTYPE: u32 = 4; +pub const SKF_AD_IFINDEX: u32 = 8; +pub const SKF_AD_NLATTR: u32 = 12; +pub const SKF_AD_NLATTR_NEST: u32 = 16; +pub const SKF_AD_MARK: u32 = 20; +pub const SKF_AD_QUEUE: u32 = 24; +pub const SKF_AD_HATYPE: u32 = 28; +pub const SKF_AD_RXHASH: u32 = 32; +pub const SKF_AD_CPU: u32 = 36; +pub const SKF_AD_ALU_XOR_X: u32 = 40; +pub const SKF_AD_VLAN_TAG: u32 = 44; +pub const SKF_AD_VLAN_TAG_PRESENT: u32 = 48; +pub const SKF_AD_PAY_OFFSET: u32 = 52; +pub const SKF_AD_RANDOM: u32 = 56; +pub const SKF_AD_VLAN_TPID: u32 = 60; +pub const SKF_AD_MAX: u32 = 64; +pub const SKF_NET_OFF: i32 = -1048576; +pub const SKF_LL_OFF: i32 = -2097152; +pub const BPF_NET_OFF: i32 = -1048576; +pub const BPF_LL_OFF: i32 = -2097152; +pub const PTRACE_TRACEME: u32 = 0; +pub const PTRACE_PEEKTEXT: u32 = 1; +pub const PTRACE_PEEKDATA: u32 = 2; +pub const PTRACE_PEEKUSR: u32 = 3; +pub const PTRACE_POKETEXT: u32 = 4; +pub const PTRACE_POKEDATA: u32 = 5; +pub const PTRACE_POKEUSR: u32 = 6; +pub const PTRACE_CONT: u32 = 7; +pub const PTRACE_KILL: u32 = 8; +pub const PTRACE_SINGLESTEP: u32 = 9; +pub const PTRACE_ATTACH: u32 = 16; +pub const PTRACE_DETACH: u32 = 17; +pub const PTRACE_SYSCALL: u32 = 24; +pub const PTRACE_SETOPTIONS: u32 = 16896; +pub const PTRACE_GETEVENTMSG: u32 = 16897; +pub const PTRACE_GETSIGINFO: u32 = 16898; +pub const PTRACE_SETSIGINFO: u32 = 16899; +pub const PTRACE_GETREGSET: u32 = 16900; +pub const PTRACE_SETREGSET: u32 = 16901; +pub const PTRACE_SEIZE: u32 = 16902; +pub const PTRACE_INTERRUPT: u32 = 16903; +pub const PTRACE_LISTEN: u32 = 16904; +pub const PTRACE_PEEKSIGINFO: u32 = 16905; +pub const PTRACE_GETSIGMASK: u32 = 16906; +pub const PTRACE_SETSIGMASK: u32 = 16907; +pub const PTRACE_SECCOMP_GET_FILTER: u32 = 16908; +pub const PTRACE_SECCOMP_GET_METADATA: u32 = 16909; +pub const PTRACE_GET_SYSCALL_INFO: u32 = 16910; +pub const PTRACE_SET_SYSCALL_INFO: u32 = 16914; +pub const PTRACE_SYSCALL_INFO_NONE: u32 = 0; +pub const PTRACE_SYSCALL_INFO_ENTRY: u32 = 1; +pub const PTRACE_SYSCALL_INFO_EXIT: u32 = 2; +pub const PTRACE_SYSCALL_INFO_SECCOMP: u32 = 3; +pub const PTRACE_GET_RSEQ_CONFIGURATION: u32 = 16911; +pub const PTRACE_SET_SYSCALL_USER_DISPATCH_CONFIG: u32 = 16912; +pub const PTRACE_GET_SYSCALL_USER_DISPATCH_CONFIG: u32 = 16913; +pub const PTRACE_EVENTMSG_SYSCALL_ENTRY: u32 = 1; +pub const PTRACE_EVENTMSG_SYSCALL_EXIT: u32 = 2; +pub const PTRACE_PEEKSIGINFO_SHARED: u32 = 1; +pub const PTRACE_EVENT_FORK: u32 = 1; +pub const PTRACE_EVENT_VFORK: u32 = 2; +pub const PTRACE_EVENT_CLONE: u32 = 3; +pub const PTRACE_EVENT_EXEC: u32 = 4; +pub const PTRACE_EVENT_VFORK_DONE: u32 = 5; +pub const PTRACE_EVENT_EXIT: u32 = 6; +pub const PTRACE_EVENT_SECCOMP: u32 = 7; +pub const PTRACE_EVENT_STOP: u32 = 128; +pub const PTRACE_O_TRACESYSGOOD: u32 = 1; +pub const PTRACE_O_TRACEFORK: u32 = 2; +pub const PTRACE_O_TRACEVFORK: u32 = 4; +pub const PTRACE_O_TRACECLONE: u32 = 8; +pub const PTRACE_O_TRACEEXEC: u32 = 16; +pub const PTRACE_O_TRACEVFORKDONE: u32 = 32; +pub const PTRACE_O_TRACEEXIT: u32 = 64; +pub const PTRACE_O_TRACESECCOMP: u32 = 128; +pub const PTRACE_O_EXITKILL: u32 = 1048576; +pub const PTRACE_O_SUSPEND_SECCOMP: u32 = 2097152; +pub const PTRACE_O_MASK: u32 = 3145983; +pub const SECCOMP_MODE_DISABLED: u32 = 0; +pub const SECCOMP_MODE_STRICT: u32 = 1; +pub const SECCOMP_MODE_FILTER: u32 = 2; +pub const SECCOMP_SET_MODE_STRICT: u32 = 0; +pub const SECCOMP_SET_MODE_FILTER: u32 = 1; +pub const SECCOMP_GET_ACTION_AVAIL: u32 = 2; +pub const SECCOMP_GET_NOTIF_SIZES: u32 = 3; +pub const SECCOMP_FILTER_FLAG_TSYNC: u32 = 1; +pub const SECCOMP_FILTER_FLAG_LOG: u32 = 2; +pub const SECCOMP_FILTER_FLAG_SPEC_ALLOW: u32 = 4; +pub const SECCOMP_FILTER_FLAG_NEW_LISTENER: u32 = 8; +pub const SECCOMP_FILTER_FLAG_TSYNC_ESRCH: u32 = 16; +pub const SECCOMP_FILTER_FLAG_WAIT_KILLABLE_RECV: u32 = 32; +pub const SECCOMP_RET_KILL_PROCESS: u32 = 2147483648; +pub const SECCOMP_RET_KILL_THREAD: u32 = 0; +pub const SECCOMP_RET_KILL: u32 = 0; +pub const SECCOMP_RET_TRAP: u32 = 196608; +pub const SECCOMP_RET_ERRNO: u32 = 327680; +pub const SECCOMP_RET_USER_NOTIF: u32 = 2143289344; +pub const SECCOMP_RET_TRACE: u32 = 2146435072; +pub const SECCOMP_RET_LOG: u32 = 2147221504; +pub const SECCOMP_RET_ALLOW: u32 = 2147418112; +pub const SECCOMP_RET_ACTION_FULL: u32 = 4294901760; +pub const SECCOMP_RET_ACTION: u32 = 2147418112; +pub const SECCOMP_RET_DATA: u32 = 65535; +pub const SECCOMP_USER_NOTIF_FLAG_CONTINUE: u32 = 1; +pub const SECCOMP_USER_NOTIF_FD_SYNC_WAKE_UP: u32 = 1; +pub const SECCOMP_ADDFD_FLAG_SETFD: u32 = 1; +pub const SECCOMP_ADDFD_FLAG_SEND: u32 = 2; +pub const SECCOMP_IOC_MAGIC: u8 = 33u8; +pub const Audit_equal: _bindgen_ty_1 = _bindgen_ty_1::Audit_equal; +pub const Audit_not_equal: _bindgen_ty_1 = _bindgen_ty_1::Audit_not_equal; +pub const Audit_bitmask: _bindgen_ty_1 = _bindgen_ty_1::Audit_bitmask; +pub const Audit_bittest: _bindgen_ty_1 = _bindgen_ty_1::Audit_bittest; +pub const Audit_lt: _bindgen_ty_1 = _bindgen_ty_1::Audit_lt; +pub const Audit_gt: _bindgen_ty_1 = _bindgen_ty_1::Audit_gt; +pub const Audit_le: _bindgen_ty_1 = _bindgen_ty_1::Audit_le; +pub const Audit_ge: _bindgen_ty_1 = _bindgen_ty_1::Audit_ge; +pub const Audit_bad: _bindgen_ty_1 = _bindgen_ty_1::Audit_bad; +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum _bindgen_ty_1 { +Audit_equal = 0, +Audit_not_equal = 1, +Audit_bitmask = 2, +Audit_bittest = 3, +Audit_lt = 4, +Audit_gt = 5, +Audit_le = 6, +Audit_ge = 7, +Audit_bad = 8, +} +#[repr(u8)] +#[non_exhaustive] +#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] +pub enum audit_nlgrps { +AUDIT_NLGRP_NONE = 0, +AUDIT_NLGRP_READLOG = 1, +__AUDIT_NLGRP_MAX = 2, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union audit_status__bindgen_ty_1 { +pub version: __u32, +pub feature_bitmap: __u32, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union ptrace_syscall_info__bindgen_ty_1 { +pub entry: ptrace_syscall_info__bindgen_ty_1__bindgen_ty_1, +pub exit: ptrace_syscall_info__bindgen_ty_1__bindgen_ty_2, +pub seccomp: ptrace_syscall_info__bindgen_ty_1__bindgen_ty_3, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_1 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_1__bindgen_ty_1, +pub predsusr: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_2 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_2__bindgen_ty_1, +pub m1m0: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_3 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_3__bindgen_ty_1, +pub lc1sa1: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_4 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_4__bindgen_ty_1, +pub lc0sa0: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_5 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_5__bindgen_ty_1, +pub gpugp: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_6 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_6__bindgen_ty_1, +pub cs1cs0: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_7 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_7__bindgen_ty_1, +pub r0100: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_8 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_8__bindgen_ty_1, +pub r0302: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_9 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_9__bindgen_ty_1, +pub r0504: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_10 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_10__bindgen_ty_1, +pub r0706: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_11 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_11__bindgen_ty_1, +pub r0908: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_12 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_12__bindgen_ty_1, +pub r1110: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_13 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_13__bindgen_ty_1, +pub r1312: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_14 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_14__bindgen_ty_1, +pub r1514: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_15 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_15__bindgen_ty_1, +pub r1716: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_16 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_16__bindgen_ty_1, +pub r1918: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_17 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_17__bindgen_ty_1, +pub r2120: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_18 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_18__bindgen_ty_1, +pub r2322: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_19 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_19__bindgen_ty_1, +pub r2524: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_20 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_20__bindgen_ty_1, +pub r2726: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_21 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_21__bindgen_ty_1, +pub r2928: crate::ctypes::c_longlong, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub union pt_regs__bindgen_ty_22 { +pub __bindgen_anon_1: pt_regs__bindgen_ty_22__bindgen_ty_1, +pub r3130: crate::ctypes::c_longlong, +} +impl __IncompleteArrayField { +#[inline] +pub const fn new() -> Self { +__IncompleteArrayField(::core::marker::PhantomData, []) +} +#[inline] +pub fn as_ptr(&self) -> *const T { +self as *const _ as *const T +} +#[inline] +pub fn as_mut_ptr(&mut self) -> *mut T { +self as *mut _ as *mut T +} +#[inline] +pub unsafe fn as_slice(&self, len: usize) -> &[T] { +::core::slice::from_raw_parts(self.as_ptr(), len) +} +#[inline] +pub unsafe fn as_mut_slice(&mut self, len: usize) -> &mut [T] { +::core::slice::from_raw_parts_mut(self.as_mut_ptr(), len) +} +} +impl ::core::fmt::Debug for __IncompleteArrayField { +fn fmt(&self, fmt: &mut ::core::fmt::Formatter<'_>) -> ::core::fmt::Result { +fmt.write_str("__IncompleteArrayField") +} +} diff --git a/src/hexagon/system.rs b/src/hexagon/system.rs new file mode 100644 index 00000000..7ed06a50 --- /dev/null +++ b/src/hexagon/system.rs @@ -0,0 +1,100 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sysinfo { +pub uptime: __kernel_long_t, +pub loads: [__kernel_ulong_t; 3usize], +pub totalram: __kernel_ulong_t, +pub freeram: __kernel_ulong_t, +pub sharedram: __kernel_ulong_t, +pub bufferram: __kernel_ulong_t, +pub totalswap: __kernel_ulong_t, +pub freeswap: __kernel_ulong_t, +pub procs: __u16, +pub pad: __u16, +pub totalhigh: __kernel_ulong_t, +pub freehigh: __kernel_ulong_t, +pub mem_unit: __u32, +pub _f: [crate::ctypes::c_char; 8usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct oldold_utsname { +pub sysname: [crate::ctypes::c_char; 9usize], +pub nodename: [crate::ctypes::c_char; 9usize], +pub release: [crate::ctypes::c_char; 9usize], +pub version: [crate::ctypes::c_char; 9usize], +pub machine: [crate::ctypes::c_char; 9usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct old_utsname { +pub sysname: [crate::ctypes::c_char; 65usize], +pub nodename: [crate::ctypes::c_char; 65usize], +pub release: [crate::ctypes::c_char; 65usize], +pub version: [crate::ctypes::c_char; 65usize], +pub machine: [crate::ctypes::c_char; 65usize], +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct new_utsname { +pub sysname: [crate::ctypes::c_char; 65usize], +pub nodename: [crate::ctypes::c_char; 65usize], +pub release: [crate::ctypes::c_char; 65usize], +pub version: [crate::ctypes::c_char; 65usize], +pub machine: [crate::ctypes::c_char; 65usize], +pub domainname: [crate::ctypes::c_char; 65usize], +} +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const SI_LOAD_SHIFT: u32 = 16; +pub const __OLD_UTS_LEN: u32 = 8; +pub const __NEW_UTS_LEN: u32 = 64; diff --git a/src/hexagon/xdp.rs b/src/hexagon/xdp.rs new file mode 100644 index 00000000..4eee1250 --- /dev/null +++ b/src/hexagon/xdp.rs @@ -0,0 +1,192 @@ +/* automatically generated by rust-bindgen 0.72.1 */ + +pub type __s8 = crate::ctypes::c_schar; +pub type __u8 = crate::ctypes::c_uchar; +pub type __s16 = crate::ctypes::c_short; +pub type __u16 = crate::ctypes::c_ushort; +pub type __s32 = crate::ctypes::c_int; +pub type __u32 = crate::ctypes::c_uint; +pub type __s64 = crate::ctypes::c_longlong; +pub type __u64 = crate::ctypes::c_ulonglong; +pub type __kernel_key_t = crate::ctypes::c_int; +pub type __kernel_mqd_t = crate::ctypes::c_int; +pub type __kernel_long_t = crate::ctypes::c_long; +pub type __kernel_ulong_t = crate::ctypes::c_ulong; +pub type __kernel_ino_t = __kernel_ulong_t; +pub type __kernel_mode_t = crate::ctypes::c_uint; +pub type __kernel_pid_t = crate::ctypes::c_int; +pub type __kernel_ipc_pid_t = crate::ctypes::c_int; +pub type __kernel_uid_t = crate::ctypes::c_uint; +pub type __kernel_gid_t = crate::ctypes::c_uint; +pub type __kernel_suseconds_t = __kernel_long_t; +pub type __kernel_daddr_t = crate::ctypes::c_int; +pub type __kernel_uid32_t = crate::ctypes::c_uint; +pub type __kernel_gid32_t = crate::ctypes::c_uint; +pub type __kernel_old_uid_t = __kernel_uid_t; +pub type __kernel_old_gid_t = __kernel_gid_t; +pub type __kernel_old_dev_t = crate::ctypes::c_uint; +pub type __kernel_size_t = crate::ctypes::c_uint; +pub type __kernel_ssize_t = crate::ctypes::c_int; +pub type __kernel_ptrdiff_t = crate::ctypes::c_int; +pub type __kernel_off_t = __kernel_long_t; +pub type __kernel_loff_t = crate::ctypes::c_longlong; +pub type __kernel_old_time_t = __kernel_long_t; +pub type __kernel_time_t = __kernel_long_t; +pub type __kernel_time64_t = crate::ctypes::c_longlong; +pub type __kernel_clock_t = __kernel_long_t; +pub type __kernel_timer_t = crate::ctypes::c_int; +pub type __kernel_clockid_t = crate::ctypes::c_int; +pub type __kernel_caddr_t = *mut crate::ctypes::c_char; +pub type __kernel_uid16_t = crate::ctypes::c_ushort; +pub type __kernel_gid16_t = crate::ctypes::c_ushort; +pub type __le16 = __u16; +pub type __be16 = __u16; +pub type __le32 = __u32; +pub type __be32 = __u32; +pub type __le64 = __u64; +pub type __be64 = __u64; +pub type __sum16 = __u16; +pub type __wsum = __u32; +pub type __poll_t = crate::ctypes::c_uint; +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct sockaddr_xdp { +pub sxdp_family: __u16, +pub sxdp_flags: __u16, +pub sxdp_ifindex: __u32, +pub sxdp_queue_id: __u32, +pub sxdp_shared_umem_fd: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xdp_ring_offset { +pub producer: __u64, +pub consumer: __u64, +pub desc: __u64, +pub flags: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xdp_mmap_offsets { +pub rx: xdp_ring_offset, +pub tx: xdp_ring_offset, +pub fr: xdp_ring_offset, +pub cr: xdp_ring_offset, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xdp_umem_reg { +pub addr: __u64, +pub len: __u64, +pub chunk_size: __u32, +pub headroom: __u32, +pub flags: __u32, +pub tx_metadata_len: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xdp_statistics { +pub rx_dropped: __u64, +pub rx_invalid_descs: __u64, +pub tx_invalid_descs: __u64, +pub rx_ring_full: __u64, +pub rx_fill_ring_empty_descs: __u64, +pub tx_ring_empty_descs: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xdp_options { +pub flags: __u32, +} +#[repr(C)] +#[derive(Copy, Clone)] +pub struct xsk_tx_metadata { +pub flags: __u64, +pub __bindgen_anon_1: xsk_tx_metadata__bindgen_ty_1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1 { +pub csum_start: __u16, +pub csum_offset: __u16, +pub launch_time: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xsk_tx_metadata__bindgen_ty_1__bindgen_ty_2 { +pub tx_timestamp: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xdp_desc { +pub addr: __u64, +pub len: __u32, +pub options: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xdp_ring_offset_v1 { +pub producer: __u64, +pub consumer: __u64, +pub desc: __u64, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xdp_mmap_offsets_v1 { +pub rx: xdp_ring_offset_v1, +pub tx: xdp_ring_offset_v1, +pub fr: xdp_ring_offset_v1, +pub cr: xdp_ring_offset_v1, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xdp_umem_reg_v1 { +pub addr: __u64, +pub len: __u64, +pub chunk_size: __u32, +pub headroom: __u32, +} +#[repr(C)] +#[derive(Debug, Copy, Clone)] +pub struct xdp_statistics_v1 { +pub rx_dropped: __u64, +pub rx_invalid_descs: __u64, +pub tx_invalid_descs: __u64, +} +pub const __BITS_PER_LONG_LONG: u32 = 64; +pub const XDP_SHARED_UMEM: u32 = 1; +pub const XDP_COPY: u32 = 2; +pub const XDP_ZEROCOPY: u32 = 4; +pub const XDP_USE_NEED_WAKEUP: u32 = 8; +pub const XDP_USE_SG: u32 = 16; +pub const XDP_UMEM_UNALIGNED_CHUNK_FLAG: u32 = 1; +pub const XDP_UMEM_TX_SW_CSUM: u32 = 2; +pub const XDP_UMEM_TX_METADATA_LEN: u32 = 4; +pub const XDP_RING_NEED_WAKEUP: u32 = 1; +pub const XDP_MMAP_OFFSETS: u32 = 1; +pub const XDP_RX_RING: u32 = 2; +pub const XDP_TX_RING: u32 = 3; +pub const XDP_UMEM_REG: u32 = 4; +pub const XDP_UMEM_FILL_RING: u32 = 5; +pub const XDP_UMEM_COMPLETION_RING: u32 = 6; +pub const XDP_STATISTICS: u32 = 7; +pub const XDP_OPTIONS: u32 = 8; +pub const XDP_MAX_TX_SKB_BUDGET: u32 = 9; +pub const XDP_OPTIONS_ZEROCOPY: u32 = 1; +pub const XDP_PGOFF_RX_RING: u32 = 0; +pub const XDP_PGOFF_TX_RING: u32 = 2147483648; +pub const XDP_UMEM_PGOFF_FILL_RING: u64 = 4294967296; +pub const XDP_UMEM_PGOFF_COMPLETION_RING: u64 = 6442450944; +pub const XSK_UNALIGNED_BUF_OFFSET_SHIFT: u32 = 48; +pub const XSK_UNALIGNED_BUF_ADDR_MASK: u64 = 281474976710655; +pub const XDP_TXMD_FLAGS_TIMESTAMP: u32 = 1; +pub const XDP_TXMD_FLAGS_CHECKSUM: u32 = 2; +pub const XDP_TXMD_FLAGS_LAUNCH_TIME: u32 = 4; +pub const XDP_PKT_CONTD: u32 = 1; +pub const XDP_TX_METADATA: u32 = 2; +#[repr(C)] +#[derive(Copy, Clone)] +pub union xsk_tx_metadata__bindgen_ty_1 { +pub request: xsk_tx_metadata__bindgen_ty_1__bindgen_ty_1, +pub completion: xsk_tx_metadata__bindgen_ty_1__bindgen_ty_2, +} diff --git a/src/lib.rs b/src/lib.rs index 8ba26751..5e468d40 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -482,6 +482,94 @@ pub mod system; #[path = "csky/xdp.rs"] pub mod xdp; #[cfg(feature = "auxvec")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/auxvec.rs"] +pub mod auxvec; +#[cfg(feature = "bootparam")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/bootparam.rs"] +pub mod bootparam; +#[cfg(feature = "btrfs")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/btrfs.rs"] +pub mod btrfs; +#[cfg(feature = "elf_uapi")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/elf_uapi.rs"] +pub mod elf_uapi; +#[cfg(feature = "errno")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/errno.rs"] +pub mod errno; +#[cfg(feature = "general")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/general.rs"] +pub mod general; +#[cfg(feature = "if_arp")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/if_arp.rs"] +pub mod if_arp; +#[cfg(feature = "if_ether")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/if_ether.rs"] +pub mod if_ether; +#[cfg(feature = "if_packet")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/if_packet.rs"] +pub mod if_packet; +#[cfg(feature = "if_tun")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/if_tun.rs"] +pub mod if_tun; +#[cfg(feature = "image")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/image.rs"] +pub mod image; +#[cfg(feature = "io_uring")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/io_uring.rs"] +pub mod io_uring; +#[cfg(feature = "ioctl")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/ioctl.rs"] +pub mod ioctl; +#[cfg(feature = "landlock")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/landlock.rs"] +pub mod landlock; +#[cfg(feature = "loop_device")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/loop_device.rs"] +pub mod loop_device; +#[cfg(feature = "mempolicy")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/mempolicy.rs"] +pub mod mempolicy; +#[cfg(feature = "net")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/net.rs"] +pub mod net; +#[cfg(feature = "netlink")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/netlink.rs"] +pub mod netlink; +#[cfg(feature = "prctl")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/prctl.rs"] +pub mod prctl; +#[cfg(feature = "ptrace")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/ptrace.rs"] +pub mod ptrace; +#[cfg(feature = "system")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/system.rs"] +pub mod system; +#[cfg(feature = "xdp")] +#[cfg(target_arch = "hexagon")] +#[path = "hexagon/xdp.rs"] +pub mod xdp; +#[cfg(feature = "auxvec")] #[cfg(target_arch = "loongarch64")] #[path = "loongarch64/auxvec.rs"] pub mod auxvec;