diff --git a/0001-Add-support-for-sw_64.patch b/0001-Add-support-for-sw_64.patch new file mode 100755 index 0000000000000000000000000000000000000000..8b134c5f85082ff1cdabb22535f84fbd8d75128c --- /dev/null +++ b/0001-Add-support-for-sw_64.patch @@ -0,0 +1,38574 @@ +From 611c74d23fffd97ef5402c04ffa6a46f47631dce Mon Sep 17 00:00:00 2001 +From: zhangmx +Date: Thu, 17 Apr 2025 11:29:33 -0400 +Subject: [PATCH] Add support for sw_64 + +--- + compiler/rustc_codegen_llvm/src/asm.rs | 6 + + .../rustc_codegen_ssa/src/back/metadata.rs | 5 + + compiler/rustc_feature/src/unstable.rs | 1 + + compiler/rustc_llvm/build.rs | 1 + + .../rustc_llvm/llvm-wrapper/PassWrapper.cpp | 7 + + compiler/rustc_llvm/src/lib.rs | 8 + + compiler/rustc_span/src/symbol.rs | 1 + + compiler/rustc_target/src/asm/mod.rs | 24 + + compiler/rustc_target/src/asm/sw64.rs | 129 + + compiler/rustc_target/src/callconv/mod.rs | 2 + + compiler/rustc_target/src/callconv/sw64.rs | 78 + + compiler/rustc_target/src/spec/mod.rs | 1 + + .../spec/targets/sw_64_sunway_linux_gnu.rs | 26 + + compiler/rustc_target/src/target_features.rs | 7 + + config.example.toml | 2 +- + library/core/Cargo.toml | 1 + + library/core/src/ffi/va_list.rs | 13 + + library/core/src/sync/atomic.rs | 3 +- + library/std/build.rs | 2 + + library/std/src/env.rs | 1 + + library/std/src/os/linux/raw.rs | 1 + + library/std/src/sync/mpmc/utils.rs | 8 +- + library/std/src/sys/alloc/mod.rs | 1 + + library/std/src/sys/personality/gcc.rs | 3 + + library/unwind/src/libunwind.rs | 3 + + src/bootstrap/bootstrap.py | 2 + + src/bootstrap/src/core/build_steps/llvm.rs | 2 +- + src/doc/rustc/src/platform-support.md | 1 + + src/llvm-project | 2 +- + src/tools/build-manifest/src/main.rs | 2 + + tests/ui/check-cfg/well-known-values.stderr | 4 +- + .../src/float/conv.rs | 28 +- + .../compiler_builtins-0.1.146/src/int/mul.rs | 3 +- + .../compiler_builtins-0.1.146/src/macros.rs | 30 + + .../src/unix/linux_like/linux/arch/mod.rs | 3 + + .../unix/linux_like/linux/arch/sw64/mod.rs | 142 + + .../src/unix/linux_like/linux/gnu/b64/mod.rs | 24 +- + .../src/unix/linux_like/linux/gnu/b64/sw64.rs | 930 +++++ + .../src/unix/linux_like/linux/gnu/mod.rs | 8 + + .../src/unix/linux_like/linux/arch/mod.rs | 13 +- + .../unix/linux_like/linux/arch/sw64/mod.rs | 142 + + .../src/unix/linux_like/linux/gnu/b64/mod.rs | 24 +- + .../src/unix/linux_like/linux/gnu/b64/sw64.rs | 930 +++++ + .../src/unix/linux_like/linux/gnu/mod.rs | 7 + + .../src/unix/linux_like/linux/mod.rs | 11 + + .../libc-0.2.169/src/unix/linux_like/mod.rs | 34 +- + vendor/linux-raw-sys-0.4.14/src/lib.rs | 61 + + .../src/sw64/bootparam.rs | 3 + + vendor/linux-raw-sys-0.4.14/src/sw64/errno.rs | 137 + + .../linux-raw-sys-0.4.14/src/sw64/general.rs | 3030 +++++++++++++++++ + .../linux-raw-sys-0.4.14/src/sw64/if_arp.rs | 2675 +++++++++++++++ + .../linux-raw-sys-0.4.14/src/sw64/if_ether.rs | 177 + + .../src/sw64/if_packet.rs | 317 ++ + .../linux-raw-sys-0.4.14/src/sw64/io_uring.rs | 1096 ++++++ + vendor/linux-raw-sys-0.4.14/src/sw64/ioctl.rs | 1600 +++++++++ + .../src/sw64/loop_device.rs | 141 + + .../src/sw64/mempolicy.rs | 175 + + vendor/linux-raw-sys-0.4.14/src/sw64/net.rs | 2514 ++++++++++++++ + .../linux-raw-sys-0.4.14/src/sw64/netlink.rs | 2864 ++++++++++++++++ + vendor/linux-raw-sys-0.4.14/src/sw64/prctl.rs | 231 ++ + .../linux-raw-sys-0.4.14/src/sw64/system.rs | 139 + + vendor/linux-raw-sys-0.4.14/src/sw64/xdp.rs | 169 + + vendor/linux-raw-sys-0.4.15/src/lib.rs | 61 + + .../src/sw64/bootparam.rs | 3 + + vendor/linux-raw-sys-0.4.15/src/sw64/btrfs.rs | 1690 +++++++++ + .../linux-raw-sys-0.4.15/src/sw64/elf_uapi.rs | 522 +++ + vendor/linux-raw-sys-0.4.15/src/sw64/errno.rs | 137 + + .../linux-raw-sys-0.4.15/src/sw64/general.rs | 3030 +++++++++++++++++ + .../linux-raw-sys-0.4.15/src/sw64/if_arp.rs | 2675 +++++++++++++++ + .../linux-raw-sys-0.4.15/src/sw64/if_ether.rs | 177 + + .../src/sw64/if_packet.rs | 317 ++ + .../linux-raw-sys-0.4.15/src/sw64/io_uring.rs | 1096 ++++++ + vendor/linux-raw-sys-0.4.15/src/sw64/ioctl.rs | 1600 +++++++++ + .../linux-raw-sys-0.4.15/src/sw64/landlock.rs | 93 + + .../src/sw64/loop_device.rs | 141 + + .../src/sw64/mempolicy.rs | 175 + + vendor/linux-raw-sys-0.4.15/src/sw64/net.rs | 2514 ++++++++++++++ + .../linux-raw-sys-0.4.15/src/sw64/netlink.rs | 2864 ++++++++++++++++ + vendor/linux-raw-sys-0.4.15/src/sw64/prctl.rs | 231 ++ + .../linux-raw-sys-0.4.15/src/sw64/ptrace.rs | 851 +++++ + .../linux-raw-sys-0.4.15/src/sw64/system.rs | 139 + + vendor/linux-raw-sys-0.4.15/src/sw64/xdp.rs | 169 + + vendor/nix-0.28.0/src/sys/signal.rs | 5 + + vendor/nix-0.28.0/src/sys/statfs.rs | 46 + + vendor/nix-0.28.0/src/sys/termios.rs | 2 +- + vendor/nix-0.29.0/src/fcntl.rs | 1 + + vendor/nix-0.29.0/src/sys/signal.rs | 5 + + vendor/nix-0.29.0/src/sys/statfs.rs | 46 + + vendor/nix-0.29.0/src/sys/termios.rs | 2 +- + vendor/object-0.36.7/src/common.rs | 2 + + vendor/object-0.36.7/src/elf.rs | 116 + + vendor/object-0.36.7/src/read/elf/file.rs | 1 + + .../object-0.36.7/src/read/elf/relocation.rs | 5 + + vendor/object-0.36.7/src/write/elf/object.rs | 7 + + vendor/psm-0.1.24/build.rs | 1 + + vendor/psm-0.1.24/src/arch/sw64.s | 88 + + vendor/rustix-0.38.40/src/ioctl/linux.rs | 1 + + vendor/rustix-0.38.43/src/backend/libc/c.rs | 4 +- + vendor/rustix-0.38.43/src/ioctl/linux.rs | 1 + + vendor/rustix-0.38.44/src/backend/libc/c.rs | 4 +- + vendor/rustix-0.38.44/src/ioctl/linux.rs | 1 + + 101 files changed, 36791 insertions(+), 37 deletions(-) + create mode 100644 compiler/rustc_target/src/asm/sw64.rs + create mode 100644 compiler/rustc_target/src/callconv/sw64.rs + create mode 100644 compiler/rustc_target/src/spec/targets/sw_64_sunway_linux_gnu.rs + create mode 100644 vendor/libc-0.2.167/src/unix/linux_like/linux/arch/sw64/mod.rs + create mode 100644 vendor/libc-0.2.167/src/unix/linux_like/linux/gnu/b64/sw64.rs + create mode 100644 vendor/libc-0.2.169/src/unix/linux_like/linux/arch/sw64/mod.rs + create mode 100644 vendor/libc-0.2.169/src/unix/linux_like/linux/gnu/b64/sw64.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/bootparam.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/errno.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/general.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/if_arp.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/if_ether.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/if_packet.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/io_uring.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/ioctl.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/loop_device.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/mempolicy.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/net.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/netlink.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/prctl.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/system.rs + create mode 100644 vendor/linux-raw-sys-0.4.14/src/sw64/xdp.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/bootparam.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/btrfs.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/elf_uapi.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/errno.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/general.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/if_arp.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/if_ether.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/if_packet.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/io_uring.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/ioctl.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/landlock.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/loop_device.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/mempolicy.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/net.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/netlink.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/prctl.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/ptrace.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/system.rs + create mode 100644 vendor/linux-raw-sys-0.4.15/src/sw64/xdp.rs + create mode 100644 vendor/psm-0.1.24/src/arch/sw64.s + +diff --git a/compiler/rustc_codegen_llvm/src/asm.rs b/compiler/rustc_codegen_llvm/src/asm.rs +index be5673eddf9..1a9d92fb671 100644 +--- a/compiler/rustc_codegen_llvm/src/asm.rs ++++ b/compiler/rustc_codegen_llvm/src/asm.rs +@@ -278,6 +278,7 @@ fn codegen_inline_asm( + constraints.push("~{fcc3}".to_string()); + } + InlineAsmArch::SpirV => {} ++ InlineAsmArch::Sw64 => {} + InlineAsmArch::Wasm32 | InlineAsmArch::Wasm64 => {} + InlineAsmArch::Bpf => {} + InlineAsmArch::Msp430 => { +@@ -657,6 +658,8 @@ fn reg_to_llvm(reg: InlineAsmRegOrRegClass, layout: Option<&TyAndLayout<'_>>) -> + Hexagon(HexagonInlineAsmRegClass::preg) => unreachable!("clobber-only"), + LoongArch(LoongArchInlineAsmRegClass::reg) => "r", + LoongArch(LoongArchInlineAsmRegClass::freg) => "f", ++ Sw64(Sw64InlineAsmRegClass::reg) => "r", ++ Sw64(Sw64InlineAsmRegClass::freg) => "f", + Mips(MipsInlineAsmRegClass::reg) => "r", + Mips(MipsInlineAsmRegClass::freg) => "f", + Nvptx(NvptxInlineAsmRegClass::reg16) => "h", +@@ -749,6 +752,7 @@ fn modifier_to_llvm( + } + Hexagon(_) => None, + LoongArch(_) => None, ++ Sw64(_) => None, + Mips(_) => None, + Nvptx(_) => None, + PowerPC(_) => None, +@@ -825,6 +829,8 @@ fn dummy_output_type<'ll>(cx: &CodegenCx<'ll, '_>, reg: InlineAsmRegClass) -> &' + Hexagon(HexagonInlineAsmRegClass::preg) => unreachable!("clobber-only"), + LoongArch(LoongArchInlineAsmRegClass::reg) => cx.type_i32(), + LoongArch(LoongArchInlineAsmRegClass::freg) => cx.type_f32(), ++ Sw64(Sw64InlineAsmRegClass::reg) => cx.type_i32(), ++ Sw64(Sw64InlineAsmRegClass::freg) => cx.type_f32(), + Mips(MipsInlineAsmRegClass::reg) => cx.type_i32(), + Mips(MipsInlineAsmRegClass::freg) => cx.type_f32(), + Nvptx(NvptxInlineAsmRegClass::reg16) => cx.type_i16(), +diff --git a/compiler/rustc_codegen_ssa/src/back/metadata.rs b/compiler/rustc_codegen_ssa/src/back/metadata.rs +index d70413b8a47..256fd9f3709 100644 +--- a/compiler/rustc_codegen_ssa/src/back/metadata.rs ++++ b/compiler/rustc_codegen_ssa/src/back/metadata.rs +@@ -220,6 +220,7 @@ pub(crate) fn create_object_file(sess: &Session) -> Option (Architecture::S390x, None), + "mips" | "mips32r6" => (Architecture::Mips, None), + "mips64" | "mips64r6" => (Architecture::Mips64, None), ++ "sw64" => (Architecture::Sw64, None), + "x86_64" => ( + if sess.target.pointer_width == 32 { + Architecture::X86_64_X32 +@@ -383,6 +384,10 @@ pub(crate) fn create_object_file(sess: &Session) -> Option { ++ let e_flags = elf::EF_SW_64_32BIT | elf::EF_SW_64_CANRELAX; ++ e_flags ++ } + Architecture::Csky => { + let e_flags = match sess.target.options.abi.as_ref() { + "abiv2" => elf::EF_CSKY_ABIV2, +diff --git a/compiler/rustc_feature/src/unstable.rs b/compiler/rustc_feature/src/unstable.rs +index 6a317fc75a8..903003f5bde 100644 +--- a/compiler/rustc_feature/src/unstable.rs ++++ b/compiler/rustc_feature/src/unstable.rs +@@ -340,6 +340,7 @@ pub fn internal(&self, feature: Symbol) -> bool { + (unstable, s390x_target_feature, "1.82.0", Some(44839)), + (unstable, sparc_target_feature, "1.84.0", Some(132783)), + (unstable, sse4a_target_feature, "1.27.0", Some(44839)), ++ (unstable, sw64_target_feature, "1.81.0", Some(44839)), + (unstable, tbm_target_feature, "1.27.0", Some(44839)), + (unstable, wasm_target_feature, "1.30.0", Some(44839)), + (unstable, x87_target_feature, "1.85.0", Some(44839)), +diff --git a/compiler/rustc_llvm/build.rs b/compiler/rustc_llvm/build.rs +index 48806888b43..2b8de0f91dc 100644 +--- a/compiler/rustc_llvm/build.rs ++++ b/compiler/rustc_llvm/build.rs +@@ -14,6 +14,7 @@ + "m68k", + "csky", + "mips", ++ "sw64", + "powerpc", + "systemz", + "jsbackend", +diff --git a/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp b/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp +index a6b2384f2d7..e4f53f3308c 100644 +--- a/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp ++++ b/compiler/rustc_llvm/llvm-wrapper/PassWrapper.cpp +@@ -168,6 +168,12 @@ extern "C" void LLVMRustTimeTraceProfilerFinish(const char *FileName) { + #define SUBTARGET_LOONGARCH + #endif + ++#ifdef LLVM_COMPONENT_SW64 ++#define SUBTARGET_SW64 SUBTARGET(SW64) ++#else ++#define SUBTARGET_SW64 ++#endif ++ + #define GEN_SUBTARGETS \ + SUBTARGET_X86 \ + SUBTARGET_ARM \ +@@ -183,6 +189,7 @@ extern "C" void LLVMRustTimeTraceProfilerFinish(const char *FileName) { + SUBTARGET_HEXAGON \ + SUBTARGET_XTENSA \ + SUBTARGET_RISCV \ ++ SUBTARGET_SW64 \ + SUBTARGET_LOONGARCH + + #define SUBTARGET(x) \ +diff --git a/compiler/rustc_llvm/src/lib.rs b/compiler/rustc_llvm/src/lib.rs +index eda9b2b1fc0..e001cdef612 100644 +--- a/compiler/rustc_llvm/src/lib.rs ++++ b/compiler/rustc_llvm/src/lib.rs +@@ -164,6 +164,14 @@ fn init() { } + LLVMInitializeMipsAsmPrinter, + LLVMInitializeMipsAsmParser + ); ++ init_target!( ++ llvm_component = "sw64", ++ LLVMInitializeSw64TargetInfo, ++ LLVMInitializeSw64Target, ++ LLVMInitializeSw64TargetMC, ++ LLVMInitializeSw64AsmPrinter, ++ LLVMInitializeSw64AsmParser ++ ); + init_target!( + llvm_component = "powerpc", + LLVMInitializePowerPCTargetInfo, +diff --git a/compiler/rustc_span/src/symbol.rs b/compiler/rustc_span/src/symbol.rs +index 62723e385cf..8e103aec175 100644 +--- a/compiler/rustc_span/src/symbol.rs ++++ b/compiler/rustc_span/src/symbol.rs +@@ -1999,6 +1999,7 @@ + suggestion, + supertrait_item_shadowing, + surface_async_drop_in_place, ++ sw64_target_feature, + sym, + sync, + synthetic, +diff --git a/compiler/rustc_target/src/asm/mod.rs b/compiler/rustc_target/src/asm/mod.rs +index 9f791603c72..704a523571b 100644 +--- a/compiler/rustc_target/src/asm/mod.rs ++++ b/compiler/rustc_target/src/asm/mod.rs +@@ -193,6 +193,7 @@ macro_rules! types { + mod s390x; + mod sparc; + mod spirv; ++mod sw64; + mod wasm; + mod x86; + +@@ -205,6 +206,7 @@ macro_rules! types { + pub use loongarch::{LoongArchInlineAsmReg, LoongArchInlineAsmRegClass}; + pub use m68k::{M68kInlineAsmReg, M68kInlineAsmRegClass}; + pub use mips::{MipsInlineAsmReg, MipsInlineAsmRegClass}; ++pub use sw64::{Sw64InlineAsmReg, Sw64InlineAsmRegClass}; + pub use msp430::{Msp430InlineAsmReg, Msp430InlineAsmRegClass}; + pub use nvptx::{NvptxInlineAsmReg, NvptxInlineAsmRegClass}; + pub use powerpc::{PowerPCInlineAsmReg, PowerPCInlineAsmRegClass}; +@@ -229,6 +231,7 @@ pub enum InlineAsmArch { + LoongArch64, + Mips, + Mips64, ++ Sw64, + PowerPC, + PowerPC64, + S390x, +@@ -261,6 +264,7 @@ fn from_str(s: &str) -> Result { + "powerpc64" => Ok(Self::PowerPC64), + "hexagon" => Ok(Self::Hexagon), + "loongarch64" => Ok(Self::LoongArch64), ++ "sw64" => Ok(Self::Sw64), + "mips" | "mips32r6" => Ok(Self::Mips), + "mips64" | "mips64r6" => Ok(Self::Mips64), + "s390x" => Ok(Self::S390x), +@@ -290,6 +294,7 @@ pub enum InlineAsmReg { + PowerPC(PowerPCInlineAsmReg), + Hexagon(HexagonInlineAsmReg), + LoongArch(LoongArchInlineAsmReg), ++ Sw64(Sw64InlineAsmReg), + Mips(MipsInlineAsmReg), + S390x(S390xInlineAsmReg), + Sparc(SparcInlineAsmReg), +@@ -314,6 +319,7 @@ pub fn name(self) -> &'static str { + Self::PowerPC(r) => r.name(), + Self::Hexagon(r) => r.name(), + Self::LoongArch(r) => r.name(), ++ Self::Sw64(r) => r.name(), + Self::Mips(r) => r.name(), + Self::S390x(r) => r.name(), + Self::Sparc(r) => r.name(), +@@ -335,6 +341,7 @@ pub fn reg_class(self) -> InlineAsmRegClass { + Self::PowerPC(r) => InlineAsmRegClass::PowerPC(r.reg_class()), + Self::Hexagon(r) => InlineAsmRegClass::Hexagon(r.reg_class()), + Self::LoongArch(r) => InlineAsmRegClass::LoongArch(r.reg_class()), ++ Self::Sw64(r) => InlineAsmRegClass::Sw64(r.reg_class()), + Self::Mips(r) => InlineAsmRegClass::Mips(r.reg_class()), + Self::S390x(r) => InlineAsmRegClass::S390x(r.reg_class()), + Self::Sparc(r) => InlineAsmRegClass::Sparc(r.reg_class()), +@@ -366,6 +373,7 @@ pub fn parse(arch: InlineAsmArch, name: Symbol) -> Result { + } + InlineAsmArch::Hexagon => Self::Hexagon(HexagonInlineAsmReg::parse(name)?), + InlineAsmArch::LoongArch64 => Self::LoongArch(LoongArchInlineAsmReg::parse(name)?), ++ InlineAsmArch::Sw64 => Self::Sw64(Sw64InlineAsmReg::parse(name)?), + InlineAsmArch::Mips | InlineAsmArch::Mips64 => { + Self::Mips(MipsInlineAsmReg::parse(name)?) + } +@@ -403,6 +411,7 @@ pub fn validate( + Self::LoongArch(r) => { + r.validate(arch, reloc_model, target_features, target, is_clobber) + } ++ Self::Sw64(r) => r.validate(arch, reloc_model, target_features, target, is_clobber), + Self::Mips(r) => r.validate(arch, reloc_model, target_features, target, is_clobber), + Self::S390x(r) => r.validate(arch, reloc_model, target_features, target, is_clobber), + Self::Sparc(r) => r.validate(arch, reloc_model, target_features, target, is_clobber), +@@ -431,6 +440,7 @@ pub fn emit( + Self::PowerPC(r) => r.emit(out, arch, modifier), + Self::Hexagon(r) => r.emit(out, arch, modifier), + Self::LoongArch(r) => r.emit(out, arch, modifier), ++ Self::Sw64(r) => r.emit(out, arch, modifier), + Self::Mips(r) => r.emit(out, arch, modifier), + Self::S390x(r) => r.emit(out, arch, modifier), + Self::Sparc(r) => r.emit(out, arch, modifier), +@@ -452,6 +462,7 @@ pub fn overlapping_regs(self, mut cb: impl FnMut(InlineAsmReg)) { + Self::PowerPC(r) => r.overlapping_regs(|r| cb(Self::PowerPC(r))), + Self::Hexagon(r) => r.overlapping_regs(|r| cb(Self::Hexagon(r))), + Self::LoongArch(_) => cb(self), ++ Self::Sw64(_) => cb(self), + Self::Mips(_) => cb(self), + Self::S390x(r) => r.overlapping_regs(|r| cb(Self::S390x(r))), + Self::Sparc(_) => cb(self), +@@ -476,6 +487,7 @@ pub enum InlineAsmRegClass { + PowerPC(PowerPCInlineAsmRegClass), + Hexagon(HexagonInlineAsmRegClass), + LoongArch(LoongArchInlineAsmRegClass), ++ Sw64(Sw64InlineAsmRegClass), + Mips(MipsInlineAsmRegClass), + S390x(S390xInlineAsmRegClass), + Sparc(SparcInlineAsmRegClass), +@@ -501,6 +513,7 @@ pub fn name(self) -> Symbol { + Self::PowerPC(r) => r.name(), + Self::Hexagon(r) => r.name(), + Self::LoongArch(r) => r.name(), ++ Self::Sw64(r) => r.name(), + Self::Mips(r) => r.name(), + Self::S390x(r) => r.name(), + Self::Sparc(r) => r.name(), +@@ -529,6 +542,7 @@ pub fn suggest_class(self, arch: InlineAsmArch, ty: InlineAsmType) -> Option r.suggest_class(arch, ty).map(InlineAsmRegClass::Hexagon), + Self::LoongArch(r) => r.suggest_class(arch, ty).map(InlineAsmRegClass::LoongArch), + Self::Mips(r) => r.suggest_class(arch, ty).map(InlineAsmRegClass::Mips), ++ Self::Sw64(r) => r.suggest_class(arch, ty).map(InlineAsmRegClass::Sw64), + Self::S390x(r) => r.suggest_class(arch, ty).map(InlineAsmRegClass::S390x), + Self::Sparc(r) => r.suggest_class(arch, ty).map(InlineAsmRegClass::Sparc), + Self::SpirV(r) => r.suggest_class(arch, ty).map(InlineAsmRegClass::SpirV), +@@ -558,6 +572,7 @@ pub fn suggest_modifier(self, arch: InlineAsmArch, ty: InlineAsmType) -> Option< + Self::PowerPC(r) => r.suggest_modifier(arch, ty), + Self::Hexagon(r) => r.suggest_modifier(arch, ty), + Self::LoongArch(r) => r.suggest_modifier(arch, ty), ++ Self::Sw64(r) => r.suggest_modifier(arch, ty), + Self::Mips(r) => r.suggest_modifier(arch, ty), + Self::S390x(r) => r.suggest_modifier(arch, ty), + Self::Sparc(r) => r.suggest_modifier(arch, ty), +@@ -588,6 +603,7 @@ pub fn default_modifier(self, arch: InlineAsmArch) -> Option { + Self::PowerPC(r) => r.default_modifier(arch), + Self::Hexagon(r) => r.default_modifier(arch), + Self::LoongArch(r) => r.default_modifier(arch), ++ Self::Sw64(r) => r.default_modifier(arch), + Self::Mips(r) => r.default_modifier(arch), + Self::S390x(r) => r.default_modifier(arch), + Self::Sparc(r) => r.default_modifier(arch), +@@ -621,6 +637,7 @@ pub fn supported_types( + Self::PowerPC(r) => r.supported_types(arch), + Self::Hexagon(r) => r.supported_types(arch), + Self::LoongArch(r) => r.supported_types(arch), ++ Self::Sw64(r) => r.supported_types(arch), + Self::Mips(r) => r.supported_types(arch), + Self::S390x(r) => r.supported_types(arch, allow_experimental_reg), + Self::Sparc(r) => r.supported_types(arch), +@@ -653,6 +670,7 @@ pub fn parse(arch: InlineAsmArch, name: Symbol) -> Result Self::Hexagon(HexagonInlineAsmRegClass::parse(name)?), + InlineAsmArch::LoongArch64 => Self::LoongArch(LoongArchInlineAsmRegClass::parse(name)?), ++ InlineAsmArch::Sw64 => Self::Sw64(Sw64InlineAsmRegClass::parse(name)?), + InlineAsmArch::Mips | InlineAsmArch::Mips64 => { + Self::Mips(MipsInlineAsmRegClass::parse(name)?) + } +@@ -684,6 +702,7 @@ pub fn valid_modifiers(self, arch: InlineAsmArch) -> &'static [char] { + Self::PowerPC(r) => r.valid_modifiers(arch), + Self::Hexagon(r) => r.valid_modifiers(arch), + Self::LoongArch(r) => r.valid_modifiers(arch), ++ Self::Sw64(r) => r.valid_modifiers(arch), + Self::Mips(r) => r.valid_modifiers(arch), + Self::S390x(r) => r.valid_modifiers(arch), + Self::Sparc(r) => r.valid_modifiers(arch), +@@ -865,6 +884,11 @@ pub fn allocatable_registers( + loongarch::fill_reg_map(arch, reloc_model, target_features, target, &mut map); + map + } ++ InlineAsmArch::Sw64 => { ++ let mut map = sw64::regclass_map(); ++ sw64::fill_reg_map(arch, reloc_model, target_features, target, &mut map); ++ map ++ } + InlineAsmArch::Mips | InlineAsmArch::Mips64 => { + let mut map = mips::regclass_map(); + mips::fill_reg_map(arch, reloc_model, target_features, target, &mut map); +diff --git a/compiler/rustc_target/src/asm/sw64.rs b/compiler/rustc_target/src/asm/sw64.rs +new file mode 100644 +index 00000000000..98060af2544 +--- /dev/null ++++ b/compiler/rustc_target/src/asm/sw64.rs +@@ -0,0 +1,129 @@ ++use super::{InlineAsmArch, InlineAsmType, ModifierInfo}; ++ ++use rustc_span::Symbol; ++ ++use std::fmt; ++ ++def_reg_class! { ++ Sw64 Sw64InlineAsmRegClass { ++ reg, ++ freg, ++ } ++} ++ ++impl Sw64InlineAsmRegClass { ++ pub fn valid_modifiers(self, _arch: super::InlineAsmArch) -> &'static [char] { ++ &[] ++ } ++ ++ pub fn suggest_class(self, _arch: InlineAsmArch, _ty: InlineAsmType) -> Option { ++ None ++ } ++ ++ pub fn suggest_modifier( ++ self, ++ _arch: InlineAsmArch, ++ _ty: InlineAsmType, ++ ) -> Option { ++ None ++ } ++ ++ pub fn default_modifier(self, _arch: InlineAsmArch) -> Option { ++ None ++ } ++ ++ pub fn supported_types( ++ self, ++ arch: InlineAsmArch, ++ ) -> &'static [(InlineAsmType, Option)] { ++ match (self, arch) { ++ (Self::reg, InlineAsmArch::Sw64) => types! { _: I8, I16, I32, I64, F32, F64; }, ++ (Self::reg, _) => types! { _: I8, I16, I32, F32; }, ++ (Self::freg, _) => types! { _: F32, F64; }, ++ } ++ } ++} ++ ++// The reserved registers are somewhat taken from . ++def_regs! { ++ Sw64 Sw64InlineAsmReg Sw64InlineAsmRegClass { ++ r1: reg = ["$1"], ++ r2: reg = ["$2"], ++ r3: reg = ["$3"], ++ r4: reg = ["$4"], ++ r5: reg = ["$5"], ++ r6: reg = ["$6"], ++ r7: reg = ["$7"], ++ r8: reg = ["$8"], ++ r9: reg = ["$9"], ++ r10: reg = ["$10"], ++ r11: reg = ["$11"], ++ r12: reg = ["$12"], ++ r13: reg = ["$13"], ++ r14: reg = ["$14"], ++ r16: reg = ["$16"], ++ r17: reg = ["$17"], ++ r18: reg = ["$18"], ++ r19: reg = ["$19"], ++ r20: reg = ["$20"], ++ r21: reg = ["$21"], ++ r22: reg = ["$22"], ++ r23: reg = ["$23"], ++ r24: reg = ["$24"], ++ r25: reg = ["$25"], ++ r27: reg = ["$27"], ++ r28: reg = ["$28"], ++ r31: reg = ["$31"], ++ f0: freg = ["$f0"], ++ f1: freg = ["$f1"], ++ f2: freg = ["$f2"], ++ f3: freg = ["$f3"], ++ f4: freg = ["$f4"], ++ f5: freg = ["$f5"], ++ f6: freg = ["$f6"], ++ f7: freg = ["$f7"], ++ f8: freg = ["$f8"], ++ f9: freg = ["$f9"], ++ f10: freg = ["$f10"], ++ f11: freg = ["$f11"], ++ f12: freg = ["$f12"], ++ f13: freg = ["$f13"], ++ f14: freg = ["$f14"], ++ f15: freg = ["$f15"], ++ f16: freg = ["$f16"], ++ f17: freg = ["$f17"], ++ f18: freg = ["$f18"], ++ f19: freg = ["$f19"], ++ f20: freg = ["$f20"], ++ f21: freg = ["$f21"], ++ f22: freg = ["$f22"], ++ f23: freg = ["$f23"], ++ f24: freg = ["$f24"], ++ f25: freg = ["$f25"], ++ f26: freg = ["$f26"], ++ f27: freg = ["$f27"], ++ f28: freg = ["$f28"], ++ f29: freg = ["$f29"], ++ f30: freg = ["$f30"], ++ f31: freg = ["$f31"], ++ #error = ["$15"] => ++ "the frame pointer cannot be used as an operand for inline asm", ++ #error = ["$26"] => ++ "the return address register cannot be used as an operand for inline asm", ++ #error = ["$29"] => ++ "the global pointer cannot be used as an operand for inline asm", ++ #error = ["$30"] => ++ "the stack pointer cannot be used as an operand for inline asm", ++ } ++} ++ ++impl Sw64InlineAsmReg { ++ pub fn emit( ++ self, ++ out: &mut dyn fmt::Write, ++ _arch: InlineAsmArch, ++ _modifier: Option, ++ ) -> fmt::Result { ++ out.write_str(self.name()) ++ } ++} +diff --git a/compiler/rustc_target/src/callconv/mod.rs b/compiler/rustc_target/src/callconv/mod.rs +index 2bde1055622..a9c8e721b7a 100644 +--- a/compiler/rustc_target/src/callconv/mod.rs ++++ b/compiler/rustc_target/src/callconv/mod.rs +@@ -28,6 +28,7 @@ + mod s390x; + mod sparc; + mod sparc64; ++mod sw64; + mod wasm; + mod x86; + mod x86_64; +@@ -686,6 +687,7 @@ pub fn adjust_for_foreign_abi(&mut self, cx: &C, abi: ExternAbi) + "msp430" => msp430::compute_abi_info(self), + "sparc" => sparc::compute_abi_info(cx, self), + "sparc64" => sparc64::compute_abi_info(cx, self), ++ "sw64" => sw64::compute_abi_info(cx, self), + "nvptx64" => { + let abi = cx.target_spec().adjust_abi(abi, self.c_variadic); + if abi == ExternAbi::PtxKernel || abi == ExternAbi::GpuKernel { +diff --git a/compiler/rustc_target/src/callconv/sw64.rs b/compiler/rustc_target/src/callconv/sw64.rs +new file mode 100644 +index 00000000000..cfdd277fc5c +--- /dev/null ++++ b/compiler/rustc_target/src/callconv/sw64.rs +@@ -0,0 +1,78 @@ ++use rustc_abi::{ ++ BackendRepr, FieldsShape, HasDataLayout, Primitive, Reg, TyAbiInterface, ++}; ++ ++use crate::callconv::{ ++ ArgAbi, ArgExtension, FnAbi, PassMode, Uniform, ++}; ++ ++fn extend_integer_width_sw64(arg: &mut ArgAbi<'_, Ty>, bits: u64) { ++ // Always sign extend u32 values on 64-bit sw64 ++ if let BackendRepr::Scalar(scalar) = arg.layout.backend_repr { ++ if let Primitive::Int(i, signed) = scalar.primitive() { ++ if !signed && i.size().bits() == 32 { ++ if let PassMode::Direct(ref mut attrs) = arg.mode { ++ attrs.ext(ArgExtension::Sext); ++ return; ++ } ++ } ++ } ++ } ++ ++ arg.extend_integer_width_to(bits); ++} ++ ++fn classify_ret<'a, Ty, C>(_cx: &C, ret: &mut ArgAbi<'a, Ty>) ++where ++ Ty: TyAbiInterface<'a, C> + Copy, ++ C: HasDataLayout, ++{ ++ if !ret.layout.is_aggregate() && ret.layout.size.bits() <= 64 { ++ extend_integer_width_sw64(ret, 64); ++ return; ++ } else { ++ ret.make_indirect(); ++ } ++} ++ ++fn classify_arg<'a, Ty, C>(_cx: &C, arg: &mut ArgAbi<'a, Ty>) ++where ++ Ty: TyAbiInterface<'a, C> + Copy, ++ C: HasDataLayout, ++{ ++ if !arg.layout.is_aggregate() { ++ extend_integer_width_sw64(arg, 64); ++ return; ++ } ++ ++ let size = arg.layout.size; ++ ++ match arg.layout.fields { ++ FieldsShape::Primitive => unreachable!(), ++ FieldsShape::Array { .. } => { ++ // Arrays are passed indirectly ++ arg.make_indirect(); ++ return; ++ } ++ _ => {} ++ }; ++ ++ arg.cast_to(Uniform::new(Reg::i64(), size)); ++} ++ ++pub(crate) fn compute_abi_info<'a, Ty, C>(cx: &C, fn_abi: &mut FnAbi<'a, Ty>) ++where ++ Ty: TyAbiInterface<'a, C> + Copy, ++ C: HasDataLayout, ++{ ++ if !fn_abi.ret.is_ignore() { ++ classify_ret(cx, &mut fn_abi.ret); ++ } ++ ++ for arg in &mut fn_abi.args.iter_mut() { ++ if arg.is_ignore() { ++ continue; ++ } ++ classify_arg(cx, arg); ++ } ++} +diff --git a/compiler/rustc_target/src/spec/mod.rs b/compiler/rustc_target/src/spec/mod.rs +index 794d6457cb7..6c8e29ae105 100644 +--- a/compiler/rustc_target/src/spec/mod.rs ++++ b/compiler/rustc_target/src/spec/mod.rs +@@ -1690,6 +1690,7 @@ fn $module() { + ("mipsisa64r6-unknown-linux-gnuabi64", mipsisa64r6_unknown_linux_gnuabi64), + ("mipsisa64r6el-unknown-linux-gnuabi64", mipsisa64r6el_unknown_linux_gnuabi64), + ("mipsel-unknown-linux-gnu", mipsel_unknown_linux_gnu), ++ ("sw_64-sunway-linux-gnu", sw_64_sunway_linux_gnu), + ("powerpc-unknown-linux-gnu", powerpc_unknown_linux_gnu), + ("powerpc-unknown-linux-gnuspe", powerpc_unknown_linux_gnuspe), + ("powerpc-unknown-linux-musl", powerpc_unknown_linux_musl), +diff --git a/compiler/rustc_target/src/spec/targets/sw_64_sunway_linux_gnu.rs b/compiler/rustc_target/src/spec/targets/sw_64_sunway_linux_gnu.rs +new file mode 100644 +index 00000000000..c1854d65085 +--- /dev/null ++++ b/compiler/rustc_target/src/spec/targets/sw_64_sunway_linux_gnu.rs +@@ -0,0 +1,26 @@ ++use crate::spec::{base, Target, TargetOptions}; ++ ++pub(crate) fn target() -> Target { ++ Target { ++ llvm_target: "sw_64-sunway-linux-gnu".into(), ++ metadata: crate::spec::TargetMetadata { ++ description: Some("SW64 Linux".into()), ++ tier: Some(3), ++ host_tools: Some(true), ++ std: Some(true), ++ }, ++ pointer_width: 64, ++ data_layout: "e-m:e-p:64:64-i8:8:32-i16:16:32-i64:64-i128:128-n64-S128-v256:256".into(), ++ arch: "sw64".into(), ++ options: TargetOptions { ++ os: "linux".into(), ++ env: "gnu".into(), ++ vendor: "sunway".into(), ++ cpu: "sw_64".into(), ++ max_atomic_width: Some(64), ++ crt_static_default: false, ++ ++ ..base::linux_gnu::opts() ++ }, ++ } ++} +diff --git a/compiler/rustc_target/src/target_features.rs b/compiler/rustc_target/src/target_features.rs +index bb41d03e87f..bfbfcd93b24 100644 +--- a/compiler/rustc_target/src/target_features.rs ++++ b/compiler/rustc_target/src/target_features.rs +@@ -637,6 +637,11 @@ pub fn toggle_allowed(&self) -> Result<(), &'static str> { + // tidy-alphabetical-end + ]; + ++const SW64_FEATURES: &[(&str, Stability, ImpliedFeatures)] = &[ ++ // tidy-alphabetical-start ++ // tidy-alphabetical-end ++]; ++ + /// When rustdoc is running, provide a list of all known features so that all their respective + /// primitives may be documented. + /// +@@ -657,6 +662,7 @@ pub fn all_rust_features() -> impl Iterator { + .chain(IBMZ_FEATURES) + .chain(SPARC_FEATURES) + .chain(M68K_FEATURES) ++ .chain(SW64_FEATURES) + .cloned() + .map(|(f, s, _)| (f, s)) + } +@@ -711,6 +717,7 @@ pub fn rust_target_features(&self) -> &'static [(&'static str, Stability, Implie + "s390x" => IBMZ_FEATURES, + "sparc" | "sparc64" => SPARC_FEATURES, + "m68k" => M68K_FEATURES, ++ "sw64" => SW64_FEATURES, + _ => &[], + } + } +diff --git a/config.example.toml b/config.example.toml +index f5395375afe..808cb43710a 100644 +--- a/config.example.toml ++++ b/config.example.toml +@@ -104,7 +104,7 @@ + # the resulting rustc being unable to compile for the disabled architectures. + # + # To add support for new targets, see https://rustc-dev-guide.rust-lang.org/building/new-target.html. +-#targets = "AArch64;AMDGPU;ARM;BPF;Hexagon;LoongArch;MSP430;Mips;NVPTX;PowerPC;RISCV;Sparc;SystemZ;WebAssembly;X86" ++#targets = "AArch64;AMDGPU;ARM;BPF;Hexagon;LoongArch;MSP430;Mips;NVPTX;PowerPC;RISCV;Sparc;Sw64;SystemZ;WebAssembly;X86" + + # LLVM experimental targets to build support for. These targets are specified in + # the same format as above, but since these targets are experimental, they are +diff --git a/library/core/Cargo.toml b/library/core/Cargo.toml +index b7c6db6c78d..921e881b349 100644 +--- a/library/core/Cargo.toml ++++ b/library/core/Cargo.toml +@@ -31,6 +31,7 @@ check-cfg = [ + 'cfg(no_fp_fmt_parse)', + 'cfg(stdarch_intel_sde)', + 'cfg(target_arch, values("xtensa"))', ++ 'cfg(target_arch, values("sw64"))', + # core use #[path] imports to portable-simd `core_simd` crate + # and to stdarch `core_arch` crate which messes-up with Cargo list + # of declared features, we therefor expect any feature cfg +diff --git a/library/core/src/ffi/va_list.rs b/library/core/src/ffi/va_list.rs +index cceb186b31e..47e6258eedf 100644 +--- a/library/core/src/ffi/va_list.rs ++++ b/library/core/src/ffi/va_list.rs +@@ -16,6 +16,7 @@ + not(target_arch = "powerpc"), + not(target_arch = "s390x"), + not(target_arch = "xtensa"), ++ not(target_arch = "sw64"), + not(target_arch = "x86_64") + ), + all(target_arch = "aarch64", target_vendor = "apple"), +@@ -39,6 +40,7 @@ pub struct VaListImpl<'f> { + not(target_arch = "powerpc"), + not(target_arch = "s390x"), + not(target_arch = "xtensa"), ++ not(target_arch = "sw64"), + not(target_arch = "x86_64") + ), + all(target_arch = "aarch64", target_vendor = "apple"), +@@ -102,6 +104,17 @@ pub struct VaListImpl<'f> { + _marker: PhantomData<&'f mut &'f c_void>, + } + ++/// sw64 ABI implementation of a `va_list`. ++#[cfg(target_arch = "sw64")] ++#[cfg_attr(not(doc), repr(C))] // work around https://github.com/rust-lang/rust/issues/66401 ++#[derive(Debug)] ++#[lang = "va_list"] ++pub struct VaListImpl<'f> { ++ stack: *mut c_void, ++ offs: i32, ++ _marker: PhantomData<&'f mut &'f c_void>, ++} ++ + /// x86_64 ABI implementation of a `va_list`. + #[cfg(all(target_arch = "x86_64", not(target_os = "uefi"), not(windows)))] + #[cfg_attr(not(doc), repr(C))] // work around https://github.com/rust-lang/rust/issues/66401 +diff --git a/library/core/src/sync/atomic.rs b/library/core/src/sync/atomic.rs +index 73180bde54a..0d4068465d0 100644 +--- a/library/core/src/sync/atomic.rs ++++ b/library/core/src/sync/atomic.rs +@@ -255,7 +255,8 @@ + // atomic-and instructions but don't natively support byte-sized atomics. + #[cfg(target_has_atomic = "8")] + const EMULATE_ATOMIC_BOOL: bool = +- cfg!(any(target_arch = "riscv32", target_arch = "riscv64", target_arch = "loongarch64")); ++ cfg!(any(target_arch = "riscv32", target_arch = "riscv64", target_arch = "loongarch64", ++ target_arch = "sw64")); + + /// A boolean type which can be safely shared between threads. + /// +diff --git a/library/std/build.rs b/library/std/build.rs +index 8dc326a3dde..aae1657d4d1 100644 +--- a/library/std/build.rs ++++ b/library/std/build.rs +@@ -107,6 +107,7 @@ fn main() { + ("csky", _) => false, + ("hexagon", _) => false, + ("loongarch64", _) => false, ++ ("sw64", _) => false, + ("mips" | "mips64" | "mips32r6" | "mips64r6", _) => false, + ("powerpc" | "powerpc64", _) => false, + ("sparc" | "sparc64", _) => false, +@@ -124,6 +125,7 @@ fn main() { + ("arm64ec", _) => false, + // Selection bug + ("mips64" | "mips64r6", _) => false, ++ ("sw64", _) => false, + // Selection bug + ("nvptx64", _) => false, + // ABI bugs et al. (full +diff --git a/library/std/src/env.rs b/library/std/src/env.rs +index adbd6889624..9648025659c 100644 +--- a/library/std/src/env.rs ++++ b/library/std/src/env.rs +@@ -976,6 +976,7 @@ pub mod consts { + /// * `"sparc64"` + /// * `"hexagon"` + /// * `"loongarch64"` ++ /// * `"sw64"` + /// + /// + #[stable(feature = "env", since = "1.0.0")] +diff --git a/library/std/src/os/linux/raw.rs b/library/std/src/os/linux/raw.rs +index d53674d3c5f..9e642bf19fe 100644 +--- a/library/std/src/os/linux/raw.rs ++++ b/library/std/src/os/linux/raw.rs +@@ -234,6 +234,7 @@ pub struct stat { + target_arch = "loongarch64", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "s390x", + target_arch = "sparc64", + target_arch = "riscv64", +diff --git a/library/std/src/sync/mpmc/utils.rs b/library/std/src/sync/mpmc/utils.rs +index 0cbc61160f7..33213b302de 100644 +--- a/library/std/src/sync/mpmc/utils.rs ++++ b/library/std/src/sync/mpmc/utils.rs +@@ -20,7 +20,12 @@ + // Sources: + // - https://github.com/golang/go/blob/3dd58676054223962cd915bb0934d1f9f489d4d2/src/internal/cpu/cpu_ppc64x.go#L9 + #[cfg_attr( +- any(target_arch = "x86_64", target_arch = "aarch64", target_arch = "powerpc64",), ++ any( ++ target_arch = "x86_64", ++ target_arch = "aarch64", ++ target_arch = "powerpc64", ++ target_arch = "sw64", ++ ), + repr(align(128)) + )] + // arm, mips, mips64, and riscv64 have 32-byte cache line size. +@@ -66,6 +71,7 @@ + target_arch = "mips64r6", + target_arch = "riscv64", + target_arch = "s390x", ++ target_arch = "sw64", + )), + repr(align(64)) + )] +diff --git a/library/std/src/sys/alloc/mod.rs b/library/std/src/sys/alloc/mod.rs +index 2c0b533a570..8d8a088c166 100644 +--- a/library/std/src/sys/alloc/mod.rs ++++ b/library/std/src/sys/alloc/mod.rs +@@ -35,6 +35,7 @@ + target_arch = "loongarch64", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "s390x", + target_arch = "sparc64", + target_arch = "riscv64", +diff --git a/library/std/src/sys/personality/gcc.rs b/library/std/src/sys/personality/gcc.rs +index cd2c7899f4b..ec2449bf0a8 100644 +--- a/library/std/src/sys/personality/gcc.rs ++++ b/library/std/src/sys/personality/gcc.rs +@@ -89,6 +89,9 @@ + #[cfg(target_arch = "loongarch64")] + const UNWIND_DATA_REG: (i32, i32) = (4, 5); // a0, a1 + ++#[cfg(target_arch = "sw64")] ++const UNWIND_DATA_REG: (i32, i32) = (16, 17); // R16, R17 ++ + // The following code is based on GCC's C and C++ personality routines. For reference, see: + // https://github.com/gcc-mirror/gcc/blob/master/libstdc++-v3/libsupc++/eh_personality.cc + // https://github.com/gcc-mirror/gcc/blob/trunk/libgcc/unwind-c.c +diff --git a/library/unwind/src/libunwind.rs b/library/unwind/src/libunwind.rs +index 62165f8a200..8e3bbbd65fc 100644 +--- a/library/unwind/src/libunwind.rs ++++ b/library/unwind/src/libunwind.rs +@@ -60,6 +60,9 @@ pub enum _Unwind_Reason_Code { + #[cfg(any(target_arch = "mips64", target_arch = "mips64r6"))] + pub const unwinder_private_data_size: usize = 2; + ++#[cfg(target_arch = "sw64")] ++pub const unwinder_private_data_size: usize = 2; ++ + #[cfg(any(target_arch = "powerpc", target_arch = "powerpc64"))] + pub const unwinder_private_data_size: usize = 2; + +diff --git a/src/bootstrap/bootstrap.py b/src/bootstrap/bootstrap.py +index 01a9792f1b3..72326209ea1 100644 +--- a/src/bootstrap/bootstrap.py ++++ b/src/bootstrap/bootstrap.py +@@ -451,6 +451,8 @@ def default_build_triple(verbose): + kernel += "abi64" + elif cputype == "sparc" or cputype == "sparcv9" or cputype == "sparc64": + pass ++ elif cputype == 'sw_64': ++ pass + else: + err = "unknown cpu type: {}".format(cputype) + sys.exit(err) +diff --git a/src/bootstrap/src/core/build_steps/llvm.rs b/src/bootstrap/src/core/build_steps/llvm.rs +index 18da0e8252b..f7a3d31e799 100644 +--- a/src/bootstrap/src/core/build_steps/llvm.rs ++++ b/src/bootstrap/src/core/build_steps/llvm.rs +@@ -354,7 +354,7 @@ fn run(self, builder: &Builder<'_>) -> LlvmResult { + Some(s) => s, + None => { + "AArch64;AMDGPU;ARM;BPF;Hexagon;LoongArch;MSP430;Mips;NVPTX;PowerPC;RISCV;\ +- Sparc;SystemZ;WebAssembly;X86" ++ Sparc;Sw64;SystemZ;WebAssembly;X86" + } + }; + +diff --git a/src/doc/rustc/src/platform-support.md b/src/doc/rustc/src/platform-support.md +index b5cd3864620..5b4a90a3d6e 100644 +--- a/src/doc/rustc/src/platform-support.md ++++ b/src/doc/rustc/src/platform-support.md +@@ -182,6 +182,7 @@ target | std | notes + `riscv64imac-unknown-none-elf` | * | Bare RISC-V (RV64IMAC ISA) + `sparc64-unknown-linux-gnu` | ✓ | SPARC Linux (kernel 4.4, glibc 2.23) + [`sparcv9-sun-solaris`](platform-support/solaris.md) | ✓ | SPARC V9 Solaris 11.4 ++`sw_64-sunway-linux-gnu` | ✓ | sw_64 Linux (kernel 4.4, glibc 2.23) + [`thumbv6m-none-eabi`](platform-support/thumbv6m-none-eabi.md) | * | Bare Armv6-M + [`thumbv7em-none-eabi`](platform-support/thumbv7em-none-eabi.md) | * | Bare Armv7E-M + [`thumbv7em-none-eabihf`](platform-support/thumbv7em-none-eabi.md) | * | Bare Armv7E-M, hardfloat +diff --git a/src/llvm-project b/src/llvm-project +index 7e8c93c87c6..89c907af3cc 160000 +--- a/src/llvm-project ++++ b/src/llvm-project +@@ -1 +1 @@ +-Subproject commit 7e8c93c87c611f21d9bd95100563392f4c18bfe7 ++Subproject commit 89c907af3cc89f859431c518795ad98a4e330dce +diff --git a/src/tools/build-manifest/src/main.rs b/src/tools/build-manifest/src/main.rs +index cd5ca74f8ad..b46fb4d17c3 100644 +--- a/src/tools/build-manifest/src/main.rs ++++ b/src/tools/build-manifest/src/main.rs +@@ -40,6 +40,7 @@ + "powerpc64le-unknown-linux-musl", + "riscv64gc-unknown-linux-gnu", + "s390x-unknown-linux-gnu", ++ "sw_64-sunway-linux-gnu", + "x86_64-apple-darwin", + "x86_64-pc-windows-gnu", + "x86_64-pc-windows-msvc", +@@ -154,6 +155,7 @@ + "sparc64-unknown-linux-gnu", + "sparcv9-sun-solaris", + "sparc-unknown-none-elf", ++ "sw_64-sunway-linux-gnu", + "thumbv6m-none-eabi", + "thumbv7em-none-eabi", + "thumbv7em-none-eabihf", +diff --git a/tests/ui/check-cfg/well-known-values.stderr b/tests/ui/check-cfg/well-known-values.stderr +index ba1900fcddb..dbf68d7d425 100644 +--- a/tests/ui/check-cfg/well-known-values.stderr ++++ b/tests/ui/check-cfg/well-known-values.stderr +@@ -138,7 +138,7 @@ warning: unexpected `cfg` condition value: `_UNEXPECTED_VALUE` + LL | target_arch = "_UNEXPECTED_VALUE", + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | +- = note: expected values for `target_arch` are: `aarch64`, `amdgpu`, `arm`, `arm64ec`, `avr`, `bpf`, `csky`, `hexagon`, `loongarch64`, `m68k`, `mips`, `mips32r6`, `mips64`, `mips64r6`, `msp430`, `nvptx64`, `powerpc`, `powerpc64`, `riscv32`, `riscv64`, `s390x`, `sparc`, `sparc64`, `wasm32`, `wasm64`, `x86`, `x86_64`, and `xtensa` ++ = note: expected values for `target_arch` are: `aarch64`, `amdgpu`, `arm`, `arm64ec`, `avr`, `bpf`, `csky`, `hexagon`, `loongarch64`, `m68k`, `mips`, `mips32r6`, `mips64`, `mips64r6`, `msp430`, `nvptx64`, `powerpc`, `powerpc64`, `riscv32`, `riscv64`, `s390x`, `sparc`, `sparc64`, `sw64`, `wasm32`, `wasm64`, `x86`, `x86_64`, and `xtensa` + = note: see for more information about checking conditional configuration + + warning: unexpected `cfg` condition value: `_UNEXPECTED_VALUE` +@@ -230,7 +230,7 @@ warning: unexpected `cfg` condition value: `_UNEXPECTED_VALUE` + LL | target_vendor = "_UNEXPECTED_VALUE", + | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ + | +- = note: expected values for `target_vendor` are: `amd`, `apple`, `espressif`, `fortanix`, `ibm`, `kmc`, `mti`, `nintendo`, `nvidia`, `pc`, `risc0`, `sony`, `sun`, `unikraft`, `unknown`, `uwp`, `win7`, and `wrs` ++ = note: expected values for `target_vendor` are: `amd`, `apple`, `espressif`, `fortanix`, `ibm`, `kmc`, `mti`, `nintendo`, `nvidia`, `pc`, `risc0`, `sony`, `sun`, `sunway`, `unikraft`, `unknown`, `uwp`, `win7`, and `wrs` + = note: see for more information about checking conditional configuration + + warning: unexpected `cfg` condition value: `_UNEXPECTED_VALUE` +diff --git a/vendor/compiler_builtins-0.1.146/src/float/conv.rs b/vendor/compiler_builtins-0.1.146/src/float/conv.rs +index 4f52ac7120d..ec213a33298 100644 +--- a/vendor/compiler_builtins-0.1.146/src/float/conv.rs ++++ b/vendor/compiler_builtins-0.1.146/src/float/conv.rs +@@ -230,12 +230,16 @@ pub extern "C" fn __floatundidf(i: u64) -> f64 { + f64::from_bits(int_to_float::u64_to_f64_bits(i)) + } + +- #[cfg_attr(target_os = "uefi", unadjusted_on_win64)] ++ #[cfg_attr(all(target_os = "uefi", not(target_arch = "sw64")) ++ , unadjusted_on_win64)] ++ #[unadjusted_on_sw64] + pub extern "C" fn __floatuntisf(i: u128) -> f32 { + f32::from_bits(int_to_float::u128_to_f32_bits(i)) + } + +- #[cfg_attr(target_os = "uefi", unadjusted_on_win64)] ++ #[cfg_attr(all(target_os = "uefi", not(target_arch = "sw64")) ++ , unadjusted_on_win64)] ++ #[unadjusted_on_sw64] + pub extern "C" fn __floatuntidf(i: u128) -> f64 { + f64::from_bits(int_to_float::u128_to_f64_bits(i)) + } +@@ -281,12 +285,16 @@ pub extern "C" fn __floatdidf(i: i64) -> f64 { + int_to_float::signed(i, int_to_float::u64_to_f64_bits) + } + +- #[cfg_attr(target_os = "uefi", unadjusted_on_win64)] ++ #[cfg_attr(all(target_os = "uefi", not(target_arch = "sw64")) ++ , unadjusted_on_win64)] ++ #[unadjusted_on_sw64] + pub extern "C" fn __floattisf(i: i128) -> f32 { + int_to_float::signed(i, int_to_float::u128_to_f32_bits) + } + +- #[cfg_attr(target_os = "uefi", unadjusted_on_win64)] ++ #[cfg_attr(all(target_os = "uefi", not(target_arch = "sw64")) ++ , unadjusted_on_win64)] ++ #[unadjusted_on_sw64] + pub extern "C" fn __floattidf(i: i128) -> f64 { + int_to_float::signed(i, int_to_float::u128_to_f64_bits) + } +@@ -403,7 +411,8 @@ pub extern "C" fn __fixunssfdi(f: f32) -> u64 { + float_to_unsigned_int(f) + } + +- #[win64_128bit_abi_hack] ++ #[cfg_attr(not(target_arch = "sw64"), win64_128bit_abi_hack)] ++ #[unadjusted_on_sw64] + pub extern "C" fn __fixunssfti(f: f32) -> u128 { + float_to_unsigned_int(f) + } +@@ -418,7 +427,8 @@ pub extern "C" fn __fixunsdfdi(f: f64) -> u64 { + float_to_unsigned_int(f) + } + +- #[win64_128bit_abi_hack] ++ #[cfg_attr(not(target_arch = "sw64"), win64_128bit_abi_hack)] ++ #[unadjusted_on_sw64] + pub extern "C" fn __fixunsdfti(f: f64) -> u128 { + float_to_unsigned_int(f) + } +@@ -454,7 +464,8 @@ pub extern "C" fn __fixsfdi(f: f32) -> i64 { + float_to_signed_int(f) + } + +- #[win64_128bit_abi_hack] ++ #[cfg_attr(not(target_arch = "sw64"), win64_128bit_abi_hack)] ++ #[unadjusted_on_sw64] + pub extern "C" fn __fixsfti(f: f32) -> i128 { + float_to_signed_int(f) + } +@@ -469,7 +480,8 @@ pub extern "C" fn __fixdfdi(f: f64) -> i64 { + float_to_signed_int(f) + } + +- #[win64_128bit_abi_hack] ++ #[cfg_attr(not(target_arch = "sw64"), win64_128bit_abi_hack)] ++ #[unadjusted_on_sw64] + pub extern "C" fn __fixdfti(f: f64) -> i128 { + float_to_signed_int(f) + } +diff --git a/vendor/compiler_builtins-0.1.146/src/int/mul.rs b/vendor/compiler_builtins-0.1.146/src/int/mul.rs +index 040c69342d1..5203e74b76e 100644 +--- a/vendor/compiler_builtins-0.1.146/src/int/mul.rs ++++ b/vendor/compiler_builtins-0.1.146/src/int/mul.rs +@@ -121,7 +121,8 @@ pub extern "C" fn __mulodi4(a: i64, b: i64, oflow: &mut i32) -> i64 { + mul + } + +- #[unadjusted_on_win64] ++ #[cfg_attr(not(target_arch = "sw64"), unadjusted_on_win64)] ++ #[unadjusted_on_sw64] + pub extern "C" fn __muloti4(a: i128, b: i128, oflow: &mut i32) -> i128 { + let (mul, o) = i128_overflowing_mul(a, b); + *oflow = o as i32; +diff --git a/vendor/compiler_builtins-0.1.146/src/macros.rs b/vendor/compiler_builtins-0.1.146/src/macros.rs +index f51e49e9876..f0d68730cd7 100644 +--- a/vendor/compiler_builtins-0.1.146/src/macros.rs ++++ b/vendor/compiler_builtins-0.1.146/src/macros.rs +@@ -201,6 +201,36 @@ pub extern "aapcs" fn $name( $($argname: $ty),* ) $(-> $ret)? { + intrinsics!($($rest)*); + ); + ++ // Like aapcs above we recognize an attribute for the "unadjusted" abi on ++ // sw64 for some methods. ++ ( ++ #[unadjusted_on_sw64] ++ $(#[$($attr:tt)*])* ++ pub extern $abi:tt fn $name:ident( $($argname:ident: $ty:ty),* ) $(-> $ret:ty)? { ++ $($body:tt)* ++ } ++ ++ $($rest:tt)* ++ ) => ( ++ #[cfg(target_arch = "sw64")] ++ intrinsics! { ++ $(#[$($attr)*])* ++ pub extern "unadjusted" fn $name( $($argname: $ty),* ) $(-> $ret)? { ++ $($body)* ++ } ++ } ++ ++ #[cfg(not(target_arch = "sw64"))] ++ intrinsics! { ++ $(#[$($attr)*])* ++ pub extern $abi fn $name( $($argname: $ty),* ) $(-> $ret)? { ++ $($body)* ++ } ++ } ++ ++ intrinsics!($($rest)*); ++ ); ++ + // Like aapcs above we recognize an attribute for the "unadjusted" abi on + // win64 for some methods. + ( +diff --git a/vendor/libc-0.2.167/src/unix/linux_like/linux/arch/mod.rs b/vendor/libc-0.2.167/src/unix/linux_like/linux/arch/mod.rs +index 00914a43ac1..0884c11ca44 100644 +--- a/vendor/libc-0.2.167/src/unix/linux_like/linux/arch/mod.rs ++++ b/vendor/libc-0.2.167/src/unix/linux_like/linux/arch/mod.rs +@@ -13,6 +13,9 @@ + } else if #[cfg(any(target_arch = "sparc", target_arch = "sparc64"))] { + mod sparc; + pub use self::sparc::*; ++ } else if #[cfg(any(target_arch = "sw64"))] { ++ mod sw64; ++ pub use self::sw64::*; + } else { + mod generic; + pub use self::generic::*; +diff --git a/vendor/libc-0.2.167/src/unix/linux_like/linux/arch/sw64/mod.rs b/vendor/libc-0.2.167/src/unix/linux_like/linux/arch/sw64/mod.rs +new file mode 100644 +index 00000000000..d4362d5a89f +--- /dev/null ++++ b/vendor/libc-0.2.167/src/unix/linux_like/linux/arch/sw64/mod.rs +@@ -0,0 +1,142 @@ ++use crate::prelude::*; ++use crate::Ioctl; ++ ++ ++// arch/sw64/include/uapi/asm/socket.h ++pub const SOL_SOCKET: c_int = 0xffff; ++ ++pub const SO_REUSEADDR: c_int = 0x0004; ++pub const SO_TYPE: c_int = 0x1008; ++pub const SO_ERROR: c_int = 0x1007; ++pub const SO_DONTROUTE: c_int = 0x0010; ++pub const SO_BROADCAST: c_int = 0x0020; ++pub const SO_SNDBUF: c_int = 0x1001; ++pub const SO_RCVBUF: c_int = 0x1002; ++pub const SO_SNDBUFFORCE: c_int = 0x100a; ++pub const SO_RCVBUFFORCE: c_int = 0x100b; ++pub const SO_KEEPALIVE: c_int = 0x0008; ++pub const SO_OOBINLINE: c_int = 0x0100; ++pub const SO_NO_CHECK: c_int = 11; ++pub const SO_PRIORITY: c_int = 12; ++ ++pub const SO_LINGER: c_int = 0x0080; ++pub const SO_BSDCOMPAT: c_int = 14; ++pub const SO_REUSEPORT: c_int = 0x0200; ++pub const SO_PASSCRED: c_int = 17; ++pub const SO_PEERCRED: c_int = 18; ++pub const SO_RCVLOWAT: c_int = 0x1010; ++pub const SO_SNDLOWAT: c_int = 0x1011; ++pub const SO_RCVTIMEO: c_int = 0x1012; ++pub const SO_SNDTIMEO: c_int = 0x1013; ++ ++pub const SO_SECURITY_AUTHENTICATION: c_int = 19; ++pub const SO_SECURITY_ENCRYPTION_TRANSPORT: c_int = 20; ++pub const SO_SECURITY_ENCRYPTION_NETWORK: c_int = 21; ++pub const SO_BINDTODEVICE: c_int = 25; ++pub const SO_ATTACH_FILTER: c_int = 26; ++pub const SO_DETACH_FILTER: c_int = 27; ++pub const SO_GET_FILTER: c_int = SO_ATTACH_FILTER; ++pub const SO_PEERNAME: c_int = 28; ++pub const SO_TIMESTAMP: c_int = 29; ++pub const SO_ACCEPTCONN: c_int = 0x1014; ++ ++pub const SO_PEERSEC: c_int = 30; ++pub const SO_PASSSEC: c_int = 34; ++pub const SO_TIMESTAMPNS: c_int = 35; ++pub const SCM_TIMESTAMPNS: c_int = SO_TIMESTAMPNS; ++pub const SO_MARK: c_int = 36; ++pub const SO_TIMESTAMPING: c_int = 37; ++pub const SO_PROTOCOL: c_int = 0x1028; ++pub const SO_DOMAIN: c_int = 0x1029; ++pub const SO_RXQ_OVFL: c_int = 40; ++pub const SO_WIFI_STATUS: c_int = 41; ++pub const SCM_WIFI_STATUS: c_int = SO_WIFI_STATUS; ++pub const SO_PEEK_OFF: c_int = 42; ++pub const SO_NOFCS: c_int = 43; ++pub const SO_LOCK_FILTER: c_int = 44; ++pub const SO_SELECT_ERR_QUEUE: c_int = 45; ++pub const SO_BUSY_POLL: c_int = 46; ++pub const SO_MAX_PACING_RATE: c_int = 47; ++pub const SO_BPF_EXTENSIONS: c_int = 48; ++pub const SO_INCOMING_CPU: c_int = 49; ++pub const SO_ATTACH_BPF: c_int = 50; ++pub const SO_DETACH_BPF: c_int = SO_DETACH_FILTER; ++pub const SO_COOKIE: c_int = 57; ++ ++pub const SCM_TIMESTAMPING: c_int = SO_TIMESTAMPING; ++pub const SO_TIMESTAMP_NEW: c_int = 63; ++pub const SO_TIMESTAMPNS_NEW: c_int = 64; ++pub const SO_TIMESTAMPING_NEW: c_int = 65; ++pub const SO_RCVTIMEO_NEW: c_int = 66; ++pub const SO_SNDTIMEO_NEW: c_int = 67; ++pub const SO_DETACH_REUSEPORT_BPF: c_int = 68; ++ ++// Ioctl Constants ++pub const TCGETS: Ioctl = 0x402c7413; ++pub const TCSETS: Ioctl = 0x802c7414; ++pub const TCSETSW: Ioctl = 0x802c7415; ++pub const TCSETSF: Ioctl = 0x802c7416; ++pub const TCGETA: Ioctl = 0x40127417; ++pub const TCSETA: Ioctl = 0x80127418; ++pub const TCSETAW: Ioctl = 0x80127419; ++pub const TCSETAF: Ioctl = 0x8012741c; ++pub const TCSBRK: Ioctl = 0x2000741d; ++pub const TCSBRKP: Ioctl = 0x5425; ++pub const FIONREAD: Ioctl = 0x4004667f; ++pub const TCXONC: Ioctl = 0x2000741e; ++pub const TCFLSH: Ioctl = 0x2000741f; ++pub const TIOCINQ: Ioctl = FIONREAD; ++ ++pub const TIOCGPGRP: Ioctl = 0x40047477; ++pub const TIOCSPGRP: Ioctl = 0x80047476; ++pub const TIOCOUTQ: Ioctl = 0x40047473; ++pub const TIOCGWINSZ: Ioctl = 0x40087468; ++pub const TIOCSWINSZ: Ioctl = 0x80087467; ++ ++// RLIMIT Constants ++pub const RLIMIT_CPU: crate::__rlimit_resource_t = 0; ++pub const RLIMIT_FSIZE: crate::__rlimit_resource_t = 1; ++pub const RLIMIT_DATA: crate::__rlimit_resource_t = 2; ++pub const RLIMIT_STACK: crate::__rlimit_resource_t = 3; ++pub const RLIMIT_CORE: crate::__rlimit_resource_t = 4; ++pub const RLIMIT_RSS: crate::__rlimit_resource_t = 5; ++pub const RLIMIT_NOFILE: crate::__rlimit_resource_t = 6; ++pub const RLIMIT_AS: crate::__rlimit_resource_t = 7; ++pub const RLIMIT_NPROC: crate::__rlimit_resource_t = 8; ++pub const RLIMIT_MEMLOCK: crate::__rlimit_resource_t = 9; ++pub const RLIMIT_LOCKS: crate::__rlimit_resource_t = 10; ++pub const RLIMIT_SIGPENDING: crate::__rlimit_resource_t = 11; ++pub const RLIMIT_MSGQUEUE: crate::__rlimit_resource_t = 12; ++pub const RLIMIT_NICE: crate::__rlimit_resource_t = 13; ++pub const RLIMIT_RTPRIO: crate::__rlimit_resource_t = 14; ++pub const RLIMIT_RTTIME: crate::__rlimit_resource_t = 15; ++pub const RLIMIT_NLIMITS: crate::__rlimit_resource_t = 16; ++pub const RLIM_NLIMITS: crate::__rlimit_resource_t = RLIMIT_NLIMITS; ++ ++pub const BLKIOMIN: Ioctl = 0x20001278; ++pub const BLKIOOPT: Ioctl = 0x20001279; ++pub const BLKSSZGET: Ioctl = 0x20001268; ++pub const BLKPBSZGET: Ioctl = 0x2000127B; ++pub const FIONCLEX: Ioctl = 0x20006602; ++//pub const IBSHIFT: crate::tcflag_t = 16; ++ ++pub const TIOCM_LE: c_int = 0x1; ++pub const TIOCM_DTR: c_int = 0x002; ++pub const TIOCM_RTS: c_int = 0x004; ++//pub const TIOCM_CAR: c_int = 0x040; ++pub const TIOCM_CD: c_int = 0x040; ++//pub const TIOCM_RNG: c_int = 0x80; ++pub const TIOCM_RI: c_int = 0x80; ++ ++pub const FS_IOC_GETFLAGS: Ioctl = 0x80086601; ++pub const FS_IOC_SETFLAGS: Ioctl = 0x40086602; ++pub const FS_IOC_GETVERSION: Ioctl = 0x80087601; ++pub const FS_IOC_SETVERSION: Ioctl = 0x40087602; ++pub const FS_IOC32_GETFLAGS: Ioctl = 0x80046601; ++pub const FS_IOC32_SETFLAGS: Ioctl = 0x40046602; ++pub const FS_IOC32_GETVERSION: Ioctl = 0x80047601; ++pub const FS_IOC32_SETVERSION: Ioctl = 0x40047602; ++ ++pub const FICLONE: c_ulong = 0x40049409; ++pub const FICLONERANGE: c_ulong = 0x4020940D; ++pub const RLIM_INFINITY: crate::rlim_t = !0; +diff --git a/vendor/libc-0.2.167/src/unix/linux_like/linux/gnu/b64/mod.rs b/vendor/libc-0.2.167/src/unix/linux_like/linux/gnu/b64/mod.rs +index fde7a5c6c36..334d29c7e9e 100644 +--- a/vendor/libc-0.2.167/src/unix/linux_like/linux/gnu/b64/mod.rs ++++ b/vendor/libc-0.2.167/src/unix/linux_like/linux/gnu/b64/mod.rs +@@ -4,11 +4,14 @@ + + pub type ino_t = u64; + pub type off_t = i64; ++#[cfg(not(target_arch = "sw64"))] + pub type blkcnt_t = i64; + pub type shmatt_t = u64; + pub type msgqnum_t = u64; + pub type msglen_t = u64; ++#[cfg(not(target_arch = "sw64"))] + pub type fsblkcnt_t = u64; ++#[cfg(not(target_arch = "sw64"))] + pub type fsfilcnt_t = u64; + pub type rlim_t = u64; + #[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))] +@@ -16,11 +19,23 @@ + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "32")))] + pub type __syscall_ulong_t = c_ulong; + ++#[cfg(target_arch = "sw64")] ++pub type blkcnt_t = u32; ++#[cfg(target_arch = "sw64")] ++pub type fsblkcnt_t = i32; ++#[cfg(target_arch = "sw64")] ++pub type fsfilcnt_t = u32; ++ ++ + cfg_if! { + if #[cfg(all(target_arch = "aarch64", target_pointer_width = "32"))] { + pub type clock_t = i32; + pub type time_t = i32; + pub type __fsword_t = i32; ++ } else if #[cfg(target_arch = "sw64")] { ++ pub type clock_t = i64; ++ pub type time_t = i64; ++ pub type __fsword_t = i32; + } else { + pub type __fsword_t = i64; + pub type clock_t = i64; +@@ -77,7 +92,8 @@ pub struct semid_ds { + target_arch = "mips64r6", + target_arch = "powerpc64", + target_arch = "riscv64", +- target_arch = "sparc64" ++ target_arch = "sparc64", ++ target_arch = "sw64" + )))] + __reserved: crate::__syscall_ulong_t, + pub sem_ctime: crate::time_t, +@@ -88,7 +104,8 @@ pub struct semid_ds { + target_arch = "mips64r6", + target_arch = "powerpc64", + target_arch = "riscv64", +- target_arch = "sparc64" ++ target_arch = "sparc64", ++ target_arch = "sw64" + )))] + __reserved2: crate::__syscall_ulong_t, + pub sem_nsems: crate::__syscall_ulong_t, +@@ -126,6 +143,9 @@ pub struct semid_ds { + } else if #[cfg(any(target_arch = "loongarch64"))] { + mod loongarch64; + pub use self::loongarch64::*; ++ } else if #[cfg(target_arch = "sw64")] { ++ mod sw64; ++ pub use self::sw64::*; + } else { + // Unknown target_arch + } +diff --git a/vendor/libc-0.2.167/src/unix/linux_like/linux/gnu/b64/sw64.rs b/vendor/libc-0.2.167/src/unix/linux_like/linux/gnu/b64/sw64.rs +new file mode 100644 +index 00000000000..6f8c71eb676 +--- /dev/null ++++ b/vendor/libc-0.2.167/src/unix/linux_like/linux/gnu/b64/sw64.rs +@@ -0,0 +1,930 @@ ++//! SW64-specific definitions for 64-bit linux-like values ++ ++//use pthread_mutex_t; ++use crate::prelude::*; ++use crate::{off64_t, off_t, pthread_mutex_t}; ++ ++pub type blksize_t = u32; ++pub type c_char = i8; ++pub type c_long = i64; ++pub type c_ulong = u64; ++pub type nlink_t = u32; ++pub type suseconds_t = i64; ++pub type wchar_t = i32; ++pub type __u64 = c_ulong; ++pub type __s64 = c_long; ++ ++s! { ++ pub struct mcontext_t { ++ pub sc_onstack: c_long, ++ pub sc_mask: c_long, ++ pub sc_pc: c_long, ++ pub sc_ps: c_long, ++ pub sc_regs: [c_long; 32], ++ pub sc_ownedfp: c_long, ++ pub sc_fpregs: [c_long; 32], ++ pub fpcr: c_ulong, ++ } ++ ++ pub struct ucontext_t { ++ pub uc_flags: c_ulong, ++ pub uc_link: *mut ucontext_t, ++ pub __uc_odd_sigmask: c_ulong, ++ pub sc_stack: crate::stack_t, ++ pub uc_mcontext: mcontext_t, ++ pub uc_sigmask: crate::sigset_t, ++ } ++ ++ pub struct stat { ++ pub st_dev: crate::dev_t, ++ pub st_ino: crate::ino64_t, ++ pub st_rdev: crate::dev_t, ++ pub st_size: off_t, ++ pub st_blocks: crate::blkcnt_t, ++ __pad1: c_int, ++ ++ pub st_mode: crate::mode_t, ++ pub st_uid: crate::uid_t, ++ pub st_gid: crate::gid_t, ++ pub st_blksize: crate::blksize_t, ++ pub st_nlink: crate::nlink_t, ++ __pad2: c_int, ++ pub st_atime: crate::time_t, ++ pub st_atime_nsec: c_long, ++ pub st_mtime: crate::time_t, ++ pub st_mtime_nsec: c_long, ++ pub st_ctime: crate::time_t, ++ pub st_ctime_nsec: c_long, ++ __glibc_reserved: [c_long; 3], ++ } ++ ++ pub struct stat64 { ++ pub st_dev: crate::dev_t, ++ pub st_ino: crate::ino64_t, ++ pub st_rdev: crate::dev_t, ++ pub st_size: off64_t, ++ pub st_blocks: crate::blkcnt64_t, ++ ++ pub st_mode: crate::mode_t, ++ pub st_uid: crate::uid_t, ++ pub st_gid: crate::gid_t, ++ pub st_blksize: crate::blksize_t, ++ pub st_nlink: crate::nlink_t, ++ __pad0: c_int, ++ ++ pub st_atime: crate::time_t, ++ pub st_atime_nsec: c_long, ++ pub st_mtime: crate::time_t, ++ pub st_mtime_nsec: c_long, ++ pub st_ctime: crate::time_t, ++ pub st_ctime_nsec: c_long, ++ __unused: [c_long; 3], ++ } ++ ++ pub struct statfs64 { ++ pub f_type: c_long, ++ pub f_bsize: c_long, ++ pub f_blocks: c_long, ++ pub f_bfree: c_long, ++ pub f_bavail: c_long, ++ pub f_files: c_ulong, ++ pub f_ffree: c_ulong, ++ pub f_fsid: crate::fsid_t, ++ pub f_namelen: c_long, ++ pub f_frsize: c_long, ++ pub f_flags: c_long, ++ pub f_spare: [c_long; 4], ++ } ++ ++ pub struct statvfs { ++ pub f_bsize: c_ulong, ++ pub f_frsize: c_ulong, ++ pub f_blocks: crate::fsblkcnt_t, ++ pub f_bfree: crate::fsblkcnt_t, ++ pub f_bavail: crate::fsblkcnt_t, ++ pub f_files: crate::fsfilcnt_t, ++ pub f_ffree: crate::fsfilcnt_t, ++ pub f_favail: crate::fsfilcnt_t, ++ pub f_fsid: c_ulong, ++ pub f_flag: c_ulong, ++ pub f_namemax: c_ulong, ++ __f_spare: [c_int; 6], ++ } ++ ++ pub struct statvfs64 { ++ pub f_bsize: c_ulong, ++ pub f_frsize: c_ulong, ++ pub f_blocks: c_long, ++ pub f_bfree: c_long, ++ pub f_bavail: c_long, ++ pub f_files: c_ulong, ++ pub f_ffree: c_ulong, ++ pub f_favail: c_ulong, ++ pub f_fsid: c_ulong, ++ pub f_flag: c_ulong, ++ pub f_namemax: c_ulong, ++ __f_spare: [c_int; 6], ++ } ++ ++ pub struct pthread_attr_t { ++ __size: [c_ulong; 7] ++ } ++ ++ pub struct sigaction { ++ pub sa_sigaction: crate::sighandler_t, ++ pub sa_mask: crate::sigset_t, ++ pub sa_flags: c_int, ++ } ++ ++ pub struct stack_t { ++ pub ss_sp: *mut c_void, ++ pub ss_flags: c_int, ++ pub ss_size: size_t ++ } ++ ++ pub struct siginfo_t { ++ pub si_signo: c_int, ++ pub si_errno: c_int, ++ pub si_code: c_int, ++ pub _pad: [c_int; 29], ++ _align: [usize; 0], ++ } ++ ++ pub struct flock { ++ pub l_type: c_short, ++ pub l_whence: c_short, ++ pub l_start: off_t, ++ pub l_len: off_t, ++ pub l_pid: crate::pid_t, ++ } ++ ++ pub struct ipc_perm { ++ pub __key: crate::key_t, ++ pub uid: crate::uid_t, ++ pub gid: crate::gid_t, ++ pub cuid: crate::uid_t, ++ pub cgid: crate::gid_t, ++ pub mode: c_uint, ++ pub __seq: c_ushort, ++ __pad1: c_ushort, ++ __unused1: c_ulong, ++ __unused2: c_ulong ++ } ++ ++ pub struct shmid_ds { ++ pub shm_perm: crate::ipc_perm, ++ pub shm_segsz: size_t, ++ pub shm_atime: crate::time_t, ++ pub shm_dtime: crate::time_t, ++ pub shm_ctime: crate::time_t, ++ pub shm_cpid: crate::pid_t, ++ pub shm_lpid: crate::pid_t, ++ pub shm_nattch: crate::shmatt_t, ++ __unused4: c_ulong, ++ __unused5: c_ulong ++ } ++ ++ // copy from 1.34.2 libc/src/unix/notbsd/linux/other/mod.rs ++ pub struct statfs { ++ pub f_type: c_long, ++ pub f_bsize: c_long, ++ pub f_blocks: c_long, ++ pub f_bfree: c_long, ++ pub f_bavail: c_long, ++ ++ pub f_files: c_long, ++ pub f_ffree: c_long, ++ pub f_fsid: crate::fsid_t, ++ ++ pub f_namelen: c_long, ++ pub f_frsize: c_long, ++ pub f_flags: c_long, ++ f_spare: [c_long; 4], ++ } ++} ++ ++pub const __SIZEOF_PTHREAD_BARRIERATTR_T: usize = 4; ++pub const __SIZEOF_PTHREAD_CONDATTR_T: usize = 4; ++pub const __SIZEOF_PTHREAD_MUTEXATTR_T: usize = 4; ++pub const __SIZEOF_PTHREAD_BARRIER_T: usize = 32; ++pub const __SIZEOF_PTHREAD_MUTEX_T: usize = 40; ++pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 56; ++ ++pub const PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP: pthread_mutex_t = ++pthread_mutex_t { ++ size: [ ++ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, ++ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ++ ], ++}; ++pub const PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP: pthread_mutex_t = ++pthread_mutex_t { ++ size: [ ++ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, ++ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ++ ], ++}; ++pub const PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP: pthread_mutex_t = ++pthread_mutex_t { ++ size: [ ++ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, ++ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ++ ], ++}; ++ ++pub const TIOCGSOFTCAR: c_ulong = 0x5419; ++pub const TIOCSSOFTCAR: c_ulong = 0x541A; ++ ++pub const O_APPEND: c_int = 0o00010; ++pub const O_CREAT: c_int = 0o01000; ++pub const O_EXCL: c_int = 0o04000; ++pub const O_NOCTTY: c_int = 0o010000; ++pub const O_DIRECT: c_int = 0o02000000; ++pub const O_DIRECTORY: c_int = 0o0100000; ++pub const O_NOFOLLOW: c_int = 0o0200000; ++pub const O_NONBLOCK: c_int = 0o00004; ++pub const O_CLOEXEC: c_int = 0o010000000; ++ ++pub const O_DSYNC: c_int = 0o040000; ++pub const O_SYNC: c_int = 0o020000000 | O_DSYNC; ++pub const O_RSYNC: c_int = O_SYNC; // TODO ++pub const O_FSYNC: c_int = O_SYNC; // TODO ++ ++pub const O_NOATIME: c_int = 0o04000000; ++pub const O_PATH: c_int = 0o040000000; ++pub const O_TMPFILE: c_int = 0o0100100000; ++ ++pub const MAP_GROWSDOWN: c_int = 0x01000; ++ ++pub const EDEADLK: c_int = 11; ++pub const ENAMETOOLONG: c_int = 63; ++pub const ENOLCK: c_int = 77; ++pub const ENOSYS: c_int = 78; ++pub const ENOTEMPTY: c_int = 66; ++pub const ELOOP: c_int = 62; ++ ++pub const ENOMSG: c_int = 80; ++pub const EIDRM: c_int = 81; ++pub const ECHRNG: c_int = 88; ++pub const EL2NSYNC: c_int = 89; ++pub const EL3HLT: c_int = 90; ++pub const EL3RST: c_int = 91; ++pub const ELNRNG: c_int = 93; ++pub const EUNATCH: c_int = 94; ++pub const ENOCSI: c_int = 95; ++pub const EL2HLT: c_int = 96; ++pub const EBADE: c_int = 97; ++pub const EBADR: c_int = 98; ++pub const EXFULL: c_int = 99; ++pub const ENOANO: c_int = 100; ++pub const EBADRQC: c_int = 101; ++pub const EBADSLT: c_int = 102; ++pub const EMULTIHOP: c_int = 110; ++pub const EOVERFLOW: c_int = 112; ++pub const ENOTUNIQ: c_int = 113; ++pub const EBADFD: c_int = 114; ++pub const EBADMSG: c_int = 84; ++ ++pub const EREMCHG: c_int = 115; ++pub const ELIBACC: c_int = 122; ++pub const ELIBBAD: c_int = 123; ++pub const ELIBSCN: c_int = 124; ++pub const ELIBMAX: c_int = 125; ++pub const ELIBEXEC: c_int = 126; ++pub const EILSEQ: c_int = 116; ++ ++pub const ERESTART: c_int = 127; ++pub const ESTRPIPE: c_int = 128; ++pub const EUSERS: c_int = 68; ++pub const ENOTSOCK: c_int = 38; ++pub const EDESTADDRREQ: c_int = 39; ++pub const EMSGSIZE: c_int = 40; ++pub const EPROTOTYPE: c_int = 41; ++pub const ENOPROTOOPT: c_int = 42; ++pub const EPROTONOSUPPORT: c_int = 43; ++pub const ESOCKTNOSUPPORT: c_int = 44; ++pub const EOPNOTSUPP: c_int = 45; ++pub const EPFNOSUPPORT: c_int = 46; ++pub const EAFNOSUPPORT: c_int = 47; ++pub const EADDRINUSE: c_int = 48; ++pub const EADDRNOTAVAIL: c_int = 49; ++pub const ENETDOWN: c_int = 50; ++pub const ENETUNREACH: c_int = 51; ++pub const ENETRESET: c_int = 52; ++pub const ECONNABORTED: c_int = 53; ++pub const ECONNRESET: c_int = 54; ++pub const ENOBUFS: c_int = 55; ++pub const EISCONN: c_int = 56; ++pub const ENOTCONN: c_int = 57; ++pub const ESHUTDOWN: c_int = 58; ++pub const ETOOMANYREFS: c_int = 59; ++pub const ETIMEDOUT: c_int = 60; ++pub const ECONNREFUSED: c_int = 61; ++pub const EHOSTDOWN: c_int = 64; ++pub const EHOSTUNREACH: c_int = 65; ++pub const EALREADY: c_int = 37; ++pub const EINPROGRESS: c_int = 36; ++pub const ESTALE: c_int = 70; ++pub const EDQUOT: c_int = 69; ++ ++pub const ENOMEDIUM: c_int = 129; ++pub const EMEDIUMTYPE: c_int = 130; ++pub const ECANCELED: c_int = 131; ++pub const ENOKEY: c_int = 132; ++pub const EKEYEXPIRED: c_int = 133; ++pub const EKEYREVOKED: c_int = 134; ++pub const EKEYREJECTED: c_int = 135; ++pub const EOWNERDEAD: c_int = 136; ++pub const ENOTRECOVERABLE: c_int = 137; ++pub const EHWPOISON: c_int = 139; ++pub const ERFKILL: c_int = 138; ++ ++pub const SA_ONSTACK: c_int = 0x00000001; ++pub const SA_SIGINFO: c_int = 0x00000040; ++pub const SA_NOCLDWAIT: c_int = 0x00000020; ++ ++pub const SIGCHLD: c_int = 20; ++pub const SIGBUS: c_int = 10; ++pub const SIGUSR1: c_int = 30; ++pub const SIGUSR2: c_int = 31; ++pub const SIGCONT: c_int = 19; ++pub const SIGSTOP: c_int = 17; ++pub const SIGTSTP: c_int = 18; ++pub const SIGURG: c_int = 16; ++pub const SIGIO: c_int = 23; ++pub const SIGSYS: c_int = 12; ++pub const SIGINFO: c_int = 29; ++//pub const SIGSTKFLT: c_int = 16; ++pub const SIGUNUSED: c_int = 31; ++pub const SIGPOLL: c_int = SIGIO; ++pub const SIGPWR: c_int = SIGINFO; ++pub const SIG_SETMASK: c_int = 3; ++pub const SIG_BLOCK: c_int = 1; ++pub const SIG_UNBLOCK: c_int = 2; ++ ++pub const POLLWRNORM: c_short = 0x0100; // TODO ++pub const POLLWRBAND: c_short = 0x0200; ++pub const O_ASYNC: c_int = 0o020000; ++pub const O_NDELAY: c_int = 0o00004; ++pub const PTRACE_DETACH: c_uint = 17; ++pub const EFD_NONBLOCK: c_int = 0o000000004; ++ ++pub const F_GETLK: c_int = 7; ++pub const F_GETOWN: c_int = 6; ++pub const F_SETOWN: c_int = 5; ++pub const F_SETLK: c_int = 8; ++pub const F_SETLKW: c_int = 9; ++pub const F_RDLCK: c_int = 1; ++pub const F_WRLCK: c_int = 2; ++pub const F_UNLCK: c_int = 8; ++ ++pub const SFD_NONBLOCK: c_int = 0o000000004; ++pub const TIOCEXCL: c_ulong = 0x540C; ++pub const TIOCNXCL: c_ulong = 0x540D; ++pub const TIOCSCTTY: c_ulong = 0x540E; ++pub const TIOCSTI: c_ulong = 0x5412; ++pub const TIOCMGET: c_ulong = 0x5415; ++pub const TIOCMBIS: c_ulong = 0x5416; ++pub const TIOCMBIC: c_ulong = 0x5417; ++pub const TIOCMSET: c_ulong = 0x5418; ++pub const TIOCCONS: c_ulong = 0x541D; ++ ++pub const SFD_CLOEXEC: c_int = 0o010000000; ++ ++pub const NCCS: usize = 32; ++pub const O_TRUNC: c_int = 0o02000; ++pub const EBFONT: c_int = 104; ++pub const ENOSTR: c_int = 87; ++pub const ENODATA: c_int = 86; ++pub const ETIME: c_int = 83; ++pub const ENOSR: c_int = 82; ++pub const ENONET: c_int = 105; ++pub const ENOPKG: c_int = 92; ++pub const EREMOTE: c_int = 71; ++pub const EREMOTEIO: c_int = 121; ++pub const ENOLINK: c_int = 106; ++pub const EADV: c_int = 107; ++pub const ESRMNT: c_int = 108; ++pub const ECOMM: c_int = 109; ++pub const EPROTO: c_int = 85; ++pub const EDOTDOT: c_int = 111; ++pub const SA_NODEFER: c_int = 0x00000008; ++pub const SA_NOMASK: c_int = SA_NODEFER; ++pub const SA_RESETHAND: c_int = 0x00000010; ++pub const SA_ONESHOT: c_int = SA_RESETHAND; ++pub const SA_RESTART: c_int = 0x00000002; ++pub const SA_NOCLDSTOP: c_int = 0x00000004; ++ ++pub const EPOLL_CLOEXEC: c_int = 0o010000000; // TODO ++pub const EFD_CLOEXEC: c_int = 0o010000000; // TODO ++ ++pub const MAP_LOCKED: c_int = 0x08000; ++pub const MAP_NORESERVE: c_int = 0x10000; ++ ++pub const EDEADLOCK: c_int = EDEADLK; ++ ++pub const FIOCLEX: c_ulong = 0x20006601; ++pub const FIONBIO: c_ulong = 0x8004667e; ++ ++pub const MCL_CURRENT: c_int = 8192; ++pub const MCL_FUTURE: c_int = 16384; ++ ++pub const SIGSTKSZ: size_t = 16384; ++pub const MINSIGSTKSZ: size_t = 4096; ++pub const CBAUD: crate::tcflag_t = 0o0000037; ++pub const CBAUDEX: crate::tcflag_t = 0o0000000; ++pub const TAB1: c_uint = 0o00002000; ++pub const TAB2: c_uint = 0o00004000; ++pub const TAB3: c_uint = 0o00006000; ++pub const CR1: c_uint = 0o00010000; ++pub const CR2: c_uint = 0o00020000; ++pub const CR3: c_uint = 0o00030000; ++pub const FF1: c_uint = 0o00040000; ++pub const BS1: c_uint = 0o00100000; ++pub const VT1: c_uint = 0o00200000; ++ ++pub const VWERASE: usize = 4; ++pub const VREPRINT: usize = 6; ++pub const VSUSP: usize = 10; ++pub const VSTART: usize = 12; ++pub const VSTOP: usize = 13; ++pub const VDISCARD: usize = 15; ++pub const VTIME: usize = 17; ++pub const IXON: crate::tcflag_t = 0o0001000; ++pub const IXOFF: crate::tcflag_t = 0o0002000; ++pub const ONLCR: crate::tcflag_t = 0o0000002; ++pub const CSIZE: crate::tcflag_t = 0o00001400; ++pub const CS6: crate::tcflag_t = 0o00000400; ++pub const CS7: crate::tcflag_t = 0o00001000; ++pub const CS8: crate::tcflag_t = 0o00001400; ++pub const CSTOPB: crate::tcflag_t = 0o00002000; ++pub const CREAD: crate::tcflag_t = 0o00004000; ++pub const PARENB: crate::tcflag_t = 0o00010000; ++pub const PARODD: crate::tcflag_t = 0o00020000; ++ ++pub const EXTPROC: crate::tcflag_t = 0x10000000; ++pub const HUPCL: crate::tcflag_t = 0o00040000; ++pub const CLOCAL: crate::tcflag_t = 0o00100000; ++pub const ECHOKE: crate::tcflag_t = 0x00000001; ++pub const ECHOE: crate::tcflag_t = 0x00000002; ++pub const ECHOK: crate::tcflag_t = 0x00000004; ++pub const ECHONL: crate::tcflag_t = 0x00000010; ++pub const ECHOPRT: crate::tcflag_t = 0x00000020; ++pub const ECHOCTL: crate::tcflag_t = 0x00000040; ++pub const ISIG: crate::tcflag_t = 0x00000080; ++pub const ICANON: crate::tcflag_t = 0x00000100; ++pub const PENDIN: crate::tcflag_t = 0x20000000; ++pub const NOFLSH: crate::tcflag_t = 0x80000000; ++//pub const CIBAUD: crate::tcflag_t = 0o07600000; ++pub const VSWTC: usize = 7; ++pub const OLCUC: crate::tcflag_t = 0o0000004; ++pub const NLDLY: crate::tcflag_t = 0o00001400; ++pub const CRDLY: crate::tcflag_t = 0o00030000; ++pub const TABDLY: crate::tcflag_t = 0o00006000; ++pub const BSDLY: crate::tcflag_t = 0o00100000; ++pub const FFDLY: crate::tcflag_t = 0o00040000; ++pub const VTDLY: crate::tcflag_t = 0o00200000; ++pub const XTABS: crate::tcflag_t = 0o00006000; ++pub const IBSHIFT: crate::tcflag_t = 16; ++pub const B0: crate::speed_t = 0o0000000; ++pub const B50: crate::speed_t = 0o0000001; ++pub const B75: crate::speed_t = 0o0000002; ++pub const B110: crate::speed_t = 0o0000003; ++pub const B134: crate::speed_t = 0o0000004; ++pub const B150: crate::speed_t = 0o0000005; ++pub const B200: crate::speed_t = 0o0000006; ++pub const B300: crate::speed_t = 0o0000007; ++pub const B600: crate::speed_t = 0o0000010; ++pub const B1200: crate::speed_t = 0o0000011; ++pub const B1800: crate::speed_t = 0o0000012; ++pub const B2400: crate::speed_t = 0o0000013; ++pub const B4800: crate::speed_t = 0o0000014; ++pub const B9600: crate::speed_t = 0o0000015; ++pub const B19200: crate::speed_t = 0o0000016; ++pub const B38400: crate::speed_t = 0o0000017; ++pub const EXTA: crate::speed_t = B19200; ++pub const EXTB: crate::speed_t = B38400; ++pub const BOTHER: crate::speed_t = 0o010000; ++//pub const BOTHER1: crate::speed_t = 0o010001; ++pub const B57600: crate::speed_t = 0o00020; ++pub const B115200: crate::speed_t = 0o00021; ++pub const B230400: crate::speed_t = 0o00022; ++pub const B460800: crate::speed_t = 0o00023; ++pub const B500000: crate::speed_t = 0o00024; ++pub const B576000: crate::speed_t = 0o00025; ++pub const B921600: crate::speed_t = 0o00026; ++pub const B1000000: crate::speed_t = 0o00027; ++pub const B1152000: crate::speed_t = 0o00030; ++pub const B1500000: crate::speed_t = 0o00031; ++pub const B2000000: crate::speed_t = 0o00032; ++pub const B2500000: crate::speed_t = 0o00033; ++pub const B3000000: crate::speed_t = 0o00034; ++pub const B3500000: crate::speed_t = 0o00035; ++pub const B4000000: crate::speed_t = 0o00036; ++ ++pub const VEOL: usize = 1; ++pub const VEOL2: usize = 2; ++//pub const _VEOL: usize = 5; ++//pub const _VEOL2: usize = 6; ++pub const VMIN: usize = 16; ++//pub const _VMIN: usize = 4; ++pub const IEXTEN: crate::tcflag_t = 0x00000400; ++//pub const EXTPROC1: crate::tcflag_t = 0x10000000; ++//pub const EXTPROC: crate::tcflag_t = 0x10000000; ++pub const TOSTOP: crate::tcflag_t = 0x00400000; ++pub const FLUSHO: crate::tcflag_t = 0x00800000; ++ ++ ++pub const MAP_ANON: c_int = 0x0010; ++pub const MAP_ANONYMOUS: c_int = 0x0010; ++pub const MAP_DENYWRITE: c_int = 0x2000; ++pub const MAP_EXECUTABLE: c_int = 0x04000; ++pub const MAP_POPULATE: c_int = 0x20000; ++pub const MAP_NONBLOCK: c_int = 0x40000; ++pub const MAP_STACK: c_int = 0x80000; ++pub const EUCLEAN: c_int = 117; ++pub const ENOTNAM: c_int = 118; ++pub const ENAVAIL: c_int = 119; ++pub const EISNAM: c_int = 120; ++pub const SOCK_STREAM: c_int = 1; ++pub const SOCK_DGRAM: c_int = 2; ++pub const SIGTTIN: c_int = 21; ++pub const SIGTTOU: c_int = 22; ++pub const SIGXCPU: c_int = 24; ++pub const SIGXFSZ: c_int = 25; ++pub const SIGVTALRM: c_int = 26; ++pub const SIGPROF: c_int = 27; ++pub const SIGWINCH: c_int = 28; ++pub const POSIX_FADV_DONTNEED: c_int = 4; ++pub const POSIX_FADV_NOREUSE: c_int = 5; ++pub const VEOF: usize = 0; ++pub const MAP_HUGETLB: c_int = 0x100000; ++pub const TCSANOW: c_int = 0; ++pub const TCSADRAIN: c_int = 1; ++pub const TCSAFLUSH: c_int = 2; ++pub const TIOCLINUX: c_ulong = 0x541C; ++pub const TIOCGSERIAL: c_ulong = 0x541E; ++pub const RTLD_DEEPBIND: c_int = 0x8; ++pub const RTLD_GLOBAL: c_int = 0x100; ++pub const RTLD_NOLOAD: c_int = 0x4; ++pub const TIOCM_ST: c_int = 0x008; ++pub const TIOCM_SR: c_int = 0x010; ++pub const TIOCM_CTS: c_int = 0x020; ++pub const TIOCM_CAR: c_int = 0x040; ++pub const TIOCM_RNG: c_int = 0x080; ++pub const TIOCM_DSR: c_int = 0x100; ++ ++//Syscall table ++pub const SYS_exit: c_long = 1; ++pub const SYS_fork: c_long = 2; ++pub const SYS_read: c_long = 3; ++pub const SYS_write: c_long = 4; ++pub const SYS_close: c_long = 6; ++pub const SYS_link: c_long = 9; ++pub const SYS_unlink: c_long = 10; ++pub const SYS_chdir: c_long = 12; ++pub const SYS_fchdir: c_long = 13; ++pub const SYS_mknod: c_long = 14; ++pub const SYS_chmod: c_long = 15; ++pub const SYS_chown: c_long = 16; ++pub const SYS_brk: c_long = 17; ++pub const SYS_lseek: c_long = 19; ++pub const SYS_getxpid: c_long = 20; ++pub const SYS_umount: c_long = 22; ++pub const SYS_umount2: c_long = SYS_umount; ++pub const SYS_setuid: c_long = 23; ++pub const SYS_getxuid: c_long = 24; ++pub const SYS_ptrace: c_long = 26; ++pub const SYS_access: c_long = 33; ++pub const SYS_sync: c_long = 36; ++pub const SYS_kill: c_long = 37; ++pub const SYS_setpgid: c_long = 39; ++pub const SYS_dup: c_long = 41; ++pub const SYS_pipe: c_long = 42; ++pub const SYS_open: c_long = 45; ++pub const SYS_getxgid: c_long = 47; ++pub const SYS_acct: c_long = 51; ++pub const SYS_sigpending: c_long = 52; ++pub const SYS_ioctl: c_long = 54; ++pub const SYS_symlink: c_long = 57; ++pub const SYS_readlink: c_long = 58; ++pub const SYS_execve: c_long = 59; ++pub const SYS_umask: c_long = 60; ++pub const SYS_chroot: c_long = 61; ++pub const SYS_getpgrp: c_long = 63; ++pub const SYS_vfork: c_long = 66; ++pub const SYS_stat: c_long = 67; ++pub const SYS_lstat: c_long = 68; ++pub const SYS_mmap: c_long = 71; ++pub const SYS_munmap: c_long = 73; ++pub const SYS_mprotect: c_long = 74; ++pub const SYS_madvise: c_long = 75; ++pub const SYS_vhangup: c_long = 76; ++pub const SYS_getgroups: c_long = 79; ++pub const SYS_setgroups: c_long = 80; ++pub const SYS_setpgrp: c_long = 82; ++pub const SYS_gethostname: c_long = 87; ++pub const SYS_sethostname: c_long = 88; ++pub const SYS_dup2: c_long = 90; ++pub const SYS_fstat: c_long = 91; ++pub const SYS_fcntl: c_long = 92; ++pub const SYS_poll: c_long = 94; ++pub const SYS_fsync: c_long = 95; ++pub const SYS_setpriority: c_long = 96; ++pub const SYS_socket: c_long = 97; ++pub const SYS_connect: c_long = 98; ++pub const SYS_accept: c_long = 99; ++pub const SYS_send: c_long = 101; ++pub const SYS_recv: c_long = 102; ++pub const SYS_sigreturn: c_long = 103; ++pub const SYS_bind: c_long = 104; ++pub const SYS_setsockopt: c_long = 105; ++pub const SYS_listen: c_long = 106; ++pub const SYS_sigsuspend: c_long = 111; ++pub const SYS_recvmsg: c_long = 113; ++pub const SYS_sendmsg: c_long = 114; ++pub const SYS_getsockopt: c_long = 118; ++pub const SYS_readv: c_long = 120; ++pub const SYS_writev: c_long = 121; ++pub const SYS_fchown: c_long = 123; ++pub const SYS_fchmod: c_long = 124; ++pub const SYS_recvfrom: c_long = 125; ++pub const SYS_setreuid: c_long = 126; ++pub const SYS_setregid: c_long = 127; ++pub const SYS_rename: c_long = 128; ++pub const SYS_truncate: c_long = 129; ++pub const SYS_ftruncate: c_long = 130; ++pub const SYS_flock: c_long = 131; ++pub const SYS_setgid: c_long = 132; ++pub const SYS_sendto: c_long = 133; ++pub const SYS_shutdown: c_long = 134; ++pub const SYS_socketpair: c_long = 135; ++pub const SYS_mkdir: c_long = 136; ++pub const SYS_rmdir: c_long = 137; ++pub const SYS_getpeername: c_long = 141; ++pub const SYS_getrlimit: c_long = 144; ++pub const SYS_setrlimit: c_long = 145; ++pub const SYS_setsid: c_long = 147; ++pub const SYS_quotactl: c_long = 148; ++pub const SYS_getsockname: c_long = 150; ++pub const SYS_sigaction: c_long = 156; ++pub const SYS_setdomainname: c_long = 166; ++pub const SYS_bpf: c_long = 170; ++pub const SYS_userfaultfd: c_long = 171; ++pub const SYS_membarrier: c_long = 172; ++pub const SYS_mlock2: c_long = 173; ++pub const SYS_getpid: c_long = 174; ++pub const SYS_getppid: c_long = 175; ++pub const SYS_getuid: c_long = 176; ++pub const SYS_geteuid: c_long = 177; ++pub const SYS_getgid: c_long = 178; ++pub const SYS_getegid: c_long = 179; ++pub const SYS_msgctl: c_long = 200; ++pub const SYS_msgget: c_long = 201; ++pub const SYS_msgrcv: c_long = 202; ++pub const SYS_msgsnd: c_long = 203; ++pub const SYS_semctl: c_long = 204; ++pub const SYS_semget: c_long = 205; ++pub const SYS_semop: c_long = 206; ++pub const SYS_lchown: c_long = 208; ++pub const SYS_shmctl: c_long = 210; ++pub const SYS_shmdt: c_long = 211; ++pub const SYS_shmget: c_long = 212; ++pub const SYS_msync: c_long = 217; ++pub const SYS_getpgid: c_long = 233; ++pub const SYS_getsid: c_long = 234; ++pub const SYS_sigaltstack: c_long = 235; ++pub const SYS_sysfs: c_long = 254; ++pub const SYS_pidfd_send_signal: c_long = 271; ++pub const SYS_pidfd_open: c_long = 281; ++pub const SYS_pidfd_getfd: c_long = 285; ++pub const SYS_getpriority: c_long = 298; ++pub const SYS_bdflush: c_long = 300; ++pub const SYS_mount: c_long = 302; ++pub const SYS_swapoff: c_long = 304; ++pub const SYS_getdents: c_long = 305; ++pub const SYS_create_module: c_long = 306; ++pub const SYS_init_module: c_long = 307; ++pub const SYS_delete_module: c_long = 308; ++pub const SYS_get_kernel_syms: c_long = 309; ++pub const SYS_syslog: c_long = 310; ++pub const SYS_reboot: c_long = 311; ++pub const SYS_clone: c_long = 312; ++pub const SYS_clone3: c_long = 282; ++pub const SYS_uselib: c_long = 313; ++pub const SYS_mlock: c_long = 314; ++pub const SYS_munlock: c_long = 315; ++pub const SYS_mlockall: c_long = 316; ++pub const SYS_munlockall: c_long = 317; ++pub const SYS_sysinfo: c_long = 318; ++pub const SYS_oldumount: c_long = 321; ++pub const SYS_swapon: c_long = 322; ++pub const SYS_times: c_long = 323; ++pub const SYS_personality: c_long = 324; ++pub const SYS_setfsuid: c_long = 325; ++pub const SYS_setfsgid: c_long = 326; ++pub const SYS_ustat: c_long = 327; ++pub const SYS_statfs: c_long = 328; ++pub const SYS_fstatfs: c_long = 329; ++pub const SYS_sched_setparam: c_long = 330; ++pub const SYS_sched_getparam: c_long = 331; ++pub const SYS_sched_setscheduler: c_long = 332; ++pub const SYS_sched_getscheduler: c_long = 333; ++pub const SYS_sched_yield: c_long = 334; ++pub const SYS_sched_get_priority_max: c_long = 335; ++pub const SYS_sched_get_priority_min: c_long = 336; ++pub const SYS_sched_rr_get_interval: c_long = 337; ++pub const SYS_afs_syscall: c_long = 338; ++pub const SYS_uname: c_long = 339; ++pub const SYS_nanosleep: c_long = 340; ++pub const SYS_mremap: c_long = 341; ++pub const SYS_nfsservctl: c_long = 342; ++pub const SYS_setresuid: c_long = 343; ++pub const SYS_getresuid: c_long = 344; ++pub const SYS_pciconfig_read: c_long = 345; ++pub const SYS_pciconfig_write: c_long = 346; ++pub const SYS_query_module: c_long = 347; ++pub const SYS_prctl: c_long = 348; ++pub const SYS_pread64: c_long = 349; ++pub const SYS_pwrite64: c_long = 350; ++pub const SYS_rt_sigreturn: c_long = 351; ++pub const SYS_rt_sigaction: c_long = 352; ++pub const SYS_rt_sigprocmask: c_long = 353; ++pub const SYS_rt_sigpending: c_long = 354; ++pub const SYS_rt_sigtimedwait: c_long = 355; ++pub const SYS_rt_sigqueueinfo: c_long = 356; ++pub const SYS_rt_sigsuspend: c_long = 357; ++pub const SYS_select: c_long = 358; ++pub const SYS_gettimeofday: c_long = 359; ++pub const SYS_settimeofday: c_long = 360; ++pub const SYS_getitimer: c_long = 361; ++pub const SYS_setitimer: c_long = 362; ++pub const SYS_utimes: c_long = 363; ++pub const SYS_getrusage: c_long = 364; ++pub const SYS_wait4: c_long = 365; ++pub const SYS_adjtimex: c_long = 366; ++pub const SYS_getcwd: c_long = 367; ++pub const SYS_capget: c_long = 368; ++pub const SYS_capset: c_long = 369; ++pub const SYS_sendfile: c_long = 370; ++pub const SYS_setresgid: c_long = 371; ++pub const SYS_getresgid: c_long = 372; ++pub const SYS_dipc: c_long = 373; ++pub const SYS_pivot_root: c_long = 374; ++pub const SYS_mincore: c_long = 375; ++pub const SYS_pciconfig_iobase: c_long = 376; ++pub const SYS_getdents64: c_long = 377; ++pub const SYS_gettid: c_long = 378; ++pub const SYS_readahead: c_long = 379; ++pub const SYS_tkill: c_long = 381; ++pub const SYS_setxattr: c_long = 382; ++pub const SYS_lsetxattr: c_long = 383; ++pub const SYS_fsetxattr: c_long = 384; ++pub const SYS_getxattr: c_long = 385; ++pub const SYS_lgetxattr: c_long = 386; ++pub const SYS_fgetxattr: c_long = 387; ++pub const SYS_listxattr: c_long = 388; ++pub const SYS_llistxattr: c_long = 389; ++pub const SYS_flistxattr: c_long = 390; ++pub const SYS_removexattr: c_long = 391; ++pub const SYS_lremovexattr: c_long = 392; ++pub const SYS_fremovexattr: c_long = 393; ++pub const SYS_futex: c_long = 394; ++pub const SYS_sched_setaffinity: c_long = 395; ++pub const SYS_sched_getaffinity: c_long = 396; ++pub const SYS_tuxcall: c_long = 397; ++pub const SYS_io_setup: c_long = 398; ++pub const SYS_io_destroy: c_long = 399; ++pub const SYS_io_getevents: c_long = 400; ++pub const SYS_io_submit: c_long = 401; ++pub const SYS_io_cancel: c_long = 402; ++pub const SYS_exit_group: c_long = 405; ++pub const SYS_lookup_dcookie: c_long = 406; ++pub const SYS_epoll_create: c_long = 407; ++pub const SYS_epoll_ctl: c_long = 408; ++pub const SYS_epoll_wait: c_long = 409; ++pub const SYS_remap_file_pages: c_long = 410; ++pub const SYS_set_tid_address: c_long = 411; ++pub const SYS_restart_syscall: c_long = 412; ++pub const SYS_fadvise64: c_long = 413; ++pub const SYS_timer_create: c_long = 414; ++pub const SYS_timer_settime: c_long = 415; ++pub const SYS_timer_gettime: c_long = 416; ++pub const SYS_timer_getoverrun: c_long = 417; ++pub const SYS_timer_delete: c_long = 418; ++pub const SYS_clock_settime: c_long = 419; ++pub const SYS_clock_gettime: c_long = 420; ++pub const SYS_clock_getres: c_long = 421; ++pub const SYS_clock_nanosleep: c_long = 422; ++pub const SYS_semtimedop: c_long = 423; ++pub const SYS_tgkill: c_long = 424; ++pub const SYS_stat64: c_long = 425; ++pub const SYS_lstat64: c_long = 426; ++pub const SYS_fstat64: c_long = 427; ++pub const SYS_vserver: c_long = 428; ++pub const SYS_mbind: c_long = 429; ++pub const SYS_get_mempolicy: c_long = 430; ++pub const SYS_set_mempolicy: c_long = 431; ++pub const SYS_mq_open: c_long = 432; ++pub const SYS_mq_unlink: c_long = 433; ++pub const SYS_mq_timedsend: c_long = 434; ++pub const SYS_mq_timedreceive: c_long = 435; ++pub const SYS_mq_notify: c_long = 436; ++pub const SYS_mq_getsetattr: c_long = 437; ++pub const SYS_waitid: c_long = 438; ++pub const SYS_add_key: c_long = 439; ++pub const SYS_request_key: c_long = 440; ++pub const SYS_keyctl: c_long = 441; ++pub const SYS_ioprio_set: c_long = 442; ++pub const SYS_ioprio_get: c_long = 443; ++pub const SYS_inotify_init: c_long = 444; ++pub const SYS_inotify_add_watch: c_long = 445; ++pub const SYS_inotify_rm_watch: c_long = 446; ++pub const SYS_fdatasync: c_long = 447; ++pub const SYS_kexec_load: c_long = 448; ++pub const SYS_migrate_pages: c_long = 449; ++pub const SYS_openat: c_long = 450; ++pub const SYS_mkdirat: c_long = 451; ++pub const SYS_mknodat: c_long = 452; ++pub const SYS_fchownat: c_long = 453; ++pub const SYS_futimesat: c_long = 454; ++pub const SYS_fstatat64: c_long = 455; ++pub const SYS_unlinkat: c_long = 456; ++pub const SYS_renameat: c_long = 457; ++pub const SYS_linkat: c_long = 458; ++pub const SYS_symlinkat: c_long = 459; ++pub const SYS_readlinkat: c_long = 460; ++pub const SYS_fchmodat: c_long = 461; ++pub const SYS_faccessat: c_long = 462; ++pub const SYS_pselect6: c_long = 463; ++pub const SYS_ppoll: c_long = 464; ++pub const SYS_unshare: c_long = 465; ++pub const SYS_set_robust_list: c_long = 466; ++pub const SYS_get_robust_list: c_long = 467; ++pub const SYS_splice: c_long = 468; ++pub const SYS_sync_file_range: c_long = 469; ++pub const SYS_tee: c_long = 470; ++pub const SYS_vmsplice: c_long = 471; ++pub const SYS_move_pages: c_long = 472; ++pub const SYS_getcpu: c_long = 473; ++pub const SYS_epoll_pwait: c_long = 474; ++pub const SYS_utimensat: c_long = 475; ++pub const SYS_signalfd: c_long = 476; ++pub const SYS_timerfd: c_long = 477; ++pub const SYS_eventfd: c_long = 478; ++pub const SYS_recvmmsg: c_long = 479; ++pub const SYS_fallocate: c_long = 480; ++pub const SYS_timerfd_create: c_long = 481; ++pub const SYS_timerfd_settime: c_long = 482; ++pub const SYS_timerfd_gettime: c_long = 483; ++pub const SYS_signalfd4: c_long = 484; ++pub const SYS_eventfd2: c_long = 485; ++pub const SYS_epoll_create1: c_long = 486; ++pub const SYS_dup3: c_long = 487; ++pub const SYS_pipe2: c_long = 488; ++pub const SYS_inotify_init1: c_long = 489; ++pub const SYS_preadv: c_long = 490; ++pub const SYS_pwritev: c_long = 491; ++pub const SYS_rt_tgsigqueueinfo: c_long = 492; ++pub const SYS_perf_event_open: c_long = 493; ++pub const SYS_fanotify_init: c_long = 494; ++pub const SYS_fanotify_mark: c_long = 495; ++pub const SYS_prlimit64: c_long = 496; ++pub const SYS_name_to_handle_at: c_long = 497; ++pub const SYS_open_by_handle_at: c_long = 498; ++pub const SYS_clock_adjtime: c_long = 499; ++pub const SYS_syncfs: c_long = 500; ++pub const SYS_setns: c_long = 501; ++pub const SYS_accept4: c_long = 502; ++pub const SYS_sendmmsg: c_long = 503; ++pub const SYS_process_vm_readv: c_long = 504; ++pub const SYS_process_vm_writev: c_long = 505; ++pub const SYS_kcmp: c_long = 506; ++pub const SYS_finit_module: c_long = 507; ++pub const SYS_sched_setattr: c_long = 508; ++pub const SYS_sched_getattr: c_long = 509; ++pub const SYS_renameat2: c_long = 510; ++pub const SYS_getrandom: c_long = 511; ++pub const SYS_memfd_create: c_long = 512; ++pub const SYS_execveat: c_long = 513; ++pub const SYS_seccomp: c_long = 514; ++pub const SYS_copy_file_range: c_long = 515; ++pub const SYS_preadv2: c_long = 516; ++pub const SYS_pwritev2: c_long = 517; ++pub const SYS_statx: c_long = 518; ++ ++pub const F_OFD_GETLK: c_int = 36; ++pub const F_OFD_SETLK: c_int = 37; ++pub const F_OFD_SETLKW: c_int = 38; ++ ++#[link(name = "util")] ++extern "C" { ++ pub fn sysctl( ++ name: *mut c_int, ++ namelen: c_int, ++ oldp: *mut c_void, ++ oldlenp: *mut size_t, ++ newp: *mut c_void, ++ newlen: size_t, ++ ) -> c_int; ++} +diff --git a/vendor/libc-0.2.167/src/unix/linux_like/linux/gnu/mod.rs b/vendor/libc-0.2.167/src/unix/linux_like/linux/gnu/mod.rs +index 948ec35f36b..29797e53db3 100644 +--- a/vendor/libc-0.2.167/src/unix/linux_like/linux/gnu/mod.rs ++++ b/vendor/libc-0.2.167/src/unix/linux_like/linux/gnu/mod.rs +@@ -8,6 +8,9 @@ + pub type regoff_t = c_int; + pub type __kernel_rwf_t = c_int; + ++#[cfg(target_arch = "sw64")] ++pub type termios2 = termios; ++ + cfg_if! { + if #[cfg(doc)] { + // Used in `linux::arch` to define ioctl constants. +@@ -81,7 +84,10 @@ pub struct termios { + pub c_oflag: crate::tcflag_t, + pub c_cflag: crate::tcflag_t, + pub c_lflag: crate::tcflag_t, ++ #[cfg(target_arch = "sw64")] ++ pub c_cc: [crate::cc_t; crate::NCCS], + pub c_line: crate::cc_t, ++ #[cfg(not(target_arch = "sw64"))] + pub c_cc: [crate::cc_t; crate::NCCS], + #[cfg(not(any( + target_arch = "sparc", +@@ -1547,6 +1553,7 @@ pub fn epoll_pwait2( + timeout: *const crate::timespec, + sigmask: *const crate::sigset_t, + ) -> c_int; ++ + } + + cfg_if! { +@@ -1572,6 +1579,7 @@ pub fn epoll_pwait2( + target_arch = "s390x", + target_arch = "sparc64", + target_arch = "riscv64", ++ target_arch = "sw64", + target_arch = "loongarch64" + ))] { + mod b64; +diff --git a/vendor/libc-0.2.169/src/unix/linux_like/linux/arch/mod.rs b/vendor/libc-0.2.169/src/unix/linux_like/linux/arch/mod.rs +index 00914a43ac1..db55a9202dd 100644 +--- a/vendor/libc-0.2.169/src/unix/linux_like/linux/arch/mod.rs ++++ b/vendor/libc-0.2.169/src/unix/linux_like/linux/arch/mod.rs +@@ -1,10 +1,8 @@ + cfg_if! { +- if #[cfg(any( +- target_arch = "mips", +- target_arch = "mips32r6", +- target_arch = "mips64", +- target_arch = "mips64r6" +- ))] { ++ if #[cfg(any(target_arch = "mips", ++ target_arch = "mips32r6", ++ target_arch = "mips64", ++ target_arch = "mips64r6"))] { + mod mips; + pub use self::mips::*; + } else if #[cfg(any(target_arch = "powerpc", target_arch = "powerpc64"))] { +@@ -13,6 +11,9 @@ + } else if #[cfg(any(target_arch = "sparc", target_arch = "sparc64"))] { + mod sparc; + pub use self::sparc::*; ++ } else if #[cfg(target_arch = "sw64")] { ++ mod sw64; ++ pub use self::sw64::*; + } else { + mod generic; + pub use self::generic::*; +diff --git a/vendor/libc-0.2.169/src/unix/linux_like/linux/arch/sw64/mod.rs b/vendor/libc-0.2.169/src/unix/linux_like/linux/arch/sw64/mod.rs +new file mode 100644 +index 00000000000..d4362d5a89f +--- /dev/null ++++ b/vendor/libc-0.2.169/src/unix/linux_like/linux/arch/sw64/mod.rs +@@ -0,0 +1,142 @@ ++use crate::prelude::*; ++use crate::Ioctl; ++ ++ ++// arch/sw64/include/uapi/asm/socket.h ++pub const SOL_SOCKET: c_int = 0xffff; ++ ++pub const SO_REUSEADDR: c_int = 0x0004; ++pub const SO_TYPE: c_int = 0x1008; ++pub const SO_ERROR: c_int = 0x1007; ++pub const SO_DONTROUTE: c_int = 0x0010; ++pub const SO_BROADCAST: c_int = 0x0020; ++pub const SO_SNDBUF: c_int = 0x1001; ++pub const SO_RCVBUF: c_int = 0x1002; ++pub const SO_SNDBUFFORCE: c_int = 0x100a; ++pub const SO_RCVBUFFORCE: c_int = 0x100b; ++pub const SO_KEEPALIVE: c_int = 0x0008; ++pub const SO_OOBINLINE: c_int = 0x0100; ++pub const SO_NO_CHECK: c_int = 11; ++pub const SO_PRIORITY: c_int = 12; ++ ++pub const SO_LINGER: c_int = 0x0080; ++pub const SO_BSDCOMPAT: c_int = 14; ++pub const SO_REUSEPORT: c_int = 0x0200; ++pub const SO_PASSCRED: c_int = 17; ++pub const SO_PEERCRED: c_int = 18; ++pub const SO_RCVLOWAT: c_int = 0x1010; ++pub const SO_SNDLOWAT: c_int = 0x1011; ++pub const SO_RCVTIMEO: c_int = 0x1012; ++pub const SO_SNDTIMEO: c_int = 0x1013; ++ ++pub const SO_SECURITY_AUTHENTICATION: c_int = 19; ++pub const SO_SECURITY_ENCRYPTION_TRANSPORT: c_int = 20; ++pub const SO_SECURITY_ENCRYPTION_NETWORK: c_int = 21; ++pub const SO_BINDTODEVICE: c_int = 25; ++pub const SO_ATTACH_FILTER: c_int = 26; ++pub const SO_DETACH_FILTER: c_int = 27; ++pub const SO_GET_FILTER: c_int = SO_ATTACH_FILTER; ++pub const SO_PEERNAME: c_int = 28; ++pub const SO_TIMESTAMP: c_int = 29; ++pub const SO_ACCEPTCONN: c_int = 0x1014; ++ ++pub const SO_PEERSEC: c_int = 30; ++pub const SO_PASSSEC: c_int = 34; ++pub const SO_TIMESTAMPNS: c_int = 35; ++pub const SCM_TIMESTAMPNS: c_int = SO_TIMESTAMPNS; ++pub const SO_MARK: c_int = 36; ++pub const SO_TIMESTAMPING: c_int = 37; ++pub const SO_PROTOCOL: c_int = 0x1028; ++pub const SO_DOMAIN: c_int = 0x1029; ++pub const SO_RXQ_OVFL: c_int = 40; ++pub const SO_WIFI_STATUS: c_int = 41; ++pub const SCM_WIFI_STATUS: c_int = SO_WIFI_STATUS; ++pub const SO_PEEK_OFF: c_int = 42; ++pub const SO_NOFCS: c_int = 43; ++pub const SO_LOCK_FILTER: c_int = 44; ++pub const SO_SELECT_ERR_QUEUE: c_int = 45; ++pub const SO_BUSY_POLL: c_int = 46; ++pub const SO_MAX_PACING_RATE: c_int = 47; ++pub const SO_BPF_EXTENSIONS: c_int = 48; ++pub const SO_INCOMING_CPU: c_int = 49; ++pub const SO_ATTACH_BPF: c_int = 50; ++pub const SO_DETACH_BPF: c_int = SO_DETACH_FILTER; ++pub const SO_COOKIE: c_int = 57; ++ ++pub const SCM_TIMESTAMPING: c_int = SO_TIMESTAMPING; ++pub const SO_TIMESTAMP_NEW: c_int = 63; ++pub const SO_TIMESTAMPNS_NEW: c_int = 64; ++pub const SO_TIMESTAMPING_NEW: c_int = 65; ++pub const SO_RCVTIMEO_NEW: c_int = 66; ++pub const SO_SNDTIMEO_NEW: c_int = 67; ++pub const SO_DETACH_REUSEPORT_BPF: c_int = 68; ++ ++// Ioctl Constants ++pub const TCGETS: Ioctl = 0x402c7413; ++pub const TCSETS: Ioctl = 0x802c7414; ++pub const TCSETSW: Ioctl = 0x802c7415; ++pub const TCSETSF: Ioctl = 0x802c7416; ++pub const TCGETA: Ioctl = 0x40127417; ++pub const TCSETA: Ioctl = 0x80127418; ++pub const TCSETAW: Ioctl = 0x80127419; ++pub const TCSETAF: Ioctl = 0x8012741c; ++pub const TCSBRK: Ioctl = 0x2000741d; ++pub const TCSBRKP: Ioctl = 0x5425; ++pub const FIONREAD: Ioctl = 0x4004667f; ++pub const TCXONC: Ioctl = 0x2000741e; ++pub const TCFLSH: Ioctl = 0x2000741f; ++pub const TIOCINQ: Ioctl = FIONREAD; ++ ++pub const TIOCGPGRP: Ioctl = 0x40047477; ++pub const TIOCSPGRP: Ioctl = 0x80047476; ++pub const TIOCOUTQ: Ioctl = 0x40047473; ++pub const TIOCGWINSZ: Ioctl = 0x40087468; ++pub const TIOCSWINSZ: Ioctl = 0x80087467; ++ ++// RLIMIT Constants ++pub const RLIMIT_CPU: crate::__rlimit_resource_t = 0; ++pub const RLIMIT_FSIZE: crate::__rlimit_resource_t = 1; ++pub const RLIMIT_DATA: crate::__rlimit_resource_t = 2; ++pub const RLIMIT_STACK: crate::__rlimit_resource_t = 3; ++pub const RLIMIT_CORE: crate::__rlimit_resource_t = 4; ++pub const RLIMIT_RSS: crate::__rlimit_resource_t = 5; ++pub const RLIMIT_NOFILE: crate::__rlimit_resource_t = 6; ++pub const RLIMIT_AS: crate::__rlimit_resource_t = 7; ++pub const RLIMIT_NPROC: crate::__rlimit_resource_t = 8; ++pub const RLIMIT_MEMLOCK: crate::__rlimit_resource_t = 9; ++pub const RLIMIT_LOCKS: crate::__rlimit_resource_t = 10; ++pub const RLIMIT_SIGPENDING: crate::__rlimit_resource_t = 11; ++pub const RLIMIT_MSGQUEUE: crate::__rlimit_resource_t = 12; ++pub const RLIMIT_NICE: crate::__rlimit_resource_t = 13; ++pub const RLIMIT_RTPRIO: crate::__rlimit_resource_t = 14; ++pub const RLIMIT_RTTIME: crate::__rlimit_resource_t = 15; ++pub const RLIMIT_NLIMITS: crate::__rlimit_resource_t = 16; ++pub const RLIM_NLIMITS: crate::__rlimit_resource_t = RLIMIT_NLIMITS; ++ ++pub const BLKIOMIN: Ioctl = 0x20001278; ++pub const BLKIOOPT: Ioctl = 0x20001279; ++pub const BLKSSZGET: Ioctl = 0x20001268; ++pub const BLKPBSZGET: Ioctl = 0x2000127B; ++pub const FIONCLEX: Ioctl = 0x20006602; ++//pub const IBSHIFT: crate::tcflag_t = 16; ++ ++pub const TIOCM_LE: c_int = 0x1; ++pub const TIOCM_DTR: c_int = 0x002; ++pub const TIOCM_RTS: c_int = 0x004; ++//pub const TIOCM_CAR: c_int = 0x040; ++pub const TIOCM_CD: c_int = 0x040; ++//pub const TIOCM_RNG: c_int = 0x80; ++pub const TIOCM_RI: c_int = 0x80; ++ ++pub const FS_IOC_GETFLAGS: Ioctl = 0x80086601; ++pub const FS_IOC_SETFLAGS: Ioctl = 0x40086602; ++pub const FS_IOC_GETVERSION: Ioctl = 0x80087601; ++pub const FS_IOC_SETVERSION: Ioctl = 0x40087602; ++pub const FS_IOC32_GETFLAGS: Ioctl = 0x80046601; ++pub const FS_IOC32_SETFLAGS: Ioctl = 0x40046602; ++pub const FS_IOC32_GETVERSION: Ioctl = 0x80047601; ++pub const FS_IOC32_SETVERSION: Ioctl = 0x40047602; ++ ++pub const FICLONE: c_ulong = 0x40049409; ++pub const FICLONERANGE: c_ulong = 0x4020940D; ++pub const RLIM_INFINITY: crate::rlim_t = !0; +diff --git a/vendor/libc-0.2.169/src/unix/linux_like/linux/gnu/b64/mod.rs b/vendor/libc-0.2.169/src/unix/linux_like/linux/gnu/b64/mod.rs +index fde7a5c6c36..334d29c7e9e 100644 +--- a/vendor/libc-0.2.169/src/unix/linux_like/linux/gnu/b64/mod.rs ++++ b/vendor/libc-0.2.169/src/unix/linux_like/linux/gnu/b64/mod.rs +@@ -4,11 +4,14 @@ + + pub type ino_t = u64; + pub type off_t = i64; ++#[cfg(not(target_arch = "sw64"))] + pub type blkcnt_t = i64; + pub type shmatt_t = u64; + pub type msgqnum_t = u64; + pub type msglen_t = u64; ++#[cfg(not(target_arch = "sw64"))] + pub type fsblkcnt_t = u64; ++#[cfg(not(target_arch = "sw64"))] + pub type fsfilcnt_t = u64; + pub type rlim_t = u64; + #[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))] +@@ -16,11 +19,23 @@ + #[cfg(not(all(target_arch = "x86_64", target_pointer_width = "32")))] + pub type __syscall_ulong_t = c_ulong; + ++#[cfg(target_arch = "sw64")] ++pub type blkcnt_t = u32; ++#[cfg(target_arch = "sw64")] ++pub type fsblkcnt_t = i32; ++#[cfg(target_arch = "sw64")] ++pub type fsfilcnt_t = u32; ++ ++ + cfg_if! { + if #[cfg(all(target_arch = "aarch64", target_pointer_width = "32"))] { + pub type clock_t = i32; + pub type time_t = i32; + pub type __fsword_t = i32; ++ } else if #[cfg(target_arch = "sw64")] { ++ pub type clock_t = i64; ++ pub type time_t = i64; ++ pub type __fsword_t = i32; + } else { + pub type __fsword_t = i64; + pub type clock_t = i64; +@@ -77,7 +92,8 @@ pub struct semid_ds { + target_arch = "mips64r6", + target_arch = "powerpc64", + target_arch = "riscv64", +- target_arch = "sparc64" ++ target_arch = "sparc64", ++ target_arch = "sw64" + )))] + __reserved: crate::__syscall_ulong_t, + pub sem_ctime: crate::time_t, +@@ -88,7 +104,8 @@ pub struct semid_ds { + target_arch = "mips64r6", + target_arch = "powerpc64", + target_arch = "riscv64", +- target_arch = "sparc64" ++ target_arch = "sparc64", ++ target_arch = "sw64" + )))] + __reserved2: crate::__syscall_ulong_t, + pub sem_nsems: crate::__syscall_ulong_t, +@@ -126,6 +143,9 @@ pub struct semid_ds { + } else if #[cfg(any(target_arch = "loongarch64"))] { + mod loongarch64; + pub use self::loongarch64::*; ++ } else if #[cfg(target_arch = "sw64")] { ++ mod sw64; ++ pub use self::sw64::*; + } else { + // Unknown target_arch + } +diff --git a/vendor/libc-0.2.169/src/unix/linux_like/linux/gnu/b64/sw64.rs b/vendor/libc-0.2.169/src/unix/linux_like/linux/gnu/b64/sw64.rs +new file mode 100644 +index 00000000000..6f8c71eb676 +--- /dev/null ++++ b/vendor/libc-0.2.169/src/unix/linux_like/linux/gnu/b64/sw64.rs +@@ -0,0 +1,930 @@ ++//! SW64-specific definitions for 64-bit linux-like values ++ ++//use pthread_mutex_t; ++use crate::prelude::*; ++use crate::{off64_t, off_t, pthread_mutex_t}; ++ ++pub type blksize_t = u32; ++pub type c_char = i8; ++pub type c_long = i64; ++pub type c_ulong = u64; ++pub type nlink_t = u32; ++pub type suseconds_t = i64; ++pub type wchar_t = i32; ++pub type __u64 = c_ulong; ++pub type __s64 = c_long; ++ ++s! { ++ pub struct mcontext_t { ++ pub sc_onstack: c_long, ++ pub sc_mask: c_long, ++ pub sc_pc: c_long, ++ pub sc_ps: c_long, ++ pub sc_regs: [c_long; 32], ++ pub sc_ownedfp: c_long, ++ pub sc_fpregs: [c_long; 32], ++ pub fpcr: c_ulong, ++ } ++ ++ pub struct ucontext_t { ++ pub uc_flags: c_ulong, ++ pub uc_link: *mut ucontext_t, ++ pub __uc_odd_sigmask: c_ulong, ++ pub sc_stack: crate::stack_t, ++ pub uc_mcontext: mcontext_t, ++ pub uc_sigmask: crate::sigset_t, ++ } ++ ++ pub struct stat { ++ pub st_dev: crate::dev_t, ++ pub st_ino: crate::ino64_t, ++ pub st_rdev: crate::dev_t, ++ pub st_size: off_t, ++ pub st_blocks: crate::blkcnt_t, ++ __pad1: c_int, ++ ++ pub st_mode: crate::mode_t, ++ pub st_uid: crate::uid_t, ++ pub st_gid: crate::gid_t, ++ pub st_blksize: crate::blksize_t, ++ pub st_nlink: crate::nlink_t, ++ __pad2: c_int, ++ pub st_atime: crate::time_t, ++ pub st_atime_nsec: c_long, ++ pub st_mtime: crate::time_t, ++ pub st_mtime_nsec: c_long, ++ pub st_ctime: crate::time_t, ++ pub st_ctime_nsec: c_long, ++ __glibc_reserved: [c_long; 3], ++ } ++ ++ pub struct stat64 { ++ pub st_dev: crate::dev_t, ++ pub st_ino: crate::ino64_t, ++ pub st_rdev: crate::dev_t, ++ pub st_size: off64_t, ++ pub st_blocks: crate::blkcnt64_t, ++ ++ pub st_mode: crate::mode_t, ++ pub st_uid: crate::uid_t, ++ pub st_gid: crate::gid_t, ++ pub st_blksize: crate::blksize_t, ++ pub st_nlink: crate::nlink_t, ++ __pad0: c_int, ++ ++ pub st_atime: crate::time_t, ++ pub st_atime_nsec: c_long, ++ pub st_mtime: crate::time_t, ++ pub st_mtime_nsec: c_long, ++ pub st_ctime: crate::time_t, ++ pub st_ctime_nsec: c_long, ++ __unused: [c_long; 3], ++ } ++ ++ pub struct statfs64 { ++ pub f_type: c_long, ++ pub f_bsize: c_long, ++ pub f_blocks: c_long, ++ pub f_bfree: c_long, ++ pub f_bavail: c_long, ++ pub f_files: c_ulong, ++ pub f_ffree: c_ulong, ++ pub f_fsid: crate::fsid_t, ++ pub f_namelen: c_long, ++ pub f_frsize: c_long, ++ pub f_flags: c_long, ++ pub f_spare: [c_long; 4], ++ } ++ ++ pub struct statvfs { ++ pub f_bsize: c_ulong, ++ pub f_frsize: c_ulong, ++ pub f_blocks: crate::fsblkcnt_t, ++ pub f_bfree: crate::fsblkcnt_t, ++ pub f_bavail: crate::fsblkcnt_t, ++ pub f_files: crate::fsfilcnt_t, ++ pub f_ffree: crate::fsfilcnt_t, ++ pub f_favail: crate::fsfilcnt_t, ++ pub f_fsid: c_ulong, ++ pub f_flag: c_ulong, ++ pub f_namemax: c_ulong, ++ __f_spare: [c_int; 6], ++ } ++ ++ pub struct statvfs64 { ++ pub f_bsize: c_ulong, ++ pub f_frsize: c_ulong, ++ pub f_blocks: c_long, ++ pub f_bfree: c_long, ++ pub f_bavail: c_long, ++ pub f_files: c_ulong, ++ pub f_ffree: c_ulong, ++ pub f_favail: c_ulong, ++ pub f_fsid: c_ulong, ++ pub f_flag: c_ulong, ++ pub f_namemax: c_ulong, ++ __f_spare: [c_int; 6], ++ } ++ ++ pub struct pthread_attr_t { ++ __size: [c_ulong; 7] ++ } ++ ++ pub struct sigaction { ++ pub sa_sigaction: crate::sighandler_t, ++ pub sa_mask: crate::sigset_t, ++ pub sa_flags: c_int, ++ } ++ ++ pub struct stack_t { ++ pub ss_sp: *mut c_void, ++ pub ss_flags: c_int, ++ pub ss_size: size_t ++ } ++ ++ pub struct siginfo_t { ++ pub si_signo: c_int, ++ pub si_errno: c_int, ++ pub si_code: c_int, ++ pub _pad: [c_int; 29], ++ _align: [usize; 0], ++ } ++ ++ pub struct flock { ++ pub l_type: c_short, ++ pub l_whence: c_short, ++ pub l_start: off_t, ++ pub l_len: off_t, ++ pub l_pid: crate::pid_t, ++ } ++ ++ pub struct ipc_perm { ++ pub __key: crate::key_t, ++ pub uid: crate::uid_t, ++ pub gid: crate::gid_t, ++ pub cuid: crate::uid_t, ++ pub cgid: crate::gid_t, ++ pub mode: c_uint, ++ pub __seq: c_ushort, ++ __pad1: c_ushort, ++ __unused1: c_ulong, ++ __unused2: c_ulong ++ } ++ ++ pub struct shmid_ds { ++ pub shm_perm: crate::ipc_perm, ++ pub shm_segsz: size_t, ++ pub shm_atime: crate::time_t, ++ pub shm_dtime: crate::time_t, ++ pub shm_ctime: crate::time_t, ++ pub shm_cpid: crate::pid_t, ++ pub shm_lpid: crate::pid_t, ++ pub shm_nattch: crate::shmatt_t, ++ __unused4: c_ulong, ++ __unused5: c_ulong ++ } ++ ++ // copy from 1.34.2 libc/src/unix/notbsd/linux/other/mod.rs ++ pub struct statfs { ++ pub f_type: c_long, ++ pub f_bsize: c_long, ++ pub f_blocks: c_long, ++ pub f_bfree: c_long, ++ pub f_bavail: c_long, ++ ++ pub f_files: c_long, ++ pub f_ffree: c_long, ++ pub f_fsid: crate::fsid_t, ++ ++ pub f_namelen: c_long, ++ pub f_frsize: c_long, ++ pub f_flags: c_long, ++ f_spare: [c_long; 4], ++ } ++} ++ ++pub const __SIZEOF_PTHREAD_BARRIERATTR_T: usize = 4; ++pub const __SIZEOF_PTHREAD_CONDATTR_T: usize = 4; ++pub const __SIZEOF_PTHREAD_MUTEXATTR_T: usize = 4; ++pub const __SIZEOF_PTHREAD_BARRIER_T: usize = 32; ++pub const __SIZEOF_PTHREAD_MUTEX_T: usize = 40; ++pub const __SIZEOF_PTHREAD_RWLOCK_T: usize = 56; ++ ++pub const PTHREAD_RECURSIVE_MUTEX_INITIALIZER_NP: pthread_mutex_t = ++pthread_mutex_t { ++ size: [ ++ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, ++ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ++ ], ++}; ++pub const PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP: pthread_mutex_t = ++pthread_mutex_t { ++ size: [ ++ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 0, 0, 0, 0, ++ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ++ ], ++}; ++pub const PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP: pthread_mutex_t = ++pthread_mutex_t { ++ size: [ ++ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, ++ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ++ ], ++}; ++ ++pub const TIOCGSOFTCAR: c_ulong = 0x5419; ++pub const TIOCSSOFTCAR: c_ulong = 0x541A; ++ ++pub const O_APPEND: c_int = 0o00010; ++pub const O_CREAT: c_int = 0o01000; ++pub const O_EXCL: c_int = 0o04000; ++pub const O_NOCTTY: c_int = 0o010000; ++pub const O_DIRECT: c_int = 0o02000000; ++pub const O_DIRECTORY: c_int = 0o0100000; ++pub const O_NOFOLLOW: c_int = 0o0200000; ++pub const O_NONBLOCK: c_int = 0o00004; ++pub const O_CLOEXEC: c_int = 0o010000000; ++ ++pub const O_DSYNC: c_int = 0o040000; ++pub const O_SYNC: c_int = 0o020000000 | O_DSYNC; ++pub const O_RSYNC: c_int = O_SYNC; // TODO ++pub const O_FSYNC: c_int = O_SYNC; // TODO ++ ++pub const O_NOATIME: c_int = 0o04000000; ++pub const O_PATH: c_int = 0o040000000; ++pub const O_TMPFILE: c_int = 0o0100100000; ++ ++pub const MAP_GROWSDOWN: c_int = 0x01000; ++ ++pub const EDEADLK: c_int = 11; ++pub const ENAMETOOLONG: c_int = 63; ++pub const ENOLCK: c_int = 77; ++pub const ENOSYS: c_int = 78; ++pub const ENOTEMPTY: c_int = 66; ++pub const ELOOP: c_int = 62; ++ ++pub const ENOMSG: c_int = 80; ++pub const EIDRM: c_int = 81; ++pub const ECHRNG: c_int = 88; ++pub const EL2NSYNC: c_int = 89; ++pub const EL3HLT: c_int = 90; ++pub const EL3RST: c_int = 91; ++pub const ELNRNG: c_int = 93; ++pub const EUNATCH: c_int = 94; ++pub const ENOCSI: c_int = 95; ++pub const EL2HLT: c_int = 96; ++pub const EBADE: c_int = 97; ++pub const EBADR: c_int = 98; ++pub const EXFULL: c_int = 99; ++pub const ENOANO: c_int = 100; ++pub const EBADRQC: c_int = 101; ++pub const EBADSLT: c_int = 102; ++pub const EMULTIHOP: c_int = 110; ++pub const EOVERFLOW: c_int = 112; ++pub const ENOTUNIQ: c_int = 113; ++pub const EBADFD: c_int = 114; ++pub const EBADMSG: c_int = 84; ++ ++pub const EREMCHG: c_int = 115; ++pub const ELIBACC: c_int = 122; ++pub const ELIBBAD: c_int = 123; ++pub const ELIBSCN: c_int = 124; ++pub const ELIBMAX: c_int = 125; ++pub const ELIBEXEC: c_int = 126; ++pub const EILSEQ: c_int = 116; ++ ++pub const ERESTART: c_int = 127; ++pub const ESTRPIPE: c_int = 128; ++pub const EUSERS: c_int = 68; ++pub const ENOTSOCK: c_int = 38; ++pub const EDESTADDRREQ: c_int = 39; ++pub const EMSGSIZE: c_int = 40; ++pub const EPROTOTYPE: c_int = 41; ++pub const ENOPROTOOPT: c_int = 42; ++pub const EPROTONOSUPPORT: c_int = 43; ++pub const ESOCKTNOSUPPORT: c_int = 44; ++pub const EOPNOTSUPP: c_int = 45; ++pub const EPFNOSUPPORT: c_int = 46; ++pub const EAFNOSUPPORT: c_int = 47; ++pub const EADDRINUSE: c_int = 48; ++pub const EADDRNOTAVAIL: c_int = 49; ++pub const ENETDOWN: c_int = 50; ++pub const ENETUNREACH: c_int = 51; ++pub const ENETRESET: c_int = 52; ++pub const ECONNABORTED: c_int = 53; ++pub const ECONNRESET: c_int = 54; ++pub const ENOBUFS: c_int = 55; ++pub const EISCONN: c_int = 56; ++pub const ENOTCONN: c_int = 57; ++pub const ESHUTDOWN: c_int = 58; ++pub const ETOOMANYREFS: c_int = 59; ++pub const ETIMEDOUT: c_int = 60; ++pub const ECONNREFUSED: c_int = 61; ++pub const EHOSTDOWN: c_int = 64; ++pub const EHOSTUNREACH: c_int = 65; ++pub const EALREADY: c_int = 37; ++pub const EINPROGRESS: c_int = 36; ++pub const ESTALE: c_int = 70; ++pub const EDQUOT: c_int = 69; ++ ++pub const ENOMEDIUM: c_int = 129; ++pub const EMEDIUMTYPE: c_int = 130; ++pub const ECANCELED: c_int = 131; ++pub const ENOKEY: c_int = 132; ++pub const EKEYEXPIRED: c_int = 133; ++pub const EKEYREVOKED: c_int = 134; ++pub const EKEYREJECTED: c_int = 135; ++pub const EOWNERDEAD: c_int = 136; ++pub const ENOTRECOVERABLE: c_int = 137; ++pub const EHWPOISON: c_int = 139; ++pub const ERFKILL: c_int = 138; ++ ++pub const SA_ONSTACK: c_int = 0x00000001; ++pub const SA_SIGINFO: c_int = 0x00000040; ++pub const SA_NOCLDWAIT: c_int = 0x00000020; ++ ++pub const SIGCHLD: c_int = 20; ++pub const SIGBUS: c_int = 10; ++pub const SIGUSR1: c_int = 30; ++pub const SIGUSR2: c_int = 31; ++pub const SIGCONT: c_int = 19; ++pub const SIGSTOP: c_int = 17; ++pub const SIGTSTP: c_int = 18; ++pub const SIGURG: c_int = 16; ++pub const SIGIO: c_int = 23; ++pub const SIGSYS: c_int = 12; ++pub const SIGINFO: c_int = 29; ++//pub const SIGSTKFLT: c_int = 16; ++pub const SIGUNUSED: c_int = 31; ++pub const SIGPOLL: c_int = SIGIO; ++pub const SIGPWR: c_int = SIGINFO; ++pub const SIG_SETMASK: c_int = 3; ++pub const SIG_BLOCK: c_int = 1; ++pub const SIG_UNBLOCK: c_int = 2; ++ ++pub const POLLWRNORM: c_short = 0x0100; // TODO ++pub const POLLWRBAND: c_short = 0x0200; ++pub const O_ASYNC: c_int = 0o020000; ++pub const O_NDELAY: c_int = 0o00004; ++pub const PTRACE_DETACH: c_uint = 17; ++pub const EFD_NONBLOCK: c_int = 0o000000004; ++ ++pub const F_GETLK: c_int = 7; ++pub const F_GETOWN: c_int = 6; ++pub const F_SETOWN: c_int = 5; ++pub const F_SETLK: c_int = 8; ++pub const F_SETLKW: c_int = 9; ++pub const F_RDLCK: c_int = 1; ++pub const F_WRLCK: c_int = 2; ++pub const F_UNLCK: c_int = 8; ++ ++pub const SFD_NONBLOCK: c_int = 0o000000004; ++pub const TIOCEXCL: c_ulong = 0x540C; ++pub const TIOCNXCL: c_ulong = 0x540D; ++pub const TIOCSCTTY: c_ulong = 0x540E; ++pub const TIOCSTI: c_ulong = 0x5412; ++pub const TIOCMGET: c_ulong = 0x5415; ++pub const TIOCMBIS: c_ulong = 0x5416; ++pub const TIOCMBIC: c_ulong = 0x5417; ++pub const TIOCMSET: c_ulong = 0x5418; ++pub const TIOCCONS: c_ulong = 0x541D; ++ ++pub const SFD_CLOEXEC: c_int = 0o010000000; ++ ++pub const NCCS: usize = 32; ++pub const O_TRUNC: c_int = 0o02000; ++pub const EBFONT: c_int = 104; ++pub const ENOSTR: c_int = 87; ++pub const ENODATA: c_int = 86; ++pub const ETIME: c_int = 83; ++pub const ENOSR: c_int = 82; ++pub const ENONET: c_int = 105; ++pub const ENOPKG: c_int = 92; ++pub const EREMOTE: c_int = 71; ++pub const EREMOTEIO: c_int = 121; ++pub const ENOLINK: c_int = 106; ++pub const EADV: c_int = 107; ++pub const ESRMNT: c_int = 108; ++pub const ECOMM: c_int = 109; ++pub const EPROTO: c_int = 85; ++pub const EDOTDOT: c_int = 111; ++pub const SA_NODEFER: c_int = 0x00000008; ++pub const SA_NOMASK: c_int = SA_NODEFER; ++pub const SA_RESETHAND: c_int = 0x00000010; ++pub const SA_ONESHOT: c_int = SA_RESETHAND; ++pub const SA_RESTART: c_int = 0x00000002; ++pub const SA_NOCLDSTOP: c_int = 0x00000004; ++ ++pub const EPOLL_CLOEXEC: c_int = 0o010000000; // TODO ++pub const EFD_CLOEXEC: c_int = 0o010000000; // TODO ++ ++pub const MAP_LOCKED: c_int = 0x08000; ++pub const MAP_NORESERVE: c_int = 0x10000; ++ ++pub const EDEADLOCK: c_int = EDEADLK; ++ ++pub const FIOCLEX: c_ulong = 0x20006601; ++pub const FIONBIO: c_ulong = 0x8004667e; ++ ++pub const MCL_CURRENT: c_int = 8192; ++pub const MCL_FUTURE: c_int = 16384; ++ ++pub const SIGSTKSZ: size_t = 16384; ++pub const MINSIGSTKSZ: size_t = 4096; ++pub const CBAUD: crate::tcflag_t = 0o0000037; ++pub const CBAUDEX: crate::tcflag_t = 0o0000000; ++pub const TAB1: c_uint = 0o00002000; ++pub const TAB2: c_uint = 0o00004000; ++pub const TAB3: c_uint = 0o00006000; ++pub const CR1: c_uint = 0o00010000; ++pub const CR2: c_uint = 0o00020000; ++pub const CR3: c_uint = 0o00030000; ++pub const FF1: c_uint = 0o00040000; ++pub const BS1: c_uint = 0o00100000; ++pub const VT1: c_uint = 0o00200000; ++ ++pub const VWERASE: usize = 4; ++pub const VREPRINT: usize = 6; ++pub const VSUSP: usize = 10; ++pub const VSTART: usize = 12; ++pub const VSTOP: usize = 13; ++pub const VDISCARD: usize = 15; ++pub const VTIME: usize = 17; ++pub const IXON: crate::tcflag_t = 0o0001000; ++pub const IXOFF: crate::tcflag_t = 0o0002000; ++pub const ONLCR: crate::tcflag_t = 0o0000002; ++pub const CSIZE: crate::tcflag_t = 0o00001400; ++pub const CS6: crate::tcflag_t = 0o00000400; ++pub const CS7: crate::tcflag_t = 0o00001000; ++pub const CS8: crate::tcflag_t = 0o00001400; ++pub const CSTOPB: crate::tcflag_t = 0o00002000; ++pub const CREAD: crate::tcflag_t = 0o00004000; ++pub const PARENB: crate::tcflag_t = 0o00010000; ++pub const PARODD: crate::tcflag_t = 0o00020000; ++ ++pub const EXTPROC: crate::tcflag_t = 0x10000000; ++pub const HUPCL: crate::tcflag_t = 0o00040000; ++pub const CLOCAL: crate::tcflag_t = 0o00100000; ++pub const ECHOKE: crate::tcflag_t = 0x00000001; ++pub const ECHOE: crate::tcflag_t = 0x00000002; ++pub const ECHOK: crate::tcflag_t = 0x00000004; ++pub const ECHONL: crate::tcflag_t = 0x00000010; ++pub const ECHOPRT: crate::tcflag_t = 0x00000020; ++pub const ECHOCTL: crate::tcflag_t = 0x00000040; ++pub const ISIG: crate::tcflag_t = 0x00000080; ++pub const ICANON: crate::tcflag_t = 0x00000100; ++pub const PENDIN: crate::tcflag_t = 0x20000000; ++pub const NOFLSH: crate::tcflag_t = 0x80000000; ++//pub const CIBAUD: crate::tcflag_t = 0o07600000; ++pub const VSWTC: usize = 7; ++pub const OLCUC: crate::tcflag_t = 0o0000004; ++pub const NLDLY: crate::tcflag_t = 0o00001400; ++pub const CRDLY: crate::tcflag_t = 0o00030000; ++pub const TABDLY: crate::tcflag_t = 0o00006000; ++pub const BSDLY: crate::tcflag_t = 0o00100000; ++pub const FFDLY: crate::tcflag_t = 0o00040000; ++pub const VTDLY: crate::tcflag_t = 0o00200000; ++pub const XTABS: crate::tcflag_t = 0o00006000; ++pub const IBSHIFT: crate::tcflag_t = 16; ++pub const B0: crate::speed_t = 0o0000000; ++pub const B50: crate::speed_t = 0o0000001; ++pub const B75: crate::speed_t = 0o0000002; ++pub const B110: crate::speed_t = 0o0000003; ++pub const B134: crate::speed_t = 0o0000004; ++pub const B150: crate::speed_t = 0o0000005; ++pub const B200: crate::speed_t = 0o0000006; ++pub const B300: crate::speed_t = 0o0000007; ++pub const B600: crate::speed_t = 0o0000010; ++pub const B1200: crate::speed_t = 0o0000011; ++pub const B1800: crate::speed_t = 0o0000012; ++pub const B2400: crate::speed_t = 0o0000013; ++pub const B4800: crate::speed_t = 0o0000014; ++pub const B9600: crate::speed_t = 0o0000015; ++pub const B19200: crate::speed_t = 0o0000016; ++pub const B38400: crate::speed_t = 0o0000017; ++pub const EXTA: crate::speed_t = B19200; ++pub const EXTB: crate::speed_t = B38400; ++pub const BOTHER: crate::speed_t = 0o010000; ++//pub const BOTHER1: crate::speed_t = 0o010001; ++pub const B57600: crate::speed_t = 0o00020; ++pub const B115200: crate::speed_t = 0o00021; ++pub const B230400: crate::speed_t = 0o00022; ++pub const B460800: crate::speed_t = 0o00023; ++pub const B500000: crate::speed_t = 0o00024; ++pub const B576000: crate::speed_t = 0o00025; ++pub const B921600: crate::speed_t = 0o00026; ++pub const B1000000: crate::speed_t = 0o00027; ++pub const B1152000: crate::speed_t = 0o00030; ++pub const B1500000: crate::speed_t = 0o00031; ++pub const B2000000: crate::speed_t = 0o00032; ++pub const B2500000: crate::speed_t = 0o00033; ++pub const B3000000: crate::speed_t = 0o00034; ++pub const B3500000: crate::speed_t = 0o00035; ++pub const B4000000: crate::speed_t = 0o00036; ++ ++pub const VEOL: usize = 1; ++pub const VEOL2: usize = 2; ++//pub const _VEOL: usize = 5; ++//pub const _VEOL2: usize = 6; ++pub const VMIN: usize = 16; ++//pub const _VMIN: usize = 4; ++pub const IEXTEN: crate::tcflag_t = 0x00000400; ++//pub const EXTPROC1: crate::tcflag_t = 0x10000000; ++//pub const EXTPROC: crate::tcflag_t = 0x10000000; ++pub const TOSTOP: crate::tcflag_t = 0x00400000; ++pub const FLUSHO: crate::tcflag_t = 0x00800000; ++ ++ ++pub const MAP_ANON: c_int = 0x0010; ++pub const MAP_ANONYMOUS: c_int = 0x0010; ++pub const MAP_DENYWRITE: c_int = 0x2000; ++pub const MAP_EXECUTABLE: c_int = 0x04000; ++pub const MAP_POPULATE: c_int = 0x20000; ++pub const MAP_NONBLOCK: c_int = 0x40000; ++pub const MAP_STACK: c_int = 0x80000; ++pub const EUCLEAN: c_int = 117; ++pub const ENOTNAM: c_int = 118; ++pub const ENAVAIL: c_int = 119; ++pub const EISNAM: c_int = 120; ++pub const SOCK_STREAM: c_int = 1; ++pub const SOCK_DGRAM: c_int = 2; ++pub const SIGTTIN: c_int = 21; ++pub const SIGTTOU: c_int = 22; ++pub const SIGXCPU: c_int = 24; ++pub const SIGXFSZ: c_int = 25; ++pub const SIGVTALRM: c_int = 26; ++pub const SIGPROF: c_int = 27; ++pub const SIGWINCH: c_int = 28; ++pub const POSIX_FADV_DONTNEED: c_int = 4; ++pub const POSIX_FADV_NOREUSE: c_int = 5; ++pub const VEOF: usize = 0; ++pub const MAP_HUGETLB: c_int = 0x100000; ++pub const TCSANOW: c_int = 0; ++pub const TCSADRAIN: c_int = 1; ++pub const TCSAFLUSH: c_int = 2; ++pub const TIOCLINUX: c_ulong = 0x541C; ++pub const TIOCGSERIAL: c_ulong = 0x541E; ++pub const RTLD_DEEPBIND: c_int = 0x8; ++pub const RTLD_GLOBAL: c_int = 0x100; ++pub const RTLD_NOLOAD: c_int = 0x4; ++pub const TIOCM_ST: c_int = 0x008; ++pub const TIOCM_SR: c_int = 0x010; ++pub const TIOCM_CTS: c_int = 0x020; ++pub const TIOCM_CAR: c_int = 0x040; ++pub const TIOCM_RNG: c_int = 0x080; ++pub const TIOCM_DSR: c_int = 0x100; ++ ++//Syscall table ++pub const SYS_exit: c_long = 1; ++pub const SYS_fork: c_long = 2; ++pub const SYS_read: c_long = 3; ++pub const SYS_write: c_long = 4; ++pub const SYS_close: c_long = 6; ++pub const SYS_link: c_long = 9; ++pub const SYS_unlink: c_long = 10; ++pub const SYS_chdir: c_long = 12; ++pub const SYS_fchdir: c_long = 13; ++pub const SYS_mknod: c_long = 14; ++pub const SYS_chmod: c_long = 15; ++pub const SYS_chown: c_long = 16; ++pub const SYS_brk: c_long = 17; ++pub const SYS_lseek: c_long = 19; ++pub const SYS_getxpid: c_long = 20; ++pub const SYS_umount: c_long = 22; ++pub const SYS_umount2: c_long = SYS_umount; ++pub const SYS_setuid: c_long = 23; ++pub const SYS_getxuid: c_long = 24; ++pub const SYS_ptrace: c_long = 26; ++pub const SYS_access: c_long = 33; ++pub const SYS_sync: c_long = 36; ++pub const SYS_kill: c_long = 37; ++pub const SYS_setpgid: c_long = 39; ++pub const SYS_dup: c_long = 41; ++pub const SYS_pipe: c_long = 42; ++pub const SYS_open: c_long = 45; ++pub const SYS_getxgid: c_long = 47; ++pub const SYS_acct: c_long = 51; ++pub const SYS_sigpending: c_long = 52; ++pub const SYS_ioctl: c_long = 54; ++pub const SYS_symlink: c_long = 57; ++pub const SYS_readlink: c_long = 58; ++pub const SYS_execve: c_long = 59; ++pub const SYS_umask: c_long = 60; ++pub const SYS_chroot: c_long = 61; ++pub const SYS_getpgrp: c_long = 63; ++pub const SYS_vfork: c_long = 66; ++pub const SYS_stat: c_long = 67; ++pub const SYS_lstat: c_long = 68; ++pub const SYS_mmap: c_long = 71; ++pub const SYS_munmap: c_long = 73; ++pub const SYS_mprotect: c_long = 74; ++pub const SYS_madvise: c_long = 75; ++pub const SYS_vhangup: c_long = 76; ++pub const SYS_getgroups: c_long = 79; ++pub const SYS_setgroups: c_long = 80; ++pub const SYS_setpgrp: c_long = 82; ++pub const SYS_gethostname: c_long = 87; ++pub const SYS_sethostname: c_long = 88; ++pub const SYS_dup2: c_long = 90; ++pub const SYS_fstat: c_long = 91; ++pub const SYS_fcntl: c_long = 92; ++pub const SYS_poll: c_long = 94; ++pub const SYS_fsync: c_long = 95; ++pub const SYS_setpriority: c_long = 96; ++pub const SYS_socket: c_long = 97; ++pub const SYS_connect: c_long = 98; ++pub const SYS_accept: c_long = 99; ++pub const SYS_send: c_long = 101; ++pub const SYS_recv: c_long = 102; ++pub const SYS_sigreturn: c_long = 103; ++pub const SYS_bind: c_long = 104; ++pub const SYS_setsockopt: c_long = 105; ++pub const SYS_listen: c_long = 106; ++pub const SYS_sigsuspend: c_long = 111; ++pub const SYS_recvmsg: c_long = 113; ++pub const SYS_sendmsg: c_long = 114; ++pub const SYS_getsockopt: c_long = 118; ++pub const SYS_readv: c_long = 120; ++pub const SYS_writev: c_long = 121; ++pub const SYS_fchown: c_long = 123; ++pub const SYS_fchmod: c_long = 124; ++pub const SYS_recvfrom: c_long = 125; ++pub const SYS_setreuid: c_long = 126; ++pub const SYS_setregid: c_long = 127; ++pub const SYS_rename: c_long = 128; ++pub const SYS_truncate: c_long = 129; ++pub const SYS_ftruncate: c_long = 130; ++pub const SYS_flock: c_long = 131; ++pub const SYS_setgid: c_long = 132; ++pub const SYS_sendto: c_long = 133; ++pub const SYS_shutdown: c_long = 134; ++pub const SYS_socketpair: c_long = 135; ++pub const SYS_mkdir: c_long = 136; ++pub const SYS_rmdir: c_long = 137; ++pub const SYS_getpeername: c_long = 141; ++pub const SYS_getrlimit: c_long = 144; ++pub const SYS_setrlimit: c_long = 145; ++pub const SYS_setsid: c_long = 147; ++pub const SYS_quotactl: c_long = 148; ++pub const SYS_getsockname: c_long = 150; ++pub const SYS_sigaction: c_long = 156; ++pub const SYS_setdomainname: c_long = 166; ++pub const SYS_bpf: c_long = 170; ++pub const SYS_userfaultfd: c_long = 171; ++pub const SYS_membarrier: c_long = 172; ++pub const SYS_mlock2: c_long = 173; ++pub const SYS_getpid: c_long = 174; ++pub const SYS_getppid: c_long = 175; ++pub const SYS_getuid: c_long = 176; ++pub const SYS_geteuid: c_long = 177; ++pub const SYS_getgid: c_long = 178; ++pub const SYS_getegid: c_long = 179; ++pub const SYS_msgctl: c_long = 200; ++pub const SYS_msgget: c_long = 201; ++pub const SYS_msgrcv: c_long = 202; ++pub const SYS_msgsnd: c_long = 203; ++pub const SYS_semctl: c_long = 204; ++pub const SYS_semget: c_long = 205; ++pub const SYS_semop: c_long = 206; ++pub const SYS_lchown: c_long = 208; ++pub const SYS_shmctl: c_long = 210; ++pub const SYS_shmdt: c_long = 211; ++pub const SYS_shmget: c_long = 212; ++pub const SYS_msync: c_long = 217; ++pub const SYS_getpgid: c_long = 233; ++pub const SYS_getsid: c_long = 234; ++pub const SYS_sigaltstack: c_long = 235; ++pub const SYS_sysfs: c_long = 254; ++pub const SYS_pidfd_send_signal: c_long = 271; ++pub const SYS_pidfd_open: c_long = 281; ++pub const SYS_pidfd_getfd: c_long = 285; ++pub const SYS_getpriority: c_long = 298; ++pub const SYS_bdflush: c_long = 300; ++pub const SYS_mount: c_long = 302; ++pub const SYS_swapoff: c_long = 304; ++pub const SYS_getdents: c_long = 305; ++pub const SYS_create_module: c_long = 306; ++pub const SYS_init_module: c_long = 307; ++pub const SYS_delete_module: c_long = 308; ++pub const SYS_get_kernel_syms: c_long = 309; ++pub const SYS_syslog: c_long = 310; ++pub const SYS_reboot: c_long = 311; ++pub const SYS_clone: c_long = 312; ++pub const SYS_clone3: c_long = 282; ++pub const SYS_uselib: c_long = 313; ++pub const SYS_mlock: c_long = 314; ++pub const SYS_munlock: c_long = 315; ++pub const SYS_mlockall: c_long = 316; ++pub const SYS_munlockall: c_long = 317; ++pub const SYS_sysinfo: c_long = 318; ++pub const SYS_oldumount: c_long = 321; ++pub const SYS_swapon: c_long = 322; ++pub const SYS_times: c_long = 323; ++pub const SYS_personality: c_long = 324; ++pub const SYS_setfsuid: c_long = 325; ++pub const SYS_setfsgid: c_long = 326; ++pub const SYS_ustat: c_long = 327; ++pub const SYS_statfs: c_long = 328; ++pub const SYS_fstatfs: c_long = 329; ++pub const SYS_sched_setparam: c_long = 330; ++pub const SYS_sched_getparam: c_long = 331; ++pub const SYS_sched_setscheduler: c_long = 332; ++pub const SYS_sched_getscheduler: c_long = 333; ++pub const SYS_sched_yield: c_long = 334; ++pub const SYS_sched_get_priority_max: c_long = 335; ++pub const SYS_sched_get_priority_min: c_long = 336; ++pub const SYS_sched_rr_get_interval: c_long = 337; ++pub const SYS_afs_syscall: c_long = 338; ++pub const SYS_uname: c_long = 339; ++pub const SYS_nanosleep: c_long = 340; ++pub const SYS_mremap: c_long = 341; ++pub const SYS_nfsservctl: c_long = 342; ++pub const SYS_setresuid: c_long = 343; ++pub const SYS_getresuid: c_long = 344; ++pub const SYS_pciconfig_read: c_long = 345; ++pub const SYS_pciconfig_write: c_long = 346; ++pub const SYS_query_module: c_long = 347; ++pub const SYS_prctl: c_long = 348; ++pub const SYS_pread64: c_long = 349; ++pub const SYS_pwrite64: c_long = 350; ++pub const SYS_rt_sigreturn: c_long = 351; ++pub const SYS_rt_sigaction: c_long = 352; ++pub const SYS_rt_sigprocmask: c_long = 353; ++pub const SYS_rt_sigpending: c_long = 354; ++pub const SYS_rt_sigtimedwait: c_long = 355; ++pub const SYS_rt_sigqueueinfo: c_long = 356; ++pub const SYS_rt_sigsuspend: c_long = 357; ++pub const SYS_select: c_long = 358; ++pub const SYS_gettimeofday: c_long = 359; ++pub const SYS_settimeofday: c_long = 360; ++pub const SYS_getitimer: c_long = 361; ++pub const SYS_setitimer: c_long = 362; ++pub const SYS_utimes: c_long = 363; ++pub const SYS_getrusage: c_long = 364; ++pub const SYS_wait4: c_long = 365; ++pub const SYS_adjtimex: c_long = 366; ++pub const SYS_getcwd: c_long = 367; ++pub const SYS_capget: c_long = 368; ++pub const SYS_capset: c_long = 369; ++pub const SYS_sendfile: c_long = 370; ++pub const SYS_setresgid: c_long = 371; ++pub const SYS_getresgid: c_long = 372; ++pub const SYS_dipc: c_long = 373; ++pub const SYS_pivot_root: c_long = 374; ++pub const SYS_mincore: c_long = 375; ++pub const SYS_pciconfig_iobase: c_long = 376; ++pub const SYS_getdents64: c_long = 377; ++pub const SYS_gettid: c_long = 378; ++pub const SYS_readahead: c_long = 379; ++pub const SYS_tkill: c_long = 381; ++pub const SYS_setxattr: c_long = 382; ++pub const SYS_lsetxattr: c_long = 383; ++pub const SYS_fsetxattr: c_long = 384; ++pub const SYS_getxattr: c_long = 385; ++pub const SYS_lgetxattr: c_long = 386; ++pub const SYS_fgetxattr: c_long = 387; ++pub const SYS_listxattr: c_long = 388; ++pub const SYS_llistxattr: c_long = 389; ++pub const SYS_flistxattr: c_long = 390; ++pub const SYS_removexattr: c_long = 391; ++pub const SYS_lremovexattr: c_long = 392; ++pub const SYS_fremovexattr: c_long = 393; ++pub const SYS_futex: c_long = 394; ++pub const SYS_sched_setaffinity: c_long = 395; ++pub const SYS_sched_getaffinity: c_long = 396; ++pub const SYS_tuxcall: c_long = 397; ++pub const SYS_io_setup: c_long = 398; ++pub const SYS_io_destroy: c_long = 399; ++pub const SYS_io_getevents: c_long = 400; ++pub const SYS_io_submit: c_long = 401; ++pub const SYS_io_cancel: c_long = 402; ++pub const SYS_exit_group: c_long = 405; ++pub const SYS_lookup_dcookie: c_long = 406; ++pub const SYS_epoll_create: c_long = 407; ++pub const SYS_epoll_ctl: c_long = 408; ++pub const SYS_epoll_wait: c_long = 409; ++pub const SYS_remap_file_pages: c_long = 410; ++pub const SYS_set_tid_address: c_long = 411; ++pub const SYS_restart_syscall: c_long = 412; ++pub const SYS_fadvise64: c_long = 413; ++pub const SYS_timer_create: c_long = 414; ++pub const SYS_timer_settime: c_long = 415; ++pub const SYS_timer_gettime: c_long = 416; ++pub const SYS_timer_getoverrun: c_long = 417; ++pub const SYS_timer_delete: c_long = 418; ++pub const SYS_clock_settime: c_long = 419; ++pub const SYS_clock_gettime: c_long = 420; ++pub const SYS_clock_getres: c_long = 421; ++pub const SYS_clock_nanosleep: c_long = 422; ++pub const SYS_semtimedop: c_long = 423; ++pub const SYS_tgkill: c_long = 424; ++pub const SYS_stat64: c_long = 425; ++pub const SYS_lstat64: c_long = 426; ++pub const SYS_fstat64: c_long = 427; ++pub const SYS_vserver: c_long = 428; ++pub const SYS_mbind: c_long = 429; ++pub const SYS_get_mempolicy: c_long = 430; ++pub const SYS_set_mempolicy: c_long = 431; ++pub const SYS_mq_open: c_long = 432; ++pub const SYS_mq_unlink: c_long = 433; ++pub const SYS_mq_timedsend: c_long = 434; ++pub const SYS_mq_timedreceive: c_long = 435; ++pub const SYS_mq_notify: c_long = 436; ++pub const SYS_mq_getsetattr: c_long = 437; ++pub const SYS_waitid: c_long = 438; ++pub const SYS_add_key: c_long = 439; ++pub const SYS_request_key: c_long = 440; ++pub const SYS_keyctl: c_long = 441; ++pub const SYS_ioprio_set: c_long = 442; ++pub const SYS_ioprio_get: c_long = 443; ++pub const SYS_inotify_init: c_long = 444; ++pub const SYS_inotify_add_watch: c_long = 445; ++pub const SYS_inotify_rm_watch: c_long = 446; ++pub const SYS_fdatasync: c_long = 447; ++pub const SYS_kexec_load: c_long = 448; ++pub const SYS_migrate_pages: c_long = 449; ++pub const SYS_openat: c_long = 450; ++pub const SYS_mkdirat: c_long = 451; ++pub const SYS_mknodat: c_long = 452; ++pub const SYS_fchownat: c_long = 453; ++pub const SYS_futimesat: c_long = 454; ++pub const SYS_fstatat64: c_long = 455; ++pub const SYS_unlinkat: c_long = 456; ++pub const SYS_renameat: c_long = 457; ++pub const SYS_linkat: c_long = 458; ++pub const SYS_symlinkat: c_long = 459; ++pub const SYS_readlinkat: c_long = 460; ++pub const SYS_fchmodat: c_long = 461; ++pub const SYS_faccessat: c_long = 462; ++pub const SYS_pselect6: c_long = 463; ++pub const SYS_ppoll: c_long = 464; ++pub const SYS_unshare: c_long = 465; ++pub const SYS_set_robust_list: c_long = 466; ++pub const SYS_get_robust_list: c_long = 467; ++pub const SYS_splice: c_long = 468; ++pub const SYS_sync_file_range: c_long = 469; ++pub const SYS_tee: c_long = 470; ++pub const SYS_vmsplice: c_long = 471; ++pub const SYS_move_pages: c_long = 472; ++pub const SYS_getcpu: c_long = 473; ++pub const SYS_epoll_pwait: c_long = 474; ++pub const SYS_utimensat: c_long = 475; ++pub const SYS_signalfd: c_long = 476; ++pub const SYS_timerfd: c_long = 477; ++pub const SYS_eventfd: c_long = 478; ++pub const SYS_recvmmsg: c_long = 479; ++pub const SYS_fallocate: c_long = 480; ++pub const SYS_timerfd_create: c_long = 481; ++pub const SYS_timerfd_settime: c_long = 482; ++pub const SYS_timerfd_gettime: c_long = 483; ++pub const SYS_signalfd4: c_long = 484; ++pub const SYS_eventfd2: c_long = 485; ++pub const SYS_epoll_create1: c_long = 486; ++pub const SYS_dup3: c_long = 487; ++pub const SYS_pipe2: c_long = 488; ++pub const SYS_inotify_init1: c_long = 489; ++pub const SYS_preadv: c_long = 490; ++pub const SYS_pwritev: c_long = 491; ++pub const SYS_rt_tgsigqueueinfo: c_long = 492; ++pub const SYS_perf_event_open: c_long = 493; ++pub const SYS_fanotify_init: c_long = 494; ++pub const SYS_fanotify_mark: c_long = 495; ++pub const SYS_prlimit64: c_long = 496; ++pub const SYS_name_to_handle_at: c_long = 497; ++pub const SYS_open_by_handle_at: c_long = 498; ++pub const SYS_clock_adjtime: c_long = 499; ++pub const SYS_syncfs: c_long = 500; ++pub const SYS_setns: c_long = 501; ++pub const SYS_accept4: c_long = 502; ++pub const SYS_sendmmsg: c_long = 503; ++pub const SYS_process_vm_readv: c_long = 504; ++pub const SYS_process_vm_writev: c_long = 505; ++pub const SYS_kcmp: c_long = 506; ++pub const SYS_finit_module: c_long = 507; ++pub const SYS_sched_setattr: c_long = 508; ++pub const SYS_sched_getattr: c_long = 509; ++pub const SYS_renameat2: c_long = 510; ++pub const SYS_getrandom: c_long = 511; ++pub const SYS_memfd_create: c_long = 512; ++pub const SYS_execveat: c_long = 513; ++pub const SYS_seccomp: c_long = 514; ++pub const SYS_copy_file_range: c_long = 515; ++pub const SYS_preadv2: c_long = 516; ++pub const SYS_pwritev2: c_long = 517; ++pub const SYS_statx: c_long = 518; ++ ++pub const F_OFD_GETLK: c_int = 36; ++pub const F_OFD_SETLK: c_int = 37; ++pub const F_OFD_SETLKW: c_int = 38; ++ ++#[link(name = "util")] ++extern "C" { ++ pub fn sysctl( ++ name: *mut c_int, ++ namelen: c_int, ++ oldp: *mut c_void, ++ oldlenp: *mut size_t, ++ newp: *mut c_void, ++ newlen: size_t, ++ ) -> c_int; ++} +diff --git a/vendor/libc-0.2.169/src/unix/linux_like/linux/gnu/mod.rs b/vendor/libc-0.2.169/src/unix/linux_like/linux/gnu/mod.rs +index 75ac2e088f7..df271d3e063 100644 +--- a/vendor/libc-0.2.169/src/unix/linux_like/linux/gnu/mod.rs ++++ b/vendor/libc-0.2.169/src/unix/linux_like/linux/gnu/mod.rs +@@ -8,6 +8,9 @@ + pub type regoff_t = c_int; + pub type __kernel_rwf_t = c_int; + ++#[cfg(target_arch = "sw64")] ++pub type termios2 = termios; ++ + cfg_if! { + if #[cfg(doc)] { + // Used in `linux::arch` to define ioctl constants. +@@ -81,7 +84,10 @@ pub struct termios { + pub c_oflag: crate::tcflag_t, + pub c_cflag: crate::tcflag_t, + pub c_lflag: crate::tcflag_t, ++ #[cfg(target_arch = "sw64")] ++ pub c_cc: [crate::cc_t; crate::NCCS], + pub c_line: crate::cc_t, ++ #[cfg(not(target_arch = "sw64"))] + pub c_cc: [crate::cc_t; crate::NCCS], + #[cfg(not(any( + target_arch = "sparc", +@@ -1566,6 +1572,7 @@ pub fn epoll_pwait2( + target_arch = "s390x", + target_arch = "sparc64", + target_arch = "riscv64", ++ target_arch = "sw64", + target_arch = "loongarch64" + ))] { + mod b64; +diff --git a/vendor/libc-0.2.169/src/unix/linux_like/linux/mod.rs b/vendor/libc-0.2.169/src/unix/linux_like/linux/mod.rs +index 7321d37a684..9f707dd6b68 100644 +--- a/vendor/libc-0.2.169/src/unix/linux_like/linux/mod.rs ++++ b/vendor/libc-0.2.169/src/unix/linux_like/linux/mod.rs +@@ -10,6 +10,9 @@ + pub type mode_t = u32; + pub type ino64_t = u64; + pub type off64_t = i64; ++#[cfg(target_arch = "sw64")] ++pub type blkcnt64_t = u64; ++#[cfg(not(target_arch = "sw64"))] + pub type blkcnt64_t = i64; + pub type rlim64_t = u64; + pub type mqd_t = c_int; +@@ -1115,6 +1118,7 @@ pub struct epoll_params { + target_arch = "aarch64", + target_arch = "riscv64", + target_arch = "riscv32", ++ target_arch = "sw64", + target_arch = "loongarch64" + ), + repr(align(4)) +@@ -1131,6 +1135,7 @@ pub struct epoll_params { + target_arch = "aarch64", + target_arch = "riscv64", + target_arch = "riscv32", ++ target_arch = "sw64", + target_arch = "loongarch64" + )), + repr(align(8)) +@@ -4674,6 +4679,9 @@ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + pub const MAP_DROPPABLE: c_int = 0x8; + + // include/uapi/asm-generic/mman-common.h ++#[cfg(target_arch = "sw64")] ++pub const MAP_FIXED_NOREPLACE: c_int = 0x200000; ++#[cfg(not(target_arch = "sw64"))] + pub const MAP_FIXED_NOREPLACE: c_int = 0x100000; + pub const MLOCK_ONFAULT: c_uint = 0x01; + +@@ -5210,6 +5218,9 @@ pub fn FUTEX_OP(op: c_int, oparg: c_int, cmp: c_int, cmparg: c_int) -> c_int { + pub const ENOEXEC: c_int = 8; + pub const EBADF: c_int = 9; + pub const ECHILD: c_int = 10; ++#[cfg(target_arch = "sw64")] ++pub const EAGAIN: c_int = 35; ++#[cfg(not(target_arch = "sw64"))] + pub const EAGAIN: c_int = 11; + pub const ENOMEM: c_int = 12; + pub const EACCES: c_int = 13; +diff --git a/vendor/libc-0.2.169/src/unix/linux_like/mod.rs b/vendor/libc-0.2.169/src/unix/linux_like/mod.rs +index ff8b63a9aba..ba7e0340d96 100644 +--- a/vendor/libc-0.2.169/src/unix/linux_like/mod.rs ++++ b/vendor/libc-0.2.169/src/unix/linux_like/mod.rs +@@ -637,13 +637,22 @@ fn hash(&self, state: &mut H) { + pub const MAP_FILE: c_int = 0x0000; + pub const MAP_SHARED: c_int = 0x0001; + pub const MAP_PRIVATE: c_int = 0x0002; ++#[cfg(target_arch = "sw64")] ++pub const MAP_FIXED: c_int = 0x0100; ++#[cfg(not(target_arch = "sw64"))] + pub const MAP_FIXED: c_int = 0x0010; + + pub const MAP_FAILED: *mut c_void = !0 as *mut c_void; + + // MS_ flags for msync(2) + pub const MS_ASYNC: c_int = 0x0001; ++#[cfg(target_arch = "sw64")] ++pub const MS_INVALIDATE: c_int = 0x0004; ++#[cfg(not(target_arch = "sw64"))] + pub const MS_INVALIDATE: c_int = 0x0002; ++#[cfg(target_arch = "sw64")] ++pub const MS_SYNC: c_int = 0x0002; ++#[cfg(not(target_arch = "sw64"))] + pub const MS_SYNC: c_int = 0x0004; + + // MS_ flags for mount(2) +@@ -687,7 +696,10 @@ fn hash(&self, state: &mut H) { + pub const MADV_RANDOM: c_int = 1; + pub const MADV_SEQUENTIAL: c_int = 2; + pub const MADV_WILLNEED: c_int = 3; ++#[cfg(target_arch = "sw64")] + pub const MADV_DONTNEED: c_int = 4; ++#[cfg(not(target_arch = "sw64"))] ++pub const MADV_DONTNEED: c_int = 6; + pub const MADV_FREE: c_int = 8; + pub const MADV_REMOVE: c_int = 9; + pub const MADV_DONTFORK: c_int = 10; +@@ -1165,11 +1177,23 @@ fn hash(&self, state: &mut H) { + pub const FF0: crate::tcflag_t = 0x00000000; + pub const BS0: crate::tcflag_t = 0x00000000; + pub const VT0: crate::tcflag_t = 0x00000000; +-pub const VERASE: usize = 2; +-pub const VKILL: usize = 3; +-pub const VINTR: usize = 0; +-pub const VQUIT: usize = 1; +-pub const VLNEXT: usize = 15; ++ ++cfg_if! { ++ if #[cfg(target_arch = "sw64")] { ++ pub const VERASE: usize = 3; ++ pub const VKILL: usize = 5; ++ pub const VINTR: usize = 8; ++ pub const VQUIT: usize = 9; ++ pub const VLNEXT: usize = 14; ++ } else { ++ pub const VERASE: usize = 2; ++ pub const VKILL: usize = 3; ++ pub const VINTR: usize = 0; ++ pub const VQUIT: usize = 1; ++ pub const VLNEXT: usize = 15; ++ } ++} ++ + pub const IGNBRK: crate::tcflag_t = 0x00000001; + pub const BRKINT: crate::tcflag_t = 0x00000002; + pub const IGNPAR: crate::tcflag_t = 0x00000004; +diff --git a/vendor/linux-raw-sys-0.4.14/src/lib.rs b/vendor/linux-raw-sys-0.4.14/src/lib.rs +index 0e3fe2fe2bb..f8e95d1cd0c 100644 +--- a/vendor/linux-raw-sys-0.4.14/src/lib.rs ++++ b/vendor/linux-raw-sys-0.4.14/src/lib.rs +@@ -1270,3 +1270,64 @@ pub const fn sig_ign() -> super::general::__kernel_sighandler_t { + #[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))] + #[path = "x32/xdp.rs"] + pub mod xdp; ++#[cfg(feature = "bootparam")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/bootparam.rs"] ++pub mod bootparam; ++#[cfg(feature = "errno")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/errno.rs"] ++pub mod errno; ++#[cfg(feature = "general")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/general.rs"] ++pub mod general; ++#[cfg(feature = "if_arp")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/if_arp.rs"] ++pub mod if_arp; ++#[cfg(feature = "if_ether")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/if_ether.rs"] ++pub mod if_ether; ++#[cfg(feature = "if_packet")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/if_packet.rs"] ++pub mod if_packet; ++#[cfg(feature = "io_uring")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/io_uring.rs"] ++pub mod io_uring; ++#[cfg(feature = "ioctl")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/ioctl.rs"] ++pub mod ioctl; ++#[cfg(feature = "loop_device")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/loop_device.rs"] ++pub mod loop_device; ++#[cfg(feature = "mempolicy")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/mempolicy.rs"] ++pub mod mempolicy; ++#[cfg(feature = "net")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/net.rs"] ++pub mod net; ++#[cfg(feature = "netlink")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/netlink.rs"] ++pub mod netlink; ++#[cfg(feature = "prctl")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/prctl.rs"] ++pub mod prctl; ++#[cfg(feature = "system")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/system.rs"] ++pub mod system; ++#[cfg(feature = "xdp")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/xdp.rs"] ++pub mod xdp; ++ +diff --git a/vendor/linux-raw-sys-0.4.14/src/sw64/bootparam.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/bootparam.rs +new file mode 100644 +index 00000000000..286ed79ea54 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/bootparam.rs +@@ -0,0 +1,3 @@ ++/* automatically generated by rust-bindgen 0.66.1 */ ++ ++ +diff --git a/vendor/linux-raw-sys-0.4.14/src/sw64/errno.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/errno.rs +new file mode 100644 +index 00000000000..337d8379f58 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/errno.rs +@@ -0,0 +1,137 @@ ++/* automatically generated by rust-bindgen 0.66.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 ENOMSG: u32 = 35; ++pub const EIDRM: u32 = 36; ++pub const ECHRNG: u32 = 37; ++pub const EL2NSYNC: u32 = 38; ++pub const EL3HLT: u32 = 39; ++pub const EL3RST: u32 = 40; ++pub const ELNRNG: u32 = 41; ++pub const EUNATCH: u32 = 42; ++pub const ENOCSI: u32 = 43; ++pub const EL2HLT: u32 = 44; ++pub const EDEADLK: u32 = 45; ++pub const ENOLCK: u32 = 46; ++pub const EBADE: u32 = 50; ++pub const EBADR: u32 = 51; ++pub const EXFULL: u32 = 52; ++pub const ENOANO: u32 = 53; ++pub const EBADRQC: u32 = 54; ++pub const EBADSLT: u32 = 55; ++pub const EDEADLOCK: u32 = 56; ++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 EDOTDOT: u32 = 73; ++pub const EMULTIHOP: u32 = 74; ++pub const EBADMSG: u32 = 77; ++pub const ENAMETOOLONG: u32 = 78; ++pub const EOVERFLOW: u32 = 79; ++pub const ENOTUNIQ: u32 = 80; ++pub const EBADFD: u32 = 81; ++pub const EREMCHG: u32 = 82; ++pub const ELIBACC: u32 = 83; ++pub const ELIBBAD: u32 = 84; ++pub const ELIBSCN: u32 = 85; ++pub const ELIBMAX: u32 = 86; ++pub const ELIBEXEC: u32 = 87; ++pub const EILSEQ: u32 = 88; ++pub const ENOSYS: u32 = 89; ++pub const ELOOP: u32 = 90; ++pub const ERESTART: u32 = 91; ++pub const ESTRPIPE: u32 = 92; ++pub const ENOTEMPTY: u32 = 93; ++pub const EUSERS: u32 = 94; ++pub const ENOTSOCK: u32 = 95; ++pub const EDESTADDRREQ: u32 = 96; ++pub const EMSGSIZE: u32 = 97; ++pub const EPROTOTYPE: u32 = 98; ++pub const ENOPROTOOPT: u32 = 99; ++pub const EPROTONOSUPPORT: u32 = 120; ++pub const ESOCKTNOSUPPORT: u32 = 121; ++pub const EOPNOTSUPP: u32 = 122; ++pub const EPFNOSUPPORT: u32 = 123; ++pub const EAFNOSUPPORT: u32 = 124; ++pub const EADDRINUSE: u32 = 125; ++pub const EADDRNOTAVAIL: u32 = 126; ++pub const ENETDOWN: u32 = 127; ++pub const ENETUNREACH: u32 = 128; ++pub const ENETRESET: u32 = 129; ++pub const ECONNABORTED: u32 = 130; ++pub const ECONNRESET: u32 = 131; ++pub const ENOBUFS: u32 = 132; ++pub const EISCONN: u32 = 133; ++pub const ENOTCONN: u32 = 134; ++pub const EUCLEAN: u32 = 135; ++pub const ENOTNAM: u32 = 137; ++pub const ENAVAIL: u32 = 138; ++pub const EISNAM: u32 = 139; ++pub const EREMOTEIO: u32 = 140; ++pub const EINIT: u32 = 141; ++pub const EREMDEV: u32 = 142; ++pub const ESHUTDOWN: u32 = 143; ++pub const ETOOMANYREFS: u32 = 144; ++pub const ETIMEDOUT: u32 = 145; ++pub const ECONNREFUSED: u32 = 146; ++pub const EHOSTDOWN: u32 = 147; ++pub const EHOSTUNREACH: u32 = 148; ++pub const EWOULDBLOCK: u32 = 11; ++pub const EALREADY: u32 = 149; ++pub const EINPROGRESS: u32 = 150; ++pub const ESTALE: u32 = 151; ++pub const ECANCELED: u32 = 158; ++pub const ENOMEDIUM: u32 = 159; ++pub const EMEDIUMTYPE: u32 = 160; ++pub const ENOKEY: u32 = 161; ++pub const EKEYEXPIRED: u32 = 162; ++pub const EKEYREVOKED: u32 = 163; ++pub const EKEYREJECTED: u32 = 164; ++pub const EOWNERDEAD: u32 = 165; ++pub const ENOTRECOVERABLE: u32 = 166; ++pub const ERFKILL: u32 = 167; ++pub const EHWPOISON: u32 = 168; ++pub const EDQUOT: u32 = 1133; +diff --git a/vendor/linux-raw-sys-0.4.14/src/sw64/general.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/general.rs +new file mode 100644 +index 00000000000..e6bca15bc83 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/general.rs +@@ -0,0 +1,3030 @@ ++/* automatically generated by rust-bindgen 0.66.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++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_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 fsid_t = __kernel_fsid_t; ++pub type __fsword_t = __u32; ++#[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)] ++#[derive(Debug, Copy, Clone)] ++pub struct __kernel_fd_set { ++pub fds_bits: [crate::ctypes::c_ulong; 16usize], ++} ++#[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 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 __reserved: [__u8; 4usize], ++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 __reserved: __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 __reserved: [__u32; 8usize], ++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, 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 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 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 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 __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 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 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_flags: crate::ctypes::c_uint, ++pub sa_handler: __sighandler_t, ++pub sa_mask: sigset_t, ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct sigaltstack { ++pub ss_sp: *mut crate::ctypes::c_void, ++pub ss_size: __kernel_size_t, ++pub ss_flags: crate::ctypes::c_int, ++} ++#[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; 8usize], ++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; 8usize], ++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_code: crate::ctypes::c_int, ++pub si_errno: 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 __spare3: [__u64; 12usize], ++} ++#[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; 23usize], ++} ++#[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; 23usize], ++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; 23usize], ++pub c_ispeed: speed_t, ++pub c_ospeed: speed_t, ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct sgttyb { ++pub sg_ispeed: crate::ctypes::c_char, ++pub sg_ospeed: crate::ctypes::c_char, ++pub sg_erase: crate::ctypes::c_char, ++pub sg_kill: crate::ctypes::c_char, ++pub sg_flags: crate::ctypes::c_int, ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct tchars { ++pub t_intrc: crate::ctypes::c_char, ++pub t_quitc: crate::ctypes::c_char, ++pub t_startc: crate::ctypes::c_char, ++pub t_stopc: crate::ctypes::c_char, ++pub t_eofc: crate::ctypes::c_char, ++pub t_brkc: crate::ctypes::c_char, ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct ltchars { ++pub t_suspc: crate::ctypes::c_char, ++pub t_dsuspc: crate::ctypes::c_char, ++pub t_rprntc: crate::ctypes::c_char, ++pub t_flushc: crate::ctypes::c_char, ++pub t_werasc: crate::ctypes::c_char, ++pub t_lnextc: crate::ctypes::c_char, ++} ++#[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_char, ++pub c_cc: [crate::ctypes::c_uchar; 23usize], ++} ++#[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, 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)] ++pub struct linux_dirent64 { ++pub d_ino: crate::ctypes::c_ulong, ++pub d_off: crate::ctypes::c_long, ++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_uint, ++pub st_pad0: [crate::ctypes::c_uint; 3usize], ++pub st_ino: crate::ctypes::c_ulong, ++pub st_mode: __kernel_mode_t, ++pub st_nlink: __u32, ++pub st_uid: __kernel_uid32_t, ++pub st_gid: __kernel_gid32_t, ++pub st_rdev: crate::ctypes::c_uint, ++pub st_pad1: [crate::ctypes::c_uint; 3usize], ++pub st_size: crate::ctypes::c_long, ++pub st_atime: crate::ctypes::c_uint, ++pub st_atime_nsec: crate::ctypes::c_uint, ++pub st_mtime: crate::ctypes::c_uint, ++pub st_mtime_nsec: crate::ctypes::c_uint, ++pub st_ctime: crate::ctypes::c_uint, ++pub st_ctime_nsec: crate::ctypes::c_uint, ++pub st_blksize: crate::ctypes::c_uint, ++pub st_pad2: crate::ctypes::c_uint, ++pub st_blocks: crate::ctypes::c_ulong, ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct statfs { ++pub f_type: crate::ctypes::c_long, ++pub f_bsize: crate::ctypes::c_long, ++pub f_frsize: crate::ctypes::c_long, ++pub f_blocks: crate::ctypes::c_long, ++pub f_bfree: crate::ctypes::c_long, ++pub f_files: crate::ctypes::c_long, ++pub f_ffree: crate::ctypes::c_long, ++pub f_bavail: crate::ctypes::c_long, ++pub f_fsid: __kernel_fsid_t, ++pub f_namelen: crate::ctypes::c_long, ++pub f_flags: crate::ctypes::c_long, ++pub f_spare: [crate::ctypes::c_long; 5usize], ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct statfs64 { ++pub f_type: crate::ctypes::c_long, ++pub f_bsize: crate::ctypes::c_long, ++pub f_frsize: crate::ctypes::c_long, ++pub f_blocks: crate::ctypes::c_long, ++pub f_bfree: crate::ctypes::c_long, ++pub f_files: crate::ctypes::c_long, ++pub f_ffree: crate::ctypes::c_long, ++pub f_bavail: crate::ctypes::c_long, ++pub f_fsid: __kernel_fsid_t, ++pub f_namelen: crate::ctypes::c_long, ++pub f_flags: crate::ctypes::c_long, ++pub f_spare: [crate::ctypes::c_long; 5usize], ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct compat_statfs64 { ++pub f_type: __u32, ++pub f_bsize: __u32, ++pub f_frsize: __u32, ++pub __pad: __u32, ++pub f_blocks: __u64, ++pub f_bfree: __u64, ++pub f_files: __u64, ++pub f_ffree: __u64, ++pub f_bavail: __u64, ++pub f_fsid: __kernel_fsid_t, ++pub f_namelen: __u32, ++pub f_flags: __u32, ++pub f_spare: [__u32; 5usize], ++} ++#[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 = 393984; ++pub const LINUX_VERSION_MAJOR: u32 = 6; ++pub const LINUX_VERSION_PATCHLEVEL: u32 = 3; ++pub const LINUX_VERSION_SUBLEVEL: u32 = 0; ++pub const AT_SYSINFO_EHDR: u32 = 33; ++pub const AT_VECTOR_SIZE_ARCH: u32 = 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_EXECFN: u32 = 31; ++pub const AT_MINSIGSTKSZ: u32 = 51; ++pub const __FD_SETSIZE: u32 = 1024; ++pub const _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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_APPEND: u32 = 8; ++pub const O_DSYNC: u32 = 16; ++pub const O_NONBLOCK: u32 = 128; ++pub const O_CREAT: u32 = 256; ++pub const O_TRUNC: u32 = 512; ++pub const O_EXCL: u32 = 1024; ++pub const O_NOCTTY: u32 = 2048; ++pub const FASYNC: u32 = 4096; ++pub const O_LARGEFILE: u32 = 8192; ++pub const __O_SYNC: u32 = 16384; ++pub const O_SYNC: u32 = 16400; ++pub const O_DIRECT: u32 = 32768; ++pub const F_GETLK: u32 = 14; ++pub const F_SETLK: u32 = 6; ++pub const F_SETLKW: u32 = 7; ++pub const F_SETOWN: u32 = 24; ++pub const F_GETOWN: u32 = 23; ++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_DIRECTORY: u32 = 65536; ++pub const O_NOFOLLOW: u32 = 131072; ++pub const O_NOATIME: u32 = 262144; ++pub const O_CLOEXEC: u32 = 524288; ++pub const O_PATH: u32 = 2097152; ++pub const __O_TMPFILE: u32 = 4194304; ++pub const O_TMPFILE: u32 = 4259840; ++pub const O_TMPFILE_MASK: u32 = 4260096; ++pub const O_NDELAY: u32 = 128; ++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_SETSIG: u32 = 10; ++pub const F_GETSIG: u32 = 11; ++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_CANCELLK: u32 = 1029; ++pub const F_DUPFD_CLOEXEC: u32 = 1030; ++pub const F_NOTIFY: u32 = 1026; ++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 AT_SYMLINK_NOFOLLOW: u32 = 256; ++pub const AT_EACCESS: u32 = 512; ++pub const AT_REMOVEDIR: u32 = 512; ++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 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 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_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 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_SIZEBITS: u32 = 13; ++pub const _IOC_DIRBITS: u32 = 3; ++pub const _IOC_NONE: u32 = 1; ++pub const _IOC_READ: u32 = 2; ++pub const _IOC_WRITE: u32 = 4; ++pub const _IOC_NRBITS: u32 = 8; ++pub const _IOC_TYPEBITS: u32 = 8; ++pub const _IOC_NRMASK: u32 = 255; ++pub const _IOC_TYPEMASK: u32 = 255; ++pub const _IOC_SIZEMASK: u32 = 8191; ++pub const _IOC_DIRMASK: u32 = 7; ++pub const _IOC_NRSHIFT: u32 = 0; ++pub const _IOC_TYPESHIFT: u32 = 8; ++pub const _IOC_SIZESHIFT: u32 = 16; ++pub const _IOC_DIRSHIFT: u32 = 29; ++pub const IOC_IN: u32 = 2147483648; ++pub const IOC_OUT: u32 = 1073741824; ++pub const IOC_INOUT: u32 = 3221225472; ++pub const IOCSIZE_MASK: u32 = 536805376; ++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_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__MASK: u32 = 375; ++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 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 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 FILE_DEDUPE_RANGE_SAME: u32 = 0; ++pub const FILE_DEDUPE_RANGE_DIFFERS: u32 = 1; ++pub const NR_FILE: u32 = 8192; ++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 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 FUTEX_32: u32 = 2; ++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 = 128; ++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 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 PROT_NONE: u32 = 0; ++pub const PROT_READ: u32 = 1; ++pub const PROT_WRITE: u32 = 2; ++pub const PROT_EXEC: u32 = 4; ++pub const PROT_SEM: u32 = 16; ++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_RENAME: u32 = 32; ++pub const MAP_AUTOGROW: u32 = 64; ++pub const MAP_LOCAL: u32 = 128; ++pub const MAP_AUTORSRV: u32 = 256; ++pub const MAP_NORESERVE: u32 = 1024; ++pub const MAP_ANONYMOUS: u32 = 2048; ++pub const MAP_GROWSDOWN: u32 = 4096; ++pub const MAP_DENYWRITE: u32 = 8192; ++pub const MAP_EXECUTABLE: u32 = 16384; ++pub const MAP_LOCKED: u32 = 32768; ++pub const MAP_POPULATE: u32 = 65536; ++pub const MAP_NONBLOCK: u32 = 131072; ++pub const MAP_STACK: u32 = 262144; ++pub const MAP_HUGETLB: u32 = 524288; ++pub const MAP_FIXED_NOREPLACE: u32 = 1048576; ++pub const MS_ASYNC: u32 = 1; ++pub const MS_INVALIDATE: u32 = 2; ++pub const MS_SYNC: u32 = 4; ++pub const MCL_CURRENT: u32 = 1; ++pub const MCL_FUTURE: u32 = 2; ++pub const MCL_ONFAULT: u32 = 4; ++pub const MLOCK_ONFAULT: u32 = 1; ++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_MERGEABLE: u32 = 12; ++pub const MADV_UNMERGEABLE: u32 = 13; ++pub const MADV_HWPOISON: u32 = 100; ++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 MAP_FILE: 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 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_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 POLLWRBAND: u32 = 256; ++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 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 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 CLOCKS_MASK: u32 = 1; ++pub const CLOCKS_MONO: u32 = 1; ++pub const TIMER_ABSTIME: u32 = 1; ++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_NOFILE: u32 = 5; ++pub const RLIMIT_AS: u32 = 6; ++pub const RLIMIT_RSS: u32 = 7; ++pub const RLIMIT_NPROC: u32 = 8; ++pub const RLIMIT_MEMLOCK: u32 = 9; ++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_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_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 = 128; ++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 SIGIOT: u32 = 6; ++pub const SIGABRT: u32 = 6; ++pub const SIGEMT: u32 = 7; ++pub const SIGFPE: u32 = 8; ++pub const SIGKILL: u32 = 9; ++pub const SIGBUS: u32 = 10; ++pub const SIGSEGV: u32 = 11; ++pub const SIGSYS: u32 = 12; ++pub const SIGPIPE: u32 = 13; ++pub const SIGALRM: u32 = 14; ++pub const SIGTERM: u32 = 15; ++pub const SIGUSR1: u32 = 16; ++pub const SIGUSR2: u32 = 17; ++pub const SIGCHLD: u32 = 18; ++pub const SIGCLD: u32 = 18; ++pub const SIGPWR: u32 = 19; ++pub const SIGWINCH: u32 = 20; ++pub const SIGURG: u32 = 21; ++pub const SIGIO: u32 = 22; ++pub const SIGPOLL: u32 = 22; ++pub const SIGSTOP: u32 = 23; ++pub const SIGTSTP: u32 = 24; ++pub const SIGCONT: u32 = 25; ++pub const SIGTTIN: u32 = 26; ++pub const SIGTTOU: u32 = 27; ++pub const SIGVTALRM: u32 = 28; ++pub const SIGPROF: u32 = 29; ++pub const SIGXCPU: u32 = 30; ++pub const SIGXFSZ: u32 = 31; ++pub const SIGRTMIN: u32 = 32; ++pub const SIGRTMAX: u32 = 128; ++pub const SA_ONSTACK: u32 = 134217728; ++pub const SA_RESETHAND: u32 = 2147483648; ++pub const SA_RESTART: u32 = 268435456; ++pub const SA_SIGINFO: u32 = 8; ++pub const SA_NODEFER: u32 = 1073741824; ++pub const SA_NOCLDWAIT: u32 = 65536; ++pub const SA_NOCLDSTOP: u32 = 1; ++pub const SA_NOMASK: u32 = 1073741824; ++pub const SA_ONESHOT: u32 = 2147483648; ++pub const MINSIGSTKSZ: u32 = 2048; ++pub const SIGSTKSZ: u32 = 8192; ++pub const SIG_BLOCK: u32 = 1; ++pub const SIG_UNBLOCK: u32 = 2; ++pub const SIG_SETMASK: u32 = 3; ++pub const SA_UNSUPPORTED: u32 = 1024; ++pub const SA_EXPOSE_TAGBITS: u32 = 2048; ++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 NSIGSEGV: u32 = 9; ++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__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 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 ENOMSG: u32 = 35; ++pub const EIDRM: u32 = 36; ++pub const ECHRNG: u32 = 37; ++pub const EL2NSYNC: u32 = 38; ++pub const EL3HLT: u32 = 39; ++pub const EL3RST: u32 = 40; ++pub const ELNRNG: u32 = 41; ++pub const EUNATCH: u32 = 42; ++pub const ENOCSI: u32 = 43; ++pub const EL2HLT: u32 = 44; ++pub const EDEADLK: u32 = 45; ++pub const ENOLCK: u32 = 46; ++pub const EBADE: u32 = 50; ++pub const EBADR: u32 = 51; ++pub const EXFULL: u32 = 52; ++pub const ENOANO: u32 = 53; ++pub const EBADRQC: u32 = 54; ++pub const EBADSLT: u32 = 55; ++pub const EDEADLOCK: u32 = 56; ++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 EDOTDOT: u32 = 73; ++pub const EMULTIHOP: u32 = 74; ++pub const EBADMSG: u32 = 77; ++pub const ENAMETOOLONG: u32 = 78; ++pub const EOVERFLOW: u32 = 79; ++pub const ENOTUNIQ: u32 = 80; ++pub const EBADFD: u32 = 81; ++pub const EREMCHG: u32 = 82; ++pub const ELIBACC: u32 = 83; ++pub const ELIBBAD: u32 = 84; ++pub const ELIBSCN: u32 = 85; ++pub const ELIBMAX: u32 = 86; ++pub const ELIBEXEC: u32 = 87; ++pub const EILSEQ: u32 = 88; ++pub const ENOSYS: u32 = 89; ++pub const ELOOP: u32 = 90; ++pub const ERESTART: u32 = 91; ++pub const ESTRPIPE: u32 = 92; ++pub const ENOTEMPTY: u32 = 93; ++pub const EUSERS: u32 = 94; ++pub const ENOTSOCK: u32 = 95; ++pub const EDESTADDRREQ: u32 = 96; ++pub const EMSGSIZE: u32 = 97; ++pub const EPROTOTYPE: u32 = 98; ++pub const ENOPROTOOPT: u32 = 99; ++pub const EPROTONOSUPPORT: u32 = 120; ++pub const ESOCKTNOSUPPORT: u32 = 121; ++pub const EOPNOTSUPP: u32 = 122; ++pub const EPFNOSUPPORT: u32 = 123; ++pub const EAFNOSUPPORT: u32 = 124; ++pub const EADDRINUSE: u32 = 125; ++pub const EADDRNOTAVAIL: u32 = 126; ++pub const ENETDOWN: u32 = 127; ++pub const ENETUNREACH: u32 = 128; ++pub const ENETRESET: u32 = 129; ++pub const ECONNABORTED: u32 = 130; ++pub const ECONNRESET: u32 = 131; ++pub const ENOBUFS: u32 = 132; ++pub const EISCONN: u32 = 133; ++pub const ENOTCONN: u32 = 134; ++pub const EUCLEAN: u32 = 135; ++pub const ENOTNAM: u32 = 137; ++pub const ENAVAIL: u32 = 138; ++pub const EISNAM: u32 = 139; ++pub const EREMOTEIO: u32 = 140; ++pub const EINIT: u32 = 141; ++pub const EREMDEV: u32 = 142; ++pub const ESHUTDOWN: u32 = 143; ++pub const ETOOMANYREFS: u32 = 144; ++pub const ETIMEDOUT: u32 = 145; ++pub const ECONNREFUSED: u32 = 146; ++pub const EHOSTDOWN: u32 = 147; ++pub const EHOSTUNREACH: u32 = 148; ++pub const EWOULDBLOCK: u32 = 11; ++pub const EALREADY: u32 = 149; ++pub const EINPROGRESS: u32 = 150; ++pub const ESTALE: u32 = 151; ++pub const ECANCELED: u32 = 158; ++pub const ENOMEDIUM: u32 = 159; ++pub const EMEDIUMTYPE: u32 = 160; ++pub const ENOKEY: u32 = 161; ++pub const EKEYEXPIRED: u32 = 162; ++pub const EKEYREVOKED: u32 = 163; ++pub const EKEYREJECTED: u32 = 164; ++pub const EOWNERDEAD: u32 = 165; ++pub const ENOTRECOVERABLE: u32 = 166; ++pub const ERFKILL: u32 = 167; ++pub const EHWPOISON: u32 = 168; ++pub const EDQUOT: u32 = 1133; ++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 = 23; ++pub const VINTR: u32 = 0; ++pub const VQUIT: u32 = 1; ++pub const VERASE: u32 = 2; ++pub const VKILL: u32 = 3; ++pub const VMIN: u32 = 4; ++pub const VTIME: u32 = 5; ++pub const VEOL2: u32 = 6; ++pub const VSWTC: u32 = 7; ++pub const VSWTCH: u32 = 7; ++pub const VSTART: u32 = 8; ++pub const VSTOP: u32 = 9; ++pub const VSUSP: u32 = 10; ++pub const VREPRINT: u32 = 12; ++pub const VDISCARD: u32 = 13; ++pub const VWERASE: u32 = 14; ++pub const VLNEXT: u32 = 15; ++pub const VEOF: u32 = 16; ++pub const VEOL: u32 = 17; ++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 IEXTEN: u32 = 256; ++pub const ECHOCTL: u32 = 512; ++pub const ECHOPRT: u32 = 1024; ++pub const ECHOKE: u32 = 2048; ++pub const FLUSHO: u32 = 8192; ++pub const PENDIN: u32 = 16384; ++pub const TOSTOP: u32 = 32768; ++pub const ITOSTOP: u32 = 32768; ++pub const EXTPROC: u32 = 65536; ++pub const TIOCSER_TEMT: u32 = 1; ++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 TIOCGLTC: u32 = 29812; ++pub const TIOCSLTC: u32 = 29813; ++pub const TIOCGETP: u32 = 29704; ++pub const TIOCSETP: u32 = 29705; ++pub const TIOCSETN: u32 = 29706; ++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 = 16; ++pub const TIOCM_SR: u32 = 32; ++pub const TIOCM_CTS: u32 = 64; ++pub const TIOCM_CAR: u32 = 256; ++pub const TIOCM_CD: u32 = 256; ++pub const TIOCM_RNG: u32 = 512; ++pub const TIOCM_RI: u32 = 512; ++pub const TIOCM_DSR: u32 = 1024; ++pub const TIOCM_OUT1: u32 = 8192; ++pub const TIOCM_OUT2: u32 = 16384; ++pub const TIOCM_LOOP: u32 = 32768; ++pub const UIO_FASTIOV: u32 = 8; ++pub const UIO_MAXIOV: u32 = 1024; ++pub const __NR_Linux: u32 = 5000; ++pub const __NR_read: u32 = 5000; ++pub const __NR_write: u32 = 5001; ++pub const __NR_open: u32 = 5002; ++pub const __NR_close: u32 = 5003; ++pub const __NR_stat: u32 = 5004; ++pub const __NR_fstat: u32 = 5005; ++pub const __NR_lstat: u32 = 5006; ++pub const __NR_poll: u32 = 5007; ++pub const __NR_lseek: u32 = 5008; ++pub const __NR_mmap: u32 = 5009; ++pub const __NR_mprotect: u32 = 5010; ++pub const __NR_munmap: u32 = 5011; ++pub const __NR_brk: u32 = 5012; ++pub const __NR_rt_sigaction: u32 = 5013; ++pub const __NR_rt_sigprocmask: u32 = 5014; ++pub const __NR_ioctl: u32 = 5015; ++pub const __NR_pread64: u32 = 5016; ++pub const __NR_pwrite64: u32 = 5017; ++pub const __NR_readv: u32 = 5018; ++pub const __NR_writev: u32 = 5019; ++pub const __NR_access: u32 = 5020; ++pub const __NR_pipe: u32 = 5021; ++pub const __NR__newselect: u32 = 5022; ++pub const __NR_sched_yield: u32 = 5023; ++pub const __NR_mremap: u32 = 5024; ++pub const __NR_msync: u32 = 5025; ++pub const __NR_mincore: u32 = 5026; ++pub const __NR_madvise: u32 = 5027; ++pub const __NR_shmget: u32 = 5028; ++pub const __NR_shmat: u32 = 5029; ++pub const __NR_shmctl: u32 = 5030; ++pub const __NR_dup: u32 = 5031; ++pub const __NR_dup2: u32 = 5032; ++pub const __NR_pause: u32 = 5033; ++pub const __NR_nanosleep: u32 = 5034; ++pub const __NR_getitimer: u32 = 5035; ++pub const __NR_setitimer: u32 = 5036; ++pub const __NR_alarm: u32 = 5037; ++pub const __NR_getpid: u32 = 5038; ++pub const __NR_sendfile: u32 = 5039; ++pub const __NR_socket: u32 = 5040; ++pub const __NR_connect: u32 = 5041; ++pub const __NR_accept: u32 = 5042; ++pub const __NR_sendto: u32 = 5043; ++pub const __NR_recvfrom: u32 = 5044; ++pub const __NR_sendmsg: u32 = 5045; ++pub const __NR_recvmsg: u32 = 5046; ++pub const __NR_shutdown: u32 = 5047; ++pub const __NR_bind: u32 = 5048; ++pub const __NR_listen: u32 = 5049; ++pub const __NR_getsockname: u32 = 5050; ++pub const __NR_getpeername: u32 = 5051; ++pub const __NR_socketpair: u32 = 5052; ++pub const __NR_setsockopt: u32 = 5053; ++pub const __NR_getsockopt: u32 = 5054; ++pub const __NR_clone: u32 = 5055; ++pub const __NR_fork: u32 = 5056; ++pub const __NR_execve: u32 = 5057; ++pub const __NR_exit: u32 = 5058; ++pub const __NR_wait4: u32 = 5059; ++pub const __NR_kill: u32 = 5060; ++pub const __NR_uname: u32 = 5061; ++pub const __NR_semget: u32 = 5062; ++pub const __NR_semop: u32 = 5063; ++pub const __NR_semctl: u32 = 5064; ++pub const __NR_shmdt: u32 = 5065; ++pub const __NR_msgget: u32 = 5066; ++pub const __NR_msgsnd: u32 = 5067; ++pub const __NR_msgrcv: u32 = 5068; ++pub const __NR_msgctl: u32 = 5069; ++pub const __NR_fcntl: u32 = 5070; ++pub const __NR_flock: u32 = 5071; ++pub const __NR_fsync: u32 = 5072; ++pub const __NR_fdatasync: u32 = 5073; ++pub const __NR_truncate: u32 = 5074; ++pub const __NR_ftruncate: u32 = 5075; ++pub const __NR_getdents: u32 = 5076; ++pub const __NR_getcwd: u32 = 5077; ++pub const __NR_chdir: u32 = 5078; ++pub const __NR_fchdir: u32 = 5079; ++pub const __NR_rename: u32 = 5080; ++pub const __NR_mkdir: u32 = 5081; ++pub const __NR_rmdir: u32 = 5082; ++pub const __NR_creat: u32 = 5083; ++pub const __NR_link: u32 = 5084; ++pub const __NR_unlink: u32 = 5085; ++pub const __NR_symlink: u32 = 5086; ++pub const __NR_readlink: u32 = 5087; ++pub const __NR_chmod: u32 = 5088; ++pub const __NR_fchmod: u32 = 5089; ++pub const __NR_chown: u32 = 5090; ++pub const __NR_fchown: u32 = 5091; ++pub const __NR_lchown: u32 = 5092; ++pub const __NR_umask: u32 = 5093; ++pub const __NR_gettimeofday: u32 = 5094; ++pub const __NR_getrlimit: u32 = 5095; ++pub const __NR_getrusage: u32 = 5096; ++pub const __NR_sysinfo: u32 = 5097; ++pub const __NR_times: u32 = 5098; ++pub const __NR_ptrace: u32 = 5099; ++pub const __NR_getuid: u32 = 5100; ++pub const __NR_syslog: u32 = 5101; ++pub const __NR_getgid: u32 = 5102; ++pub const __NR_setuid: u32 = 5103; ++pub const __NR_setgid: u32 = 5104; ++pub const __NR_geteuid: u32 = 5105; ++pub const __NR_getegid: u32 = 5106; ++pub const __NR_setpgid: u32 = 5107; ++pub const __NR_getppid: u32 = 5108; ++pub const __NR_getpgrp: u32 = 5109; ++pub const __NR_setsid: u32 = 5110; ++pub const __NR_setreuid: u32 = 5111; ++pub const __NR_setregid: u32 = 5112; ++pub const __NR_getgroups: u32 = 5113; ++pub const __NR_setgroups: u32 = 5114; ++pub const __NR_setresuid: u32 = 5115; ++pub const __NR_getresuid: u32 = 5116; ++pub const __NR_setresgid: u32 = 5117; ++pub const __NR_getresgid: u32 = 5118; ++pub const __NR_getpgid: u32 = 5119; ++pub const __NR_setfsuid: u32 = 5120; ++pub const __NR_setfsgid: u32 = 5121; ++pub const __NR_getsid: u32 = 5122; ++pub const __NR_capget: u32 = 5123; ++pub const __NR_capset: u32 = 5124; ++pub const __NR_rt_sigpending: u32 = 5125; ++pub const __NR_rt_sigtimedwait: u32 = 5126; ++pub const __NR_rt_sigqueueinfo: u32 = 5127; ++pub const __NR_rt_sigsuspend: u32 = 5128; ++pub const __NR_sigaltstack: u32 = 5129; ++pub const __NR_utime: u32 = 5130; ++pub const __NR_mknod: u32 = 5131; ++pub const __NR_personality: u32 = 5132; ++pub const __NR_ustat: u32 = 5133; ++pub const __NR_statfs: u32 = 5134; ++pub const __NR_fstatfs: u32 = 5135; ++pub const __NR_sysfs: u32 = 5136; ++pub const __NR_getpriority: u32 = 5137; ++pub const __NR_setpriority: u32 = 5138; ++pub const __NR_sched_setparam: u32 = 5139; ++pub const __NR_sched_getparam: u32 = 5140; ++pub const __NR_sched_setscheduler: u32 = 5141; ++pub const __NR_sched_getscheduler: u32 = 5142; ++pub const __NR_sched_get_priority_max: u32 = 5143; ++pub const __NR_sched_get_priority_min: u32 = 5144; ++pub const __NR_sched_rr_get_interval: u32 = 5145; ++pub const __NR_mlock: u32 = 5146; ++pub const __NR_munlock: u32 = 5147; ++pub const __NR_mlockall: u32 = 5148; ++pub const __NR_munlockall: u32 = 5149; ++pub const __NR_vhangup: u32 = 5150; ++pub const __NR_pivot_root: u32 = 5151; ++pub const __NR__sysctl: u32 = 5152; ++pub const __NR_prctl: u32 = 5153; ++pub const __NR_adjtimex: u32 = 5154; ++pub const __NR_setrlimit: u32 = 5155; ++pub const __NR_chroot: u32 = 5156; ++pub const __NR_sync: u32 = 5157; ++pub const __NR_acct: u32 = 5158; ++pub const __NR_settimeofday: u32 = 5159; ++pub const __NR_mount: u32 = 5160; ++pub const __NR_umount2: u32 = 5161; ++pub const __NR_swapon: u32 = 5162; ++pub const __NR_swapoff: u32 = 5163; ++pub const __NR_reboot: u32 = 5164; ++pub const __NR_sethostname: u32 = 5165; ++pub const __NR_setdomainname: u32 = 5166; ++pub const __NR_create_module: u32 = 5167; ++pub const __NR_init_module: u32 = 5168; ++pub const __NR_delete_module: u32 = 5169; ++pub const __NR_get_kernel_syms: u32 = 5170; ++pub const __NR_query_module: u32 = 5171; ++pub const __NR_quotactl: u32 = 5172; ++pub const __NR_nfsservctl: u32 = 5173; ++pub const __NR_getpmsg: u32 = 5174; ++pub const __NR_putpmsg: u32 = 5175; ++pub const __NR_afs_syscall: u32 = 5176; ++pub const __NR_reserved177: u32 = 5177; ++pub const __NR_gettid: u32 = 5178; ++pub const __NR_readahead: u32 = 5179; ++pub const __NR_setxattr: u32 = 5180; ++pub const __NR_lsetxattr: u32 = 5181; ++pub const __NR_fsetxattr: u32 = 5182; ++pub const __NR_getxattr: u32 = 5183; ++pub const __NR_lgetxattr: u32 = 5184; ++pub const __NR_fgetxattr: u32 = 5185; ++pub const __NR_listxattr: u32 = 5186; ++pub const __NR_llistxattr: u32 = 5187; ++pub const __NR_flistxattr: u32 = 5188; ++pub const __NR_removexattr: u32 = 5189; ++pub const __NR_lremovexattr: u32 = 5190; ++pub const __NR_fremovexattr: u32 = 5191; ++pub const __NR_tkill: u32 = 5192; ++pub const __NR_reserved193: u32 = 5193; ++pub const __NR_futex: u32 = 5194; ++pub const __NR_sched_setaffinity: u32 = 5195; ++pub const __NR_sched_getaffinity: u32 = 5196; ++pub const __NR_cacheflush: u32 = 5197; ++pub const __NR_cachectl: u32 = 5198; ++pub const __NR_sysmips: u32 = 5199; ++pub const __NR_io_setup: u32 = 5200; ++pub const __NR_io_destroy: u32 = 5201; ++pub const __NR_io_getevents: u32 = 5202; ++pub const __NR_io_submit: u32 = 5203; ++pub const __NR_io_cancel: u32 = 5204; ++pub const __NR_exit_group: u32 = 5205; ++pub const __NR_lookup_dcookie: u32 = 5206; ++pub const __NR_epoll_create: u32 = 5207; ++pub const __NR_epoll_ctl: u32 = 5208; ++pub const __NR_epoll_wait: u32 = 5209; ++pub const __NR_remap_file_pages: u32 = 5210; ++pub const __NR_rt_sigreturn: u32 = 5211; ++pub const __NR_set_tid_address: u32 = 5212; ++pub const __NR_restart_syscall: u32 = 5213; ++pub const __NR_semtimedop: u32 = 5214; ++pub const __NR_fadvise64: u32 = 5215; ++pub const __NR_timer_create: u32 = 5216; ++pub const __NR_timer_settime: u32 = 5217; ++pub const __NR_timer_gettime: u32 = 5218; ++pub const __NR_timer_getoverrun: u32 = 5219; ++pub const __NR_timer_delete: u32 = 5220; ++pub const __NR_clock_settime: u32 = 5221; ++pub const __NR_clock_gettime: u32 = 5222; ++pub const __NR_clock_getres: u32 = 5223; ++pub const __NR_clock_nanosleep: u32 = 5224; ++pub const __NR_tgkill: u32 = 5225; ++pub const __NR_utimes: u32 = 5226; ++pub const __NR_mbind: u32 = 5227; ++pub const __NR_get_mempolicy: u32 = 5228; ++pub const __NR_set_mempolicy: u32 = 5229; ++pub const __NR_mq_open: u32 = 5230; ++pub const __NR_mq_unlink: u32 = 5231; ++pub const __NR_mq_timedsend: u32 = 5232; ++pub const __NR_mq_timedreceive: u32 = 5233; ++pub const __NR_mq_notify: u32 = 5234; ++pub const __NR_mq_getsetattr: u32 = 5235; ++pub const __NR_vserver: u32 = 5236; ++pub const __NR_waitid: u32 = 5237; ++pub const __NR_add_key: u32 = 5239; ++pub const __NR_request_key: u32 = 5240; ++pub const __NR_keyctl: u32 = 5241; ++pub const __NR_set_thread_area: u32 = 5242; ++pub const __NR_inotify_init: u32 = 5243; ++pub const __NR_inotify_add_watch: u32 = 5244; ++pub const __NR_inotify_rm_watch: u32 = 5245; ++pub const __NR_migrate_pages: u32 = 5246; ++pub const __NR_openat: u32 = 5247; ++pub const __NR_mkdirat: u32 = 5248; ++pub const __NR_mknodat: u32 = 5249; ++pub const __NR_fchownat: u32 = 5250; ++pub const __NR_futimesat: u32 = 5251; ++pub const __NR_newfstatat: u32 = 5252; ++pub const __NR_unlinkat: u32 = 5253; ++pub const __NR_renameat: u32 = 5254; ++pub const __NR_linkat: u32 = 5255; ++pub const __NR_symlinkat: u32 = 5256; ++pub const __NR_readlinkat: u32 = 5257; ++pub const __NR_fchmodat: u32 = 5258; ++pub const __NR_faccessat: u32 = 5259; ++pub const __NR_pselect6: u32 = 5260; ++pub const __NR_ppoll: u32 = 5261; ++pub const __NR_unshare: u32 = 5262; ++pub const __NR_splice: u32 = 5263; ++pub const __NR_sync_file_range: u32 = 5264; ++pub const __NR_tee: u32 = 5265; ++pub const __NR_vmsplice: u32 = 5266; ++pub const __NR_move_pages: u32 = 5267; ++pub const __NR_set_robust_list: u32 = 5268; ++pub const __NR_get_robust_list: u32 = 5269; ++pub const __NR_kexec_load: u32 = 5270; ++pub const __NR_getcpu: u32 = 5271; ++pub const __NR_epoll_pwait: u32 = 5272; ++pub const __NR_ioprio_set: u32 = 5273; ++pub const __NR_ioprio_get: u32 = 5274; ++pub const __NR_utimensat: u32 = 5275; ++pub const __NR_signalfd: u32 = 5276; ++pub const __NR_timerfd: u32 = 5277; ++pub const __NR_eventfd: u32 = 5278; ++pub const __NR_fallocate: u32 = 5279; ++pub const __NR_timerfd_create: u32 = 5280; ++pub const __NR_timerfd_gettime: u32 = 5281; ++pub const __NR_timerfd_settime: u32 = 5282; ++pub const __NR_signalfd4: u32 = 5283; ++pub const __NR_eventfd2: u32 = 5284; ++pub const __NR_epoll_create1: u32 = 5285; ++pub const __NR_dup3: u32 = 5286; ++pub const __NR_pipe2: u32 = 5287; ++pub const __NR_inotify_init1: u32 = 5288; ++pub const __NR_preadv: u32 = 5289; ++pub const __NR_pwritev: u32 = 5290; ++pub const __NR_rt_tgsigqueueinfo: u32 = 5291; ++pub const __NR_perf_event_open: u32 = 5292; ++pub const __NR_accept4: u32 = 5293; ++pub const __NR_recvmmsg: u32 = 5294; ++pub const __NR_fanotify_init: u32 = 5295; ++pub const __NR_fanotify_mark: u32 = 5296; ++pub const __NR_prlimit64: u32 = 5297; ++pub const __NR_name_to_handle_at: u32 = 5298; ++pub const __NR_open_by_handle_at: u32 = 5299; ++pub const __NR_clock_adjtime: u32 = 5300; ++pub const __NR_syncfs: u32 = 5301; ++pub const __NR_sendmmsg: u32 = 5302; ++pub const __NR_setns: u32 = 5303; ++pub const __NR_process_vm_readv: u32 = 5304; ++pub const __NR_process_vm_writev: u32 = 5305; ++pub const __NR_kcmp: u32 = 5306; ++pub const __NR_finit_module: u32 = 5307; ++pub const __NR_getdents64: u32 = 5308; ++pub const __NR_sched_setattr: u32 = 5309; ++pub const __NR_sched_getattr: u32 = 5310; ++pub const __NR_renameat2: u32 = 5311; ++pub const __NR_seccomp: u32 = 5312; ++pub const __NR_getrandom: u32 = 5313; ++pub const __NR_memfd_create: u32 = 5314; ++pub const __NR_bpf: u32 = 5315; ++pub const __NR_execveat: u32 = 5316; ++pub const __NR_userfaultfd: u32 = 5317; ++pub const __NR_membarrier: u32 = 5318; ++pub const __NR_mlock2: u32 = 5319; ++pub const __NR_copy_file_range: u32 = 5320; ++pub const __NR_preadv2: u32 = 5321; ++pub const __NR_pwritev2: u32 = 5322; ++pub const __NR_pkey_mprotect: u32 = 5323; ++pub const __NR_pkey_alloc: u32 = 5324; ++pub const __NR_pkey_free: u32 = 5325; ++pub const __NR_statx: u32 = 5326; ++pub const __NR_rseq: u32 = 5327; ++pub const __NR_io_pgetevents: u32 = 5328; ++pub const __NR_pidfd_send_signal: u32 = 5424; ++pub const __NR_io_uring_setup: u32 = 5425; ++pub const __NR_io_uring_enter: u32 = 5426; ++pub const __NR_io_uring_register: u32 = 5427; ++pub const __NR_open_tree: u32 = 5428; ++pub const __NR_move_mount: u32 = 5429; ++pub const __NR_fsopen: u32 = 5430; ++pub const __NR_fsconfig: u32 = 5431; ++pub const __NR_fsmount: u32 = 5432; ++pub const __NR_fspick: u32 = 5433; ++pub const __NR_pidfd_open: u32 = 5434; ++pub const __NR_clone3: u32 = 5435; ++pub const __NR_close_range: u32 = 5436; ++pub const __NR_openat2: u32 = 5437; ++pub const __NR_pidfd_getfd: u32 = 5438; ++pub const __NR_faccessat2: u32 = 5439; ++pub const __NR_process_madvise: u32 = 5440; ++pub const __NR_epoll_pwait2: u32 = 5441; ++pub const __NR_mount_setattr: u32 = 5442; ++pub const __NR_quotactl_fd: u32 = 5443; ++pub const __NR_landlock_create_ruleset: u32 = 5444; ++pub const __NR_landlock_add_rule: u32 = 5445; ++pub const __NR_landlock_restrict_self: u32 = 5446; ++pub const __NR_process_mrelease: u32 = 5448; ++pub const __NR_futex_waitv: u32 = 5449; ++pub const __NR_set_mempolicy_home_node: u32 = 5450; ++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_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 = 128; ++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_WRITEPROTECT: u32 = 6; ++pub const _UFFDIO_CONTINUE: u32 = 7; ++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_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 = 128; ++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 = 524416; ++pub const TFD_CREATE_FLAGS: u32 = 524416; ++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 POLLWRNORM: u32 = 4; ++pub const TCSANOW: u32 = 21518; ++pub const TCSADRAIN: u32 = 21519; ++pub const TCSAFLUSH: u32 = 21520; ++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(u32)] ++#[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, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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; 12usize], ++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] ++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]; ++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 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]; ++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 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 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); ++} ++} ++} ++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 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 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 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 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 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 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 ++} ++} +diff --git a/vendor/linux-raw-sys-0.4.14/src/sw64/if_arp.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/if_arp.rs +new file mode 100644 +index 00000000000..6641a51a7b4 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/if_arp.rs +@@ -0,0 +1,2675 @@ ++/* automatically generated by rust-bindgen 0.66.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 type_flags: __u16, ++pub id: __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_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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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 __BIG_ENDIAN: u32 = 4321; ++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_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_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_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_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_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 VNIFILTER_ENTRY_STATS_UNSPEC: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_UNSPEC; ++pub const VNIFILTER_ENTRY_STATS_RX_BYTES: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_RX_BYTES; ++pub const VNIFILTER_ENTRY_STATS_RX_PKTS: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_RX_PKTS; ++pub const VNIFILTER_ENTRY_STATS_RX_DROPS: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_RX_DROPS; ++pub const VNIFILTER_ENTRY_STATS_RX_ERRORS: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_RX_ERRORS; ++pub const VNIFILTER_ENTRY_STATS_TX_BYTES: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_TX_BYTES; ++pub const VNIFILTER_ENTRY_STATS_TX_PKTS: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_TX_PKTS; ++pub const VNIFILTER_ENTRY_STATS_TX_DROPS: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_TX_DROPS; ++pub const VNIFILTER_ENTRY_STATS_TX_ERRORS: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_TX_ERRORS; ++pub const VNIFILTER_ENTRY_STATS_PAD: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_PAD; ++pub const __VNIFILTER_ENTRY_STATS_MAX: _bindgen_ty_20 = _bindgen_ty_20::__VNIFILTER_ENTRY_STATS_MAX; ++pub const VXLAN_VNIFILTER_ENTRY_UNSPEC: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY_UNSPEC; ++pub const VXLAN_VNIFILTER_ENTRY_START: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY_START; ++pub const VXLAN_VNIFILTER_ENTRY_END: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY_END; ++pub const VXLAN_VNIFILTER_ENTRY_GROUP: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY_GROUP; ++pub const VXLAN_VNIFILTER_ENTRY_GROUP6: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY_GROUP6; ++pub const VXLAN_VNIFILTER_ENTRY_STATS: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY_STATS; ++pub const __VXLAN_VNIFILTER_ENTRY_MAX: _bindgen_ty_21 = _bindgen_ty_21::__VXLAN_VNIFILTER_ENTRY_MAX; ++pub const VXLAN_VNIFILTER_UNSPEC: _bindgen_ty_22 = _bindgen_ty_22::VXLAN_VNIFILTER_UNSPEC; ++pub const VXLAN_VNIFILTER_ENTRY: _bindgen_ty_22 = _bindgen_ty_22::VXLAN_VNIFILTER_ENTRY; ++pub const __VXLAN_VNIFILTER_MAX: _bindgen_ty_22 = _bindgen_ty_22::__VXLAN_VNIFILTER_MAX; ++pub const IFLA_VXLAN_UNSPEC: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_UNSPEC; ++pub const IFLA_VXLAN_ID: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_ID; ++pub const IFLA_VXLAN_GROUP: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_GROUP; ++pub const IFLA_VXLAN_LINK: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_LINK; ++pub const IFLA_VXLAN_LOCAL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_LOCAL; ++pub const IFLA_VXLAN_TTL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_TTL; ++pub const IFLA_VXLAN_TOS: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_TOS; ++pub const IFLA_VXLAN_LEARNING: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_LEARNING; ++pub const IFLA_VXLAN_AGEING: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_AGEING; ++pub const IFLA_VXLAN_LIMIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_LIMIT; ++pub const IFLA_VXLAN_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_PORT_RANGE; ++pub const IFLA_VXLAN_PROXY: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_PROXY; ++pub const IFLA_VXLAN_RSC: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_RSC; ++pub const IFLA_VXLAN_L2MISS: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_L2MISS; ++pub const IFLA_VXLAN_L3MISS: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_L3MISS; ++pub const IFLA_VXLAN_PORT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_PORT; ++pub const IFLA_VXLAN_GROUP6: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_GROUP6; ++pub const IFLA_VXLAN_LOCAL6: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_LOCAL6; ++pub const IFLA_VXLAN_UDP_CSUM: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_UDP_CSUM; ++pub const IFLA_VXLAN_UDP_ZERO_CSUM6_TX: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_UDP_ZERO_CSUM6_TX; ++pub const IFLA_VXLAN_UDP_ZERO_CSUM6_RX: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_UDP_ZERO_CSUM6_RX; ++pub const IFLA_VXLAN_REMCSUM_TX: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_REMCSUM_TX; ++pub const IFLA_VXLAN_REMCSUM_RX: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_REMCSUM_RX; ++pub const IFLA_VXLAN_GBP: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_GBP; ++pub const IFLA_VXLAN_REMCSUM_NOPARTIAL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_REMCSUM_NOPARTIAL; ++pub const IFLA_VXLAN_COLLECT_METADATA: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_COLLECT_METADATA; ++pub const IFLA_VXLAN_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_LABEL; ++pub const IFLA_VXLAN_GPE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_GPE; ++pub const IFLA_VXLAN_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_TTL_INHERIT; ++pub const IFLA_VXLAN_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_DF; ++pub const IFLA_VXLAN_VNIFILTER: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_VNIFILTER; ++pub const __IFLA_VXLAN_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_VXLAN_MAX; ++pub const IFLA_GENEVE_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_UNSPEC; ++pub const IFLA_GENEVE_ID: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_ID; ++pub const IFLA_GENEVE_REMOTE: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_REMOTE; ++pub const IFLA_GENEVE_TTL: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_TTL; ++pub const IFLA_GENEVE_TOS: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_TOS; ++pub const IFLA_GENEVE_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_PORT; ++pub const IFLA_GENEVE_COLLECT_METADATA: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_COLLECT_METADATA; ++pub const IFLA_GENEVE_REMOTE6: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_REMOTE6; ++pub const IFLA_GENEVE_UDP_CSUM: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_UDP_CSUM; ++pub const IFLA_GENEVE_UDP_ZERO_CSUM6_TX: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_UDP_ZERO_CSUM6_TX; ++pub const IFLA_GENEVE_UDP_ZERO_CSUM6_RX: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_UDP_ZERO_CSUM6_RX; ++pub const IFLA_GENEVE_LABEL: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_LABEL; ++pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_TTL_INHERIT; ++pub const IFLA_GENEVE_DF: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_DF; ++pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_INNER_PROTO_INHERIT; ++pub const __IFLA_GENEVE_MAX: _bindgen_ty_24 = _bindgen_ty_24::__IFLA_GENEVE_MAX; ++pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_25 = _bindgen_ty_25::IFLA_BAREUDP_UNSPEC; ++pub const IFLA_BAREUDP_PORT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_BAREUDP_PORT; ++pub const IFLA_BAREUDP_ETHERTYPE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_BAREUDP_ETHERTYPE; ++pub const IFLA_BAREUDP_SRCPORT_MIN: _bindgen_ty_25 = _bindgen_ty_25::IFLA_BAREUDP_SRCPORT_MIN; ++pub const IFLA_BAREUDP_MULTIPROTO_MODE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_BAREUDP_MULTIPROTO_MODE; ++pub const __IFLA_BAREUDP_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_BAREUDP_MAX; ++pub const IFLA_PPP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_PPP_UNSPEC; ++pub const IFLA_PPP_DEV_FD: _bindgen_ty_26 = _bindgen_ty_26::IFLA_PPP_DEV_FD; ++pub const __IFLA_PPP_MAX: _bindgen_ty_26 = _bindgen_ty_26::__IFLA_PPP_MAX; ++pub const IFLA_GTP_UNSPEC: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_UNSPEC; ++pub const IFLA_GTP_FD0: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_FD0; ++pub const IFLA_GTP_FD1: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_FD1; ++pub const IFLA_GTP_PDP_HASHSIZE: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_PDP_HASHSIZE; ++pub const IFLA_GTP_ROLE: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_ROLE; ++pub const IFLA_GTP_CREATE_SOCKETS: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_CREATE_SOCKETS; ++pub const IFLA_GTP_RESTART_COUNT: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_RESTART_COUNT; ++pub const __IFLA_GTP_MAX: _bindgen_ty_27 = _bindgen_ty_27::__IFLA_GTP_MAX; ++pub const IFLA_BOND_UNSPEC: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_UNSPEC; ++pub const IFLA_BOND_MODE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_MODE; ++pub const IFLA_BOND_ACTIVE_SLAVE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_ACTIVE_SLAVE; ++pub const IFLA_BOND_MIIMON: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_MIIMON; ++pub const IFLA_BOND_UPDELAY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_UPDELAY; ++pub const IFLA_BOND_DOWNDELAY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_DOWNDELAY; ++pub const IFLA_BOND_USE_CARRIER: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_USE_CARRIER; ++pub const IFLA_BOND_ARP_INTERVAL: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_ARP_INTERVAL; ++pub const IFLA_BOND_ARP_IP_TARGET: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_ARP_IP_TARGET; ++pub const IFLA_BOND_ARP_VALIDATE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_ARP_VALIDATE; ++pub const IFLA_BOND_ARP_ALL_TARGETS: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_ARP_ALL_TARGETS; ++pub const IFLA_BOND_PRIMARY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_PRIMARY; ++pub const IFLA_BOND_PRIMARY_RESELECT: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_PRIMARY_RESELECT; ++pub const IFLA_BOND_FAIL_OVER_MAC: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_FAIL_OVER_MAC; ++pub const IFLA_BOND_XMIT_HASH_POLICY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_XMIT_HASH_POLICY; ++pub const IFLA_BOND_RESEND_IGMP: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_RESEND_IGMP; ++pub const IFLA_BOND_NUM_PEER_NOTIF: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_NUM_PEER_NOTIF; ++pub const IFLA_BOND_ALL_SLAVES_ACTIVE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_ALL_SLAVES_ACTIVE; ++pub const IFLA_BOND_MIN_LINKS: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_MIN_LINKS; ++pub const IFLA_BOND_LP_INTERVAL: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_LP_INTERVAL; ++pub const IFLA_BOND_PACKETS_PER_SLAVE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_PACKETS_PER_SLAVE; ++pub const IFLA_BOND_AD_LACP_RATE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_LACP_RATE; ++pub const IFLA_BOND_AD_SELECT: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_SELECT; ++pub const IFLA_BOND_AD_INFO: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_INFO; ++pub const IFLA_BOND_AD_ACTOR_SYS_PRIO: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_ACTOR_SYS_PRIO; ++pub const IFLA_BOND_AD_USER_PORT_KEY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_USER_PORT_KEY; ++pub const IFLA_BOND_AD_ACTOR_SYSTEM: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_ACTOR_SYSTEM; ++pub const IFLA_BOND_TLB_DYNAMIC_LB: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_TLB_DYNAMIC_LB; ++pub const IFLA_BOND_PEER_NOTIF_DELAY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_PEER_NOTIF_DELAY; ++pub const IFLA_BOND_AD_LACP_ACTIVE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_LACP_ACTIVE; ++pub const IFLA_BOND_MISSED_MAX: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_MISSED_MAX; ++pub const IFLA_BOND_NS_IP6_TARGET: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_NS_IP6_TARGET; ++pub const __IFLA_BOND_MAX: _bindgen_ty_28 = _bindgen_ty_28::__IFLA_BOND_MAX; ++pub const IFLA_BOND_AD_INFO_UNSPEC: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO_UNSPEC; ++pub const IFLA_BOND_AD_INFO_AGGREGATOR: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO_AGGREGATOR; ++pub const IFLA_BOND_AD_INFO_NUM_PORTS: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO_NUM_PORTS; ++pub const IFLA_BOND_AD_INFO_ACTOR_KEY: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO_ACTOR_KEY; ++pub const IFLA_BOND_AD_INFO_PARTNER_KEY: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO_PARTNER_KEY; ++pub const IFLA_BOND_AD_INFO_PARTNER_MAC: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO_PARTNER_MAC; ++pub const __IFLA_BOND_AD_INFO_MAX: _bindgen_ty_29 = _bindgen_ty_29::__IFLA_BOND_AD_INFO_MAX; ++pub const IFLA_BOND_SLAVE_UNSPEC: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_UNSPEC; ++pub const IFLA_BOND_SLAVE_STATE: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_STATE; ++pub const IFLA_BOND_SLAVE_MII_STATUS: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_MII_STATUS; ++pub const IFLA_BOND_SLAVE_LINK_FAILURE_COUNT: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_LINK_FAILURE_COUNT; ++pub const IFLA_BOND_SLAVE_PERM_HWADDR: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_PERM_HWADDR; ++pub const IFLA_BOND_SLAVE_QUEUE_ID: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_QUEUE_ID; ++pub const IFLA_BOND_SLAVE_AD_AGGREGATOR_ID: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_AD_AGGREGATOR_ID; ++pub const IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE; ++pub const IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE; ++pub const IFLA_BOND_SLAVE_PRIO: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_PRIO; ++pub const __IFLA_BOND_SLAVE_MAX: _bindgen_ty_30 = _bindgen_ty_30::__IFLA_BOND_SLAVE_MAX; ++pub const IFLA_VF_INFO_UNSPEC: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_INFO_UNSPEC; ++pub const IFLA_VF_INFO: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_INFO; ++pub const __IFLA_VF_INFO_MAX: _bindgen_ty_31 = _bindgen_ty_31::__IFLA_VF_INFO_MAX; ++pub const IFLA_VF_UNSPEC: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_UNSPEC; ++pub const IFLA_VF_MAC: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_MAC; ++pub const IFLA_VF_VLAN: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_VLAN; ++pub const IFLA_VF_TX_RATE: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_TX_RATE; ++pub const IFLA_VF_SPOOFCHK: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_SPOOFCHK; ++pub const IFLA_VF_LINK_STATE: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_LINK_STATE; ++pub const IFLA_VF_RATE: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_RATE; ++pub const IFLA_VF_RSS_QUERY_EN: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_RSS_QUERY_EN; ++pub const IFLA_VF_STATS: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_STATS; ++pub const IFLA_VF_TRUST: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_TRUST; ++pub const IFLA_VF_IB_NODE_GUID: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_IB_NODE_GUID; ++pub const IFLA_VF_IB_PORT_GUID: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_IB_PORT_GUID; ++pub const IFLA_VF_VLAN_LIST: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_VLAN_LIST; ++pub const IFLA_VF_BROADCAST: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_BROADCAST; ++pub const __IFLA_VF_MAX: _bindgen_ty_32 = _bindgen_ty_32::__IFLA_VF_MAX; ++pub const IFLA_VF_VLAN_INFO_UNSPEC: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_VLAN_INFO_UNSPEC; ++pub const IFLA_VF_VLAN_INFO: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_VLAN_INFO; ++pub const __IFLA_VF_VLAN_INFO_MAX: _bindgen_ty_33 = _bindgen_ty_33::__IFLA_VF_VLAN_INFO_MAX; ++pub const IFLA_VF_LINK_STATE_AUTO: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_LINK_STATE_AUTO; ++pub const IFLA_VF_LINK_STATE_ENABLE: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_LINK_STATE_ENABLE; ++pub const IFLA_VF_LINK_STATE_DISABLE: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_LINK_STATE_DISABLE; ++pub const __IFLA_VF_LINK_STATE_MAX: _bindgen_ty_34 = _bindgen_ty_34::__IFLA_VF_LINK_STATE_MAX; ++pub const IFLA_VF_STATS_RX_PACKETS: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_RX_PACKETS; ++pub const IFLA_VF_STATS_TX_PACKETS: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_TX_PACKETS; ++pub const IFLA_VF_STATS_RX_BYTES: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_RX_BYTES; ++pub const IFLA_VF_STATS_TX_BYTES: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_TX_BYTES; ++pub const IFLA_VF_STATS_BROADCAST: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_BROADCAST; ++pub const IFLA_VF_STATS_MULTICAST: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_MULTICAST; ++pub const IFLA_VF_STATS_PAD: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_PAD; ++pub const IFLA_VF_STATS_RX_DROPPED: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_RX_DROPPED; ++pub const IFLA_VF_STATS_TX_DROPPED: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_TX_DROPPED; ++pub const __IFLA_VF_STATS_MAX: _bindgen_ty_35 = _bindgen_ty_35::__IFLA_VF_STATS_MAX; ++pub const IFLA_VF_PORT_UNSPEC: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_PORT_UNSPEC; ++pub const IFLA_VF_PORT: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_PORT; ++pub const __IFLA_VF_PORT_MAX: _bindgen_ty_36 = _bindgen_ty_36::__IFLA_VF_PORT_MAX; ++pub const IFLA_PORT_UNSPEC: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_UNSPEC; ++pub const IFLA_PORT_VF: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_VF; ++pub const IFLA_PORT_PROFILE: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_PROFILE; ++pub const IFLA_PORT_VSI_TYPE: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_VSI_TYPE; ++pub const IFLA_PORT_INSTANCE_UUID: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_INSTANCE_UUID; ++pub const IFLA_PORT_HOST_UUID: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_HOST_UUID; ++pub const IFLA_PORT_REQUEST: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_REQUEST; ++pub const IFLA_PORT_RESPONSE: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_RESPONSE; ++pub const __IFLA_PORT_MAX: _bindgen_ty_37 = _bindgen_ty_37::__IFLA_PORT_MAX; ++pub const PORT_REQUEST_PREASSOCIATE: _bindgen_ty_38 = _bindgen_ty_38::PORT_REQUEST_PREASSOCIATE; ++pub const PORT_REQUEST_PREASSOCIATE_RR: _bindgen_ty_38 = _bindgen_ty_38::PORT_REQUEST_PREASSOCIATE_RR; ++pub const PORT_REQUEST_ASSOCIATE: _bindgen_ty_38 = _bindgen_ty_38::PORT_REQUEST_ASSOCIATE; ++pub const PORT_REQUEST_DISASSOCIATE: _bindgen_ty_38 = _bindgen_ty_38::PORT_REQUEST_DISASSOCIATE; ++pub const PORT_VDP_RESPONSE_SUCCESS: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_SUCCESS; ++pub const PORT_VDP_RESPONSE_INVALID_FORMAT: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_INVALID_FORMAT; ++pub const PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES; ++pub const PORT_VDP_RESPONSE_UNUSED_VTID: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_UNUSED_VTID; ++pub const PORT_VDP_RESPONSE_VTID_VIOLATION: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_VTID_VIOLATION; ++pub const PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION; ++pub const PORT_VDP_RESPONSE_OUT_OF_SYNC: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_OUT_OF_SYNC; ++pub const PORT_PROFILE_RESPONSE_SUCCESS: _bindgen_ty_39 = _bindgen_ty_39::PORT_PROFILE_RESPONSE_SUCCESS; ++pub const PORT_PROFILE_RESPONSE_INPROGRESS: _bindgen_ty_39 = _bindgen_ty_39::PORT_PROFILE_RESPONSE_INPROGRESS; ++pub const PORT_PROFILE_RESPONSE_INVALID: _bindgen_ty_39 = _bindgen_ty_39::PORT_PROFILE_RESPONSE_INVALID; ++pub const PORT_PROFILE_RESPONSE_BADSTATE: _bindgen_ty_39 = _bindgen_ty_39::PORT_PROFILE_RESPONSE_BADSTATE; ++pub const PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_39 = _bindgen_ty_39::PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES; ++pub const PORT_PROFILE_RESPONSE_ERROR: _bindgen_ty_39 = _bindgen_ty_39::PORT_PROFILE_RESPONSE_ERROR; ++pub const IFLA_IPOIB_UNSPEC: _bindgen_ty_40 = _bindgen_ty_40::IFLA_IPOIB_UNSPEC; ++pub const IFLA_IPOIB_PKEY: _bindgen_ty_40 = _bindgen_ty_40::IFLA_IPOIB_PKEY; ++pub const IFLA_IPOIB_MODE: _bindgen_ty_40 = _bindgen_ty_40::IFLA_IPOIB_MODE; ++pub const IFLA_IPOIB_UMCAST: _bindgen_ty_40 = _bindgen_ty_40::IFLA_IPOIB_UMCAST; ++pub const __IFLA_IPOIB_MAX: _bindgen_ty_40 = _bindgen_ty_40::__IFLA_IPOIB_MAX; ++pub const IPOIB_MODE_DATAGRAM: _bindgen_ty_41 = _bindgen_ty_41::IPOIB_MODE_DATAGRAM; ++pub const IPOIB_MODE_CONNECTED: _bindgen_ty_41 = _bindgen_ty_41::IPOIB_MODE_CONNECTED; ++pub const HSR_PROTOCOL_HSR: _bindgen_ty_42 = _bindgen_ty_42::HSR_PROTOCOL_HSR; ++pub const HSR_PROTOCOL_PRP: _bindgen_ty_42 = _bindgen_ty_42::HSR_PROTOCOL_PRP; ++pub const HSR_PROTOCOL_MAX: _bindgen_ty_42 = _bindgen_ty_42::HSR_PROTOCOL_MAX; ++pub const IFLA_HSR_UNSPEC: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_UNSPEC; ++pub const IFLA_HSR_SLAVE1: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_SLAVE1; ++pub const IFLA_HSR_SLAVE2: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_SLAVE2; ++pub const IFLA_HSR_MULTICAST_SPEC: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_MULTICAST_SPEC; ++pub const IFLA_HSR_SUPERVISION_ADDR: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_SUPERVISION_ADDR; ++pub const IFLA_HSR_SEQ_NR: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_SEQ_NR; ++pub const IFLA_HSR_VERSION: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_VERSION; ++pub const IFLA_HSR_PROTOCOL: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_PROTOCOL; ++pub const __IFLA_HSR_MAX: _bindgen_ty_43 = _bindgen_ty_43::__IFLA_HSR_MAX; ++pub const IFLA_STATS_UNSPEC: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_UNSPEC; ++pub const IFLA_STATS_LINK_64: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_LINK_64; ++pub const IFLA_STATS_LINK_XSTATS: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_LINK_XSTATS; ++pub const IFLA_STATS_LINK_XSTATS_SLAVE: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_LINK_XSTATS_SLAVE; ++pub const IFLA_STATS_LINK_OFFLOAD_XSTATS: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_LINK_OFFLOAD_XSTATS; ++pub const IFLA_STATS_AF_SPEC: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_AF_SPEC; ++pub const __IFLA_STATS_MAX: _bindgen_ty_44 = _bindgen_ty_44::__IFLA_STATS_MAX; ++pub const IFLA_STATS_GETSET_UNSPEC: _bindgen_ty_45 = _bindgen_ty_45::IFLA_STATS_GETSET_UNSPEC; ++pub const IFLA_STATS_GET_FILTERS: _bindgen_ty_45 = _bindgen_ty_45::IFLA_STATS_GET_FILTERS; ++pub const IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_45 = _bindgen_ty_45::IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS; ++pub const __IFLA_STATS_GETSET_MAX: _bindgen_ty_45 = _bindgen_ty_45::__IFLA_STATS_GETSET_MAX; ++pub const LINK_XSTATS_TYPE_UNSPEC: _bindgen_ty_46 = _bindgen_ty_46::LINK_XSTATS_TYPE_UNSPEC; ++pub const LINK_XSTATS_TYPE_BRIDGE: _bindgen_ty_46 = _bindgen_ty_46::LINK_XSTATS_TYPE_BRIDGE; ++pub const LINK_XSTATS_TYPE_BOND: _bindgen_ty_46 = _bindgen_ty_46::LINK_XSTATS_TYPE_BOND; ++pub const __LINK_XSTATS_TYPE_MAX: _bindgen_ty_46 = _bindgen_ty_46::__LINK_XSTATS_TYPE_MAX; ++pub const IFLA_OFFLOAD_XSTATS_UNSPEC: _bindgen_ty_47 = _bindgen_ty_47::IFLA_OFFLOAD_XSTATS_UNSPEC; ++pub const IFLA_OFFLOAD_XSTATS_CPU_HIT: _bindgen_ty_47 = _bindgen_ty_47::IFLA_OFFLOAD_XSTATS_CPU_HIT; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO: _bindgen_ty_47 = _bindgen_ty_47::IFLA_OFFLOAD_XSTATS_HW_S_INFO; ++pub const IFLA_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_47 = _bindgen_ty_47::IFLA_OFFLOAD_XSTATS_L3_STATS; ++pub const __IFLA_OFFLOAD_XSTATS_MAX: _bindgen_ty_47 = _bindgen_ty_47::__IFLA_OFFLOAD_XSTATS_MAX; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC: _bindgen_ty_48 = _bindgen_ty_48::IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST: _bindgen_ty_48 = _bindgen_ty_48::IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED: _bindgen_ty_48 = _bindgen_ty_48::IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED; ++pub const __IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX: _bindgen_ty_48 = _bindgen_ty_48::__IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX; ++pub const XDP_ATTACHED_NONE: _bindgen_ty_49 = _bindgen_ty_49::XDP_ATTACHED_NONE; ++pub const XDP_ATTACHED_DRV: _bindgen_ty_49 = _bindgen_ty_49::XDP_ATTACHED_DRV; ++pub const XDP_ATTACHED_SKB: _bindgen_ty_49 = _bindgen_ty_49::XDP_ATTACHED_SKB; ++pub const XDP_ATTACHED_HW: _bindgen_ty_49 = _bindgen_ty_49::XDP_ATTACHED_HW; ++pub const XDP_ATTACHED_MULTI: _bindgen_ty_49 = _bindgen_ty_49::XDP_ATTACHED_MULTI; ++pub const IFLA_XDP_UNSPEC: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_UNSPEC; ++pub const IFLA_XDP_FD: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_FD; ++pub const IFLA_XDP_ATTACHED: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_ATTACHED; ++pub const IFLA_XDP_FLAGS: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_FLAGS; ++pub const IFLA_XDP_PROG_ID: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_PROG_ID; ++pub const IFLA_XDP_DRV_PROG_ID: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_DRV_PROG_ID; ++pub const IFLA_XDP_SKB_PROG_ID: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_SKB_PROG_ID; ++pub const IFLA_XDP_HW_PROG_ID: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_HW_PROG_ID; ++pub const IFLA_XDP_EXPECTED_FD: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_EXPECTED_FD; ++pub const __IFLA_XDP_MAX: _bindgen_ty_50 = _bindgen_ty_50::__IFLA_XDP_MAX; ++pub const IFLA_EVENT_NONE: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_NONE; ++pub const IFLA_EVENT_REBOOT: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_REBOOT; ++pub const IFLA_EVENT_FEATURES: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_FEATURES; ++pub const IFLA_EVENT_BONDING_FAILOVER: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_BONDING_FAILOVER; ++pub const IFLA_EVENT_NOTIFY_PEERS: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_NOTIFY_PEERS; ++pub const IFLA_EVENT_IGMP_RESEND: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_IGMP_RESEND; ++pub const IFLA_EVENT_BONDING_OPTIONS: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_BONDING_OPTIONS; ++pub const IFLA_TUN_UNSPEC: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_UNSPEC; ++pub const IFLA_TUN_OWNER: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_OWNER; ++pub const IFLA_TUN_GROUP: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_GROUP; ++pub const IFLA_TUN_TYPE: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_TYPE; ++pub const IFLA_TUN_PI: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_PI; ++pub const IFLA_TUN_VNET_HDR: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_VNET_HDR; ++pub const IFLA_TUN_PERSIST: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_PERSIST; ++pub const IFLA_TUN_MULTI_QUEUE: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_MULTI_QUEUE; ++pub const IFLA_TUN_NUM_QUEUES: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_NUM_QUEUES; ++pub const IFLA_TUN_NUM_DISABLED_QUEUES: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_NUM_DISABLED_QUEUES; ++pub const __IFLA_TUN_MAX: _bindgen_ty_52 = _bindgen_ty_52::__IFLA_TUN_MAX; ++pub const IFLA_RMNET_UNSPEC: _bindgen_ty_53 = _bindgen_ty_53::IFLA_RMNET_UNSPEC; ++pub const IFLA_RMNET_MUX_ID: _bindgen_ty_53 = _bindgen_ty_53::IFLA_RMNET_MUX_ID; ++pub const IFLA_RMNET_FLAGS: _bindgen_ty_53 = _bindgen_ty_53::IFLA_RMNET_FLAGS; ++pub const __IFLA_RMNET_MAX: _bindgen_ty_53 = _bindgen_ty_53::__IFLA_RMNET_MAX; ++pub const IFLA_MCTP_UNSPEC: _bindgen_ty_54 = _bindgen_ty_54::IFLA_MCTP_UNSPEC; ++pub const IFLA_MCTP_NET: _bindgen_ty_54 = _bindgen_ty_54::IFLA_MCTP_NET; ++pub const __IFLA_MCTP_MAX: _bindgen_ty_54 = _bindgen_ty_54::__IFLA_MCTP_MAX; ++pub const IFLA_DSA_UNSPEC: _bindgen_ty_55 = _bindgen_ty_55::IFLA_DSA_UNSPEC; ++pub const IFLA_DSA_MASTER: _bindgen_ty_55 = _bindgen_ty_55::IFLA_DSA_MASTER; ++pub const __IFLA_DSA_MAX: _bindgen_ty_55 = _bindgen_ty_55::__IFLA_DSA_MAX; ++pub const IF_PORT_UNKNOWN: _bindgen_ty_56 = _bindgen_ty_56::IF_PORT_UNKNOWN; ++pub const IF_PORT_10BASE2: _bindgen_ty_56 = _bindgen_ty_56::IF_PORT_10BASE2; ++pub const IF_PORT_10BASET: _bindgen_ty_56 = _bindgen_ty_56::IF_PORT_10BASET; ++pub const IF_PORT_AUI: _bindgen_ty_56 = _bindgen_ty_56::IF_PORT_AUI; ++pub const IF_PORT_100BASET: _bindgen_ty_56 = _bindgen_ty_56::IF_PORT_100BASET; ++pub const IF_PORT_100BASETX: _bindgen_ty_56 = _bindgen_ty_56::IF_PORT_100BASETX; ++pub const IF_PORT_100BASEFX: _bindgen_ty_56 = _bindgen_ty_56::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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum tpacket_versions { ++TPACKET_V1 = 0, ++TPACKET_V2 = 1, ++TPACKET_V3 = 2, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_3 { ++NETLINK_UNCONNECTED = 0, ++NETLINK_CONNECTED = 1, ++} ++#[repr(u32)] ++#[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, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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_MAX = 65, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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_MAX = 48, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_9 { ++BRIDGE_MODE_UNSPEC = 0, ++BRIDGE_MODE_HAIRPIN = 1, ++} ++#[repr(u32)] ++#[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_MAX = 43, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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_MAX = 9, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_20 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_21 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_22 { ++VXLAN_VNIFILTER_UNSPEC = 0, ++VXLAN_VNIFILTER_ENTRY = 1, ++__VXLAN_VNIFILTER_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_23 { ++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_MAX = 31, ++} ++#[repr(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_24 { ++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_MAX = 15, ++} ++#[repr(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_25 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_26 { ++IFLA_PPP_UNSPEC = 0, ++IFLA_PPP_DEV_FD = 1, ++__IFLA_PPP_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum ifla_gtp_role { ++GTP_ROLE_GGSN = 0, ++GTP_ROLE_SGSN = 1, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_27 { ++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_MAX = 7, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_28 { ++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_MAX = 32, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_29 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_30 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_31 { ++IFLA_VF_INFO_UNSPEC = 0, ++IFLA_VF_INFO = 1, ++__IFLA_VF_INFO_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_32 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_33 { ++IFLA_VF_VLAN_INFO_UNSPEC = 0, ++IFLA_VF_VLAN_INFO = 1, ++__IFLA_VF_VLAN_INFO_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_34 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_35 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_36 { ++IFLA_VF_PORT_UNSPEC = 0, ++IFLA_VF_PORT = 1, ++__IFLA_VF_PORT_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_37 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_38 { ++PORT_REQUEST_PREASSOCIATE = 0, ++PORT_REQUEST_PREASSOCIATE_RR = 1, ++PORT_REQUEST_ASSOCIATE = 2, ++PORT_REQUEST_DISASSOCIATE = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_39 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_40 { ++IFLA_IPOIB_UNSPEC = 0, ++IFLA_IPOIB_PKEY = 1, ++IFLA_IPOIB_MODE = 2, ++IFLA_IPOIB_UMCAST = 3, ++__IFLA_IPOIB_MAX = 4, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_41 { ++IPOIB_MODE_DATAGRAM = 0, ++IPOIB_MODE_CONNECTED = 1, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_42 { ++HSR_PROTOCOL_HSR = 0, ++HSR_PROTOCOL_PRP = 1, ++HSR_PROTOCOL_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_43 { ++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_MAX = 8, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_44 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_45 { ++IFLA_STATS_GETSET_UNSPEC = 0, ++IFLA_STATS_GET_FILTERS = 1, ++IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS = 2, ++__IFLA_STATS_GETSET_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_46 { ++LINK_XSTATS_TYPE_UNSPEC = 0, ++LINK_XSTATS_TYPE_BRIDGE = 1, ++LINK_XSTATS_TYPE_BOND = 2, ++__LINK_XSTATS_TYPE_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_47 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_48 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_49 { ++XDP_ATTACHED_NONE = 0, ++XDP_ATTACHED_DRV = 1, ++XDP_ATTACHED_SKB = 2, ++XDP_ATTACHED_HW = 3, ++XDP_ATTACHED_MULTI = 4, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_50 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_51 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_52 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_53 { ++IFLA_RMNET_UNSPEC = 0, ++IFLA_RMNET_MUX_ID = 1, ++IFLA_RMNET_FLAGS = 2, ++__IFLA_RMNET_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_54 { ++IFLA_MCTP_UNSPEC = 0, ++IFLA_MCTP_NET = 1, ++__IFLA_MCTP_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_55 { ++IFLA_DSA_UNSPEC = 0, ++IFLA_DSA_MASTER = 1, ++__IFLA_DSA_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_56 { ++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_geneve_df { ++pub const GENEVE_DF_MAX: ifla_geneve_df = ifla_geneve_df::GENEVE_DF_INHERIT; ++} +diff --git a/vendor/linux-raw-sys-0.4.14/src/sw64/if_ether.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/if_ether.rs +new file mode 100644 +index 00000000000..8a223bc5a6d +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/if_ether.rs +@@ -0,0 +1,177 @@ ++/* automatically generated by rust-bindgen 0.66.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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/vendor/linux-raw-sys-0.4.14/src/sw64/if_packet.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/if_packet.rs +new file mode 100644 +index 00000000000..191386e06a2 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/if_packet.rs +@@ -0,0 +1,317 @@ ++/* automatically generated by rust-bindgen 0.66.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 type_flags: __u16, ++pub id: __u16, ++pub max_num_members: __u32, ++} ++pub const __BIG_ENDIAN: u32 = 4321; ++pub const _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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_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(u32)] ++#[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/vendor/linux-raw-sys-0.4.14/src/sw64/io_uring.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/io_uring.rs +new file mode 100644 +index 00000000000..a12baeca397 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/io_uring.rs +@@ -0,0 +1,1096 @@ ++/* automatically generated by rust-bindgen 0.66.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 __reserved: [__u8; 4usize], ++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 __reserved: __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 __reserved: [__u32; 8usize], ++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, 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 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 __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_5__bindgen_ty_1 { ++pub addr_len: __u16, ++pub __pad3: [__u16; 1usize], ++} ++#[repr(C)] ++pub struct io_uring_sqe__bindgen_ty_6 { ++pub __bindgen_anon_1: __BindgenUnionField, ++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)] ++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 resv2: __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 resv2: __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_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_notification_slot { ++pub tag: __u64, ++pub resv: [__u64; 3usize], ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct io_uring_notification_register { ++pub nr_slots: __u32, ++pub resv: __u32, ++pub resv2: __u64, ++pub data: __u64, ++pub resv3: __u64, ++} ++#[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_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 pad: __u16, ++pub resv: [__u64; 3usize], ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct io_uring_getevents_arg { ++pub sigmask: __u64, ++pub sigmask_sz: __u32, ++pub pad: __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 pad: [__u64; 4usize], ++} ++#[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, ++} ++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_SIZEBITS: u32 = 13; ++pub const _IOC_DIRBITS: u32 = 3; ++pub const _IOC_NONE: u32 = 1; ++pub const _IOC_READ: u32 = 2; ++pub const _IOC_WRITE: u32 = 4; ++pub const _IOC_NRBITS: u32 = 8; ++pub const _IOC_TYPEBITS: u32 = 8; ++pub const _IOC_NRMASK: u32 = 255; ++pub const _IOC_TYPEMASK: u32 = 255; ++pub const _IOC_SIZEMASK: u32 = 8191; ++pub const _IOC_DIRMASK: u32 = 7; ++pub const _IOC_NRSHIFT: u32 = 0; ++pub const _IOC_TYPESHIFT: u32 = 8; ++pub const _IOC_SIZESHIFT: u32 = 16; ++pub const _IOC_DIRSHIFT: u32 = 29; ++pub const IOC_IN: u32 = 2147483648; ++pub const IOC_OUT: u32 = 1073741824; ++pub const IOC_INOUT: u32 = 3221225472; ++pub const IOCSIZE_MASK: u32 = 536805376; ++pub const IOCSIZE_SHIFT: u32 = 16; ++pub const _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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_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__MASK: u32 = 375; ++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 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 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 FILE_DEDUPE_RANGE_SAME: u32 = 0; ++pub const FILE_DEDUPE_RANGE_DIFFERS: u32 = 1; ++pub const NR_FILE: u32 = 8192; ++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 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_URING_CMD_FIXED: 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_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_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_NOTIF_USAGE_ZC_COPIED: u32 = 2147483648; ++pub const IORING_ACCEPT_MULTISHOT: u32 = 1; ++pub const IORING_MSG_RING_CQE_SKIP: u32 = 1; ++pub const IORING_MSG_RING_FLAGS_PASS: u32 = 2; ++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_OFF_SQ_RING: u32 = 0; ++pub const IORING_OFF_CQ_RING: u32 = 134217728; ++pub const IORING_OFF_SQES: u32 = 268435456; ++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_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_RSRC_REGISTER_SPARSE: u32 = 1; ++pub const IORING_REGISTER_FILES_SKIP: i32 = -2; ++pub const IO_URING_OP_SUPPORTED: u32 = 1; ++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 IOSQE_FIXED_FILE_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_FIXED_FILE_BIT; ++pub const IOSQE_IO_DRAIN_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_IO_DRAIN_BIT; ++pub const IOSQE_IO_LINK_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_IO_LINK_BIT; ++pub const IOSQE_IO_HARDLINK_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_IO_HARDLINK_BIT; ++pub const IOSQE_ASYNC_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_ASYNC_BIT; ++pub const IOSQE_BUFFER_SELECT_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_BUFFER_SELECT_BIT; ++pub const IOSQE_CQE_SKIP_SUCCESS_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_CQE_SKIP_SUCCESS_BIT; ++pub const IORING_MSG_DATA: _bindgen_ty_2 = _bindgen_ty_2::IORING_MSG_DATA; ++pub const IORING_MSG_SEND_FD: _bindgen_ty_2 = _bindgen_ty_2::IORING_MSG_SEND_FD; ++pub const IORING_CQE_BUFFER_SHIFT: _bindgen_ty_3 = _bindgen_ty_3::IORING_CQE_BUFFER_SHIFT; ++pub const IORING_REGISTER_BUFFERS: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_BUFFERS; ++pub const IORING_UNREGISTER_BUFFERS: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_BUFFERS; ++pub const IORING_REGISTER_FILES: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_FILES; ++pub const IORING_UNREGISTER_FILES: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_FILES; ++pub const IORING_REGISTER_EVENTFD: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_EVENTFD; ++pub const IORING_UNREGISTER_EVENTFD: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_EVENTFD; ++pub const IORING_REGISTER_FILES_UPDATE: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_FILES_UPDATE; ++pub const IORING_REGISTER_EVENTFD_ASYNC: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_EVENTFD_ASYNC; ++pub const IORING_REGISTER_PROBE: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_PROBE; ++pub const IORING_REGISTER_PERSONALITY: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_PERSONALITY; ++pub const IORING_UNREGISTER_PERSONALITY: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_PERSONALITY; ++pub const IORING_REGISTER_RESTRICTIONS: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_RESTRICTIONS; ++pub const IORING_REGISTER_ENABLE_RINGS: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_ENABLE_RINGS; ++pub const IORING_REGISTER_FILES2: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_FILES2; ++pub const IORING_REGISTER_FILES_UPDATE2: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_FILES_UPDATE2; ++pub const IORING_REGISTER_BUFFERS2: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_BUFFERS2; ++pub const IORING_REGISTER_BUFFERS_UPDATE: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_BUFFERS_UPDATE; ++pub const IORING_REGISTER_IOWQ_AFF: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_IOWQ_AFF; ++pub const IORING_UNREGISTER_IOWQ_AFF: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_IOWQ_AFF; ++pub const IORING_REGISTER_IOWQ_MAX_WORKERS: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_IOWQ_MAX_WORKERS; ++pub const IORING_REGISTER_RING_FDS: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_RING_FDS; ++pub const IORING_UNREGISTER_RING_FDS: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_RING_FDS; ++pub const IORING_REGISTER_PBUF_RING: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_PBUF_RING; ++pub const IORING_UNREGISTER_PBUF_RING: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_PBUF_RING; ++pub const IORING_REGISTER_SYNC_CANCEL: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_SYNC_CANCEL; ++pub const IORING_REGISTER_FILE_ALLOC_RANGE: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_FILE_ALLOC_RANGE; ++pub const IORING_REGISTER_LAST: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_LAST; ++pub const IORING_REGISTER_USE_REGISTERED_RING: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_USE_REGISTERED_RING; ++pub const IO_WQ_BOUND: _bindgen_ty_5 = _bindgen_ty_5::IO_WQ_BOUND; ++pub const IO_WQ_UNBOUND: _bindgen_ty_5 = _bindgen_ty_5::IO_WQ_UNBOUND; ++pub const IORING_RESTRICTION_REGISTER_OP: _bindgen_ty_6 = _bindgen_ty_6::IORING_RESTRICTION_REGISTER_OP; ++pub const IORING_RESTRICTION_SQE_OP: _bindgen_ty_6 = _bindgen_ty_6::IORING_RESTRICTION_SQE_OP; ++pub const IORING_RESTRICTION_SQE_FLAGS_ALLOWED: _bindgen_ty_6 = _bindgen_ty_6::IORING_RESTRICTION_SQE_FLAGS_ALLOWED; ++pub const IORING_RESTRICTION_SQE_FLAGS_REQUIRED: _bindgen_ty_6 = _bindgen_ty_6::IORING_RESTRICTION_SQE_FLAGS_REQUIRED; ++pub const IORING_RESTRICTION_LAST: _bindgen_ty_6 = _bindgen_ty_6::IORING_RESTRICTION_LAST; ++#[repr(u32)] ++#[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, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_1 { ++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(u32)] ++#[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_LAST = 49, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_2 { ++IORING_MSG_DATA = 0, ++IORING_MSG_SEND_FD = 1, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_3 { ++IORING_CQE_BUFFER_SHIFT = 16, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_4 { ++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_LAST = 26, ++IORING_REGISTER_USE_REGISTERED_RING = 2147483648, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_5 { ++IO_WQ_BOUND = 0, ++IO_WQ_UNBOUND = 1, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_6 { ++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(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, ++} ++#[repr(C)] ++#[derive(Copy, Clone)] ++pub union io_uring_sqe__bindgen_ty_3 { ++pub rw_flags: __kernel_rwf_t, ++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, ++} ++#[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 __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, ++} ++#[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::new() ++} ++} ++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/vendor/linux-raw-sys-0.4.14/src/sw64/ioctl.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/ioctl.rs +new file mode 100644 +index 00000000000..592285b3772 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/ioctl.rs +@@ -0,0 +1,1600 @@ ++/* automatically generated by rust-bindgen 0.66.1 */ ++ ++pub const FIONREAD: u32 = 18047; ++pub const FIONBIO: u32 = 26238; ++pub const FIOCLEX: u32 = 26113; ++pub const FIONCLEX: u32 = 26114; ++pub const FIOASYNC: u32 = 26237; ++pub const FIOQSIZE: u32 = 26239; ++pub const TCXONC: u32 = 21510; ++pub const TCFLSH: u32 = 21511; ++pub const TIOCSCTTY: u32 = 21632; ++pub const TIOCSPGRP: u32 = 2147775606; ++pub const TIOCOUTQ: u32 = 29810; ++pub const TIOCSTI: u32 = 21618; ++pub const TIOCSWINSZ: u32 = 2148037735; ++pub const TIOCMGET: u32 = 29725; ++pub const TIOCMBIS: u32 = 29723; ++pub const TIOCMBIC: u32 = 29724; ++pub const TIOCMSET: u32 = 29722; ++pub const TIOCSSOFTCAR: u32 = 21634; ++pub const TIOCLINUX: u32 = 21635; ++pub const TIOCCONS: u32 = 2147775608; ++pub const TIOCSSERIAL: u32 = 21637; ++pub const TIOCPKT: u32 = 21616; ++pub const TIOCNOTTY: u32 = 21617; ++pub const TIOCSETD: u32 = 29697; ++pub const TIOCSBRK: u32 = 21543; ++pub const TIOCCBRK: u32 = 21544; ++pub const TIOCSPTLCK: u32 = 2147767345; ++pub const TIOCSIG: u32 = 2147767350; ++pub const TIOCVHANGUP: u32 = 21559; ++pub const TIOCSERCONFIG: u32 = 21640; ++pub const TIOCSERGWILD: u32 = 21641; ++pub const TIOCSERSWILD: u32 = 21642; ++pub const TIOCSLCKTRMIOS: u32 = 21644; ++pub const TIOCSERGSTRUCT: u32 = 21645; ++pub const TIOCSERGETLSR: u32 = 21646; ++pub const TIOCSERGETMULTI: u32 = 21647; ++pub const TIOCSERSETMULTI: u32 = 21648; ++pub const TIOCMIWAIT: u32 = 21649; ++pub const TCGETS: u32 = 21517; ++pub const TCGETA: u32 = 21505; ++pub const TCSBRK: u32 = 21509; ++pub const TCSBRKP: u32 = 21638; ++pub const TCSETA: u32 = 21506; ++pub const TCSETAF: u32 = 21508; ++pub const TCSETAW: u32 = 21507; ++pub const TIOCEXCL: u32 = 29709; ++pub const TIOCNXCL: u32 = 29710; ++pub const TIOCGDEV: u32 = 1074025522; ++pub const TIOCGEXCL: u32 = 1074025536; ++pub const TIOCGICOUNT: u32 = 21650; ++pub const TIOCGLCKTRMIOS: u32 = 21643; ++pub const TIOCGPGRP: u32 = 1074033783; ++pub const TIOCGPKT: u32 = 1074025528; ++pub const TIOCGPTLCK: u32 = 1074025529; ++pub const TIOCGPTN: u32 = 1074025520; ++pub const TIOCGPTPEER: u32 = 536892481; ++pub const TIOCGSERIAL: u32 = 21636; ++pub const TIOCGSID: u32 = 29718; ++pub const TIOCGSOFTCAR: u32 = 21633; ++pub const TIOCGWINSZ: u32 = 1074295912; ++pub const TCGETS2: u32 = 1076909098; ++pub const TCSETS: u32 = 21518; ++pub const TCSETS2: u32 = 2150650923; ++pub const TCSETSF: u32 = 21520; ++pub const TCSETSF2: u32 = 2150650925; ++pub const TCSETSW: u32 = 21519; ++pub const TCSETSW2: u32 = 2150650924; ++pub const TIOCGETD: u32 = 29696; ++pub const TIOCGETP: u32 = 29704; ++pub const TIOCGLTC: u32 = 29812; ++pub const MTIOCGET: u32 = 1077439746; ++pub const BLKSSZGET: u32 = 536875624; ++pub const BLKPBSZGET: u32 = 536875643; ++pub const BLKROSET: u32 = 536875613; ++pub const BLKROGET: u32 = 536875614; ++pub const BLKRRPART: u32 = 536875615; ++pub const BLKGETSIZE: u32 = 536875616; ++pub const BLKFLSBUF: u32 = 536875617; ++pub const BLKRASET: u32 = 536875618; ++pub const BLKRAGET: u32 = 536875619; ++pub const BLKFRASET: u32 = 536875620; ++pub const BLKFRAGET: u32 = 536875621; ++pub const BLKSECTSET: u32 = 536875622; ++pub const BLKSECTGET: u32 = 536875623; ++pub const BLKPG: u32 = 536875625; ++pub const BLKBSZGET: u32 = 1074270832; ++pub const BLKBSZSET: u32 = 2148012657; ++pub const BLKGETSIZE64: u32 = 1074270834; ++pub const BLKTRACESETUP: u32 = 3225948787; ++pub const BLKTRACESTART: u32 = 536875636; ++pub const BLKTRACESTOP: u32 = 536875637; ++pub const BLKTRACETEARDOWN: u32 = 536875638; ++pub const BLKDISCARD: u32 = 536875639; ++pub const BLKIOMIN: u32 = 536875640; ++pub const BLKIOOPT: u32 = 536875641; ++pub const BLKALIGNOFF: u32 = 536875642; ++pub const BLKDISCARDZEROES: u32 = 536875644; ++pub const BLKSECDISCARD: u32 = 536875645; ++pub const BLKROTATIONAL: u32 = 536875646; ++pub const BLKZEROOUT: u32 = 536875647; ++pub const FIEMAP_MAX_OFFSET: i32 = -1; ++pub const FIEMAP_FLAG_SYNC: u32 = 1; ++pub const FIEMAP_FLAG_XATTR: u32 = 2; ++pub const FIEMAP_FLAG_CACHE: u32 = 4; ++pub const FIEMAP_FLAGS_COMPAT: u32 = 3; ++pub const FIEMAP_EXTENT_LAST: u32 = 1; ++pub const FIEMAP_EXTENT_UNKNOWN: u32 = 2; ++pub const FIEMAP_EXTENT_DELALLOC: u32 = 4; ++pub const FIEMAP_EXTENT_ENCODED: u32 = 8; ++pub const FIEMAP_EXTENT_DATA_ENCRYPTED: u32 = 128; ++pub const FIEMAP_EXTENT_NOT_ALIGNED: u32 = 256; ++pub const FIEMAP_EXTENT_DATA_INLINE: u32 = 512; ++pub const FIEMAP_EXTENT_DATA_TAIL: u32 = 1024; ++pub const FIEMAP_EXTENT_UNWRITTEN: u32 = 2048; ++pub const FIEMAP_EXTENT_MERGED: u32 = 4096; ++pub const FIEMAP_EXTENT_SHARED: u32 = 8192; ++pub const UFFDIO_REGISTER: u32 = 3223366144; ++pub const UFFDIO_UNREGISTER: u32 = 1074833921; ++pub const UFFDIO_WAKE: u32 = 1074833922; ++pub const UFFDIO_COPY: u32 = 3223890435; ++pub const UFFDIO_ZEROPAGE: u32 = 3223366148; ++pub const UFFDIO_WRITEPROTECT: u32 = 3222841862; ++pub const UFFDIO_API: u32 = 3222841919; ++pub const NS_GET_USERNS: u32 = 536917761; ++pub const NS_GET_PARENT: u32 = 536917762; ++pub const NS_GET_NSTYPE: u32 = 536917763; ++pub const KDGETLED: u32 = 19249; ++pub const KDSETLED: u32 = 19250; ++pub const KDGKBLED: u32 = 19300; ++pub const KDSKBLED: u32 = 19301; ++pub const KDGKBTYPE: u32 = 19251; ++pub const KDADDIO: u32 = 19252; ++pub const KDDELIO: u32 = 19253; ++pub const KDENABIO: u32 = 19254; ++pub const KDDISABIO: u32 = 19255; ++pub const KDSETMODE: u32 = 19258; ++pub const KDGETMODE: u32 = 19259; ++pub const KDMKTONE: u32 = 19248; ++pub const KIOCSOUND: u32 = 19247; ++pub const GIO_CMAP: u32 = 19312; ++pub const PIO_CMAP: u32 = 19313; ++pub const GIO_FONT: u32 = 19296; ++pub const GIO_FONTX: u32 = 19307; ++pub const PIO_FONT: u32 = 19297; ++pub const PIO_FONTX: u32 = 19308; ++pub const PIO_FONTRESET: u32 = 19309; ++pub const GIO_SCRNMAP: u32 = 19264; ++pub const GIO_UNISCRNMAP: u32 = 19305; ++pub const PIO_SCRNMAP: u32 = 19265; ++pub const PIO_UNISCRNMAP: u32 = 19306; ++pub const GIO_UNIMAP: u32 = 19302; ++pub const PIO_UNIMAP: u32 = 19303; ++pub const PIO_UNIMAPCLR: u32 = 19304; ++pub const KDGKBMODE: u32 = 19268; ++pub const KDSKBMODE: u32 = 19269; ++pub const KDGKBMETA: u32 = 19298; ++pub const KDSKBMETA: u32 = 19299; ++pub const KDGKBENT: u32 = 19270; ++pub const KDSKBENT: u32 = 19271; ++pub const KDGKBSENT: u32 = 19272; ++pub const KDSKBSENT: u32 = 19273; ++pub const KDGKBDIACR: u32 = 19274; ++pub const KDGETKEYCODE: u32 = 19276; ++pub const KDSETKEYCODE: u32 = 19277; ++pub const KDSIGACCEPT: u32 = 19278; ++pub const VT_OPENQRY: u32 = 22016; ++pub const VT_GETMODE: u32 = 22017; ++pub const VT_SETMODE: u32 = 22018; ++pub const VT_GETSTATE: u32 = 22019; ++pub const VT_RELDISP: u32 = 22021; ++pub const VT_ACTIVATE: u32 = 22022; ++pub const VT_WAITACTIVE: u32 = 22023; ++pub const VT_DISALLOCATE: u32 = 22024; ++pub const VT_RESIZE: u32 = 22025; ++pub const VT_RESIZEX: u32 = 22026; ++pub const FIOSETOWN: u32 = 2147772028; ++pub const FIOGETOWN: u32 = 1074030203; ++pub const SIOCATMARK: u32 = 1074033415; ++pub const SIOCGSTAMP: u32 = 35078; ++pub const TIOCINQ: u32 = 18047; ++pub const SIOCADDRT: u32 = 35083; ++pub const SIOCDELRT: u32 = 35084; ++pub const SIOCGIFNAME: u32 = 35088; ++pub const SIOCSIFLINK: u32 = 35089; ++pub const SIOCGIFCONF: u32 = 35090; ++pub const SIOCGIFFLAGS: u32 = 35091; ++pub const SIOCSIFFLAGS: u32 = 35092; ++pub const SIOCGIFADDR: u32 = 35093; ++pub const SIOCSIFADDR: u32 = 35094; ++pub const SIOCGIFDSTADDR: u32 = 35095; ++pub const SIOCSIFDSTADDR: u32 = 35096; ++pub const SIOCGIFBRDADDR: u32 = 35097; ++pub const SIOCSIFBRDADDR: u32 = 35098; ++pub const SIOCGIFNETMASK: u32 = 35099; ++pub const SIOCSIFNETMASK: u32 = 35100; ++pub const SIOCGIFMETRIC: u32 = 35101; ++pub const SIOCSIFMETRIC: u32 = 35102; ++pub const SIOCGIFMEM: u32 = 35103; ++pub const SIOCSIFMEM: u32 = 35104; ++pub const SIOCGIFMTU: u32 = 35105; ++pub const SIOCSIFMTU: u32 = 35106; ++pub const SIOCSIFHWADDR: u32 = 35108; ++pub const SIOCGIFENCAP: u32 = 35109; ++pub const SIOCSIFENCAP: u32 = 35110; ++pub const SIOCGIFHWADDR: u32 = 35111; ++pub const SIOCGIFSLAVE: u32 = 35113; ++pub const SIOCSIFSLAVE: u32 = 35120; ++pub const SIOCADDMULTI: u32 = 35121; ++pub const SIOCDELMULTI: u32 = 35122; ++pub const SIOCDARP: u32 = 35155; ++pub const SIOCGARP: u32 = 35156; ++pub const SIOCSARP: u32 = 35157; ++pub const SIOCDRARP: u32 = 35168; ++pub const SIOCGRARP: u32 = 35169; ++pub const SIOCSRARP: u32 = 35170; ++pub const SIOCGIFMAP: u32 = 35184; ++pub const SIOCSIFMAP: u32 = 35185; ++pub const SIOCRTMSG: u32 = 35085; ++pub const SIOCSIFNAME: u32 = 35107; ++pub const SIOCGIFINDEX: u32 = 35123; ++pub const SIOGIFINDEX: u32 = 35123; ++pub const SIOCSIFPFLAGS: u32 = 35124; ++pub const SIOCGIFPFLAGS: u32 = 35125; ++pub const SIOCDIFADDR: u32 = 35126; ++pub const SIOCSIFHWBROADCAST: u32 = 35127; ++pub const SIOCGIFCOUNT: u32 = 35128; ++pub const SIOCGIFBR: u32 = 35136; ++pub const SIOCSIFBR: u32 = 35137; ++pub const SIOCGIFTXQLEN: u32 = 35138; ++pub const SIOCSIFTXQLEN: u32 = 35139; ++pub const SIOCADDDLCI: u32 = 35200; ++pub const SIOCDELDLCI: u32 = 35201; ++pub const SIOCDEVPRIVATE: u32 = 35312; ++pub const SIOCPROTOPRIVATE: u32 = 35296; ++pub const FIBMAP: u32 = 536870913; ++pub const FIGETBSZ: u32 = 536870914; ++pub const FIFREEZE: u32 = 3221510263; ++pub const FITHAW: u32 = 3221510264; ++pub const FITRIM: u32 = 3222820985; ++pub const FICLONE: u32 = 2147783689; ++pub const FICLONERANGE: u32 = 2149618701; ++pub const FIDEDUPERANGE: u32 = 3222836278; ++pub const FS_IOC_GETFLAGS: u32 = 1074292225; ++pub const FS_IOC_SETFLAGS: u32 = 2148034050; ++pub const FS_IOC_GETVERSION: u32 = 1074296321; ++pub const FS_IOC_SETVERSION: u32 = 2148038146; ++pub const FS_IOC_FIEMAP: u32 = 3223348747; ++pub const FS_IOC32_GETFLAGS: u32 = 1074030081; ++pub const FS_IOC32_SETFLAGS: u32 = 2147771906; ++pub const FS_IOC32_GETVERSION: u32 = 1074034177; ++pub const FS_IOC32_SETVERSION: u32 = 2147776002; ++pub const FS_IOC_FSGETXATTR: u32 = 1075599391; ++pub const FS_IOC_FSSETXATTR: u32 = 2149341216; ++pub const FS_IOC_GETFSLABEL: u32 = 1090556977; ++pub const FS_IOC_SETFSLABEL: u32 = 2164298802; ++pub const EXT4_IOC_GETVERSION: u32 = 1074292227; ++pub const EXT4_IOC_SETVERSION: u32 = 2148034052; ++pub const EXT4_IOC_GETVERSION_OLD: u32 = 1074296321; ++pub const EXT4_IOC_SETVERSION_OLD: u32 = 2148038146; ++pub const EXT4_IOC_GETRSVSZ: u32 = 1074292229; ++pub const EXT4_IOC_SETRSVSZ: u32 = 2148034054; ++pub const EXT4_IOC_GROUP_EXTEND: u32 = 2148034055; ++pub const EXT4_IOC_MIGRATE: u32 = 536897033; ++pub const EXT4_IOC_ALLOC_DA_BLKS: u32 = 536897036; ++pub const EXT4_IOC_RESIZE_FS: u32 = 2148034064; ++pub const EXT4_IOC_SWAP_BOOT: u32 = 536897041; ++pub const EXT4_IOC_PRECACHE_EXTENTS: u32 = 536897042; ++pub const EXT4_IOC_CLEAR_ES_CACHE: u32 = 536897064; ++pub const EXT4_IOC_GETSTATE: u32 = 2147771945; ++pub const EXT4_IOC_GET_ES_CACHE: u32 = 3223348778; ++pub const EXT4_IOC_CHECKPOINT: u32 = 2147771947; ++pub const EXT4_IOC_SHUTDOWN: u32 = 1074026621; ++pub const EXT4_IOC32_GETVERSION: u32 = 1074030083; ++pub const EXT4_IOC32_SETVERSION: u32 = 2147771908; ++pub const EXT4_IOC32_GETRSVSZ: u32 = 1074030085; ++pub const EXT4_IOC32_SETRSVSZ: u32 = 2147771910; ++pub const EXT4_IOC32_GROUP_EXTEND: u32 = 2147771911; ++pub const EXT4_IOC32_GETVERSION_OLD: u32 = 1074034177; ++pub const EXT4_IOC32_SETVERSION_OLD: u32 = 2147776002; ++pub const VIDIOC_SUBDEV_QUERYSTD: u32 = 1074288191; ++pub const AUTOFS_DEV_IOCTL_CLOSEMOUNT: u32 = 3222836085; ++pub const LIRC_SET_SEND_CARRIER: u32 = 2147772691; ++pub const AUTOFS_IOC_PROTOSUBVER: u32 = 1074041703; ++pub const PTP_SYS_OFFSET_PRECISE: u32 = 3225435400; ++pub const FSI_SCOM_WRITE: u32 = 3223352066; ++pub const ATM_GETCIRANGE: u32 = 2148557194; ++pub const DMA_BUF_SET_NAME_B: u32 = 2148033025; ++pub const RIO_CM_EP_GET_LIST_SIZE: u32 = 3221512961; ++pub const TUNSETPERSIST: u32 = 2147767499; ++pub const FS_IOC_GET_ENCRYPTION_POLICY: u32 = 2148296213; ++pub const CEC_RECEIVE: u32 = 3224920326; ++pub const MGSL_IOCGPARAMS: u32 = 1076915457; ++pub const ENI_SETMULT: u32 = 2148557159; ++pub const RIO_GET_EVENT_MASK: u32 = 1074031886; ++pub const LIRC_GET_MAX_TIMEOUT: u32 = 1074030857; ++pub const KVM_SET_BOOT_CPU_ID: u32 = 536915576; ++pub const KVM_SET_MP_STATE: u32 = 2147790489; ++pub const KVM_GET_MP_STATE: u32 = 1074048664; ++pub const KVM_GET_API_VERSION: u32 = 536915456; ++pub const KVM_S390_GET_SKEYS: u32 = 2151722674; ++pub const KVM_SET_ONE_REG: u32 = 2148576940; ++pub const KVM_IRQ_LINE_STATUS: u32 = 3221794407; ++pub const KVM_SET_USER_MEMORY_REGION: u32 = 2149625414; ++pub const KVM_S390_INTERRUPT: u32 = 2148576916; ++pub const KVM_TPR_ACCESS_REPORTING: u32 = 3223891602; ++pub const KVM_GET_FPU: u32 = 1073786508; ++pub const KVM_ASSIGN_SET_MSIX_ENTRY: u32 = 2148576884; ++pub const KVM_MEMORY_ENCRYPT_REG_REGION: u32 = 1074835131; ++pub const KVM_S390_UCAS_MAP: u32 = 2149101136; ++pub const KVM_ASSIGN_SET_INTX_MASK: u32 = 2151722660; ++pub const KVM_MEMORY_ENCRYPT_OP: u32 = 3221794490; ++pub const KVM_CREATE_PIT2: u32 = 2151722615; ++pub const KVM_S390_VCPU_FAULT: u32 = 2148052562; ++pub const KVM_REGISTER_COALESCED_MMIO: u32 = 2148576871; ++pub const KVM_SET_VAPIC_ADDR: u32 = 2148052627; ++pub const KVM_CREATE_DEVICE: u32 = 3222056672; ++pub const KVM_GET_IRQCHIP: u32 = 3255348834; ++pub const KVM_TRANSLATE: u32 = 3222843013; ++pub const KVM_S390_SET_INITIAL_PSW: u32 = 2148576918; ++pub const KVM_X86_SETUP_MCE: u32 = 2148052636; ++pub const KVM_DEASSIGN_PCI_DEVICE: u32 = 2151722610; ++pub const KVM_XEN_HVM_SET_ATTR: u32 = 2152246985; ++pub const KVM_GET_CLOCK: u32 = 1076932220; ++pub const KVM_SET_FPU: u32 = 2147528333; ++pub const KVM_KVMCLOCK_CTRL: u32 = 536915629; ++pub const KVM_PPC_GET_PVINFO: u32 = 2155916961; ++pub const KVM_X86_GET_MCE_CAP_SUPPORTED: u32 = 1074310813; ++pub const KVM_S390_GET_IRQ_STATE: u32 = 2149625526; ++pub const KVM_GET_DEVICE_ATTR: u32 = 2149101282; ++pub const KVM_S390_INITIAL_RESET: u32 = 536915607; ++pub const KVM_SET_REGS: u32 = 2165878402; ++pub const KVM_GET_TSC_KHZ: u32 = 536915619; ++pub const KVM_CHECK_EXTENSION: u32 = 536915459; ++pub const KVM_PPC_RESIZE_HPT_COMMIT: u32 = 1074835118; ++pub const KVM_GET_DIRTY_LOG: u32 = 2148576834; ++pub const KVM_S390_SET_IRQ_STATE: u32 = 2149625525; ++pub const KVM_S390_NORMAL_RESET: u32 = 536915651; ++pub const KVM_SET_SIGNAL_MASK: u32 = 2147790475; ++pub const KVM_XEN_VCPU_SET_ATTR: u32 = 2152246987; ++pub const KVM_SET_GSI_ROUTING: u32 = 2148052586; ++pub const KVM_CREATE_VCPU: u32 = 536915521; ++pub const KVM_S390_UCAS_UNMAP: u32 = 2149101137; ++pub const KVM_S390_STORE_STATUS: u32 = 2148052629; ++pub const KVM_UNREGISTER_COALESCED_MMIO: u32 = 2148576872; ++pub const KVM_ASSIGN_DEV_IRQ: u32 = 2151722608; ++pub const KVM_S390_PV_COMMAND: u32 = 3223367365; ++pub const KVM_S390_ENABLE_SIE: u32 = 536915462; ++pub const KVM_CLEAR_DIRTY_LOG: u32 = 3222843072; ++pub const KVM_GET_ONE_REG: u32 = 2148576939; ++pub const KVM_ARM_SET_DEVICE_ADDR: u32 = 2148576939; ++pub const KVM_DIRTY_TLB: u32 = 2148576938; ++pub const KVM_NMI: u32 = 536915610; ++pub const KVM_HYPERV_EVENTFD: u32 = 2149101245; ++pub const KVM_S390_MEM_OP: u32 = 2151722673; ++pub const KVM_PPC_SVM_OFF: u32 = 536915635; ++pub const KVM_PPC_RESIZE_HPT_PREPARE: u32 = 1074835117; ++pub const KVM_INTERRUPT: u32 = 2147790470; ++pub const KVM_XEN_HVM_GET_ATTR: u32 = 3225988808; ++pub const KVM_GET_SREGS: u32 = 1073786499; ++pub const KVM_SET_IDENTITY_MAP_ADDR: u32 = 2148052552; ++pub const KVM_GET_REGS: u32 = 1092136577; ++pub const KVM_S390_GET_CMMA_BITS: u32 = 3223367352; ++pub const KVM_CREATE_IRQCHIP: u32 = 536915552; ++pub const KVM_ASSIGN_PCI_DEVICE: u32 = 1077980777; ++pub const KVM_SET_NR_MMU_PAGES: u32 = 536915524; ++pub const KVM_IOEVENTFD: u32 = 2151722617; ++pub const KVM_RUN: u32 = 536915584; ++pub const KVM_S390_SET_SKEYS: u32 = 2151722675; ++pub const KVM_SET_DEVICE_ATTR: u32 = 2149101281; ++pub const KVM_DEASSIGN_DEV_IRQ: u32 = 2151722613; ++pub const KVM_SMI: u32 = 536915639; ++pub const KVM_SET_TSS_ADDR: u32 = 536915527; ++pub const KVM_GET_NR_MMU_PAGES: u32 = 536915525; ++pub const KVM_XEN_VCPU_GET_ATTR: u32 = 3225988810; ++pub const KVM_REINJECT_CONTROL: u32 = 536915569; ++pub const KVM_HAS_DEVICE_ATTR: u32 = 2149101283; ++pub const KVM_IRQFD: u32 = 2149625462; ++pub const KVM_S390_SET_CMMA_BITS: u32 = 2149625529; ++pub const KVM_SET_IRQCHIP: u32 = 1107865187; ++pub const KVM_SIGNAL_MSI: u32 = 2149625509; ++pub const KVM_GET_VCPU_MMAP_SIZE: u32 = 536915460; ++pub const KVM_CREATE_VM: u32 = 536915457; ++pub const KVM_S390_CLEAR_RESET: u32 = 536915652; ++pub const KVM_RESET_DIRTY_RINGS: u32 = 536915655; ++pub const KVM_ASSIGN_SET_MSIX_NR: u32 = 2148052595; ++pub const KVM_CREATE_PIT: u32 = 536915556; ++pub const KVM_SET_GUEST_DEBUG: u32 = 2148052635; ++pub const KVM_GET_REG_LIST: u32 = 3221794480; ++pub const KVM_ARM_VCPU_FINALIZE: u32 = 2147790530; ++pub const KVM_SET_CLOCK: u32 = 2150674043; ++pub const KVM_PPC_ALLOCATE_HTAB: u32 = 3221532327; ++pub const KVM_PPC_GET_SMMU_INFO: u32 = 1112583846; ++pub const KVM_SET_TSC_KHZ: u32 = 536915618; ++pub const KVM_S390_IRQ: u32 = 2152246964; ++pub const KVM_ENABLE_CAP: u32 = 2154344099; ++pub const KVM_IRQ_LINE: u32 = 2148052577; ++pub const KVM_SET_SREGS: u32 = 2147528324; ++pub const KVM_MEMORY_ENCRYPT_UNREG_REGION: u32 = 1074835132; ++pub const KVM_GET_STATS_FD: u32 = 536915662; ++pub const USBDEVFS_CLAIMINTERFACE: u32 = 1074025743; ++pub const CHIOMOVE: u32 = 2148819713; ++pub const SONYPI_IOCGBATFLAGS: u32 = 1073837575; ++pub const BTRFS_IOC_SYNC: u32 = 536908808; ++pub const VIDIOC_TRY_FMT: u32 = 3234879040; ++pub const LIRC_SET_REC_MODE: u32 = 2147772690; ++pub const VIDIOC_DQEVENT: u32 = 1082676825; ++pub const RPMSG_DESTROY_EPT_IOCTL: u32 = 536917250; ++pub const UVCIOC_CTRL_MAP: u32 = 3227546912; ++pub const VHOST_SET_BACKEND_FEATURES: u32 = 2148052773; ++pub const VHOST_VSOCK_SET_GUEST_CID: u32 = 2148052832; ++pub const UI_SET_KEYBIT: u32 = 2147767653; ++pub const LIRC_SET_REC_TIMEOUT: u32 = 2147772696; ++pub const FS_IOC_GET_ENCRYPTION_KEY_STATUS: u32 = 3229640218; ++pub const BTRFS_IOC_TREE_SEARCH_V2: u32 = 3228603409; ++pub const VHOST_SET_VRING_BASE: u32 = 2148052754; ++pub const RIO_ENABLE_DOORBELL_RANGE: u32 = 2148035849; ++pub const VIDIOC_TRY_EXT_CTRLS: u32 = 3223344713; ++pub const LIRC_GET_REC_MODE: u32 = 1074030850; ++pub const PPGETTIME: u32 = 1074819221; ++pub const BTRFS_IOC_RM_DEV: u32 = 2415957003; ++pub const ATM_SETBACKEND: u32 = 2147639794; ++pub const FSL_HV_IOCTL_PARTITION_START: u32 = 3222318851; ++pub const FBIO_WAITEVENT: u32 = 536888968; ++pub const SWITCHTEC_IOCTL_PORT_TO_PFF: u32 = 3222034245; ++pub const NVME_IOCTL_IO_CMD: u32 = 3225964099; ++pub const IPMICTL_RECEIVE_MSG_TRUNC: u32 = 3224398091; ++pub const FDTWADDLE: u32 = 536871513; ++pub const NVME_IOCTL_SUBMIT_IO: u32 = 2150649410; ++pub const NILFS_IOCTL_SYNC: u32 = 1074294410; ++pub const VIDIOC_SUBDEV_S_DV_TIMINGS: u32 = 3229898327; ++pub const ASPEED_LPC_CTRL_IOCTL_GET_SIZE: u32 = 3222319616; ++pub const DM_DEV_STATUS: u32 = 3241737479; ++pub const TEE_IOC_CLOSE_SESSION: u32 = 1074045957; ++pub const NS_GETPSTAT: u32 = 3222298977; ++pub const UI_SET_PROPBIT: u32 = 2147767662; ++pub const TUNSETFILTEREBPF: u32 = 1074025697; ++pub const RIO_MPORT_MAINT_COMPTAG_SET: u32 = 2147773698; ++pub const AUTOFS_DEV_IOCTL_VERSION: u32 = 3222836081; ++pub const WDIOC_SETOPTIONS: u32 = 1074026244; ++pub const VHOST_SCSI_SET_ENDPOINT: u32 = 2162732864; ++pub const MGSL_IOCGTXIDLE: u32 = 536898819; ++pub const ATM_ADDLECSADDR: u32 = 2148557198; ++pub const FSL_HV_IOCTL_GETPROP: u32 = 3223891719; ++pub const FDGETPRM: u32 = 1075839492; ++pub const HIDIOCAPPLICATION: u32 = 536889346; ++pub const ENI_MEMDUMP: u32 = 2148557152; ++pub const PTP_SYS_OFFSET2: u32 = 2202025230; ++pub const VIDIOC_SUBDEV_G_DV_TIMINGS: u32 = 3229898328; ++pub const DMA_BUF_SET_NAME_A: u32 = 2147770881; ++pub const PTP_PIN_GETFUNC: u32 = 3227532550; ++pub const PTP_SYS_OFFSET_EXTENDED: u32 = 3300932873; ++pub const DFL_FPGA_PORT_UINT_SET_IRQ: u32 = 2148054600; ++pub const RTC_EPOCH_READ: u32 = 1074294797; ++pub const VIDIOC_SUBDEV_S_SELECTION: u32 = 3225441854; ++pub const VIDIOC_QUERY_EXT_CTRL: u32 = 3236451943; ++pub const ATM_GETLECSADDR: u32 = 2148557200; ++pub const FSL_HV_IOCTL_PARTITION_STOP: u32 = 3221794564; ++pub const SONET_GETDIAG: u32 = 1074028820; ++pub const ATMMPC_DATA: u32 = 536895961; ++pub const IPMICTL_UNREGISTER_FOR_CMD_CHANS: u32 = 1074555165; ++pub const HIDIOCGCOLLECTIONINDEX: u32 = 2149074960; ++pub const RPMSG_CREATE_EPT_IOCTL: u32 = 2150151425; ++pub const GPIOHANDLE_GET_LINE_VALUES_IOCTL: u32 = 3225465864; ++pub const UI_DEV_SETUP: u32 = 2153534723; ++pub const ISST_IF_IO_CMD: u32 = 2148072962; ++pub const RIO_MPORT_MAINT_READ_REMOTE: u32 = 1075342599; ++pub const VIDIOC_OMAP3ISP_HIST_CFG: u32 = 3224393412; ++pub const BLKGETNRZONES: u32 = 1074008709; ++pub const VIDIOC_G_MODULATOR: u32 = 3225703990; ++pub const VBG_IOCTL_WRITE_CORE_DUMP: u32 = 3223082515; ++pub const USBDEVFS_SETINTERFACE: u32 = 1074287876; ++pub const PPPIOCGCHAN: u32 = 1074033719; ++pub const EVIOCGVERSION: u32 = 1074021633; ++pub const VHOST_NET_SET_BACKEND: u32 = 2148052784; ++pub const USBDEVFS_REAPURBNDELAY: u32 = 2148029709; ++pub const RNDZAPENTCNT: u32 = 536891908; ++pub const VIDIOC_G_PARM: u32 = 3234616853; ++pub const TUNGETDEVNETNS: u32 = 536892643; ++pub const LIRC_SET_MEASURE_CARRIER_MODE: u32 = 2147772701; ++pub const VHOST_SET_VRING_ERR: u32 = 2148052770; ++pub const VDUSE_VQ_SETUP: u32 = 2149613844; ++pub const AUTOFS_IOC_SETTIMEOUT: u32 = 3221787492; ++pub const VIDIOC_S_FREQUENCY: u32 = 2150389305; ++pub const F2FS_IOC_SEC_TRIM_FILE: u32 = 2149119252; ++pub const FS_IOC_REMOVE_ENCRYPTION_KEY: u32 = 3225445912; ++pub const WDIOC_GETPRETIMEOUT: u32 = 1074026249; ++pub const USBDEVFS_DROP_PRIVILEGES: u32 = 2147767582; ++pub const BTRFS_IOC_SNAP_CREATE_V2: u32 = 2415957015; ++pub const VHOST_VSOCK_SET_RUNNING: u32 = 2147790689; ++pub const STP_SET_OPTIONS: u32 = 2148017410; ++pub const FBIO_RADEON_GET_MIRROR: u32 = 1074282499; ++pub const IVTVFB_IOC_DMA_FRAME: u32 = 2149078720; ++pub const IPMICTL_SEND_COMMAND: u32 = 1076390157; ++pub const VIDIOC_G_ENC_INDEX: u32 = 1209554508; ++pub const DFL_FPGA_FME_PORT_PR: u32 = 536917632; ++pub const CHIOSVOLTAG: u32 = 2150654738; ++pub const ATM_SETESIF: u32 = 2148557197; ++pub const FW_CDEV_IOC_SEND_RESPONSE: u32 = 2149065476; ++pub const PMU_IOC_GET_MODEL: u32 = 1074283011; ++pub const JSIOCGBTNMAP: u32 = 1140877876; ++pub const USBDEVFS_HUB_PORTINFO: u32 = 1082152211; ++pub const VBG_IOCTL_INTERRUPT_ALL_WAIT_FOR_EVENTS: u32 = 3222820363; ++pub const FDCLRPRM: u32 = 536871489; ++pub const BTRFS_IOC_SCRUB: u32 = 3288372251; ++pub const USBDEVFS_DISCONNECT: u32 = 536892694; ++pub const TUNSETVNETBE: u32 = 2147767518; ++pub const ATMTCP_REMOVE: u32 = 536895887; ++pub const VHOST_VDPA_GET_CONFIG: u32 = 1074311027; ++pub const PPPIOCGNPMODE: u32 = 3221779532; ++pub const FDGETDRVPRM: u32 = 1082130961; ++pub const TUNSETVNETLE: u32 = 2147767516; ++pub const PHN_SETREG: u32 = 2148036614; ++pub const PPPIOCDETACH: u32 = 2147775548; ++pub const MMTIMER_GETRES: u32 = 1074294017; ++pub const VIDIOC_SUBDEV_ENUMSTD: u32 = 3225966105; ++pub const PPGETFLAGS: u32 = 1074032794; ++pub const VDUSE_DEV_GET_FEATURES: u32 = 1074299153; ++pub const CAPI_MANUFACTURER_CMD: u32 = 3222291232; ++pub const VIDIOC_G_TUNER: u32 = 3226752541; ++pub const DM_TABLE_STATUS: u32 = 3241737484; ++pub const DM_DEV_ARM_POLL: u32 = 3241737488; ++pub const NE_CREATE_VM: u32 = 1074310688; ++pub const MEDIA_IOC_ENUM_LINKS: u32 = 3223878658; ++pub const F2FS_IOC_PRECACHE_EXTENTS: u32 = 536933647; ++pub const DFL_FPGA_PORT_DMA_MAP: u32 = 536917571; ++pub const MGSL_IOCGXCTRL: u32 = 536898838; ++pub const FW_CDEV_IOC_SEND_REQUEST: u32 = 2150114049; ++pub const SONYPI_IOCGBLUE: u32 = 1073837576; ++pub const F2FS_IOC_DECOMPRESS_FILE: u32 = 536933655; ++pub const I2OHTML: u32 = 3224398089; ++pub const VFIO_GET_API_VERSION: u32 = 536886116; ++pub const IDT77105_GETSTATZ: u32 = 2148557107; ++pub const I2OPARMSET: u32 = 3223873795; ++pub const TEE_IOC_CANCEL: u32 = 1074308100; ++pub const PTP_SYS_OFFSET_PRECISE2: u32 = 3225435409; ++pub const DFL_FPGA_PORT_RESET: u32 = 536917568; ++pub const PPPIOCGASYNCMAP: u32 = 1074033752; ++pub const EVIOCGKEYCODE_V2: u32 = 1076380932; ++pub const DM_DEV_SET_GEOMETRY: u32 = 3241737487; ++pub const HIDIOCSUSAGE: u32 = 2149074956; ++pub const FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE_ONCE: u32 = 2149065488; ++pub const PTP_EXTTS_REQUEST: u32 = 2148547842; ++pub const SWITCHTEC_IOCTL_EVENT_CTL: u32 = 3223869251; ++pub const WDIOC_SETPRETIMEOUT: u32 = 3221509896; ++pub const VHOST_SCSI_CLEAR_ENDPOINT: u32 = 2162732865; ++pub const JSIOCGAXES: u32 = 1073834513; ++pub const HIDIOCSFLAG: u32 = 2147764239; ++pub const PTP_PEROUT_REQUEST2: u32 = 2151169292; ++pub const PPWDATA: u32 = 2147577990; ++pub const PTP_CLOCK_GETCAPS: u32 = 1079000321; ++pub const FDGETMAXERRS: u32 = 1075053070; ++pub const TUNSETQUEUE: u32 = 2147767513; ++pub const PTP_ENABLE_PPS: u32 = 2147761412; ++pub const SIOCSIFATMTCP: u32 = 536895872; ++pub const CEC_ADAP_G_LOG_ADDRS: u32 = 1079795971; ++pub const ND_IOCTL_ARS_CAP: u32 = 3223342593; ++pub const NBD_SET_BLKSIZE: u32 = 536914689; ++pub const NBD_SET_TIMEOUT: u32 = 536914697; ++pub const VHOST_SCSI_GET_ABI_VERSION: u32 = 2147790658; ++pub const RIO_UNMAP_INBOUND: u32 = 2148035858; ++pub const ATM_QUERYLOOP: u32 = 2148557140; ++pub const DFL_FPGA_GET_API_VERSION: u32 = 536917504; ++pub const USBDEVFS_WAIT_FOR_RESUME: u32 = 536892707; ++pub const FBIO_CURSOR: u32 = 3228059144; ++pub const RNDCLEARPOOL: u32 = 536891910; ++pub const VIDIOC_QUERYSTD: u32 = 1074288191; ++pub const DMA_BUF_IOCTL_SYNC: u32 = 2148033024; ++pub const SCIF_RECV: u32 = 3222827783; ++pub const PTP_PIN_GETFUNC2: u32 = 3227532559; ++pub const FW_CDEV_IOC_ALLOCATE: u32 = 3223331586; ++pub const CEC_ADAP_G_CAPS: u32 = 3226231040; ++pub const VIDIOC_G_FBUF: u32 = 1076909578; ++pub const PTP_ENABLE_PPS2: u32 = 2147761421; ++pub const PCITEST_CLEAR_IRQ: u32 = 536891408; ++pub const IPMICTL_SET_GETS_EVENTS_CMD: u32 = 1074030864; ++pub const BTRFS_IOC_DEVICES_READY: u32 = 1342215207; ++pub const JSIOCGAXMAP: u32 = 1077963314; ++pub const FW_CDEV_IOC_GET_CYCLE_TIMER: u32 = 1074799372; ++pub const FW_CDEV_IOC_SET_ISO_CHANNELS: u32 = 2148541207; ++pub const RTC_WIE_OFF: u32 = 536899600; ++pub const PPGETMODE: u32 = 1074032792; ++pub const VIDIOC_DBG_G_REGISTER: u32 = 3224917584; ++pub const PTP_SYS_OFFSET: u32 = 2202025221; ++pub const BTRFS_IOC_SPACE_INFO: u32 = 3222311956; ++pub const VIDIOC_SUBDEV_ENUM_FRAME_SIZE: u32 = 3225441866; ++pub const ND_IOCTL_VENDOR: u32 = 3221769737; ++pub const SCIF_VREADFROM: u32 = 3223876364; ++pub const BTRFS_IOC_TRANS_START: u32 = 536908806; ++pub const INOTIFY_IOC_SETNEXTWD: u32 = 2147764480; ++pub const SNAPSHOT_GET_IMAGE_SIZE: u32 = 1074279182; ++pub const TUNDETACHFILTER: u32 = 2148553942; ++pub const ND_IOCTL_CLEAR_ERROR: u32 = 3223342596; ++pub const IOC_PR_CLEAR: u32 = 2148561101; ++pub const SCIF_READFROM: u32 = 3223876362; ++pub const PPPIOCGDEBUG: u32 = 1074033729; ++pub const BLKGETZONESZ: u32 = 1074008708; ++pub const HIDIOCGUSAGES: u32 = 3491514387; ++pub const SONYPI_IOCGTEMP: u32 = 1073837580; ++pub const UI_SET_MSCBIT: u32 = 2147767656; ++pub const APM_IOC_SUSPEND: u32 = 536887554; ++pub const BTRFS_IOC_TREE_SEARCH: u32 = 3489698833; ++pub const RTC_PLL_GET: u32 = 1075867665; ++pub const RIO_CM_EP_GET_LIST: u32 = 3221512962; ++pub const USBDEVFS_DISCSIGNAL: u32 = 1074812174; ++pub const LIRC_GET_MIN_TIMEOUT: u32 = 1074030856; ++pub const SWITCHTEC_IOCTL_EVENT_SUMMARY_LEGACY: u32 = 1100502850; ++pub const DM_TARGET_MSG: u32 = 3241737486; ++pub const SONYPI_IOCGBAT1REM: u32 = 1073903107; ++pub const EVIOCSFF: u32 = 2150647168; ++pub const TUNSETGROUP: u32 = 2147767502; ++pub const EVIOCGKEYCODE: u32 = 1074283780; ++pub const KCOV_REMOTE_ENABLE: u32 = 2149081958; ++pub const ND_IOCTL_GET_CONFIG_SIZE: u32 = 3222031876; ++pub const FDEJECT: u32 = 536871514; ++pub const TUNSETOFFLOAD: u32 = 2147767504; ++pub const PPPIOCCONNECT: u32 = 2147775546; ++pub const ATM_ADDADDR: u32 = 2148557192; ++pub const VDUSE_DEV_INJECT_CONFIG_IRQ: u32 = 536903955; ++pub const AUTOFS_DEV_IOCTL_ASKUMOUNT: u32 = 3222836093; ++pub const VHOST_VDPA_GET_STATUS: u32 = 1073852273; ++pub const CCISS_PASSTHRU: u32 = 3227009547; ++pub const MGSL_IOCCLRMODCOUNT: u32 = 536898831; ++pub const TEE_IOC_SUPPL_SEND: u32 = 1074832391; ++pub const ATMARPD_CTRL: u32 = 536895969; ++pub const UI_ABS_SETUP: u32 = 2149340420; ++pub const UI_DEV_DESTROY: u32 = 536892674; ++pub const BTRFS_IOC_QUOTA_CTL: u32 = 3222311976; ++pub const RTC_AIE_ON: u32 = 536899585; ++pub const AUTOFS_IOC_EXPIRE: u32 = 1091343205; ++pub const PPPIOCSDEBUG: u32 = 2147775552; ++pub const GPIO_V2_LINE_SET_VALUES_IOCTL: u32 = 3222320143; ++pub const PPPIOCSMRU: u32 = 2147775570; ++pub const CCISS_DEREGDISK: u32 = 536887820; ++pub const UI_DEV_CREATE: u32 = 536892673; ++pub const FUSE_DEV_IOC_CLONE: u32 = 1074062592; ++pub const BTRFS_IOC_START_SYNC: u32 = 1074304024; ++pub const NILFS_IOCTL_DELETE_CHECKPOINT: u32 = 2148036225; ++pub const SNAPSHOT_AVAIL_SWAP_SIZE: u32 = 1074279187; ++pub const DM_TABLE_CLEAR: u32 = 3241737482; ++pub const CCISS_GETINTINFO: u32 = 1074283010; ++pub const PPPIOCSASYNCMAP: u32 = 2147775575; ++pub const I2OEVTGET: u32 = 1080584459; ++pub const NVME_IOCTL_RESET: u32 = 536890948; ++pub const PPYIELD: u32 = 536899725; ++pub const NVME_IOCTL_IO64_CMD: u32 = 3226488392; ++pub const TUNSETCARRIER: u32 = 2147767522; ++pub const DM_DEV_WAIT: u32 = 3241737480; ++pub const RTC_WIE_ON: u32 = 536899599; ++pub const MEDIA_IOC_DEVICE_INFO: u32 = 3238034432; ++pub const RIO_CM_CHAN_CREATE: u32 = 3221381891; ++pub const MGSL_IOCSPARAMS: u32 = 2150657280; ++pub const RTC_SET_TIME: u32 = 2149871626; ++pub const VHOST_RESET_OWNER: u32 = 536915714; ++pub const IOC_OPAL_PSID_REVERT_TPR: u32 = 2164814056; ++pub const AUTOFS_DEV_IOCTL_OPENMOUNT: u32 = 3222836084; ++pub const UDF_GETEABLOCK: u32 = 1074293825; ++pub const VFIO_IOMMU_MAP_DMA: u32 = 536886129; ++pub const VIDIOC_SUBSCRIBE_EVENT: u32 = 2149602906; ++pub const HIDIOCGFLAG: u32 = 1074022414; ++pub const HIDIOCGUCODE: u32 = 3222816781; ++pub const VIDIOC_OMAP3ISP_AF_CFG: u32 = 3226228421; ++pub const DM_REMOVE_ALL: u32 = 3241737473; ++pub const ASPEED_LPC_CTRL_IOCTL_MAP: u32 = 2148577793; ++pub const CCISS_GETFIRMVER: u32 = 1074020872; ++pub const ND_IOCTL_ARS_START: u32 = 3223342594; ++pub const PPPIOCSMRRU: u32 = 2147775547; ++pub const CEC_ADAP_S_LOG_ADDRS: u32 = 3227279620; ++pub const RPROC_GET_SHUTDOWN_ON_RELEASE: u32 = 1074050818; ++pub const DMA_HEAP_IOCTL_ALLOC: u32 = 3222816768; ++pub const PPSETTIME: u32 = 2148561046; ++pub const RTC_ALM_READ: u32 = 1076129800; ++pub const VDUSE_SET_API_VERSION: u32 = 2148040961; ++pub const RIO_MPORT_MAINT_WRITE_REMOTE: u32 = 2149084424; ++pub const VIDIOC_SUBDEV_S_CROP: u32 = 3224917564; ++pub const USBDEVFS_CONNECT: u32 = 536892695; ++pub const SYNC_IOC_FILE_INFO: u32 = 3224911364; ++pub const ATMARP_MKIP: u32 = 536895970; ++pub const VFIO_IOMMU_SPAPR_TCE_GET_INFO: u32 = 536886128; ++pub const CCISS_GETHEARTBEAT: u32 = 1074020870; ++pub const ATM_RSTADDR: u32 = 2148557191; ++pub const NBD_SET_SIZE: u32 = 536914690; ++pub const UDF_GETVOLIDENT: u32 = 1074293826; ++pub const GPIO_V2_LINE_GET_VALUES_IOCTL: u32 = 3222320142; ++pub const MGSL_IOCSTXIDLE: u32 = 536898818; ++pub const FSL_HV_IOCTL_SETPROP: u32 = 3223891720; ++pub const BTRFS_IOC_GET_DEV_STATS: u32 = 3288896564; ++pub const PPRSTATUS: u32 = 1073836161; ++pub const MGSL_IOCTXENABLE: u32 = 536898820; ++pub const UDF_GETEASIZE: u32 = 1074031680; ++pub const NVME_IOCTL_ADMIN64_CMD: u32 = 3226488391; ++pub const VHOST_SET_OWNER: u32 = 536915713; ++pub const RIO_ALLOC_DMA: u32 = 3222826259; ++pub const RIO_CM_CHAN_ACCEPT: u32 = 3221775111; ++pub const I2OHRTGET: u32 = 3222825217; ++pub const ATM_SETCIRANGE: u32 = 2148557195; ++pub const HPET_IE_ON: u32 = 536897537; ++pub const PERF_EVENT_IOC_ID: u32 = 1074275335; ++pub const TUNSETSNDBUF: u32 = 2147767508; ++pub const PTP_PIN_SETFUNC: u32 = 2153790727; ++pub const PPPIOCDISCONN: u32 = 536900665; ++pub const VIDIOC_QUERYCTRL: u32 = 3225703972; ++pub const PPEXCL: u32 = 536899727; ++pub const PCITEST_MSI: u32 = 2147766275; ++pub const FDWERRORCLR: u32 = 536871510; ++pub const AUTOFS_IOC_FAIL: u32 = 536908641; ++pub const USBDEVFS_IOCTL: u32 = 3222295826; ++pub const VIDIOC_S_STD: u32 = 2148029976; ++pub const F2FS_IOC_RESIZE_FS: u32 = 2148070672; ++pub const SONET_SETDIAG: u32 = 3221512466; ++pub const BTRFS_IOC_DEFRAG: u32 = 2415956994; ++pub const CCISS_GETDRIVVER: u32 = 1074020873; ++pub const IPMICTL_GET_TIMING_PARMS_CMD: u32 = 1074293015; ++pub const HPET_IRQFREQ: u32 = 2148034566; ++pub const ATM_GETESI: u32 = 2148557189; ++pub const CCISS_GETLUNINFO: u32 = 1074545169; ++pub const AUTOFS_DEV_IOCTL_ISMOUNTPOINT: u32 = 3222836094; ++pub const TEE_IOC_SHM_ALLOC: u32 = 3222316033; ++pub const PERF_EVENT_IOC_SET_BPF: u32 = 2147755016; ++pub const UDMABUF_CREATE_LIST: u32 = 2148037955; ++pub const VHOST_SET_LOG_BASE: u32 = 2148052740; ++pub const ZATM_GETPOOL: u32 = 2148557153; ++pub const BR2684_SETFILT: u32 = 2149343632; ++pub const RNDGETPOOL: u32 = 1074287106; ++pub const PPS_GETPARAMS: u32 = 1074294945; ++pub const IOC_PR_RESERVE: u32 = 2148561097; ++pub const VIDIOC_TRY_DECODER_CMD: u32 = 3225966177; ++pub const RIO_CM_CHAN_CLOSE: u32 = 2147640068; ++pub const VIDIOC_DV_TIMINGS_CAP: u32 = 3230684772; ++pub const IOCTL_MEI_CONNECT_CLIENT_VTAG: u32 = 3222554628; ++pub const PMU_IOC_GET_BACKLIGHT: u32 = 1074283009; ++pub const USBDEVFS_GET_CAPABILITIES: u32 = 1074025754; ++pub const SCIF_WRITETO: u32 = 3223876363; ++pub const UDF_RELOCATE_BLOCKS: u32 = 3221777475; ++pub const FSL_HV_IOCTL_PARTITION_RESTART: u32 = 3221794561; ++pub const CCISS_REGNEWD: u32 = 536887822; ++pub const FAT_IOCTL_SET_ATTRIBUTES: u32 = 2147774993; ++pub const VIDIOC_CREATE_BUFS: u32 = 3238024796; ++pub const CAPI_GET_VERSION: u32 = 3222291207; ++pub const SWITCHTEC_IOCTL_EVENT_SUMMARY: u32 = 1155028802; ++pub const VFIO_EEH_PE_OP: u32 = 536886137; ++pub const FW_CDEV_IOC_CREATE_ISO_CONTEXT: u32 = 3223331592; ++pub const F2FS_IOC_RELEASE_COMPRESS_BLOCKS: u32 = 1074328850; ++pub const NBD_SET_SIZE_BLOCKS: u32 = 536914695; ++pub const IPMI_BMC_IOCTL_SET_SMS_ATN: u32 = 536916224; ++pub const ASPEED_P2A_CTRL_IOCTL_GET_MEMORY_CONFIG: u32 = 3222319873; ++pub const VIDIOC_S_AUDOUT: u32 = 2150913586; ++pub const VIDIOC_S_FMT: u32 = 3234878981; ++pub const PPPIOCATTACH: u32 = 2147775549; ++pub const VHOST_GET_VRING_BUSYLOOP_TIMEOUT: u32 = 2148052772; ++pub const FS_IOC_MEASURE_VERITY: u32 = 3221513862; ++pub const CCISS_BIG_PASSTHRU: u32 = 3227533842; ++pub const IPMICTL_SET_MY_LUN_CMD: u32 = 1074030867; ++pub const PCITEST_LEGACY_IRQ: u32 = 536891394; ++pub const USBDEVFS_SUBMITURB: u32 = 1077433610; ++pub const AUTOFS_IOC_READY: u32 = 536908640; ++pub const BTRFS_IOC_SEND: u32 = 2152240166; ++pub const VIDIOC_G_EXT_CTRLS: u32 = 3223344711; ++pub const JSIOCSBTNMAP: u32 = 2214619699; ++pub const PPPIOCSFLAGS: u32 = 2147775577; ++pub const NVRAM_INIT: u32 = 536899648; ++pub const RFKILL_IOCTL_NOINPUT: u32 = 536891905; ++pub const BTRFS_IOC_BALANCE: u32 = 2415957004; ++pub const FS_IOC_GETFSMAP: u32 = 3233830971; ++pub const IPMICTL_GET_MY_CHANNEL_LUN_CMD: u32 = 1074030875; ++pub const STP_POLICY_ID_GET: u32 = 1074799873; ++pub const PPSETFLAGS: u32 = 2147774619; ++pub const CEC_ADAP_S_PHYS_ADDR: u32 = 2147639554; ++pub const ATMTCP_CREATE: u32 = 536895886; ++pub const IPMI_BMC_IOCTL_FORCE_ABORT: u32 = 536916226; ++pub const PPPIOCGXASYNCMAP: u32 = 1075868752; ++pub const VHOST_SET_VRING_CALL: u32 = 2148052769; ++pub const LIRC_GET_FEATURES: u32 = 1074030848; ++pub const GSMIOC_DISABLE_NET: u32 = 536889091; ++pub const AUTOFS_IOC_CATATONIC: u32 = 536908642; ++pub const NBD_DO_IT: u32 = 536914691; ++pub const LIRC_SET_REC_CARRIER_RANGE: u32 = 2147772703; ++pub const IPMICTL_GET_MY_CHANNEL_ADDRESS_CMD: u32 = 1074030873; ++pub const EVIOCSCLOCKID: u32 = 2147763616; ++pub const USBDEVFS_FREE_STREAMS: u32 = 1074287901; ++pub const FSI_SCOM_RESET: u32 = 2147775235; ++pub const PMU_IOC_GRAB_BACKLIGHT: u32 = 1074283014; ++pub const VIDIOC_SUBDEV_S_FMT: u32 = 3227014661; ++pub const FDDEFPRM: u32 = 2149581379; ++pub const TEE_IOC_INVOKE: u32 = 1074832387; ++pub const USBDEVFS_BULK: u32 = 3222820098; ++pub const SCIF_VWRITETO: u32 = 3223876365; ++pub const SONYPI_IOCSBRT: u32 = 2147579392; ++pub const BTRFS_IOC_FILE_EXTENT_SAME: u32 = 3222836278; ++pub const RTC_PIE_ON: u32 = 536899589; ++pub const BTRFS_IOC_SCAN_DEV: u32 = 2415956996; ++pub const PPPIOCXFERUNIT: u32 = 536900686; ++pub const WDIOC_GETTIMEOUT: u32 = 1074026247; ++pub const BTRFS_IOC_SET_RECEIVED_SUBVOL: u32 = 3234370597; ++pub const DFL_FPGA_PORT_ERR_SET_IRQ: u32 = 2148054598; ++pub const FBIO_WAITFORVSYNC: u32 = 2147763744; ++pub const RTC_PIE_OFF: u32 = 536899590; ++pub const EVIOCGRAB: u32 = 2147763600; ++pub const PMU_IOC_SET_BACKLIGHT: u32 = 2148024834; ++pub const EVIOCGREP: u32 = 1074283779; ++pub const PERF_EVENT_IOC_MODIFY_ATTRIBUTES: u32 = 2148017163; ++pub const UFFDIO_CONTINUE: u32 = 3223366151; ++pub const VDUSE_GET_API_VERSION: u32 = 1074299136; ++pub const RTC_RD_TIME: u32 = 1076129801; ++pub const FDMSGOFF: u32 = 536871494; ++pub const IPMICTL_REGISTER_FOR_CMD_CHANS: u32 = 1074555164; ++pub const CAPI_GET_ERRCODE: u32 = 1073890081; ++pub const PCITEST_SET_IRQTYPE: u32 = 2147766280; ++pub const VIDIOC_SUBDEV_S_EDID: u32 = 3223868969; ++pub const MATROXFB_SET_OUTPUT_MODE: u32 = 2148036346; ++pub const RIO_DEV_ADD: u32 = 2149608727; ++pub const VIDIOC_ENUM_FREQ_BANDS: u32 = 3225441893; ++pub const FBIO_RADEON_SET_MIRROR: u32 = 2148024324; ++pub const PCITEST_GET_IRQTYPE: u32 = 536891401; ++pub const JSIOCGVERSION: u32 = 1074031105; ++pub const SONYPI_IOCSBLUE: u32 = 2147579401; ++pub const SNAPSHOT_PREF_IMAGE_SIZE: u32 = 536883986; ++pub const F2FS_IOC_GET_FEATURES: u32 = 1074066700; ++pub const SCIF_REG: u32 = 3223876360; ++pub const NILFS_IOCTL_CLEAN_SEGMENTS: u32 = 2155376264; ++pub const FW_CDEV_IOC_INITIATE_BUS_RESET: u32 = 2147754757; ++pub const RIO_WAIT_FOR_ASYNC: u32 = 2148035862; ++pub const VHOST_SET_VRING_NUM: u32 = 2148052752; ++pub const AUTOFS_DEV_IOCTL_PROTOVER: u32 = 3222836082; ++pub const RIO_FREE_DMA: u32 = 2148035860; ++pub const MGSL_IOCRXENABLE: u32 = 536898821; ++pub const IOCTL_VM_SOCKETS_GET_LOCAL_CID: u32 = 536872889; ++pub const IPMICTL_SET_TIMING_PARMS_CMD: u32 = 1074293014; ++pub const PPPIOCGL2TPSTATS: u32 = 1078490166; ++pub const PERF_EVENT_IOC_PERIOD: u32 = 2148017156; ++pub const PTP_PIN_SETFUNC2: u32 = 2153790736; ++pub const CHIOEXCHANGE: u32 = 2149344002; ++pub const NILFS_IOCTL_GET_SUINFO: u32 = 1075342980; ++pub const CEC_DQEVENT: u32 = 3226493191; ++pub const UI_SET_SWBIT: u32 = 2147767661; ++pub const VHOST_VDPA_SET_CONFIG: u32 = 2148052852; ++pub const TUNSETIFF: u32 = 2147767498; ++pub const CHIOPOSITION: u32 = 2148295427; ++pub const IPMICTL_SET_MAINTENANCE_MODE_CMD: u32 = 2147772703; ++pub const BTRFS_IOC_DEFAULT_SUBVOL: u32 = 2148045843; ++pub const RIO_UNMAP_OUTBOUND: u32 = 2150133008; ++pub const CAPI_CLR_FLAGS: u32 = 1074021157; ++pub const FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE_ONCE: u32 = 2149065487; ++pub const MATROXFB_GET_OUTPUT_CONNECTION: u32 = 1074294520; ++pub const EVIOCSMASK: u32 = 2148550035; ++pub const BTRFS_IOC_FORGET_DEV: u32 = 2415956997; ++pub const CXL_MEM_QUERY_COMMANDS: u32 = 1074318849; ++pub const CEC_S_MODE: u32 = 2147770633; ++pub const MGSL_IOCSIF: u32 = 536898826; ++pub const SWITCHTEC_IOCTL_PFF_TO_PORT: u32 = 3222034244; ++pub const PPSETMODE: u32 = 2147774592; ++pub const VFIO_DEVICE_SET_IRQS: u32 = 536886126; ++pub const VIDIOC_PREPARE_BUF: u32 = 3227014749; ++pub const CEC_ADAP_G_CONNECTOR_INFO: u32 = 1078223114; ++pub const IOC_OPAL_WRITE_SHADOW_MBR: u32 = 2166386922; ++pub const VIDIOC_SUBDEV_ENUM_FRAME_INTERVAL: u32 = 3225441867; ++pub const UDMABUF_CREATE: u32 = 2149086530; ++pub const SONET_CLRDIAG: u32 = 3221512467; ++pub const PHN_SET_REG: u32 = 2148036609; ++pub const RNDADDTOENTCNT: u32 = 2147766785; ++pub const VBG_IOCTL_CHECK_BALLOON: u32 = 3223344657; ++pub const VIDIOC_OMAP3ISP_STAT_REQ: u32 = 3223869126; ++pub const PPS_FETCH: u32 = 3221778596; ++pub const RTC_AIE_OFF: u32 = 536899586; ++pub const VFIO_GROUP_SET_CONTAINER: u32 = 536886120; ++pub const FW_CDEV_IOC_RECEIVE_PHY_PACKETS: u32 = 2148016918; ++pub const VFIO_IOMMU_SPAPR_TCE_REMOVE: u32 = 536886136; ++pub const VFIO_IOMMU_GET_INFO: u32 = 536886128; ++pub const DM_DEV_SUSPEND: u32 = 3241737478; ++pub const F2FS_IOC_GET_COMPRESS_OPTION: u32 = 1073935637; ++pub const FW_CDEV_IOC_STOP_ISO: u32 = 2147754763; ++pub const GPIO_V2_GET_LINEINFO_IOCTL: u32 = 3238048773; ++pub const ATMMPC_CTRL: u32 = 536895960; ++pub const PPPIOCSXASYNCMAP: u32 = 2149610575; ++pub const CHIOGSTATUS: u32 = 2148557576; ++pub const FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE: u32 = 3222807309; ++pub const RIO_MPORT_MAINT_PORT_IDX_GET: u32 = 1074031875; ++pub const CAPI_SET_FLAGS: u32 = 1074021156; ++pub const VFIO_GROUP_GET_DEVICE_FD: u32 = 536886122; ++pub const VHOST_SET_MEM_TABLE: u32 = 2148052739; ++pub const MATROXFB_SET_OUTPUT_CONNECTION: u32 = 2148036344; ++pub const DFL_FPGA_PORT_GET_REGION_INFO: u32 = 536917570; ++pub const VHOST_GET_FEATURES: u32 = 1074310912; ++pub const LIRC_GET_REC_RESOLUTION: u32 = 1074030855; ++pub const PACKET_CTRL_CMD: u32 = 3222820865; ++pub const LIRC_SET_TRANSMITTER_MASK: u32 = 2147772695; ++pub const BTRFS_IOC_ADD_DEV: u32 = 2415957002; ++pub const JSIOCGCORR: u32 = 1076128290; ++pub const VIDIOC_G_FMT: u32 = 3234878980; ++pub const RTC_EPOCH_SET: u32 = 2148036622; ++pub const CAPI_GET_PROFILE: u32 = 3225436937; ++pub const ATM_GETLOOP: u32 = 2148557138; ++pub const SCIF_LISTEN: u32 = 2147775234; ++pub const NBD_CLEAR_QUE: u32 = 536914693; ++pub const F2FS_IOC_MOVE_RANGE: u32 = 3223385353; ++pub const LIRC_GET_LENGTH: u32 = 1074030863; ++pub const I8K_SET_FAN: u32 = 3221776775; ++pub const FDSETMAXERRS: u32 = 2148794956; ++pub const VIDIOC_SUBDEV_QUERYCAP: u32 = 1077958144; ++pub const SNAPSHOT_SET_SWAP_AREA: u32 = 2148283149; ++pub const LIRC_GET_REC_TIMEOUT: u32 = 1074030884; ++pub const EVIOCRMFF: u32 = 2147763585; ++pub const GPIO_GET_LINEEVENT_IOCTL: u32 = 3224417284; ++pub const PPRDATA: u32 = 1073836165; ++pub const RIO_MPORT_GET_PROPERTIES: u32 = 1076915460; ++pub const TUNSETVNETHDRSZ: u32 = 2147767512; ++pub const GPIO_GET_LINEINFO_IOCTL: u32 = 3225990146; ++pub const GSMIOC_GETCONF: u32 = 1078740736; ++pub const LIRC_GET_SEND_MODE: u32 = 1074030849; ++pub const PPPIOCSACTIVE: u32 = 2148561990; ++pub const SIOCGSTAMPNS_NEW: u32 = 1074825479; ++pub const IPMICTL_RECEIVE_MSG: u32 = 3224398092; ++pub const LIRC_SET_SEND_DUTY_CYCLE: u32 = 2147772693; ++pub const UI_END_FF_ERASE: u32 = 2148292043; ++pub const SWITCHTEC_IOCTL_FLASH_PART_INFO: u32 = 3222296385; ++pub const FW_CDEV_IOC_SEND_PHY_PACKET: u32 = 3222807317; ++pub const NBD_SET_FLAGS: u32 = 536914698; ++pub const VFIO_DEVICE_GET_REGION_INFO: u32 = 536886124; ++pub const REISERFS_IOC_UNPACK: u32 = 2148060417; ++pub const FW_CDEV_IOC_REMOVE_DESCRIPTOR: u32 = 2147754759; ++pub const RIO_SET_EVENT_MASK: u32 = 2147773709; ++pub const SNAPSHOT_ALLOC_SWAP_PAGE: u32 = 1074279188; ++pub const VDUSE_VQ_INJECT_IRQ: u32 = 2147778839; ++pub const I2OPASSTHRU: u32 = 1074817292; ++pub const IOC_OPAL_SET_PW: u32 = 2183164128; ++pub const FSI_SCOM_READ: u32 = 3223352065; ++pub const VHOST_VDPA_GET_DEVICE_ID: u32 = 1074048880; ++pub const VIDIOC_QBUF: u32 = 3227014671; ++pub const VIDIOC_S_TUNER: u32 = 2153010718; ++pub const TUNGETVNETHDRSZ: u32 = 1074025687; ++pub const CAPI_NCCI_GETUNIT: u32 = 1074021159; ++pub const DFL_FPGA_PORT_UINT_GET_IRQ_NUM: u32 = 1074050631; ++pub const VIDIOC_OMAP3ISP_STAT_EN: u32 = 3221771975; ++pub const GPIO_V2_LINE_SET_CONFIG_IOCTL: u32 = 3239097357; ++pub const TEE_IOC_VERSION: u32 = 1074570240; ++pub const VIDIOC_LOG_STATUS: u32 = 536892998; ++pub const IPMICTL_SEND_COMMAND_SETTIME: u32 = 1076914453; ++pub const VHOST_SET_LOG_FD: u32 = 2147790599; ++pub const SCIF_SEND: u32 = 3222827782; ++pub const VIDIOC_SUBDEV_G_FMT: u32 = 3227014660; ++pub const NS_ADJBUFLEV: u32 = 536895843; ++pub const VIDIOC_DBG_S_REGISTER: u32 = 2151175759; ++pub const NILFS_IOCTL_RESIZE: u32 = 2148036235; ++pub const PHN_GETREG: u32 = 3221778437; ++pub const I2OSWDL: u32 = 3224398085; ++pub const VBG_IOCTL_VMMDEV_REQUEST_BIG: u32 = 536892931; ++pub const JSIOCGBUTTONS: u32 = 1073834514; ++pub const VFIO_IOMMU_ENABLE: u32 = 536886131; ++pub const DM_DEV_RENAME: u32 = 3241737477; ++pub const MEDIA_IOC_SETUP_LINK: u32 = 3224665091; ++pub const VIDIOC_ENUMOUTPUT: u32 = 3225966128; ++pub const STP_POLICY_ID_SET: u32 = 3222283520; ++pub const VHOST_VDPA_SET_CONFIG_CALL: u32 = 2147790711; ++pub const VIDIOC_SUBDEV_G_CROP: u32 = 3224917563; ++pub const VIDIOC_S_CROP: u32 = 2148816444; ++pub const WDIOC_GETTEMP: u32 = 1074026243; ++pub const IOC_OPAL_ADD_USR_TO_LR: u32 = 2165862628; ++pub const UI_SET_LEDBIT: u32 = 2147767657; ++pub const NBD_SET_SOCK: u32 = 536914688; ++pub const BTRFS_IOC_SNAP_DESTROY_V2: u32 = 2415957055; ++pub const HIDIOCGCOLLECTIONINFO: u32 = 3222292497; ++pub const I2OSWUL: u32 = 3224398086; ++pub const IOCTL_MEI_NOTIFY_GET: u32 = 1074022403; ++pub const FDFMTTRK: u32 = 2148270664; ++pub const MMTIMER_GETBITS: u32 = 536898820; ++pub const VIDIOC_ENUMSTD: u32 = 3225966105; ++pub const VHOST_GET_VRING_BASE: u32 = 3221794578; ++pub const VFIO_DEVICE_IOEVENTFD: u32 = 536886132; ++pub const ATMARP_SETENTRY: u32 = 536895971; ++pub const CCISS_REVALIDVOLS: u32 = 536887818; ++pub const MGSL_IOCLOOPTXDONE: u32 = 536898825; ++pub const RTC_VL_READ: u32 = 1074032659; ++pub const ND_IOCTL_ARS_STATUS: u32 = 3224391171; ++pub const RIO_DEV_DEL: u32 = 2149608728; ++pub const VBG_IOCTL_ACQUIRE_GUEST_CAPABILITIES: u32 = 3223606797; ++pub const VIDIOC_SUBDEV_DV_TIMINGS_CAP: u32 = 3230684772; ++pub const SONYPI_IOCSFAN: u32 = 2147579403; ++pub const SPIOCSTYPE: u32 = 2148036865; ++pub const IPMICTL_REGISTER_FOR_CMD: u32 = 1073899790; ++pub const I8K_GET_FAN: u32 = 3221776774; ++pub const TUNGETVNETBE: u32 = 1074025695; ++pub const AUTOFS_DEV_IOCTL_FAIL: u32 = 3222836087; ++pub const UI_END_FF_UPLOAD: u32 = 2154321353; ++pub const TOSH_SMM: u32 = 3222828176; ++pub const SONYPI_IOCGBAT2REM: u32 = 1073903109; ++pub const F2FS_IOC_GET_COMPRESS_BLOCKS: u32 = 1074328849; ++pub const PPPIOCSNPMODE: u32 = 2148037707; ++pub const USBDEVFS_CONTROL: u32 = 3222820096; ++pub const HIDIOCGUSAGE: u32 = 3222816779; ++pub const TUNSETTXFILTER: u32 = 2147767505; ++pub const TUNGETVNETLE: u32 = 1074025693; ++pub const VIDIOC_ENUM_DV_TIMINGS: u32 = 3230946914; ++pub const BTRFS_IOC_INO_PATHS: u32 = 3224933411; ++pub const MGSL_IOCGXSYNC: u32 = 536898836; ++pub const HIDIOCGFIELDINFO: u32 = 3224913930; ++pub const VIDIOC_SUBDEV_G_STD: u32 = 1074288151; ++pub const I2OVALIDATE: u32 = 1074030856; ++pub const VIDIOC_TRY_ENCODER_CMD: u32 = 3223869006; ++pub const NILFS_IOCTL_GET_CPINFO: u32 = 1075342978; ++pub const VIDIOC_G_FREQUENCY: u32 = 3224131128; ++pub const VFAT_IOCTL_READDIR_SHORT: u32 = 1110471170; ++pub const ND_IOCTL_GET_CONFIG_DATA: u32 = 3222031877; ++pub const F2FS_IOC_RESERVE_COMPRESS_BLOCKS: u32 = 1074328851; ++pub const FDGETDRVSTAT: u32 = 1078985234; ++pub const SYNC_IOC_MERGE: u32 = 3224387075; ++pub const VIDIOC_S_DV_TIMINGS: u32 = 3229898327; ++pub const PPPIOCBRIDGECHAN: u32 = 2147775541; ++pub const LIRC_SET_SEND_MODE: u32 = 2147772689; ++pub const RIO_ENABLE_PORTWRITE_RANGE: u32 = 2148560139; ++pub const ATM_GETTYPE: u32 = 2148557188; ++pub const PHN_GETREGS: u32 = 3223875591; ++pub const FDSETEMSGTRESH: u32 = 536871498; ++pub const NILFS_IOCTL_GET_VINFO: u32 = 3222826630; ++pub const MGSL_IOCWAITEVENT: u32 = 3221515528; ++pub const CAPI_INSTALLED: u32 = 1073890082; ++pub const EVIOCGMASK: u32 = 1074808210; ++pub const BTRFS_IOC_SUBVOL_GETFLAGS: u32 = 1074304025; ++pub const FSL_HV_IOCTL_PARTITION_GET_STATUS: u32 = 3222056706; ++pub const MEDIA_IOC_ENUM_ENTITIES: u32 = 3238034433; ++pub const GSMIOC_GETFIRST: u32 = 1074022148; ++pub const FW_CDEV_IOC_FLUSH_ISO: u32 = 2147754776; ++pub const VIDIOC_DBG_G_CHIP_INFO: u32 = 3234354790; ++pub const F2FS_IOC_RELEASE_VOLATILE_WRITE: u32 = 536933636; ++pub const CAPI_GET_SERIAL: u32 = 3221504776; ++pub const FDSETDRVPRM: u32 = 2155872912; ++pub const IOC_OPAL_SAVE: u32 = 2165862620; ++pub const VIDIOC_G_DV_TIMINGS: u32 = 3229898328; ++pub const TUNSETIFINDEX: u32 = 2147767514; ++pub const CCISS_SETINTINFO: u32 = 2148024835; ++pub const RTC_VL_CLR: u32 = 536899604; ++pub const VIDIOC_REQBUFS: u32 = 3222558216; ++pub const USBDEVFS_REAPURBNDELAY32: u32 = 2147767565; ++pub const TEE_IOC_SHM_REGISTER: u32 = 3222840329; ++pub const USBDEVFS_SETCONFIGURATION: u32 = 1074025733; ++pub const CCISS_GETNODENAME: u32 = 1074807300; ++pub const VIDIOC_SUBDEV_S_FRAME_INTERVAL: u32 = 3224393238; ++pub const VIDIOC_ENUM_FRAMESIZES: u32 = 3224131146; ++pub const VFIO_DEVICE_PCI_HOT_RESET: u32 = 536886129; ++pub const FW_CDEV_IOC_SEND_BROADCAST_REQUEST: u32 = 2150114066; ++pub const LPSETTIMEOUT_NEW: u32 = 2148533775; ++pub const RIO_CM_MPORT_GET_LIST: u32 = 3221512971; ++pub const FW_CDEV_IOC_QUEUE_ISO: u32 = 3222807305; ++pub const FDRAWCMD: u32 = 536871512; ++pub const SCIF_UNREG: u32 = 3222303497; ++pub const PPPIOCGIDLE64: u32 = 1074820159; ++pub const USBDEVFS_RELEASEINTERFACE: u32 = 1074025744; ++pub const VIDIOC_CROPCAP: u32 = 3224131130; ++pub const DFL_FPGA_PORT_GET_INFO: u32 = 536917569; ++pub const PHN_SET_REGS: u32 = 2148036611; ++pub const ATMLEC_DATA: u32 = 536895953; ++pub const PPPOEIOCDFWD: u32 = 536916225; ++pub const VIDIOC_S_SELECTION: u32 = 3225441887; ++pub const SNAPSHOT_FREE_SWAP_PAGES: u32 = 536883977; ++pub const BTRFS_IOC_LOGICAL_INO: u32 = 3224933412; ++pub const VIDIOC_S_CTRL: u32 = 3221771804; ++pub const ZATM_SETPOOL: u32 = 2148557155; ++pub const MTIOCPOS: u32 = 1074294019; ++pub const PMU_IOC_SLEEP: u32 = 536887808; ++pub const AUTOFS_DEV_IOCTL_PROTOSUBVER: u32 = 3222836083; ++pub const VBG_IOCTL_CHANGE_FILTER_MASK: u32 = 3223344652; ++pub const NILFS_IOCTL_GET_SUSTAT: u32 = 1076915845; ++pub const VIDIOC_QUERYCAP: u32 = 1080579584; ++pub const HPET_INFO: u32 = 1075341315; ++pub const VIDIOC_AM437X_CCDC_CFG: u32 = 2148030145; ++pub const DM_LIST_DEVICES: u32 = 3241737474; ++pub const TUNSETOWNER: u32 = 2147767500; ++pub const VBG_IOCTL_CHANGE_GUEST_CAPABILITIES: u32 = 3223344654; ++pub const RNDADDENTROPY: u32 = 2148028931; ++pub const USBDEVFS_RESET: u32 = 536892692; ++pub const BTRFS_IOC_SUBVOL_CREATE: u32 = 2415957006; ++pub const USBDEVFS_FORBID_SUSPEND: u32 = 536892705; ++pub const FDGETDRVTYP: u32 = 1074790927; ++pub const PPWCONTROL: u32 = 2147577988; ++pub const VIDIOC_ENUM_FRAMEINTERVALS: u32 = 3224655435; ++pub const KCOV_DISABLE: u32 = 536896357; ++pub const IOC_OPAL_ACTIVATE_LSP: u32 = 2165862623; ++pub const VHOST_VDPA_GET_IOVA_RANGE: u32 = 1074835320; ++pub const PPPIOCSPASS: u32 = 2148561991; ++pub const RIO_CM_CHAN_CONNECT: u32 = 2148033288; ++pub const I2OSWDEL: u32 = 3224398087; ++pub const FS_IOC_SET_ENCRYPTION_POLICY: u32 = 1074554387; ++pub const IOC_OPAL_MBR_DONE: u32 = 2165338345; ++pub const PPPIOCSMAXCID: u32 = 2147775569; ++pub const PPSETPHASE: u32 = 2147774612; ++pub const VHOST_VDPA_SET_VRING_ENABLE: u32 = 2148052853; ++pub const USBDEVFS_GET_SPEED: u32 = 536892703; ++pub const SONET_GETFRAMING: u32 = 1074028822; ++pub const VIDIOC_QUERYBUF: u32 = 3227014665; ++pub const VIDIOC_S_EDID: u32 = 3223868969; ++pub const BTRFS_IOC_QGROUP_ASSIGN: u32 = 2149094441; ++pub const PPS_GETCAP: u32 = 1074294947; ++pub const SNAPSHOT_PLATFORM_SUPPORT: u32 = 536883983; ++pub const LIRC_SET_REC_TIMEOUT_REPORTS: u32 = 2147772697; ++pub const SCIF_GET_NODEIDS: u32 = 3222827790; ++pub const NBD_DISCONNECT: u32 = 536914696; ++pub const VIDIOC_SUBDEV_G_FRAME_INTERVAL: u32 = 3224393237; ++pub const VFIO_IOMMU_DISABLE: u32 = 536886132; ++pub const SNAPSHOT_CREATE_IMAGE: u32 = 2147758865; ++pub const SNAPSHOT_POWER_OFF: u32 = 536883984; ++pub const APM_IOC_STANDBY: u32 = 536887553; ++pub const PPPIOCGUNIT: u32 = 1074033750; ++pub const AUTOFS_IOC_EXPIRE_MULTI: u32 = 2147783526; ++pub const SCIF_BIND: u32 = 3221779201; ++pub const IOC_WATCH_QUEUE_SET_SIZE: u32 = 536893280; ++pub const NILFS_IOCTL_CHANGE_CPMODE: u32 = 2148560512; ++pub const IOC_OPAL_LOCK_UNLOCK: u32 = 2165862621; ++pub const F2FS_IOC_SET_PIN_FILE: u32 = 2147808525; ++pub const PPPIOCGRASYNCMAP: u32 = 1074033749; ++pub const MMTIMER_MMAPAVAIL: u32 = 536898822; ++pub const I2OPASSTHRU32: u32 = 1074293004; ++pub const DFL_FPGA_FME_PORT_RELEASE: u32 = 2147792513; ++pub const VIDIOC_SUBDEV_QUERY_DV_TIMINGS: u32 = 1082414691; ++pub const UI_SET_SNDBIT: u32 = 2147767658; ++pub const VIDIOC_G_AUDOUT: u32 = 1077171761; ++pub const RTC_PLL_SET: u32 = 2149609490; ++pub const VIDIOC_ENUMAUDIO: u32 = 3224655425; ++pub const AUTOFS_DEV_IOCTL_TIMEOUT: u32 = 3222836090; ++pub const VBG_IOCTL_DRIVER_VERSION_INFO: u32 = 3224131072; ++pub const VHOST_SCSI_GET_EVENTS_MISSED: u32 = 2147790660; ++pub const VHOST_SET_VRING_ADDR: u32 = 2150149905; ++pub const VDUSE_CREATE_DEV: u32 = 2169536770; ++pub const FDFLUSH: u32 = 536871499; ++pub const VBG_IOCTL_WAIT_FOR_EVENTS: u32 = 3223344650; ++pub const DFL_FPGA_FME_ERR_SET_IRQ: u32 = 2148054660; ++pub const F2FS_IOC_GET_PIN_FILE: u32 = 1074066702; ++pub const SCIF_CONNECT: u32 = 3221779203; ++pub const BLKREPORTZONE: u32 = 3222278786; ++pub const AUTOFS_IOC_ASKUMOUNT: u32 = 1074041712; ++pub const ATM_ADDPARTY: u32 = 2148557300; ++pub const FDSETPRM: u32 = 2149581378; ++pub const ATM_GETSTATZ: u32 = 2148557137; ++pub const ISST_IF_MSR_COMMAND: u32 = 3221814788; ++pub const BTRFS_IOC_GET_SUBVOL_INFO: u32 = 1106809916; ++pub const VIDIOC_UNSUBSCRIBE_EVENT: u32 = 2149602907; ++pub const SEV_ISSUE_CMD: u32 = 3222295296; ++pub const GPIOHANDLE_SET_LINE_VALUES_IOCTL: u32 = 3225465865; ++pub const PCITEST_COPY: u32 = 2148028422; ++pub const IPMICTL_GET_MY_ADDRESS_CMD: u32 = 1074030866; ++pub const CHIOGPICKER: u32 = 1074029316; ++pub const CAPI_NCCI_OPENCOUNT: u32 = 1074021158; ++pub const CXL_MEM_SEND_COMMAND: u32 = 3224423938; ++pub const PERF_EVENT_IOC_SET_FILTER: u32 = 2148017158; ++pub const IOC_OPAL_REVERT_TPR: u32 = 2164814050; ++pub const CHIOGVPARAMS: u32 = 1081107219; ++pub const PTP_PEROUT_REQUEST: u32 = 2151169283; ++pub const FSI_SCOM_CHECK: u32 = 1074033408; ++pub const RTC_IRQP_READ: u32 = 1074294795; ++pub const RIO_MPORT_MAINT_READ_LOCAL: u32 = 1075342597; ++pub const HIDIOCGRDESCSIZE: u32 = 1074022401; ++pub const UI_GET_VERSION: u32 = 1074025773; ++pub const NILFS_IOCTL_GET_CPSTAT: u32 = 1075342979; ++pub const CCISS_GETBUSTYPES: u32 = 1074020871; ++pub const VFIO_IOMMU_SPAPR_TCE_CREATE: u32 = 536886135; ++pub const VIDIOC_EXPBUF: u32 = 3225441808; ++pub const UI_SET_RELBIT: u32 = 2147767654; ++pub const VFIO_SET_IOMMU: u32 = 536886118; ++pub const VIDIOC_S_MODULATOR: u32 = 2151962167; ++pub const TUNGETFILTER: u32 = 1074812123; ++pub const CCISS_SETNODENAME: u32 = 2148549125; ++pub const FBIO_GETCONTROL2: u32 = 1074284169; ++pub const TUNSETDEBUG: u32 = 2147767497; ++pub const DM_DEV_REMOVE: u32 = 3241737476; ++pub const HIDIOCSUSAGES: u32 = 2417772564; ++pub const FS_IOC_ADD_ENCRYPTION_KEY: u32 = 3226494487; ++pub const FBIOGET_VBLANK: u32 = 1075856914; ++pub const ATM_GETSTAT: u32 = 2148557136; ++pub const VIDIOC_G_JPEGCOMP: u32 = 1082938941; ++pub const TUNATTACHFILTER: u32 = 2148553941; ++pub const UI_SET_ABSBIT: u32 = 2147767655; ++pub const DFL_FPGA_PORT_ERR_GET_IRQ_NUM: u32 = 1074050629; ++pub const USBDEVFS_REAPURB32: u32 = 2147767564; ++pub const BTRFS_IOC_TRANS_END: u32 = 536908807; ++pub const CAPI_REGISTER: u32 = 2148287233; ++pub const F2FS_IOC_COMPRESS_FILE: u32 = 536933656; ++pub const USBDEVFS_DISCARDURB: u32 = 536892683; ++pub const HE_GET_REG: u32 = 2148557152; ++pub const ATM_SETLOOP: u32 = 2148557139; ++pub const ATMSIGD_CTRL: u32 = 536895984; ++pub const CIOC_KERNEL_VERSION: u32 = 3221775114; ++pub const BTRFS_IOC_CLONE_RANGE: u32 = 2149618701; ++pub const SNAPSHOT_UNFREEZE: u32 = 536883970; ++pub const F2FS_IOC_START_VOLATILE_WRITE: u32 = 536933635; ++pub const PMU_IOC_HAS_ADB: u32 = 1074283012; ++pub const I2OGETIOPS: u32 = 1075865856; ++pub const VIDIOC_S_FBUF: u32 = 2150651403; ++pub const PPRCONTROL: u32 = 1073836163; ++pub const CHIOSPICKER: u32 = 2147771141; ++pub const VFIO_IOMMU_SPAPR_REGISTER_MEMORY: u32 = 536886133; ++pub const TUNGETSNDBUF: u32 = 1074025683; ++pub const GSMIOC_SETCONF: u32 = 2152482561; ++pub const IOC_PR_PREEMPT: u32 = 2149085387; ++pub const KCOV_INIT_TRACE: u32 = 1074291457; ++pub const SONYPI_IOCGBAT1CAP: u32 = 1073903106; ++pub const SWITCHTEC_IOCTL_FLASH_INFO: u32 = 1074812736; ++pub const MTIOCTOP: u32 = 2148035841; ++pub const VHOST_VDPA_SET_STATUS: u32 = 2147594098; ++pub const VHOST_SCSI_SET_EVENTS_MISSED: u32 = 2147790659; ++pub const VFIO_IOMMU_DIRTY_PAGES: u32 = 536886133; ++pub const BTRFS_IOC_SCRUB_PROGRESS: u32 = 3288372253; ++pub const PPPIOCGMRU: u32 = 1074033747; ++pub const BTRFS_IOC_DEV_REPLACE: u32 = 3391657013; ++pub const PPPIOCGFLAGS: u32 = 1074033754; ++pub const NILFS_IOCTL_SET_SUINFO: u32 = 2149084813; ++pub const FW_CDEV_IOC_GET_CYCLE_TIMER2: u32 = 3222807316; ++pub const ATM_DELLECSADDR: u32 = 2148557199; ++pub const FW_CDEV_IOC_GET_SPEED: u32 = 536879889; ++pub const PPPIOCGIDLE32: u32 = 1074295871; ++pub const VFIO_DEVICE_RESET: u32 = 536886127; ++pub const GPIO_GET_LINEINFO_UNWATCH_IOCTL: u32 = 3221533708; ++pub const WDIOC_GETSTATUS: u32 = 1074026241; ++pub const BTRFS_IOC_SET_FEATURES: u32 = 2150667321; ++pub const IOCTL_MEI_CONNECT_CLIENT: u32 = 3222292481; ++pub const VIDIOC_OMAP3ISP_AEWB_CFG: u32 = 3223344835; ++pub const PCITEST_READ: u32 = 2148028421; ++pub const VFIO_GROUP_GET_STATUS: u32 = 536886119; ++pub const MATROXFB_GET_ALL_OUTPUTS: u32 = 1074294523; ++pub const USBDEVFS_CLEAR_HALT: u32 = 1074025749; ++pub const VIDIOC_DECODER_CMD: u32 = 3225966176; ++pub const VIDIOC_G_AUDIO: u32 = 1077171745; ++pub const CCISS_RESCANDISK: u32 = 536887824; ++pub const RIO_DISABLE_PORTWRITE_RANGE: u32 = 2148560140; ++pub const IOC_OPAL_SECURE_ERASE_LR: u32 = 2165338343; ++pub const USBDEVFS_REAPURB: u32 = 2148029708; ++pub const DFL_FPGA_CHECK_EXTENSION: u32 = 536917505; ++pub const AUTOFS_IOC_PROTOVER: u32 = 1074041699; ++pub const FSL_HV_IOCTL_MEMCPY: u32 = 3223891717; ++pub const BTRFS_IOC_GET_FEATURES: u32 = 1075352633; ++pub const PCITEST_MSIX: u32 = 2147766279; ++pub const BTRFS_IOC_DEFRAG_RANGE: u32 = 2150667280; ++pub const UI_BEGIN_FF_ERASE: u32 = 3222033866; ++pub const DM_GET_TARGET_VERSION: u32 = 3241737489; ++pub const PPPIOCGIDLE: u32 = 1074820159; ++pub const NVRAM_SETCKS: u32 = 536899649; ++pub const WDIOC_GETSUPPORT: u32 = 1076385536; ++pub const GSMIOC_ENABLE_NET: u32 = 2150909698; ++pub const GPIO_GET_CHIPINFO_IOCTL: u32 = 1078244353; ++pub const NE_ADD_VCPU: u32 = 3221532193; ++pub const EVIOCSKEYCODE_V2: u32 = 2150122756; ++pub const PTP_SYS_OFFSET_EXTENDED2: u32 = 3300932882; ++pub const SCIF_FENCE_WAIT: u32 = 3221517072; ++pub const RIO_TRANSFER: u32 = 3222826261; ++pub const FSL_HV_IOCTL_DOORBELL: u32 = 3221794566; ++pub const RIO_MPORT_MAINT_WRITE_LOCAL: u32 = 2149084422; ++pub const I2OEVTREG: u32 = 2148296970; ++pub const I2OPARMGET: u32 = 3223873796; ++pub const EVIOCGID: u32 = 1074283778; ++pub const BTRFS_IOC_QGROUP_CREATE: u32 = 2148570154; ++pub const AUTOFS_DEV_IOCTL_SETPIPEFD: u32 = 3222836088; ++pub const VIDIOC_S_PARM: u32 = 3234616854; ++pub const TUNSETSTEERINGEBPF: u32 = 1074025696; ++pub const ATM_GETNAMES: u32 = 2148557187; ++pub const VIDIOC_QUERYMENU: u32 = 3224131109; ++pub const DFL_FPGA_PORT_DMA_UNMAP: u32 = 536917572; ++pub const I2OLCTGET: u32 = 3222825218; ++pub const FS_IOC_GET_ENCRYPTION_PWSALT: u32 = 2148558356; ++pub const NS_SETBUFLEV: u32 = 2148557154; ++pub const BLKCLOSEZONE: u32 = 2148536967; ++pub const SONET_GETFRSENSE: u32 = 1074159895; ++pub const UI_SET_EVBIT: u32 = 2147767652; ++pub const DM_LIST_VERSIONS: u32 = 3241737485; ++pub const HIDIOCGSTRING: u32 = 1090799620; ++pub const PPPIOCATTCHAN: u32 = 2147775544; ++pub const VDUSE_DEV_SET_CONFIG: u32 = 2148040978; ++pub const TUNGETFEATURES: u32 = 1074025679; ++pub const VFIO_GROUP_UNSET_CONTAINER: u32 = 536886121; ++pub const IPMICTL_SET_MY_ADDRESS_CMD: u32 = 1074030865; ++pub const CCISS_REGNEWDISK: u32 = 2147762701; ++pub const VIDIOC_QUERY_DV_TIMINGS: u32 = 1082414691; ++pub const PHN_SETREGS: u32 = 2150133768; ++pub const FAT_IOCTL_GET_ATTRIBUTES: u32 = 1074033168; ++pub const FSL_MC_SEND_MC_COMMAND: u32 = 3225440992; ++pub const TUNGETIFF: u32 = 1074025682; ++pub const PTP_CLOCK_GETCAPS2: u32 = 1079000330; ++pub const BTRFS_IOC_RESIZE: u32 = 2415956995; ++pub const VHOST_SET_VRING_ENDIAN: u32 = 2148052755; ++pub const PPS_KC_BIND: u32 = 2148036773; ++pub const F2FS_IOC_WRITE_CHECKPOINT: u32 = 536933639; ++pub const UI_SET_FFBIT: u32 = 2147767659; ++pub const IPMICTL_GET_MY_LUN_CMD: u32 = 1074030868; ++pub const CEC_ADAP_G_PHYS_ADDR: u32 = 1073897729; ++pub const CEC_G_MODE: u32 = 1074028808; ++pub const USBDEVFS_RESETEP: u32 = 1074025731; ++pub const MEDIA_REQUEST_IOC_QUEUE: u32 = 536902784; ++pub const USBDEVFS_ALLOC_STREAMS: u32 = 1074287900; ++pub const MGSL_IOCSXCTRL: u32 = 536898837; ++pub const MEDIA_IOC_G_TOPOLOGY: u32 = 3225975812; ++pub const PPPIOCUNBRIDGECHAN: u32 = 536900660; ++pub const F2FS_IOC_COMMIT_ATOMIC_WRITE: u32 = 536933634; ++pub const ISST_IF_GET_PLATFORM_INFO: u32 = 1074331136; ++pub const SCIF_FENCE_MARK: u32 = 3222303503; ++pub const USBDEVFS_RELEASE_PORT: u32 = 1074025753; ++pub const VFIO_CHECK_EXTENSION: u32 = 536886117; ++pub const BTRFS_IOC_QGROUP_LIMIT: u32 = 1076925483; ++pub const FAT_IOCTL_GET_VOLUME_ID: u32 = 1074033171; ++pub const UI_SET_PHYS: u32 = 2148029804; ++pub const FDWERRORGET: u32 = 1076363799; ++pub const VIDIOC_SUBDEV_G_EDID: u32 = 3223868968; ++pub const MGSL_IOCGSTATS: u32 = 536898823; ++pub const RPROC_SET_SHUTDOWN_ON_RELEASE: u32 = 2147792641; ++pub const SIOCGSTAMP_NEW: u32 = 1074825478; ++pub const RTC_WKALM_RD: u32 = 1076391952; ++pub const PHN_GET_REG: u32 = 3221778432; ++pub const DELL_WMI_SMBIOS_CMD: u32 = 3224655616; ++pub const PHN_NOT_OH: u32 = 536899588; ++pub const PPGETMODES: u32 = 1074032791; ++pub const CHIOGPARAMS: u32 = 1075077894; ++pub const VFIO_DEVICE_GET_GFX_DMABUF: u32 = 536886131; ++pub const VHOST_SET_VRING_BUSYLOOP_TIMEOUT: u32 = 2148052771; ++pub const VIDIOC_SUBDEV_G_SELECTION: u32 = 3225441853; ++pub const BTRFS_IOC_RM_DEV_V2: u32 = 2415957050; ++pub const MGSL_IOCWAITGPIO: u32 = 3222301970; ++pub const PMU_IOC_CAN_SLEEP: u32 = 1074283013; ++pub const KCOV_ENABLE: u32 = 536896356; ++pub const BTRFS_IOC_CLONE: u32 = 2147783689; ++pub const F2FS_IOC_DEFRAGMENT: u32 = 3222336776; ++pub const FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE: u32 = 2147754766; ++pub const AGPIOC_ALLOCATE: u32 = 3221766406; ++pub const NE_SET_USER_MEMORY_REGION: u32 = 2149101091; ++pub const MGSL_IOCTXABORT: u32 = 536898822; ++pub const MGSL_IOCSGPIO: u32 = 2148560144; ++pub const LIRC_SET_REC_CARRIER: u32 = 2147772692; ++pub const F2FS_IOC_FLUSH_DEVICE: u32 = 2148070666; ++pub const SNAPSHOT_ATOMIC_RESTORE: u32 = 536883972; ++pub const RTC_UIE_OFF: u32 = 536899588; ++pub const BT_BMC_IOCTL_SMS_ATN: u32 = 536916224; ++pub const NVME_IOCTL_ID: u32 = 536890944; ++pub const NE_START_ENCLAVE: u32 = 3222318628; ++pub const VIDIOC_STREAMON: u32 = 2147767826; ++pub const FDPOLLDRVSTAT: u32 = 1078985235; ++pub const AUTOFS_DEV_IOCTL_READY: u32 = 3222836086; ++pub const VIDIOC_ENUMAUDOUT: u32 = 3224655426; ++pub const VIDIOC_SUBDEV_S_STD: u32 = 2148029976; ++pub const WDIOC_GETTIMELEFT: u32 = 1074026250; ++pub const ATM_GETLINKRATE: u32 = 2148557185; ++pub const RTC_WKALM_SET: u32 = 2150133775; ++pub const VHOST_GET_BACKEND_FEATURES: u32 = 1074310950; ++pub const ATMARP_ENCAP: u32 = 536895973; ++pub const CAPI_GET_FLAGS: u32 = 1074021155; ++pub const IPMICTL_SET_MY_CHANNEL_ADDRESS_CMD: u32 = 1074030872; ++pub const DFL_FPGA_FME_PORT_ASSIGN: u32 = 2147792514; ++pub const NS_GET_OWNER_UID: u32 = 536917764; ++pub const VIDIOC_OVERLAY: u32 = 2147767822; ++pub const BTRFS_IOC_WAIT_SYNC: u32 = 2148045846; ++pub const GPIOHANDLE_SET_CONFIG_IOCTL: u32 = 3226776586; ++pub const VHOST_GET_VRING_ENDIAN: u32 = 2148052756; ++pub const ATM_GETADDR: u32 = 2148557190; ++pub const PHN_GET_REGS: u32 = 3221778434; ++pub const AUTOFS_DEV_IOCTL_REQUESTER: u32 = 3222836091; ++pub const AUTOFS_DEV_IOCTL_EXPIRE: u32 = 3222836092; ++pub const SNAPSHOT_S2RAM: u32 = 536883979; ++pub const JSIOCSAXMAP: u32 = 2151705137; ++pub const F2FS_IOC_SET_COMPRESS_OPTION: u32 = 2147677462; ++pub const VBG_IOCTL_HGCM_DISCONNECT: u32 = 3223082501; ++pub const SCIF_FENCE_SIGNAL: u32 = 3223876369; ++pub const VFIO_DEVICE_GET_PCI_HOT_RESET_INFO: u32 = 536886128; ++pub const VIDIOC_SUBDEV_ENUM_MBUS_CODE: u32 = 3224393218; ++pub const MMTIMER_GETOFFSET: u32 = 536898816; ++pub const RIO_CM_CHAN_LISTEN: u32 = 2147640070; ++pub const ATM_SETSC: u32 = 2147770865; ++pub const F2FS_IOC_SHUTDOWN: u32 = 1074026621; ++pub const NVME_IOCTL_RESCAN: u32 = 536890950; ++pub const BLKOPENZONE: u32 = 2148536966; ++pub const DM_VERSION: u32 = 3241737472; ++pub const CEC_TRANSMIT: u32 = 3224920325; ++pub const FS_IOC_GET_ENCRYPTION_POLICY_EX: u32 = 3221841430; ++pub const SIOCMKCLIP: u32 = 536895968; ++pub const IPMI_BMC_IOCTL_CLEAR_SMS_ATN: u32 = 536916225; ++pub const HIDIOCGVERSION: u32 = 1074022401; ++pub const VIDIOC_S_INPUT: u32 = 3221509671; ++pub const VIDIOC_G_CROP: u32 = 3222558267; ++pub const LIRC_SET_WIDEBAND_RECEIVER: u32 = 2147772707; ++pub const EVIOCGEFFECTS: u32 = 1074021764; ++pub const UVCIOC_CTRL_QUERY: u32 = 3222304033; ++pub const IOC_OPAL_GENERIC_TABLE_RW: u32 = 2167959787; ++pub const FS_IOC_READ_VERITY_METADATA: u32 = 3223873159; ++pub const ND_IOCTL_SET_CONFIG_DATA: u32 = 3221769734; ++pub const USBDEVFS_GETDRIVER: u32 = 2164544776; ++pub const IDT77105_GETSTAT: u32 = 2148557106; ++pub const HIDIOCINITREPORT: u32 = 536889349; ++pub const VFIO_DEVICE_GET_INFO: u32 = 536886123; ++pub const RIO_CM_CHAN_RECEIVE: u32 = 3222299402; ++pub const RNDGETENTCNT: u32 = 1074024960; ++pub const PPPIOCNEWUNIT: u32 = 3221517374; ++pub const BTRFS_IOC_INO_LOOKUP: u32 = 3489698834; ++pub const FDRESET: u32 = 536871508; ++pub const IOC_PR_REGISTER: u32 = 2149085384; ++pub const HIDIOCSREPORT: u32 = 2148288520; ++pub const TEE_IOC_OPEN_SESSION: u32 = 1074832386; ++pub const TEE_IOC_SUPPL_RECV: u32 = 1074832390; ++pub const BTRFS_IOC_BALANCE_CTL: u32 = 2147783713; ++pub const GPIO_GET_LINEINFO_WATCH_IOCTL: u32 = 3225990155; ++pub const HIDIOCGRAWINFO: u32 = 1074284547; ++pub const PPPIOCSCOMPRESS: u32 = 2148561997; ++pub const USBDEVFS_CONNECTINFO: u32 = 2148029713; ++pub const BLKRESETZONE: u32 = 2148536963; ++pub const CHIOINITELEM: u32 = 536896273; ++pub const NILFS_IOCTL_SET_ALLOC_RANGE: u32 = 2148560524; ++pub const AUTOFS_DEV_IOCTL_CATATONIC: u32 = 3222836089; ++pub const RIO_MPORT_MAINT_HDID_SET: u32 = 2147642625; ++pub const PPGETPHASE: u32 = 1074032793; ++pub const USBDEVFS_DISCONNECT_CLAIM: u32 = 1091065115; ++pub const FDMSGON: u32 = 536871493; ++pub const VIDIOC_G_SLICED_VBI_CAP: u32 = 3228849733; ++pub const BTRFS_IOC_BALANCE_V2: u32 = 3288372256; ++pub const MEDIA_REQUEST_IOC_REINIT: u32 = 536902785; ++pub const IOC_OPAL_ERASE_LR: u32 = 2165338342; ++pub const FDFMTBEG: u32 = 536871495; ++pub const RNDRESEEDCRNG: u32 = 536891911; ++pub const ISST_IF_GET_PHY_ID: u32 = 3221814785; ++pub const TUNSETNOCSUM: u32 = 2147767496; ++pub const SONET_GETSTAT: u32 = 1076125968; ++pub const TFD_IOC_SET_TICKS: u32 = 2148029440; ++pub const PPDATADIR: u32 = 2147774608; ++pub const IOC_OPAL_ENABLE_DISABLE_MBR: u32 = 2165338341; ++pub const GPIO_V2_GET_LINE_IOCTL: u32 = 3260068871; ++pub const RIO_CM_CHAN_SEND: u32 = 2148557577; ++pub const PPWCTLONIRQ: u32 = 2147578002; ++pub const SONYPI_IOCGBRT: u32 = 1073837568; ++pub const IOC_PR_RELEASE: u32 = 2148561098; ++pub const PPCLRIRQ: u32 = 1074032787; ++pub const IPMICTL_SET_MY_CHANNEL_LUN_CMD: u32 = 1074030874; ++pub const MGSL_IOCSXSYNC: u32 = 536898835; ++pub const HPET_IE_OFF: u32 = 536897538; ++pub const IOC_OPAL_ACTIVATE_USR: u32 = 2165338337; ++pub const SONET_SETFRAMING: u32 = 2147770645; ++pub const PERF_EVENT_IOC_PAUSE_OUTPUT: u32 = 2147755017; ++pub const BTRFS_IOC_LOGICAL_INO_V2: u32 = 3224933435; ++pub const VBG_IOCTL_HGCM_CONNECT: u32 = 3231471108; ++pub const BLKFINISHZONE: u32 = 2148536968; ++pub const EVIOCREVOKE: u32 = 2147763601; ++pub const VFIO_DEVICE_FEATURE: u32 = 536886133; ++pub const CCISS_GETPCIINFO: u32 = 1074283009; ++pub const ISST_IF_MBOX_COMMAND: u32 = 3221814787; ++pub const SCIF_ACCEPTREQ: u32 = 3222303492; ++pub const PERF_EVENT_IOC_QUERY_BPF: u32 = 3221758986; ++pub const VIDIOC_STREAMOFF: u32 = 2147767827; ++pub const VDUSE_DESTROY_DEV: u32 = 2164293891; ++pub const FDGETFDCSTAT: u32 = 1076363797; ++pub const VIDIOC_S_PRIORITY: u32 = 2147767876; ++pub const SNAPSHOT_FREEZE: u32 = 536883969; ++pub const VIDIOC_ENUMINPUT: u32 = 3226490394; ++pub const ZATM_GETPOOLZ: u32 = 2148557154; ++pub const RIO_DISABLE_DOORBELL_RANGE: u32 = 2148035850; ++pub const GPIO_V2_GET_LINEINFO_WATCH_IOCTL: u32 = 3238048774; ++pub const VIDIOC_G_STD: u32 = 1074288151; ++pub const USBDEVFS_ALLOW_SUSPEND: u32 = 536892706; ++pub const SONET_GETSTATZ: u32 = 1076125969; ++pub const SCIF_ACCEPTREG: u32 = 3221779205; ++pub const VIDIOC_ENCODER_CMD: u32 = 3223869005; ++pub const PPPIOCSRASYNCMAP: u32 = 2147775572; ++pub const IOCTL_MEI_NOTIFY_SET: u32 = 2147764226; ++pub const BTRFS_IOC_QUOTA_RESCAN_STATUS: u32 = 1077974061; ++pub const F2FS_IOC_GARBAGE_COLLECT: u32 = 2147808518; ++pub const ATMLEC_CTRL: u32 = 536895952; ++pub const MATROXFB_GET_AVAILABLE_OUTPUTS: u32 = 1074294521; ++pub const DM_DEV_CREATE: u32 = 3241737475; ++pub const VHOST_VDPA_GET_VRING_NUM: u32 = 1073917814; ++pub const VIDIOC_G_CTRL: u32 = 3221771803; ++pub const NBD_CLEAR_SOCK: u32 = 536914692; ++pub const VFIO_DEVICE_QUERY_GFX_PLANE: u32 = 536886130; ++pub const WDIOC_KEEPALIVE: u32 = 1074026245; ++pub const NVME_IOCTL_SUBSYS_RESET: u32 = 536890949; ++pub const PTP_EXTTS_REQUEST2: u32 = 2148547851; ++pub const PCITEST_BAR: u32 = 536891393; ++pub const MGSL_IOCGGPIO: u32 = 1074818321; ++pub const EVIOCSREP: u32 = 2148025603; ++pub const VFIO_DEVICE_GET_IRQ_INFO: u32 = 536886125; ++pub const HPET_DPI: u32 = 536897541; ++pub const VDUSE_VQ_SETUP_KICKFD: u32 = 2148040982; ++pub const ND_IOCTL_CALL: u32 = 3225439754; ++pub const HIDIOCGDEVINFO: u32 = 1075595267; ++pub const DM_TABLE_DEPS: u32 = 3241737483; ++pub const BTRFS_IOC_DEV_INFO: u32 = 3489698846; ++pub const VDUSE_IOTLB_GET_FD: u32 = 3223355664; ++pub const FW_CDEV_IOC_GET_INFO: u32 = 3223855872; ++pub const VIDIOC_G_PRIORITY: u32 = 1074026051; ++pub const ATM_NEWBACKENDIF: u32 = 2147639795; ++pub const VIDIOC_S_EXT_CTRLS: u32 = 3223344712; ++pub const VIDIOC_SUBDEV_ENUM_DV_TIMINGS: u32 = 3230946914; ++pub const VIDIOC_OMAP3ISP_CCDC_CFG: u32 = 3224917697; ++pub const VIDIOC_S_HW_FREQ_SEEK: u32 = 2150651474; ++pub const DM_TABLE_LOAD: u32 = 3241737481; ++pub const F2FS_IOC_START_ATOMIC_WRITE: u32 = 536933633; ++pub const VIDIOC_G_OUTPUT: u32 = 1074026030; ++pub const ATM_DROPPARTY: u32 = 2147770869; ++pub const CHIOGELEM: u32 = 2154586896; ++pub const BTRFS_IOC_GET_SUPPORTED_FEATURES: u32 = 1078498361; ++pub const EVIOCSKEYCODE: u32 = 2148025604; ++pub const NE_GET_IMAGE_LOAD_INFO: u32 = 3222318626; ++pub const TUNSETLINK: u32 = 2147767501; ++pub const FW_CDEV_IOC_ADD_DESCRIPTOR: u32 = 3222807302; ++pub const BTRFS_IOC_SCRUB_CANCEL: u32 = 536908828; ++pub const PPS_SETPARAMS: u32 = 2148036770; ++pub const IOC_OPAL_LR_SETUP: u32 = 2166911203; ++pub const FW_CDEV_IOC_DEALLOCATE: u32 = 2147754755; ++pub const WDIOC_SETTIMEOUT: u32 = 3221509894; ++pub const IOC_WATCH_QUEUE_SET_FILTER: u32 = 536893281; ++pub const CAPI_GET_MANUFACTURER: u32 = 3221504774; ++pub const VFIO_IOMMU_SPAPR_UNREGISTER_MEMORY: u32 = 536886134; ++pub const ASPEED_P2A_CTRL_IOCTL_SET_WINDOW: u32 = 2148578048; ++pub const VIDIOC_G_EDID: u32 = 3223868968; ++pub const F2FS_IOC_GARBAGE_COLLECT_RANGE: u32 = 2149119243; ++pub const RIO_MAP_INBOUND: u32 = 3223874833; ++pub const IOC_OPAL_TAKE_OWNERSHIP: u32 = 2164814046; ++pub const USBDEVFS_CLAIM_PORT: u32 = 1074025752; ++pub const VIDIOC_S_AUDIO: u32 = 2150913570; ++pub const FS_IOC_GET_ENCRYPTION_NONCE: u32 = 1074816539; ++pub const FW_CDEV_IOC_SEND_STREAM_PACKET: u32 = 2150114067; ++pub const BTRFS_IOC_SNAP_DESTROY: u32 = 2415957007; ++pub const SNAPSHOT_FREE: u32 = 536883973; ++pub const I8K_GET_SPEED: u32 = 3221776773; ++pub const HIDIOCGREPORT: u32 = 2148288519; ++pub const HPET_EPI: u32 = 536897540; ++pub const JSIOCSCORR: u32 = 2149870113; ++pub const IOC_PR_PREEMPT_ABORT: u32 = 2149085388; ++pub const RIO_MAP_OUTBOUND: u32 = 3223874831; ++pub const ATM_SETESI: u32 = 2148557196; ++pub const FW_CDEV_IOC_START_ISO: u32 = 2148541194; ++pub const ATM_DELADDR: u32 = 2148557193; ++pub const PPFCONTROL: u32 = 2147643534; ++pub const SONYPI_IOCGFAN: u32 = 1073837578; ++pub const RTC_IRQP_SET: u32 = 2148036620; ++pub const PCITEST_WRITE: u32 = 2148028420; ++pub const PPCLAIM: u32 = 536899723; ++pub const VIDIOC_S_JPEGCOMP: u32 = 2156680766; ++pub const IPMICTL_UNREGISTER_FOR_CMD: u32 = 1073899791; ++pub const VHOST_SET_FEATURES: u32 = 2148052736; ++pub const TOSHIBA_ACPI_SCI: u32 = 3222828177; ++pub const VIDIOC_DQBUF: u32 = 3227014673; ++pub const BTRFS_IOC_BALANCE_PROGRESS: u32 = 1140888610; ++pub const BTRFS_IOC_SUBVOL_SETFLAGS: u32 = 2148045850; ++pub const ATMLEC_MCAST: u32 = 536895954; ++pub const MMTIMER_GETFREQ: u32 = 1074294018; ++pub const VIDIOC_G_SELECTION: u32 = 3225441886; ++pub const RTC_ALM_SET: u32 = 2149871623; ++pub const PPPOEIOCSFWD: u32 = 2148053248; ++pub const IPMICTL_GET_MAINTENANCE_MODE_CMD: u32 = 1074030878; ++pub const FS_IOC_ENABLE_VERITY: u32 = 2155898501; ++pub const NILFS_IOCTL_GET_BDESCS: u32 = 3222826631; ++pub const FDFMTEND: u32 = 536871497; ++pub const DMA_BUF_SET_NAME: u32 = 2148033025; ++pub const UI_BEGIN_FF_UPLOAD: u32 = 3228063176; ++pub const RTC_UIE_ON: u32 = 536899587; ++pub const PPRELEASE: u32 = 536899724; ++pub const VFIO_IOMMU_UNMAP_DMA: u32 = 536886130; ++pub const VIDIOC_OMAP3ISP_PRV_CFG: u32 = 3228587714; ++pub const GPIO_GET_LINEHANDLE_IOCTL: u32 = 3245126659; ++pub const VFAT_IOCTL_READDIR_BOTH: u32 = 1110471169; ++pub const NVME_IOCTL_ADMIN_CMD: u32 = 3225964097; ++pub const VHOST_SET_VRING_KICK: u32 = 2148052768; ++pub const BTRFS_IOC_SUBVOL_CREATE_V2: u32 = 2415957016; ++pub const BTRFS_IOC_SNAP_CREATE: u32 = 2415956993; ++pub const SONYPI_IOCGBAT2CAP: u32 = 1073903108; ++pub const PPNEGOT: u32 = 2147774609; ++pub const NBD_PRINT_DEBUG: u32 = 536914694; ++pub const BTRFS_IOC_INO_LOOKUP_USER: u32 = 3489698878; ++pub const BTRFS_IOC_GET_SUBVOL_ROOTREF: u32 = 3489698877; ++pub const FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS: u32 = 3225445913; ++pub const BTRFS_IOC_FS_INFO: u32 = 1140888607; ++pub const VIDIOC_ENUM_FMT: u32 = 3225441794; ++pub const VIDIOC_G_INPUT: u32 = 1074026022; ++pub const VTPM_PROXY_IOC_NEW_DEV: u32 = 3222577408; ++pub const DFL_FPGA_FME_ERR_GET_IRQ_NUM: u32 = 1074050691; ++pub const ND_IOCTL_DIMM_FLAGS: u32 = 3221769731; ++pub const BTRFS_IOC_QUOTA_RESCAN: u32 = 2151715884; ++pub const MMTIMER_GETCOUNTER: u32 = 1074294025; ++pub const MATROXFB_GET_OUTPUT_MODE: u32 = 3221778170; ++pub const BTRFS_IOC_QUOTA_RESCAN_WAIT: u32 = 536908846; ++pub const RIO_CM_CHAN_BIND: u32 = 2148033285; ++pub const HIDIOCGRDESC: u32 = 1342457858; ++pub const MGSL_IOCGIF: u32 = 536898827; ++pub const VIDIOC_S_OUTPUT: u32 = 3221509679; ++pub const HIDIOCGREPORTINFO: u32 = 3222030345; ++pub const WDIOC_GETBOOTSTATUS: u32 = 1074026242; ++pub const VDUSE_VQ_GET_INFO: u32 = 3224404245; ++pub const ACRN_IOCTL_ASSIGN_PCIDEV: u32 = 2149884501; ++pub const BLKGETDISKSEQ: u32 = 1074270848; ++pub const ACRN_IOCTL_PM_GET_CPU_STATE: u32 = 3221791328; ++pub const ACRN_IOCTL_DESTROY_VM: u32 = 536912401; ++pub const ACRN_IOCTL_SET_PTDEV_INTR: u32 = 2148835923; ++pub const ACRN_IOCTL_CREATE_IOREQ_CLIENT: u32 = 536912434; ++pub const ACRN_IOCTL_IRQFD: u32 = 2149098097; ++pub const ACRN_IOCTL_CREATE_VM: u32 = 3224412688; ++pub const ACRN_IOCTL_INJECT_MSI: u32 = 2148573731; ++pub const ACRN_IOCTL_ATTACH_IOREQ_CLIENT: u32 = 536912435; ++pub const ACRN_IOCTL_RESET_PTDEV_INTR: u32 = 2148835924; ++pub const ACRN_IOCTL_NOTIFY_REQUEST_FINISH: u32 = 2148049457; ++pub const ACRN_IOCTL_SET_IRQLINE: u32 = 2148049445; ++pub const ACRN_IOCTL_START_VM: u32 = 536912402; ++pub const ACRN_IOCTL_SET_VCPU_REGS: u32 = 2166923798; ++pub const ACRN_IOCTL_SET_MEMSEG: u32 = 2149622337; ++pub const ACRN_IOCTL_PAUSE_VM: u32 = 536912403; ++pub const ACRN_IOCTL_CLEAR_VM_IOREQ: u32 = 536912437; ++pub const ACRN_IOCTL_UNSET_MEMSEG: u32 = 2149622338; ++pub const ACRN_IOCTL_IOEVENTFD: u32 = 2149622384; ++pub const ACRN_IOCTL_DEASSIGN_PCIDEV: u32 = 2149884502; ++pub const ACRN_IOCTL_RESET_VM: u32 = 536912405; ++pub const ACRN_IOCTL_DESTROY_IOREQ_CLIENT: u32 = 536912436; ++pub const ACRN_IOCTL_VM_INTR_MONITOR: u32 = 2148049444; +diff --git a/vendor/linux-raw-sys-0.4.14/src/sw64/loop_device.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/loop_device.rs +new file mode 100644 +index 00000000000..2b4aae0f0f1 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/loop_device.rs +@@ -0,0 +1,141 @@ ++/* automatically generated by rust-bindgen 0.66.1 */ ++ ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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(u32)] ++#[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/vendor/linux-raw-sys-0.4.14/src/sw64/mempolicy.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/mempolicy.rs +new file mode 100644 +index 00000000000..2a726675893 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/mempolicy.rs +@@ -0,0 +1,175 @@ ++/* automatically generated by rust-bindgen 0.66.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 ENOMSG: u32 = 35; ++pub const EIDRM: u32 = 36; ++pub const ECHRNG: u32 = 37; ++pub const EL2NSYNC: u32 = 38; ++pub const EL3HLT: u32 = 39; ++pub const EL3RST: u32 = 40; ++pub const ELNRNG: u32 = 41; ++pub const EUNATCH: u32 = 42; ++pub const ENOCSI: u32 = 43; ++pub const EL2HLT: u32 = 44; ++pub const EDEADLK: u32 = 45; ++pub const ENOLCK: u32 = 46; ++pub const EBADE: u32 = 50; ++pub const EBADR: u32 = 51; ++pub const EXFULL: u32 = 52; ++pub const ENOANO: u32 = 53; ++pub const EBADRQC: u32 = 54; ++pub const EBADSLT: u32 = 55; ++pub const EDEADLOCK: u32 = 56; ++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 EDOTDOT: u32 = 73; ++pub const EMULTIHOP: u32 = 74; ++pub const EBADMSG: u32 = 77; ++pub const ENAMETOOLONG: u32 = 78; ++pub const EOVERFLOW: u32 = 79; ++pub const ENOTUNIQ: u32 = 80; ++pub const EBADFD: u32 = 81; ++pub const EREMCHG: u32 = 82; ++pub const ELIBACC: u32 = 83; ++pub const ELIBBAD: u32 = 84; ++pub const ELIBSCN: u32 = 85; ++pub const ELIBMAX: u32 = 86; ++pub const ELIBEXEC: u32 = 87; ++pub const EILSEQ: u32 = 88; ++pub const ENOSYS: u32 = 89; ++pub const ELOOP: u32 = 90; ++pub const ERESTART: u32 = 91; ++pub const ESTRPIPE: u32 = 92; ++pub const ENOTEMPTY: u32 = 93; ++pub const EUSERS: u32 = 94; ++pub const ENOTSOCK: u32 = 95; ++pub const EDESTADDRREQ: u32 = 96; ++pub const EMSGSIZE: u32 = 97; ++pub const EPROTOTYPE: u32 = 98; ++pub const ENOPROTOOPT: u32 = 99; ++pub const EPROTONOSUPPORT: u32 = 120; ++pub const ESOCKTNOSUPPORT: u32 = 121; ++pub const EOPNOTSUPP: u32 = 122; ++pub const EPFNOSUPPORT: u32 = 123; ++pub const EAFNOSUPPORT: u32 = 124; ++pub const EADDRINUSE: u32 = 125; ++pub const EADDRNOTAVAIL: u32 = 126; ++pub const ENETDOWN: u32 = 127; ++pub const ENETUNREACH: u32 = 128; ++pub const ENETRESET: u32 = 129; ++pub const ECONNABORTED: u32 = 130; ++pub const ECONNRESET: u32 = 131; ++pub const ENOBUFS: u32 = 132; ++pub const EISCONN: u32 = 133; ++pub const ENOTCONN: u32 = 134; ++pub const EUCLEAN: u32 = 135; ++pub const ENOTNAM: u32 = 137; ++pub const ENAVAIL: u32 = 138; ++pub const EISNAM: u32 = 139; ++pub const EREMOTEIO: u32 = 140; ++pub const EINIT: u32 = 141; ++pub const EREMDEV: u32 = 142; ++pub const ESHUTDOWN: u32 = 143; ++pub const ETOOMANYREFS: u32 = 144; ++pub const ETIMEDOUT: u32 = 145; ++pub const ECONNREFUSED: u32 = 146; ++pub const EHOSTDOWN: u32 = 147; ++pub const EHOSTUNREACH: u32 = 148; ++pub const EWOULDBLOCK: u32 = 11; ++pub const EALREADY: u32 = 149; ++pub const EINPROGRESS: u32 = 150; ++pub const ESTALE: u32 = 151; ++pub const ECANCELED: u32 = 158; ++pub const ENOMEDIUM: u32 = 159; ++pub const EMEDIUMTYPE: u32 = 160; ++pub const ENOKEY: u32 = 161; ++pub const EKEYEXPIRED: u32 = 162; ++pub const EKEYREVOKED: u32 = 163; ++pub const EKEYREJECTED: u32 = 164; ++pub const EOWNERDEAD: u32 = 165; ++pub const ENOTRECOVERABLE: u32 = 166; ++pub const ERFKILL: u32 = 167; ++pub const EHWPOISON: u32 = 168; ++pub const EDQUOT: u32 = 1133; ++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_MAX: _bindgen_ty_1 = _bindgen_ty_1::MPOL_MAX; ++#[repr(u32)] ++#[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_MAX = 6, ++} +diff --git a/vendor/linux-raw-sys-0.4.14/src/sw64/net.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/net.rs +new file mode 100644 +index 00000000000..d7de5b49695 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/net.rs +@@ -0,0 +1,2514 @@ ++/* automatically generated by rust-bindgen 0.66.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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: [u64; 34usize], ++} ++#[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(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, ++} ++#[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)] ++#[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 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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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 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 __BIG_ENDIAN: u32 = 4321; ++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 _IOC_SIZEBITS: u32 = 13; ++pub const _IOC_DIRBITS: u32 = 3; ++pub const _IOC_NONE: u32 = 1; ++pub const _IOC_READ: u32 = 2; ++pub const _IOC_WRITE: u32 = 4; ++pub const _IOC_NRBITS: u32 = 8; ++pub const _IOC_TYPEBITS: u32 = 8; ++pub const _IOC_NRMASK: u32 = 255; ++pub const _IOC_TYPEMASK: u32 = 255; ++pub const _IOC_SIZEMASK: u32 = 8191; ++pub const _IOC_DIRMASK: u32 = 7; ++pub const _IOC_NRSHIFT: u32 = 0; ++pub const _IOC_TYPESHIFT: u32 = 8; ++pub const _IOC_SIZESHIFT: u32 = 16; ++pub const _IOC_DIRSHIFT: u32 = 29; ++pub const IOC_IN: u32 = 2147483648; ++pub const IOC_OUT: u32 = 1073741824; ++pub const IOC_INOUT: u32 = 3221225472; ++pub const IOCSIZE_MASK: u32 = 536805376; ++pub const IOCSIZE_SHIFT: u32 = 16; ++pub const SIOCGSTAMP_OLD: u32 = 35078; ++pub const SIOCGSTAMPNS_OLD: u32 = 35079; ++pub const SOL_SOCKET: u32 = 65535; ++pub const SO_DEBUG: u32 = 1; ++pub const SO_REUSEADDR: u32 = 4; ++pub const SO_KEEPALIVE: u32 = 8; ++pub const SO_DONTROUTE: u32 = 16; ++pub const SO_BROADCAST: u32 = 32; ++pub const SO_LINGER: u32 = 128; ++pub const SO_OOBINLINE: u32 = 256; ++pub const SO_REUSEPORT: u32 = 512; ++pub const SO_TYPE: u32 = 4104; ++pub const SO_STYLE: u32 = 4104; ++pub const SO_ERROR: u32 = 4103; ++pub const SO_SNDBUF: u32 = 4097; ++pub const SO_RCVBUF: u32 = 4098; ++pub const SO_SNDLOWAT: u32 = 4099; ++pub const SO_RCVLOWAT: u32 = 4100; ++pub const SO_SNDTIMEO_OLD: u32 = 4101; ++pub const SO_RCVTIMEO_OLD: u32 = 4102; ++pub const SO_ACCEPTCONN: u32 = 4105; ++pub const SO_PROTOCOL: u32 = 4136; ++pub const SO_DOMAIN: u32 = 4137; ++pub const SO_NO_CHECK: u32 = 11; ++pub const SO_PRIORITY: u32 = 12; ++pub const SO_BSDCOMPAT: u32 = 14; ++pub const SO_PASSCRED: u32 = 17; ++pub const SO_PEERCRED: u32 = 18; ++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_PEERSEC: u32 = 30; ++pub const SO_SNDBUFFORCE: u32 = 31; ++pub const SO_RCVBUFFORCE: u32 = 33; ++pub const SO_PASSSEC: u32 = 34; ++pub const SO_MARK: u32 = 36; ++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_TIMESTAMP: u32 = 29; ++pub const SO_TIMESTAMPNS: u32 = 35; ++pub const SO_TIMESTAMPING: u32 = 37; ++pub const SO_RCVTIMEO: u32 = 4102; ++pub const SO_SNDTIMEO: u32 = 4101; ++pub const SCM_TIMESTAMP: u32 = 29; ++pub const SCM_TIMESTAMPNS: u32 = 35; ++pub const SCM_TIMESTAMPING: u32 = 37; ++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_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 TCP_MD5SIG_MAXKEYLEN: u32 = 80; ++pub const TCP_MD5SIG_FLAG_PREFIX: u32 = 1; ++pub const TCP_MD5SIG_FLAG_IFINDEX: 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 = 2; ++pub const SOCK_DGRAM: u32 = 1; ++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_RAW: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_RAW; ++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_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; ++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; ++#[repr(u32)] ++#[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_RAW = 255, ++IPPROTO_MPTCP = 262, ++IPPROTO_MAX = 263, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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_MAX = 58, ++} ++#[repr(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_4 { ++TCP_FLAG_CWR = 8388608, ++TCP_FLAG_ECE = 4194304, ++TCP_FLAG_URG = 2097152, ++TCP_FLAG_ACK = 1048576, ++TCP_FLAG_PSH = 524288, ++TCP_FLAG_RST = 262144, ++TCP_FLAG_SYN = 131072, ++TCP_FLAG_FIN = 65536, ++TCP_RESERVED_BITS = 251658240, ++TCP_DATA_OFFSET = 4026531840, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(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] ++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]; ++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 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]; ++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 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 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); ++} ++} ++} ++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::new() ++} ++} ++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 version(&self) -> __u8 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) } ++} ++#[inline] ++pub fn set_version(&mut self, val: __u8) { ++unsafe { ++let val: u8 = ::core::mem::transmute(val); ++self._bitfield_1.set(0usize, 4u8, val as u64) ++} ++} ++#[inline] ++pub fn ihl(&self) -> __u8 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) } ++} ++#[inline] ++pub fn set_ihl(&mut self, val: __u8) { ++unsafe { ++let val: u8 = ::core::mem::transmute(val); ++self._bitfield_1.set(4usize, 4u8, val as u64) ++} ++} ++#[inline] ++pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { ++let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); ++__bindgen_bitfield_unit.set(0usize, 4u8, { ++let version: u8 = unsafe { ::core::mem::transmute(version) }; ++version as u64 ++}); ++__bindgen_bitfield_unit.set(4usize, 4u8, { ++let ihl: u8 = unsafe { ::core::mem::transmute(ihl) }; ++ihl as u64 ++}); ++__bindgen_bitfield_unit ++} ++} ++impl ipv6hdr { ++#[inline] ++pub fn version(&self) -> __u8 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) } ++} ++#[inline] ++pub fn set_version(&mut self, val: __u8) { ++unsafe { ++let val: u8 = ::core::mem::transmute(val); ++self._bitfield_1.set(0usize, 4u8, val as u64) ++} ++} ++#[inline] ++pub fn priority(&self) -> __u8 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) } ++} ++#[inline] ++pub fn set_priority(&mut self, val: __u8) { ++unsafe { ++let val: u8 = ::core::mem::transmute(val); ++self._bitfield_1.set(4usize, 4u8, val as u64) ++} ++} ++#[inline] ++pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { ++let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); ++__bindgen_bitfield_unit.set(0usize, 4u8, { ++let version: u8 = unsafe { ::core::mem::transmute(version) }; ++version as u64 ++}); ++__bindgen_bitfield_unit.set(4usize, 4u8, { ++let priority: u8 = unsafe { ::core::mem::transmute(priority) }; ++priority as u64 ++}); ++__bindgen_bitfield_unit ++} ++} ++impl tcphdr { ++#[inline] ++pub fn doff(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) } ++} ++#[inline] ++pub fn set_doff(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(0usize, 4u8, val as u64) ++} ++} ++#[inline] ++pub fn res1(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) } ++} ++#[inline] ++pub fn set_res1(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(4usize, 4u8, val as u64) ++} ++} ++#[inline] ++pub fn cwr(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_cwr(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(8usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn ece(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_ece(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(9usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn urg(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_urg(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(10usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn ack(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_ack(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(11usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn psh(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_psh(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(12usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn rst(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_rst(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(13usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn syn(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_syn(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(14usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn fin(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_fin(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(15usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn new_bitfield_1(doff: __u16, res1: __u16, cwr: __u16, ece: __u16, urg: __u16, ack: __u16, psh: __u16, rst: __u16, syn: __u16, fin: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { ++let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); ++__bindgen_bitfield_unit.set(0usize, 4u8, { ++let doff: u16 = unsafe { ::core::mem::transmute(doff) }; ++doff as u64 ++}); ++__bindgen_bitfield_unit.set(4usize, 4u8, { ++let res1: u16 = unsafe { ::core::mem::transmute(res1) }; ++res1 as u64 ++}); ++__bindgen_bitfield_unit.set(8usize, 1u8, { ++let cwr: u16 = unsafe { ::core::mem::transmute(cwr) }; ++cwr as u64 ++}); ++__bindgen_bitfield_unit.set(9usize, 1u8, { ++let ece: u16 = unsafe { ::core::mem::transmute(ece) }; ++ece as u64 ++}); ++__bindgen_bitfield_unit.set(10usize, 1u8, { ++let urg: u16 = unsafe { ::core::mem::transmute(urg) }; ++urg as u64 ++}); ++__bindgen_bitfield_unit.set(11usize, 1u8, { ++let ack: u16 = unsafe { ::core::mem::transmute(ack) }; ++ack as u64 ++}); ++__bindgen_bitfield_unit.set(12usize, 1u8, { ++let psh: u16 = unsafe { ::core::mem::transmute(psh) }; ++psh as u64 ++}); ++__bindgen_bitfield_unit.set(13usize, 1u8, { ++let rst: u16 = unsafe { ::core::mem::transmute(rst) }; ++rst as u64 ++}); ++__bindgen_bitfield_unit.set(14usize, 1u8, { ++let syn: u16 = unsafe { ::core::mem::transmute(syn) }; ++syn as u64 ++}); ++__bindgen_bitfield_unit.set(15usize, 1u8, { ++let fin: u16 = unsafe { ::core::mem::transmute(fin) }; ++fin 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 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 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 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 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 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; ++} +diff --git a/vendor/linux-raw-sys-0.4.14/src/sw64/netlink.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/netlink.rs +new file mode 100644 +index 00000000000..6fef6bb9750 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/netlink.rs +@@ -0,0 +1,2864 @@ ++/* automatically generated by rust-bindgen 0.66.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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)] ++#[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_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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: 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 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 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_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_MASK: u32 = 15; ++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_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_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_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_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 VNIFILTER_ENTRY_STATS_UNSPEC: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_UNSPEC; ++pub const VNIFILTER_ENTRY_STATS_RX_BYTES: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_RX_BYTES; ++pub const VNIFILTER_ENTRY_STATS_RX_PKTS: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_RX_PKTS; ++pub const VNIFILTER_ENTRY_STATS_RX_DROPS: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_RX_DROPS; ++pub const VNIFILTER_ENTRY_STATS_RX_ERRORS: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_RX_ERRORS; ++pub const VNIFILTER_ENTRY_STATS_TX_BYTES: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_TX_BYTES; ++pub const VNIFILTER_ENTRY_STATS_TX_PKTS: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_TX_PKTS; ++pub const VNIFILTER_ENTRY_STATS_TX_DROPS: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_TX_DROPS; ++pub const VNIFILTER_ENTRY_STATS_TX_ERRORS: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_TX_ERRORS; ++pub const VNIFILTER_ENTRY_STATS_PAD: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_PAD; ++pub const __VNIFILTER_ENTRY_STATS_MAX: _bindgen_ty_18 = _bindgen_ty_18::__VNIFILTER_ENTRY_STATS_MAX; ++pub const VXLAN_VNIFILTER_ENTRY_UNSPEC: _bindgen_ty_19 = _bindgen_ty_19::VXLAN_VNIFILTER_ENTRY_UNSPEC; ++pub const VXLAN_VNIFILTER_ENTRY_START: _bindgen_ty_19 = _bindgen_ty_19::VXLAN_VNIFILTER_ENTRY_START; ++pub const VXLAN_VNIFILTER_ENTRY_END: _bindgen_ty_19 = _bindgen_ty_19::VXLAN_VNIFILTER_ENTRY_END; ++pub const VXLAN_VNIFILTER_ENTRY_GROUP: _bindgen_ty_19 = _bindgen_ty_19::VXLAN_VNIFILTER_ENTRY_GROUP; ++pub const VXLAN_VNIFILTER_ENTRY_GROUP6: _bindgen_ty_19 = _bindgen_ty_19::VXLAN_VNIFILTER_ENTRY_GROUP6; ++pub const VXLAN_VNIFILTER_ENTRY_STATS: _bindgen_ty_19 = _bindgen_ty_19::VXLAN_VNIFILTER_ENTRY_STATS; ++pub const __VXLAN_VNIFILTER_ENTRY_MAX: _bindgen_ty_19 = _bindgen_ty_19::__VXLAN_VNIFILTER_ENTRY_MAX; ++pub const VXLAN_VNIFILTER_UNSPEC: _bindgen_ty_20 = _bindgen_ty_20::VXLAN_VNIFILTER_UNSPEC; ++pub const VXLAN_VNIFILTER_ENTRY: _bindgen_ty_20 = _bindgen_ty_20::VXLAN_VNIFILTER_ENTRY; ++pub const __VXLAN_VNIFILTER_MAX: _bindgen_ty_20 = _bindgen_ty_20::__VXLAN_VNIFILTER_MAX; ++pub const IFLA_VXLAN_UNSPEC: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_UNSPEC; ++pub const IFLA_VXLAN_ID: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_ID; ++pub const IFLA_VXLAN_GROUP: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_GROUP; ++pub const IFLA_VXLAN_LINK: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_LINK; ++pub const IFLA_VXLAN_LOCAL: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_LOCAL; ++pub const IFLA_VXLAN_TTL: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_TTL; ++pub const IFLA_VXLAN_TOS: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_TOS; ++pub const IFLA_VXLAN_LEARNING: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_LEARNING; ++pub const IFLA_VXLAN_AGEING: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_AGEING; ++pub const IFLA_VXLAN_LIMIT: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_LIMIT; ++pub const IFLA_VXLAN_PORT_RANGE: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_PORT_RANGE; ++pub const IFLA_VXLAN_PROXY: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_PROXY; ++pub const IFLA_VXLAN_RSC: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_RSC; ++pub const IFLA_VXLAN_L2MISS: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_L2MISS; ++pub const IFLA_VXLAN_L3MISS: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_L3MISS; ++pub const IFLA_VXLAN_PORT: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_PORT; ++pub const IFLA_VXLAN_GROUP6: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_GROUP6; ++pub const IFLA_VXLAN_LOCAL6: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_LOCAL6; ++pub const IFLA_VXLAN_UDP_CSUM: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_UDP_CSUM; ++pub const IFLA_VXLAN_UDP_ZERO_CSUM6_TX: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_UDP_ZERO_CSUM6_TX; ++pub const IFLA_VXLAN_UDP_ZERO_CSUM6_RX: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_UDP_ZERO_CSUM6_RX; ++pub const IFLA_VXLAN_REMCSUM_TX: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_REMCSUM_TX; ++pub const IFLA_VXLAN_REMCSUM_RX: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_REMCSUM_RX; ++pub const IFLA_VXLAN_GBP: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_GBP; ++pub const IFLA_VXLAN_REMCSUM_NOPARTIAL: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_REMCSUM_NOPARTIAL; ++pub const IFLA_VXLAN_COLLECT_METADATA: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_COLLECT_METADATA; ++pub const IFLA_VXLAN_LABEL: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_LABEL; ++pub const IFLA_VXLAN_GPE: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_GPE; ++pub const IFLA_VXLAN_TTL_INHERIT: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_TTL_INHERIT; ++pub const IFLA_VXLAN_DF: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_DF; ++pub const IFLA_VXLAN_VNIFILTER: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_VNIFILTER; ++pub const __IFLA_VXLAN_MAX: _bindgen_ty_21 = _bindgen_ty_21::__IFLA_VXLAN_MAX; ++pub const IFLA_GENEVE_UNSPEC: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_UNSPEC; ++pub const IFLA_GENEVE_ID: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_ID; ++pub const IFLA_GENEVE_REMOTE: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_REMOTE; ++pub const IFLA_GENEVE_TTL: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_TTL; ++pub const IFLA_GENEVE_TOS: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_TOS; ++pub const IFLA_GENEVE_PORT: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_PORT; ++pub const IFLA_GENEVE_COLLECT_METADATA: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_COLLECT_METADATA; ++pub const IFLA_GENEVE_REMOTE6: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_REMOTE6; ++pub const IFLA_GENEVE_UDP_CSUM: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_UDP_CSUM; ++pub const IFLA_GENEVE_UDP_ZERO_CSUM6_TX: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_UDP_ZERO_CSUM6_TX; ++pub const IFLA_GENEVE_UDP_ZERO_CSUM6_RX: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_UDP_ZERO_CSUM6_RX; ++pub const IFLA_GENEVE_LABEL: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_LABEL; ++pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_TTL_INHERIT; ++pub const IFLA_GENEVE_DF: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_DF; ++pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_INNER_PROTO_INHERIT; ++pub const __IFLA_GENEVE_MAX: _bindgen_ty_22 = _bindgen_ty_22::__IFLA_GENEVE_MAX; ++pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_23 = _bindgen_ty_23::IFLA_BAREUDP_UNSPEC; ++pub const IFLA_BAREUDP_PORT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_BAREUDP_PORT; ++pub const IFLA_BAREUDP_ETHERTYPE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_BAREUDP_ETHERTYPE; ++pub const IFLA_BAREUDP_SRCPORT_MIN: _bindgen_ty_23 = _bindgen_ty_23::IFLA_BAREUDP_SRCPORT_MIN; ++pub const IFLA_BAREUDP_MULTIPROTO_MODE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_BAREUDP_MULTIPROTO_MODE; ++pub const __IFLA_BAREUDP_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_BAREUDP_MAX; ++pub const IFLA_PPP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_PPP_UNSPEC; ++pub const IFLA_PPP_DEV_FD: _bindgen_ty_24 = _bindgen_ty_24::IFLA_PPP_DEV_FD; ++pub const __IFLA_PPP_MAX: _bindgen_ty_24 = _bindgen_ty_24::__IFLA_PPP_MAX; ++pub const IFLA_GTP_UNSPEC: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_UNSPEC; ++pub const IFLA_GTP_FD0: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_FD0; ++pub const IFLA_GTP_FD1: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_FD1; ++pub const IFLA_GTP_PDP_HASHSIZE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_PDP_HASHSIZE; ++pub const IFLA_GTP_ROLE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_ROLE; ++pub const IFLA_GTP_CREATE_SOCKETS: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_CREATE_SOCKETS; ++pub const IFLA_GTP_RESTART_COUNT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_RESTART_COUNT; ++pub const __IFLA_GTP_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GTP_MAX; ++pub const IFLA_BOND_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_UNSPEC; ++pub const IFLA_BOND_MODE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_MODE; ++pub const IFLA_BOND_ACTIVE_SLAVE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_ACTIVE_SLAVE; ++pub const IFLA_BOND_MIIMON: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_MIIMON; ++pub const IFLA_BOND_UPDELAY: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_UPDELAY; ++pub const IFLA_BOND_DOWNDELAY: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_DOWNDELAY; ++pub const IFLA_BOND_USE_CARRIER: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_USE_CARRIER; ++pub const IFLA_BOND_ARP_INTERVAL: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_ARP_INTERVAL; ++pub const IFLA_BOND_ARP_IP_TARGET: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_ARP_IP_TARGET; ++pub const IFLA_BOND_ARP_VALIDATE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_ARP_VALIDATE; ++pub const IFLA_BOND_ARP_ALL_TARGETS: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_ARP_ALL_TARGETS; ++pub const IFLA_BOND_PRIMARY: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_PRIMARY; ++pub const IFLA_BOND_PRIMARY_RESELECT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_PRIMARY_RESELECT; ++pub const IFLA_BOND_FAIL_OVER_MAC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_FAIL_OVER_MAC; ++pub const IFLA_BOND_XMIT_HASH_POLICY: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_XMIT_HASH_POLICY; ++pub const IFLA_BOND_RESEND_IGMP: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_RESEND_IGMP; ++pub const IFLA_BOND_NUM_PEER_NOTIF: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_NUM_PEER_NOTIF; ++pub const IFLA_BOND_ALL_SLAVES_ACTIVE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_ALL_SLAVES_ACTIVE; ++pub const IFLA_BOND_MIN_LINKS: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_MIN_LINKS; ++pub const IFLA_BOND_LP_INTERVAL: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_LP_INTERVAL; ++pub const IFLA_BOND_PACKETS_PER_SLAVE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_PACKETS_PER_SLAVE; ++pub const IFLA_BOND_AD_LACP_RATE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_LACP_RATE; ++pub const IFLA_BOND_AD_SELECT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_SELECT; ++pub const IFLA_BOND_AD_INFO: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_INFO; ++pub const IFLA_BOND_AD_ACTOR_SYS_PRIO: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_ACTOR_SYS_PRIO; ++pub const IFLA_BOND_AD_USER_PORT_KEY: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_USER_PORT_KEY; ++pub const IFLA_BOND_AD_ACTOR_SYSTEM: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_ACTOR_SYSTEM; ++pub const IFLA_BOND_TLB_DYNAMIC_LB: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_TLB_DYNAMIC_LB; ++pub const IFLA_BOND_PEER_NOTIF_DELAY: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_PEER_NOTIF_DELAY; ++pub const IFLA_BOND_AD_LACP_ACTIVE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_LACP_ACTIVE; ++pub const IFLA_BOND_MISSED_MAX: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_MISSED_MAX; ++pub const IFLA_BOND_NS_IP6_TARGET: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_NS_IP6_TARGET; ++pub const __IFLA_BOND_MAX: _bindgen_ty_26 = _bindgen_ty_26::__IFLA_BOND_MAX; ++pub const IFLA_BOND_AD_INFO_UNSPEC: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO_UNSPEC; ++pub const IFLA_BOND_AD_INFO_AGGREGATOR: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO_AGGREGATOR; ++pub const IFLA_BOND_AD_INFO_NUM_PORTS: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO_NUM_PORTS; ++pub const IFLA_BOND_AD_INFO_ACTOR_KEY: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO_ACTOR_KEY; ++pub const IFLA_BOND_AD_INFO_PARTNER_KEY: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO_PARTNER_KEY; ++pub const IFLA_BOND_AD_INFO_PARTNER_MAC: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO_PARTNER_MAC; ++pub const __IFLA_BOND_AD_INFO_MAX: _bindgen_ty_27 = _bindgen_ty_27::__IFLA_BOND_AD_INFO_MAX; ++pub const IFLA_BOND_SLAVE_UNSPEC: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_UNSPEC; ++pub const IFLA_BOND_SLAVE_STATE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_STATE; ++pub const IFLA_BOND_SLAVE_MII_STATUS: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_MII_STATUS; ++pub const IFLA_BOND_SLAVE_LINK_FAILURE_COUNT: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_LINK_FAILURE_COUNT; ++pub const IFLA_BOND_SLAVE_PERM_HWADDR: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_PERM_HWADDR; ++pub const IFLA_BOND_SLAVE_QUEUE_ID: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_QUEUE_ID; ++pub const IFLA_BOND_SLAVE_AD_AGGREGATOR_ID: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_AD_AGGREGATOR_ID; ++pub const IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE; ++pub const IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE; ++pub const IFLA_BOND_SLAVE_PRIO: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_PRIO; ++pub const __IFLA_BOND_SLAVE_MAX: _bindgen_ty_28 = _bindgen_ty_28::__IFLA_BOND_SLAVE_MAX; ++pub const IFLA_VF_INFO_UNSPEC: _bindgen_ty_29 = _bindgen_ty_29::IFLA_VF_INFO_UNSPEC; ++pub const IFLA_VF_INFO: _bindgen_ty_29 = _bindgen_ty_29::IFLA_VF_INFO; ++pub const __IFLA_VF_INFO_MAX: _bindgen_ty_29 = _bindgen_ty_29::__IFLA_VF_INFO_MAX; ++pub const IFLA_VF_UNSPEC: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_UNSPEC; ++pub const IFLA_VF_MAC: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_MAC; ++pub const IFLA_VF_VLAN: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_VLAN; ++pub const IFLA_VF_TX_RATE: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_TX_RATE; ++pub const IFLA_VF_SPOOFCHK: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_SPOOFCHK; ++pub const IFLA_VF_LINK_STATE: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_LINK_STATE; ++pub const IFLA_VF_RATE: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_RATE; ++pub const IFLA_VF_RSS_QUERY_EN: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_RSS_QUERY_EN; ++pub const IFLA_VF_STATS: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_STATS; ++pub const IFLA_VF_TRUST: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_TRUST; ++pub const IFLA_VF_IB_NODE_GUID: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_IB_NODE_GUID; ++pub const IFLA_VF_IB_PORT_GUID: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_IB_PORT_GUID; ++pub const IFLA_VF_VLAN_LIST: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_VLAN_LIST; ++pub const IFLA_VF_BROADCAST: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_BROADCAST; ++pub const __IFLA_VF_MAX: _bindgen_ty_30 = _bindgen_ty_30::__IFLA_VF_MAX; ++pub const IFLA_VF_VLAN_INFO_UNSPEC: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_VLAN_INFO_UNSPEC; ++pub const IFLA_VF_VLAN_INFO: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_VLAN_INFO; ++pub const __IFLA_VF_VLAN_INFO_MAX: _bindgen_ty_31 = _bindgen_ty_31::__IFLA_VF_VLAN_INFO_MAX; ++pub const IFLA_VF_LINK_STATE_AUTO: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_LINK_STATE_AUTO; ++pub const IFLA_VF_LINK_STATE_ENABLE: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_LINK_STATE_ENABLE; ++pub const IFLA_VF_LINK_STATE_DISABLE: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_LINK_STATE_DISABLE; ++pub const __IFLA_VF_LINK_STATE_MAX: _bindgen_ty_32 = _bindgen_ty_32::__IFLA_VF_LINK_STATE_MAX; ++pub const IFLA_VF_STATS_RX_PACKETS: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_RX_PACKETS; ++pub const IFLA_VF_STATS_TX_PACKETS: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_TX_PACKETS; ++pub const IFLA_VF_STATS_RX_BYTES: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_RX_BYTES; ++pub const IFLA_VF_STATS_TX_BYTES: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_TX_BYTES; ++pub const IFLA_VF_STATS_BROADCAST: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_BROADCAST; ++pub const IFLA_VF_STATS_MULTICAST: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_MULTICAST; ++pub const IFLA_VF_STATS_PAD: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_PAD; ++pub const IFLA_VF_STATS_RX_DROPPED: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_RX_DROPPED; ++pub const IFLA_VF_STATS_TX_DROPPED: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_TX_DROPPED; ++pub const __IFLA_VF_STATS_MAX: _bindgen_ty_33 = _bindgen_ty_33::__IFLA_VF_STATS_MAX; ++pub const IFLA_VF_PORT_UNSPEC: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_PORT_UNSPEC; ++pub const IFLA_VF_PORT: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_PORT; ++pub const __IFLA_VF_PORT_MAX: _bindgen_ty_34 = _bindgen_ty_34::__IFLA_VF_PORT_MAX; ++pub const IFLA_PORT_UNSPEC: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_UNSPEC; ++pub const IFLA_PORT_VF: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_VF; ++pub const IFLA_PORT_PROFILE: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_PROFILE; ++pub const IFLA_PORT_VSI_TYPE: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_VSI_TYPE; ++pub const IFLA_PORT_INSTANCE_UUID: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_INSTANCE_UUID; ++pub const IFLA_PORT_HOST_UUID: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_HOST_UUID; ++pub const IFLA_PORT_REQUEST: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_REQUEST; ++pub const IFLA_PORT_RESPONSE: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_RESPONSE; ++pub const __IFLA_PORT_MAX: _bindgen_ty_35 = _bindgen_ty_35::__IFLA_PORT_MAX; ++pub const PORT_REQUEST_PREASSOCIATE: _bindgen_ty_36 = _bindgen_ty_36::PORT_REQUEST_PREASSOCIATE; ++pub const PORT_REQUEST_PREASSOCIATE_RR: _bindgen_ty_36 = _bindgen_ty_36::PORT_REQUEST_PREASSOCIATE_RR; ++pub const PORT_REQUEST_ASSOCIATE: _bindgen_ty_36 = _bindgen_ty_36::PORT_REQUEST_ASSOCIATE; ++pub const PORT_REQUEST_DISASSOCIATE: _bindgen_ty_36 = _bindgen_ty_36::PORT_REQUEST_DISASSOCIATE; ++pub const PORT_VDP_RESPONSE_SUCCESS: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_SUCCESS; ++pub const PORT_VDP_RESPONSE_INVALID_FORMAT: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_INVALID_FORMAT; ++pub const PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES; ++pub const PORT_VDP_RESPONSE_UNUSED_VTID: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_UNUSED_VTID; ++pub const PORT_VDP_RESPONSE_VTID_VIOLATION: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_VTID_VIOLATION; ++pub const PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION; ++pub const PORT_VDP_RESPONSE_OUT_OF_SYNC: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_OUT_OF_SYNC; ++pub const PORT_PROFILE_RESPONSE_SUCCESS: _bindgen_ty_37 = _bindgen_ty_37::PORT_PROFILE_RESPONSE_SUCCESS; ++pub const PORT_PROFILE_RESPONSE_INPROGRESS: _bindgen_ty_37 = _bindgen_ty_37::PORT_PROFILE_RESPONSE_INPROGRESS; ++pub const PORT_PROFILE_RESPONSE_INVALID: _bindgen_ty_37 = _bindgen_ty_37::PORT_PROFILE_RESPONSE_INVALID; ++pub const PORT_PROFILE_RESPONSE_BADSTATE: _bindgen_ty_37 = _bindgen_ty_37::PORT_PROFILE_RESPONSE_BADSTATE; ++pub const PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_37 = _bindgen_ty_37::PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES; ++pub const PORT_PROFILE_RESPONSE_ERROR: _bindgen_ty_37 = _bindgen_ty_37::PORT_PROFILE_RESPONSE_ERROR; ++pub const IFLA_IPOIB_UNSPEC: _bindgen_ty_38 = _bindgen_ty_38::IFLA_IPOIB_UNSPEC; ++pub const IFLA_IPOIB_PKEY: _bindgen_ty_38 = _bindgen_ty_38::IFLA_IPOIB_PKEY; ++pub const IFLA_IPOIB_MODE: _bindgen_ty_38 = _bindgen_ty_38::IFLA_IPOIB_MODE; ++pub const IFLA_IPOIB_UMCAST: _bindgen_ty_38 = _bindgen_ty_38::IFLA_IPOIB_UMCAST; ++pub const __IFLA_IPOIB_MAX: _bindgen_ty_38 = _bindgen_ty_38::__IFLA_IPOIB_MAX; ++pub const IPOIB_MODE_DATAGRAM: _bindgen_ty_39 = _bindgen_ty_39::IPOIB_MODE_DATAGRAM; ++pub const IPOIB_MODE_CONNECTED: _bindgen_ty_39 = _bindgen_ty_39::IPOIB_MODE_CONNECTED; ++pub const HSR_PROTOCOL_HSR: _bindgen_ty_40 = _bindgen_ty_40::HSR_PROTOCOL_HSR; ++pub const HSR_PROTOCOL_PRP: _bindgen_ty_40 = _bindgen_ty_40::HSR_PROTOCOL_PRP; ++pub const HSR_PROTOCOL_MAX: _bindgen_ty_40 = _bindgen_ty_40::HSR_PROTOCOL_MAX; ++pub const IFLA_HSR_UNSPEC: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_UNSPEC; ++pub const IFLA_HSR_SLAVE1: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_SLAVE1; ++pub const IFLA_HSR_SLAVE2: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_SLAVE2; ++pub const IFLA_HSR_MULTICAST_SPEC: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_MULTICAST_SPEC; ++pub const IFLA_HSR_SUPERVISION_ADDR: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_SUPERVISION_ADDR; ++pub const IFLA_HSR_SEQ_NR: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_SEQ_NR; ++pub const IFLA_HSR_VERSION: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_VERSION; ++pub const IFLA_HSR_PROTOCOL: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_PROTOCOL; ++pub const __IFLA_HSR_MAX: _bindgen_ty_41 = _bindgen_ty_41::__IFLA_HSR_MAX; ++pub const IFLA_STATS_UNSPEC: _bindgen_ty_42 = _bindgen_ty_42::IFLA_STATS_UNSPEC; ++pub const IFLA_STATS_LINK_64: _bindgen_ty_42 = _bindgen_ty_42::IFLA_STATS_LINK_64; ++pub const IFLA_STATS_LINK_XSTATS: _bindgen_ty_42 = _bindgen_ty_42::IFLA_STATS_LINK_XSTATS; ++pub const IFLA_STATS_LINK_XSTATS_SLAVE: _bindgen_ty_42 = _bindgen_ty_42::IFLA_STATS_LINK_XSTATS_SLAVE; ++pub const IFLA_STATS_LINK_OFFLOAD_XSTATS: _bindgen_ty_42 = _bindgen_ty_42::IFLA_STATS_LINK_OFFLOAD_XSTATS; ++pub const IFLA_STATS_AF_SPEC: _bindgen_ty_42 = _bindgen_ty_42::IFLA_STATS_AF_SPEC; ++pub const __IFLA_STATS_MAX: _bindgen_ty_42 = _bindgen_ty_42::__IFLA_STATS_MAX; ++pub const IFLA_STATS_GETSET_UNSPEC: _bindgen_ty_43 = _bindgen_ty_43::IFLA_STATS_GETSET_UNSPEC; ++pub const IFLA_STATS_GET_FILTERS: _bindgen_ty_43 = _bindgen_ty_43::IFLA_STATS_GET_FILTERS; ++pub const IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_43 = _bindgen_ty_43::IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS; ++pub const __IFLA_STATS_GETSET_MAX: _bindgen_ty_43 = _bindgen_ty_43::__IFLA_STATS_GETSET_MAX; ++pub const LINK_XSTATS_TYPE_UNSPEC: _bindgen_ty_44 = _bindgen_ty_44::LINK_XSTATS_TYPE_UNSPEC; ++pub const LINK_XSTATS_TYPE_BRIDGE: _bindgen_ty_44 = _bindgen_ty_44::LINK_XSTATS_TYPE_BRIDGE; ++pub const LINK_XSTATS_TYPE_BOND: _bindgen_ty_44 = _bindgen_ty_44::LINK_XSTATS_TYPE_BOND; ++pub const __LINK_XSTATS_TYPE_MAX: _bindgen_ty_44 = _bindgen_ty_44::__LINK_XSTATS_TYPE_MAX; ++pub const IFLA_OFFLOAD_XSTATS_UNSPEC: _bindgen_ty_45 = _bindgen_ty_45::IFLA_OFFLOAD_XSTATS_UNSPEC; ++pub const IFLA_OFFLOAD_XSTATS_CPU_HIT: _bindgen_ty_45 = _bindgen_ty_45::IFLA_OFFLOAD_XSTATS_CPU_HIT; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO: _bindgen_ty_45 = _bindgen_ty_45::IFLA_OFFLOAD_XSTATS_HW_S_INFO; ++pub const IFLA_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_45 = _bindgen_ty_45::IFLA_OFFLOAD_XSTATS_L3_STATS; ++pub const __IFLA_OFFLOAD_XSTATS_MAX: _bindgen_ty_45 = _bindgen_ty_45::__IFLA_OFFLOAD_XSTATS_MAX; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC: _bindgen_ty_46 = _bindgen_ty_46::IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST: _bindgen_ty_46 = _bindgen_ty_46::IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED: _bindgen_ty_46 = _bindgen_ty_46::IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED; ++pub const __IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX: _bindgen_ty_46 = _bindgen_ty_46::__IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX; ++pub const XDP_ATTACHED_NONE: _bindgen_ty_47 = _bindgen_ty_47::XDP_ATTACHED_NONE; ++pub const XDP_ATTACHED_DRV: _bindgen_ty_47 = _bindgen_ty_47::XDP_ATTACHED_DRV; ++pub const XDP_ATTACHED_SKB: _bindgen_ty_47 = _bindgen_ty_47::XDP_ATTACHED_SKB; ++pub const XDP_ATTACHED_HW: _bindgen_ty_47 = _bindgen_ty_47::XDP_ATTACHED_HW; ++pub const XDP_ATTACHED_MULTI: _bindgen_ty_47 = _bindgen_ty_47::XDP_ATTACHED_MULTI; ++pub const IFLA_XDP_UNSPEC: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_UNSPEC; ++pub const IFLA_XDP_FD: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_FD; ++pub const IFLA_XDP_ATTACHED: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_ATTACHED; ++pub const IFLA_XDP_FLAGS: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_FLAGS; ++pub const IFLA_XDP_PROG_ID: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_PROG_ID; ++pub const IFLA_XDP_DRV_PROG_ID: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_DRV_PROG_ID; ++pub const IFLA_XDP_SKB_PROG_ID: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_SKB_PROG_ID; ++pub const IFLA_XDP_HW_PROG_ID: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_HW_PROG_ID; ++pub const IFLA_XDP_EXPECTED_FD: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_EXPECTED_FD; ++pub const __IFLA_XDP_MAX: _bindgen_ty_48 = _bindgen_ty_48::__IFLA_XDP_MAX; ++pub const IFLA_EVENT_NONE: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_NONE; ++pub const IFLA_EVENT_REBOOT: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_REBOOT; ++pub const IFLA_EVENT_FEATURES: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_FEATURES; ++pub const IFLA_EVENT_BONDING_FAILOVER: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_BONDING_FAILOVER; ++pub const IFLA_EVENT_NOTIFY_PEERS: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_NOTIFY_PEERS; ++pub const IFLA_EVENT_IGMP_RESEND: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_IGMP_RESEND; ++pub const IFLA_EVENT_BONDING_OPTIONS: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_BONDING_OPTIONS; ++pub const IFLA_TUN_UNSPEC: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_UNSPEC; ++pub const IFLA_TUN_OWNER: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_OWNER; ++pub const IFLA_TUN_GROUP: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_GROUP; ++pub const IFLA_TUN_TYPE: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_TYPE; ++pub const IFLA_TUN_PI: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_PI; ++pub const IFLA_TUN_VNET_HDR: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_VNET_HDR; ++pub const IFLA_TUN_PERSIST: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_PERSIST; ++pub const IFLA_TUN_MULTI_QUEUE: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_MULTI_QUEUE; ++pub const IFLA_TUN_NUM_QUEUES: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_NUM_QUEUES; ++pub const IFLA_TUN_NUM_DISABLED_QUEUES: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_NUM_DISABLED_QUEUES; ++pub const __IFLA_TUN_MAX: _bindgen_ty_50 = _bindgen_ty_50::__IFLA_TUN_MAX; ++pub const IFLA_RMNET_UNSPEC: _bindgen_ty_51 = _bindgen_ty_51::IFLA_RMNET_UNSPEC; ++pub const IFLA_RMNET_MUX_ID: _bindgen_ty_51 = _bindgen_ty_51::IFLA_RMNET_MUX_ID; ++pub const IFLA_RMNET_FLAGS: _bindgen_ty_51 = _bindgen_ty_51::IFLA_RMNET_FLAGS; ++pub const __IFLA_RMNET_MAX: _bindgen_ty_51 = _bindgen_ty_51::__IFLA_RMNET_MAX; ++pub const IFLA_MCTP_UNSPEC: _bindgen_ty_52 = _bindgen_ty_52::IFLA_MCTP_UNSPEC; ++pub const IFLA_MCTP_NET: _bindgen_ty_52 = _bindgen_ty_52::IFLA_MCTP_NET; ++pub const __IFLA_MCTP_MAX: _bindgen_ty_52 = _bindgen_ty_52::__IFLA_MCTP_MAX; ++pub const IFLA_DSA_UNSPEC: _bindgen_ty_53 = _bindgen_ty_53::IFLA_DSA_UNSPEC; ++pub const IFLA_DSA_MASTER: _bindgen_ty_53 = _bindgen_ty_53::IFLA_DSA_MASTER; ++pub const __IFLA_DSA_MAX: _bindgen_ty_53 = _bindgen_ty_53::__IFLA_DSA_MAX; ++pub const IFA_UNSPEC: _bindgen_ty_54 = _bindgen_ty_54::IFA_UNSPEC; ++pub const IFA_ADDRESS: _bindgen_ty_54 = _bindgen_ty_54::IFA_ADDRESS; ++pub const IFA_LOCAL: _bindgen_ty_54 = _bindgen_ty_54::IFA_LOCAL; ++pub const IFA_LABEL: _bindgen_ty_54 = _bindgen_ty_54::IFA_LABEL; ++pub const IFA_BROADCAST: _bindgen_ty_54 = _bindgen_ty_54::IFA_BROADCAST; ++pub const IFA_ANYCAST: _bindgen_ty_54 = _bindgen_ty_54::IFA_ANYCAST; ++pub const IFA_CACHEINFO: _bindgen_ty_54 = _bindgen_ty_54::IFA_CACHEINFO; ++pub const IFA_MULTICAST: _bindgen_ty_54 = _bindgen_ty_54::IFA_MULTICAST; ++pub const IFA_FLAGS: _bindgen_ty_54 = _bindgen_ty_54::IFA_FLAGS; ++pub const IFA_RT_PRIORITY: _bindgen_ty_54 = _bindgen_ty_54::IFA_RT_PRIORITY; ++pub const IFA_TARGET_NETNSID: _bindgen_ty_54 = _bindgen_ty_54::IFA_TARGET_NETNSID; ++pub const IFA_PROTO: _bindgen_ty_54 = _bindgen_ty_54::IFA_PROTO; ++pub const __IFA_MAX: _bindgen_ty_54 = _bindgen_ty_54::__IFA_MAX; ++pub const NDA_UNSPEC: _bindgen_ty_55 = _bindgen_ty_55::NDA_UNSPEC; ++pub const NDA_DST: _bindgen_ty_55 = _bindgen_ty_55::NDA_DST; ++pub const NDA_LLADDR: _bindgen_ty_55 = _bindgen_ty_55::NDA_LLADDR; ++pub const NDA_CACHEINFO: _bindgen_ty_55 = _bindgen_ty_55::NDA_CACHEINFO; ++pub const NDA_PROBES: _bindgen_ty_55 = _bindgen_ty_55::NDA_PROBES; ++pub const NDA_VLAN: _bindgen_ty_55 = _bindgen_ty_55::NDA_VLAN; ++pub const NDA_PORT: _bindgen_ty_55 = _bindgen_ty_55::NDA_PORT; ++pub const NDA_VNI: _bindgen_ty_55 = _bindgen_ty_55::NDA_VNI; ++pub const NDA_IFINDEX: _bindgen_ty_55 = _bindgen_ty_55::NDA_IFINDEX; ++pub const NDA_MASTER: _bindgen_ty_55 = _bindgen_ty_55::NDA_MASTER; ++pub const NDA_LINK_NETNSID: _bindgen_ty_55 = _bindgen_ty_55::NDA_LINK_NETNSID; ++pub const NDA_SRC_VNI: _bindgen_ty_55 = _bindgen_ty_55::NDA_SRC_VNI; ++pub const NDA_PROTOCOL: _bindgen_ty_55 = _bindgen_ty_55::NDA_PROTOCOL; ++pub const NDA_NH_ID: _bindgen_ty_55 = _bindgen_ty_55::NDA_NH_ID; ++pub const NDA_FDB_EXT_ATTRS: _bindgen_ty_55 = _bindgen_ty_55::NDA_FDB_EXT_ATTRS; ++pub const NDA_FLAGS_EXT: _bindgen_ty_55 = _bindgen_ty_55::NDA_FLAGS_EXT; ++pub const NDA_NDM_STATE_MASK: _bindgen_ty_55 = _bindgen_ty_55::NDA_NDM_STATE_MASK; ++pub const NDA_NDM_FLAGS_MASK: _bindgen_ty_55 = _bindgen_ty_55::NDA_NDM_FLAGS_MASK; ++pub const __NDA_MAX: _bindgen_ty_55 = _bindgen_ty_55::__NDA_MAX; ++pub const NDTPA_UNSPEC: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_UNSPEC; ++pub const NDTPA_IFINDEX: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_IFINDEX; ++pub const NDTPA_REFCNT: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_REFCNT; ++pub const NDTPA_REACHABLE_TIME: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_REACHABLE_TIME; ++pub const NDTPA_BASE_REACHABLE_TIME: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_BASE_REACHABLE_TIME; ++pub const NDTPA_RETRANS_TIME: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_RETRANS_TIME; ++pub const NDTPA_GC_STALETIME: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_GC_STALETIME; ++pub const NDTPA_DELAY_PROBE_TIME: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_DELAY_PROBE_TIME; ++pub const NDTPA_QUEUE_LEN: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_QUEUE_LEN; ++pub const NDTPA_APP_PROBES: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_APP_PROBES; ++pub const NDTPA_UCAST_PROBES: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_UCAST_PROBES; ++pub const NDTPA_MCAST_PROBES: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_MCAST_PROBES; ++pub const NDTPA_ANYCAST_DELAY: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_ANYCAST_DELAY; ++pub const NDTPA_PROXY_DELAY: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_PROXY_DELAY; ++pub const NDTPA_PROXY_QLEN: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_PROXY_QLEN; ++pub const NDTPA_LOCKTIME: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_LOCKTIME; ++pub const NDTPA_QUEUE_LENBYTES: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_QUEUE_LENBYTES; ++pub const NDTPA_MCAST_REPROBES: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_MCAST_REPROBES; ++pub const NDTPA_PAD: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_PAD; ++pub const NDTPA_INTERVAL_PROBE_TIME_MS: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_INTERVAL_PROBE_TIME_MS; ++pub const __NDTPA_MAX: _bindgen_ty_56 = _bindgen_ty_56::__NDTPA_MAX; ++pub const NDTA_UNSPEC: _bindgen_ty_57 = _bindgen_ty_57::NDTA_UNSPEC; ++pub const NDTA_NAME: _bindgen_ty_57 = _bindgen_ty_57::NDTA_NAME; ++pub const NDTA_THRESH1: _bindgen_ty_57 = _bindgen_ty_57::NDTA_THRESH1; ++pub const NDTA_THRESH2: _bindgen_ty_57 = _bindgen_ty_57::NDTA_THRESH2; ++pub const NDTA_THRESH3: _bindgen_ty_57 = _bindgen_ty_57::NDTA_THRESH3; ++pub const NDTA_CONFIG: _bindgen_ty_57 = _bindgen_ty_57::NDTA_CONFIG; ++pub const NDTA_PARMS: _bindgen_ty_57 = _bindgen_ty_57::NDTA_PARMS; ++pub const NDTA_STATS: _bindgen_ty_57 = _bindgen_ty_57::NDTA_STATS; ++pub const NDTA_GC_INTERVAL: _bindgen_ty_57 = _bindgen_ty_57::NDTA_GC_INTERVAL; ++pub const NDTA_PAD: _bindgen_ty_57 = _bindgen_ty_57::NDTA_PAD; ++pub const __NDTA_MAX: _bindgen_ty_57 = _bindgen_ty_57::__NDTA_MAX; ++pub const FDB_NOTIFY_BIT: _bindgen_ty_58 = _bindgen_ty_58::FDB_NOTIFY_BIT; ++pub const FDB_NOTIFY_INACTIVE_BIT: _bindgen_ty_58 = _bindgen_ty_58::FDB_NOTIFY_INACTIVE_BIT; ++pub const NFEA_UNSPEC: _bindgen_ty_59 = _bindgen_ty_59::NFEA_UNSPEC; ++pub const NFEA_ACTIVITY_NOTIFY: _bindgen_ty_59 = _bindgen_ty_59::NFEA_ACTIVITY_NOTIFY; ++pub const NFEA_DONT_REFRESH: _bindgen_ty_59 = _bindgen_ty_59::NFEA_DONT_REFRESH; ++pub const __NFEA_MAX: _bindgen_ty_59 = _bindgen_ty_59::__NFEA_MAX; ++pub const RTM_BASE: _bindgen_ty_60 = _bindgen_ty_60::RTM_BASE; ++pub const RTM_NEWLINK: _bindgen_ty_60 = _bindgen_ty_60::RTM_BASE; ++pub const RTM_DELLINK: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELLINK; ++pub const RTM_GETLINK: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETLINK; ++pub const RTM_SETLINK: _bindgen_ty_60 = _bindgen_ty_60::RTM_SETLINK; ++pub const RTM_NEWADDR: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWADDR; ++pub const RTM_DELADDR: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELADDR; ++pub const RTM_GETADDR: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETADDR; ++pub const RTM_NEWROUTE: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWROUTE; ++pub const RTM_DELROUTE: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELROUTE; ++pub const RTM_GETROUTE: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETROUTE; ++pub const RTM_NEWNEIGH: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNEIGH; ++pub const RTM_DELNEIGH: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELNEIGH; ++pub const RTM_GETNEIGH: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETNEIGH; ++pub const RTM_NEWRULE: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWRULE; ++pub const RTM_DELRULE: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELRULE; ++pub const RTM_GETRULE: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETRULE; ++pub const RTM_NEWQDISC: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWQDISC; ++pub const RTM_DELQDISC: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELQDISC; ++pub const RTM_GETQDISC: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETQDISC; ++pub const RTM_NEWTCLASS: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWTCLASS; ++pub const RTM_DELTCLASS: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELTCLASS; ++pub const RTM_GETTCLASS: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETTCLASS; ++pub const RTM_NEWTFILTER: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWTFILTER; ++pub const RTM_DELTFILTER: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELTFILTER; ++pub const RTM_GETTFILTER: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETTFILTER; ++pub const RTM_NEWACTION: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWACTION; ++pub const RTM_DELACTION: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELACTION; ++pub const RTM_GETACTION: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETACTION; ++pub const RTM_NEWPREFIX: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWPREFIX; ++pub const RTM_GETMULTICAST: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETMULTICAST; ++pub const RTM_GETANYCAST: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETANYCAST; ++pub const RTM_NEWNEIGHTBL: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNEIGHTBL; ++pub const RTM_GETNEIGHTBL: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETNEIGHTBL; ++pub const RTM_SETNEIGHTBL: _bindgen_ty_60 = _bindgen_ty_60::RTM_SETNEIGHTBL; ++pub const RTM_NEWNDUSEROPT: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNDUSEROPT; ++pub const RTM_NEWADDRLABEL: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWADDRLABEL; ++pub const RTM_DELADDRLABEL: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELADDRLABEL; ++pub const RTM_GETADDRLABEL: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETADDRLABEL; ++pub const RTM_GETDCB: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETDCB; ++pub const RTM_SETDCB: _bindgen_ty_60 = _bindgen_ty_60::RTM_SETDCB; ++pub const RTM_NEWNETCONF: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNETCONF; ++pub const RTM_DELNETCONF: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELNETCONF; ++pub const RTM_GETNETCONF: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETNETCONF; ++pub const RTM_NEWMDB: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWMDB; ++pub const RTM_DELMDB: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELMDB; ++pub const RTM_GETMDB: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETMDB; ++pub const RTM_NEWNSID: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNSID; ++pub const RTM_DELNSID: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELNSID; ++pub const RTM_GETNSID: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETNSID; ++pub const RTM_NEWSTATS: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWSTATS; ++pub const RTM_GETSTATS: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETSTATS; ++pub const RTM_SETSTATS: _bindgen_ty_60 = _bindgen_ty_60::RTM_SETSTATS; ++pub const RTM_NEWCACHEREPORT: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWCACHEREPORT; ++pub const RTM_NEWCHAIN: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWCHAIN; ++pub const RTM_DELCHAIN: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELCHAIN; ++pub const RTM_GETCHAIN: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETCHAIN; ++pub const RTM_NEWNEXTHOP: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNEXTHOP; ++pub const RTM_DELNEXTHOP: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELNEXTHOP; ++pub const RTM_GETNEXTHOP: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETNEXTHOP; ++pub const RTM_NEWLINKPROP: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWLINKPROP; ++pub const RTM_DELLINKPROP: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELLINKPROP; ++pub const RTM_GETLINKPROP: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETLINKPROP; ++pub const RTM_NEWVLAN: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWVLAN; ++pub const RTM_DELVLAN: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELVLAN; ++pub const RTM_GETVLAN: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETVLAN; ++pub const RTM_NEWNEXTHOPBUCKET: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNEXTHOPBUCKET; ++pub const RTM_DELNEXTHOPBUCKET: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELNEXTHOPBUCKET; ++pub const RTM_GETNEXTHOPBUCKET: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETNEXTHOPBUCKET; ++pub const RTM_NEWTUNNEL: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWTUNNEL; ++pub const RTM_DELTUNNEL: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELTUNNEL; ++pub const RTM_GETTUNNEL: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETTUNNEL; ++pub const __RTM_MAX: _bindgen_ty_60 = _bindgen_ty_60::__RTM_MAX; ++pub const RTN_UNSPEC: _bindgen_ty_61 = _bindgen_ty_61::RTN_UNSPEC; ++pub const RTN_UNICAST: _bindgen_ty_61 = _bindgen_ty_61::RTN_UNICAST; ++pub const RTN_LOCAL: _bindgen_ty_61 = _bindgen_ty_61::RTN_LOCAL; ++pub const RTN_BROADCAST: _bindgen_ty_61 = _bindgen_ty_61::RTN_BROADCAST; ++pub const RTN_ANYCAST: _bindgen_ty_61 = _bindgen_ty_61::RTN_ANYCAST; ++pub const RTN_MULTICAST: _bindgen_ty_61 = _bindgen_ty_61::RTN_MULTICAST; ++pub const RTN_BLACKHOLE: _bindgen_ty_61 = _bindgen_ty_61::RTN_BLACKHOLE; ++pub const RTN_UNREACHABLE: _bindgen_ty_61 = _bindgen_ty_61::RTN_UNREACHABLE; ++pub const RTN_PROHIBIT: _bindgen_ty_61 = _bindgen_ty_61::RTN_PROHIBIT; ++pub const RTN_THROW: _bindgen_ty_61 = _bindgen_ty_61::RTN_THROW; ++pub const RTN_NAT: _bindgen_ty_61 = _bindgen_ty_61::RTN_NAT; ++pub const RTN_XRESOLVE: _bindgen_ty_61 = _bindgen_ty_61::RTN_XRESOLVE; ++pub const __RTN_MAX: _bindgen_ty_61 = _bindgen_ty_61::__RTN_MAX; ++pub const RTAX_UNSPEC: _bindgen_ty_62 = _bindgen_ty_62::RTAX_UNSPEC; ++pub const RTAX_LOCK: _bindgen_ty_62 = _bindgen_ty_62::RTAX_LOCK; ++pub const RTAX_MTU: _bindgen_ty_62 = _bindgen_ty_62::RTAX_MTU; ++pub const RTAX_WINDOW: _bindgen_ty_62 = _bindgen_ty_62::RTAX_WINDOW; ++pub const RTAX_RTT: _bindgen_ty_62 = _bindgen_ty_62::RTAX_RTT; ++pub const RTAX_RTTVAR: _bindgen_ty_62 = _bindgen_ty_62::RTAX_RTTVAR; ++pub const RTAX_SSTHRESH: _bindgen_ty_62 = _bindgen_ty_62::RTAX_SSTHRESH; ++pub const RTAX_CWND: _bindgen_ty_62 = _bindgen_ty_62::RTAX_CWND; ++pub const RTAX_ADVMSS: _bindgen_ty_62 = _bindgen_ty_62::RTAX_ADVMSS; ++pub const RTAX_REORDERING: _bindgen_ty_62 = _bindgen_ty_62::RTAX_REORDERING; ++pub const RTAX_HOPLIMIT: _bindgen_ty_62 = _bindgen_ty_62::RTAX_HOPLIMIT; ++pub const RTAX_INITCWND: _bindgen_ty_62 = _bindgen_ty_62::RTAX_INITCWND; ++pub const RTAX_FEATURES: _bindgen_ty_62 = _bindgen_ty_62::RTAX_FEATURES; ++pub const RTAX_RTO_MIN: _bindgen_ty_62 = _bindgen_ty_62::RTAX_RTO_MIN; ++pub const RTAX_INITRWND: _bindgen_ty_62 = _bindgen_ty_62::RTAX_INITRWND; ++pub const RTAX_QUICKACK: _bindgen_ty_62 = _bindgen_ty_62::RTAX_QUICKACK; ++pub const RTAX_CC_ALGO: _bindgen_ty_62 = _bindgen_ty_62::RTAX_CC_ALGO; ++pub const RTAX_FASTOPEN_NO_COOKIE: _bindgen_ty_62 = _bindgen_ty_62::RTAX_FASTOPEN_NO_COOKIE; ++pub const __RTAX_MAX: _bindgen_ty_62 = _bindgen_ty_62::__RTAX_MAX; ++pub const PREFIX_UNSPEC: _bindgen_ty_63 = _bindgen_ty_63::PREFIX_UNSPEC; ++pub const PREFIX_ADDRESS: _bindgen_ty_63 = _bindgen_ty_63::PREFIX_ADDRESS; ++pub const PREFIX_CACHEINFO: _bindgen_ty_63 = _bindgen_ty_63::PREFIX_CACHEINFO; ++pub const __PREFIX_MAX: _bindgen_ty_63 = _bindgen_ty_63::__PREFIX_MAX; ++pub const TCA_UNSPEC: _bindgen_ty_64 = _bindgen_ty_64::TCA_UNSPEC; ++pub const TCA_KIND: _bindgen_ty_64 = _bindgen_ty_64::TCA_KIND; ++pub const TCA_OPTIONS: _bindgen_ty_64 = _bindgen_ty_64::TCA_OPTIONS; ++pub const TCA_STATS: _bindgen_ty_64 = _bindgen_ty_64::TCA_STATS; ++pub const TCA_XSTATS: _bindgen_ty_64 = _bindgen_ty_64::TCA_XSTATS; ++pub const TCA_RATE: _bindgen_ty_64 = _bindgen_ty_64::TCA_RATE; ++pub const TCA_FCNT: _bindgen_ty_64 = _bindgen_ty_64::TCA_FCNT; ++pub const TCA_STATS2: _bindgen_ty_64 = _bindgen_ty_64::TCA_STATS2; ++pub const TCA_STAB: _bindgen_ty_64 = _bindgen_ty_64::TCA_STAB; ++pub const TCA_PAD: _bindgen_ty_64 = _bindgen_ty_64::TCA_PAD; ++pub const TCA_DUMP_INVISIBLE: _bindgen_ty_64 = _bindgen_ty_64::TCA_DUMP_INVISIBLE; ++pub const TCA_CHAIN: _bindgen_ty_64 = _bindgen_ty_64::TCA_CHAIN; ++pub const TCA_HW_OFFLOAD: _bindgen_ty_64 = _bindgen_ty_64::TCA_HW_OFFLOAD; ++pub const TCA_INGRESS_BLOCK: _bindgen_ty_64 = _bindgen_ty_64::TCA_INGRESS_BLOCK; ++pub const TCA_EGRESS_BLOCK: _bindgen_ty_64 = _bindgen_ty_64::TCA_EGRESS_BLOCK; ++pub const TCA_DUMP_FLAGS: _bindgen_ty_64 = _bindgen_ty_64::TCA_DUMP_FLAGS; ++pub const TCA_EXT_WARN_MSG: _bindgen_ty_64 = _bindgen_ty_64::TCA_EXT_WARN_MSG; ++pub const __TCA_MAX: _bindgen_ty_64 = _bindgen_ty_64::__TCA_MAX; ++pub const NDUSEROPT_UNSPEC: _bindgen_ty_65 = _bindgen_ty_65::NDUSEROPT_UNSPEC; ++pub const NDUSEROPT_SRCADDR: _bindgen_ty_65 = _bindgen_ty_65::NDUSEROPT_SRCADDR; ++pub const __NDUSEROPT_MAX: _bindgen_ty_65 = _bindgen_ty_65::__NDUSEROPT_MAX; ++pub const TCA_ROOT_UNSPEC: _bindgen_ty_66 = _bindgen_ty_66::TCA_ROOT_UNSPEC; ++pub const TCA_ROOT_TAB: _bindgen_ty_66 = _bindgen_ty_66::TCA_ROOT_TAB; ++pub const TCA_ROOT_FLAGS: _bindgen_ty_66 = _bindgen_ty_66::TCA_ROOT_FLAGS; ++pub const TCA_ROOT_COUNT: _bindgen_ty_66 = _bindgen_ty_66::TCA_ROOT_COUNT; ++pub const TCA_ROOT_TIME_DELTA: _bindgen_ty_66 = _bindgen_ty_66::TCA_ROOT_TIME_DELTA; ++pub const TCA_ROOT_EXT_WARN_MSG: _bindgen_ty_66 = _bindgen_ty_66::TCA_ROOT_EXT_WARN_MSG; ++pub const __TCA_ROOT_MAX: _bindgen_ty_66 = _bindgen_ty_66::__TCA_ROOT_MAX; ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_1 { ++NETLINK_UNCONNECTED = 0, ++NETLINK_CONNECTED = 1, ++} ++#[repr(u32)] ++#[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, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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_MAX = 65, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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_MAX = 48, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_7 { ++BRIDGE_MODE_UNSPEC = 0, ++BRIDGE_MODE_HAIRPIN = 1, ++} ++#[repr(u32)] ++#[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_MAX = 43, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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_MAX = 9, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_18 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_19 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_20 { ++VXLAN_VNIFILTER_UNSPEC = 0, ++VXLAN_VNIFILTER_ENTRY = 1, ++__VXLAN_VNIFILTER_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_21 { ++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_MAX = 31, ++} ++#[repr(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_22 { ++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_MAX = 15, ++} ++#[repr(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_23 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_24 { ++IFLA_PPP_UNSPEC = 0, ++IFLA_PPP_DEV_FD = 1, ++__IFLA_PPP_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum ifla_gtp_role { ++GTP_ROLE_GGSN = 0, ++GTP_ROLE_SGSN = 1, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_25 { ++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_MAX = 7, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_26 { ++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_MAX = 32, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_27 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_28 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_29 { ++IFLA_VF_INFO_UNSPEC = 0, ++IFLA_VF_INFO = 1, ++__IFLA_VF_INFO_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_30 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_31 { ++IFLA_VF_VLAN_INFO_UNSPEC = 0, ++IFLA_VF_VLAN_INFO = 1, ++__IFLA_VF_VLAN_INFO_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_32 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_33 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_34 { ++IFLA_VF_PORT_UNSPEC = 0, ++IFLA_VF_PORT = 1, ++__IFLA_VF_PORT_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_35 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_36 { ++PORT_REQUEST_PREASSOCIATE = 0, ++PORT_REQUEST_PREASSOCIATE_RR = 1, ++PORT_REQUEST_ASSOCIATE = 2, ++PORT_REQUEST_DISASSOCIATE = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_37 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_38 { ++IFLA_IPOIB_UNSPEC = 0, ++IFLA_IPOIB_PKEY = 1, ++IFLA_IPOIB_MODE = 2, ++IFLA_IPOIB_UMCAST = 3, ++__IFLA_IPOIB_MAX = 4, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_39 { ++IPOIB_MODE_DATAGRAM = 0, ++IPOIB_MODE_CONNECTED = 1, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_40 { ++HSR_PROTOCOL_HSR = 0, ++HSR_PROTOCOL_PRP = 1, ++HSR_PROTOCOL_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_41 { ++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_MAX = 8, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_42 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_43 { ++IFLA_STATS_GETSET_UNSPEC = 0, ++IFLA_STATS_GET_FILTERS = 1, ++IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS = 2, ++__IFLA_STATS_GETSET_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_44 { ++LINK_XSTATS_TYPE_UNSPEC = 0, ++LINK_XSTATS_TYPE_BRIDGE = 1, ++LINK_XSTATS_TYPE_BOND = 2, ++__LINK_XSTATS_TYPE_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_45 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_46 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_47 { ++XDP_ATTACHED_NONE = 0, ++XDP_ATTACHED_DRV = 1, ++XDP_ATTACHED_SKB = 2, ++XDP_ATTACHED_HW = 3, ++XDP_ATTACHED_MULTI = 4, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_48 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_49 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_50 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_51 { ++IFLA_RMNET_UNSPEC = 0, ++IFLA_RMNET_MUX_ID = 1, ++IFLA_RMNET_FLAGS = 2, ++__IFLA_RMNET_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_52 { ++IFLA_MCTP_UNSPEC = 0, ++IFLA_MCTP_NET = 1, ++__IFLA_MCTP_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_53 { ++IFLA_DSA_UNSPEC = 0, ++IFLA_DSA_MASTER = 1, ++__IFLA_DSA_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_54 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_55 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_56 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_57 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_58 { ++FDB_NOTIFY_BIT = 1, ++FDB_NOTIFY_INACTIVE_BIT = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_59 { ++NFEA_UNSPEC = 0, ++NFEA_ACTIVITY_NOTIFY = 1, ++NFEA_DONT_REFRESH = 2, ++__NFEA_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_60 { ++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_GETMULTICAST = 58, ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_61 { ++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(u32)] ++#[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(u32)] ++#[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_MAX = 31, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_62 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_63 { ++PREFIX_UNSPEC = 0, ++PREFIX_ADDRESS = 1, ++PREFIX_CACHEINFO = 2, ++__PREFIX_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_64 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_65 { ++NDUSEROPT_UNSPEC = 0, ++NDUSEROPT_SRCADDR = 1, ++__NDUSEROPT_MAX = 2, ++} ++#[repr(u32)] ++#[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_MAX = 37, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_66 { ++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 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_geneve_df { ++pub const GENEVE_DF_MAX: ifla_geneve_df = ifla_geneve_df::GENEVE_DF_INHERIT; ++} +diff --git a/vendor/linux-raw-sys-0.4.14/src/sw64/prctl.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/prctl.rs +new file mode 100644 +index 00000000000..ce008a34bf8 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/prctl.rs +@@ -0,0 +1,231 @@ ++/* automatically generated by rust-bindgen 0.66.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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_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_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_GET_MDWE: u32 = 66; ++pub const PR_SET_VMA: u32 = 1398164801; ++pub const PR_SET_VMA_ANON_NAME: u32 = 0; +diff --git a/vendor/linux-raw-sys-0.4.14/src/sw64/system.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/system.rs +new file mode 100644 +index 00000000000..1360bd91ec8 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/system.rs +@@ -0,0 +1,139 @@ ++/* automatically generated by rust-bindgen 0.66.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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(Debug)] ++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: __IncompleteArrayField, ++} ++#[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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++pub const SI_LOAD_SHIFT: u32 = 16; ++pub const __OLD_UTS_LEN: u32 = 8; ++pub const __NEW_UTS_LEN: u32 = 64; ++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/vendor/linux-raw-sys-0.4.14/src/sw64/xdp.rs b/vendor/linux-raw-sys-0.4.14/src/sw64/xdp.rs +new file mode 100644 +index 00000000000..d210d09aff0 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.14/src/sw64/xdp.rs +@@ -0,0 +1,169 @@ ++/* automatically generated by rust-bindgen 0.66.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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, ++} ++#[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(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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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_UMEM_UNALIGNED_CHUNK_FLAG: u32 = 1; ++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_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_USE_SG: u32 = 16; ++pub const XDP_PKT_CONTD: u32 = 1; +diff --git a/vendor/linux-raw-sys-0.4.15/src/lib.rs b/vendor/linux-raw-sys-0.4.15/src/lib.rs +index 327f43b43c7..9ad3e21f883 100644 +--- a/vendor/linux-raw-sys-0.4.15/src/lib.rs ++++ b/vendor/linux-raw-sys-0.4.15/src/lib.rs +@@ -1558,3 +1558,64 @@ pub const fn sig_ign() -> super::general::__kernel_sighandler_t { + #[cfg(all(target_arch = "x86_64", target_pointer_width = "32"))] + #[path = "x32/xdp.rs"] + pub mod xdp; ++#[cfg(feature = "bootparam")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/bootparam.rs"] ++pub mod bootparam; ++#[cfg(feature = "errno")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/errno.rs"] ++pub mod errno; ++#[cfg(feature = "general")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/general.rs"] ++pub mod general; ++#[cfg(feature = "if_arp")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/if_arp.rs"] ++pub mod if_arp; ++#[cfg(feature = "if_ether")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/if_ether.rs"] ++pub mod if_ether; ++#[cfg(feature = "if_packet")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/if_packet.rs"] ++pub mod if_packet; ++#[cfg(feature = "io_uring")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/io_uring.rs"] ++pub mod io_uring; ++#[cfg(feature = "ioctl")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/ioctl.rs"] ++pub mod ioctl; ++#[cfg(feature = "loop_device")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/loop_device.rs"] ++pub mod loop_device; ++#[cfg(feature = "mempolicy")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/mempolicy.rs"] ++pub mod mempolicy; ++#[cfg(feature = "net")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/net.rs"] ++pub mod net; ++#[cfg(feature = "netlink")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/netlink.rs"] ++pub mod netlink; ++#[cfg(feature = "prctl")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/prctl.rs"] ++pub mod prctl; ++#[cfg(feature = "system")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/system.rs"] ++pub mod system; ++#[cfg(feature = "xdp")] ++#[cfg(target_arch = "sw64")] ++#[path = "sw64/xdp.rs"] ++pub mod xdp; ++ +diff --git a/vendor/linux-raw-sys-0.4.15/src/sw64/bootparam.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/bootparam.rs +new file mode 100644 +index 00000000000..4f4f6fab502 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/bootparam.rs +@@ -0,0 +1,3 @@ ++/* automatically generated by rust-bindgen 0.70.1 */ ++ ++ +diff --git a/vendor/linux-raw-sys-0.4.15/src/sw64/btrfs.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/btrfs.rs +new file mode 100644 +index 00000000000..b2780734435 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/btrfs.rs +@@ -0,0 +1,1690 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 __reserved: [__u8; 4usize], ++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 __reserved: __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 __reserved: [__u32; 8usize], ++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, 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 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 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(Debug, Copy, Clone)] ++pub struct btrfs_ioctl_defrag_range_args { ++pub start: __u64, ++pub len: __u64, ++pub flags: __u64, ++pub extent_thresh: __u32, ++pub compress_type: __u32, ++pub unused: [__u32; 4usize], ++} ++#[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: *mut 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, 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_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_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, ++} ++#[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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++pub const _IOC_SIZEBITS: u32 = 13; ++pub const _IOC_DIRBITS: u32 = 3; ++pub const _IOC_NONE: u32 = 1; ++pub const _IOC_READ: u32 = 2; ++pub const _IOC_WRITE: u32 = 4; ++pub const _IOC_NRBITS: u32 = 8; ++pub const _IOC_TYPEBITS: u32 = 8; ++pub const _IOC_NRMASK: u32 = 255; ++pub const _IOC_TYPEMASK: u32 = 255; ++pub const _IOC_SIZEMASK: u32 = 8191; ++pub const _IOC_DIRMASK: u32 = 7; ++pub const _IOC_NRSHIFT: u32 = 0; ++pub const _IOC_TYPESHIFT: u32 = 8; ++pub const _IOC_SIZESHIFT: u32 = 16; ++pub const _IOC_DIRSHIFT: u32 = 29; ++pub const IOC_IN: u32 = 2147483648; ++pub const IOC_OUT: u32 = 1073741824; ++pub const IOC_INOUT: u32 = 3221225472; ++pub const IOCSIZE_MASK: u32 = 536805376; ++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_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__MASK: u32 = 375; ++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 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 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 FILE_DEDUPE_RANGE_SAME: u32 = 0; ++pub const FILE_DEDUPE_RANGE_DIFFERS: u32 = 1; ++pub const NR_FILE: u32 = 8192; ++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 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_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_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_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_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_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_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_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_TREE_BLOCK_REF_KEY: u32 = 176; ++pub const BTRFS_EXTENT_DATA_REF_KEY: u32 = 178; ++pub const BTRFS_EXTENT_REF_V0_KEY: u32 = 180; ++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_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_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_FLAGS_MASK: u32 = 7; ++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(u32)] ++#[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, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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_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/vendor/linux-raw-sys-0.4.15/src/sw64/elf_uapi.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/elf_uapi.rs +new file mode 100644 +index 00000000000..6751b055888 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/elf_uapi.rs +@@ -0,0 +1,522 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 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 Elf32_Dyn = dynamic; ++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 dynamic { ++pub d_tag: Elf32_Sword, ++pub d_un: dynamic__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, ++} ++pub const _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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_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 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 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_RELA_LIVEPATCH: u32 = 1048576; ++pub const SHF_RO_AFTER_INIT: u32 = 2097152; ++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 NT_PRSTATUS: u32 = 1; ++pub const NT_PRFPREG: u32 = 2; ++pub const NT_PRPSINFO: u32 = 3; ++pub const NT_TASKSTRUCT: u32 = 4; ++pub const NT_AUXV: u32 = 6; ++pub const NT_SIGINFO: u32 = 1397311305; ++pub const NT_FILE: u32 = 1179208773; ++pub const NT_PRXFPREG: u32 = 1189489535; ++pub const NT_PPC_VMX: u32 = 256; ++pub const NT_PPC_SPE: u32 = 257; ++pub const NT_PPC_VSX: u32 = 258; ++pub const NT_PPC_TAR: u32 = 259; ++pub const NT_PPC_PPR: u32 = 260; ++pub const NT_PPC_DSCR: u32 = 261; ++pub const NT_PPC_EBB: u32 = 262; ++pub const NT_PPC_PMU: u32 = 263; ++pub const NT_PPC_TM_CGPR: u32 = 264; ++pub const NT_PPC_TM_CFPR: u32 = 265; ++pub const NT_PPC_TM_CVMX: u32 = 266; ++pub const NT_PPC_TM_CVSX: u32 = 267; ++pub const NT_PPC_TM_SPR: u32 = 268; ++pub const NT_PPC_TM_CTAR: u32 = 269; ++pub const NT_PPC_TM_CPPR: u32 = 270; ++pub const NT_PPC_TM_CDSCR: u32 = 271; ++pub const NT_PPC_PKEY: u32 = 272; ++pub const NT_386_TLS: u32 = 512; ++pub const NT_386_IOPERM: u32 = 513; ++pub const NT_X86_XSTATE: u32 = 514; ++pub const NT_S390_HIGH_GPRS: u32 = 768; ++pub const NT_S390_TIMER: u32 = 769; ++pub const NT_S390_TODCMP: u32 = 770; ++pub const NT_S390_TODPREG: u32 = 771; ++pub const NT_S390_CTRS: u32 = 772; ++pub const NT_S390_PREFIX: u32 = 773; ++pub const NT_S390_LAST_BREAK: u32 = 774; ++pub const NT_S390_SYSTEM_CALL: u32 = 775; ++pub const NT_S390_TDB: u32 = 776; ++pub const NT_S390_VXRS_LOW: u32 = 777; ++pub const NT_S390_VXRS_HIGH: u32 = 778; ++pub const NT_S390_GS_CB: u32 = 779; ++pub const NT_S390_GS_BC: u32 = 780; ++pub const NT_S390_RI_CB: u32 = 781; ++pub const NT_S390_PV_CPU_DATA: u32 = 782; ++pub const NT_ARM_VFP: u32 = 1024; ++pub const NT_ARM_TLS: u32 = 1025; ++pub const NT_ARM_HW_BREAK: u32 = 1026; ++pub const NT_ARM_HW_WATCH: u32 = 1027; ++pub const NT_ARM_SYSTEM_CALL: u32 = 1028; ++pub const NT_ARM_SVE: u32 = 1029; ++pub const NT_ARM_PAC_MASK: u32 = 1030; ++pub const NT_ARM_PACA_KEYS: u32 = 1031; ++pub const NT_ARM_PACG_KEYS: u32 = 1032; ++pub const NT_ARM_TAGGED_ADDR_CTRL: u32 = 1033; ++pub const NT_ARM_PAC_ENABLED_KEYS: u32 = 1034; ++pub const NT_ARM_SSVE: u32 = 1035; ++pub const NT_ARM_ZA: u32 = 1036; ++pub const NT_ARM_ZT: u32 = 1037; ++pub const NT_ARC_V2: u32 = 1536; ++pub const NT_VMCOREDD: u32 = 1792; ++pub const NT_MIPS_DSP: u32 = 2048; ++pub const NT_MIPS_FP_MODE: u32 = 2049; ++pub const NT_MIPS_MSA: u32 = 2050; ++pub const NT_LOONGARCH_CPUCFG: u32 = 2560; ++pub const NT_LOONGARCH_CSR: u32 = 2561; ++pub const NT_LOONGARCH_LSX: u32 = 2562; ++pub const NT_LOONGARCH_LASX: u32 = 2563; ++pub const NT_LOONGARCH_LBT: u32 = 2564; ++pub const NT_LOONGARCH_HW_BREAK: u32 = 2565; ++pub const NT_LOONGARCH_HW_WATCH: u32 = 2566; ++pub const NT_GNU_PROPERTY_TYPE_0: u32 = 5; ++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 dynamic__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/vendor/linux-raw-sys-0.4.15/src/sw64/errno.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/errno.rs +new file mode 100644 +index 00000000000..283511768bd +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/errno.rs +@@ -0,0 +1,137 @@ ++/* automatically generated by rust-bindgen 0.70.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 ENOMSG: u32 = 35; ++pub const EIDRM: u32 = 36; ++pub const ECHRNG: u32 = 37; ++pub const EL2NSYNC: u32 = 38; ++pub const EL3HLT: u32 = 39; ++pub const EL3RST: u32 = 40; ++pub const ELNRNG: u32 = 41; ++pub const EUNATCH: u32 = 42; ++pub const ENOCSI: u32 = 43; ++pub const EL2HLT: u32 = 44; ++pub const EDEADLK: u32 = 45; ++pub const ENOLCK: u32 = 46; ++pub const EBADE: u32 = 50; ++pub const EBADR: u32 = 51; ++pub const EXFULL: u32 = 52; ++pub const ENOANO: u32 = 53; ++pub const EBADRQC: u32 = 54; ++pub const EBADSLT: u32 = 55; ++pub const EDEADLOCK: u32 = 56; ++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 EDOTDOT: u32 = 73; ++pub const EMULTIHOP: u32 = 74; ++pub const EBADMSG: u32 = 77; ++pub const ENAMETOOLONG: u32 = 78; ++pub const EOVERFLOW: u32 = 79; ++pub const ENOTUNIQ: u32 = 80; ++pub const EBADFD: u32 = 81; ++pub const EREMCHG: u32 = 82; ++pub const ELIBACC: u32 = 83; ++pub const ELIBBAD: u32 = 84; ++pub const ELIBSCN: u32 = 85; ++pub const ELIBMAX: u32 = 86; ++pub const ELIBEXEC: u32 = 87; ++pub const EILSEQ: u32 = 88; ++pub const ENOSYS: u32 = 89; ++pub const ELOOP: u32 = 90; ++pub const ERESTART: u32 = 91; ++pub const ESTRPIPE: u32 = 92; ++pub const ENOTEMPTY: u32 = 93; ++pub const EUSERS: u32 = 94; ++pub const ENOTSOCK: u32 = 95; ++pub const EDESTADDRREQ: u32 = 96; ++pub const EMSGSIZE: u32 = 97; ++pub const EPROTOTYPE: u32 = 98; ++pub const ENOPROTOOPT: u32 = 99; ++pub const EPROTONOSUPPORT: u32 = 120; ++pub const ESOCKTNOSUPPORT: u32 = 121; ++pub const EOPNOTSUPP: u32 = 122; ++pub const EPFNOSUPPORT: u32 = 123; ++pub const EAFNOSUPPORT: u32 = 124; ++pub const EADDRINUSE: u32 = 125; ++pub const EADDRNOTAVAIL: u32 = 126; ++pub const ENETDOWN: u32 = 127; ++pub const ENETUNREACH: u32 = 128; ++pub const ENETRESET: u32 = 129; ++pub const ECONNABORTED: u32 = 130; ++pub const ECONNRESET: u32 = 131; ++pub const ENOBUFS: u32 = 132; ++pub const EISCONN: u32 = 133; ++pub const ENOTCONN: u32 = 134; ++pub const EUCLEAN: u32 = 135; ++pub const ENOTNAM: u32 = 137; ++pub const ENAVAIL: u32 = 138; ++pub const EISNAM: u32 = 139; ++pub const EREMOTEIO: u32 = 140; ++pub const EINIT: u32 = 141; ++pub const EREMDEV: u32 = 142; ++pub const ESHUTDOWN: u32 = 143; ++pub const ETOOMANYREFS: u32 = 144; ++pub const ETIMEDOUT: u32 = 145; ++pub const ECONNREFUSED: u32 = 146; ++pub const EHOSTDOWN: u32 = 147; ++pub const EHOSTUNREACH: u32 = 148; ++pub const EWOULDBLOCK: u32 = 11; ++pub const EALREADY: u32 = 149; ++pub const EINPROGRESS: u32 = 150; ++pub const ESTALE: u32 = 151; ++pub const ECANCELED: u32 = 158; ++pub const ENOMEDIUM: u32 = 159; ++pub const EMEDIUMTYPE: u32 = 160; ++pub const ENOKEY: u32 = 161; ++pub const EKEYEXPIRED: u32 = 162; ++pub const EKEYREVOKED: u32 = 163; ++pub const EKEYREJECTED: u32 = 164; ++pub const EOWNERDEAD: u32 = 165; ++pub const ENOTRECOVERABLE: u32 = 166; ++pub const ERFKILL: u32 = 167; ++pub const EHWPOISON: u32 = 168; ++pub const EDQUOT: u32 = 1133; +diff --git a/vendor/linux-raw-sys-0.4.15/src/sw64/general.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/general.rs +new file mode 100644 +index 00000000000..537ac7b684e +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/general.rs +@@ -0,0 +1,3030 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++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_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 fsid_t = __kernel_fsid_t; ++pub type __fsword_t = __u32; ++#[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)] ++#[derive(Debug, Copy, Clone)] ++pub struct __kernel_fd_set { ++pub fds_bits: [crate::ctypes::c_ulong; 16usize], ++} ++#[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 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 __reserved: [__u8; 4usize], ++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 __reserved: __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 __reserved: [__u32; 8usize], ++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, 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 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 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 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 __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 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 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_flags: crate::ctypes::c_uint, ++pub sa_handler: __sighandler_t, ++pub sa_mask: sigset_t, ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct sigaltstack { ++pub ss_sp: *mut crate::ctypes::c_void, ++pub ss_size: __kernel_size_t, ++pub ss_flags: crate::ctypes::c_int, ++} ++#[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; 8usize], ++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; 8usize], ++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_code: crate::ctypes::c_int, ++pub si_errno: 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 __spare3: [__u64; 12usize], ++} ++#[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; 23usize], ++} ++#[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; 23usize], ++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; 23usize], ++pub c_ispeed: speed_t, ++pub c_ospeed: speed_t, ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct sgttyb { ++pub sg_ispeed: crate::ctypes::c_char, ++pub sg_ospeed: crate::ctypes::c_char, ++pub sg_erase: crate::ctypes::c_char, ++pub sg_kill: crate::ctypes::c_char, ++pub sg_flags: crate::ctypes::c_int, ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct tchars { ++pub t_intrc: crate::ctypes::c_char, ++pub t_quitc: crate::ctypes::c_char, ++pub t_startc: crate::ctypes::c_char, ++pub t_stopc: crate::ctypes::c_char, ++pub t_eofc: crate::ctypes::c_char, ++pub t_brkc: crate::ctypes::c_char, ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct ltchars { ++pub t_suspc: crate::ctypes::c_char, ++pub t_dsuspc: crate::ctypes::c_char, ++pub t_rprntc: crate::ctypes::c_char, ++pub t_flushc: crate::ctypes::c_char, ++pub t_werasc: crate::ctypes::c_char, ++pub t_lnextc: crate::ctypes::c_char, ++} ++#[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_char, ++pub c_cc: [crate::ctypes::c_uchar; 23usize], ++} ++#[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, 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)] ++pub struct linux_dirent64 { ++pub d_ino: crate::ctypes::c_ulong, ++pub d_off: crate::ctypes::c_long, ++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_uint, ++pub st_pad0: [crate::ctypes::c_uint; 3usize], ++pub st_ino: crate::ctypes::c_ulong, ++pub st_mode: __kernel_mode_t, ++pub st_nlink: __u32, ++pub st_uid: __kernel_uid32_t, ++pub st_gid: __kernel_gid32_t, ++pub st_rdev: crate::ctypes::c_uint, ++pub st_pad1: [crate::ctypes::c_uint; 3usize], ++pub st_size: crate::ctypes::c_long, ++pub st_atime: crate::ctypes::c_uint, ++pub st_atime_nsec: crate::ctypes::c_uint, ++pub st_mtime: crate::ctypes::c_uint, ++pub st_mtime_nsec: crate::ctypes::c_uint, ++pub st_ctime: crate::ctypes::c_uint, ++pub st_ctime_nsec: crate::ctypes::c_uint, ++pub st_blksize: crate::ctypes::c_uint, ++pub st_pad2: crate::ctypes::c_uint, ++pub st_blocks: crate::ctypes::c_ulong, ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct statfs { ++pub f_type: crate::ctypes::c_long, ++pub f_bsize: crate::ctypes::c_long, ++pub f_frsize: crate::ctypes::c_long, ++pub f_blocks: crate::ctypes::c_long, ++pub f_bfree: crate::ctypes::c_long, ++pub f_files: crate::ctypes::c_long, ++pub f_ffree: crate::ctypes::c_long, ++pub f_bavail: crate::ctypes::c_long, ++pub f_fsid: __kernel_fsid_t, ++pub f_namelen: crate::ctypes::c_long, ++pub f_flags: crate::ctypes::c_long, ++pub f_spare: [crate::ctypes::c_long; 5usize], ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct statfs64 { ++pub f_type: crate::ctypes::c_long, ++pub f_bsize: crate::ctypes::c_long, ++pub f_frsize: crate::ctypes::c_long, ++pub f_blocks: crate::ctypes::c_long, ++pub f_bfree: crate::ctypes::c_long, ++pub f_files: crate::ctypes::c_long, ++pub f_ffree: crate::ctypes::c_long, ++pub f_bavail: crate::ctypes::c_long, ++pub f_fsid: __kernel_fsid_t, ++pub f_namelen: crate::ctypes::c_long, ++pub f_flags: crate::ctypes::c_long, ++pub f_spare: [crate::ctypes::c_long; 5usize], ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct compat_statfs64 { ++pub f_type: __u32, ++pub f_bsize: __u32, ++pub f_frsize: __u32, ++pub __pad: __u32, ++pub f_blocks: __u64, ++pub f_bfree: __u64, ++pub f_files: __u64, ++pub f_ffree: __u64, ++pub f_bavail: __u64, ++pub f_fsid: __kernel_fsid_t, ++pub f_namelen: __u32, ++pub f_flags: __u32, ++pub f_spare: [__u32; 5usize], ++} ++#[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 = 393984; ++pub const LINUX_VERSION_MAJOR: u32 = 6; ++pub const LINUX_VERSION_PATCHLEVEL: u32 = 3; ++pub const LINUX_VERSION_SUBLEVEL: u32 = 0; ++pub const AT_SYSINFO_EHDR: u32 = 33; ++pub const AT_VECTOR_SIZE_ARCH: u32 = 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_EXECFN: u32 = 31; ++pub const AT_MINSIGSTKSZ: u32 = 51; ++pub const __FD_SETSIZE: u32 = 1024; ++pub const _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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_APPEND: u32 = 8; ++pub const O_DSYNC: u32 = 16; ++pub const O_NONBLOCK: u32 = 128; ++pub const O_CREAT: u32 = 256; ++pub const O_TRUNC: u32 = 512; ++pub const O_EXCL: u32 = 1024; ++pub const O_NOCTTY: u32 = 2048; ++pub const FASYNC: u32 = 4096; ++pub const O_LARGEFILE: u32 = 8192; ++pub const __O_SYNC: u32 = 16384; ++pub const O_SYNC: u32 = 16400; ++pub const O_DIRECT: u32 = 32768; ++pub const F_GETLK: u32 = 14; ++pub const F_SETLK: u32 = 6; ++pub const F_SETLKW: u32 = 7; ++pub const F_SETOWN: u32 = 24; ++pub const F_GETOWN: u32 = 23; ++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_DIRECTORY: u32 = 65536; ++pub const O_NOFOLLOW: u32 = 131072; ++pub const O_NOATIME: u32 = 262144; ++pub const O_CLOEXEC: u32 = 524288; ++pub const O_PATH: u32 = 2097152; ++pub const __O_TMPFILE: u32 = 4194304; ++pub const O_TMPFILE: u32 = 4259840; ++pub const O_TMPFILE_MASK: u32 = 4260096; ++pub const O_NDELAY: u32 = 128; ++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_SETSIG: u32 = 10; ++pub const F_GETSIG: u32 = 11; ++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_CANCELLK: u32 = 1029; ++pub const F_DUPFD_CLOEXEC: u32 = 1030; ++pub const F_NOTIFY: u32 = 1026; ++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 AT_SYMLINK_NOFOLLOW: u32 = 256; ++pub const AT_EACCESS: u32 = 512; ++pub const AT_REMOVEDIR: u32 = 512; ++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 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 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_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 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_SIZEBITS: u32 = 13; ++pub const _IOC_DIRBITS: u32 = 3; ++pub const _IOC_NONE: u32 = 1; ++pub const _IOC_READ: u32 = 2; ++pub const _IOC_WRITE: u32 = 4; ++pub const _IOC_NRBITS: u32 = 8; ++pub const _IOC_TYPEBITS: u32 = 8; ++pub const _IOC_NRMASK: u32 = 255; ++pub const _IOC_TYPEMASK: u32 = 255; ++pub const _IOC_SIZEMASK: u32 = 8191; ++pub const _IOC_DIRMASK: u32 = 7; ++pub const _IOC_NRSHIFT: u32 = 0; ++pub const _IOC_TYPESHIFT: u32 = 8; ++pub const _IOC_SIZESHIFT: u32 = 16; ++pub const _IOC_DIRSHIFT: u32 = 29; ++pub const IOC_IN: u32 = 2147483648; ++pub const IOC_OUT: u32 = 1073741824; ++pub const IOC_INOUT: u32 = 3221225472; ++pub const IOCSIZE_MASK: u32 = 536805376; ++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_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__MASK: u32 = 375; ++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 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 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 FILE_DEDUPE_RANGE_SAME: u32 = 0; ++pub const FILE_DEDUPE_RANGE_DIFFERS: u32 = 1; ++pub const NR_FILE: u32 = 8192; ++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 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 FUTEX_32: u32 = 2; ++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 = 128; ++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 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 PROT_NONE: u32 = 0; ++pub const PROT_READ: u32 = 1; ++pub const PROT_WRITE: u32 = 2; ++pub const PROT_EXEC: u32 = 4; ++pub const PROT_SEM: u32 = 16; ++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_RENAME: u32 = 32; ++pub const MAP_AUTOGROW: u32 = 64; ++pub const MAP_LOCAL: u32 = 128; ++pub const MAP_AUTORSRV: u32 = 256; ++pub const MAP_NORESERVE: u32 = 1024; ++pub const MAP_ANONYMOUS: u32 = 2048; ++pub const MAP_GROWSDOWN: u32 = 4096; ++pub const MAP_DENYWRITE: u32 = 8192; ++pub const MAP_EXECUTABLE: u32 = 16384; ++pub const MAP_LOCKED: u32 = 32768; ++pub const MAP_POPULATE: u32 = 65536; ++pub const MAP_NONBLOCK: u32 = 131072; ++pub const MAP_STACK: u32 = 262144; ++pub const MAP_HUGETLB: u32 = 524288; ++pub const MAP_FIXED_NOREPLACE: u32 = 1048576; ++pub const MS_ASYNC: u32 = 1; ++pub const MS_INVALIDATE: u32 = 2; ++pub const MS_SYNC: u32 = 4; ++pub const MCL_CURRENT: u32 = 1; ++pub const MCL_FUTURE: u32 = 2; ++pub const MCL_ONFAULT: u32 = 4; ++pub const MLOCK_ONFAULT: u32 = 1; ++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_MERGEABLE: u32 = 12; ++pub const MADV_UNMERGEABLE: u32 = 13; ++pub const MADV_HWPOISON: u32 = 100; ++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 MAP_FILE: 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 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_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 POLLWRBAND: u32 = 256; ++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 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 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 CLOCKS_MASK: u32 = 1; ++pub const CLOCKS_MONO: u32 = 1; ++pub const TIMER_ABSTIME: u32 = 1; ++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_NOFILE: u32 = 5; ++pub const RLIMIT_AS: u32 = 6; ++pub const RLIMIT_RSS: u32 = 7; ++pub const RLIMIT_NPROC: u32 = 8; ++pub const RLIMIT_MEMLOCK: u32 = 9; ++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_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_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 = 128; ++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 SIGIOT: u32 = 6; ++pub const SIGABRT: u32 = 6; ++pub const SIGEMT: u32 = 7; ++pub const SIGFPE: u32 = 8; ++pub const SIGKILL: u32 = 9; ++pub const SIGBUS: u32 = 10; ++pub const SIGSEGV: u32 = 11; ++pub const SIGSYS: u32 = 12; ++pub const SIGPIPE: u32 = 13; ++pub const SIGALRM: u32 = 14; ++pub const SIGTERM: u32 = 15; ++pub const SIGUSR1: u32 = 16; ++pub const SIGUSR2: u32 = 17; ++pub const SIGCHLD: u32 = 18; ++pub const SIGCLD: u32 = 18; ++pub const SIGPWR: u32 = 19; ++pub const SIGWINCH: u32 = 20; ++pub const SIGURG: u32 = 21; ++pub const SIGIO: u32 = 22; ++pub const SIGPOLL: u32 = 22; ++pub const SIGSTOP: u32 = 23; ++pub const SIGTSTP: u32 = 24; ++pub const SIGCONT: u32 = 25; ++pub const SIGTTIN: u32 = 26; ++pub const SIGTTOU: u32 = 27; ++pub const SIGVTALRM: u32 = 28; ++pub const SIGPROF: u32 = 29; ++pub const SIGXCPU: u32 = 30; ++pub const SIGXFSZ: u32 = 31; ++pub const SIGRTMIN: u32 = 32; ++pub const SIGRTMAX: u32 = 128; ++pub const SA_ONSTACK: u32 = 134217728; ++pub const SA_RESETHAND: u32 = 2147483648; ++pub const SA_RESTART: u32 = 268435456; ++pub const SA_SIGINFO: u32 = 8; ++pub const SA_NODEFER: u32 = 1073741824; ++pub const SA_NOCLDWAIT: u32 = 65536; ++pub const SA_NOCLDSTOP: u32 = 1; ++pub const SA_NOMASK: u32 = 1073741824; ++pub const SA_ONESHOT: u32 = 2147483648; ++pub const MINSIGSTKSZ: u32 = 2048; ++pub const SIGSTKSZ: u32 = 8192; ++pub const SIG_BLOCK: u32 = 1; ++pub const SIG_UNBLOCK: u32 = 2; ++pub const SIG_SETMASK: u32 = 3; ++pub const SA_UNSUPPORTED: u32 = 1024; ++pub const SA_EXPOSE_TAGBITS: u32 = 2048; ++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 NSIGSEGV: u32 = 9; ++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__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 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 ENOMSG: u32 = 35; ++pub const EIDRM: u32 = 36; ++pub const ECHRNG: u32 = 37; ++pub const EL2NSYNC: u32 = 38; ++pub const EL3HLT: u32 = 39; ++pub const EL3RST: u32 = 40; ++pub const ELNRNG: u32 = 41; ++pub const EUNATCH: u32 = 42; ++pub const ENOCSI: u32 = 43; ++pub const EL2HLT: u32 = 44; ++pub const EDEADLK: u32 = 45; ++pub const ENOLCK: u32 = 46; ++pub const EBADE: u32 = 50; ++pub const EBADR: u32 = 51; ++pub const EXFULL: u32 = 52; ++pub const ENOANO: u32 = 53; ++pub const EBADRQC: u32 = 54; ++pub const EBADSLT: u32 = 55; ++pub const EDEADLOCK: u32 = 56; ++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 EDOTDOT: u32 = 73; ++pub const EMULTIHOP: u32 = 74; ++pub const EBADMSG: u32 = 77; ++pub const ENAMETOOLONG: u32 = 78; ++pub const EOVERFLOW: u32 = 79; ++pub const ENOTUNIQ: u32 = 80; ++pub const EBADFD: u32 = 81; ++pub const EREMCHG: u32 = 82; ++pub const ELIBACC: u32 = 83; ++pub const ELIBBAD: u32 = 84; ++pub const ELIBSCN: u32 = 85; ++pub const ELIBMAX: u32 = 86; ++pub const ELIBEXEC: u32 = 87; ++pub const EILSEQ: u32 = 88; ++pub const ENOSYS: u32 = 89; ++pub const ELOOP: u32 = 90; ++pub const ERESTART: u32 = 91; ++pub const ESTRPIPE: u32 = 92; ++pub const ENOTEMPTY: u32 = 93; ++pub const EUSERS: u32 = 94; ++pub const ENOTSOCK: u32 = 95; ++pub const EDESTADDRREQ: u32 = 96; ++pub const EMSGSIZE: u32 = 97; ++pub const EPROTOTYPE: u32 = 98; ++pub const ENOPROTOOPT: u32 = 99; ++pub const EPROTONOSUPPORT: u32 = 120; ++pub const ESOCKTNOSUPPORT: u32 = 121; ++pub const EOPNOTSUPP: u32 = 122; ++pub const EPFNOSUPPORT: u32 = 123; ++pub const EAFNOSUPPORT: u32 = 124; ++pub const EADDRINUSE: u32 = 125; ++pub const EADDRNOTAVAIL: u32 = 126; ++pub const ENETDOWN: u32 = 127; ++pub const ENETUNREACH: u32 = 128; ++pub const ENETRESET: u32 = 129; ++pub const ECONNABORTED: u32 = 130; ++pub const ECONNRESET: u32 = 131; ++pub const ENOBUFS: u32 = 132; ++pub const EISCONN: u32 = 133; ++pub const ENOTCONN: u32 = 134; ++pub const EUCLEAN: u32 = 135; ++pub const ENOTNAM: u32 = 137; ++pub const ENAVAIL: u32 = 138; ++pub const EISNAM: u32 = 139; ++pub const EREMOTEIO: u32 = 140; ++pub const EINIT: u32 = 141; ++pub const EREMDEV: u32 = 142; ++pub const ESHUTDOWN: u32 = 143; ++pub const ETOOMANYREFS: u32 = 144; ++pub const ETIMEDOUT: u32 = 145; ++pub const ECONNREFUSED: u32 = 146; ++pub const EHOSTDOWN: u32 = 147; ++pub const EHOSTUNREACH: u32 = 148; ++pub const EWOULDBLOCK: u32 = 11; ++pub const EALREADY: u32 = 149; ++pub const EINPROGRESS: u32 = 150; ++pub const ESTALE: u32 = 151; ++pub const ECANCELED: u32 = 158; ++pub const ENOMEDIUM: u32 = 159; ++pub const EMEDIUMTYPE: u32 = 160; ++pub const ENOKEY: u32 = 161; ++pub const EKEYEXPIRED: u32 = 162; ++pub const EKEYREVOKED: u32 = 163; ++pub const EKEYREJECTED: u32 = 164; ++pub const EOWNERDEAD: u32 = 165; ++pub const ENOTRECOVERABLE: u32 = 166; ++pub const ERFKILL: u32 = 167; ++pub const EHWPOISON: u32 = 168; ++pub const EDQUOT: u32 = 1133; ++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 = 23; ++pub const VINTR: u32 = 0; ++pub const VQUIT: u32 = 1; ++pub const VERASE: u32 = 2; ++pub const VKILL: u32 = 3; ++pub const VMIN: u32 = 4; ++pub const VTIME: u32 = 5; ++pub const VEOL2: u32 = 6; ++pub const VSWTC: u32 = 7; ++pub const VSWTCH: u32 = 7; ++pub const VSTART: u32 = 8; ++pub const VSTOP: u32 = 9; ++pub const VSUSP: u32 = 10; ++pub const VREPRINT: u32 = 12; ++pub const VDISCARD: u32 = 13; ++pub const VWERASE: u32 = 14; ++pub const VLNEXT: u32 = 15; ++pub const VEOF: u32 = 16; ++pub const VEOL: u32 = 17; ++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 IEXTEN: u32 = 256; ++pub const ECHOCTL: u32 = 512; ++pub const ECHOPRT: u32 = 1024; ++pub const ECHOKE: u32 = 2048; ++pub const FLUSHO: u32 = 8192; ++pub const PENDIN: u32 = 16384; ++pub const TOSTOP: u32 = 32768; ++pub const ITOSTOP: u32 = 32768; ++pub const EXTPROC: u32 = 65536; ++pub const TIOCSER_TEMT: u32 = 1; ++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 TIOCGLTC: u32 = 29812; ++pub const TIOCSLTC: u32 = 29813; ++pub const TIOCGETP: u32 = 29704; ++pub const TIOCSETP: u32 = 29705; ++pub const TIOCSETN: u32 = 29706; ++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 = 16; ++pub const TIOCM_SR: u32 = 32; ++pub const TIOCM_CTS: u32 = 64; ++pub const TIOCM_CAR: u32 = 256; ++pub const TIOCM_CD: u32 = 256; ++pub const TIOCM_RNG: u32 = 512; ++pub const TIOCM_RI: u32 = 512; ++pub const TIOCM_DSR: u32 = 1024; ++pub const TIOCM_OUT1: u32 = 8192; ++pub const TIOCM_OUT2: u32 = 16384; ++pub const TIOCM_LOOP: u32 = 32768; ++pub const UIO_FASTIOV: u32 = 8; ++pub const UIO_MAXIOV: u32 = 1024; ++pub const __NR_Linux: u32 = 5000; ++pub const __NR_read: u32 = 5000; ++pub const __NR_write: u32 = 5001; ++pub const __NR_open: u32 = 5002; ++pub const __NR_close: u32 = 5003; ++pub const __NR_stat: u32 = 5004; ++pub const __NR_fstat: u32 = 5005; ++pub const __NR_lstat: u32 = 5006; ++pub const __NR_poll: u32 = 5007; ++pub const __NR_lseek: u32 = 5008; ++pub const __NR_mmap: u32 = 5009; ++pub const __NR_mprotect: u32 = 5010; ++pub const __NR_munmap: u32 = 5011; ++pub const __NR_brk: u32 = 5012; ++pub const __NR_rt_sigaction: u32 = 5013; ++pub const __NR_rt_sigprocmask: u32 = 5014; ++pub const __NR_ioctl: u32 = 5015; ++pub const __NR_pread64: u32 = 5016; ++pub const __NR_pwrite64: u32 = 5017; ++pub const __NR_readv: u32 = 5018; ++pub const __NR_writev: u32 = 5019; ++pub const __NR_access: u32 = 5020; ++pub const __NR_pipe: u32 = 5021; ++pub const __NR__newselect: u32 = 5022; ++pub const __NR_sched_yield: u32 = 5023; ++pub const __NR_mremap: u32 = 5024; ++pub const __NR_msync: u32 = 5025; ++pub const __NR_mincore: u32 = 5026; ++pub const __NR_madvise: u32 = 5027; ++pub const __NR_shmget: u32 = 5028; ++pub const __NR_shmat: u32 = 5029; ++pub const __NR_shmctl: u32 = 5030; ++pub const __NR_dup: u32 = 5031; ++pub const __NR_dup2: u32 = 5032; ++pub const __NR_pause: u32 = 5033; ++pub const __NR_nanosleep: u32 = 5034; ++pub const __NR_getitimer: u32 = 5035; ++pub const __NR_setitimer: u32 = 5036; ++pub const __NR_alarm: u32 = 5037; ++pub const __NR_getpid: u32 = 5038; ++pub const __NR_sendfile: u32 = 5039; ++pub const __NR_socket: u32 = 5040; ++pub const __NR_connect: u32 = 5041; ++pub const __NR_accept: u32 = 5042; ++pub const __NR_sendto: u32 = 5043; ++pub const __NR_recvfrom: u32 = 5044; ++pub const __NR_sendmsg: u32 = 5045; ++pub const __NR_recvmsg: u32 = 5046; ++pub const __NR_shutdown: u32 = 5047; ++pub const __NR_bind: u32 = 5048; ++pub const __NR_listen: u32 = 5049; ++pub const __NR_getsockname: u32 = 5050; ++pub const __NR_getpeername: u32 = 5051; ++pub const __NR_socketpair: u32 = 5052; ++pub const __NR_setsockopt: u32 = 5053; ++pub const __NR_getsockopt: u32 = 5054; ++pub const __NR_clone: u32 = 5055; ++pub const __NR_fork: u32 = 5056; ++pub const __NR_execve: u32 = 5057; ++pub const __NR_exit: u32 = 5058; ++pub const __NR_wait4: u32 = 5059; ++pub const __NR_kill: u32 = 5060; ++pub const __NR_uname: u32 = 5061; ++pub const __NR_semget: u32 = 5062; ++pub const __NR_semop: u32 = 5063; ++pub const __NR_semctl: u32 = 5064; ++pub const __NR_shmdt: u32 = 5065; ++pub const __NR_msgget: u32 = 5066; ++pub const __NR_msgsnd: u32 = 5067; ++pub const __NR_msgrcv: u32 = 5068; ++pub const __NR_msgctl: u32 = 5069; ++pub const __NR_fcntl: u32 = 5070; ++pub const __NR_flock: u32 = 5071; ++pub const __NR_fsync: u32 = 5072; ++pub const __NR_fdatasync: u32 = 5073; ++pub const __NR_truncate: u32 = 5074; ++pub const __NR_ftruncate: u32 = 5075; ++pub const __NR_getdents: u32 = 5076; ++pub const __NR_getcwd: u32 = 5077; ++pub const __NR_chdir: u32 = 5078; ++pub const __NR_fchdir: u32 = 5079; ++pub const __NR_rename: u32 = 5080; ++pub const __NR_mkdir: u32 = 5081; ++pub const __NR_rmdir: u32 = 5082; ++pub const __NR_creat: u32 = 5083; ++pub const __NR_link: u32 = 5084; ++pub const __NR_unlink: u32 = 5085; ++pub const __NR_symlink: u32 = 5086; ++pub const __NR_readlink: u32 = 5087; ++pub const __NR_chmod: u32 = 5088; ++pub const __NR_fchmod: u32 = 5089; ++pub const __NR_chown: u32 = 5090; ++pub const __NR_fchown: u32 = 5091; ++pub const __NR_lchown: u32 = 5092; ++pub const __NR_umask: u32 = 5093; ++pub const __NR_gettimeofday: u32 = 5094; ++pub const __NR_getrlimit: u32 = 5095; ++pub const __NR_getrusage: u32 = 5096; ++pub const __NR_sysinfo: u32 = 5097; ++pub const __NR_times: u32 = 5098; ++pub const __NR_ptrace: u32 = 5099; ++pub const __NR_getuid: u32 = 5100; ++pub const __NR_syslog: u32 = 5101; ++pub const __NR_getgid: u32 = 5102; ++pub const __NR_setuid: u32 = 5103; ++pub const __NR_setgid: u32 = 5104; ++pub const __NR_geteuid: u32 = 5105; ++pub const __NR_getegid: u32 = 5106; ++pub const __NR_setpgid: u32 = 5107; ++pub const __NR_getppid: u32 = 5108; ++pub const __NR_getpgrp: u32 = 5109; ++pub const __NR_setsid: u32 = 5110; ++pub const __NR_setreuid: u32 = 5111; ++pub const __NR_setregid: u32 = 5112; ++pub const __NR_getgroups: u32 = 5113; ++pub const __NR_setgroups: u32 = 5114; ++pub const __NR_setresuid: u32 = 5115; ++pub const __NR_getresuid: u32 = 5116; ++pub const __NR_setresgid: u32 = 5117; ++pub const __NR_getresgid: u32 = 5118; ++pub const __NR_getpgid: u32 = 5119; ++pub const __NR_setfsuid: u32 = 5120; ++pub const __NR_setfsgid: u32 = 5121; ++pub const __NR_getsid: u32 = 5122; ++pub const __NR_capget: u32 = 5123; ++pub const __NR_capset: u32 = 5124; ++pub const __NR_rt_sigpending: u32 = 5125; ++pub const __NR_rt_sigtimedwait: u32 = 5126; ++pub const __NR_rt_sigqueueinfo: u32 = 5127; ++pub const __NR_rt_sigsuspend: u32 = 5128; ++pub const __NR_sigaltstack: u32 = 5129; ++pub const __NR_utime: u32 = 5130; ++pub const __NR_mknod: u32 = 5131; ++pub const __NR_personality: u32 = 5132; ++pub const __NR_ustat: u32 = 5133; ++pub const __NR_statfs: u32 = 5134; ++pub const __NR_fstatfs: u32 = 5135; ++pub const __NR_sysfs: u32 = 5136; ++pub const __NR_getpriority: u32 = 5137; ++pub const __NR_setpriority: u32 = 5138; ++pub const __NR_sched_setparam: u32 = 5139; ++pub const __NR_sched_getparam: u32 = 5140; ++pub const __NR_sched_setscheduler: u32 = 5141; ++pub const __NR_sched_getscheduler: u32 = 5142; ++pub const __NR_sched_get_priority_max: u32 = 5143; ++pub const __NR_sched_get_priority_min: u32 = 5144; ++pub const __NR_sched_rr_get_interval: u32 = 5145; ++pub const __NR_mlock: u32 = 5146; ++pub const __NR_munlock: u32 = 5147; ++pub const __NR_mlockall: u32 = 5148; ++pub const __NR_munlockall: u32 = 5149; ++pub const __NR_vhangup: u32 = 5150; ++pub const __NR_pivot_root: u32 = 5151; ++pub const __NR__sysctl: u32 = 5152; ++pub const __NR_prctl: u32 = 5153; ++pub const __NR_adjtimex: u32 = 5154; ++pub const __NR_setrlimit: u32 = 5155; ++pub const __NR_chroot: u32 = 5156; ++pub const __NR_sync: u32 = 5157; ++pub const __NR_acct: u32 = 5158; ++pub const __NR_settimeofday: u32 = 5159; ++pub const __NR_mount: u32 = 5160; ++pub const __NR_umount2: u32 = 5161; ++pub const __NR_swapon: u32 = 5162; ++pub const __NR_swapoff: u32 = 5163; ++pub const __NR_reboot: u32 = 5164; ++pub const __NR_sethostname: u32 = 5165; ++pub const __NR_setdomainname: u32 = 5166; ++pub const __NR_create_module: u32 = 5167; ++pub const __NR_init_module: u32 = 5168; ++pub const __NR_delete_module: u32 = 5169; ++pub const __NR_get_kernel_syms: u32 = 5170; ++pub const __NR_query_module: u32 = 5171; ++pub const __NR_quotactl: u32 = 5172; ++pub const __NR_nfsservctl: u32 = 5173; ++pub const __NR_getpmsg: u32 = 5174; ++pub const __NR_putpmsg: u32 = 5175; ++pub const __NR_afs_syscall: u32 = 5176; ++pub const __NR_reserved177: u32 = 5177; ++pub const __NR_gettid: u32 = 5178; ++pub const __NR_readahead: u32 = 5179; ++pub const __NR_setxattr: u32 = 5180; ++pub const __NR_lsetxattr: u32 = 5181; ++pub const __NR_fsetxattr: u32 = 5182; ++pub const __NR_getxattr: u32 = 5183; ++pub const __NR_lgetxattr: u32 = 5184; ++pub const __NR_fgetxattr: u32 = 5185; ++pub const __NR_listxattr: u32 = 5186; ++pub const __NR_llistxattr: u32 = 5187; ++pub const __NR_flistxattr: u32 = 5188; ++pub const __NR_removexattr: u32 = 5189; ++pub const __NR_lremovexattr: u32 = 5190; ++pub const __NR_fremovexattr: u32 = 5191; ++pub const __NR_tkill: u32 = 5192; ++pub const __NR_reserved193: u32 = 5193; ++pub const __NR_futex: u32 = 5194; ++pub const __NR_sched_setaffinity: u32 = 5195; ++pub const __NR_sched_getaffinity: u32 = 5196; ++pub const __NR_cacheflush: u32 = 5197; ++pub const __NR_cachectl: u32 = 5198; ++pub const __NR_sysmips: u32 = 5199; ++pub const __NR_io_setup: u32 = 5200; ++pub const __NR_io_destroy: u32 = 5201; ++pub const __NR_io_getevents: u32 = 5202; ++pub const __NR_io_submit: u32 = 5203; ++pub const __NR_io_cancel: u32 = 5204; ++pub const __NR_exit_group: u32 = 5205; ++pub const __NR_lookup_dcookie: u32 = 5206; ++pub const __NR_epoll_create: u32 = 5207; ++pub const __NR_epoll_ctl: u32 = 5208; ++pub const __NR_epoll_wait: u32 = 5209; ++pub const __NR_remap_file_pages: u32 = 5210; ++pub const __NR_rt_sigreturn: u32 = 5211; ++pub const __NR_set_tid_address: u32 = 5212; ++pub const __NR_restart_syscall: u32 = 5213; ++pub const __NR_semtimedop: u32 = 5214; ++pub const __NR_fadvise64: u32 = 5215; ++pub const __NR_timer_create: u32 = 5216; ++pub const __NR_timer_settime: u32 = 5217; ++pub const __NR_timer_gettime: u32 = 5218; ++pub const __NR_timer_getoverrun: u32 = 5219; ++pub const __NR_timer_delete: u32 = 5220; ++pub const __NR_clock_settime: u32 = 5221; ++pub const __NR_clock_gettime: u32 = 5222; ++pub const __NR_clock_getres: u32 = 5223; ++pub const __NR_clock_nanosleep: u32 = 5224; ++pub const __NR_tgkill: u32 = 5225; ++pub const __NR_utimes: u32 = 5226; ++pub const __NR_mbind: u32 = 5227; ++pub const __NR_get_mempolicy: u32 = 5228; ++pub const __NR_set_mempolicy: u32 = 5229; ++pub const __NR_mq_open: u32 = 5230; ++pub const __NR_mq_unlink: u32 = 5231; ++pub const __NR_mq_timedsend: u32 = 5232; ++pub const __NR_mq_timedreceive: u32 = 5233; ++pub const __NR_mq_notify: u32 = 5234; ++pub const __NR_mq_getsetattr: u32 = 5235; ++pub const __NR_vserver: u32 = 5236; ++pub const __NR_waitid: u32 = 5237; ++pub const __NR_add_key: u32 = 5239; ++pub const __NR_request_key: u32 = 5240; ++pub const __NR_keyctl: u32 = 5241; ++pub const __NR_set_thread_area: u32 = 5242; ++pub const __NR_inotify_init: u32 = 5243; ++pub const __NR_inotify_add_watch: u32 = 5244; ++pub const __NR_inotify_rm_watch: u32 = 5245; ++pub const __NR_migrate_pages: u32 = 5246; ++pub const __NR_openat: u32 = 5247; ++pub const __NR_mkdirat: u32 = 5248; ++pub const __NR_mknodat: u32 = 5249; ++pub const __NR_fchownat: u32 = 5250; ++pub const __NR_futimesat: u32 = 5251; ++pub const __NR_newfstatat: u32 = 5252; ++pub const __NR_unlinkat: u32 = 5253; ++pub const __NR_renameat: u32 = 5254; ++pub const __NR_linkat: u32 = 5255; ++pub const __NR_symlinkat: u32 = 5256; ++pub const __NR_readlinkat: u32 = 5257; ++pub const __NR_fchmodat: u32 = 5258; ++pub const __NR_faccessat: u32 = 5259; ++pub const __NR_pselect6: u32 = 5260; ++pub const __NR_ppoll: u32 = 5261; ++pub const __NR_unshare: u32 = 5262; ++pub const __NR_splice: u32 = 5263; ++pub const __NR_sync_file_range: u32 = 5264; ++pub const __NR_tee: u32 = 5265; ++pub const __NR_vmsplice: u32 = 5266; ++pub const __NR_move_pages: u32 = 5267; ++pub const __NR_set_robust_list: u32 = 5268; ++pub const __NR_get_robust_list: u32 = 5269; ++pub const __NR_kexec_load: u32 = 5270; ++pub const __NR_getcpu: u32 = 5271; ++pub const __NR_epoll_pwait: u32 = 5272; ++pub const __NR_ioprio_set: u32 = 5273; ++pub const __NR_ioprio_get: u32 = 5274; ++pub const __NR_utimensat: u32 = 5275; ++pub const __NR_signalfd: u32 = 5276; ++pub const __NR_timerfd: u32 = 5277; ++pub const __NR_eventfd: u32 = 5278; ++pub const __NR_fallocate: u32 = 5279; ++pub const __NR_timerfd_create: u32 = 5280; ++pub const __NR_timerfd_gettime: u32 = 5281; ++pub const __NR_timerfd_settime: u32 = 5282; ++pub const __NR_signalfd4: u32 = 5283; ++pub const __NR_eventfd2: u32 = 5284; ++pub const __NR_epoll_create1: u32 = 5285; ++pub const __NR_dup3: u32 = 5286; ++pub const __NR_pipe2: u32 = 5287; ++pub const __NR_inotify_init1: u32 = 5288; ++pub const __NR_preadv: u32 = 5289; ++pub const __NR_pwritev: u32 = 5290; ++pub const __NR_rt_tgsigqueueinfo: u32 = 5291; ++pub const __NR_perf_event_open: u32 = 5292; ++pub const __NR_accept4: u32 = 5293; ++pub const __NR_recvmmsg: u32 = 5294; ++pub const __NR_fanotify_init: u32 = 5295; ++pub const __NR_fanotify_mark: u32 = 5296; ++pub const __NR_prlimit64: u32 = 5297; ++pub const __NR_name_to_handle_at: u32 = 5298; ++pub const __NR_open_by_handle_at: u32 = 5299; ++pub const __NR_clock_adjtime: u32 = 5300; ++pub const __NR_syncfs: u32 = 5301; ++pub const __NR_sendmmsg: u32 = 5302; ++pub const __NR_setns: u32 = 5303; ++pub const __NR_process_vm_readv: u32 = 5304; ++pub const __NR_process_vm_writev: u32 = 5305; ++pub const __NR_kcmp: u32 = 5306; ++pub const __NR_finit_module: u32 = 5307; ++pub const __NR_getdents64: u32 = 5308; ++pub const __NR_sched_setattr: u32 = 5309; ++pub const __NR_sched_getattr: u32 = 5310; ++pub const __NR_renameat2: u32 = 5311; ++pub const __NR_seccomp: u32 = 5312; ++pub const __NR_getrandom: u32 = 5313; ++pub const __NR_memfd_create: u32 = 5314; ++pub const __NR_bpf: u32 = 5315; ++pub const __NR_execveat: u32 = 5316; ++pub const __NR_userfaultfd: u32 = 5317; ++pub const __NR_membarrier: u32 = 5318; ++pub const __NR_mlock2: u32 = 5319; ++pub const __NR_copy_file_range: u32 = 5320; ++pub const __NR_preadv2: u32 = 5321; ++pub const __NR_pwritev2: u32 = 5322; ++pub const __NR_pkey_mprotect: u32 = 5323; ++pub const __NR_pkey_alloc: u32 = 5324; ++pub const __NR_pkey_free: u32 = 5325; ++pub const __NR_statx: u32 = 5326; ++pub const __NR_rseq: u32 = 5327; ++pub const __NR_io_pgetevents: u32 = 5328; ++pub const __NR_pidfd_send_signal: u32 = 5424; ++pub const __NR_io_uring_setup: u32 = 5425; ++pub const __NR_io_uring_enter: u32 = 5426; ++pub const __NR_io_uring_register: u32 = 5427; ++pub const __NR_open_tree: u32 = 5428; ++pub const __NR_move_mount: u32 = 5429; ++pub const __NR_fsopen: u32 = 5430; ++pub const __NR_fsconfig: u32 = 5431; ++pub const __NR_fsmount: u32 = 5432; ++pub const __NR_fspick: u32 = 5433; ++pub const __NR_pidfd_open: u32 = 5434; ++pub const __NR_clone3: u32 = 5435; ++pub const __NR_close_range: u32 = 5436; ++pub const __NR_openat2: u32 = 5437; ++pub const __NR_pidfd_getfd: u32 = 5438; ++pub const __NR_faccessat2: u32 = 5439; ++pub const __NR_process_madvise: u32 = 5440; ++pub const __NR_epoll_pwait2: u32 = 5441; ++pub const __NR_mount_setattr: u32 = 5442; ++pub const __NR_quotactl_fd: u32 = 5443; ++pub const __NR_landlock_create_ruleset: u32 = 5444; ++pub const __NR_landlock_add_rule: u32 = 5445; ++pub const __NR_landlock_restrict_self: u32 = 5446; ++pub const __NR_process_mrelease: u32 = 5448; ++pub const __NR_futex_waitv: u32 = 5449; ++pub const __NR_set_mempolicy_home_node: u32 = 5450; ++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_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 = 128; ++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_WRITEPROTECT: u32 = 6; ++pub const _UFFDIO_CONTINUE: u32 = 7; ++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_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 = 128; ++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 = 524416; ++pub const TFD_CREATE_FLAGS: u32 = 524416; ++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 POLLWRNORM: u32 = 4; ++pub const TCSANOW: u32 = 21518; ++pub const TCSADRAIN: u32 = 21519; ++pub const TCSAFLUSH: u32 = 21520; ++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(u32)] ++#[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, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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; 12usize], ++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] ++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]; ++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 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]; ++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 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 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); ++} ++} ++} ++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 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 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 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 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 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 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 ++} ++} +diff --git a/vendor/linux-raw-sys-0.4.15/src/sw64/if_arp.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/if_arp.rs +new file mode 100644 +index 00000000000..2bdb2b0f291 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/if_arp.rs +@@ -0,0 +1,2675 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 type_flags: __u16, ++pub id: __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_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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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 __BIG_ENDIAN: u32 = 4321; ++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_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_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_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_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_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 VNIFILTER_ENTRY_STATS_UNSPEC: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_UNSPEC; ++pub const VNIFILTER_ENTRY_STATS_RX_BYTES: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_RX_BYTES; ++pub const VNIFILTER_ENTRY_STATS_RX_PKTS: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_RX_PKTS; ++pub const VNIFILTER_ENTRY_STATS_RX_DROPS: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_RX_DROPS; ++pub const VNIFILTER_ENTRY_STATS_RX_ERRORS: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_RX_ERRORS; ++pub const VNIFILTER_ENTRY_STATS_TX_BYTES: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_TX_BYTES; ++pub const VNIFILTER_ENTRY_STATS_TX_PKTS: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_TX_PKTS; ++pub const VNIFILTER_ENTRY_STATS_TX_DROPS: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_TX_DROPS; ++pub const VNIFILTER_ENTRY_STATS_TX_ERRORS: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_TX_ERRORS; ++pub const VNIFILTER_ENTRY_STATS_PAD: _bindgen_ty_20 = _bindgen_ty_20::VNIFILTER_ENTRY_STATS_PAD; ++pub const __VNIFILTER_ENTRY_STATS_MAX: _bindgen_ty_20 = _bindgen_ty_20::__VNIFILTER_ENTRY_STATS_MAX; ++pub const VXLAN_VNIFILTER_ENTRY_UNSPEC: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY_UNSPEC; ++pub const VXLAN_VNIFILTER_ENTRY_START: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY_START; ++pub const VXLAN_VNIFILTER_ENTRY_END: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY_END; ++pub const VXLAN_VNIFILTER_ENTRY_GROUP: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY_GROUP; ++pub const VXLAN_VNIFILTER_ENTRY_GROUP6: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY_GROUP6; ++pub const VXLAN_VNIFILTER_ENTRY_STATS: _bindgen_ty_21 = _bindgen_ty_21::VXLAN_VNIFILTER_ENTRY_STATS; ++pub const __VXLAN_VNIFILTER_ENTRY_MAX: _bindgen_ty_21 = _bindgen_ty_21::__VXLAN_VNIFILTER_ENTRY_MAX; ++pub const VXLAN_VNIFILTER_UNSPEC: _bindgen_ty_22 = _bindgen_ty_22::VXLAN_VNIFILTER_UNSPEC; ++pub const VXLAN_VNIFILTER_ENTRY: _bindgen_ty_22 = _bindgen_ty_22::VXLAN_VNIFILTER_ENTRY; ++pub const __VXLAN_VNIFILTER_MAX: _bindgen_ty_22 = _bindgen_ty_22::__VXLAN_VNIFILTER_MAX; ++pub const IFLA_VXLAN_UNSPEC: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_UNSPEC; ++pub const IFLA_VXLAN_ID: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_ID; ++pub const IFLA_VXLAN_GROUP: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_GROUP; ++pub const IFLA_VXLAN_LINK: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_LINK; ++pub const IFLA_VXLAN_LOCAL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_LOCAL; ++pub const IFLA_VXLAN_TTL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_TTL; ++pub const IFLA_VXLAN_TOS: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_TOS; ++pub const IFLA_VXLAN_LEARNING: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_LEARNING; ++pub const IFLA_VXLAN_AGEING: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_AGEING; ++pub const IFLA_VXLAN_LIMIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_LIMIT; ++pub const IFLA_VXLAN_PORT_RANGE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_PORT_RANGE; ++pub const IFLA_VXLAN_PROXY: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_PROXY; ++pub const IFLA_VXLAN_RSC: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_RSC; ++pub const IFLA_VXLAN_L2MISS: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_L2MISS; ++pub const IFLA_VXLAN_L3MISS: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_L3MISS; ++pub const IFLA_VXLAN_PORT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_PORT; ++pub const IFLA_VXLAN_GROUP6: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_GROUP6; ++pub const IFLA_VXLAN_LOCAL6: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_LOCAL6; ++pub const IFLA_VXLAN_UDP_CSUM: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_UDP_CSUM; ++pub const IFLA_VXLAN_UDP_ZERO_CSUM6_TX: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_UDP_ZERO_CSUM6_TX; ++pub const IFLA_VXLAN_UDP_ZERO_CSUM6_RX: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_UDP_ZERO_CSUM6_RX; ++pub const IFLA_VXLAN_REMCSUM_TX: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_REMCSUM_TX; ++pub const IFLA_VXLAN_REMCSUM_RX: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_REMCSUM_RX; ++pub const IFLA_VXLAN_GBP: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_GBP; ++pub const IFLA_VXLAN_REMCSUM_NOPARTIAL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_REMCSUM_NOPARTIAL; ++pub const IFLA_VXLAN_COLLECT_METADATA: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_COLLECT_METADATA; ++pub const IFLA_VXLAN_LABEL: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_LABEL; ++pub const IFLA_VXLAN_GPE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_GPE; ++pub const IFLA_VXLAN_TTL_INHERIT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_TTL_INHERIT; ++pub const IFLA_VXLAN_DF: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_DF; ++pub const IFLA_VXLAN_VNIFILTER: _bindgen_ty_23 = _bindgen_ty_23::IFLA_VXLAN_VNIFILTER; ++pub const __IFLA_VXLAN_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_VXLAN_MAX; ++pub const IFLA_GENEVE_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_UNSPEC; ++pub const IFLA_GENEVE_ID: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_ID; ++pub const IFLA_GENEVE_REMOTE: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_REMOTE; ++pub const IFLA_GENEVE_TTL: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_TTL; ++pub const IFLA_GENEVE_TOS: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_TOS; ++pub const IFLA_GENEVE_PORT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_PORT; ++pub const IFLA_GENEVE_COLLECT_METADATA: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_COLLECT_METADATA; ++pub const IFLA_GENEVE_REMOTE6: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_REMOTE6; ++pub const IFLA_GENEVE_UDP_CSUM: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_UDP_CSUM; ++pub const IFLA_GENEVE_UDP_ZERO_CSUM6_TX: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_UDP_ZERO_CSUM6_TX; ++pub const IFLA_GENEVE_UDP_ZERO_CSUM6_RX: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_UDP_ZERO_CSUM6_RX; ++pub const IFLA_GENEVE_LABEL: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_LABEL; ++pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_TTL_INHERIT; ++pub const IFLA_GENEVE_DF: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_DF; ++pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_24 = _bindgen_ty_24::IFLA_GENEVE_INNER_PROTO_INHERIT; ++pub const __IFLA_GENEVE_MAX: _bindgen_ty_24 = _bindgen_ty_24::__IFLA_GENEVE_MAX; ++pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_25 = _bindgen_ty_25::IFLA_BAREUDP_UNSPEC; ++pub const IFLA_BAREUDP_PORT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_BAREUDP_PORT; ++pub const IFLA_BAREUDP_ETHERTYPE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_BAREUDP_ETHERTYPE; ++pub const IFLA_BAREUDP_SRCPORT_MIN: _bindgen_ty_25 = _bindgen_ty_25::IFLA_BAREUDP_SRCPORT_MIN; ++pub const IFLA_BAREUDP_MULTIPROTO_MODE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_BAREUDP_MULTIPROTO_MODE; ++pub const __IFLA_BAREUDP_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_BAREUDP_MAX; ++pub const IFLA_PPP_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_PPP_UNSPEC; ++pub const IFLA_PPP_DEV_FD: _bindgen_ty_26 = _bindgen_ty_26::IFLA_PPP_DEV_FD; ++pub const __IFLA_PPP_MAX: _bindgen_ty_26 = _bindgen_ty_26::__IFLA_PPP_MAX; ++pub const IFLA_GTP_UNSPEC: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_UNSPEC; ++pub const IFLA_GTP_FD0: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_FD0; ++pub const IFLA_GTP_FD1: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_FD1; ++pub const IFLA_GTP_PDP_HASHSIZE: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_PDP_HASHSIZE; ++pub const IFLA_GTP_ROLE: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_ROLE; ++pub const IFLA_GTP_CREATE_SOCKETS: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_CREATE_SOCKETS; ++pub const IFLA_GTP_RESTART_COUNT: _bindgen_ty_27 = _bindgen_ty_27::IFLA_GTP_RESTART_COUNT; ++pub const __IFLA_GTP_MAX: _bindgen_ty_27 = _bindgen_ty_27::__IFLA_GTP_MAX; ++pub const IFLA_BOND_UNSPEC: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_UNSPEC; ++pub const IFLA_BOND_MODE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_MODE; ++pub const IFLA_BOND_ACTIVE_SLAVE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_ACTIVE_SLAVE; ++pub const IFLA_BOND_MIIMON: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_MIIMON; ++pub const IFLA_BOND_UPDELAY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_UPDELAY; ++pub const IFLA_BOND_DOWNDELAY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_DOWNDELAY; ++pub const IFLA_BOND_USE_CARRIER: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_USE_CARRIER; ++pub const IFLA_BOND_ARP_INTERVAL: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_ARP_INTERVAL; ++pub const IFLA_BOND_ARP_IP_TARGET: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_ARP_IP_TARGET; ++pub const IFLA_BOND_ARP_VALIDATE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_ARP_VALIDATE; ++pub const IFLA_BOND_ARP_ALL_TARGETS: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_ARP_ALL_TARGETS; ++pub const IFLA_BOND_PRIMARY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_PRIMARY; ++pub const IFLA_BOND_PRIMARY_RESELECT: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_PRIMARY_RESELECT; ++pub const IFLA_BOND_FAIL_OVER_MAC: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_FAIL_OVER_MAC; ++pub const IFLA_BOND_XMIT_HASH_POLICY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_XMIT_HASH_POLICY; ++pub const IFLA_BOND_RESEND_IGMP: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_RESEND_IGMP; ++pub const IFLA_BOND_NUM_PEER_NOTIF: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_NUM_PEER_NOTIF; ++pub const IFLA_BOND_ALL_SLAVES_ACTIVE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_ALL_SLAVES_ACTIVE; ++pub const IFLA_BOND_MIN_LINKS: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_MIN_LINKS; ++pub const IFLA_BOND_LP_INTERVAL: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_LP_INTERVAL; ++pub const IFLA_BOND_PACKETS_PER_SLAVE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_PACKETS_PER_SLAVE; ++pub const IFLA_BOND_AD_LACP_RATE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_LACP_RATE; ++pub const IFLA_BOND_AD_SELECT: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_SELECT; ++pub const IFLA_BOND_AD_INFO: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_INFO; ++pub const IFLA_BOND_AD_ACTOR_SYS_PRIO: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_ACTOR_SYS_PRIO; ++pub const IFLA_BOND_AD_USER_PORT_KEY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_USER_PORT_KEY; ++pub const IFLA_BOND_AD_ACTOR_SYSTEM: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_ACTOR_SYSTEM; ++pub const IFLA_BOND_TLB_DYNAMIC_LB: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_TLB_DYNAMIC_LB; ++pub const IFLA_BOND_PEER_NOTIF_DELAY: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_PEER_NOTIF_DELAY; ++pub const IFLA_BOND_AD_LACP_ACTIVE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_AD_LACP_ACTIVE; ++pub const IFLA_BOND_MISSED_MAX: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_MISSED_MAX; ++pub const IFLA_BOND_NS_IP6_TARGET: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_NS_IP6_TARGET; ++pub const __IFLA_BOND_MAX: _bindgen_ty_28 = _bindgen_ty_28::__IFLA_BOND_MAX; ++pub const IFLA_BOND_AD_INFO_UNSPEC: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO_UNSPEC; ++pub const IFLA_BOND_AD_INFO_AGGREGATOR: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO_AGGREGATOR; ++pub const IFLA_BOND_AD_INFO_NUM_PORTS: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO_NUM_PORTS; ++pub const IFLA_BOND_AD_INFO_ACTOR_KEY: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO_ACTOR_KEY; ++pub const IFLA_BOND_AD_INFO_PARTNER_KEY: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO_PARTNER_KEY; ++pub const IFLA_BOND_AD_INFO_PARTNER_MAC: _bindgen_ty_29 = _bindgen_ty_29::IFLA_BOND_AD_INFO_PARTNER_MAC; ++pub const __IFLA_BOND_AD_INFO_MAX: _bindgen_ty_29 = _bindgen_ty_29::__IFLA_BOND_AD_INFO_MAX; ++pub const IFLA_BOND_SLAVE_UNSPEC: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_UNSPEC; ++pub const IFLA_BOND_SLAVE_STATE: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_STATE; ++pub const IFLA_BOND_SLAVE_MII_STATUS: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_MII_STATUS; ++pub const IFLA_BOND_SLAVE_LINK_FAILURE_COUNT: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_LINK_FAILURE_COUNT; ++pub const IFLA_BOND_SLAVE_PERM_HWADDR: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_PERM_HWADDR; ++pub const IFLA_BOND_SLAVE_QUEUE_ID: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_QUEUE_ID; ++pub const IFLA_BOND_SLAVE_AD_AGGREGATOR_ID: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_AD_AGGREGATOR_ID; ++pub const IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE; ++pub const IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE; ++pub const IFLA_BOND_SLAVE_PRIO: _bindgen_ty_30 = _bindgen_ty_30::IFLA_BOND_SLAVE_PRIO; ++pub const __IFLA_BOND_SLAVE_MAX: _bindgen_ty_30 = _bindgen_ty_30::__IFLA_BOND_SLAVE_MAX; ++pub const IFLA_VF_INFO_UNSPEC: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_INFO_UNSPEC; ++pub const IFLA_VF_INFO: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_INFO; ++pub const __IFLA_VF_INFO_MAX: _bindgen_ty_31 = _bindgen_ty_31::__IFLA_VF_INFO_MAX; ++pub const IFLA_VF_UNSPEC: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_UNSPEC; ++pub const IFLA_VF_MAC: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_MAC; ++pub const IFLA_VF_VLAN: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_VLAN; ++pub const IFLA_VF_TX_RATE: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_TX_RATE; ++pub const IFLA_VF_SPOOFCHK: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_SPOOFCHK; ++pub const IFLA_VF_LINK_STATE: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_LINK_STATE; ++pub const IFLA_VF_RATE: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_RATE; ++pub const IFLA_VF_RSS_QUERY_EN: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_RSS_QUERY_EN; ++pub const IFLA_VF_STATS: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_STATS; ++pub const IFLA_VF_TRUST: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_TRUST; ++pub const IFLA_VF_IB_NODE_GUID: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_IB_NODE_GUID; ++pub const IFLA_VF_IB_PORT_GUID: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_IB_PORT_GUID; ++pub const IFLA_VF_VLAN_LIST: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_VLAN_LIST; ++pub const IFLA_VF_BROADCAST: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_BROADCAST; ++pub const __IFLA_VF_MAX: _bindgen_ty_32 = _bindgen_ty_32::__IFLA_VF_MAX; ++pub const IFLA_VF_VLAN_INFO_UNSPEC: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_VLAN_INFO_UNSPEC; ++pub const IFLA_VF_VLAN_INFO: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_VLAN_INFO; ++pub const __IFLA_VF_VLAN_INFO_MAX: _bindgen_ty_33 = _bindgen_ty_33::__IFLA_VF_VLAN_INFO_MAX; ++pub const IFLA_VF_LINK_STATE_AUTO: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_LINK_STATE_AUTO; ++pub const IFLA_VF_LINK_STATE_ENABLE: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_LINK_STATE_ENABLE; ++pub const IFLA_VF_LINK_STATE_DISABLE: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_LINK_STATE_DISABLE; ++pub const __IFLA_VF_LINK_STATE_MAX: _bindgen_ty_34 = _bindgen_ty_34::__IFLA_VF_LINK_STATE_MAX; ++pub const IFLA_VF_STATS_RX_PACKETS: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_RX_PACKETS; ++pub const IFLA_VF_STATS_TX_PACKETS: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_TX_PACKETS; ++pub const IFLA_VF_STATS_RX_BYTES: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_RX_BYTES; ++pub const IFLA_VF_STATS_TX_BYTES: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_TX_BYTES; ++pub const IFLA_VF_STATS_BROADCAST: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_BROADCAST; ++pub const IFLA_VF_STATS_MULTICAST: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_MULTICAST; ++pub const IFLA_VF_STATS_PAD: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_PAD; ++pub const IFLA_VF_STATS_RX_DROPPED: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_RX_DROPPED; ++pub const IFLA_VF_STATS_TX_DROPPED: _bindgen_ty_35 = _bindgen_ty_35::IFLA_VF_STATS_TX_DROPPED; ++pub const __IFLA_VF_STATS_MAX: _bindgen_ty_35 = _bindgen_ty_35::__IFLA_VF_STATS_MAX; ++pub const IFLA_VF_PORT_UNSPEC: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_PORT_UNSPEC; ++pub const IFLA_VF_PORT: _bindgen_ty_36 = _bindgen_ty_36::IFLA_VF_PORT; ++pub const __IFLA_VF_PORT_MAX: _bindgen_ty_36 = _bindgen_ty_36::__IFLA_VF_PORT_MAX; ++pub const IFLA_PORT_UNSPEC: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_UNSPEC; ++pub const IFLA_PORT_VF: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_VF; ++pub const IFLA_PORT_PROFILE: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_PROFILE; ++pub const IFLA_PORT_VSI_TYPE: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_VSI_TYPE; ++pub const IFLA_PORT_INSTANCE_UUID: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_INSTANCE_UUID; ++pub const IFLA_PORT_HOST_UUID: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_HOST_UUID; ++pub const IFLA_PORT_REQUEST: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_REQUEST; ++pub const IFLA_PORT_RESPONSE: _bindgen_ty_37 = _bindgen_ty_37::IFLA_PORT_RESPONSE; ++pub const __IFLA_PORT_MAX: _bindgen_ty_37 = _bindgen_ty_37::__IFLA_PORT_MAX; ++pub const PORT_REQUEST_PREASSOCIATE: _bindgen_ty_38 = _bindgen_ty_38::PORT_REQUEST_PREASSOCIATE; ++pub const PORT_REQUEST_PREASSOCIATE_RR: _bindgen_ty_38 = _bindgen_ty_38::PORT_REQUEST_PREASSOCIATE_RR; ++pub const PORT_REQUEST_ASSOCIATE: _bindgen_ty_38 = _bindgen_ty_38::PORT_REQUEST_ASSOCIATE; ++pub const PORT_REQUEST_DISASSOCIATE: _bindgen_ty_38 = _bindgen_ty_38::PORT_REQUEST_DISASSOCIATE; ++pub const PORT_VDP_RESPONSE_SUCCESS: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_SUCCESS; ++pub const PORT_VDP_RESPONSE_INVALID_FORMAT: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_INVALID_FORMAT; ++pub const PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES; ++pub const PORT_VDP_RESPONSE_UNUSED_VTID: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_UNUSED_VTID; ++pub const PORT_VDP_RESPONSE_VTID_VIOLATION: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_VTID_VIOLATION; ++pub const PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION; ++pub const PORT_VDP_RESPONSE_OUT_OF_SYNC: _bindgen_ty_39 = _bindgen_ty_39::PORT_VDP_RESPONSE_OUT_OF_SYNC; ++pub const PORT_PROFILE_RESPONSE_SUCCESS: _bindgen_ty_39 = _bindgen_ty_39::PORT_PROFILE_RESPONSE_SUCCESS; ++pub const PORT_PROFILE_RESPONSE_INPROGRESS: _bindgen_ty_39 = _bindgen_ty_39::PORT_PROFILE_RESPONSE_INPROGRESS; ++pub const PORT_PROFILE_RESPONSE_INVALID: _bindgen_ty_39 = _bindgen_ty_39::PORT_PROFILE_RESPONSE_INVALID; ++pub const PORT_PROFILE_RESPONSE_BADSTATE: _bindgen_ty_39 = _bindgen_ty_39::PORT_PROFILE_RESPONSE_BADSTATE; ++pub const PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_39 = _bindgen_ty_39::PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES; ++pub const PORT_PROFILE_RESPONSE_ERROR: _bindgen_ty_39 = _bindgen_ty_39::PORT_PROFILE_RESPONSE_ERROR; ++pub const IFLA_IPOIB_UNSPEC: _bindgen_ty_40 = _bindgen_ty_40::IFLA_IPOIB_UNSPEC; ++pub const IFLA_IPOIB_PKEY: _bindgen_ty_40 = _bindgen_ty_40::IFLA_IPOIB_PKEY; ++pub const IFLA_IPOIB_MODE: _bindgen_ty_40 = _bindgen_ty_40::IFLA_IPOIB_MODE; ++pub const IFLA_IPOIB_UMCAST: _bindgen_ty_40 = _bindgen_ty_40::IFLA_IPOIB_UMCAST; ++pub const __IFLA_IPOIB_MAX: _bindgen_ty_40 = _bindgen_ty_40::__IFLA_IPOIB_MAX; ++pub const IPOIB_MODE_DATAGRAM: _bindgen_ty_41 = _bindgen_ty_41::IPOIB_MODE_DATAGRAM; ++pub const IPOIB_MODE_CONNECTED: _bindgen_ty_41 = _bindgen_ty_41::IPOIB_MODE_CONNECTED; ++pub const HSR_PROTOCOL_HSR: _bindgen_ty_42 = _bindgen_ty_42::HSR_PROTOCOL_HSR; ++pub const HSR_PROTOCOL_PRP: _bindgen_ty_42 = _bindgen_ty_42::HSR_PROTOCOL_PRP; ++pub const HSR_PROTOCOL_MAX: _bindgen_ty_42 = _bindgen_ty_42::HSR_PROTOCOL_MAX; ++pub const IFLA_HSR_UNSPEC: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_UNSPEC; ++pub const IFLA_HSR_SLAVE1: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_SLAVE1; ++pub const IFLA_HSR_SLAVE2: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_SLAVE2; ++pub const IFLA_HSR_MULTICAST_SPEC: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_MULTICAST_SPEC; ++pub const IFLA_HSR_SUPERVISION_ADDR: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_SUPERVISION_ADDR; ++pub const IFLA_HSR_SEQ_NR: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_SEQ_NR; ++pub const IFLA_HSR_VERSION: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_VERSION; ++pub const IFLA_HSR_PROTOCOL: _bindgen_ty_43 = _bindgen_ty_43::IFLA_HSR_PROTOCOL; ++pub const __IFLA_HSR_MAX: _bindgen_ty_43 = _bindgen_ty_43::__IFLA_HSR_MAX; ++pub const IFLA_STATS_UNSPEC: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_UNSPEC; ++pub const IFLA_STATS_LINK_64: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_LINK_64; ++pub const IFLA_STATS_LINK_XSTATS: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_LINK_XSTATS; ++pub const IFLA_STATS_LINK_XSTATS_SLAVE: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_LINK_XSTATS_SLAVE; ++pub const IFLA_STATS_LINK_OFFLOAD_XSTATS: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_LINK_OFFLOAD_XSTATS; ++pub const IFLA_STATS_AF_SPEC: _bindgen_ty_44 = _bindgen_ty_44::IFLA_STATS_AF_SPEC; ++pub const __IFLA_STATS_MAX: _bindgen_ty_44 = _bindgen_ty_44::__IFLA_STATS_MAX; ++pub const IFLA_STATS_GETSET_UNSPEC: _bindgen_ty_45 = _bindgen_ty_45::IFLA_STATS_GETSET_UNSPEC; ++pub const IFLA_STATS_GET_FILTERS: _bindgen_ty_45 = _bindgen_ty_45::IFLA_STATS_GET_FILTERS; ++pub const IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_45 = _bindgen_ty_45::IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS; ++pub const __IFLA_STATS_GETSET_MAX: _bindgen_ty_45 = _bindgen_ty_45::__IFLA_STATS_GETSET_MAX; ++pub const LINK_XSTATS_TYPE_UNSPEC: _bindgen_ty_46 = _bindgen_ty_46::LINK_XSTATS_TYPE_UNSPEC; ++pub const LINK_XSTATS_TYPE_BRIDGE: _bindgen_ty_46 = _bindgen_ty_46::LINK_XSTATS_TYPE_BRIDGE; ++pub const LINK_XSTATS_TYPE_BOND: _bindgen_ty_46 = _bindgen_ty_46::LINK_XSTATS_TYPE_BOND; ++pub const __LINK_XSTATS_TYPE_MAX: _bindgen_ty_46 = _bindgen_ty_46::__LINK_XSTATS_TYPE_MAX; ++pub const IFLA_OFFLOAD_XSTATS_UNSPEC: _bindgen_ty_47 = _bindgen_ty_47::IFLA_OFFLOAD_XSTATS_UNSPEC; ++pub const IFLA_OFFLOAD_XSTATS_CPU_HIT: _bindgen_ty_47 = _bindgen_ty_47::IFLA_OFFLOAD_XSTATS_CPU_HIT; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO: _bindgen_ty_47 = _bindgen_ty_47::IFLA_OFFLOAD_XSTATS_HW_S_INFO; ++pub const IFLA_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_47 = _bindgen_ty_47::IFLA_OFFLOAD_XSTATS_L3_STATS; ++pub const __IFLA_OFFLOAD_XSTATS_MAX: _bindgen_ty_47 = _bindgen_ty_47::__IFLA_OFFLOAD_XSTATS_MAX; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC: _bindgen_ty_48 = _bindgen_ty_48::IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST: _bindgen_ty_48 = _bindgen_ty_48::IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED: _bindgen_ty_48 = _bindgen_ty_48::IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED; ++pub const __IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX: _bindgen_ty_48 = _bindgen_ty_48::__IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX; ++pub const XDP_ATTACHED_NONE: _bindgen_ty_49 = _bindgen_ty_49::XDP_ATTACHED_NONE; ++pub const XDP_ATTACHED_DRV: _bindgen_ty_49 = _bindgen_ty_49::XDP_ATTACHED_DRV; ++pub const XDP_ATTACHED_SKB: _bindgen_ty_49 = _bindgen_ty_49::XDP_ATTACHED_SKB; ++pub const XDP_ATTACHED_HW: _bindgen_ty_49 = _bindgen_ty_49::XDP_ATTACHED_HW; ++pub const XDP_ATTACHED_MULTI: _bindgen_ty_49 = _bindgen_ty_49::XDP_ATTACHED_MULTI; ++pub const IFLA_XDP_UNSPEC: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_UNSPEC; ++pub const IFLA_XDP_FD: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_FD; ++pub const IFLA_XDP_ATTACHED: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_ATTACHED; ++pub const IFLA_XDP_FLAGS: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_FLAGS; ++pub const IFLA_XDP_PROG_ID: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_PROG_ID; ++pub const IFLA_XDP_DRV_PROG_ID: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_DRV_PROG_ID; ++pub const IFLA_XDP_SKB_PROG_ID: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_SKB_PROG_ID; ++pub const IFLA_XDP_HW_PROG_ID: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_HW_PROG_ID; ++pub const IFLA_XDP_EXPECTED_FD: _bindgen_ty_50 = _bindgen_ty_50::IFLA_XDP_EXPECTED_FD; ++pub const __IFLA_XDP_MAX: _bindgen_ty_50 = _bindgen_ty_50::__IFLA_XDP_MAX; ++pub const IFLA_EVENT_NONE: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_NONE; ++pub const IFLA_EVENT_REBOOT: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_REBOOT; ++pub const IFLA_EVENT_FEATURES: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_FEATURES; ++pub const IFLA_EVENT_BONDING_FAILOVER: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_BONDING_FAILOVER; ++pub const IFLA_EVENT_NOTIFY_PEERS: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_NOTIFY_PEERS; ++pub const IFLA_EVENT_IGMP_RESEND: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_IGMP_RESEND; ++pub const IFLA_EVENT_BONDING_OPTIONS: _bindgen_ty_51 = _bindgen_ty_51::IFLA_EVENT_BONDING_OPTIONS; ++pub const IFLA_TUN_UNSPEC: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_UNSPEC; ++pub const IFLA_TUN_OWNER: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_OWNER; ++pub const IFLA_TUN_GROUP: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_GROUP; ++pub const IFLA_TUN_TYPE: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_TYPE; ++pub const IFLA_TUN_PI: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_PI; ++pub const IFLA_TUN_VNET_HDR: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_VNET_HDR; ++pub const IFLA_TUN_PERSIST: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_PERSIST; ++pub const IFLA_TUN_MULTI_QUEUE: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_MULTI_QUEUE; ++pub const IFLA_TUN_NUM_QUEUES: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_NUM_QUEUES; ++pub const IFLA_TUN_NUM_DISABLED_QUEUES: _bindgen_ty_52 = _bindgen_ty_52::IFLA_TUN_NUM_DISABLED_QUEUES; ++pub const __IFLA_TUN_MAX: _bindgen_ty_52 = _bindgen_ty_52::__IFLA_TUN_MAX; ++pub const IFLA_RMNET_UNSPEC: _bindgen_ty_53 = _bindgen_ty_53::IFLA_RMNET_UNSPEC; ++pub const IFLA_RMNET_MUX_ID: _bindgen_ty_53 = _bindgen_ty_53::IFLA_RMNET_MUX_ID; ++pub const IFLA_RMNET_FLAGS: _bindgen_ty_53 = _bindgen_ty_53::IFLA_RMNET_FLAGS; ++pub const __IFLA_RMNET_MAX: _bindgen_ty_53 = _bindgen_ty_53::__IFLA_RMNET_MAX; ++pub const IFLA_MCTP_UNSPEC: _bindgen_ty_54 = _bindgen_ty_54::IFLA_MCTP_UNSPEC; ++pub const IFLA_MCTP_NET: _bindgen_ty_54 = _bindgen_ty_54::IFLA_MCTP_NET; ++pub const __IFLA_MCTP_MAX: _bindgen_ty_54 = _bindgen_ty_54::__IFLA_MCTP_MAX; ++pub const IFLA_DSA_UNSPEC: _bindgen_ty_55 = _bindgen_ty_55::IFLA_DSA_UNSPEC; ++pub const IFLA_DSA_MASTER: _bindgen_ty_55 = _bindgen_ty_55::IFLA_DSA_MASTER; ++pub const __IFLA_DSA_MAX: _bindgen_ty_55 = _bindgen_ty_55::__IFLA_DSA_MAX; ++pub const IF_PORT_UNKNOWN: _bindgen_ty_56 = _bindgen_ty_56::IF_PORT_UNKNOWN; ++pub const IF_PORT_10BASE2: _bindgen_ty_56 = _bindgen_ty_56::IF_PORT_10BASE2; ++pub const IF_PORT_10BASET: _bindgen_ty_56 = _bindgen_ty_56::IF_PORT_10BASET; ++pub const IF_PORT_AUI: _bindgen_ty_56 = _bindgen_ty_56::IF_PORT_AUI; ++pub const IF_PORT_100BASET: _bindgen_ty_56 = _bindgen_ty_56::IF_PORT_100BASET; ++pub const IF_PORT_100BASETX: _bindgen_ty_56 = _bindgen_ty_56::IF_PORT_100BASETX; ++pub const IF_PORT_100BASEFX: _bindgen_ty_56 = _bindgen_ty_56::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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum tpacket_versions { ++TPACKET_V1 = 0, ++TPACKET_V2 = 1, ++TPACKET_V3 = 2, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_3 { ++NETLINK_UNCONNECTED = 0, ++NETLINK_CONNECTED = 1, ++} ++#[repr(u32)] ++#[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, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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_MAX = 65, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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_MAX = 48, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_9 { ++BRIDGE_MODE_UNSPEC = 0, ++BRIDGE_MODE_HAIRPIN = 1, ++} ++#[repr(u32)] ++#[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_MAX = 43, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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_MAX = 9, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_20 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_21 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_22 { ++VXLAN_VNIFILTER_UNSPEC = 0, ++VXLAN_VNIFILTER_ENTRY = 1, ++__VXLAN_VNIFILTER_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_23 { ++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_MAX = 31, ++} ++#[repr(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_24 { ++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_MAX = 15, ++} ++#[repr(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_25 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_26 { ++IFLA_PPP_UNSPEC = 0, ++IFLA_PPP_DEV_FD = 1, ++__IFLA_PPP_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum ifla_gtp_role { ++GTP_ROLE_GGSN = 0, ++GTP_ROLE_SGSN = 1, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_27 { ++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_MAX = 7, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_28 { ++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_MAX = 32, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_29 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_30 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_31 { ++IFLA_VF_INFO_UNSPEC = 0, ++IFLA_VF_INFO = 1, ++__IFLA_VF_INFO_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_32 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_33 { ++IFLA_VF_VLAN_INFO_UNSPEC = 0, ++IFLA_VF_VLAN_INFO = 1, ++__IFLA_VF_VLAN_INFO_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_34 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_35 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_36 { ++IFLA_VF_PORT_UNSPEC = 0, ++IFLA_VF_PORT = 1, ++__IFLA_VF_PORT_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_37 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_38 { ++PORT_REQUEST_PREASSOCIATE = 0, ++PORT_REQUEST_PREASSOCIATE_RR = 1, ++PORT_REQUEST_ASSOCIATE = 2, ++PORT_REQUEST_DISASSOCIATE = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_39 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_40 { ++IFLA_IPOIB_UNSPEC = 0, ++IFLA_IPOIB_PKEY = 1, ++IFLA_IPOIB_MODE = 2, ++IFLA_IPOIB_UMCAST = 3, ++__IFLA_IPOIB_MAX = 4, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_41 { ++IPOIB_MODE_DATAGRAM = 0, ++IPOIB_MODE_CONNECTED = 1, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_42 { ++HSR_PROTOCOL_HSR = 0, ++HSR_PROTOCOL_PRP = 1, ++HSR_PROTOCOL_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_43 { ++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_MAX = 8, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_44 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_45 { ++IFLA_STATS_GETSET_UNSPEC = 0, ++IFLA_STATS_GET_FILTERS = 1, ++IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS = 2, ++__IFLA_STATS_GETSET_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_46 { ++LINK_XSTATS_TYPE_UNSPEC = 0, ++LINK_XSTATS_TYPE_BRIDGE = 1, ++LINK_XSTATS_TYPE_BOND = 2, ++__LINK_XSTATS_TYPE_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_47 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_48 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_49 { ++XDP_ATTACHED_NONE = 0, ++XDP_ATTACHED_DRV = 1, ++XDP_ATTACHED_SKB = 2, ++XDP_ATTACHED_HW = 3, ++XDP_ATTACHED_MULTI = 4, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_50 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_51 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_52 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_53 { ++IFLA_RMNET_UNSPEC = 0, ++IFLA_RMNET_MUX_ID = 1, ++IFLA_RMNET_FLAGS = 2, ++__IFLA_RMNET_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_54 { ++IFLA_MCTP_UNSPEC = 0, ++IFLA_MCTP_NET = 1, ++__IFLA_MCTP_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_55 { ++IFLA_DSA_UNSPEC = 0, ++IFLA_DSA_MASTER = 1, ++__IFLA_DSA_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_56 { ++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_geneve_df { ++pub const GENEVE_DF_MAX: ifla_geneve_df = ifla_geneve_df::GENEVE_DF_INHERIT; ++} +diff --git a/vendor/linux-raw-sys-0.4.15/src/sw64/if_ether.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/if_ether.rs +new file mode 100644 +index 00000000000..eb0f52245a7 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/if_ether.rs +@@ -0,0 +1,177 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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/vendor/linux-raw-sys-0.4.15/src/sw64/if_packet.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/if_packet.rs +new file mode 100644 +index 00000000000..d5365ad1578 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/if_packet.rs +@@ -0,0 +1,317 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 type_flags: __u16, ++pub id: __u16, ++pub max_num_members: __u32, ++} ++pub const __BIG_ENDIAN: u32 = 4321; ++pub const _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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_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(u32)] ++#[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/vendor/linux-raw-sys-0.4.15/src/sw64/io_uring.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/io_uring.rs +new file mode 100644 +index 00000000000..dfef0637245 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/io_uring.rs +@@ -0,0 +1,1096 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 __reserved: [__u8; 4usize], ++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 __reserved: __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 __reserved: [__u32; 8usize], ++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, 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 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 __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_5__bindgen_ty_1 { ++pub addr_len: __u16, ++pub __pad3: [__u16; 1usize], ++} ++#[repr(C)] ++pub struct io_uring_sqe__bindgen_ty_6 { ++pub __bindgen_anon_1: __BindgenUnionField, ++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)] ++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 resv2: __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 resv2: __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_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_notification_slot { ++pub tag: __u64, ++pub resv: [__u64; 3usize], ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct io_uring_notification_register { ++pub nr_slots: __u32, ++pub resv: __u32, ++pub resv2: __u64, ++pub data: __u64, ++pub resv3: __u64, ++} ++#[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_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 pad: __u16, ++pub resv: [__u64; 3usize], ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct io_uring_getevents_arg { ++pub sigmask: __u64, ++pub sigmask_sz: __u32, ++pub pad: __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 pad: [__u64; 4usize], ++} ++#[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, ++} ++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_SIZEBITS: u32 = 13; ++pub const _IOC_DIRBITS: u32 = 3; ++pub const _IOC_NONE: u32 = 1; ++pub const _IOC_READ: u32 = 2; ++pub const _IOC_WRITE: u32 = 4; ++pub const _IOC_NRBITS: u32 = 8; ++pub const _IOC_TYPEBITS: u32 = 8; ++pub const _IOC_NRMASK: u32 = 255; ++pub const _IOC_TYPEMASK: u32 = 255; ++pub const _IOC_SIZEMASK: u32 = 8191; ++pub const _IOC_DIRMASK: u32 = 7; ++pub const _IOC_NRSHIFT: u32 = 0; ++pub const _IOC_TYPESHIFT: u32 = 8; ++pub const _IOC_SIZESHIFT: u32 = 16; ++pub const _IOC_DIRSHIFT: u32 = 29; ++pub const IOC_IN: u32 = 2147483648; ++pub const IOC_OUT: u32 = 1073741824; ++pub const IOC_INOUT: u32 = 3221225472; ++pub const IOCSIZE_MASK: u32 = 536805376; ++pub const IOCSIZE_SHIFT: u32 = 16; ++pub const _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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_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__MASK: u32 = 375; ++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 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 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 FILE_DEDUPE_RANGE_SAME: u32 = 0; ++pub const FILE_DEDUPE_RANGE_DIFFERS: u32 = 1; ++pub const NR_FILE: u32 = 8192; ++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 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_URING_CMD_FIXED: 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_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_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_NOTIF_USAGE_ZC_COPIED: u32 = 2147483648; ++pub const IORING_ACCEPT_MULTISHOT: u32 = 1; ++pub const IORING_MSG_RING_CQE_SKIP: u32 = 1; ++pub const IORING_MSG_RING_FLAGS_PASS: u32 = 2; ++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_OFF_SQ_RING: u32 = 0; ++pub const IORING_OFF_CQ_RING: u32 = 134217728; ++pub const IORING_OFF_SQES: u32 = 268435456; ++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_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_RSRC_REGISTER_SPARSE: u32 = 1; ++pub const IORING_REGISTER_FILES_SKIP: i32 = -2; ++pub const IO_URING_OP_SUPPORTED: u32 = 1; ++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 IOSQE_FIXED_FILE_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_FIXED_FILE_BIT; ++pub const IOSQE_IO_DRAIN_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_IO_DRAIN_BIT; ++pub const IOSQE_IO_LINK_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_IO_LINK_BIT; ++pub const IOSQE_IO_HARDLINK_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_IO_HARDLINK_BIT; ++pub const IOSQE_ASYNC_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_ASYNC_BIT; ++pub const IOSQE_BUFFER_SELECT_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_BUFFER_SELECT_BIT; ++pub const IOSQE_CQE_SKIP_SUCCESS_BIT: _bindgen_ty_1 = _bindgen_ty_1::IOSQE_CQE_SKIP_SUCCESS_BIT; ++pub const IORING_MSG_DATA: _bindgen_ty_2 = _bindgen_ty_2::IORING_MSG_DATA; ++pub const IORING_MSG_SEND_FD: _bindgen_ty_2 = _bindgen_ty_2::IORING_MSG_SEND_FD; ++pub const IORING_CQE_BUFFER_SHIFT: _bindgen_ty_3 = _bindgen_ty_3::IORING_CQE_BUFFER_SHIFT; ++pub const IORING_REGISTER_BUFFERS: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_BUFFERS; ++pub const IORING_UNREGISTER_BUFFERS: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_BUFFERS; ++pub const IORING_REGISTER_FILES: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_FILES; ++pub const IORING_UNREGISTER_FILES: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_FILES; ++pub const IORING_REGISTER_EVENTFD: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_EVENTFD; ++pub const IORING_UNREGISTER_EVENTFD: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_EVENTFD; ++pub const IORING_REGISTER_FILES_UPDATE: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_FILES_UPDATE; ++pub const IORING_REGISTER_EVENTFD_ASYNC: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_EVENTFD_ASYNC; ++pub const IORING_REGISTER_PROBE: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_PROBE; ++pub const IORING_REGISTER_PERSONALITY: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_PERSONALITY; ++pub const IORING_UNREGISTER_PERSONALITY: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_PERSONALITY; ++pub const IORING_REGISTER_RESTRICTIONS: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_RESTRICTIONS; ++pub const IORING_REGISTER_ENABLE_RINGS: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_ENABLE_RINGS; ++pub const IORING_REGISTER_FILES2: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_FILES2; ++pub const IORING_REGISTER_FILES_UPDATE2: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_FILES_UPDATE2; ++pub const IORING_REGISTER_BUFFERS2: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_BUFFERS2; ++pub const IORING_REGISTER_BUFFERS_UPDATE: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_BUFFERS_UPDATE; ++pub const IORING_REGISTER_IOWQ_AFF: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_IOWQ_AFF; ++pub const IORING_UNREGISTER_IOWQ_AFF: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_IOWQ_AFF; ++pub const IORING_REGISTER_IOWQ_MAX_WORKERS: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_IOWQ_MAX_WORKERS; ++pub const IORING_REGISTER_RING_FDS: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_RING_FDS; ++pub const IORING_UNREGISTER_RING_FDS: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_RING_FDS; ++pub const IORING_REGISTER_PBUF_RING: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_PBUF_RING; ++pub const IORING_UNREGISTER_PBUF_RING: _bindgen_ty_4 = _bindgen_ty_4::IORING_UNREGISTER_PBUF_RING; ++pub const IORING_REGISTER_SYNC_CANCEL: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_SYNC_CANCEL; ++pub const IORING_REGISTER_FILE_ALLOC_RANGE: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_FILE_ALLOC_RANGE; ++pub const IORING_REGISTER_LAST: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_LAST; ++pub const IORING_REGISTER_USE_REGISTERED_RING: _bindgen_ty_4 = _bindgen_ty_4::IORING_REGISTER_USE_REGISTERED_RING; ++pub const IO_WQ_BOUND: _bindgen_ty_5 = _bindgen_ty_5::IO_WQ_BOUND; ++pub const IO_WQ_UNBOUND: _bindgen_ty_5 = _bindgen_ty_5::IO_WQ_UNBOUND; ++pub const IORING_RESTRICTION_REGISTER_OP: _bindgen_ty_6 = _bindgen_ty_6::IORING_RESTRICTION_REGISTER_OP; ++pub const IORING_RESTRICTION_SQE_OP: _bindgen_ty_6 = _bindgen_ty_6::IORING_RESTRICTION_SQE_OP; ++pub const IORING_RESTRICTION_SQE_FLAGS_ALLOWED: _bindgen_ty_6 = _bindgen_ty_6::IORING_RESTRICTION_SQE_FLAGS_ALLOWED; ++pub const IORING_RESTRICTION_SQE_FLAGS_REQUIRED: _bindgen_ty_6 = _bindgen_ty_6::IORING_RESTRICTION_SQE_FLAGS_REQUIRED; ++pub const IORING_RESTRICTION_LAST: _bindgen_ty_6 = _bindgen_ty_6::IORING_RESTRICTION_LAST; ++#[repr(u32)] ++#[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, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_1 { ++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(u32)] ++#[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_LAST = 49, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_2 { ++IORING_MSG_DATA = 0, ++IORING_MSG_SEND_FD = 1, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_3 { ++IORING_CQE_BUFFER_SHIFT = 16, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_4 { ++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_LAST = 26, ++IORING_REGISTER_USE_REGISTERED_RING = 2147483648, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_5 { ++IO_WQ_BOUND = 0, ++IO_WQ_UNBOUND = 1, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_6 { ++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(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, ++} ++#[repr(C)] ++#[derive(Copy, Clone)] ++pub union io_uring_sqe__bindgen_ty_3 { ++pub rw_flags: __kernel_rwf_t, ++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, ++} ++#[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 __bindgen_anon_1: io_uring_sqe__bindgen_ty_5__bindgen_ty_1, ++} ++#[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/vendor/linux-raw-sys-0.4.15/src/sw64/ioctl.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/ioctl.rs +new file mode 100644 +index 00000000000..74049dd5e3e +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/ioctl.rs +@@ -0,0 +1,1600 @@ ++/* automatically generated by rust-bindgen 0.70.1 */ ++ ++pub const FIONREAD: u32 = 18047; ++pub const FIONBIO: u32 = 26238; ++pub const FIOCLEX: u32 = 26113; ++pub const FIONCLEX: u32 = 26114; ++pub const FIOASYNC: u32 = 26237; ++pub const FIOQSIZE: u32 = 26239; ++pub const TCXONC: u32 = 21510; ++pub const TCFLSH: u32 = 21511; ++pub const TIOCSCTTY: u32 = 21632; ++pub const TIOCSPGRP: u32 = 2147775606; ++pub const TIOCOUTQ: u32 = 29810; ++pub const TIOCSTI: u32 = 21618; ++pub const TIOCSWINSZ: u32 = 2148037735; ++pub const TIOCMGET: u32 = 29725; ++pub const TIOCMBIS: u32 = 29723; ++pub const TIOCMBIC: u32 = 29724; ++pub const TIOCMSET: u32 = 29722; ++pub const TIOCSSOFTCAR: u32 = 21634; ++pub const TIOCLINUX: u32 = 21635; ++pub const TIOCCONS: u32 = 2147775608; ++pub const TIOCSSERIAL: u32 = 21637; ++pub const TIOCPKT: u32 = 21616; ++pub const TIOCNOTTY: u32 = 21617; ++pub const TIOCSETD: u32 = 29697; ++pub const TIOCSBRK: u32 = 21543; ++pub const TIOCCBRK: u32 = 21544; ++pub const TIOCSPTLCK: u32 = 2147767345; ++pub const TIOCSIG: u32 = 2147767350; ++pub const TIOCVHANGUP: u32 = 21559; ++pub const TIOCSERCONFIG: u32 = 21640; ++pub const TIOCSERGWILD: u32 = 21641; ++pub const TIOCSERSWILD: u32 = 21642; ++pub const TIOCSLCKTRMIOS: u32 = 21644; ++pub const TIOCSERGSTRUCT: u32 = 21645; ++pub const TIOCSERGETLSR: u32 = 21646; ++pub const TIOCSERGETMULTI: u32 = 21647; ++pub const TIOCSERSETMULTI: u32 = 21648; ++pub const TIOCMIWAIT: u32 = 21649; ++pub const TCGETS: u32 = 21517; ++pub const TCGETA: u32 = 21505; ++pub const TCSBRK: u32 = 21509; ++pub const TCSBRKP: u32 = 21638; ++pub const TCSETA: u32 = 21506; ++pub const TCSETAF: u32 = 21508; ++pub const TCSETAW: u32 = 21507; ++pub const TIOCEXCL: u32 = 29709; ++pub const TIOCNXCL: u32 = 29710; ++pub const TIOCGDEV: u32 = 1074025522; ++pub const TIOCGEXCL: u32 = 1074025536; ++pub const TIOCGICOUNT: u32 = 21650; ++pub const TIOCGLCKTRMIOS: u32 = 21643; ++pub const TIOCGPGRP: u32 = 1074033783; ++pub const TIOCGPKT: u32 = 1074025528; ++pub const TIOCGPTLCK: u32 = 1074025529; ++pub const TIOCGPTN: u32 = 1074025520; ++pub const TIOCGPTPEER: u32 = 536892481; ++pub const TIOCGSERIAL: u32 = 21636; ++pub const TIOCGSID: u32 = 29718; ++pub const TIOCGSOFTCAR: u32 = 21633; ++pub const TIOCGWINSZ: u32 = 1074295912; ++pub const TCGETS2: u32 = 1076909098; ++pub const TCSETS: u32 = 21518; ++pub const TCSETS2: u32 = 2150650923; ++pub const TCSETSF: u32 = 21520; ++pub const TCSETSF2: u32 = 2150650925; ++pub const TCSETSW: u32 = 21519; ++pub const TCSETSW2: u32 = 2150650924; ++pub const TIOCGETD: u32 = 29696; ++pub const TIOCGETP: u32 = 29704; ++pub const TIOCGLTC: u32 = 29812; ++pub const MTIOCGET: u32 = 1077439746; ++pub const BLKSSZGET: u32 = 536875624; ++pub const BLKPBSZGET: u32 = 536875643; ++pub const BLKROSET: u32 = 536875613; ++pub const BLKROGET: u32 = 536875614; ++pub const BLKRRPART: u32 = 536875615; ++pub const BLKGETSIZE: u32 = 536875616; ++pub const BLKFLSBUF: u32 = 536875617; ++pub const BLKRASET: u32 = 536875618; ++pub const BLKRAGET: u32 = 536875619; ++pub const BLKFRASET: u32 = 536875620; ++pub const BLKFRAGET: u32 = 536875621; ++pub const BLKSECTSET: u32 = 536875622; ++pub const BLKSECTGET: u32 = 536875623; ++pub const BLKPG: u32 = 536875625; ++pub const BLKBSZGET: u32 = 1074270832; ++pub const BLKBSZSET: u32 = 2148012657; ++pub const BLKGETSIZE64: u32 = 1074270834; ++pub const BLKTRACESETUP: u32 = 3225948787; ++pub const BLKTRACESTART: u32 = 536875636; ++pub const BLKTRACESTOP: u32 = 536875637; ++pub const BLKTRACETEARDOWN: u32 = 536875638; ++pub const BLKDISCARD: u32 = 536875639; ++pub const BLKIOMIN: u32 = 536875640; ++pub const BLKIOOPT: u32 = 536875641; ++pub const BLKALIGNOFF: u32 = 536875642; ++pub const BLKDISCARDZEROES: u32 = 536875644; ++pub const BLKSECDISCARD: u32 = 536875645; ++pub const BLKROTATIONAL: u32 = 536875646; ++pub const BLKZEROOUT: u32 = 536875647; ++pub const FIEMAP_MAX_OFFSET: i32 = -1; ++pub const FIEMAP_FLAG_SYNC: u32 = 1; ++pub const FIEMAP_FLAG_XATTR: u32 = 2; ++pub const FIEMAP_FLAG_CACHE: u32 = 4; ++pub const FIEMAP_FLAGS_COMPAT: u32 = 3; ++pub const FIEMAP_EXTENT_LAST: u32 = 1; ++pub const FIEMAP_EXTENT_UNKNOWN: u32 = 2; ++pub const FIEMAP_EXTENT_DELALLOC: u32 = 4; ++pub const FIEMAP_EXTENT_ENCODED: u32 = 8; ++pub const FIEMAP_EXTENT_DATA_ENCRYPTED: u32 = 128; ++pub const FIEMAP_EXTENT_NOT_ALIGNED: u32 = 256; ++pub const FIEMAP_EXTENT_DATA_INLINE: u32 = 512; ++pub const FIEMAP_EXTENT_DATA_TAIL: u32 = 1024; ++pub const FIEMAP_EXTENT_UNWRITTEN: u32 = 2048; ++pub const FIEMAP_EXTENT_MERGED: u32 = 4096; ++pub const FIEMAP_EXTENT_SHARED: u32 = 8192; ++pub const UFFDIO_REGISTER: u32 = 3223366144; ++pub const UFFDIO_UNREGISTER: u32 = 1074833921; ++pub const UFFDIO_WAKE: u32 = 1074833922; ++pub const UFFDIO_COPY: u32 = 3223890435; ++pub const UFFDIO_ZEROPAGE: u32 = 3223366148; ++pub const UFFDIO_WRITEPROTECT: u32 = 3222841862; ++pub const UFFDIO_API: u32 = 3222841919; ++pub const NS_GET_USERNS: u32 = 536917761; ++pub const NS_GET_PARENT: u32 = 536917762; ++pub const NS_GET_NSTYPE: u32 = 536917763; ++pub const KDGETLED: u32 = 19249; ++pub const KDSETLED: u32 = 19250; ++pub const KDGKBLED: u32 = 19300; ++pub const KDSKBLED: u32 = 19301; ++pub const KDGKBTYPE: u32 = 19251; ++pub const KDADDIO: u32 = 19252; ++pub const KDDELIO: u32 = 19253; ++pub const KDENABIO: u32 = 19254; ++pub const KDDISABIO: u32 = 19255; ++pub const KDSETMODE: u32 = 19258; ++pub const KDGETMODE: u32 = 19259; ++pub const KDMKTONE: u32 = 19248; ++pub const KIOCSOUND: u32 = 19247; ++pub const GIO_CMAP: u32 = 19312; ++pub const PIO_CMAP: u32 = 19313; ++pub const GIO_FONT: u32 = 19296; ++pub const GIO_FONTX: u32 = 19307; ++pub const PIO_FONT: u32 = 19297; ++pub const PIO_FONTX: u32 = 19308; ++pub const PIO_FONTRESET: u32 = 19309; ++pub const GIO_SCRNMAP: u32 = 19264; ++pub const GIO_UNISCRNMAP: u32 = 19305; ++pub const PIO_SCRNMAP: u32 = 19265; ++pub const PIO_UNISCRNMAP: u32 = 19306; ++pub const GIO_UNIMAP: u32 = 19302; ++pub const PIO_UNIMAP: u32 = 19303; ++pub const PIO_UNIMAPCLR: u32 = 19304; ++pub const KDGKBMODE: u32 = 19268; ++pub const KDSKBMODE: u32 = 19269; ++pub const KDGKBMETA: u32 = 19298; ++pub const KDSKBMETA: u32 = 19299; ++pub const KDGKBENT: u32 = 19270; ++pub const KDSKBENT: u32 = 19271; ++pub const KDGKBSENT: u32 = 19272; ++pub const KDSKBSENT: u32 = 19273; ++pub const KDGKBDIACR: u32 = 19274; ++pub const KDGETKEYCODE: u32 = 19276; ++pub const KDSETKEYCODE: u32 = 19277; ++pub const KDSIGACCEPT: u32 = 19278; ++pub const VT_OPENQRY: u32 = 22016; ++pub const VT_GETMODE: u32 = 22017; ++pub const VT_SETMODE: u32 = 22018; ++pub const VT_GETSTATE: u32 = 22019; ++pub const VT_RELDISP: u32 = 22021; ++pub const VT_ACTIVATE: u32 = 22022; ++pub const VT_WAITACTIVE: u32 = 22023; ++pub const VT_DISALLOCATE: u32 = 22024; ++pub const VT_RESIZE: u32 = 22025; ++pub const VT_RESIZEX: u32 = 22026; ++pub const FIOSETOWN: u32 = 2147772028; ++pub const FIOGETOWN: u32 = 1074030203; ++pub const SIOCATMARK: u32 = 1074033415; ++pub const SIOCGSTAMP: u32 = 35078; ++pub const TIOCINQ: u32 = 18047; ++pub const SIOCADDRT: u32 = 35083; ++pub const SIOCDELRT: u32 = 35084; ++pub const SIOCGIFNAME: u32 = 35088; ++pub const SIOCSIFLINK: u32 = 35089; ++pub const SIOCGIFCONF: u32 = 35090; ++pub const SIOCGIFFLAGS: u32 = 35091; ++pub const SIOCSIFFLAGS: u32 = 35092; ++pub const SIOCGIFADDR: u32 = 35093; ++pub const SIOCSIFADDR: u32 = 35094; ++pub const SIOCGIFDSTADDR: u32 = 35095; ++pub const SIOCSIFDSTADDR: u32 = 35096; ++pub const SIOCGIFBRDADDR: u32 = 35097; ++pub const SIOCSIFBRDADDR: u32 = 35098; ++pub const SIOCGIFNETMASK: u32 = 35099; ++pub const SIOCSIFNETMASK: u32 = 35100; ++pub const SIOCGIFMETRIC: u32 = 35101; ++pub const SIOCSIFMETRIC: u32 = 35102; ++pub const SIOCGIFMEM: u32 = 35103; ++pub const SIOCSIFMEM: u32 = 35104; ++pub const SIOCGIFMTU: u32 = 35105; ++pub const SIOCSIFMTU: u32 = 35106; ++pub const SIOCSIFHWADDR: u32 = 35108; ++pub const SIOCGIFENCAP: u32 = 35109; ++pub const SIOCSIFENCAP: u32 = 35110; ++pub const SIOCGIFHWADDR: u32 = 35111; ++pub const SIOCGIFSLAVE: u32 = 35113; ++pub const SIOCSIFSLAVE: u32 = 35120; ++pub const SIOCADDMULTI: u32 = 35121; ++pub const SIOCDELMULTI: u32 = 35122; ++pub const SIOCDARP: u32 = 35155; ++pub const SIOCGARP: u32 = 35156; ++pub const SIOCSARP: u32 = 35157; ++pub const SIOCDRARP: u32 = 35168; ++pub const SIOCGRARP: u32 = 35169; ++pub const SIOCSRARP: u32 = 35170; ++pub const SIOCGIFMAP: u32 = 35184; ++pub const SIOCSIFMAP: u32 = 35185; ++pub const SIOCRTMSG: u32 = 35085; ++pub const SIOCSIFNAME: u32 = 35107; ++pub const SIOCGIFINDEX: u32 = 35123; ++pub const SIOGIFINDEX: u32 = 35123; ++pub const SIOCSIFPFLAGS: u32 = 35124; ++pub const SIOCGIFPFLAGS: u32 = 35125; ++pub const SIOCDIFADDR: u32 = 35126; ++pub const SIOCSIFHWBROADCAST: u32 = 35127; ++pub const SIOCGIFCOUNT: u32 = 35128; ++pub const SIOCGIFBR: u32 = 35136; ++pub const SIOCSIFBR: u32 = 35137; ++pub const SIOCGIFTXQLEN: u32 = 35138; ++pub const SIOCSIFTXQLEN: u32 = 35139; ++pub const SIOCADDDLCI: u32 = 35200; ++pub const SIOCDELDLCI: u32 = 35201; ++pub const SIOCDEVPRIVATE: u32 = 35312; ++pub const SIOCPROTOPRIVATE: u32 = 35296; ++pub const FIBMAP: u32 = 536870913; ++pub const FIGETBSZ: u32 = 536870914; ++pub const FIFREEZE: u32 = 3221510263; ++pub const FITHAW: u32 = 3221510264; ++pub const FITRIM: u32 = 3222820985; ++pub const FICLONE: u32 = 2147783689; ++pub const FICLONERANGE: u32 = 2149618701; ++pub const FIDEDUPERANGE: u32 = 3222836278; ++pub const FS_IOC_GETFLAGS: u32 = 1074292225; ++pub const FS_IOC_SETFLAGS: u32 = 2148034050; ++pub const FS_IOC_GETVERSION: u32 = 1074296321; ++pub const FS_IOC_SETVERSION: u32 = 2148038146; ++pub const FS_IOC_FIEMAP: u32 = 3223348747; ++pub const FS_IOC32_GETFLAGS: u32 = 1074030081; ++pub const FS_IOC32_SETFLAGS: u32 = 2147771906; ++pub const FS_IOC32_GETVERSION: u32 = 1074034177; ++pub const FS_IOC32_SETVERSION: u32 = 2147776002; ++pub const FS_IOC_FSGETXATTR: u32 = 1075599391; ++pub const FS_IOC_FSSETXATTR: u32 = 2149341216; ++pub const FS_IOC_GETFSLABEL: u32 = 1090556977; ++pub const FS_IOC_SETFSLABEL: u32 = 2164298802; ++pub const EXT4_IOC_GETVERSION: u32 = 1074292227; ++pub const EXT4_IOC_SETVERSION: u32 = 2148034052; ++pub const EXT4_IOC_GETVERSION_OLD: u32 = 1074296321; ++pub const EXT4_IOC_SETVERSION_OLD: u32 = 2148038146; ++pub const EXT4_IOC_GETRSVSZ: u32 = 1074292229; ++pub const EXT4_IOC_SETRSVSZ: u32 = 2148034054; ++pub const EXT4_IOC_GROUP_EXTEND: u32 = 2148034055; ++pub const EXT4_IOC_MIGRATE: u32 = 536897033; ++pub const EXT4_IOC_ALLOC_DA_BLKS: u32 = 536897036; ++pub const EXT4_IOC_RESIZE_FS: u32 = 2148034064; ++pub const EXT4_IOC_SWAP_BOOT: u32 = 536897041; ++pub const EXT4_IOC_PRECACHE_EXTENTS: u32 = 536897042; ++pub const EXT4_IOC_CLEAR_ES_CACHE: u32 = 536897064; ++pub const EXT4_IOC_GETSTATE: u32 = 2147771945; ++pub const EXT4_IOC_GET_ES_CACHE: u32 = 3223348778; ++pub const EXT4_IOC_CHECKPOINT: u32 = 2147771947; ++pub const EXT4_IOC_SHUTDOWN: u32 = 1074026621; ++pub const EXT4_IOC32_GETVERSION: u32 = 1074030083; ++pub const EXT4_IOC32_SETVERSION: u32 = 2147771908; ++pub const EXT4_IOC32_GETRSVSZ: u32 = 1074030085; ++pub const EXT4_IOC32_SETRSVSZ: u32 = 2147771910; ++pub const EXT4_IOC32_GROUP_EXTEND: u32 = 2147771911; ++pub const EXT4_IOC32_GETVERSION_OLD: u32 = 1074034177; ++pub const EXT4_IOC32_SETVERSION_OLD: u32 = 2147776002; ++pub const VIDIOC_SUBDEV_QUERYSTD: u32 = 1074288191; ++pub const AUTOFS_DEV_IOCTL_CLOSEMOUNT: u32 = 3222836085; ++pub const LIRC_SET_SEND_CARRIER: u32 = 2147772691; ++pub const AUTOFS_IOC_PROTOSUBVER: u32 = 1074041703; ++pub const PTP_SYS_OFFSET_PRECISE: u32 = 3225435400; ++pub const FSI_SCOM_WRITE: u32 = 3223352066; ++pub const ATM_GETCIRANGE: u32 = 2148557194; ++pub const DMA_BUF_SET_NAME_B: u32 = 2148033025; ++pub const RIO_CM_EP_GET_LIST_SIZE: u32 = 3221512961; ++pub const TUNSETPERSIST: u32 = 2147767499; ++pub const FS_IOC_GET_ENCRYPTION_POLICY: u32 = 2148296213; ++pub const CEC_RECEIVE: u32 = 3224920326; ++pub const MGSL_IOCGPARAMS: u32 = 1076915457; ++pub const ENI_SETMULT: u32 = 2148557159; ++pub const RIO_GET_EVENT_MASK: u32 = 1074031886; ++pub const LIRC_GET_MAX_TIMEOUT: u32 = 1074030857; ++pub const KVM_SET_BOOT_CPU_ID: u32 = 536915576; ++pub const KVM_SET_MP_STATE: u32 = 2147790489; ++pub const KVM_GET_MP_STATE: u32 = 1074048664; ++pub const KVM_GET_API_VERSION: u32 = 536915456; ++pub const KVM_S390_GET_SKEYS: u32 = 2151722674; ++pub const KVM_SET_ONE_REG: u32 = 2148576940; ++pub const KVM_IRQ_LINE_STATUS: u32 = 3221794407; ++pub const KVM_SET_USER_MEMORY_REGION: u32 = 2149625414; ++pub const KVM_S390_INTERRUPT: u32 = 2148576916; ++pub const KVM_TPR_ACCESS_REPORTING: u32 = 3223891602; ++pub const KVM_GET_FPU: u32 = 1073786508; ++pub const KVM_ASSIGN_SET_MSIX_ENTRY: u32 = 2148576884; ++pub const KVM_MEMORY_ENCRYPT_REG_REGION: u32 = 1074835131; ++pub const KVM_S390_UCAS_MAP: u32 = 2149101136; ++pub const KVM_ASSIGN_SET_INTX_MASK: u32 = 2151722660; ++pub const KVM_MEMORY_ENCRYPT_OP: u32 = 3221794490; ++pub const KVM_CREATE_PIT2: u32 = 2151722615; ++pub const KVM_S390_VCPU_FAULT: u32 = 2148052562; ++pub const KVM_REGISTER_COALESCED_MMIO: u32 = 2148576871; ++pub const KVM_SET_VAPIC_ADDR: u32 = 2148052627; ++pub const KVM_CREATE_DEVICE: u32 = 3222056672; ++pub const KVM_GET_IRQCHIP: u32 = 3255348834; ++pub const KVM_TRANSLATE: u32 = 3222843013; ++pub const KVM_S390_SET_INITIAL_PSW: u32 = 2148576918; ++pub const KVM_X86_SETUP_MCE: u32 = 2148052636; ++pub const KVM_DEASSIGN_PCI_DEVICE: u32 = 2151722610; ++pub const KVM_XEN_HVM_SET_ATTR: u32 = 2152246985; ++pub const KVM_GET_CLOCK: u32 = 1076932220; ++pub const KVM_SET_FPU: u32 = 2147528333; ++pub const KVM_KVMCLOCK_CTRL: u32 = 536915629; ++pub const KVM_PPC_GET_PVINFO: u32 = 2155916961; ++pub const KVM_X86_GET_MCE_CAP_SUPPORTED: u32 = 1074310813; ++pub const KVM_S390_GET_IRQ_STATE: u32 = 2149625526; ++pub const KVM_GET_DEVICE_ATTR: u32 = 2149101282; ++pub const KVM_S390_INITIAL_RESET: u32 = 536915607; ++pub const KVM_SET_REGS: u32 = 2165878402; ++pub const KVM_GET_TSC_KHZ: u32 = 536915619; ++pub const KVM_CHECK_EXTENSION: u32 = 536915459; ++pub const KVM_PPC_RESIZE_HPT_COMMIT: u32 = 1074835118; ++pub const KVM_GET_DIRTY_LOG: u32 = 2148576834; ++pub const KVM_S390_SET_IRQ_STATE: u32 = 2149625525; ++pub const KVM_S390_NORMAL_RESET: u32 = 536915651; ++pub const KVM_SET_SIGNAL_MASK: u32 = 2147790475; ++pub const KVM_XEN_VCPU_SET_ATTR: u32 = 2152246987; ++pub const KVM_SET_GSI_ROUTING: u32 = 2148052586; ++pub const KVM_CREATE_VCPU: u32 = 536915521; ++pub const KVM_S390_UCAS_UNMAP: u32 = 2149101137; ++pub const KVM_S390_STORE_STATUS: u32 = 2148052629; ++pub const KVM_UNREGISTER_COALESCED_MMIO: u32 = 2148576872; ++pub const KVM_ASSIGN_DEV_IRQ: u32 = 2151722608; ++pub const KVM_S390_PV_COMMAND: u32 = 3223367365; ++pub const KVM_S390_ENABLE_SIE: u32 = 536915462; ++pub const KVM_CLEAR_DIRTY_LOG: u32 = 3222843072; ++pub const KVM_GET_ONE_REG: u32 = 2148576939; ++pub const KVM_ARM_SET_DEVICE_ADDR: u32 = 2148576939; ++pub const KVM_DIRTY_TLB: u32 = 2148576938; ++pub const KVM_NMI: u32 = 536915610; ++pub const KVM_HYPERV_EVENTFD: u32 = 2149101245; ++pub const KVM_S390_MEM_OP: u32 = 2151722673; ++pub const KVM_PPC_SVM_OFF: u32 = 536915635; ++pub const KVM_PPC_RESIZE_HPT_PREPARE: u32 = 1074835117; ++pub const KVM_INTERRUPT: u32 = 2147790470; ++pub const KVM_XEN_HVM_GET_ATTR: u32 = 3225988808; ++pub const KVM_GET_SREGS: u32 = 1073786499; ++pub const KVM_SET_IDENTITY_MAP_ADDR: u32 = 2148052552; ++pub const KVM_GET_REGS: u32 = 1092136577; ++pub const KVM_S390_GET_CMMA_BITS: u32 = 3223367352; ++pub const KVM_CREATE_IRQCHIP: u32 = 536915552; ++pub const KVM_ASSIGN_PCI_DEVICE: u32 = 1077980777; ++pub const KVM_SET_NR_MMU_PAGES: u32 = 536915524; ++pub const KVM_IOEVENTFD: u32 = 2151722617; ++pub const KVM_RUN: u32 = 536915584; ++pub const KVM_S390_SET_SKEYS: u32 = 2151722675; ++pub const KVM_SET_DEVICE_ATTR: u32 = 2149101281; ++pub const KVM_DEASSIGN_DEV_IRQ: u32 = 2151722613; ++pub const KVM_SMI: u32 = 536915639; ++pub const KVM_SET_TSS_ADDR: u32 = 536915527; ++pub const KVM_GET_NR_MMU_PAGES: u32 = 536915525; ++pub const KVM_XEN_VCPU_GET_ATTR: u32 = 3225988810; ++pub const KVM_REINJECT_CONTROL: u32 = 536915569; ++pub const KVM_HAS_DEVICE_ATTR: u32 = 2149101283; ++pub const KVM_IRQFD: u32 = 2149625462; ++pub const KVM_S390_SET_CMMA_BITS: u32 = 2149625529; ++pub const KVM_SET_IRQCHIP: u32 = 1107865187; ++pub const KVM_SIGNAL_MSI: u32 = 2149625509; ++pub const KVM_GET_VCPU_MMAP_SIZE: u32 = 536915460; ++pub const KVM_CREATE_VM: u32 = 536915457; ++pub const KVM_S390_CLEAR_RESET: u32 = 536915652; ++pub const KVM_RESET_DIRTY_RINGS: u32 = 536915655; ++pub const KVM_ASSIGN_SET_MSIX_NR: u32 = 2148052595; ++pub const KVM_CREATE_PIT: u32 = 536915556; ++pub const KVM_SET_GUEST_DEBUG: u32 = 2148052635; ++pub const KVM_GET_REG_LIST: u32 = 3221794480; ++pub const KVM_ARM_VCPU_FINALIZE: u32 = 2147790530; ++pub const KVM_SET_CLOCK: u32 = 2150674043; ++pub const KVM_PPC_ALLOCATE_HTAB: u32 = 3221532327; ++pub const KVM_PPC_GET_SMMU_INFO: u32 = 1112583846; ++pub const KVM_SET_TSC_KHZ: u32 = 536915618; ++pub const KVM_S390_IRQ: u32 = 2152246964; ++pub const KVM_ENABLE_CAP: u32 = 2154344099; ++pub const KVM_IRQ_LINE: u32 = 2148052577; ++pub const KVM_SET_SREGS: u32 = 2147528324; ++pub const KVM_MEMORY_ENCRYPT_UNREG_REGION: u32 = 1074835132; ++pub const KVM_GET_STATS_FD: u32 = 536915662; ++pub const USBDEVFS_CLAIMINTERFACE: u32 = 1074025743; ++pub const CHIOMOVE: u32 = 2148819713; ++pub const SONYPI_IOCGBATFLAGS: u32 = 1073837575; ++pub const BTRFS_IOC_SYNC: u32 = 536908808; ++pub const VIDIOC_TRY_FMT: u32 = 3234879040; ++pub const LIRC_SET_REC_MODE: u32 = 2147772690; ++pub const VIDIOC_DQEVENT: u32 = 1082676825; ++pub const RPMSG_DESTROY_EPT_IOCTL: u32 = 536917250; ++pub const UVCIOC_CTRL_MAP: u32 = 3227546912; ++pub const VHOST_SET_BACKEND_FEATURES: u32 = 2148052773; ++pub const VHOST_VSOCK_SET_GUEST_CID: u32 = 2148052832; ++pub const UI_SET_KEYBIT: u32 = 2147767653; ++pub const LIRC_SET_REC_TIMEOUT: u32 = 2147772696; ++pub const FS_IOC_GET_ENCRYPTION_KEY_STATUS: u32 = 3229640218; ++pub const BTRFS_IOC_TREE_SEARCH_V2: u32 = 3228603409; ++pub const VHOST_SET_VRING_BASE: u32 = 2148052754; ++pub const RIO_ENABLE_DOORBELL_RANGE: u32 = 2148035849; ++pub const VIDIOC_TRY_EXT_CTRLS: u32 = 3223344713; ++pub const LIRC_GET_REC_MODE: u32 = 1074030850; ++pub const PPGETTIME: u32 = 1074819221; ++pub const BTRFS_IOC_RM_DEV: u32 = 2415957003; ++pub const ATM_SETBACKEND: u32 = 2147639794; ++pub const FSL_HV_IOCTL_PARTITION_START: u32 = 3222318851; ++pub const FBIO_WAITEVENT: u32 = 536888968; ++pub const SWITCHTEC_IOCTL_PORT_TO_PFF: u32 = 3222034245; ++pub const NVME_IOCTL_IO_CMD: u32 = 3225964099; ++pub const IPMICTL_RECEIVE_MSG_TRUNC: u32 = 3224398091; ++pub const FDTWADDLE: u32 = 536871513; ++pub const NVME_IOCTL_SUBMIT_IO: u32 = 2150649410; ++pub const NILFS_IOCTL_SYNC: u32 = 1074294410; ++pub const VIDIOC_SUBDEV_S_DV_TIMINGS: u32 = 3229898327; ++pub const ASPEED_LPC_CTRL_IOCTL_GET_SIZE: u32 = 3222319616; ++pub const DM_DEV_STATUS: u32 = 3241737479; ++pub const TEE_IOC_CLOSE_SESSION: u32 = 1074045957; ++pub const NS_GETPSTAT: u32 = 3222298977; ++pub const UI_SET_PROPBIT: u32 = 2147767662; ++pub const TUNSETFILTEREBPF: u32 = 1074025697; ++pub const RIO_MPORT_MAINT_COMPTAG_SET: u32 = 2147773698; ++pub const AUTOFS_DEV_IOCTL_VERSION: u32 = 3222836081; ++pub const WDIOC_SETOPTIONS: u32 = 1074026244; ++pub const VHOST_SCSI_SET_ENDPOINT: u32 = 2162732864; ++pub const MGSL_IOCGTXIDLE: u32 = 536898819; ++pub const ATM_ADDLECSADDR: u32 = 2148557198; ++pub const FSL_HV_IOCTL_GETPROP: u32 = 3223891719; ++pub const FDGETPRM: u32 = 1075839492; ++pub const HIDIOCAPPLICATION: u32 = 536889346; ++pub const ENI_MEMDUMP: u32 = 2148557152; ++pub const PTP_SYS_OFFSET2: u32 = 2202025230; ++pub const VIDIOC_SUBDEV_G_DV_TIMINGS: u32 = 3229898328; ++pub const DMA_BUF_SET_NAME_A: u32 = 2147770881; ++pub const PTP_PIN_GETFUNC: u32 = 3227532550; ++pub const PTP_SYS_OFFSET_EXTENDED: u32 = 3300932873; ++pub const DFL_FPGA_PORT_UINT_SET_IRQ: u32 = 2148054600; ++pub const RTC_EPOCH_READ: u32 = 1074294797; ++pub const VIDIOC_SUBDEV_S_SELECTION: u32 = 3225441854; ++pub const VIDIOC_QUERY_EXT_CTRL: u32 = 3236451943; ++pub const ATM_GETLECSADDR: u32 = 2148557200; ++pub const FSL_HV_IOCTL_PARTITION_STOP: u32 = 3221794564; ++pub const SONET_GETDIAG: u32 = 1074028820; ++pub const ATMMPC_DATA: u32 = 536895961; ++pub const IPMICTL_UNREGISTER_FOR_CMD_CHANS: u32 = 1074555165; ++pub const HIDIOCGCOLLECTIONINDEX: u32 = 2149074960; ++pub const RPMSG_CREATE_EPT_IOCTL: u32 = 2150151425; ++pub const GPIOHANDLE_GET_LINE_VALUES_IOCTL: u32 = 3225465864; ++pub const UI_DEV_SETUP: u32 = 2153534723; ++pub const ISST_IF_IO_CMD: u32 = 2148072962; ++pub const RIO_MPORT_MAINT_READ_REMOTE: u32 = 1075342599; ++pub const VIDIOC_OMAP3ISP_HIST_CFG: u32 = 3224393412; ++pub const BLKGETNRZONES: u32 = 1074008709; ++pub const VIDIOC_G_MODULATOR: u32 = 3225703990; ++pub const VBG_IOCTL_WRITE_CORE_DUMP: u32 = 3223082515; ++pub const USBDEVFS_SETINTERFACE: u32 = 1074287876; ++pub const PPPIOCGCHAN: u32 = 1074033719; ++pub const EVIOCGVERSION: u32 = 1074021633; ++pub const VHOST_NET_SET_BACKEND: u32 = 2148052784; ++pub const USBDEVFS_REAPURBNDELAY: u32 = 2148029709; ++pub const RNDZAPENTCNT: u32 = 536891908; ++pub const VIDIOC_G_PARM: u32 = 3234616853; ++pub const TUNGETDEVNETNS: u32 = 536892643; ++pub const LIRC_SET_MEASURE_CARRIER_MODE: u32 = 2147772701; ++pub const VHOST_SET_VRING_ERR: u32 = 2148052770; ++pub const VDUSE_VQ_SETUP: u32 = 2149613844; ++pub const AUTOFS_IOC_SETTIMEOUT: u32 = 3221787492; ++pub const VIDIOC_S_FREQUENCY: u32 = 2150389305; ++pub const F2FS_IOC_SEC_TRIM_FILE: u32 = 2149119252; ++pub const FS_IOC_REMOVE_ENCRYPTION_KEY: u32 = 3225445912; ++pub const WDIOC_GETPRETIMEOUT: u32 = 1074026249; ++pub const USBDEVFS_DROP_PRIVILEGES: u32 = 2147767582; ++pub const BTRFS_IOC_SNAP_CREATE_V2: u32 = 2415957015; ++pub const VHOST_VSOCK_SET_RUNNING: u32 = 2147790689; ++pub const STP_SET_OPTIONS: u32 = 2148017410; ++pub const FBIO_RADEON_GET_MIRROR: u32 = 1074282499; ++pub const IVTVFB_IOC_DMA_FRAME: u32 = 2149078720; ++pub const IPMICTL_SEND_COMMAND: u32 = 1076390157; ++pub const VIDIOC_G_ENC_INDEX: u32 = 1209554508; ++pub const DFL_FPGA_FME_PORT_PR: u32 = 536917632; ++pub const CHIOSVOLTAG: u32 = 2150654738; ++pub const ATM_SETESIF: u32 = 2148557197; ++pub const FW_CDEV_IOC_SEND_RESPONSE: u32 = 2149065476; ++pub const PMU_IOC_GET_MODEL: u32 = 1074283011; ++pub const JSIOCGBTNMAP: u32 = 1140877876; ++pub const USBDEVFS_HUB_PORTINFO: u32 = 1082152211; ++pub const VBG_IOCTL_INTERRUPT_ALL_WAIT_FOR_EVENTS: u32 = 3222820363; ++pub const FDCLRPRM: u32 = 536871489; ++pub const BTRFS_IOC_SCRUB: u32 = 3288372251; ++pub const USBDEVFS_DISCONNECT: u32 = 536892694; ++pub const TUNSETVNETBE: u32 = 2147767518; ++pub const ATMTCP_REMOVE: u32 = 536895887; ++pub const VHOST_VDPA_GET_CONFIG: u32 = 1074311027; ++pub const PPPIOCGNPMODE: u32 = 3221779532; ++pub const FDGETDRVPRM: u32 = 1082130961; ++pub const TUNSETVNETLE: u32 = 2147767516; ++pub const PHN_SETREG: u32 = 2148036614; ++pub const PPPIOCDETACH: u32 = 2147775548; ++pub const MMTIMER_GETRES: u32 = 1074294017; ++pub const VIDIOC_SUBDEV_ENUMSTD: u32 = 3225966105; ++pub const PPGETFLAGS: u32 = 1074032794; ++pub const VDUSE_DEV_GET_FEATURES: u32 = 1074299153; ++pub const CAPI_MANUFACTURER_CMD: u32 = 3222291232; ++pub const VIDIOC_G_TUNER: u32 = 3226752541; ++pub const DM_TABLE_STATUS: u32 = 3241737484; ++pub const DM_DEV_ARM_POLL: u32 = 3241737488; ++pub const NE_CREATE_VM: u32 = 1074310688; ++pub const MEDIA_IOC_ENUM_LINKS: u32 = 3223878658; ++pub const F2FS_IOC_PRECACHE_EXTENTS: u32 = 536933647; ++pub const DFL_FPGA_PORT_DMA_MAP: u32 = 536917571; ++pub const MGSL_IOCGXCTRL: u32 = 536898838; ++pub const FW_CDEV_IOC_SEND_REQUEST: u32 = 2150114049; ++pub const SONYPI_IOCGBLUE: u32 = 1073837576; ++pub const F2FS_IOC_DECOMPRESS_FILE: u32 = 536933655; ++pub const I2OHTML: u32 = 3224398089; ++pub const VFIO_GET_API_VERSION: u32 = 536886116; ++pub const IDT77105_GETSTATZ: u32 = 2148557107; ++pub const I2OPARMSET: u32 = 3223873795; ++pub const TEE_IOC_CANCEL: u32 = 1074308100; ++pub const PTP_SYS_OFFSET_PRECISE2: u32 = 3225435409; ++pub const DFL_FPGA_PORT_RESET: u32 = 536917568; ++pub const PPPIOCGASYNCMAP: u32 = 1074033752; ++pub const EVIOCGKEYCODE_V2: u32 = 1076380932; ++pub const DM_DEV_SET_GEOMETRY: u32 = 3241737487; ++pub const HIDIOCSUSAGE: u32 = 2149074956; ++pub const FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE_ONCE: u32 = 2149065488; ++pub const PTP_EXTTS_REQUEST: u32 = 2148547842; ++pub const SWITCHTEC_IOCTL_EVENT_CTL: u32 = 3223869251; ++pub const WDIOC_SETPRETIMEOUT: u32 = 3221509896; ++pub const VHOST_SCSI_CLEAR_ENDPOINT: u32 = 2162732865; ++pub const JSIOCGAXES: u32 = 1073834513; ++pub const HIDIOCSFLAG: u32 = 2147764239; ++pub const PTP_PEROUT_REQUEST2: u32 = 2151169292; ++pub const PPWDATA: u32 = 2147577990; ++pub const PTP_CLOCK_GETCAPS: u32 = 1079000321; ++pub const FDGETMAXERRS: u32 = 1075053070; ++pub const TUNSETQUEUE: u32 = 2147767513; ++pub const PTP_ENABLE_PPS: u32 = 2147761412; ++pub const SIOCSIFATMTCP: u32 = 536895872; ++pub const CEC_ADAP_G_LOG_ADDRS: u32 = 1079795971; ++pub const ND_IOCTL_ARS_CAP: u32 = 3223342593; ++pub const NBD_SET_BLKSIZE: u32 = 536914689; ++pub const NBD_SET_TIMEOUT: u32 = 536914697; ++pub const VHOST_SCSI_GET_ABI_VERSION: u32 = 2147790658; ++pub const RIO_UNMAP_INBOUND: u32 = 2148035858; ++pub const ATM_QUERYLOOP: u32 = 2148557140; ++pub const DFL_FPGA_GET_API_VERSION: u32 = 536917504; ++pub const USBDEVFS_WAIT_FOR_RESUME: u32 = 536892707; ++pub const FBIO_CURSOR: u32 = 3228059144; ++pub const RNDCLEARPOOL: u32 = 536891910; ++pub const VIDIOC_QUERYSTD: u32 = 1074288191; ++pub const DMA_BUF_IOCTL_SYNC: u32 = 2148033024; ++pub const SCIF_RECV: u32 = 3222827783; ++pub const PTP_PIN_GETFUNC2: u32 = 3227532559; ++pub const FW_CDEV_IOC_ALLOCATE: u32 = 3223331586; ++pub const CEC_ADAP_G_CAPS: u32 = 3226231040; ++pub const VIDIOC_G_FBUF: u32 = 1076909578; ++pub const PTP_ENABLE_PPS2: u32 = 2147761421; ++pub const PCITEST_CLEAR_IRQ: u32 = 536891408; ++pub const IPMICTL_SET_GETS_EVENTS_CMD: u32 = 1074030864; ++pub const BTRFS_IOC_DEVICES_READY: u32 = 1342215207; ++pub const JSIOCGAXMAP: u32 = 1077963314; ++pub const FW_CDEV_IOC_GET_CYCLE_TIMER: u32 = 1074799372; ++pub const FW_CDEV_IOC_SET_ISO_CHANNELS: u32 = 2148541207; ++pub const RTC_WIE_OFF: u32 = 536899600; ++pub const PPGETMODE: u32 = 1074032792; ++pub const VIDIOC_DBG_G_REGISTER: u32 = 3224917584; ++pub const PTP_SYS_OFFSET: u32 = 2202025221; ++pub const BTRFS_IOC_SPACE_INFO: u32 = 3222311956; ++pub const VIDIOC_SUBDEV_ENUM_FRAME_SIZE: u32 = 3225441866; ++pub const ND_IOCTL_VENDOR: u32 = 3221769737; ++pub const SCIF_VREADFROM: u32 = 3223876364; ++pub const BTRFS_IOC_TRANS_START: u32 = 536908806; ++pub const INOTIFY_IOC_SETNEXTWD: u32 = 2147764480; ++pub const SNAPSHOT_GET_IMAGE_SIZE: u32 = 1074279182; ++pub const TUNDETACHFILTER: u32 = 2148553942; ++pub const ND_IOCTL_CLEAR_ERROR: u32 = 3223342596; ++pub const IOC_PR_CLEAR: u32 = 2148561101; ++pub const SCIF_READFROM: u32 = 3223876362; ++pub const PPPIOCGDEBUG: u32 = 1074033729; ++pub const BLKGETZONESZ: u32 = 1074008708; ++pub const HIDIOCGUSAGES: u32 = 3491514387; ++pub const SONYPI_IOCGTEMP: u32 = 1073837580; ++pub const UI_SET_MSCBIT: u32 = 2147767656; ++pub const APM_IOC_SUSPEND: u32 = 536887554; ++pub const BTRFS_IOC_TREE_SEARCH: u32 = 3489698833; ++pub const RTC_PLL_GET: u32 = 1075867665; ++pub const RIO_CM_EP_GET_LIST: u32 = 3221512962; ++pub const USBDEVFS_DISCSIGNAL: u32 = 1074812174; ++pub const LIRC_GET_MIN_TIMEOUT: u32 = 1074030856; ++pub const SWITCHTEC_IOCTL_EVENT_SUMMARY_LEGACY: u32 = 1100502850; ++pub const DM_TARGET_MSG: u32 = 3241737486; ++pub const SONYPI_IOCGBAT1REM: u32 = 1073903107; ++pub const EVIOCSFF: u32 = 2150647168; ++pub const TUNSETGROUP: u32 = 2147767502; ++pub const EVIOCGKEYCODE: u32 = 1074283780; ++pub const KCOV_REMOTE_ENABLE: u32 = 2149081958; ++pub const ND_IOCTL_GET_CONFIG_SIZE: u32 = 3222031876; ++pub const FDEJECT: u32 = 536871514; ++pub const TUNSETOFFLOAD: u32 = 2147767504; ++pub const PPPIOCCONNECT: u32 = 2147775546; ++pub const ATM_ADDADDR: u32 = 2148557192; ++pub const VDUSE_DEV_INJECT_CONFIG_IRQ: u32 = 536903955; ++pub const AUTOFS_DEV_IOCTL_ASKUMOUNT: u32 = 3222836093; ++pub const VHOST_VDPA_GET_STATUS: u32 = 1073852273; ++pub const CCISS_PASSTHRU: u32 = 3227009547; ++pub const MGSL_IOCCLRMODCOUNT: u32 = 536898831; ++pub const TEE_IOC_SUPPL_SEND: u32 = 1074832391; ++pub const ATMARPD_CTRL: u32 = 536895969; ++pub const UI_ABS_SETUP: u32 = 2149340420; ++pub const UI_DEV_DESTROY: u32 = 536892674; ++pub const BTRFS_IOC_QUOTA_CTL: u32 = 3222311976; ++pub const RTC_AIE_ON: u32 = 536899585; ++pub const AUTOFS_IOC_EXPIRE: u32 = 1091343205; ++pub const PPPIOCSDEBUG: u32 = 2147775552; ++pub const GPIO_V2_LINE_SET_VALUES_IOCTL: u32 = 3222320143; ++pub const PPPIOCSMRU: u32 = 2147775570; ++pub const CCISS_DEREGDISK: u32 = 536887820; ++pub const UI_DEV_CREATE: u32 = 536892673; ++pub const FUSE_DEV_IOC_CLONE: u32 = 1074062592; ++pub const BTRFS_IOC_START_SYNC: u32 = 1074304024; ++pub const NILFS_IOCTL_DELETE_CHECKPOINT: u32 = 2148036225; ++pub const SNAPSHOT_AVAIL_SWAP_SIZE: u32 = 1074279187; ++pub const DM_TABLE_CLEAR: u32 = 3241737482; ++pub const CCISS_GETINTINFO: u32 = 1074283010; ++pub const PPPIOCSASYNCMAP: u32 = 2147775575; ++pub const I2OEVTGET: u32 = 1080584459; ++pub const NVME_IOCTL_RESET: u32 = 536890948; ++pub const PPYIELD: u32 = 536899725; ++pub const NVME_IOCTL_IO64_CMD: u32 = 3226488392; ++pub const TUNSETCARRIER: u32 = 2147767522; ++pub const DM_DEV_WAIT: u32 = 3241737480; ++pub const RTC_WIE_ON: u32 = 536899599; ++pub const MEDIA_IOC_DEVICE_INFO: u32 = 3238034432; ++pub const RIO_CM_CHAN_CREATE: u32 = 3221381891; ++pub const MGSL_IOCSPARAMS: u32 = 2150657280; ++pub const RTC_SET_TIME: u32 = 2149871626; ++pub const VHOST_RESET_OWNER: u32 = 536915714; ++pub const IOC_OPAL_PSID_REVERT_TPR: u32 = 2164814056; ++pub const AUTOFS_DEV_IOCTL_OPENMOUNT: u32 = 3222836084; ++pub const UDF_GETEABLOCK: u32 = 1074293825; ++pub const VFIO_IOMMU_MAP_DMA: u32 = 536886129; ++pub const VIDIOC_SUBSCRIBE_EVENT: u32 = 2149602906; ++pub const HIDIOCGFLAG: u32 = 1074022414; ++pub const HIDIOCGUCODE: u32 = 3222816781; ++pub const VIDIOC_OMAP3ISP_AF_CFG: u32 = 3226228421; ++pub const DM_REMOVE_ALL: u32 = 3241737473; ++pub const ASPEED_LPC_CTRL_IOCTL_MAP: u32 = 2148577793; ++pub const CCISS_GETFIRMVER: u32 = 1074020872; ++pub const ND_IOCTL_ARS_START: u32 = 3223342594; ++pub const PPPIOCSMRRU: u32 = 2147775547; ++pub const CEC_ADAP_S_LOG_ADDRS: u32 = 3227279620; ++pub const RPROC_GET_SHUTDOWN_ON_RELEASE: u32 = 1074050818; ++pub const DMA_HEAP_IOCTL_ALLOC: u32 = 3222816768; ++pub const PPSETTIME: u32 = 2148561046; ++pub const RTC_ALM_READ: u32 = 1076129800; ++pub const VDUSE_SET_API_VERSION: u32 = 2148040961; ++pub const RIO_MPORT_MAINT_WRITE_REMOTE: u32 = 2149084424; ++pub const VIDIOC_SUBDEV_S_CROP: u32 = 3224917564; ++pub const USBDEVFS_CONNECT: u32 = 536892695; ++pub const SYNC_IOC_FILE_INFO: u32 = 3224911364; ++pub const ATMARP_MKIP: u32 = 536895970; ++pub const VFIO_IOMMU_SPAPR_TCE_GET_INFO: u32 = 536886128; ++pub const CCISS_GETHEARTBEAT: u32 = 1074020870; ++pub const ATM_RSTADDR: u32 = 2148557191; ++pub const NBD_SET_SIZE: u32 = 536914690; ++pub const UDF_GETVOLIDENT: u32 = 1074293826; ++pub const GPIO_V2_LINE_GET_VALUES_IOCTL: u32 = 3222320142; ++pub const MGSL_IOCSTXIDLE: u32 = 536898818; ++pub const FSL_HV_IOCTL_SETPROP: u32 = 3223891720; ++pub const BTRFS_IOC_GET_DEV_STATS: u32 = 3288896564; ++pub const PPRSTATUS: u32 = 1073836161; ++pub const MGSL_IOCTXENABLE: u32 = 536898820; ++pub const UDF_GETEASIZE: u32 = 1074031680; ++pub const NVME_IOCTL_ADMIN64_CMD: u32 = 3226488391; ++pub const VHOST_SET_OWNER: u32 = 536915713; ++pub const RIO_ALLOC_DMA: u32 = 3222826259; ++pub const RIO_CM_CHAN_ACCEPT: u32 = 3221775111; ++pub const I2OHRTGET: u32 = 3222825217; ++pub const ATM_SETCIRANGE: u32 = 2148557195; ++pub const HPET_IE_ON: u32 = 536897537; ++pub const PERF_EVENT_IOC_ID: u32 = 1074275335; ++pub const TUNSETSNDBUF: u32 = 2147767508; ++pub const PTP_PIN_SETFUNC: u32 = 2153790727; ++pub const PPPIOCDISCONN: u32 = 536900665; ++pub const VIDIOC_QUERYCTRL: u32 = 3225703972; ++pub const PPEXCL: u32 = 536899727; ++pub const PCITEST_MSI: u32 = 2147766275; ++pub const FDWERRORCLR: u32 = 536871510; ++pub const AUTOFS_IOC_FAIL: u32 = 536908641; ++pub const USBDEVFS_IOCTL: u32 = 3222295826; ++pub const VIDIOC_S_STD: u32 = 2148029976; ++pub const F2FS_IOC_RESIZE_FS: u32 = 2148070672; ++pub const SONET_SETDIAG: u32 = 3221512466; ++pub const BTRFS_IOC_DEFRAG: u32 = 2415956994; ++pub const CCISS_GETDRIVVER: u32 = 1074020873; ++pub const IPMICTL_GET_TIMING_PARMS_CMD: u32 = 1074293015; ++pub const HPET_IRQFREQ: u32 = 2148034566; ++pub const ATM_GETESI: u32 = 2148557189; ++pub const CCISS_GETLUNINFO: u32 = 1074545169; ++pub const AUTOFS_DEV_IOCTL_ISMOUNTPOINT: u32 = 3222836094; ++pub const TEE_IOC_SHM_ALLOC: u32 = 3222316033; ++pub const PERF_EVENT_IOC_SET_BPF: u32 = 2147755016; ++pub const UDMABUF_CREATE_LIST: u32 = 2148037955; ++pub const VHOST_SET_LOG_BASE: u32 = 2148052740; ++pub const ZATM_GETPOOL: u32 = 2148557153; ++pub const BR2684_SETFILT: u32 = 2149343632; ++pub const RNDGETPOOL: u32 = 1074287106; ++pub const PPS_GETPARAMS: u32 = 1074294945; ++pub const IOC_PR_RESERVE: u32 = 2148561097; ++pub const VIDIOC_TRY_DECODER_CMD: u32 = 3225966177; ++pub const RIO_CM_CHAN_CLOSE: u32 = 2147640068; ++pub const VIDIOC_DV_TIMINGS_CAP: u32 = 3230684772; ++pub const IOCTL_MEI_CONNECT_CLIENT_VTAG: u32 = 3222554628; ++pub const PMU_IOC_GET_BACKLIGHT: u32 = 1074283009; ++pub const USBDEVFS_GET_CAPABILITIES: u32 = 1074025754; ++pub const SCIF_WRITETO: u32 = 3223876363; ++pub const UDF_RELOCATE_BLOCKS: u32 = 3221777475; ++pub const FSL_HV_IOCTL_PARTITION_RESTART: u32 = 3221794561; ++pub const CCISS_REGNEWD: u32 = 536887822; ++pub const FAT_IOCTL_SET_ATTRIBUTES: u32 = 2147774993; ++pub const VIDIOC_CREATE_BUFS: u32 = 3238024796; ++pub const CAPI_GET_VERSION: u32 = 3222291207; ++pub const SWITCHTEC_IOCTL_EVENT_SUMMARY: u32 = 1155028802; ++pub const VFIO_EEH_PE_OP: u32 = 536886137; ++pub const FW_CDEV_IOC_CREATE_ISO_CONTEXT: u32 = 3223331592; ++pub const F2FS_IOC_RELEASE_COMPRESS_BLOCKS: u32 = 1074328850; ++pub const NBD_SET_SIZE_BLOCKS: u32 = 536914695; ++pub const IPMI_BMC_IOCTL_SET_SMS_ATN: u32 = 536916224; ++pub const ASPEED_P2A_CTRL_IOCTL_GET_MEMORY_CONFIG: u32 = 3222319873; ++pub const VIDIOC_S_AUDOUT: u32 = 2150913586; ++pub const VIDIOC_S_FMT: u32 = 3234878981; ++pub const PPPIOCATTACH: u32 = 2147775549; ++pub const VHOST_GET_VRING_BUSYLOOP_TIMEOUT: u32 = 2148052772; ++pub const FS_IOC_MEASURE_VERITY: u32 = 3221513862; ++pub const CCISS_BIG_PASSTHRU: u32 = 3227533842; ++pub const IPMICTL_SET_MY_LUN_CMD: u32 = 1074030867; ++pub const PCITEST_LEGACY_IRQ: u32 = 536891394; ++pub const USBDEVFS_SUBMITURB: u32 = 1077433610; ++pub const AUTOFS_IOC_READY: u32 = 536908640; ++pub const BTRFS_IOC_SEND: u32 = 2152240166; ++pub const VIDIOC_G_EXT_CTRLS: u32 = 3223344711; ++pub const JSIOCSBTNMAP: u32 = 2214619699; ++pub const PPPIOCSFLAGS: u32 = 2147775577; ++pub const NVRAM_INIT: u32 = 536899648; ++pub const RFKILL_IOCTL_NOINPUT: u32 = 536891905; ++pub const BTRFS_IOC_BALANCE: u32 = 2415957004; ++pub const FS_IOC_GETFSMAP: u32 = 3233830971; ++pub const IPMICTL_GET_MY_CHANNEL_LUN_CMD: u32 = 1074030875; ++pub const STP_POLICY_ID_GET: u32 = 1074799873; ++pub const PPSETFLAGS: u32 = 2147774619; ++pub const CEC_ADAP_S_PHYS_ADDR: u32 = 2147639554; ++pub const ATMTCP_CREATE: u32 = 536895886; ++pub const IPMI_BMC_IOCTL_FORCE_ABORT: u32 = 536916226; ++pub const PPPIOCGXASYNCMAP: u32 = 1075868752; ++pub const VHOST_SET_VRING_CALL: u32 = 2148052769; ++pub const LIRC_GET_FEATURES: u32 = 1074030848; ++pub const GSMIOC_DISABLE_NET: u32 = 536889091; ++pub const AUTOFS_IOC_CATATONIC: u32 = 536908642; ++pub const NBD_DO_IT: u32 = 536914691; ++pub const LIRC_SET_REC_CARRIER_RANGE: u32 = 2147772703; ++pub const IPMICTL_GET_MY_CHANNEL_ADDRESS_CMD: u32 = 1074030873; ++pub const EVIOCSCLOCKID: u32 = 2147763616; ++pub const USBDEVFS_FREE_STREAMS: u32 = 1074287901; ++pub const FSI_SCOM_RESET: u32 = 2147775235; ++pub const PMU_IOC_GRAB_BACKLIGHT: u32 = 1074283014; ++pub const VIDIOC_SUBDEV_S_FMT: u32 = 3227014661; ++pub const FDDEFPRM: u32 = 2149581379; ++pub const TEE_IOC_INVOKE: u32 = 1074832387; ++pub const USBDEVFS_BULK: u32 = 3222820098; ++pub const SCIF_VWRITETO: u32 = 3223876365; ++pub const SONYPI_IOCSBRT: u32 = 2147579392; ++pub const BTRFS_IOC_FILE_EXTENT_SAME: u32 = 3222836278; ++pub const RTC_PIE_ON: u32 = 536899589; ++pub const BTRFS_IOC_SCAN_DEV: u32 = 2415956996; ++pub const PPPIOCXFERUNIT: u32 = 536900686; ++pub const WDIOC_GETTIMEOUT: u32 = 1074026247; ++pub const BTRFS_IOC_SET_RECEIVED_SUBVOL: u32 = 3234370597; ++pub const DFL_FPGA_PORT_ERR_SET_IRQ: u32 = 2148054598; ++pub const FBIO_WAITFORVSYNC: u32 = 2147763744; ++pub const RTC_PIE_OFF: u32 = 536899590; ++pub const EVIOCGRAB: u32 = 2147763600; ++pub const PMU_IOC_SET_BACKLIGHT: u32 = 2148024834; ++pub const EVIOCGREP: u32 = 1074283779; ++pub const PERF_EVENT_IOC_MODIFY_ATTRIBUTES: u32 = 2148017163; ++pub const UFFDIO_CONTINUE: u32 = 3223366151; ++pub const VDUSE_GET_API_VERSION: u32 = 1074299136; ++pub const RTC_RD_TIME: u32 = 1076129801; ++pub const FDMSGOFF: u32 = 536871494; ++pub const IPMICTL_REGISTER_FOR_CMD_CHANS: u32 = 1074555164; ++pub const CAPI_GET_ERRCODE: u32 = 1073890081; ++pub const PCITEST_SET_IRQTYPE: u32 = 2147766280; ++pub const VIDIOC_SUBDEV_S_EDID: u32 = 3223868969; ++pub const MATROXFB_SET_OUTPUT_MODE: u32 = 2148036346; ++pub const RIO_DEV_ADD: u32 = 2149608727; ++pub const VIDIOC_ENUM_FREQ_BANDS: u32 = 3225441893; ++pub const FBIO_RADEON_SET_MIRROR: u32 = 2148024324; ++pub const PCITEST_GET_IRQTYPE: u32 = 536891401; ++pub const JSIOCGVERSION: u32 = 1074031105; ++pub const SONYPI_IOCSBLUE: u32 = 2147579401; ++pub const SNAPSHOT_PREF_IMAGE_SIZE: u32 = 536883986; ++pub const F2FS_IOC_GET_FEATURES: u32 = 1074066700; ++pub const SCIF_REG: u32 = 3223876360; ++pub const NILFS_IOCTL_CLEAN_SEGMENTS: u32 = 2155376264; ++pub const FW_CDEV_IOC_INITIATE_BUS_RESET: u32 = 2147754757; ++pub const RIO_WAIT_FOR_ASYNC: u32 = 2148035862; ++pub const VHOST_SET_VRING_NUM: u32 = 2148052752; ++pub const AUTOFS_DEV_IOCTL_PROTOVER: u32 = 3222836082; ++pub const RIO_FREE_DMA: u32 = 2148035860; ++pub const MGSL_IOCRXENABLE: u32 = 536898821; ++pub const IOCTL_VM_SOCKETS_GET_LOCAL_CID: u32 = 536872889; ++pub const IPMICTL_SET_TIMING_PARMS_CMD: u32 = 1074293014; ++pub const PPPIOCGL2TPSTATS: u32 = 1078490166; ++pub const PERF_EVENT_IOC_PERIOD: u32 = 2148017156; ++pub const PTP_PIN_SETFUNC2: u32 = 2153790736; ++pub const CHIOEXCHANGE: u32 = 2149344002; ++pub const NILFS_IOCTL_GET_SUINFO: u32 = 1075342980; ++pub const CEC_DQEVENT: u32 = 3226493191; ++pub const UI_SET_SWBIT: u32 = 2147767661; ++pub const VHOST_VDPA_SET_CONFIG: u32 = 2148052852; ++pub const TUNSETIFF: u32 = 2147767498; ++pub const CHIOPOSITION: u32 = 2148295427; ++pub const IPMICTL_SET_MAINTENANCE_MODE_CMD: u32 = 2147772703; ++pub const BTRFS_IOC_DEFAULT_SUBVOL: u32 = 2148045843; ++pub const RIO_UNMAP_OUTBOUND: u32 = 2150133008; ++pub const CAPI_CLR_FLAGS: u32 = 1074021157; ++pub const FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE_ONCE: u32 = 2149065487; ++pub const MATROXFB_GET_OUTPUT_CONNECTION: u32 = 1074294520; ++pub const EVIOCSMASK: u32 = 2148550035; ++pub const BTRFS_IOC_FORGET_DEV: u32 = 2415956997; ++pub const CXL_MEM_QUERY_COMMANDS: u32 = 1074318849; ++pub const CEC_S_MODE: u32 = 2147770633; ++pub const MGSL_IOCSIF: u32 = 536898826; ++pub const SWITCHTEC_IOCTL_PFF_TO_PORT: u32 = 3222034244; ++pub const PPSETMODE: u32 = 2147774592; ++pub const VFIO_DEVICE_SET_IRQS: u32 = 536886126; ++pub const VIDIOC_PREPARE_BUF: u32 = 3227014749; ++pub const CEC_ADAP_G_CONNECTOR_INFO: u32 = 1078223114; ++pub const IOC_OPAL_WRITE_SHADOW_MBR: u32 = 2166386922; ++pub const VIDIOC_SUBDEV_ENUM_FRAME_INTERVAL: u32 = 3225441867; ++pub const UDMABUF_CREATE: u32 = 2149086530; ++pub const SONET_CLRDIAG: u32 = 3221512467; ++pub const PHN_SET_REG: u32 = 2148036609; ++pub const RNDADDTOENTCNT: u32 = 2147766785; ++pub const VBG_IOCTL_CHECK_BALLOON: u32 = 3223344657; ++pub const VIDIOC_OMAP3ISP_STAT_REQ: u32 = 3223869126; ++pub const PPS_FETCH: u32 = 3221778596; ++pub const RTC_AIE_OFF: u32 = 536899586; ++pub const VFIO_GROUP_SET_CONTAINER: u32 = 536886120; ++pub const FW_CDEV_IOC_RECEIVE_PHY_PACKETS: u32 = 2148016918; ++pub const VFIO_IOMMU_SPAPR_TCE_REMOVE: u32 = 536886136; ++pub const VFIO_IOMMU_GET_INFO: u32 = 536886128; ++pub const DM_DEV_SUSPEND: u32 = 3241737478; ++pub const F2FS_IOC_GET_COMPRESS_OPTION: u32 = 1073935637; ++pub const FW_CDEV_IOC_STOP_ISO: u32 = 2147754763; ++pub const GPIO_V2_GET_LINEINFO_IOCTL: u32 = 3238048773; ++pub const ATMMPC_CTRL: u32 = 536895960; ++pub const PPPIOCSXASYNCMAP: u32 = 2149610575; ++pub const CHIOGSTATUS: u32 = 2148557576; ++pub const FW_CDEV_IOC_ALLOCATE_ISO_RESOURCE: u32 = 3222807309; ++pub const RIO_MPORT_MAINT_PORT_IDX_GET: u32 = 1074031875; ++pub const CAPI_SET_FLAGS: u32 = 1074021156; ++pub const VFIO_GROUP_GET_DEVICE_FD: u32 = 536886122; ++pub const VHOST_SET_MEM_TABLE: u32 = 2148052739; ++pub const MATROXFB_SET_OUTPUT_CONNECTION: u32 = 2148036344; ++pub const DFL_FPGA_PORT_GET_REGION_INFO: u32 = 536917570; ++pub const VHOST_GET_FEATURES: u32 = 1074310912; ++pub const LIRC_GET_REC_RESOLUTION: u32 = 1074030855; ++pub const PACKET_CTRL_CMD: u32 = 3222820865; ++pub const LIRC_SET_TRANSMITTER_MASK: u32 = 2147772695; ++pub const BTRFS_IOC_ADD_DEV: u32 = 2415957002; ++pub const JSIOCGCORR: u32 = 1076128290; ++pub const VIDIOC_G_FMT: u32 = 3234878980; ++pub const RTC_EPOCH_SET: u32 = 2148036622; ++pub const CAPI_GET_PROFILE: u32 = 3225436937; ++pub const ATM_GETLOOP: u32 = 2148557138; ++pub const SCIF_LISTEN: u32 = 2147775234; ++pub const NBD_CLEAR_QUE: u32 = 536914693; ++pub const F2FS_IOC_MOVE_RANGE: u32 = 3223385353; ++pub const LIRC_GET_LENGTH: u32 = 1074030863; ++pub const I8K_SET_FAN: u32 = 3221776775; ++pub const FDSETMAXERRS: u32 = 2148794956; ++pub const VIDIOC_SUBDEV_QUERYCAP: u32 = 1077958144; ++pub const SNAPSHOT_SET_SWAP_AREA: u32 = 2148283149; ++pub const LIRC_GET_REC_TIMEOUT: u32 = 1074030884; ++pub const EVIOCRMFF: u32 = 2147763585; ++pub const GPIO_GET_LINEEVENT_IOCTL: u32 = 3224417284; ++pub const PPRDATA: u32 = 1073836165; ++pub const RIO_MPORT_GET_PROPERTIES: u32 = 1076915460; ++pub const TUNSETVNETHDRSZ: u32 = 2147767512; ++pub const GPIO_GET_LINEINFO_IOCTL: u32 = 3225990146; ++pub const GSMIOC_GETCONF: u32 = 1078740736; ++pub const LIRC_GET_SEND_MODE: u32 = 1074030849; ++pub const PPPIOCSACTIVE: u32 = 2148561990; ++pub const SIOCGSTAMPNS_NEW: u32 = 1074825479; ++pub const IPMICTL_RECEIVE_MSG: u32 = 3224398092; ++pub const LIRC_SET_SEND_DUTY_CYCLE: u32 = 2147772693; ++pub const UI_END_FF_ERASE: u32 = 2148292043; ++pub const SWITCHTEC_IOCTL_FLASH_PART_INFO: u32 = 3222296385; ++pub const FW_CDEV_IOC_SEND_PHY_PACKET: u32 = 3222807317; ++pub const NBD_SET_FLAGS: u32 = 536914698; ++pub const VFIO_DEVICE_GET_REGION_INFO: u32 = 536886124; ++pub const REISERFS_IOC_UNPACK: u32 = 2148060417; ++pub const FW_CDEV_IOC_REMOVE_DESCRIPTOR: u32 = 2147754759; ++pub const RIO_SET_EVENT_MASK: u32 = 2147773709; ++pub const SNAPSHOT_ALLOC_SWAP_PAGE: u32 = 1074279188; ++pub const VDUSE_VQ_INJECT_IRQ: u32 = 2147778839; ++pub const I2OPASSTHRU: u32 = 1074817292; ++pub const IOC_OPAL_SET_PW: u32 = 2183164128; ++pub const FSI_SCOM_READ: u32 = 3223352065; ++pub const VHOST_VDPA_GET_DEVICE_ID: u32 = 1074048880; ++pub const VIDIOC_QBUF: u32 = 3227014671; ++pub const VIDIOC_S_TUNER: u32 = 2153010718; ++pub const TUNGETVNETHDRSZ: u32 = 1074025687; ++pub const CAPI_NCCI_GETUNIT: u32 = 1074021159; ++pub const DFL_FPGA_PORT_UINT_GET_IRQ_NUM: u32 = 1074050631; ++pub const VIDIOC_OMAP3ISP_STAT_EN: u32 = 3221771975; ++pub const GPIO_V2_LINE_SET_CONFIG_IOCTL: u32 = 3239097357; ++pub const TEE_IOC_VERSION: u32 = 1074570240; ++pub const VIDIOC_LOG_STATUS: u32 = 536892998; ++pub const IPMICTL_SEND_COMMAND_SETTIME: u32 = 1076914453; ++pub const VHOST_SET_LOG_FD: u32 = 2147790599; ++pub const SCIF_SEND: u32 = 3222827782; ++pub const VIDIOC_SUBDEV_G_FMT: u32 = 3227014660; ++pub const NS_ADJBUFLEV: u32 = 536895843; ++pub const VIDIOC_DBG_S_REGISTER: u32 = 2151175759; ++pub const NILFS_IOCTL_RESIZE: u32 = 2148036235; ++pub const PHN_GETREG: u32 = 3221778437; ++pub const I2OSWDL: u32 = 3224398085; ++pub const VBG_IOCTL_VMMDEV_REQUEST_BIG: u32 = 536892931; ++pub const JSIOCGBUTTONS: u32 = 1073834514; ++pub const VFIO_IOMMU_ENABLE: u32 = 536886131; ++pub const DM_DEV_RENAME: u32 = 3241737477; ++pub const MEDIA_IOC_SETUP_LINK: u32 = 3224665091; ++pub const VIDIOC_ENUMOUTPUT: u32 = 3225966128; ++pub const STP_POLICY_ID_SET: u32 = 3222283520; ++pub const VHOST_VDPA_SET_CONFIG_CALL: u32 = 2147790711; ++pub const VIDIOC_SUBDEV_G_CROP: u32 = 3224917563; ++pub const VIDIOC_S_CROP: u32 = 2148816444; ++pub const WDIOC_GETTEMP: u32 = 1074026243; ++pub const IOC_OPAL_ADD_USR_TO_LR: u32 = 2165862628; ++pub const UI_SET_LEDBIT: u32 = 2147767657; ++pub const NBD_SET_SOCK: u32 = 536914688; ++pub const BTRFS_IOC_SNAP_DESTROY_V2: u32 = 2415957055; ++pub const HIDIOCGCOLLECTIONINFO: u32 = 3222292497; ++pub const I2OSWUL: u32 = 3224398086; ++pub const IOCTL_MEI_NOTIFY_GET: u32 = 1074022403; ++pub const FDFMTTRK: u32 = 2148270664; ++pub const MMTIMER_GETBITS: u32 = 536898820; ++pub const VIDIOC_ENUMSTD: u32 = 3225966105; ++pub const VHOST_GET_VRING_BASE: u32 = 3221794578; ++pub const VFIO_DEVICE_IOEVENTFD: u32 = 536886132; ++pub const ATMARP_SETENTRY: u32 = 536895971; ++pub const CCISS_REVALIDVOLS: u32 = 536887818; ++pub const MGSL_IOCLOOPTXDONE: u32 = 536898825; ++pub const RTC_VL_READ: u32 = 1074032659; ++pub const ND_IOCTL_ARS_STATUS: u32 = 3224391171; ++pub const RIO_DEV_DEL: u32 = 2149608728; ++pub const VBG_IOCTL_ACQUIRE_GUEST_CAPABILITIES: u32 = 3223606797; ++pub const VIDIOC_SUBDEV_DV_TIMINGS_CAP: u32 = 3230684772; ++pub const SONYPI_IOCSFAN: u32 = 2147579403; ++pub const SPIOCSTYPE: u32 = 2148036865; ++pub const IPMICTL_REGISTER_FOR_CMD: u32 = 1073899790; ++pub const I8K_GET_FAN: u32 = 3221776774; ++pub const TUNGETVNETBE: u32 = 1074025695; ++pub const AUTOFS_DEV_IOCTL_FAIL: u32 = 3222836087; ++pub const UI_END_FF_UPLOAD: u32 = 2154321353; ++pub const TOSH_SMM: u32 = 3222828176; ++pub const SONYPI_IOCGBAT2REM: u32 = 1073903109; ++pub const F2FS_IOC_GET_COMPRESS_BLOCKS: u32 = 1074328849; ++pub const PPPIOCSNPMODE: u32 = 2148037707; ++pub const USBDEVFS_CONTROL: u32 = 3222820096; ++pub const HIDIOCGUSAGE: u32 = 3222816779; ++pub const TUNSETTXFILTER: u32 = 2147767505; ++pub const TUNGETVNETLE: u32 = 1074025693; ++pub const VIDIOC_ENUM_DV_TIMINGS: u32 = 3230946914; ++pub const BTRFS_IOC_INO_PATHS: u32 = 3224933411; ++pub const MGSL_IOCGXSYNC: u32 = 536898836; ++pub const HIDIOCGFIELDINFO: u32 = 3224913930; ++pub const VIDIOC_SUBDEV_G_STD: u32 = 1074288151; ++pub const I2OVALIDATE: u32 = 1074030856; ++pub const VIDIOC_TRY_ENCODER_CMD: u32 = 3223869006; ++pub const NILFS_IOCTL_GET_CPINFO: u32 = 1075342978; ++pub const VIDIOC_G_FREQUENCY: u32 = 3224131128; ++pub const VFAT_IOCTL_READDIR_SHORT: u32 = 1110471170; ++pub const ND_IOCTL_GET_CONFIG_DATA: u32 = 3222031877; ++pub const F2FS_IOC_RESERVE_COMPRESS_BLOCKS: u32 = 1074328851; ++pub const FDGETDRVSTAT: u32 = 1078985234; ++pub const SYNC_IOC_MERGE: u32 = 3224387075; ++pub const VIDIOC_S_DV_TIMINGS: u32 = 3229898327; ++pub const PPPIOCBRIDGECHAN: u32 = 2147775541; ++pub const LIRC_SET_SEND_MODE: u32 = 2147772689; ++pub const RIO_ENABLE_PORTWRITE_RANGE: u32 = 2148560139; ++pub const ATM_GETTYPE: u32 = 2148557188; ++pub const PHN_GETREGS: u32 = 3223875591; ++pub const FDSETEMSGTRESH: u32 = 536871498; ++pub const NILFS_IOCTL_GET_VINFO: u32 = 3222826630; ++pub const MGSL_IOCWAITEVENT: u32 = 3221515528; ++pub const CAPI_INSTALLED: u32 = 1073890082; ++pub const EVIOCGMASK: u32 = 1074808210; ++pub const BTRFS_IOC_SUBVOL_GETFLAGS: u32 = 1074304025; ++pub const FSL_HV_IOCTL_PARTITION_GET_STATUS: u32 = 3222056706; ++pub const MEDIA_IOC_ENUM_ENTITIES: u32 = 3238034433; ++pub const GSMIOC_GETFIRST: u32 = 1074022148; ++pub const FW_CDEV_IOC_FLUSH_ISO: u32 = 2147754776; ++pub const VIDIOC_DBG_G_CHIP_INFO: u32 = 3234354790; ++pub const F2FS_IOC_RELEASE_VOLATILE_WRITE: u32 = 536933636; ++pub const CAPI_GET_SERIAL: u32 = 3221504776; ++pub const FDSETDRVPRM: u32 = 2155872912; ++pub const IOC_OPAL_SAVE: u32 = 2165862620; ++pub const VIDIOC_G_DV_TIMINGS: u32 = 3229898328; ++pub const TUNSETIFINDEX: u32 = 2147767514; ++pub const CCISS_SETINTINFO: u32 = 2148024835; ++pub const RTC_VL_CLR: u32 = 536899604; ++pub const VIDIOC_REQBUFS: u32 = 3222558216; ++pub const USBDEVFS_REAPURBNDELAY32: u32 = 2147767565; ++pub const TEE_IOC_SHM_REGISTER: u32 = 3222840329; ++pub const USBDEVFS_SETCONFIGURATION: u32 = 1074025733; ++pub const CCISS_GETNODENAME: u32 = 1074807300; ++pub const VIDIOC_SUBDEV_S_FRAME_INTERVAL: u32 = 3224393238; ++pub const VIDIOC_ENUM_FRAMESIZES: u32 = 3224131146; ++pub const VFIO_DEVICE_PCI_HOT_RESET: u32 = 536886129; ++pub const FW_CDEV_IOC_SEND_BROADCAST_REQUEST: u32 = 2150114066; ++pub const LPSETTIMEOUT_NEW: u32 = 2148533775; ++pub const RIO_CM_MPORT_GET_LIST: u32 = 3221512971; ++pub const FW_CDEV_IOC_QUEUE_ISO: u32 = 3222807305; ++pub const FDRAWCMD: u32 = 536871512; ++pub const SCIF_UNREG: u32 = 3222303497; ++pub const PPPIOCGIDLE64: u32 = 1074820159; ++pub const USBDEVFS_RELEASEINTERFACE: u32 = 1074025744; ++pub const VIDIOC_CROPCAP: u32 = 3224131130; ++pub const DFL_FPGA_PORT_GET_INFO: u32 = 536917569; ++pub const PHN_SET_REGS: u32 = 2148036611; ++pub const ATMLEC_DATA: u32 = 536895953; ++pub const PPPOEIOCDFWD: u32 = 536916225; ++pub const VIDIOC_S_SELECTION: u32 = 3225441887; ++pub const SNAPSHOT_FREE_SWAP_PAGES: u32 = 536883977; ++pub const BTRFS_IOC_LOGICAL_INO: u32 = 3224933412; ++pub const VIDIOC_S_CTRL: u32 = 3221771804; ++pub const ZATM_SETPOOL: u32 = 2148557155; ++pub const MTIOCPOS: u32 = 1074294019; ++pub const PMU_IOC_SLEEP: u32 = 536887808; ++pub const AUTOFS_DEV_IOCTL_PROTOSUBVER: u32 = 3222836083; ++pub const VBG_IOCTL_CHANGE_FILTER_MASK: u32 = 3223344652; ++pub const NILFS_IOCTL_GET_SUSTAT: u32 = 1076915845; ++pub const VIDIOC_QUERYCAP: u32 = 1080579584; ++pub const HPET_INFO: u32 = 1075341315; ++pub const VIDIOC_AM437X_CCDC_CFG: u32 = 2148030145; ++pub const DM_LIST_DEVICES: u32 = 3241737474; ++pub const TUNSETOWNER: u32 = 2147767500; ++pub const VBG_IOCTL_CHANGE_GUEST_CAPABILITIES: u32 = 3223344654; ++pub const RNDADDENTROPY: u32 = 2148028931; ++pub const USBDEVFS_RESET: u32 = 536892692; ++pub const BTRFS_IOC_SUBVOL_CREATE: u32 = 2415957006; ++pub const USBDEVFS_FORBID_SUSPEND: u32 = 536892705; ++pub const FDGETDRVTYP: u32 = 1074790927; ++pub const PPWCONTROL: u32 = 2147577988; ++pub const VIDIOC_ENUM_FRAMEINTERVALS: u32 = 3224655435; ++pub const KCOV_DISABLE: u32 = 536896357; ++pub const IOC_OPAL_ACTIVATE_LSP: u32 = 2165862623; ++pub const VHOST_VDPA_GET_IOVA_RANGE: u32 = 1074835320; ++pub const PPPIOCSPASS: u32 = 2148561991; ++pub const RIO_CM_CHAN_CONNECT: u32 = 2148033288; ++pub const I2OSWDEL: u32 = 3224398087; ++pub const FS_IOC_SET_ENCRYPTION_POLICY: u32 = 1074554387; ++pub const IOC_OPAL_MBR_DONE: u32 = 2165338345; ++pub const PPPIOCSMAXCID: u32 = 2147775569; ++pub const PPSETPHASE: u32 = 2147774612; ++pub const VHOST_VDPA_SET_VRING_ENABLE: u32 = 2148052853; ++pub const USBDEVFS_GET_SPEED: u32 = 536892703; ++pub const SONET_GETFRAMING: u32 = 1074028822; ++pub const VIDIOC_QUERYBUF: u32 = 3227014665; ++pub const VIDIOC_S_EDID: u32 = 3223868969; ++pub const BTRFS_IOC_QGROUP_ASSIGN: u32 = 2149094441; ++pub const PPS_GETCAP: u32 = 1074294947; ++pub const SNAPSHOT_PLATFORM_SUPPORT: u32 = 536883983; ++pub const LIRC_SET_REC_TIMEOUT_REPORTS: u32 = 2147772697; ++pub const SCIF_GET_NODEIDS: u32 = 3222827790; ++pub const NBD_DISCONNECT: u32 = 536914696; ++pub const VIDIOC_SUBDEV_G_FRAME_INTERVAL: u32 = 3224393237; ++pub const VFIO_IOMMU_DISABLE: u32 = 536886132; ++pub const SNAPSHOT_CREATE_IMAGE: u32 = 2147758865; ++pub const SNAPSHOT_POWER_OFF: u32 = 536883984; ++pub const APM_IOC_STANDBY: u32 = 536887553; ++pub const PPPIOCGUNIT: u32 = 1074033750; ++pub const AUTOFS_IOC_EXPIRE_MULTI: u32 = 2147783526; ++pub const SCIF_BIND: u32 = 3221779201; ++pub const IOC_WATCH_QUEUE_SET_SIZE: u32 = 536893280; ++pub const NILFS_IOCTL_CHANGE_CPMODE: u32 = 2148560512; ++pub const IOC_OPAL_LOCK_UNLOCK: u32 = 2165862621; ++pub const F2FS_IOC_SET_PIN_FILE: u32 = 2147808525; ++pub const PPPIOCGRASYNCMAP: u32 = 1074033749; ++pub const MMTIMER_MMAPAVAIL: u32 = 536898822; ++pub const I2OPASSTHRU32: u32 = 1074293004; ++pub const DFL_FPGA_FME_PORT_RELEASE: u32 = 2147792513; ++pub const VIDIOC_SUBDEV_QUERY_DV_TIMINGS: u32 = 1082414691; ++pub const UI_SET_SNDBIT: u32 = 2147767658; ++pub const VIDIOC_G_AUDOUT: u32 = 1077171761; ++pub const RTC_PLL_SET: u32 = 2149609490; ++pub const VIDIOC_ENUMAUDIO: u32 = 3224655425; ++pub const AUTOFS_DEV_IOCTL_TIMEOUT: u32 = 3222836090; ++pub const VBG_IOCTL_DRIVER_VERSION_INFO: u32 = 3224131072; ++pub const VHOST_SCSI_GET_EVENTS_MISSED: u32 = 2147790660; ++pub const VHOST_SET_VRING_ADDR: u32 = 2150149905; ++pub const VDUSE_CREATE_DEV: u32 = 2169536770; ++pub const FDFLUSH: u32 = 536871499; ++pub const VBG_IOCTL_WAIT_FOR_EVENTS: u32 = 3223344650; ++pub const DFL_FPGA_FME_ERR_SET_IRQ: u32 = 2148054660; ++pub const F2FS_IOC_GET_PIN_FILE: u32 = 1074066702; ++pub const SCIF_CONNECT: u32 = 3221779203; ++pub const BLKREPORTZONE: u32 = 3222278786; ++pub const AUTOFS_IOC_ASKUMOUNT: u32 = 1074041712; ++pub const ATM_ADDPARTY: u32 = 2148557300; ++pub const FDSETPRM: u32 = 2149581378; ++pub const ATM_GETSTATZ: u32 = 2148557137; ++pub const ISST_IF_MSR_COMMAND: u32 = 3221814788; ++pub const BTRFS_IOC_GET_SUBVOL_INFO: u32 = 1106809916; ++pub const VIDIOC_UNSUBSCRIBE_EVENT: u32 = 2149602907; ++pub const SEV_ISSUE_CMD: u32 = 3222295296; ++pub const GPIOHANDLE_SET_LINE_VALUES_IOCTL: u32 = 3225465865; ++pub const PCITEST_COPY: u32 = 2148028422; ++pub const IPMICTL_GET_MY_ADDRESS_CMD: u32 = 1074030866; ++pub const CHIOGPICKER: u32 = 1074029316; ++pub const CAPI_NCCI_OPENCOUNT: u32 = 1074021158; ++pub const CXL_MEM_SEND_COMMAND: u32 = 3224423938; ++pub const PERF_EVENT_IOC_SET_FILTER: u32 = 2148017158; ++pub const IOC_OPAL_REVERT_TPR: u32 = 2164814050; ++pub const CHIOGVPARAMS: u32 = 1081107219; ++pub const PTP_PEROUT_REQUEST: u32 = 2151169283; ++pub const FSI_SCOM_CHECK: u32 = 1074033408; ++pub const RTC_IRQP_READ: u32 = 1074294795; ++pub const RIO_MPORT_MAINT_READ_LOCAL: u32 = 1075342597; ++pub const HIDIOCGRDESCSIZE: u32 = 1074022401; ++pub const UI_GET_VERSION: u32 = 1074025773; ++pub const NILFS_IOCTL_GET_CPSTAT: u32 = 1075342979; ++pub const CCISS_GETBUSTYPES: u32 = 1074020871; ++pub const VFIO_IOMMU_SPAPR_TCE_CREATE: u32 = 536886135; ++pub const VIDIOC_EXPBUF: u32 = 3225441808; ++pub const UI_SET_RELBIT: u32 = 2147767654; ++pub const VFIO_SET_IOMMU: u32 = 536886118; ++pub const VIDIOC_S_MODULATOR: u32 = 2151962167; ++pub const TUNGETFILTER: u32 = 1074812123; ++pub const CCISS_SETNODENAME: u32 = 2148549125; ++pub const FBIO_GETCONTROL2: u32 = 1074284169; ++pub const TUNSETDEBUG: u32 = 2147767497; ++pub const DM_DEV_REMOVE: u32 = 3241737476; ++pub const HIDIOCSUSAGES: u32 = 2417772564; ++pub const FS_IOC_ADD_ENCRYPTION_KEY: u32 = 3226494487; ++pub const FBIOGET_VBLANK: u32 = 1075856914; ++pub const ATM_GETSTAT: u32 = 2148557136; ++pub const VIDIOC_G_JPEGCOMP: u32 = 1082938941; ++pub const TUNATTACHFILTER: u32 = 2148553941; ++pub const UI_SET_ABSBIT: u32 = 2147767655; ++pub const DFL_FPGA_PORT_ERR_GET_IRQ_NUM: u32 = 1074050629; ++pub const USBDEVFS_REAPURB32: u32 = 2147767564; ++pub const BTRFS_IOC_TRANS_END: u32 = 536908807; ++pub const CAPI_REGISTER: u32 = 2148287233; ++pub const F2FS_IOC_COMPRESS_FILE: u32 = 536933656; ++pub const USBDEVFS_DISCARDURB: u32 = 536892683; ++pub const HE_GET_REG: u32 = 2148557152; ++pub const ATM_SETLOOP: u32 = 2148557139; ++pub const ATMSIGD_CTRL: u32 = 536895984; ++pub const CIOC_KERNEL_VERSION: u32 = 3221775114; ++pub const BTRFS_IOC_CLONE_RANGE: u32 = 2149618701; ++pub const SNAPSHOT_UNFREEZE: u32 = 536883970; ++pub const F2FS_IOC_START_VOLATILE_WRITE: u32 = 536933635; ++pub const PMU_IOC_HAS_ADB: u32 = 1074283012; ++pub const I2OGETIOPS: u32 = 1075865856; ++pub const VIDIOC_S_FBUF: u32 = 2150651403; ++pub const PPRCONTROL: u32 = 1073836163; ++pub const CHIOSPICKER: u32 = 2147771141; ++pub const VFIO_IOMMU_SPAPR_REGISTER_MEMORY: u32 = 536886133; ++pub const TUNGETSNDBUF: u32 = 1074025683; ++pub const GSMIOC_SETCONF: u32 = 2152482561; ++pub const IOC_PR_PREEMPT: u32 = 2149085387; ++pub const KCOV_INIT_TRACE: u32 = 1074291457; ++pub const SONYPI_IOCGBAT1CAP: u32 = 1073903106; ++pub const SWITCHTEC_IOCTL_FLASH_INFO: u32 = 1074812736; ++pub const MTIOCTOP: u32 = 2148035841; ++pub const VHOST_VDPA_SET_STATUS: u32 = 2147594098; ++pub const VHOST_SCSI_SET_EVENTS_MISSED: u32 = 2147790659; ++pub const VFIO_IOMMU_DIRTY_PAGES: u32 = 536886133; ++pub const BTRFS_IOC_SCRUB_PROGRESS: u32 = 3288372253; ++pub const PPPIOCGMRU: u32 = 1074033747; ++pub const BTRFS_IOC_DEV_REPLACE: u32 = 3391657013; ++pub const PPPIOCGFLAGS: u32 = 1074033754; ++pub const NILFS_IOCTL_SET_SUINFO: u32 = 2149084813; ++pub const FW_CDEV_IOC_GET_CYCLE_TIMER2: u32 = 3222807316; ++pub const ATM_DELLECSADDR: u32 = 2148557199; ++pub const FW_CDEV_IOC_GET_SPEED: u32 = 536879889; ++pub const PPPIOCGIDLE32: u32 = 1074295871; ++pub const VFIO_DEVICE_RESET: u32 = 536886127; ++pub const GPIO_GET_LINEINFO_UNWATCH_IOCTL: u32 = 3221533708; ++pub const WDIOC_GETSTATUS: u32 = 1074026241; ++pub const BTRFS_IOC_SET_FEATURES: u32 = 2150667321; ++pub const IOCTL_MEI_CONNECT_CLIENT: u32 = 3222292481; ++pub const VIDIOC_OMAP3ISP_AEWB_CFG: u32 = 3223344835; ++pub const PCITEST_READ: u32 = 2148028421; ++pub const VFIO_GROUP_GET_STATUS: u32 = 536886119; ++pub const MATROXFB_GET_ALL_OUTPUTS: u32 = 1074294523; ++pub const USBDEVFS_CLEAR_HALT: u32 = 1074025749; ++pub const VIDIOC_DECODER_CMD: u32 = 3225966176; ++pub const VIDIOC_G_AUDIO: u32 = 1077171745; ++pub const CCISS_RESCANDISK: u32 = 536887824; ++pub const RIO_DISABLE_PORTWRITE_RANGE: u32 = 2148560140; ++pub const IOC_OPAL_SECURE_ERASE_LR: u32 = 2165338343; ++pub const USBDEVFS_REAPURB: u32 = 2148029708; ++pub const DFL_FPGA_CHECK_EXTENSION: u32 = 536917505; ++pub const AUTOFS_IOC_PROTOVER: u32 = 1074041699; ++pub const FSL_HV_IOCTL_MEMCPY: u32 = 3223891717; ++pub const BTRFS_IOC_GET_FEATURES: u32 = 1075352633; ++pub const PCITEST_MSIX: u32 = 2147766279; ++pub const BTRFS_IOC_DEFRAG_RANGE: u32 = 2150667280; ++pub const UI_BEGIN_FF_ERASE: u32 = 3222033866; ++pub const DM_GET_TARGET_VERSION: u32 = 3241737489; ++pub const PPPIOCGIDLE: u32 = 1074820159; ++pub const NVRAM_SETCKS: u32 = 536899649; ++pub const WDIOC_GETSUPPORT: u32 = 1076385536; ++pub const GSMIOC_ENABLE_NET: u32 = 2150909698; ++pub const GPIO_GET_CHIPINFO_IOCTL: u32 = 1078244353; ++pub const NE_ADD_VCPU: u32 = 3221532193; ++pub const EVIOCSKEYCODE_V2: u32 = 2150122756; ++pub const PTP_SYS_OFFSET_EXTENDED2: u32 = 3300932882; ++pub const SCIF_FENCE_WAIT: u32 = 3221517072; ++pub const RIO_TRANSFER: u32 = 3222826261; ++pub const FSL_HV_IOCTL_DOORBELL: u32 = 3221794566; ++pub const RIO_MPORT_MAINT_WRITE_LOCAL: u32 = 2149084422; ++pub const I2OEVTREG: u32 = 2148296970; ++pub const I2OPARMGET: u32 = 3223873796; ++pub const EVIOCGID: u32 = 1074283778; ++pub const BTRFS_IOC_QGROUP_CREATE: u32 = 2148570154; ++pub const AUTOFS_DEV_IOCTL_SETPIPEFD: u32 = 3222836088; ++pub const VIDIOC_S_PARM: u32 = 3234616854; ++pub const TUNSETSTEERINGEBPF: u32 = 1074025696; ++pub const ATM_GETNAMES: u32 = 2148557187; ++pub const VIDIOC_QUERYMENU: u32 = 3224131109; ++pub const DFL_FPGA_PORT_DMA_UNMAP: u32 = 536917572; ++pub const I2OLCTGET: u32 = 3222825218; ++pub const FS_IOC_GET_ENCRYPTION_PWSALT: u32 = 2148558356; ++pub const NS_SETBUFLEV: u32 = 2148557154; ++pub const BLKCLOSEZONE: u32 = 2148536967; ++pub const SONET_GETFRSENSE: u32 = 1074159895; ++pub const UI_SET_EVBIT: u32 = 2147767652; ++pub const DM_LIST_VERSIONS: u32 = 3241737485; ++pub const HIDIOCGSTRING: u32 = 1090799620; ++pub const PPPIOCATTCHAN: u32 = 2147775544; ++pub const VDUSE_DEV_SET_CONFIG: u32 = 2148040978; ++pub const TUNGETFEATURES: u32 = 1074025679; ++pub const VFIO_GROUP_UNSET_CONTAINER: u32 = 536886121; ++pub const IPMICTL_SET_MY_ADDRESS_CMD: u32 = 1074030865; ++pub const CCISS_REGNEWDISK: u32 = 2147762701; ++pub const VIDIOC_QUERY_DV_TIMINGS: u32 = 1082414691; ++pub const PHN_SETREGS: u32 = 2150133768; ++pub const FAT_IOCTL_GET_ATTRIBUTES: u32 = 1074033168; ++pub const FSL_MC_SEND_MC_COMMAND: u32 = 3225440992; ++pub const TUNGETIFF: u32 = 1074025682; ++pub const PTP_CLOCK_GETCAPS2: u32 = 1079000330; ++pub const BTRFS_IOC_RESIZE: u32 = 2415956995; ++pub const VHOST_SET_VRING_ENDIAN: u32 = 2148052755; ++pub const PPS_KC_BIND: u32 = 2148036773; ++pub const F2FS_IOC_WRITE_CHECKPOINT: u32 = 536933639; ++pub const UI_SET_FFBIT: u32 = 2147767659; ++pub const IPMICTL_GET_MY_LUN_CMD: u32 = 1074030868; ++pub const CEC_ADAP_G_PHYS_ADDR: u32 = 1073897729; ++pub const CEC_G_MODE: u32 = 1074028808; ++pub const USBDEVFS_RESETEP: u32 = 1074025731; ++pub const MEDIA_REQUEST_IOC_QUEUE: u32 = 536902784; ++pub const USBDEVFS_ALLOC_STREAMS: u32 = 1074287900; ++pub const MGSL_IOCSXCTRL: u32 = 536898837; ++pub const MEDIA_IOC_G_TOPOLOGY: u32 = 3225975812; ++pub const PPPIOCUNBRIDGECHAN: u32 = 536900660; ++pub const F2FS_IOC_COMMIT_ATOMIC_WRITE: u32 = 536933634; ++pub const ISST_IF_GET_PLATFORM_INFO: u32 = 1074331136; ++pub const SCIF_FENCE_MARK: u32 = 3222303503; ++pub const USBDEVFS_RELEASE_PORT: u32 = 1074025753; ++pub const VFIO_CHECK_EXTENSION: u32 = 536886117; ++pub const BTRFS_IOC_QGROUP_LIMIT: u32 = 1076925483; ++pub const FAT_IOCTL_GET_VOLUME_ID: u32 = 1074033171; ++pub const UI_SET_PHYS: u32 = 2148029804; ++pub const FDWERRORGET: u32 = 1076363799; ++pub const VIDIOC_SUBDEV_G_EDID: u32 = 3223868968; ++pub const MGSL_IOCGSTATS: u32 = 536898823; ++pub const RPROC_SET_SHUTDOWN_ON_RELEASE: u32 = 2147792641; ++pub const SIOCGSTAMP_NEW: u32 = 1074825478; ++pub const RTC_WKALM_RD: u32 = 1076391952; ++pub const PHN_GET_REG: u32 = 3221778432; ++pub const DELL_WMI_SMBIOS_CMD: u32 = 3224655616; ++pub const PHN_NOT_OH: u32 = 536899588; ++pub const PPGETMODES: u32 = 1074032791; ++pub const CHIOGPARAMS: u32 = 1075077894; ++pub const VFIO_DEVICE_GET_GFX_DMABUF: u32 = 536886131; ++pub const VHOST_SET_VRING_BUSYLOOP_TIMEOUT: u32 = 2148052771; ++pub const VIDIOC_SUBDEV_G_SELECTION: u32 = 3225441853; ++pub const BTRFS_IOC_RM_DEV_V2: u32 = 2415957050; ++pub const MGSL_IOCWAITGPIO: u32 = 3222301970; ++pub const PMU_IOC_CAN_SLEEP: u32 = 1074283013; ++pub const KCOV_ENABLE: u32 = 536896356; ++pub const BTRFS_IOC_CLONE: u32 = 2147783689; ++pub const F2FS_IOC_DEFRAGMENT: u32 = 3222336776; ++pub const FW_CDEV_IOC_DEALLOCATE_ISO_RESOURCE: u32 = 2147754766; ++pub const AGPIOC_ALLOCATE: u32 = 3221766406; ++pub const NE_SET_USER_MEMORY_REGION: u32 = 2149101091; ++pub const MGSL_IOCTXABORT: u32 = 536898822; ++pub const MGSL_IOCSGPIO: u32 = 2148560144; ++pub const LIRC_SET_REC_CARRIER: u32 = 2147772692; ++pub const F2FS_IOC_FLUSH_DEVICE: u32 = 2148070666; ++pub const SNAPSHOT_ATOMIC_RESTORE: u32 = 536883972; ++pub const RTC_UIE_OFF: u32 = 536899588; ++pub const BT_BMC_IOCTL_SMS_ATN: u32 = 536916224; ++pub const NVME_IOCTL_ID: u32 = 536890944; ++pub const NE_START_ENCLAVE: u32 = 3222318628; ++pub const VIDIOC_STREAMON: u32 = 2147767826; ++pub const FDPOLLDRVSTAT: u32 = 1078985235; ++pub const AUTOFS_DEV_IOCTL_READY: u32 = 3222836086; ++pub const VIDIOC_ENUMAUDOUT: u32 = 3224655426; ++pub const VIDIOC_SUBDEV_S_STD: u32 = 2148029976; ++pub const WDIOC_GETTIMELEFT: u32 = 1074026250; ++pub const ATM_GETLINKRATE: u32 = 2148557185; ++pub const RTC_WKALM_SET: u32 = 2150133775; ++pub const VHOST_GET_BACKEND_FEATURES: u32 = 1074310950; ++pub const ATMARP_ENCAP: u32 = 536895973; ++pub const CAPI_GET_FLAGS: u32 = 1074021155; ++pub const IPMICTL_SET_MY_CHANNEL_ADDRESS_CMD: u32 = 1074030872; ++pub const DFL_FPGA_FME_PORT_ASSIGN: u32 = 2147792514; ++pub const NS_GET_OWNER_UID: u32 = 536917764; ++pub const VIDIOC_OVERLAY: u32 = 2147767822; ++pub const BTRFS_IOC_WAIT_SYNC: u32 = 2148045846; ++pub const GPIOHANDLE_SET_CONFIG_IOCTL: u32 = 3226776586; ++pub const VHOST_GET_VRING_ENDIAN: u32 = 2148052756; ++pub const ATM_GETADDR: u32 = 2148557190; ++pub const PHN_GET_REGS: u32 = 3221778434; ++pub const AUTOFS_DEV_IOCTL_REQUESTER: u32 = 3222836091; ++pub const AUTOFS_DEV_IOCTL_EXPIRE: u32 = 3222836092; ++pub const SNAPSHOT_S2RAM: u32 = 536883979; ++pub const JSIOCSAXMAP: u32 = 2151705137; ++pub const F2FS_IOC_SET_COMPRESS_OPTION: u32 = 2147677462; ++pub const VBG_IOCTL_HGCM_DISCONNECT: u32 = 3223082501; ++pub const SCIF_FENCE_SIGNAL: u32 = 3223876369; ++pub const VFIO_DEVICE_GET_PCI_HOT_RESET_INFO: u32 = 536886128; ++pub const VIDIOC_SUBDEV_ENUM_MBUS_CODE: u32 = 3224393218; ++pub const MMTIMER_GETOFFSET: u32 = 536898816; ++pub const RIO_CM_CHAN_LISTEN: u32 = 2147640070; ++pub const ATM_SETSC: u32 = 2147770865; ++pub const F2FS_IOC_SHUTDOWN: u32 = 1074026621; ++pub const NVME_IOCTL_RESCAN: u32 = 536890950; ++pub const BLKOPENZONE: u32 = 2148536966; ++pub const DM_VERSION: u32 = 3241737472; ++pub const CEC_TRANSMIT: u32 = 3224920325; ++pub const FS_IOC_GET_ENCRYPTION_POLICY_EX: u32 = 3221841430; ++pub const SIOCMKCLIP: u32 = 536895968; ++pub const IPMI_BMC_IOCTL_CLEAR_SMS_ATN: u32 = 536916225; ++pub const HIDIOCGVERSION: u32 = 1074022401; ++pub const VIDIOC_S_INPUT: u32 = 3221509671; ++pub const VIDIOC_G_CROP: u32 = 3222558267; ++pub const LIRC_SET_WIDEBAND_RECEIVER: u32 = 2147772707; ++pub const EVIOCGEFFECTS: u32 = 1074021764; ++pub const UVCIOC_CTRL_QUERY: u32 = 3222304033; ++pub const IOC_OPAL_GENERIC_TABLE_RW: u32 = 2167959787; ++pub const FS_IOC_READ_VERITY_METADATA: u32 = 3223873159; ++pub const ND_IOCTL_SET_CONFIG_DATA: u32 = 3221769734; ++pub const USBDEVFS_GETDRIVER: u32 = 2164544776; ++pub const IDT77105_GETSTAT: u32 = 2148557106; ++pub const HIDIOCINITREPORT: u32 = 536889349; ++pub const VFIO_DEVICE_GET_INFO: u32 = 536886123; ++pub const RIO_CM_CHAN_RECEIVE: u32 = 3222299402; ++pub const RNDGETENTCNT: u32 = 1074024960; ++pub const PPPIOCNEWUNIT: u32 = 3221517374; ++pub const BTRFS_IOC_INO_LOOKUP: u32 = 3489698834; ++pub const FDRESET: u32 = 536871508; ++pub const IOC_PR_REGISTER: u32 = 2149085384; ++pub const HIDIOCSREPORT: u32 = 2148288520; ++pub const TEE_IOC_OPEN_SESSION: u32 = 1074832386; ++pub const TEE_IOC_SUPPL_RECV: u32 = 1074832390; ++pub const BTRFS_IOC_BALANCE_CTL: u32 = 2147783713; ++pub const GPIO_GET_LINEINFO_WATCH_IOCTL: u32 = 3225990155; ++pub const HIDIOCGRAWINFO: u32 = 1074284547; ++pub const PPPIOCSCOMPRESS: u32 = 2148561997; ++pub const USBDEVFS_CONNECTINFO: u32 = 2148029713; ++pub const BLKRESETZONE: u32 = 2148536963; ++pub const CHIOINITELEM: u32 = 536896273; ++pub const NILFS_IOCTL_SET_ALLOC_RANGE: u32 = 2148560524; ++pub const AUTOFS_DEV_IOCTL_CATATONIC: u32 = 3222836089; ++pub const RIO_MPORT_MAINT_HDID_SET: u32 = 2147642625; ++pub const PPGETPHASE: u32 = 1074032793; ++pub const USBDEVFS_DISCONNECT_CLAIM: u32 = 1091065115; ++pub const FDMSGON: u32 = 536871493; ++pub const VIDIOC_G_SLICED_VBI_CAP: u32 = 3228849733; ++pub const BTRFS_IOC_BALANCE_V2: u32 = 3288372256; ++pub const MEDIA_REQUEST_IOC_REINIT: u32 = 536902785; ++pub const IOC_OPAL_ERASE_LR: u32 = 2165338342; ++pub const FDFMTBEG: u32 = 536871495; ++pub const RNDRESEEDCRNG: u32 = 536891911; ++pub const ISST_IF_GET_PHY_ID: u32 = 3221814785; ++pub const TUNSETNOCSUM: u32 = 2147767496; ++pub const SONET_GETSTAT: u32 = 1076125968; ++pub const TFD_IOC_SET_TICKS: u32 = 2148029440; ++pub const PPDATADIR: u32 = 2147774608; ++pub const IOC_OPAL_ENABLE_DISABLE_MBR: u32 = 2165338341; ++pub const GPIO_V2_GET_LINE_IOCTL: u32 = 3260068871; ++pub const RIO_CM_CHAN_SEND: u32 = 2148557577; ++pub const PPWCTLONIRQ: u32 = 2147578002; ++pub const SONYPI_IOCGBRT: u32 = 1073837568; ++pub const IOC_PR_RELEASE: u32 = 2148561098; ++pub const PPCLRIRQ: u32 = 1074032787; ++pub const IPMICTL_SET_MY_CHANNEL_LUN_CMD: u32 = 1074030874; ++pub const MGSL_IOCSXSYNC: u32 = 536898835; ++pub const HPET_IE_OFF: u32 = 536897538; ++pub const IOC_OPAL_ACTIVATE_USR: u32 = 2165338337; ++pub const SONET_SETFRAMING: u32 = 2147770645; ++pub const PERF_EVENT_IOC_PAUSE_OUTPUT: u32 = 2147755017; ++pub const BTRFS_IOC_LOGICAL_INO_V2: u32 = 3224933435; ++pub const VBG_IOCTL_HGCM_CONNECT: u32 = 3231471108; ++pub const BLKFINISHZONE: u32 = 2148536968; ++pub const EVIOCREVOKE: u32 = 2147763601; ++pub const VFIO_DEVICE_FEATURE: u32 = 536886133; ++pub const CCISS_GETPCIINFO: u32 = 1074283009; ++pub const ISST_IF_MBOX_COMMAND: u32 = 3221814787; ++pub const SCIF_ACCEPTREQ: u32 = 3222303492; ++pub const PERF_EVENT_IOC_QUERY_BPF: u32 = 3221758986; ++pub const VIDIOC_STREAMOFF: u32 = 2147767827; ++pub const VDUSE_DESTROY_DEV: u32 = 2164293891; ++pub const FDGETFDCSTAT: u32 = 1076363797; ++pub const VIDIOC_S_PRIORITY: u32 = 2147767876; ++pub const SNAPSHOT_FREEZE: u32 = 536883969; ++pub const VIDIOC_ENUMINPUT: u32 = 3226490394; ++pub const ZATM_GETPOOLZ: u32 = 2148557154; ++pub const RIO_DISABLE_DOORBELL_RANGE: u32 = 2148035850; ++pub const GPIO_V2_GET_LINEINFO_WATCH_IOCTL: u32 = 3238048774; ++pub const VIDIOC_G_STD: u32 = 1074288151; ++pub const USBDEVFS_ALLOW_SUSPEND: u32 = 536892706; ++pub const SONET_GETSTATZ: u32 = 1076125969; ++pub const SCIF_ACCEPTREG: u32 = 3221779205; ++pub const VIDIOC_ENCODER_CMD: u32 = 3223869005; ++pub const PPPIOCSRASYNCMAP: u32 = 2147775572; ++pub const IOCTL_MEI_NOTIFY_SET: u32 = 2147764226; ++pub const BTRFS_IOC_QUOTA_RESCAN_STATUS: u32 = 1077974061; ++pub const F2FS_IOC_GARBAGE_COLLECT: u32 = 2147808518; ++pub const ATMLEC_CTRL: u32 = 536895952; ++pub const MATROXFB_GET_AVAILABLE_OUTPUTS: u32 = 1074294521; ++pub const DM_DEV_CREATE: u32 = 3241737475; ++pub const VHOST_VDPA_GET_VRING_NUM: u32 = 1073917814; ++pub const VIDIOC_G_CTRL: u32 = 3221771803; ++pub const NBD_CLEAR_SOCK: u32 = 536914692; ++pub const VFIO_DEVICE_QUERY_GFX_PLANE: u32 = 536886130; ++pub const WDIOC_KEEPALIVE: u32 = 1074026245; ++pub const NVME_IOCTL_SUBSYS_RESET: u32 = 536890949; ++pub const PTP_EXTTS_REQUEST2: u32 = 2148547851; ++pub const PCITEST_BAR: u32 = 536891393; ++pub const MGSL_IOCGGPIO: u32 = 1074818321; ++pub const EVIOCSREP: u32 = 2148025603; ++pub const VFIO_DEVICE_GET_IRQ_INFO: u32 = 536886125; ++pub const HPET_DPI: u32 = 536897541; ++pub const VDUSE_VQ_SETUP_KICKFD: u32 = 2148040982; ++pub const ND_IOCTL_CALL: u32 = 3225439754; ++pub const HIDIOCGDEVINFO: u32 = 1075595267; ++pub const DM_TABLE_DEPS: u32 = 3241737483; ++pub const BTRFS_IOC_DEV_INFO: u32 = 3489698846; ++pub const VDUSE_IOTLB_GET_FD: u32 = 3223355664; ++pub const FW_CDEV_IOC_GET_INFO: u32 = 3223855872; ++pub const VIDIOC_G_PRIORITY: u32 = 1074026051; ++pub const ATM_NEWBACKENDIF: u32 = 2147639795; ++pub const VIDIOC_S_EXT_CTRLS: u32 = 3223344712; ++pub const VIDIOC_SUBDEV_ENUM_DV_TIMINGS: u32 = 3230946914; ++pub const VIDIOC_OMAP3ISP_CCDC_CFG: u32 = 3224917697; ++pub const VIDIOC_S_HW_FREQ_SEEK: u32 = 2150651474; ++pub const DM_TABLE_LOAD: u32 = 3241737481; ++pub const F2FS_IOC_START_ATOMIC_WRITE: u32 = 536933633; ++pub const VIDIOC_G_OUTPUT: u32 = 1074026030; ++pub const ATM_DROPPARTY: u32 = 2147770869; ++pub const CHIOGELEM: u32 = 2154586896; ++pub const BTRFS_IOC_GET_SUPPORTED_FEATURES: u32 = 1078498361; ++pub const EVIOCSKEYCODE: u32 = 2148025604; ++pub const NE_GET_IMAGE_LOAD_INFO: u32 = 3222318626; ++pub const TUNSETLINK: u32 = 2147767501; ++pub const FW_CDEV_IOC_ADD_DESCRIPTOR: u32 = 3222807302; ++pub const BTRFS_IOC_SCRUB_CANCEL: u32 = 536908828; ++pub const PPS_SETPARAMS: u32 = 2148036770; ++pub const IOC_OPAL_LR_SETUP: u32 = 2166911203; ++pub const FW_CDEV_IOC_DEALLOCATE: u32 = 2147754755; ++pub const WDIOC_SETTIMEOUT: u32 = 3221509894; ++pub const IOC_WATCH_QUEUE_SET_FILTER: u32 = 536893281; ++pub const CAPI_GET_MANUFACTURER: u32 = 3221504774; ++pub const VFIO_IOMMU_SPAPR_UNREGISTER_MEMORY: u32 = 536886134; ++pub const ASPEED_P2A_CTRL_IOCTL_SET_WINDOW: u32 = 2148578048; ++pub const VIDIOC_G_EDID: u32 = 3223868968; ++pub const F2FS_IOC_GARBAGE_COLLECT_RANGE: u32 = 2149119243; ++pub const RIO_MAP_INBOUND: u32 = 3223874833; ++pub const IOC_OPAL_TAKE_OWNERSHIP: u32 = 2164814046; ++pub const USBDEVFS_CLAIM_PORT: u32 = 1074025752; ++pub const VIDIOC_S_AUDIO: u32 = 2150913570; ++pub const FS_IOC_GET_ENCRYPTION_NONCE: u32 = 1074816539; ++pub const FW_CDEV_IOC_SEND_STREAM_PACKET: u32 = 2150114067; ++pub const BTRFS_IOC_SNAP_DESTROY: u32 = 2415957007; ++pub const SNAPSHOT_FREE: u32 = 536883973; ++pub const I8K_GET_SPEED: u32 = 3221776773; ++pub const HIDIOCGREPORT: u32 = 2148288519; ++pub const HPET_EPI: u32 = 536897540; ++pub const JSIOCSCORR: u32 = 2149870113; ++pub const IOC_PR_PREEMPT_ABORT: u32 = 2149085388; ++pub const RIO_MAP_OUTBOUND: u32 = 3223874831; ++pub const ATM_SETESI: u32 = 2148557196; ++pub const FW_CDEV_IOC_START_ISO: u32 = 2148541194; ++pub const ATM_DELADDR: u32 = 2148557193; ++pub const PPFCONTROL: u32 = 2147643534; ++pub const SONYPI_IOCGFAN: u32 = 1073837578; ++pub const RTC_IRQP_SET: u32 = 2148036620; ++pub const PCITEST_WRITE: u32 = 2148028420; ++pub const PPCLAIM: u32 = 536899723; ++pub const VIDIOC_S_JPEGCOMP: u32 = 2156680766; ++pub const IPMICTL_UNREGISTER_FOR_CMD: u32 = 1073899791; ++pub const VHOST_SET_FEATURES: u32 = 2148052736; ++pub const TOSHIBA_ACPI_SCI: u32 = 3222828177; ++pub const VIDIOC_DQBUF: u32 = 3227014673; ++pub const BTRFS_IOC_BALANCE_PROGRESS: u32 = 1140888610; ++pub const BTRFS_IOC_SUBVOL_SETFLAGS: u32 = 2148045850; ++pub const ATMLEC_MCAST: u32 = 536895954; ++pub const MMTIMER_GETFREQ: u32 = 1074294018; ++pub const VIDIOC_G_SELECTION: u32 = 3225441886; ++pub const RTC_ALM_SET: u32 = 2149871623; ++pub const PPPOEIOCSFWD: u32 = 2148053248; ++pub const IPMICTL_GET_MAINTENANCE_MODE_CMD: u32 = 1074030878; ++pub const FS_IOC_ENABLE_VERITY: u32 = 2155898501; ++pub const NILFS_IOCTL_GET_BDESCS: u32 = 3222826631; ++pub const FDFMTEND: u32 = 536871497; ++pub const DMA_BUF_SET_NAME: u32 = 2148033025; ++pub const UI_BEGIN_FF_UPLOAD: u32 = 3228063176; ++pub const RTC_UIE_ON: u32 = 536899587; ++pub const PPRELEASE: u32 = 536899724; ++pub const VFIO_IOMMU_UNMAP_DMA: u32 = 536886130; ++pub const VIDIOC_OMAP3ISP_PRV_CFG: u32 = 3228587714; ++pub const GPIO_GET_LINEHANDLE_IOCTL: u32 = 3245126659; ++pub const VFAT_IOCTL_READDIR_BOTH: u32 = 1110471169; ++pub const NVME_IOCTL_ADMIN_CMD: u32 = 3225964097; ++pub const VHOST_SET_VRING_KICK: u32 = 2148052768; ++pub const BTRFS_IOC_SUBVOL_CREATE_V2: u32 = 2415957016; ++pub const BTRFS_IOC_SNAP_CREATE: u32 = 2415956993; ++pub const SONYPI_IOCGBAT2CAP: u32 = 1073903108; ++pub const PPNEGOT: u32 = 2147774609; ++pub const NBD_PRINT_DEBUG: u32 = 536914694; ++pub const BTRFS_IOC_INO_LOOKUP_USER: u32 = 3489698878; ++pub const BTRFS_IOC_GET_SUBVOL_ROOTREF: u32 = 3489698877; ++pub const FS_IOC_REMOVE_ENCRYPTION_KEY_ALL_USERS: u32 = 3225445913; ++pub const BTRFS_IOC_FS_INFO: u32 = 1140888607; ++pub const VIDIOC_ENUM_FMT: u32 = 3225441794; ++pub const VIDIOC_G_INPUT: u32 = 1074026022; ++pub const VTPM_PROXY_IOC_NEW_DEV: u32 = 3222577408; ++pub const DFL_FPGA_FME_ERR_GET_IRQ_NUM: u32 = 1074050691; ++pub const ND_IOCTL_DIMM_FLAGS: u32 = 3221769731; ++pub const BTRFS_IOC_QUOTA_RESCAN: u32 = 2151715884; ++pub const MMTIMER_GETCOUNTER: u32 = 1074294025; ++pub const MATROXFB_GET_OUTPUT_MODE: u32 = 3221778170; ++pub const BTRFS_IOC_QUOTA_RESCAN_WAIT: u32 = 536908846; ++pub const RIO_CM_CHAN_BIND: u32 = 2148033285; ++pub const HIDIOCGRDESC: u32 = 1342457858; ++pub const MGSL_IOCGIF: u32 = 536898827; ++pub const VIDIOC_S_OUTPUT: u32 = 3221509679; ++pub const HIDIOCGREPORTINFO: u32 = 3222030345; ++pub const WDIOC_GETBOOTSTATUS: u32 = 1074026242; ++pub const VDUSE_VQ_GET_INFO: u32 = 3224404245; ++pub const ACRN_IOCTL_ASSIGN_PCIDEV: u32 = 2149884501; ++pub const BLKGETDISKSEQ: u32 = 1074270848; ++pub const ACRN_IOCTL_PM_GET_CPU_STATE: u32 = 3221791328; ++pub const ACRN_IOCTL_DESTROY_VM: u32 = 536912401; ++pub const ACRN_IOCTL_SET_PTDEV_INTR: u32 = 2148835923; ++pub const ACRN_IOCTL_CREATE_IOREQ_CLIENT: u32 = 536912434; ++pub const ACRN_IOCTL_IRQFD: u32 = 2149098097; ++pub const ACRN_IOCTL_CREATE_VM: u32 = 3224412688; ++pub const ACRN_IOCTL_INJECT_MSI: u32 = 2148573731; ++pub const ACRN_IOCTL_ATTACH_IOREQ_CLIENT: u32 = 536912435; ++pub const ACRN_IOCTL_RESET_PTDEV_INTR: u32 = 2148835924; ++pub const ACRN_IOCTL_NOTIFY_REQUEST_FINISH: u32 = 2148049457; ++pub const ACRN_IOCTL_SET_IRQLINE: u32 = 2148049445; ++pub const ACRN_IOCTL_START_VM: u32 = 536912402; ++pub const ACRN_IOCTL_SET_VCPU_REGS: u32 = 2166923798; ++pub const ACRN_IOCTL_SET_MEMSEG: u32 = 2149622337; ++pub const ACRN_IOCTL_PAUSE_VM: u32 = 536912403; ++pub const ACRN_IOCTL_CLEAR_VM_IOREQ: u32 = 536912437; ++pub const ACRN_IOCTL_UNSET_MEMSEG: u32 = 2149622338; ++pub const ACRN_IOCTL_IOEVENTFD: u32 = 2149622384; ++pub const ACRN_IOCTL_DEASSIGN_PCIDEV: u32 = 2149884502; ++pub const ACRN_IOCTL_RESET_VM: u32 = 536912405; ++pub const ACRN_IOCTL_DESTROY_IOREQ_CLIENT: u32 = 536912436; ++pub const ACRN_IOCTL_VM_INTR_MONITOR: u32 = 2148049444; +diff --git a/vendor/linux-raw-sys-0.4.15/src/sw64/landlock.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/landlock.rs +new file mode 100644 +index 00000000000..305ef2c3152 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/landlock.rs +@@ -0,0 +1,93 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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, ++} ++#[repr(C, packed)] ++#[derive(Debug, Copy, Clone)] ++pub struct landlock_path_beneath_attr { ++pub allowed_access: __u64, ++pub parent_fd: __s32, ++} ++pub const _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++pub const LANDLOCK_CREATE_RULESET_VERSION: u32 = 1; ++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; ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum landlock_rule_type { ++LANDLOCK_RULE_PATH_BENEATH = 1, ++} +diff --git a/vendor/linux-raw-sys-0.4.15/src/sw64/loop_device.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/loop_device.rs +new file mode 100644 +index 00000000000..2307ddbde4b +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/loop_device.rs +@@ -0,0 +1,141 @@ ++/* automatically generated by rust-bindgen 0.70.1 */ ++ ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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(u32)] ++#[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/vendor/linux-raw-sys-0.4.15/src/sw64/mempolicy.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/mempolicy.rs +new file mode 100644 +index 00000000000..81b30495276 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/mempolicy.rs +@@ -0,0 +1,175 @@ ++/* automatically generated by rust-bindgen 0.70.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 ENOMSG: u32 = 35; ++pub const EIDRM: u32 = 36; ++pub const ECHRNG: u32 = 37; ++pub const EL2NSYNC: u32 = 38; ++pub const EL3HLT: u32 = 39; ++pub const EL3RST: u32 = 40; ++pub const ELNRNG: u32 = 41; ++pub const EUNATCH: u32 = 42; ++pub const ENOCSI: u32 = 43; ++pub const EL2HLT: u32 = 44; ++pub const EDEADLK: u32 = 45; ++pub const ENOLCK: u32 = 46; ++pub const EBADE: u32 = 50; ++pub const EBADR: u32 = 51; ++pub const EXFULL: u32 = 52; ++pub const ENOANO: u32 = 53; ++pub const EBADRQC: u32 = 54; ++pub const EBADSLT: u32 = 55; ++pub const EDEADLOCK: u32 = 56; ++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 EDOTDOT: u32 = 73; ++pub const EMULTIHOP: u32 = 74; ++pub const EBADMSG: u32 = 77; ++pub const ENAMETOOLONG: u32 = 78; ++pub const EOVERFLOW: u32 = 79; ++pub const ENOTUNIQ: u32 = 80; ++pub const EBADFD: u32 = 81; ++pub const EREMCHG: u32 = 82; ++pub const ELIBACC: u32 = 83; ++pub const ELIBBAD: u32 = 84; ++pub const ELIBSCN: u32 = 85; ++pub const ELIBMAX: u32 = 86; ++pub const ELIBEXEC: u32 = 87; ++pub const EILSEQ: u32 = 88; ++pub const ENOSYS: u32 = 89; ++pub const ELOOP: u32 = 90; ++pub const ERESTART: u32 = 91; ++pub const ESTRPIPE: u32 = 92; ++pub const ENOTEMPTY: u32 = 93; ++pub const EUSERS: u32 = 94; ++pub const ENOTSOCK: u32 = 95; ++pub const EDESTADDRREQ: u32 = 96; ++pub const EMSGSIZE: u32 = 97; ++pub const EPROTOTYPE: u32 = 98; ++pub const ENOPROTOOPT: u32 = 99; ++pub const EPROTONOSUPPORT: u32 = 120; ++pub const ESOCKTNOSUPPORT: u32 = 121; ++pub const EOPNOTSUPP: u32 = 122; ++pub const EPFNOSUPPORT: u32 = 123; ++pub const EAFNOSUPPORT: u32 = 124; ++pub const EADDRINUSE: u32 = 125; ++pub const EADDRNOTAVAIL: u32 = 126; ++pub const ENETDOWN: u32 = 127; ++pub const ENETUNREACH: u32 = 128; ++pub const ENETRESET: u32 = 129; ++pub const ECONNABORTED: u32 = 130; ++pub const ECONNRESET: u32 = 131; ++pub const ENOBUFS: u32 = 132; ++pub const EISCONN: u32 = 133; ++pub const ENOTCONN: u32 = 134; ++pub const EUCLEAN: u32 = 135; ++pub const ENOTNAM: u32 = 137; ++pub const ENAVAIL: u32 = 138; ++pub const EISNAM: u32 = 139; ++pub const EREMOTEIO: u32 = 140; ++pub const EINIT: u32 = 141; ++pub const EREMDEV: u32 = 142; ++pub const ESHUTDOWN: u32 = 143; ++pub const ETOOMANYREFS: u32 = 144; ++pub const ETIMEDOUT: u32 = 145; ++pub const ECONNREFUSED: u32 = 146; ++pub const EHOSTDOWN: u32 = 147; ++pub const EHOSTUNREACH: u32 = 148; ++pub const EWOULDBLOCK: u32 = 11; ++pub const EALREADY: u32 = 149; ++pub const EINPROGRESS: u32 = 150; ++pub const ESTALE: u32 = 151; ++pub const ECANCELED: u32 = 158; ++pub const ENOMEDIUM: u32 = 159; ++pub const EMEDIUMTYPE: u32 = 160; ++pub const ENOKEY: u32 = 161; ++pub const EKEYEXPIRED: u32 = 162; ++pub const EKEYREVOKED: u32 = 163; ++pub const EKEYREJECTED: u32 = 164; ++pub const EOWNERDEAD: u32 = 165; ++pub const ENOTRECOVERABLE: u32 = 166; ++pub const ERFKILL: u32 = 167; ++pub const EHWPOISON: u32 = 168; ++pub const EDQUOT: u32 = 1133; ++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_MAX: _bindgen_ty_1 = _bindgen_ty_1::MPOL_MAX; ++#[repr(u32)] ++#[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_MAX = 6, ++} +diff --git a/vendor/linux-raw-sys-0.4.15/src/sw64/net.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/net.rs +new file mode 100644 +index 00000000000..6de41d00c83 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/net.rs +@@ -0,0 +1,2514 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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: [u64; 34usize], ++} ++#[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(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, ++} ++#[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)] ++#[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 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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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 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 __BIG_ENDIAN: u32 = 4321; ++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 _IOC_SIZEBITS: u32 = 13; ++pub const _IOC_DIRBITS: u32 = 3; ++pub const _IOC_NONE: u32 = 1; ++pub const _IOC_READ: u32 = 2; ++pub const _IOC_WRITE: u32 = 4; ++pub const _IOC_NRBITS: u32 = 8; ++pub const _IOC_TYPEBITS: u32 = 8; ++pub const _IOC_NRMASK: u32 = 255; ++pub const _IOC_TYPEMASK: u32 = 255; ++pub const _IOC_SIZEMASK: u32 = 8191; ++pub const _IOC_DIRMASK: u32 = 7; ++pub const _IOC_NRSHIFT: u32 = 0; ++pub const _IOC_TYPESHIFT: u32 = 8; ++pub const _IOC_SIZESHIFT: u32 = 16; ++pub const _IOC_DIRSHIFT: u32 = 29; ++pub const IOC_IN: u32 = 2147483648; ++pub const IOC_OUT: u32 = 1073741824; ++pub const IOC_INOUT: u32 = 3221225472; ++pub const IOCSIZE_MASK: u32 = 536805376; ++pub const IOCSIZE_SHIFT: u32 = 16; ++pub const SIOCGSTAMP_OLD: u32 = 35078; ++pub const SIOCGSTAMPNS_OLD: u32 = 35079; ++pub const SOL_SOCKET: u32 = 65535; ++pub const SO_DEBUG: u32 = 1; ++pub const SO_REUSEADDR: u32 = 4; ++pub const SO_KEEPALIVE: u32 = 8; ++pub const SO_DONTROUTE: u32 = 16; ++pub const SO_BROADCAST: u32 = 32; ++pub const SO_LINGER: u32 = 128; ++pub const SO_OOBINLINE: u32 = 256; ++pub const SO_REUSEPORT: u32 = 512; ++pub const SO_TYPE: u32 = 4104; ++pub const SO_STYLE: u32 = 4104; ++pub const SO_ERROR: u32 = 4103; ++pub const SO_SNDBUF: u32 = 4097; ++pub const SO_RCVBUF: u32 = 4098; ++pub const SO_SNDLOWAT: u32 = 4099; ++pub const SO_RCVLOWAT: u32 = 4100; ++pub const SO_SNDTIMEO_OLD: u32 = 4101; ++pub const SO_RCVTIMEO_OLD: u32 = 4102; ++pub const SO_ACCEPTCONN: u32 = 4105; ++pub const SO_PROTOCOL: u32 = 4136; ++pub const SO_DOMAIN: u32 = 4137; ++pub const SO_NO_CHECK: u32 = 11; ++pub const SO_PRIORITY: u32 = 12; ++pub const SO_BSDCOMPAT: u32 = 14; ++pub const SO_PASSCRED: u32 = 17; ++pub const SO_PEERCRED: u32 = 18; ++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_PEERSEC: u32 = 30; ++pub const SO_SNDBUFFORCE: u32 = 31; ++pub const SO_RCVBUFFORCE: u32 = 33; ++pub const SO_PASSSEC: u32 = 34; ++pub const SO_MARK: u32 = 36; ++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_TIMESTAMP: u32 = 29; ++pub const SO_TIMESTAMPNS: u32 = 35; ++pub const SO_TIMESTAMPING: u32 = 37; ++pub const SO_RCVTIMEO: u32 = 4102; ++pub const SO_SNDTIMEO: u32 = 4101; ++pub const SCM_TIMESTAMP: u32 = 29; ++pub const SCM_TIMESTAMPNS: u32 = 35; ++pub const SCM_TIMESTAMPING: u32 = 37; ++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_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 TCP_MD5SIG_MAXKEYLEN: u32 = 80; ++pub const TCP_MD5SIG_FLAG_PREFIX: u32 = 1; ++pub const TCP_MD5SIG_FLAG_IFINDEX: 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 = 2; ++pub const SOCK_DGRAM: u32 = 1; ++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_RAW: _bindgen_ty_1 = _bindgen_ty_1::IPPROTO_RAW; ++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_MAX: _bindgen_ty_3 = _bindgen_ty_3::DEVCONF_MAX; ++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; ++#[repr(u32)] ++#[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_RAW = 255, ++IPPROTO_MPTCP = 262, ++IPPROTO_MAX = 263, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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_MAX = 58, ++} ++#[repr(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_4 { ++TCP_FLAG_CWR = 8388608, ++TCP_FLAG_ECE = 4194304, ++TCP_FLAG_URG = 2097152, ++TCP_FLAG_ACK = 1048576, ++TCP_FLAG_PSH = 524288, ++TCP_FLAG_RST = 262144, ++TCP_FLAG_SYN = 131072, ++TCP_FLAG_FIN = 65536, ++TCP_RESERVED_BITS = 251658240, ++TCP_DATA_OFFSET = 4026531840, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(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] ++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]; ++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 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]; ++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 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 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); ++} ++} ++} ++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 version(&self) -> __u8 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) } ++} ++#[inline] ++pub fn set_version(&mut self, val: __u8) { ++unsafe { ++let val: u8 = ::core::mem::transmute(val); ++self._bitfield_1.set(0usize, 4u8, val as u64) ++} ++} ++#[inline] ++pub fn ihl(&self) -> __u8 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) } ++} ++#[inline] ++pub fn set_ihl(&mut self, val: __u8) { ++unsafe { ++let val: u8 = ::core::mem::transmute(val); ++self._bitfield_1.set(4usize, 4u8, val as u64) ++} ++} ++#[inline] ++pub fn new_bitfield_1(version: __u8, ihl: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { ++let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); ++__bindgen_bitfield_unit.set(0usize, 4u8, { ++let version: u8 = unsafe { ::core::mem::transmute(version) }; ++version as u64 ++}); ++__bindgen_bitfield_unit.set(4usize, 4u8, { ++let ihl: u8 = unsafe { ::core::mem::transmute(ihl) }; ++ihl as u64 ++}); ++__bindgen_bitfield_unit ++} ++} ++impl ipv6hdr { ++#[inline] ++pub fn version(&self) -> __u8 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u8) } ++} ++#[inline] ++pub fn set_version(&mut self, val: __u8) { ++unsafe { ++let val: u8 = ::core::mem::transmute(val); ++self._bitfield_1.set(0usize, 4u8, val as u64) ++} ++} ++#[inline] ++pub fn priority(&self) -> __u8 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u8) } ++} ++#[inline] ++pub fn set_priority(&mut self, val: __u8) { ++unsafe { ++let val: u8 = ::core::mem::transmute(val); ++self._bitfield_1.set(4usize, 4u8, val as u64) ++} ++} ++#[inline] ++pub fn new_bitfield_1(version: __u8, priority: __u8) -> __BindgenBitfieldUnit<[u8; 1usize]> { ++let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 1usize]> = Default::default(); ++__bindgen_bitfield_unit.set(0usize, 4u8, { ++let version: u8 = unsafe { ::core::mem::transmute(version) }; ++version as u64 ++}); ++__bindgen_bitfield_unit.set(4usize, 4u8, { ++let priority: u8 = unsafe { ::core::mem::transmute(priority) }; ++priority as u64 ++}); ++__bindgen_bitfield_unit ++} ++} ++impl tcphdr { ++#[inline] ++pub fn doff(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(0usize, 4u8) as u16) } ++} ++#[inline] ++pub fn set_doff(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(0usize, 4u8, val as u64) ++} ++} ++#[inline] ++pub fn res1(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(4usize, 4u8) as u16) } ++} ++#[inline] ++pub fn set_res1(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(4usize, 4u8, val as u64) ++} ++} ++#[inline] ++pub fn cwr(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(8usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_cwr(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(8usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn ece(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(9usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_ece(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(9usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn urg(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(10usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_urg(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(10usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn ack(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(11usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_ack(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(11usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn psh(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(12usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_psh(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(12usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn rst(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(13usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_rst(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(13usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn syn(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(14usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_syn(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(14usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn fin(&self) -> __u16 { ++unsafe { ::core::mem::transmute(self._bitfield_1.get(15usize, 1u8) as u16) } ++} ++#[inline] ++pub fn set_fin(&mut self, val: __u16) { ++unsafe { ++let val: u16 = ::core::mem::transmute(val); ++self._bitfield_1.set(15usize, 1u8, val as u64) ++} ++} ++#[inline] ++pub fn new_bitfield_1(doff: __u16, res1: __u16, cwr: __u16, ece: __u16, urg: __u16, ack: __u16, psh: __u16, rst: __u16, syn: __u16, fin: __u16) -> __BindgenBitfieldUnit<[u8; 2usize]> { ++let mut __bindgen_bitfield_unit: __BindgenBitfieldUnit<[u8; 2usize]> = Default::default(); ++__bindgen_bitfield_unit.set(0usize, 4u8, { ++let doff: u16 = unsafe { ::core::mem::transmute(doff) }; ++doff as u64 ++}); ++__bindgen_bitfield_unit.set(4usize, 4u8, { ++let res1: u16 = unsafe { ::core::mem::transmute(res1) }; ++res1 as u64 ++}); ++__bindgen_bitfield_unit.set(8usize, 1u8, { ++let cwr: u16 = unsafe { ::core::mem::transmute(cwr) }; ++cwr as u64 ++}); ++__bindgen_bitfield_unit.set(9usize, 1u8, { ++let ece: u16 = unsafe { ::core::mem::transmute(ece) }; ++ece as u64 ++}); ++__bindgen_bitfield_unit.set(10usize, 1u8, { ++let urg: u16 = unsafe { ::core::mem::transmute(urg) }; ++urg as u64 ++}); ++__bindgen_bitfield_unit.set(11usize, 1u8, { ++let ack: u16 = unsafe { ::core::mem::transmute(ack) }; ++ack as u64 ++}); ++__bindgen_bitfield_unit.set(12usize, 1u8, { ++let psh: u16 = unsafe { ::core::mem::transmute(psh) }; ++psh as u64 ++}); ++__bindgen_bitfield_unit.set(13usize, 1u8, { ++let rst: u16 = unsafe { ::core::mem::transmute(rst) }; ++rst as u64 ++}); ++__bindgen_bitfield_unit.set(14usize, 1u8, { ++let syn: u16 = unsafe { ::core::mem::transmute(syn) }; ++syn as u64 ++}); ++__bindgen_bitfield_unit.set(15usize, 1u8, { ++let fin: u16 = unsafe { ::core::mem::transmute(fin) }; ++fin 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 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 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 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 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 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; ++} +diff --git a/vendor/linux-raw-sys-0.4.15/src/sw64/netlink.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/netlink.rs +new file mode 100644 +index 00000000000..d711209be49 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/netlink.rs +@@ -0,0 +1,2864 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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)] ++#[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_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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: 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 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 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_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_MASK: u32 = 15; ++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_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_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_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_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 VNIFILTER_ENTRY_STATS_UNSPEC: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_UNSPEC; ++pub const VNIFILTER_ENTRY_STATS_RX_BYTES: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_RX_BYTES; ++pub const VNIFILTER_ENTRY_STATS_RX_PKTS: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_RX_PKTS; ++pub const VNIFILTER_ENTRY_STATS_RX_DROPS: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_RX_DROPS; ++pub const VNIFILTER_ENTRY_STATS_RX_ERRORS: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_RX_ERRORS; ++pub const VNIFILTER_ENTRY_STATS_TX_BYTES: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_TX_BYTES; ++pub const VNIFILTER_ENTRY_STATS_TX_PKTS: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_TX_PKTS; ++pub const VNIFILTER_ENTRY_STATS_TX_DROPS: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_TX_DROPS; ++pub const VNIFILTER_ENTRY_STATS_TX_ERRORS: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_TX_ERRORS; ++pub const VNIFILTER_ENTRY_STATS_PAD: _bindgen_ty_18 = _bindgen_ty_18::VNIFILTER_ENTRY_STATS_PAD; ++pub const __VNIFILTER_ENTRY_STATS_MAX: _bindgen_ty_18 = _bindgen_ty_18::__VNIFILTER_ENTRY_STATS_MAX; ++pub const VXLAN_VNIFILTER_ENTRY_UNSPEC: _bindgen_ty_19 = _bindgen_ty_19::VXLAN_VNIFILTER_ENTRY_UNSPEC; ++pub const VXLAN_VNIFILTER_ENTRY_START: _bindgen_ty_19 = _bindgen_ty_19::VXLAN_VNIFILTER_ENTRY_START; ++pub const VXLAN_VNIFILTER_ENTRY_END: _bindgen_ty_19 = _bindgen_ty_19::VXLAN_VNIFILTER_ENTRY_END; ++pub const VXLAN_VNIFILTER_ENTRY_GROUP: _bindgen_ty_19 = _bindgen_ty_19::VXLAN_VNIFILTER_ENTRY_GROUP; ++pub const VXLAN_VNIFILTER_ENTRY_GROUP6: _bindgen_ty_19 = _bindgen_ty_19::VXLAN_VNIFILTER_ENTRY_GROUP6; ++pub const VXLAN_VNIFILTER_ENTRY_STATS: _bindgen_ty_19 = _bindgen_ty_19::VXLAN_VNIFILTER_ENTRY_STATS; ++pub const __VXLAN_VNIFILTER_ENTRY_MAX: _bindgen_ty_19 = _bindgen_ty_19::__VXLAN_VNIFILTER_ENTRY_MAX; ++pub const VXLAN_VNIFILTER_UNSPEC: _bindgen_ty_20 = _bindgen_ty_20::VXLAN_VNIFILTER_UNSPEC; ++pub const VXLAN_VNIFILTER_ENTRY: _bindgen_ty_20 = _bindgen_ty_20::VXLAN_VNIFILTER_ENTRY; ++pub const __VXLAN_VNIFILTER_MAX: _bindgen_ty_20 = _bindgen_ty_20::__VXLAN_VNIFILTER_MAX; ++pub const IFLA_VXLAN_UNSPEC: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_UNSPEC; ++pub const IFLA_VXLAN_ID: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_ID; ++pub const IFLA_VXLAN_GROUP: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_GROUP; ++pub const IFLA_VXLAN_LINK: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_LINK; ++pub const IFLA_VXLAN_LOCAL: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_LOCAL; ++pub const IFLA_VXLAN_TTL: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_TTL; ++pub const IFLA_VXLAN_TOS: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_TOS; ++pub const IFLA_VXLAN_LEARNING: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_LEARNING; ++pub const IFLA_VXLAN_AGEING: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_AGEING; ++pub const IFLA_VXLAN_LIMIT: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_LIMIT; ++pub const IFLA_VXLAN_PORT_RANGE: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_PORT_RANGE; ++pub const IFLA_VXLAN_PROXY: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_PROXY; ++pub const IFLA_VXLAN_RSC: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_RSC; ++pub const IFLA_VXLAN_L2MISS: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_L2MISS; ++pub const IFLA_VXLAN_L3MISS: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_L3MISS; ++pub const IFLA_VXLAN_PORT: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_PORT; ++pub const IFLA_VXLAN_GROUP6: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_GROUP6; ++pub const IFLA_VXLAN_LOCAL6: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_LOCAL6; ++pub const IFLA_VXLAN_UDP_CSUM: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_UDP_CSUM; ++pub const IFLA_VXLAN_UDP_ZERO_CSUM6_TX: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_UDP_ZERO_CSUM6_TX; ++pub const IFLA_VXLAN_UDP_ZERO_CSUM6_RX: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_UDP_ZERO_CSUM6_RX; ++pub const IFLA_VXLAN_REMCSUM_TX: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_REMCSUM_TX; ++pub const IFLA_VXLAN_REMCSUM_RX: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_REMCSUM_RX; ++pub const IFLA_VXLAN_GBP: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_GBP; ++pub const IFLA_VXLAN_REMCSUM_NOPARTIAL: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_REMCSUM_NOPARTIAL; ++pub const IFLA_VXLAN_COLLECT_METADATA: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_COLLECT_METADATA; ++pub const IFLA_VXLAN_LABEL: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_LABEL; ++pub const IFLA_VXLAN_GPE: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_GPE; ++pub const IFLA_VXLAN_TTL_INHERIT: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_TTL_INHERIT; ++pub const IFLA_VXLAN_DF: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_DF; ++pub const IFLA_VXLAN_VNIFILTER: _bindgen_ty_21 = _bindgen_ty_21::IFLA_VXLAN_VNIFILTER; ++pub const __IFLA_VXLAN_MAX: _bindgen_ty_21 = _bindgen_ty_21::__IFLA_VXLAN_MAX; ++pub const IFLA_GENEVE_UNSPEC: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_UNSPEC; ++pub const IFLA_GENEVE_ID: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_ID; ++pub const IFLA_GENEVE_REMOTE: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_REMOTE; ++pub const IFLA_GENEVE_TTL: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_TTL; ++pub const IFLA_GENEVE_TOS: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_TOS; ++pub const IFLA_GENEVE_PORT: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_PORT; ++pub const IFLA_GENEVE_COLLECT_METADATA: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_COLLECT_METADATA; ++pub const IFLA_GENEVE_REMOTE6: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_REMOTE6; ++pub const IFLA_GENEVE_UDP_CSUM: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_UDP_CSUM; ++pub const IFLA_GENEVE_UDP_ZERO_CSUM6_TX: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_UDP_ZERO_CSUM6_TX; ++pub const IFLA_GENEVE_UDP_ZERO_CSUM6_RX: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_UDP_ZERO_CSUM6_RX; ++pub const IFLA_GENEVE_LABEL: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_LABEL; ++pub const IFLA_GENEVE_TTL_INHERIT: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_TTL_INHERIT; ++pub const IFLA_GENEVE_DF: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_DF; ++pub const IFLA_GENEVE_INNER_PROTO_INHERIT: _bindgen_ty_22 = _bindgen_ty_22::IFLA_GENEVE_INNER_PROTO_INHERIT; ++pub const __IFLA_GENEVE_MAX: _bindgen_ty_22 = _bindgen_ty_22::__IFLA_GENEVE_MAX; ++pub const IFLA_BAREUDP_UNSPEC: _bindgen_ty_23 = _bindgen_ty_23::IFLA_BAREUDP_UNSPEC; ++pub const IFLA_BAREUDP_PORT: _bindgen_ty_23 = _bindgen_ty_23::IFLA_BAREUDP_PORT; ++pub const IFLA_BAREUDP_ETHERTYPE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_BAREUDP_ETHERTYPE; ++pub const IFLA_BAREUDP_SRCPORT_MIN: _bindgen_ty_23 = _bindgen_ty_23::IFLA_BAREUDP_SRCPORT_MIN; ++pub const IFLA_BAREUDP_MULTIPROTO_MODE: _bindgen_ty_23 = _bindgen_ty_23::IFLA_BAREUDP_MULTIPROTO_MODE; ++pub const __IFLA_BAREUDP_MAX: _bindgen_ty_23 = _bindgen_ty_23::__IFLA_BAREUDP_MAX; ++pub const IFLA_PPP_UNSPEC: _bindgen_ty_24 = _bindgen_ty_24::IFLA_PPP_UNSPEC; ++pub const IFLA_PPP_DEV_FD: _bindgen_ty_24 = _bindgen_ty_24::IFLA_PPP_DEV_FD; ++pub const __IFLA_PPP_MAX: _bindgen_ty_24 = _bindgen_ty_24::__IFLA_PPP_MAX; ++pub const IFLA_GTP_UNSPEC: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_UNSPEC; ++pub const IFLA_GTP_FD0: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_FD0; ++pub const IFLA_GTP_FD1: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_FD1; ++pub const IFLA_GTP_PDP_HASHSIZE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_PDP_HASHSIZE; ++pub const IFLA_GTP_ROLE: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_ROLE; ++pub const IFLA_GTP_CREATE_SOCKETS: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_CREATE_SOCKETS; ++pub const IFLA_GTP_RESTART_COUNT: _bindgen_ty_25 = _bindgen_ty_25::IFLA_GTP_RESTART_COUNT; ++pub const __IFLA_GTP_MAX: _bindgen_ty_25 = _bindgen_ty_25::__IFLA_GTP_MAX; ++pub const IFLA_BOND_UNSPEC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_UNSPEC; ++pub const IFLA_BOND_MODE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_MODE; ++pub const IFLA_BOND_ACTIVE_SLAVE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_ACTIVE_SLAVE; ++pub const IFLA_BOND_MIIMON: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_MIIMON; ++pub const IFLA_BOND_UPDELAY: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_UPDELAY; ++pub const IFLA_BOND_DOWNDELAY: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_DOWNDELAY; ++pub const IFLA_BOND_USE_CARRIER: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_USE_CARRIER; ++pub const IFLA_BOND_ARP_INTERVAL: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_ARP_INTERVAL; ++pub const IFLA_BOND_ARP_IP_TARGET: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_ARP_IP_TARGET; ++pub const IFLA_BOND_ARP_VALIDATE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_ARP_VALIDATE; ++pub const IFLA_BOND_ARP_ALL_TARGETS: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_ARP_ALL_TARGETS; ++pub const IFLA_BOND_PRIMARY: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_PRIMARY; ++pub const IFLA_BOND_PRIMARY_RESELECT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_PRIMARY_RESELECT; ++pub const IFLA_BOND_FAIL_OVER_MAC: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_FAIL_OVER_MAC; ++pub const IFLA_BOND_XMIT_HASH_POLICY: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_XMIT_HASH_POLICY; ++pub const IFLA_BOND_RESEND_IGMP: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_RESEND_IGMP; ++pub const IFLA_BOND_NUM_PEER_NOTIF: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_NUM_PEER_NOTIF; ++pub const IFLA_BOND_ALL_SLAVES_ACTIVE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_ALL_SLAVES_ACTIVE; ++pub const IFLA_BOND_MIN_LINKS: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_MIN_LINKS; ++pub const IFLA_BOND_LP_INTERVAL: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_LP_INTERVAL; ++pub const IFLA_BOND_PACKETS_PER_SLAVE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_PACKETS_PER_SLAVE; ++pub const IFLA_BOND_AD_LACP_RATE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_LACP_RATE; ++pub const IFLA_BOND_AD_SELECT: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_SELECT; ++pub const IFLA_BOND_AD_INFO: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_INFO; ++pub const IFLA_BOND_AD_ACTOR_SYS_PRIO: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_ACTOR_SYS_PRIO; ++pub const IFLA_BOND_AD_USER_PORT_KEY: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_USER_PORT_KEY; ++pub const IFLA_BOND_AD_ACTOR_SYSTEM: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_ACTOR_SYSTEM; ++pub const IFLA_BOND_TLB_DYNAMIC_LB: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_TLB_DYNAMIC_LB; ++pub const IFLA_BOND_PEER_NOTIF_DELAY: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_PEER_NOTIF_DELAY; ++pub const IFLA_BOND_AD_LACP_ACTIVE: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_AD_LACP_ACTIVE; ++pub const IFLA_BOND_MISSED_MAX: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_MISSED_MAX; ++pub const IFLA_BOND_NS_IP6_TARGET: _bindgen_ty_26 = _bindgen_ty_26::IFLA_BOND_NS_IP6_TARGET; ++pub const __IFLA_BOND_MAX: _bindgen_ty_26 = _bindgen_ty_26::__IFLA_BOND_MAX; ++pub const IFLA_BOND_AD_INFO_UNSPEC: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO_UNSPEC; ++pub const IFLA_BOND_AD_INFO_AGGREGATOR: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO_AGGREGATOR; ++pub const IFLA_BOND_AD_INFO_NUM_PORTS: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO_NUM_PORTS; ++pub const IFLA_BOND_AD_INFO_ACTOR_KEY: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO_ACTOR_KEY; ++pub const IFLA_BOND_AD_INFO_PARTNER_KEY: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO_PARTNER_KEY; ++pub const IFLA_BOND_AD_INFO_PARTNER_MAC: _bindgen_ty_27 = _bindgen_ty_27::IFLA_BOND_AD_INFO_PARTNER_MAC; ++pub const __IFLA_BOND_AD_INFO_MAX: _bindgen_ty_27 = _bindgen_ty_27::__IFLA_BOND_AD_INFO_MAX; ++pub const IFLA_BOND_SLAVE_UNSPEC: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_UNSPEC; ++pub const IFLA_BOND_SLAVE_STATE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_STATE; ++pub const IFLA_BOND_SLAVE_MII_STATUS: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_MII_STATUS; ++pub const IFLA_BOND_SLAVE_LINK_FAILURE_COUNT: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_LINK_FAILURE_COUNT; ++pub const IFLA_BOND_SLAVE_PERM_HWADDR: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_PERM_HWADDR; ++pub const IFLA_BOND_SLAVE_QUEUE_ID: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_QUEUE_ID; ++pub const IFLA_BOND_SLAVE_AD_AGGREGATOR_ID: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_AD_AGGREGATOR_ID; ++pub const IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_AD_ACTOR_OPER_PORT_STATE; ++pub const IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_AD_PARTNER_OPER_PORT_STATE; ++pub const IFLA_BOND_SLAVE_PRIO: _bindgen_ty_28 = _bindgen_ty_28::IFLA_BOND_SLAVE_PRIO; ++pub const __IFLA_BOND_SLAVE_MAX: _bindgen_ty_28 = _bindgen_ty_28::__IFLA_BOND_SLAVE_MAX; ++pub const IFLA_VF_INFO_UNSPEC: _bindgen_ty_29 = _bindgen_ty_29::IFLA_VF_INFO_UNSPEC; ++pub const IFLA_VF_INFO: _bindgen_ty_29 = _bindgen_ty_29::IFLA_VF_INFO; ++pub const __IFLA_VF_INFO_MAX: _bindgen_ty_29 = _bindgen_ty_29::__IFLA_VF_INFO_MAX; ++pub const IFLA_VF_UNSPEC: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_UNSPEC; ++pub const IFLA_VF_MAC: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_MAC; ++pub const IFLA_VF_VLAN: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_VLAN; ++pub const IFLA_VF_TX_RATE: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_TX_RATE; ++pub const IFLA_VF_SPOOFCHK: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_SPOOFCHK; ++pub const IFLA_VF_LINK_STATE: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_LINK_STATE; ++pub const IFLA_VF_RATE: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_RATE; ++pub const IFLA_VF_RSS_QUERY_EN: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_RSS_QUERY_EN; ++pub const IFLA_VF_STATS: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_STATS; ++pub const IFLA_VF_TRUST: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_TRUST; ++pub const IFLA_VF_IB_NODE_GUID: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_IB_NODE_GUID; ++pub const IFLA_VF_IB_PORT_GUID: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_IB_PORT_GUID; ++pub const IFLA_VF_VLAN_LIST: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_VLAN_LIST; ++pub const IFLA_VF_BROADCAST: _bindgen_ty_30 = _bindgen_ty_30::IFLA_VF_BROADCAST; ++pub const __IFLA_VF_MAX: _bindgen_ty_30 = _bindgen_ty_30::__IFLA_VF_MAX; ++pub const IFLA_VF_VLAN_INFO_UNSPEC: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_VLAN_INFO_UNSPEC; ++pub const IFLA_VF_VLAN_INFO: _bindgen_ty_31 = _bindgen_ty_31::IFLA_VF_VLAN_INFO; ++pub const __IFLA_VF_VLAN_INFO_MAX: _bindgen_ty_31 = _bindgen_ty_31::__IFLA_VF_VLAN_INFO_MAX; ++pub const IFLA_VF_LINK_STATE_AUTO: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_LINK_STATE_AUTO; ++pub const IFLA_VF_LINK_STATE_ENABLE: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_LINK_STATE_ENABLE; ++pub const IFLA_VF_LINK_STATE_DISABLE: _bindgen_ty_32 = _bindgen_ty_32::IFLA_VF_LINK_STATE_DISABLE; ++pub const __IFLA_VF_LINK_STATE_MAX: _bindgen_ty_32 = _bindgen_ty_32::__IFLA_VF_LINK_STATE_MAX; ++pub const IFLA_VF_STATS_RX_PACKETS: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_RX_PACKETS; ++pub const IFLA_VF_STATS_TX_PACKETS: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_TX_PACKETS; ++pub const IFLA_VF_STATS_RX_BYTES: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_RX_BYTES; ++pub const IFLA_VF_STATS_TX_BYTES: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_TX_BYTES; ++pub const IFLA_VF_STATS_BROADCAST: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_BROADCAST; ++pub const IFLA_VF_STATS_MULTICAST: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_MULTICAST; ++pub const IFLA_VF_STATS_PAD: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_PAD; ++pub const IFLA_VF_STATS_RX_DROPPED: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_RX_DROPPED; ++pub const IFLA_VF_STATS_TX_DROPPED: _bindgen_ty_33 = _bindgen_ty_33::IFLA_VF_STATS_TX_DROPPED; ++pub const __IFLA_VF_STATS_MAX: _bindgen_ty_33 = _bindgen_ty_33::__IFLA_VF_STATS_MAX; ++pub const IFLA_VF_PORT_UNSPEC: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_PORT_UNSPEC; ++pub const IFLA_VF_PORT: _bindgen_ty_34 = _bindgen_ty_34::IFLA_VF_PORT; ++pub const __IFLA_VF_PORT_MAX: _bindgen_ty_34 = _bindgen_ty_34::__IFLA_VF_PORT_MAX; ++pub const IFLA_PORT_UNSPEC: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_UNSPEC; ++pub const IFLA_PORT_VF: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_VF; ++pub const IFLA_PORT_PROFILE: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_PROFILE; ++pub const IFLA_PORT_VSI_TYPE: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_VSI_TYPE; ++pub const IFLA_PORT_INSTANCE_UUID: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_INSTANCE_UUID; ++pub const IFLA_PORT_HOST_UUID: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_HOST_UUID; ++pub const IFLA_PORT_REQUEST: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_REQUEST; ++pub const IFLA_PORT_RESPONSE: _bindgen_ty_35 = _bindgen_ty_35::IFLA_PORT_RESPONSE; ++pub const __IFLA_PORT_MAX: _bindgen_ty_35 = _bindgen_ty_35::__IFLA_PORT_MAX; ++pub const PORT_REQUEST_PREASSOCIATE: _bindgen_ty_36 = _bindgen_ty_36::PORT_REQUEST_PREASSOCIATE; ++pub const PORT_REQUEST_PREASSOCIATE_RR: _bindgen_ty_36 = _bindgen_ty_36::PORT_REQUEST_PREASSOCIATE_RR; ++pub const PORT_REQUEST_ASSOCIATE: _bindgen_ty_36 = _bindgen_ty_36::PORT_REQUEST_ASSOCIATE; ++pub const PORT_REQUEST_DISASSOCIATE: _bindgen_ty_36 = _bindgen_ty_36::PORT_REQUEST_DISASSOCIATE; ++pub const PORT_VDP_RESPONSE_SUCCESS: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_SUCCESS; ++pub const PORT_VDP_RESPONSE_INVALID_FORMAT: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_INVALID_FORMAT; ++pub const PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_INSUFFICIENT_RESOURCES; ++pub const PORT_VDP_RESPONSE_UNUSED_VTID: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_UNUSED_VTID; ++pub const PORT_VDP_RESPONSE_VTID_VIOLATION: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_VTID_VIOLATION; ++pub const PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_VTID_VERSION_VIOALTION; ++pub const PORT_VDP_RESPONSE_OUT_OF_SYNC: _bindgen_ty_37 = _bindgen_ty_37::PORT_VDP_RESPONSE_OUT_OF_SYNC; ++pub const PORT_PROFILE_RESPONSE_SUCCESS: _bindgen_ty_37 = _bindgen_ty_37::PORT_PROFILE_RESPONSE_SUCCESS; ++pub const PORT_PROFILE_RESPONSE_INPROGRESS: _bindgen_ty_37 = _bindgen_ty_37::PORT_PROFILE_RESPONSE_INPROGRESS; ++pub const PORT_PROFILE_RESPONSE_INVALID: _bindgen_ty_37 = _bindgen_ty_37::PORT_PROFILE_RESPONSE_INVALID; ++pub const PORT_PROFILE_RESPONSE_BADSTATE: _bindgen_ty_37 = _bindgen_ty_37::PORT_PROFILE_RESPONSE_BADSTATE; ++pub const PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES: _bindgen_ty_37 = _bindgen_ty_37::PORT_PROFILE_RESPONSE_INSUFFICIENT_RESOURCES; ++pub const PORT_PROFILE_RESPONSE_ERROR: _bindgen_ty_37 = _bindgen_ty_37::PORT_PROFILE_RESPONSE_ERROR; ++pub const IFLA_IPOIB_UNSPEC: _bindgen_ty_38 = _bindgen_ty_38::IFLA_IPOIB_UNSPEC; ++pub const IFLA_IPOIB_PKEY: _bindgen_ty_38 = _bindgen_ty_38::IFLA_IPOIB_PKEY; ++pub const IFLA_IPOIB_MODE: _bindgen_ty_38 = _bindgen_ty_38::IFLA_IPOIB_MODE; ++pub const IFLA_IPOIB_UMCAST: _bindgen_ty_38 = _bindgen_ty_38::IFLA_IPOIB_UMCAST; ++pub const __IFLA_IPOIB_MAX: _bindgen_ty_38 = _bindgen_ty_38::__IFLA_IPOIB_MAX; ++pub const IPOIB_MODE_DATAGRAM: _bindgen_ty_39 = _bindgen_ty_39::IPOIB_MODE_DATAGRAM; ++pub const IPOIB_MODE_CONNECTED: _bindgen_ty_39 = _bindgen_ty_39::IPOIB_MODE_CONNECTED; ++pub const HSR_PROTOCOL_HSR: _bindgen_ty_40 = _bindgen_ty_40::HSR_PROTOCOL_HSR; ++pub const HSR_PROTOCOL_PRP: _bindgen_ty_40 = _bindgen_ty_40::HSR_PROTOCOL_PRP; ++pub const HSR_PROTOCOL_MAX: _bindgen_ty_40 = _bindgen_ty_40::HSR_PROTOCOL_MAX; ++pub const IFLA_HSR_UNSPEC: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_UNSPEC; ++pub const IFLA_HSR_SLAVE1: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_SLAVE1; ++pub const IFLA_HSR_SLAVE2: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_SLAVE2; ++pub const IFLA_HSR_MULTICAST_SPEC: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_MULTICAST_SPEC; ++pub const IFLA_HSR_SUPERVISION_ADDR: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_SUPERVISION_ADDR; ++pub const IFLA_HSR_SEQ_NR: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_SEQ_NR; ++pub const IFLA_HSR_VERSION: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_VERSION; ++pub const IFLA_HSR_PROTOCOL: _bindgen_ty_41 = _bindgen_ty_41::IFLA_HSR_PROTOCOL; ++pub const __IFLA_HSR_MAX: _bindgen_ty_41 = _bindgen_ty_41::__IFLA_HSR_MAX; ++pub const IFLA_STATS_UNSPEC: _bindgen_ty_42 = _bindgen_ty_42::IFLA_STATS_UNSPEC; ++pub const IFLA_STATS_LINK_64: _bindgen_ty_42 = _bindgen_ty_42::IFLA_STATS_LINK_64; ++pub const IFLA_STATS_LINK_XSTATS: _bindgen_ty_42 = _bindgen_ty_42::IFLA_STATS_LINK_XSTATS; ++pub const IFLA_STATS_LINK_XSTATS_SLAVE: _bindgen_ty_42 = _bindgen_ty_42::IFLA_STATS_LINK_XSTATS_SLAVE; ++pub const IFLA_STATS_LINK_OFFLOAD_XSTATS: _bindgen_ty_42 = _bindgen_ty_42::IFLA_STATS_LINK_OFFLOAD_XSTATS; ++pub const IFLA_STATS_AF_SPEC: _bindgen_ty_42 = _bindgen_ty_42::IFLA_STATS_AF_SPEC; ++pub const __IFLA_STATS_MAX: _bindgen_ty_42 = _bindgen_ty_42::__IFLA_STATS_MAX; ++pub const IFLA_STATS_GETSET_UNSPEC: _bindgen_ty_43 = _bindgen_ty_43::IFLA_STATS_GETSET_UNSPEC; ++pub const IFLA_STATS_GET_FILTERS: _bindgen_ty_43 = _bindgen_ty_43::IFLA_STATS_GET_FILTERS; ++pub const IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_43 = _bindgen_ty_43::IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS; ++pub const __IFLA_STATS_GETSET_MAX: _bindgen_ty_43 = _bindgen_ty_43::__IFLA_STATS_GETSET_MAX; ++pub const LINK_XSTATS_TYPE_UNSPEC: _bindgen_ty_44 = _bindgen_ty_44::LINK_XSTATS_TYPE_UNSPEC; ++pub const LINK_XSTATS_TYPE_BRIDGE: _bindgen_ty_44 = _bindgen_ty_44::LINK_XSTATS_TYPE_BRIDGE; ++pub const LINK_XSTATS_TYPE_BOND: _bindgen_ty_44 = _bindgen_ty_44::LINK_XSTATS_TYPE_BOND; ++pub const __LINK_XSTATS_TYPE_MAX: _bindgen_ty_44 = _bindgen_ty_44::__LINK_XSTATS_TYPE_MAX; ++pub const IFLA_OFFLOAD_XSTATS_UNSPEC: _bindgen_ty_45 = _bindgen_ty_45::IFLA_OFFLOAD_XSTATS_UNSPEC; ++pub const IFLA_OFFLOAD_XSTATS_CPU_HIT: _bindgen_ty_45 = _bindgen_ty_45::IFLA_OFFLOAD_XSTATS_CPU_HIT; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO: _bindgen_ty_45 = _bindgen_ty_45::IFLA_OFFLOAD_XSTATS_HW_S_INFO; ++pub const IFLA_OFFLOAD_XSTATS_L3_STATS: _bindgen_ty_45 = _bindgen_ty_45::IFLA_OFFLOAD_XSTATS_L3_STATS; ++pub const __IFLA_OFFLOAD_XSTATS_MAX: _bindgen_ty_45 = _bindgen_ty_45::__IFLA_OFFLOAD_XSTATS_MAX; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC: _bindgen_ty_46 = _bindgen_ty_46::IFLA_OFFLOAD_XSTATS_HW_S_INFO_UNSPEC; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST: _bindgen_ty_46 = _bindgen_ty_46::IFLA_OFFLOAD_XSTATS_HW_S_INFO_REQUEST; ++pub const IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED: _bindgen_ty_46 = _bindgen_ty_46::IFLA_OFFLOAD_XSTATS_HW_S_INFO_USED; ++pub const __IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX: _bindgen_ty_46 = _bindgen_ty_46::__IFLA_OFFLOAD_XSTATS_HW_S_INFO_MAX; ++pub const XDP_ATTACHED_NONE: _bindgen_ty_47 = _bindgen_ty_47::XDP_ATTACHED_NONE; ++pub const XDP_ATTACHED_DRV: _bindgen_ty_47 = _bindgen_ty_47::XDP_ATTACHED_DRV; ++pub const XDP_ATTACHED_SKB: _bindgen_ty_47 = _bindgen_ty_47::XDP_ATTACHED_SKB; ++pub const XDP_ATTACHED_HW: _bindgen_ty_47 = _bindgen_ty_47::XDP_ATTACHED_HW; ++pub const XDP_ATTACHED_MULTI: _bindgen_ty_47 = _bindgen_ty_47::XDP_ATTACHED_MULTI; ++pub const IFLA_XDP_UNSPEC: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_UNSPEC; ++pub const IFLA_XDP_FD: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_FD; ++pub const IFLA_XDP_ATTACHED: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_ATTACHED; ++pub const IFLA_XDP_FLAGS: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_FLAGS; ++pub const IFLA_XDP_PROG_ID: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_PROG_ID; ++pub const IFLA_XDP_DRV_PROG_ID: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_DRV_PROG_ID; ++pub const IFLA_XDP_SKB_PROG_ID: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_SKB_PROG_ID; ++pub const IFLA_XDP_HW_PROG_ID: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_HW_PROG_ID; ++pub const IFLA_XDP_EXPECTED_FD: _bindgen_ty_48 = _bindgen_ty_48::IFLA_XDP_EXPECTED_FD; ++pub const __IFLA_XDP_MAX: _bindgen_ty_48 = _bindgen_ty_48::__IFLA_XDP_MAX; ++pub const IFLA_EVENT_NONE: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_NONE; ++pub const IFLA_EVENT_REBOOT: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_REBOOT; ++pub const IFLA_EVENT_FEATURES: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_FEATURES; ++pub const IFLA_EVENT_BONDING_FAILOVER: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_BONDING_FAILOVER; ++pub const IFLA_EVENT_NOTIFY_PEERS: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_NOTIFY_PEERS; ++pub const IFLA_EVENT_IGMP_RESEND: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_IGMP_RESEND; ++pub const IFLA_EVENT_BONDING_OPTIONS: _bindgen_ty_49 = _bindgen_ty_49::IFLA_EVENT_BONDING_OPTIONS; ++pub const IFLA_TUN_UNSPEC: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_UNSPEC; ++pub const IFLA_TUN_OWNER: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_OWNER; ++pub const IFLA_TUN_GROUP: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_GROUP; ++pub const IFLA_TUN_TYPE: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_TYPE; ++pub const IFLA_TUN_PI: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_PI; ++pub const IFLA_TUN_VNET_HDR: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_VNET_HDR; ++pub const IFLA_TUN_PERSIST: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_PERSIST; ++pub const IFLA_TUN_MULTI_QUEUE: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_MULTI_QUEUE; ++pub const IFLA_TUN_NUM_QUEUES: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_NUM_QUEUES; ++pub const IFLA_TUN_NUM_DISABLED_QUEUES: _bindgen_ty_50 = _bindgen_ty_50::IFLA_TUN_NUM_DISABLED_QUEUES; ++pub const __IFLA_TUN_MAX: _bindgen_ty_50 = _bindgen_ty_50::__IFLA_TUN_MAX; ++pub const IFLA_RMNET_UNSPEC: _bindgen_ty_51 = _bindgen_ty_51::IFLA_RMNET_UNSPEC; ++pub const IFLA_RMNET_MUX_ID: _bindgen_ty_51 = _bindgen_ty_51::IFLA_RMNET_MUX_ID; ++pub const IFLA_RMNET_FLAGS: _bindgen_ty_51 = _bindgen_ty_51::IFLA_RMNET_FLAGS; ++pub const __IFLA_RMNET_MAX: _bindgen_ty_51 = _bindgen_ty_51::__IFLA_RMNET_MAX; ++pub const IFLA_MCTP_UNSPEC: _bindgen_ty_52 = _bindgen_ty_52::IFLA_MCTP_UNSPEC; ++pub const IFLA_MCTP_NET: _bindgen_ty_52 = _bindgen_ty_52::IFLA_MCTP_NET; ++pub const __IFLA_MCTP_MAX: _bindgen_ty_52 = _bindgen_ty_52::__IFLA_MCTP_MAX; ++pub const IFLA_DSA_UNSPEC: _bindgen_ty_53 = _bindgen_ty_53::IFLA_DSA_UNSPEC; ++pub const IFLA_DSA_MASTER: _bindgen_ty_53 = _bindgen_ty_53::IFLA_DSA_MASTER; ++pub const __IFLA_DSA_MAX: _bindgen_ty_53 = _bindgen_ty_53::__IFLA_DSA_MAX; ++pub const IFA_UNSPEC: _bindgen_ty_54 = _bindgen_ty_54::IFA_UNSPEC; ++pub const IFA_ADDRESS: _bindgen_ty_54 = _bindgen_ty_54::IFA_ADDRESS; ++pub const IFA_LOCAL: _bindgen_ty_54 = _bindgen_ty_54::IFA_LOCAL; ++pub const IFA_LABEL: _bindgen_ty_54 = _bindgen_ty_54::IFA_LABEL; ++pub const IFA_BROADCAST: _bindgen_ty_54 = _bindgen_ty_54::IFA_BROADCAST; ++pub const IFA_ANYCAST: _bindgen_ty_54 = _bindgen_ty_54::IFA_ANYCAST; ++pub const IFA_CACHEINFO: _bindgen_ty_54 = _bindgen_ty_54::IFA_CACHEINFO; ++pub const IFA_MULTICAST: _bindgen_ty_54 = _bindgen_ty_54::IFA_MULTICAST; ++pub const IFA_FLAGS: _bindgen_ty_54 = _bindgen_ty_54::IFA_FLAGS; ++pub const IFA_RT_PRIORITY: _bindgen_ty_54 = _bindgen_ty_54::IFA_RT_PRIORITY; ++pub const IFA_TARGET_NETNSID: _bindgen_ty_54 = _bindgen_ty_54::IFA_TARGET_NETNSID; ++pub const IFA_PROTO: _bindgen_ty_54 = _bindgen_ty_54::IFA_PROTO; ++pub const __IFA_MAX: _bindgen_ty_54 = _bindgen_ty_54::__IFA_MAX; ++pub const NDA_UNSPEC: _bindgen_ty_55 = _bindgen_ty_55::NDA_UNSPEC; ++pub const NDA_DST: _bindgen_ty_55 = _bindgen_ty_55::NDA_DST; ++pub const NDA_LLADDR: _bindgen_ty_55 = _bindgen_ty_55::NDA_LLADDR; ++pub const NDA_CACHEINFO: _bindgen_ty_55 = _bindgen_ty_55::NDA_CACHEINFO; ++pub const NDA_PROBES: _bindgen_ty_55 = _bindgen_ty_55::NDA_PROBES; ++pub const NDA_VLAN: _bindgen_ty_55 = _bindgen_ty_55::NDA_VLAN; ++pub const NDA_PORT: _bindgen_ty_55 = _bindgen_ty_55::NDA_PORT; ++pub const NDA_VNI: _bindgen_ty_55 = _bindgen_ty_55::NDA_VNI; ++pub const NDA_IFINDEX: _bindgen_ty_55 = _bindgen_ty_55::NDA_IFINDEX; ++pub const NDA_MASTER: _bindgen_ty_55 = _bindgen_ty_55::NDA_MASTER; ++pub const NDA_LINK_NETNSID: _bindgen_ty_55 = _bindgen_ty_55::NDA_LINK_NETNSID; ++pub const NDA_SRC_VNI: _bindgen_ty_55 = _bindgen_ty_55::NDA_SRC_VNI; ++pub const NDA_PROTOCOL: _bindgen_ty_55 = _bindgen_ty_55::NDA_PROTOCOL; ++pub const NDA_NH_ID: _bindgen_ty_55 = _bindgen_ty_55::NDA_NH_ID; ++pub const NDA_FDB_EXT_ATTRS: _bindgen_ty_55 = _bindgen_ty_55::NDA_FDB_EXT_ATTRS; ++pub const NDA_FLAGS_EXT: _bindgen_ty_55 = _bindgen_ty_55::NDA_FLAGS_EXT; ++pub const NDA_NDM_STATE_MASK: _bindgen_ty_55 = _bindgen_ty_55::NDA_NDM_STATE_MASK; ++pub const NDA_NDM_FLAGS_MASK: _bindgen_ty_55 = _bindgen_ty_55::NDA_NDM_FLAGS_MASK; ++pub const __NDA_MAX: _bindgen_ty_55 = _bindgen_ty_55::__NDA_MAX; ++pub const NDTPA_UNSPEC: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_UNSPEC; ++pub const NDTPA_IFINDEX: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_IFINDEX; ++pub const NDTPA_REFCNT: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_REFCNT; ++pub const NDTPA_REACHABLE_TIME: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_REACHABLE_TIME; ++pub const NDTPA_BASE_REACHABLE_TIME: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_BASE_REACHABLE_TIME; ++pub const NDTPA_RETRANS_TIME: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_RETRANS_TIME; ++pub const NDTPA_GC_STALETIME: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_GC_STALETIME; ++pub const NDTPA_DELAY_PROBE_TIME: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_DELAY_PROBE_TIME; ++pub const NDTPA_QUEUE_LEN: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_QUEUE_LEN; ++pub const NDTPA_APP_PROBES: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_APP_PROBES; ++pub const NDTPA_UCAST_PROBES: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_UCAST_PROBES; ++pub const NDTPA_MCAST_PROBES: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_MCAST_PROBES; ++pub const NDTPA_ANYCAST_DELAY: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_ANYCAST_DELAY; ++pub const NDTPA_PROXY_DELAY: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_PROXY_DELAY; ++pub const NDTPA_PROXY_QLEN: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_PROXY_QLEN; ++pub const NDTPA_LOCKTIME: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_LOCKTIME; ++pub const NDTPA_QUEUE_LENBYTES: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_QUEUE_LENBYTES; ++pub const NDTPA_MCAST_REPROBES: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_MCAST_REPROBES; ++pub const NDTPA_PAD: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_PAD; ++pub const NDTPA_INTERVAL_PROBE_TIME_MS: _bindgen_ty_56 = _bindgen_ty_56::NDTPA_INTERVAL_PROBE_TIME_MS; ++pub const __NDTPA_MAX: _bindgen_ty_56 = _bindgen_ty_56::__NDTPA_MAX; ++pub const NDTA_UNSPEC: _bindgen_ty_57 = _bindgen_ty_57::NDTA_UNSPEC; ++pub const NDTA_NAME: _bindgen_ty_57 = _bindgen_ty_57::NDTA_NAME; ++pub const NDTA_THRESH1: _bindgen_ty_57 = _bindgen_ty_57::NDTA_THRESH1; ++pub const NDTA_THRESH2: _bindgen_ty_57 = _bindgen_ty_57::NDTA_THRESH2; ++pub const NDTA_THRESH3: _bindgen_ty_57 = _bindgen_ty_57::NDTA_THRESH3; ++pub const NDTA_CONFIG: _bindgen_ty_57 = _bindgen_ty_57::NDTA_CONFIG; ++pub const NDTA_PARMS: _bindgen_ty_57 = _bindgen_ty_57::NDTA_PARMS; ++pub const NDTA_STATS: _bindgen_ty_57 = _bindgen_ty_57::NDTA_STATS; ++pub const NDTA_GC_INTERVAL: _bindgen_ty_57 = _bindgen_ty_57::NDTA_GC_INTERVAL; ++pub const NDTA_PAD: _bindgen_ty_57 = _bindgen_ty_57::NDTA_PAD; ++pub const __NDTA_MAX: _bindgen_ty_57 = _bindgen_ty_57::__NDTA_MAX; ++pub const FDB_NOTIFY_BIT: _bindgen_ty_58 = _bindgen_ty_58::FDB_NOTIFY_BIT; ++pub const FDB_NOTIFY_INACTIVE_BIT: _bindgen_ty_58 = _bindgen_ty_58::FDB_NOTIFY_INACTIVE_BIT; ++pub const NFEA_UNSPEC: _bindgen_ty_59 = _bindgen_ty_59::NFEA_UNSPEC; ++pub const NFEA_ACTIVITY_NOTIFY: _bindgen_ty_59 = _bindgen_ty_59::NFEA_ACTIVITY_NOTIFY; ++pub const NFEA_DONT_REFRESH: _bindgen_ty_59 = _bindgen_ty_59::NFEA_DONT_REFRESH; ++pub const __NFEA_MAX: _bindgen_ty_59 = _bindgen_ty_59::__NFEA_MAX; ++pub const RTM_BASE: _bindgen_ty_60 = _bindgen_ty_60::RTM_BASE; ++pub const RTM_NEWLINK: _bindgen_ty_60 = _bindgen_ty_60::RTM_BASE; ++pub const RTM_DELLINK: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELLINK; ++pub const RTM_GETLINK: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETLINK; ++pub const RTM_SETLINK: _bindgen_ty_60 = _bindgen_ty_60::RTM_SETLINK; ++pub const RTM_NEWADDR: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWADDR; ++pub const RTM_DELADDR: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELADDR; ++pub const RTM_GETADDR: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETADDR; ++pub const RTM_NEWROUTE: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWROUTE; ++pub const RTM_DELROUTE: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELROUTE; ++pub const RTM_GETROUTE: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETROUTE; ++pub const RTM_NEWNEIGH: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNEIGH; ++pub const RTM_DELNEIGH: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELNEIGH; ++pub const RTM_GETNEIGH: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETNEIGH; ++pub const RTM_NEWRULE: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWRULE; ++pub const RTM_DELRULE: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELRULE; ++pub const RTM_GETRULE: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETRULE; ++pub const RTM_NEWQDISC: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWQDISC; ++pub const RTM_DELQDISC: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELQDISC; ++pub const RTM_GETQDISC: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETQDISC; ++pub const RTM_NEWTCLASS: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWTCLASS; ++pub const RTM_DELTCLASS: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELTCLASS; ++pub const RTM_GETTCLASS: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETTCLASS; ++pub const RTM_NEWTFILTER: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWTFILTER; ++pub const RTM_DELTFILTER: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELTFILTER; ++pub const RTM_GETTFILTER: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETTFILTER; ++pub const RTM_NEWACTION: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWACTION; ++pub const RTM_DELACTION: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELACTION; ++pub const RTM_GETACTION: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETACTION; ++pub const RTM_NEWPREFIX: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWPREFIX; ++pub const RTM_GETMULTICAST: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETMULTICAST; ++pub const RTM_GETANYCAST: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETANYCAST; ++pub const RTM_NEWNEIGHTBL: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNEIGHTBL; ++pub const RTM_GETNEIGHTBL: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETNEIGHTBL; ++pub const RTM_SETNEIGHTBL: _bindgen_ty_60 = _bindgen_ty_60::RTM_SETNEIGHTBL; ++pub const RTM_NEWNDUSEROPT: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNDUSEROPT; ++pub const RTM_NEWADDRLABEL: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWADDRLABEL; ++pub const RTM_DELADDRLABEL: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELADDRLABEL; ++pub const RTM_GETADDRLABEL: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETADDRLABEL; ++pub const RTM_GETDCB: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETDCB; ++pub const RTM_SETDCB: _bindgen_ty_60 = _bindgen_ty_60::RTM_SETDCB; ++pub const RTM_NEWNETCONF: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNETCONF; ++pub const RTM_DELNETCONF: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELNETCONF; ++pub const RTM_GETNETCONF: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETNETCONF; ++pub const RTM_NEWMDB: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWMDB; ++pub const RTM_DELMDB: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELMDB; ++pub const RTM_GETMDB: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETMDB; ++pub const RTM_NEWNSID: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNSID; ++pub const RTM_DELNSID: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELNSID; ++pub const RTM_GETNSID: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETNSID; ++pub const RTM_NEWSTATS: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWSTATS; ++pub const RTM_GETSTATS: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETSTATS; ++pub const RTM_SETSTATS: _bindgen_ty_60 = _bindgen_ty_60::RTM_SETSTATS; ++pub const RTM_NEWCACHEREPORT: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWCACHEREPORT; ++pub const RTM_NEWCHAIN: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWCHAIN; ++pub const RTM_DELCHAIN: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELCHAIN; ++pub const RTM_GETCHAIN: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETCHAIN; ++pub const RTM_NEWNEXTHOP: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNEXTHOP; ++pub const RTM_DELNEXTHOP: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELNEXTHOP; ++pub const RTM_GETNEXTHOP: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETNEXTHOP; ++pub const RTM_NEWLINKPROP: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWLINKPROP; ++pub const RTM_DELLINKPROP: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELLINKPROP; ++pub const RTM_GETLINKPROP: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETLINKPROP; ++pub const RTM_NEWVLAN: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWVLAN; ++pub const RTM_DELVLAN: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELVLAN; ++pub const RTM_GETVLAN: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETVLAN; ++pub const RTM_NEWNEXTHOPBUCKET: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWNEXTHOPBUCKET; ++pub const RTM_DELNEXTHOPBUCKET: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELNEXTHOPBUCKET; ++pub const RTM_GETNEXTHOPBUCKET: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETNEXTHOPBUCKET; ++pub const RTM_NEWTUNNEL: _bindgen_ty_60 = _bindgen_ty_60::RTM_NEWTUNNEL; ++pub const RTM_DELTUNNEL: _bindgen_ty_60 = _bindgen_ty_60::RTM_DELTUNNEL; ++pub const RTM_GETTUNNEL: _bindgen_ty_60 = _bindgen_ty_60::RTM_GETTUNNEL; ++pub const __RTM_MAX: _bindgen_ty_60 = _bindgen_ty_60::__RTM_MAX; ++pub const RTN_UNSPEC: _bindgen_ty_61 = _bindgen_ty_61::RTN_UNSPEC; ++pub const RTN_UNICAST: _bindgen_ty_61 = _bindgen_ty_61::RTN_UNICAST; ++pub const RTN_LOCAL: _bindgen_ty_61 = _bindgen_ty_61::RTN_LOCAL; ++pub const RTN_BROADCAST: _bindgen_ty_61 = _bindgen_ty_61::RTN_BROADCAST; ++pub const RTN_ANYCAST: _bindgen_ty_61 = _bindgen_ty_61::RTN_ANYCAST; ++pub const RTN_MULTICAST: _bindgen_ty_61 = _bindgen_ty_61::RTN_MULTICAST; ++pub const RTN_BLACKHOLE: _bindgen_ty_61 = _bindgen_ty_61::RTN_BLACKHOLE; ++pub const RTN_UNREACHABLE: _bindgen_ty_61 = _bindgen_ty_61::RTN_UNREACHABLE; ++pub const RTN_PROHIBIT: _bindgen_ty_61 = _bindgen_ty_61::RTN_PROHIBIT; ++pub const RTN_THROW: _bindgen_ty_61 = _bindgen_ty_61::RTN_THROW; ++pub const RTN_NAT: _bindgen_ty_61 = _bindgen_ty_61::RTN_NAT; ++pub const RTN_XRESOLVE: _bindgen_ty_61 = _bindgen_ty_61::RTN_XRESOLVE; ++pub const __RTN_MAX: _bindgen_ty_61 = _bindgen_ty_61::__RTN_MAX; ++pub const RTAX_UNSPEC: _bindgen_ty_62 = _bindgen_ty_62::RTAX_UNSPEC; ++pub const RTAX_LOCK: _bindgen_ty_62 = _bindgen_ty_62::RTAX_LOCK; ++pub const RTAX_MTU: _bindgen_ty_62 = _bindgen_ty_62::RTAX_MTU; ++pub const RTAX_WINDOW: _bindgen_ty_62 = _bindgen_ty_62::RTAX_WINDOW; ++pub const RTAX_RTT: _bindgen_ty_62 = _bindgen_ty_62::RTAX_RTT; ++pub const RTAX_RTTVAR: _bindgen_ty_62 = _bindgen_ty_62::RTAX_RTTVAR; ++pub const RTAX_SSTHRESH: _bindgen_ty_62 = _bindgen_ty_62::RTAX_SSTHRESH; ++pub const RTAX_CWND: _bindgen_ty_62 = _bindgen_ty_62::RTAX_CWND; ++pub const RTAX_ADVMSS: _bindgen_ty_62 = _bindgen_ty_62::RTAX_ADVMSS; ++pub const RTAX_REORDERING: _bindgen_ty_62 = _bindgen_ty_62::RTAX_REORDERING; ++pub const RTAX_HOPLIMIT: _bindgen_ty_62 = _bindgen_ty_62::RTAX_HOPLIMIT; ++pub const RTAX_INITCWND: _bindgen_ty_62 = _bindgen_ty_62::RTAX_INITCWND; ++pub const RTAX_FEATURES: _bindgen_ty_62 = _bindgen_ty_62::RTAX_FEATURES; ++pub const RTAX_RTO_MIN: _bindgen_ty_62 = _bindgen_ty_62::RTAX_RTO_MIN; ++pub const RTAX_INITRWND: _bindgen_ty_62 = _bindgen_ty_62::RTAX_INITRWND; ++pub const RTAX_QUICKACK: _bindgen_ty_62 = _bindgen_ty_62::RTAX_QUICKACK; ++pub const RTAX_CC_ALGO: _bindgen_ty_62 = _bindgen_ty_62::RTAX_CC_ALGO; ++pub const RTAX_FASTOPEN_NO_COOKIE: _bindgen_ty_62 = _bindgen_ty_62::RTAX_FASTOPEN_NO_COOKIE; ++pub const __RTAX_MAX: _bindgen_ty_62 = _bindgen_ty_62::__RTAX_MAX; ++pub const PREFIX_UNSPEC: _bindgen_ty_63 = _bindgen_ty_63::PREFIX_UNSPEC; ++pub const PREFIX_ADDRESS: _bindgen_ty_63 = _bindgen_ty_63::PREFIX_ADDRESS; ++pub const PREFIX_CACHEINFO: _bindgen_ty_63 = _bindgen_ty_63::PREFIX_CACHEINFO; ++pub const __PREFIX_MAX: _bindgen_ty_63 = _bindgen_ty_63::__PREFIX_MAX; ++pub const TCA_UNSPEC: _bindgen_ty_64 = _bindgen_ty_64::TCA_UNSPEC; ++pub const TCA_KIND: _bindgen_ty_64 = _bindgen_ty_64::TCA_KIND; ++pub const TCA_OPTIONS: _bindgen_ty_64 = _bindgen_ty_64::TCA_OPTIONS; ++pub const TCA_STATS: _bindgen_ty_64 = _bindgen_ty_64::TCA_STATS; ++pub const TCA_XSTATS: _bindgen_ty_64 = _bindgen_ty_64::TCA_XSTATS; ++pub const TCA_RATE: _bindgen_ty_64 = _bindgen_ty_64::TCA_RATE; ++pub const TCA_FCNT: _bindgen_ty_64 = _bindgen_ty_64::TCA_FCNT; ++pub const TCA_STATS2: _bindgen_ty_64 = _bindgen_ty_64::TCA_STATS2; ++pub const TCA_STAB: _bindgen_ty_64 = _bindgen_ty_64::TCA_STAB; ++pub const TCA_PAD: _bindgen_ty_64 = _bindgen_ty_64::TCA_PAD; ++pub const TCA_DUMP_INVISIBLE: _bindgen_ty_64 = _bindgen_ty_64::TCA_DUMP_INVISIBLE; ++pub const TCA_CHAIN: _bindgen_ty_64 = _bindgen_ty_64::TCA_CHAIN; ++pub const TCA_HW_OFFLOAD: _bindgen_ty_64 = _bindgen_ty_64::TCA_HW_OFFLOAD; ++pub const TCA_INGRESS_BLOCK: _bindgen_ty_64 = _bindgen_ty_64::TCA_INGRESS_BLOCK; ++pub const TCA_EGRESS_BLOCK: _bindgen_ty_64 = _bindgen_ty_64::TCA_EGRESS_BLOCK; ++pub const TCA_DUMP_FLAGS: _bindgen_ty_64 = _bindgen_ty_64::TCA_DUMP_FLAGS; ++pub const TCA_EXT_WARN_MSG: _bindgen_ty_64 = _bindgen_ty_64::TCA_EXT_WARN_MSG; ++pub const __TCA_MAX: _bindgen_ty_64 = _bindgen_ty_64::__TCA_MAX; ++pub const NDUSEROPT_UNSPEC: _bindgen_ty_65 = _bindgen_ty_65::NDUSEROPT_UNSPEC; ++pub const NDUSEROPT_SRCADDR: _bindgen_ty_65 = _bindgen_ty_65::NDUSEROPT_SRCADDR; ++pub const __NDUSEROPT_MAX: _bindgen_ty_65 = _bindgen_ty_65::__NDUSEROPT_MAX; ++pub const TCA_ROOT_UNSPEC: _bindgen_ty_66 = _bindgen_ty_66::TCA_ROOT_UNSPEC; ++pub const TCA_ROOT_TAB: _bindgen_ty_66 = _bindgen_ty_66::TCA_ROOT_TAB; ++pub const TCA_ROOT_FLAGS: _bindgen_ty_66 = _bindgen_ty_66::TCA_ROOT_FLAGS; ++pub const TCA_ROOT_COUNT: _bindgen_ty_66 = _bindgen_ty_66::TCA_ROOT_COUNT; ++pub const TCA_ROOT_TIME_DELTA: _bindgen_ty_66 = _bindgen_ty_66::TCA_ROOT_TIME_DELTA; ++pub const TCA_ROOT_EXT_WARN_MSG: _bindgen_ty_66 = _bindgen_ty_66::TCA_ROOT_EXT_WARN_MSG; ++pub const __TCA_ROOT_MAX: _bindgen_ty_66 = _bindgen_ty_66::__TCA_ROOT_MAX; ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_1 { ++NETLINK_UNCONNECTED = 0, ++NETLINK_CONNECTED = 1, ++} ++#[repr(u32)] ++#[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, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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_MAX = 65, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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_MAX = 48, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_7 { ++BRIDGE_MODE_UNSPEC = 0, ++BRIDGE_MODE_HAIRPIN = 1, ++} ++#[repr(u32)] ++#[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_MAX = 43, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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_MAX = 9, ++} ++#[repr(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_18 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_19 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_20 { ++VXLAN_VNIFILTER_UNSPEC = 0, ++VXLAN_VNIFILTER_ENTRY = 1, ++__VXLAN_VNIFILTER_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_21 { ++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_MAX = 31, ++} ++#[repr(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_22 { ++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_MAX = 15, ++} ++#[repr(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_23 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_24 { ++IFLA_PPP_UNSPEC = 0, ++IFLA_PPP_DEV_FD = 1, ++__IFLA_PPP_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum ifla_gtp_role { ++GTP_ROLE_GGSN = 0, ++GTP_ROLE_SGSN = 1, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_25 { ++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_MAX = 7, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_26 { ++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_MAX = 32, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_27 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_28 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_29 { ++IFLA_VF_INFO_UNSPEC = 0, ++IFLA_VF_INFO = 1, ++__IFLA_VF_INFO_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_30 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_31 { ++IFLA_VF_VLAN_INFO_UNSPEC = 0, ++IFLA_VF_VLAN_INFO = 1, ++__IFLA_VF_VLAN_INFO_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_32 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_33 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_34 { ++IFLA_VF_PORT_UNSPEC = 0, ++IFLA_VF_PORT = 1, ++__IFLA_VF_PORT_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_35 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_36 { ++PORT_REQUEST_PREASSOCIATE = 0, ++PORT_REQUEST_PREASSOCIATE_RR = 1, ++PORT_REQUEST_ASSOCIATE = 2, ++PORT_REQUEST_DISASSOCIATE = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_37 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_38 { ++IFLA_IPOIB_UNSPEC = 0, ++IFLA_IPOIB_PKEY = 1, ++IFLA_IPOIB_MODE = 2, ++IFLA_IPOIB_UMCAST = 3, ++__IFLA_IPOIB_MAX = 4, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_39 { ++IPOIB_MODE_DATAGRAM = 0, ++IPOIB_MODE_CONNECTED = 1, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_40 { ++HSR_PROTOCOL_HSR = 0, ++HSR_PROTOCOL_PRP = 1, ++HSR_PROTOCOL_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_41 { ++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_MAX = 8, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_42 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_43 { ++IFLA_STATS_GETSET_UNSPEC = 0, ++IFLA_STATS_GET_FILTERS = 1, ++IFLA_STATS_SET_OFFLOAD_XSTATS_L3_STATS = 2, ++__IFLA_STATS_GETSET_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_44 { ++LINK_XSTATS_TYPE_UNSPEC = 0, ++LINK_XSTATS_TYPE_BRIDGE = 1, ++LINK_XSTATS_TYPE_BOND = 2, ++__LINK_XSTATS_TYPE_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_45 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_46 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_47 { ++XDP_ATTACHED_NONE = 0, ++XDP_ATTACHED_DRV = 1, ++XDP_ATTACHED_SKB = 2, ++XDP_ATTACHED_HW = 3, ++XDP_ATTACHED_MULTI = 4, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_48 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_49 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_50 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_51 { ++IFLA_RMNET_UNSPEC = 0, ++IFLA_RMNET_MUX_ID = 1, ++IFLA_RMNET_FLAGS = 2, ++__IFLA_RMNET_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_52 { ++IFLA_MCTP_UNSPEC = 0, ++IFLA_MCTP_NET = 1, ++__IFLA_MCTP_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_53 { ++IFLA_DSA_UNSPEC = 0, ++IFLA_DSA_MASTER = 1, ++__IFLA_DSA_MAX = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_54 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_55 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_56 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_57 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_58 { ++FDB_NOTIFY_BIT = 1, ++FDB_NOTIFY_INACTIVE_BIT = 2, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_59 { ++NFEA_UNSPEC = 0, ++NFEA_ACTIVITY_NOTIFY = 1, ++NFEA_DONT_REFRESH = 2, ++__NFEA_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_60 { ++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_GETMULTICAST = 58, ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_61 { ++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(u32)] ++#[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(u32)] ++#[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_MAX = 31, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_62 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_63 { ++PREFIX_UNSPEC = 0, ++PREFIX_ADDRESS = 1, ++PREFIX_CACHEINFO = 2, ++__PREFIX_MAX = 3, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_64 { ++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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_65 { ++NDUSEROPT_UNSPEC = 0, ++NDUSEROPT_SRCADDR = 1, ++__NDUSEROPT_MAX = 2, ++} ++#[repr(u32)] ++#[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_MAX = 37, ++} ++#[repr(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum _bindgen_ty_66 { ++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 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_geneve_df { ++pub const GENEVE_DF_MAX: ifla_geneve_df = ifla_geneve_df::GENEVE_DF_INHERIT; ++} +diff --git a/vendor/linux-raw-sys-0.4.15/src/sw64/prctl.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/prctl.rs +new file mode 100644 +index 00000000000..5739a35e3ce +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/prctl.rs +@@ -0,0 +1,231 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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_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_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_GET_MDWE: u32 = 66; ++pub const PR_SET_VMA: u32 = 1398164801; ++pub const PR_SET_VMA_ANON_NAME: u32 = 0; +diff --git a/vendor/linux-raw-sys-0.4.15/src/sw64/ptrace.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/ptrace.rs +new file mode 100644 +index 00000000000..7da6743648f +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/ptrace.rs +@@ -0,0 +1,851 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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 pad: [__u8; 3usize], ++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, ++} ++#[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 pt_regs { ++pub regs: [__u64; 32usize], ++pub lo: __u64, ++pub hi: __u64, ++pub cp0_epc: __u64, ++pub cp0_badvaddr: __u64, ++pub cp0_status: __u64, ++pub cp0_cause: __u64, ++} ++#[repr(C)] ++#[repr(align(8))] ++#[derive(Debug, Copy, Clone)] ++pub struct mips32_watch_regs { ++pub watchlo: [crate::ctypes::c_uint; 8usize], ++pub watchhi: [crate::ctypes::c_ushort; 8usize], ++pub watch_masks: [crate::ctypes::c_ushort; 8usize], ++pub num_valid: crate::ctypes::c_uint, ++} ++#[repr(C)] ++#[derive(Debug, Copy, Clone)] ++pub struct mips64_watch_regs { ++pub watchlo: [crate::ctypes::c_ulonglong; 8usize], ++pub watchhi: [crate::ctypes::c_ushort; 8usize], ++pub watch_masks: [crate::ctypes::c_ushort; 8usize], ++pub num_valid: crate::ctypes::c_uint, ++} ++#[repr(C)] ++#[derive(Copy, Clone)] ++pub struct pt_watch_regs { ++pub style: pt_watch_style, ++pub __bindgen_anon_1: pt_watch_regs__bindgen_ty_1, ++} ++#[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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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_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_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_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_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 FPR_BASE: u32 = 32; ++pub const PC: u32 = 64; ++pub const CAUSE: u32 = 65; ++pub const BADVADDR: u32 = 66; ++pub const MMHI: u32 = 67; ++pub const MMLO: u32 = 68; ++pub const FPC_CSR: u32 = 69; ++pub const FPC_EIR: u32 = 70; ++pub const DSP_BASE: u32 = 71; ++pub const DSP_CONTROL: u32 = 77; ++pub const ACX: u32 = 78; ++pub const PTRACE_GETREGS: u32 = 12; ++pub const PTRACE_SETREGS: u32 = 13; ++pub const PTRACE_GETFPREGS: u32 = 14; ++pub const PTRACE_SETFPREGS: u32 = 15; ++pub const PTRACE_OLDSETOPTIONS: u32 = 21; ++pub const PTRACE_GET_THREAD_AREA: u32 = 25; ++pub const PTRACE_SET_THREAD_AREA: u32 = 26; ++pub const PTRACE_PEEKTEXT_3264: u32 = 192; ++pub const PTRACE_PEEKDATA_3264: u32 = 193; ++pub const PTRACE_POKETEXT_3264: u32 = 194; ++pub const PTRACE_POKEDATA_3264: u32 = 195; ++pub const PTRACE_GET_THREAD_AREA_3264: u32 = 196; ++pub const PTRACE_GET_WATCH_REGS: u32 = 208; ++pub const PTRACE_SET_WATCH_REGS: u32 = 209; ++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_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(u32)] ++#[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(u32)] ++#[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(u32)] ++#[non_exhaustive] ++#[derive(Debug, Copy, Clone, Hash, PartialEq, Eq)] ++pub enum pt_watch_style { ++pt_watch_style_mips32 = 0, ++pt_watch_style_mips64 = 1, ++} ++#[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_watch_regs__bindgen_ty_1 { ++pub mips32: mips32_watch_regs, ++pub mips64: mips64_watch_regs, ++} ++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/vendor/linux-raw-sys-0.4.15/src/sw64/system.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/system.rs +new file mode 100644 +index 00000000000..600ca697c0b +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/system.rs +@@ -0,0 +1,139 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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(Debug)] ++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: __IncompleteArrayField, ++} ++#[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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++pub const SI_LOAD_SHIFT: u32 = 16; ++pub const __OLD_UTS_LEN: u32 = 8; ++pub const __NEW_UTS_LEN: u32 = 64; ++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/vendor/linux-raw-sys-0.4.15/src/sw64/xdp.rs b/vendor/linux-raw-sys-0.4.15/src/sw64/xdp.rs +new file mode 100644 +index 00000000000..2ccf9b468d5 +--- /dev/null ++++ b/vendor/linux-raw-sys-0.4.15/src/sw64/xdp.rs +@@ -0,0 +1,169 @@ ++/* automatically generated by rust-bindgen 0.70.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_long; ++pub type __u64 = crate::ctypes::c_ulong; ++pub type __kernel_key_t = crate::ctypes::c_int; ++pub type __kernel_mqd_t = crate::ctypes::c_int; ++pub type __kernel_daddr_t = crate::ctypes::c_long; ++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_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 = __kernel_ulong_t; ++pub type __kernel_ssize_t = __kernel_long_t; ++pub type __kernel_ptrdiff_t = __kernel_long_t; ++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, ++} ++#[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(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 _MIPS_ISA_MIPS1: u32 = 1; ++pub const _MIPS_ISA_MIPS2: u32 = 2; ++pub const _MIPS_ISA_MIPS3: u32 = 3; ++pub const _MIPS_ISA_MIPS4: u32 = 4; ++pub const _MIPS_ISA_MIPS5: u32 = 5; ++pub const _MIPS_ISA_MIPS32: u32 = 6; ++pub const _MIPS_ISA_MIPS64: u32 = 7; ++pub const _MIPS_SIM_ABI32: u32 = 1; ++pub const _MIPS_SIM_NABI32: u32 = 2; ++pub const _MIPS_SIM_ABI64: u32 = 3; ++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_UMEM_UNALIGNED_CHUNK_FLAG: u32 = 1; ++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_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_USE_SG: u32 = 16; ++pub const XDP_PKT_CONTD: u32 = 1; +diff --git a/vendor/nix-0.28.0/src/sys/signal.rs b/vendor/nix-0.28.0/src/sys/signal.rs +index c9b593d0db3..c1b68238cf1 100644 +--- a/vendor/nix-0.28.0/src/sys/signal.rs ++++ b/vendor/nix-0.28.0/src/sys/signal.rs +@@ -72,6 +72,7 @@ pub enum Signal { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "sparc64"))))] + SIGSTKFLT, + /// To parent on child stop or exit +@@ -152,6 +153,7 @@ fn from_str(s: &str) -> Result { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "sparc64" + )) + ))] +@@ -234,6 +236,7 @@ pub const fn as_str(self) -> &'static str { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "sparc64" + )) + ))] +@@ -321,6 +324,7 @@ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "sparc64" + )) + ))] +@@ -338,6 +342,7 @@ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "sparc64" + ) + ))] +diff --git a/vendor/nix-0.28.0/src/sys/statfs.rs b/vendor/nix-0.28.0/src/sys/statfs.rs +index b2315f4cebb..ed093feccd6 100644 +--- a/vendor/nix-0.28.0/src/sys/statfs.rs ++++ b/vendor/nix-0.28.0/src/sys/statfs.rs +@@ -59,10 +59,13 @@ + type fs_type_t = libc::c_ulong; + #[cfg(all(target_os = "linux", target_env = "uclibc"))] + type fs_type_t = libc::c_int; ++#[cfg(target_arch = "sw64")] ++type fs_type_t = libc::c_long; + #[cfg(all( + target_os = "linux", + not(any( + target_arch = "s390x", ++ target_arch = "sw64", + target_env = "musl", + target_env = "ohos", + target_env = "uclibc" +@@ -317,6 +320,12 @@ pub fn optimal_transfer_size(&self) -> u32 { + self.0.f_iosize + } + ++ /// Optimal transfer block size ++ #[cfg(target_arch = "sw64")] ++ pub fn optimal_transfer_size(&self) -> libc::c_long { ++ self.0.f_bsize ++ } ++ + /// Optimal transfer block size + #[cfg(all(target_os = "linux", target_arch = "s390x", not(target_env = "musl")))] + pub fn optimal_transfer_size(&self) -> u32 { +@@ -338,6 +347,7 @@ pub fn optimal_transfer_size(&self) -> libc::c_ulong { + target_os = "linux", + not(any( + target_arch = "s390x", ++ target_arch = "sw64", + target_env = "musl", + target_env = "ohos", + target_env = "uclibc" +@@ -399,12 +409,20 @@ pub fn block_size(&self) -> libc::c_int { + self.0.f_bsize + } + ++ /// Size of a block ++ // f_bsize on linux: https://github.com/torvalds/linux/blob/master/fs/nfs/super.c#L471 ++ #[cfg(target_arch = "sw64")] ++ pub fn block_size(&self) -> libc::c_long { ++ self.0.f_bsize ++ } ++ + /// Size of a block + // f_bsize on linux: https://github.com/torvalds/linux/blob/master/fs/nfs/super.c#L471 + #[cfg(all( + target_os = "linux", + not(any( + target_arch = "s390x", ++ target_arch = "sw64", + target_env = "musl", + target_env = "ohos", + target_env = "uclibc" +@@ -471,11 +489,18 @@ pub fn maximum_name_length(&self) -> libc::c_int { + self.0.f_namelen + } + ++ /// Maximum length of filenames ++ #[cfg(target_arch = "sw64")] ++ pub fn maximum_name_length(&self) -> libc::c_long { ++ self.0.f_namelen ++ } ++ + /// Maximum length of filenames + #[cfg(all( + target_os = "linux", + not(any( + target_arch = "s390x", ++ target_arch = "sw64", + target_env = "musl", + target_env = "ohos", + target_env = "uclibc" +@@ -499,6 +524,7 @@ pub fn maximum_name_length(&self) -> libc::c_ulong { + target_os = "fuchsia", + target_os = "openbsd", + ))] ++ #[cfg(not(target_arch = "sw64"))] + pub fn blocks(&self) -> u64 { + self.0.f_blocks + } +@@ -509,6 +535,12 @@ pub fn blocks(&self) -> libc::c_long { + self.0.f_blocks + } + ++ /// Total data blocks in filesystem ++ #[cfg(target_arch = "sw64")] ++ pub fn blocks(&self) -> libc::c_long { ++ self.0.f_blocks ++ } ++ + /// Total data blocks in filesystem + #[cfg(target_os = "emscripten")] + pub fn blocks(&self) -> u32 { +@@ -523,6 +555,7 @@ pub fn blocks(&self) -> u32 { + target_os = "fuchsia", + target_os = "openbsd", + ))] ++ #[cfg(not(target_arch = "sw64"))] + pub fn blocks_free(&self) -> u64 { + self.0.f_bfree + } +@@ -533,6 +566,12 @@ pub fn blocks_free(&self) -> libc::c_long { + self.0.f_bfree + } + ++ /// Free blocks in filesystem ++ #[cfg(target_arch = "sw64")] ++ pub fn blocks_free(&self) -> libc::c_long { ++ self.0.f_bfree ++ } ++ + /// Free blocks in filesystem + #[cfg(target_os = "emscripten")] + pub fn blocks_free(&self) -> u32 { +@@ -541,6 +580,7 @@ pub fn blocks_free(&self) -> u32 { + + /// Free blocks available to unprivileged user + #[cfg(any(apple_targets, linux_android, target_os = "fuchsia"))] ++ #[cfg(not(target_arch = "sw64"))] + pub fn blocks_available(&self) -> u64 { + self.0.f_bavail + } +@@ -551,6 +591,12 @@ pub fn blocks_available(&self) -> libc::c_long { + self.0.f_bavail + } + ++ /// Free blocks available to unprivileged user ++ #[cfg(target_arch = "sw64")] ++ pub fn blocks_available(&self) -> libc::c_long { ++ self.0.f_bavail ++ } ++ + /// Free blocks available to unprivileged user + #[cfg(any(target_os = "freebsd", target_os = "openbsd"))] + pub fn blocks_available(&self) -> i64 { +diff --git a/vendor/nix-0.28.0/src/sys/termios.rs b/vendor/nix-0.28.0/src/sys/termios.rs +index e006c2f1b09..20c11d7da5a 100644 +--- a/vendor/nix-0.28.0/src/sys/termios.rs ++++ b/vendor/nix-0.28.0/src/sys/termios.rs +@@ -631,7 +631,7 @@ pub struct ControlFlags: tcflag_t { + CMSPAR; + #[cfg(any(target_os = "android", + all(target_os = "linux", +- not(any(target_arch = "powerpc", target_arch = "powerpc64")))))] ++ not(any(target_arch = "powerpc", target_arch = "powerpc64", target_arch = "sw64")))))] + CIBAUD; + #[cfg(linux_android)] + CBAUDEX; +diff --git a/vendor/nix-0.29.0/src/fcntl.rs b/vendor/nix-0.29.0/src/fcntl.rs +index cf87926c7b1..72b47c89c7c 100644 +--- a/vendor/nix-0.29.0/src/fcntl.rs ++++ b/vendor/nix-0.29.0/src/fcntl.rs +@@ -345,6 +345,7 @@ fn default() -> Self { + /// # See also + /// + /// [openat2](https://man7.org/linux/man-pages/man2/openat2.2.html) ++ #[cfg(not(target_arch = "sw64"))] + pub fn openat2( + dirfd: RawFd, + path: &P, +diff --git a/vendor/nix-0.29.0/src/sys/signal.rs b/vendor/nix-0.29.0/src/sys/signal.rs +index 921fb28d6f5..e582b140dee 100644 +--- a/vendor/nix-0.29.0/src/sys/signal.rs ++++ b/vendor/nix-0.29.0/src/sys/signal.rs +@@ -72,6 +72,7 @@ pub enum Signal { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "sparc64"))))] + SIGSTKFLT, + /// To parent on child stop or exit +@@ -152,6 +153,7 @@ fn from_str(s: &str) -> Result { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "sparc64" + )) + ))] +@@ -234,6 +236,7 @@ pub const fn as_str(self) -> &'static str { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "sparc64" + )) + ))] +@@ -321,6 +324,7 @@ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "sparc64" + )) + ))] +@@ -338,6 +342,7 @@ fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "sparc64" + ) + ))] +diff --git a/vendor/nix-0.29.0/src/sys/statfs.rs b/vendor/nix-0.29.0/src/sys/statfs.rs +index b2315f4cebb..ed093feccd6 100644 +--- a/vendor/nix-0.29.0/src/sys/statfs.rs ++++ b/vendor/nix-0.29.0/src/sys/statfs.rs +@@ -59,10 +59,13 @@ + type fs_type_t = libc::c_ulong; + #[cfg(all(target_os = "linux", target_env = "uclibc"))] + type fs_type_t = libc::c_int; ++#[cfg(target_arch = "sw64")] ++type fs_type_t = libc::c_long; + #[cfg(all( + target_os = "linux", + not(any( + target_arch = "s390x", ++ target_arch = "sw64", + target_env = "musl", + target_env = "ohos", + target_env = "uclibc" +@@ -317,6 +320,12 @@ pub fn optimal_transfer_size(&self) -> u32 { + self.0.f_iosize + } + ++ /// Optimal transfer block size ++ #[cfg(target_arch = "sw64")] ++ pub fn optimal_transfer_size(&self) -> libc::c_long { ++ self.0.f_bsize ++ } ++ + /// Optimal transfer block size + #[cfg(all(target_os = "linux", target_arch = "s390x", not(target_env = "musl")))] + pub fn optimal_transfer_size(&self) -> u32 { +@@ -338,6 +347,7 @@ pub fn optimal_transfer_size(&self) -> libc::c_ulong { + target_os = "linux", + not(any( + target_arch = "s390x", ++ target_arch = "sw64", + target_env = "musl", + target_env = "ohos", + target_env = "uclibc" +@@ -399,12 +409,20 @@ pub fn block_size(&self) -> libc::c_int { + self.0.f_bsize + } + ++ /// Size of a block ++ // f_bsize on linux: https://github.com/torvalds/linux/blob/master/fs/nfs/super.c#L471 ++ #[cfg(target_arch = "sw64")] ++ pub fn block_size(&self) -> libc::c_long { ++ self.0.f_bsize ++ } ++ + /// Size of a block + // f_bsize on linux: https://github.com/torvalds/linux/blob/master/fs/nfs/super.c#L471 + #[cfg(all( + target_os = "linux", + not(any( + target_arch = "s390x", ++ target_arch = "sw64", + target_env = "musl", + target_env = "ohos", + target_env = "uclibc" +@@ -471,11 +489,18 @@ pub fn maximum_name_length(&self) -> libc::c_int { + self.0.f_namelen + } + ++ /// Maximum length of filenames ++ #[cfg(target_arch = "sw64")] ++ pub fn maximum_name_length(&self) -> libc::c_long { ++ self.0.f_namelen ++ } ++ + /// Maximum length of filenames + #[cfg(all( + target_os = "linux", + not(any( + target_arch = "s390x", ++ target_arch = "sw64", + target_env = "musl", + target_env = "ohos", + target_env = "uclibc" +@@ -499,6 +524,7 @@ pub fn maximum_name_length(&self) -> libc::c_ulong { + target_os = "fuchsia", + target_os = "openbsd", + ))] ++ #[cfg(not(target_arch = "sw64"))] + pub fn blocks(&self) -> u64 { + self.0.f_blocks + } +@@ -509,6 +535,12 @@ pub fn blocks(&self) -> libc::c_long { + self.0.f_blocks + } + ++ /// Total data blocks in filesystem ++ #[cfg(target_arch = "sw64")] ++ pub fn blocks(&self) -> libc::c_long { ++ self.0.f_blocks ++ } ++ + /// Total data blocks in filesystem + #[cfg(target_os = "emscripten")] + pub fn blocks(&self) -> u32 { +@@ -523,6 +555,7 @@ pub fn blocks(&self) -> u32 { + target_os = "fuchsia", + target_os = "openbsd", + ))] ++ #[cfg(not(target_arch = "sw64"))] + pub fn blocks_free(&self) -> u64 { + self.0.f_bfree + } +@@ -533,6 +566,12 @@ pub fn blocks_free(&self) -> libc::c_long { + self.0.f_bfree + } + ++ /// Free blocks in filesystem ++ #[cfg(target_arch = "sw64")] ++ pub fn blocks_free(&self) -> libc::c_long { ++ self.0.f_bfree ++ } ++ + /// Free blocks in filesystem + #[cfg(target_os = "emscripten")] + pub fn blocks_free(&self) -> u32 { +@@ -541,6 +580,7 @@ pub fn blocks_free(&self) -> u32 { + + /// Free blocks available to unprivileged user + #[cfg(any(apple_targets, linux_android, target_os = "fuchsia"))] ++ #[cfg(not(target_arch = "sw64"))] + pub fn blocks_available(&self) -> u64 { + self.0.f_bavail + } +@@ -551,6 +591,12 @@ pub fn blocks_available(&self) -> libc::c_long { + self.0.f_bavail + } + ++ /// Free blocks available to unprivileged user ++ #[cfg(target_arch = "sw64")] ++ pub fn blocks_available(&self) -> libc::c_long { ++ self.0.f_bavail ++ } ++ + /// Free blocks available to unprivileged user + #[cfg(any(target_os = "freebsd", target_os = "openbsd"))] + pub fn blocks_available(&self) -> i64 { +diff --git a/vendor/nix-0.29.0/src/sys/termios.rs b/vendor/nix-0.29.0/src/sys/termios.rs +index e006c2f1b09..20c11d7da5a 100644 +--- a/vendor/nix-0.29.0/src/sys/termios.rs ++++ b/vendor/nix-0.29.0/src/sys/termios.rs +@@ -631,7 +631,7 @@ pub struct ControlFlags: tcflag_t { + CMSPAR; + #[cfg(any(target_os = "android", + all(target_os = "linux", +- not(any(target_arch = "powerpc", target_arch = "powerpc64")))))] ++ not(any(target_arch = "powerpc", target_arch = "powerpc64", target_arch = "sw64")))))] + CIBAUD; + #[cfg(linux_android)] + CBAUDEX; +diff --git a/vendor/object-0.36.7/src/common.rs b/vendor/object-0.36.7/src/common.rs +index 4edd9302ce2..537a5c8ad3a 100644 +--- a/vendor/object-0.36.7/src/common.rs ++++ b/vendor/object-0.36.7/src/common.rs +@@ -35,6 +35,7 @@ pub enum Architecture { + Sparc, + Sparc32Plus, + Sparc64, ++ Sw64, + Wasm32, + Wasm64, + Xtensa, +@@ -84,6 +85,7 @@ pub fn address_size(self) -> Option { + Architecture::Sparc => Some(AddressSize::U32), + Architecture::Sparc32Plus => Some(AddressSize::U32), + Architecture::Sparc64 => Some(AddressSize::U64), ++ Architecture::Sw64 => Some(AddressSize::U64), + Architecture::Wasm32 => Some(AddressSize::U32), + Architecture::Wasm64 => Some(AddressSize::U64), + Architecture::Xtensa => Some(AddressSize::U32), +diff --git a/vendor/object-0.36.7/src/elf.rs b/vendor/object-0.36.7/src/elf.rs +index 46a39c0022f..93f2cfff317 100644 +--- a/vendor/object-0.36.7/src/elf.rs ++++ b/vendor/object-0.36.7/src/elf.rs +@@ -3352,6 +3352,122 @@ pub fn gnu_hash(name: &[u8]) -> u32 { + // Alpha values for `Dyn64::d_tag`. + pub const DT_ALPHA_PLTRO: u32 = DT_LOPROC + 0; + ++// Sw64 specific definitions. ++ ++// Sw64 values for `FileHeader64::e_flags`. ++pub const EM_SW_64:u16 = 0x9916; ++ ++/// All addresses must be < 2GB. ++pub const EF_SW_64_32BIT: u32 = 1; ++/// Relocations for relaxing exist. ++pub const EF_SW_64_CANRELAX: u32 = 2; ++ ++// Sw64 values for `SectionHeader64::sh_type`. ++ ++// These two are primerily concerned with ECOFF debugging info. ++#[allow(missing_docs)] ++pub const SHT_SW_64_DEBUG: u32 = 0x7000_0001; ++#[allow(missing_docs)] ++pub const SHT_SW_64_REGINFO: u32 = 0x7000_0002; ++ ++// Sw64 values for `SectionHeader64::sh_flags`. ++ ++#[allow(missing_docs)] ++pub const SHF_SW_64_GPREL: u32 = 0x1000_0000; ++ ++// Sw64 values for `Sym64::st_other`. ++/// No PV required. ++pub const STO_SW_64_NOPV: u8 = 0x80; ++/// PV only used for initial ldgp. ++pub const STO_SW_64_STD_GPLOAD: u8 = 0x88; ++ ++// Sw64 values for `Rel64::r_type`. ++ ++/// No reloc ++pub const R_SW_64_NONE: u32 = 0; ++/// Direct 32 bit ++pub const R_SW_64_REFLONG: u32 = 1; ++/// Direct 64 bit ++pub const R_SW_64_REFQUAD: u32 = 2; ++/// GP relative 32 bit ++pub const R_SW_64_GPREL32: u32 = 3; ++/// GP relative 16 bit w/optimization ++pub const R_SW_64_LITERAL: u32 = 4; ++/// Optimization hint for LITERAL ++pub const R_SW_64_LITUSE: u32 = 5; ++/// Add displacement to GP ++pub const R_SW_64_GPDISP: u32 = 6; ++/// PC+4 relative 23 bit shifted ++pub const R_SW_64_BRADDR: u32 = 7; ++/// PC+4 relative 16 bit shifted ++pub const R_SW_64_HINT: u32 = 8; ++/// PC relative 16 bit ++pub const R_SW_64_SREL16: u32 = 9; ++/// PC relative 32 bit ++pub const R_SW_64_SREL32: u32 = 10; ++/// PC relative 64 bit ++pub const R_SW_64_SREL64: u32 = 11; ++/// GP relative 32 bit, high 16 bits ++pub const R_SW_64_GPRELHIGH: u32 = 17; ++/// GP relative 32 bit, low 16 bits ++pub const R_SW_64_GPRELLOW: u32 = 18; ++/// GP relative 16 bit ++pub const R_SW_64_GPREL16: u32 = 19; ++/// Copy symbol at runtime ++pub const R_SW_64_COPY: u32 = 24; ++/// Create GOT entry ++pub const R_SW_64_GLOB_DAT: u32 = 25; ++/// Create PLT entry ++pub const R_SW_64_JMP_SLOT: u32 = 26; ++/// Adjust by program base ++pub const R_SW_64_RELATIVE: u32 = 27; ++#[allow(missing_docs)] ++pub const R_SW_64_TLS_GD_HI: u32 = 28; ++#[allow(missing_docs)] ++pub const R_SW_64_TLSGD: u32 = 29; ++#[allow(missing_docs)] ++pub const R_SW_64_TLS_LDM: u32 = 30; ++#[allow(missing_docs)] ++pub const R_SW_64_DTPMOD64: u32 = 31; ++#[allow(missing_docs)] ++pub const R_SW_64_GOTDTPREL: u32 = 32; ++#[allow(missing_docs)] ++pub const R_SW_64_DTPREL64: u32 = 33; ++#[allow(missing_docs)] ++pub const R_SW_64_DTPRELHI: u32 = 34; ++#[allow(missing_docs)] ++pub const R_SW_64_DTPRELLO: u32 = 35; ++#[allow(missing_docs)] ++pub const R_SW_64_DTPREL16: u32 = 36; ++#[allow(missing_docs)] ++pub const R_SW_64_GOTTPREL: u32 = 37; ++#[allow(missing_docs)] ++pub const R_SW_64_TPREL64: u32 = 38; ++#[allow(missing_docs)] ++pub const R_SW_64_TPRELHI: u32 = 39; ++#[allow(missing_docs)] ++pub const R_SW_64_TPRELLO: u32 = 40; ++#[allow(missing_docs)] ++pub const R_SW_64_TPREL16: u32 = 41; ++ ++// Magic values of the `R_SW_64_LITUSE` relocation addend. ++#[allow(missing_docs)] ++pub const LITUSE_SW_64_ADDR: u32 = 0; ++#[allow(missing_docs)] ++pub const LITUSE_SW_64_BASE: u32 = 1; ++#[allow(missing_docs)] ++pub const LITUSE_SW_64_BYTOFF: u32 = 2; ++#[allow(missing_docs)] ++pub const LITUSE_SW_64_JSR: u32 = 3; ++#[allow(missing_docs)] ++pub const LITUSE_SW_64_TLS_GD: u32 = 4; ++#[allow(missing_docs)] ++pub const LITUSE_SW_64_TLS_LDM: u32 = 5; ++ ++// Sw64 values for `Dyn64::d_tag`. ++#[allow(missing_docs)] ++pub const DT_SW_64_PLTRO: u32 = DT_LOPROC + 0; ++ + // PowerPC specific declarations. + + // PowerPC values for `FileHeader*::e_flags`. +diff --git a/vendor/object-0.36.7/src/read/elf/file.rs b/vendor/object-0.36.7/src/read/elf/file.rs +index 8b91ecb6e40..9fcf5fb45f3 100644 +--- a/vendor/object-0.36.7/src/read/elf/file.rs ++++ b/vendor/object-0.36.7/src/read/elf/file.rs +@@ -278,6 +278,7 @@ fn architecture(&self) -> Architecture { + (elf::EM_SPARC, false) => Architecture::Sparc, + (elf::EM_SPARC32PLUS, false) => Architecture::Sparc32Plus, + (elf::EM_SPARCV9, true) => Architecture::Sparc64, ++ (elf::EM_SW_64, true) => Architecture::Sw64, + (elf::EM_XTENSA, false) => Architecture::Xtensa, + _ => Architecture::Unknown, + } +diff --git a/vendor/object-0.36.7/src/read/elf/relocation.rs b/vendor/object-0.36.7/src/read/elf/relocation.rs +index ae4d4b10c11..984ca032e0e 100644 +--- a/vendor/object-0.36.7/src/read/elf/relocation.rs ++++ b/vendor/object-0.36.7/src/read/elf/relocation.rs +@@ -434,6 +434,11 @@ fn parse_relocation( + elf::R_SPARC_64 | elf::R_SPARC_UA64 => (K::Absolute, g, 64), + _ => unknown, + }, ++ elf::EM_SW_64 => match r_type { ++ elf::R_SW_64_REFLONG => (K::Absolute, g, 32), ++ elf::R_SW_64_REFQUAD => (K::Relative, g, 64), ++ _ => unknown, ++ }, + elf::EM_XTENSA => match r_type { + elf::R_XTENSA_32 => (K::Absolute, g, 32), + elf::R_XTENSA_32_PCREL => (K::Relative, g, 32), +diff --git a/vendor/object-0.36.7/src/write/elf/object.rs b/vendor/object-0.36.7/src/write/elf/object.rs +index 8bcbb629fd7..2543664259c 100644 +--- a/vendor/object-0.36.7/src/write/elf/object.rs ++++ b/vendor/object-0.36.7/src/write/elf/object.rs +@@ -150,6 +150,7 @@ fn elf_has_relocation_addend(&self) -> Result { + Architecture::Sparc => true, + Architecture::Sparc32Plus => true, + Architecture::Sparc64 => true, ++ Architecture::Sw64 => true, + Architecture::Xtensa => true, + _ => { + return Err(Error(format!( +@@ -364,6 +365,11 @@ pub(crate) fn elf_translate_relocation(&mut self, reloc: &mut Relocation) -> Res + (K::Absolute, _, 64) => elf::R_SPARC_UA64, + _ => return unsupported_reloc(), + }, ++ Architecture::Sw64 => match (kind, encoding, size) { ++ (K::Absolute, _, 32) => elf::R_SW_64_REFLONG, ++ (K::Absolute, _, 64) => elf::R_SW_64_REFQUAD, ++ _ => return unsupported_reloc(), ++ }, + Architecture::Xtensa => match (kind, encoding, size) { + (K::Absolute, _, 32) => elf::R_XTENSA_32, + (K::Relative, E::Generic, 32) => elf::R_XTENSA_32_PCREL, +@@ -582,6 +588,7 @@ pub(crate) fn elf_write(&self, buffer: &mut dyn WritableBuffer) -> Result<()> { + (Architecture::Sparc, None) => elf::EM_SPARC, + (Architecture::Sparc32Plus, None) => elf::EM_SPARC32PLUS, + (Architecture::Sparc64, None) => elf::EM_SPARCV9, ++ (Architecture::Sw64, None) => elf::EM_SW_64, + (Architecture::Xtensa, None) => elf::EM_XTENSA, + _ => { + return Err(Error(format!( +diff --git a/vendor/psm-0.1.24/build.rs b/vendor/psm-0.1.24/build.rs +index bc84149f83e..0aada1c2491 100644 +--- a/vendor/psm-0.1.24/build.rs ++++ b/vendor/psm-0.1.24/build.rs +@@ -49,6 +49,7 @@ fn find_assembly( + ("mips64", _, _, _) => Some(("src/arch/mips64_eabi.s", true)), + ("sparc64", _, _, _) => Some(("src/arch/sparc64.s", true)), + ("sparc", _, _, _) => Some(("src/arch/sparc_sysv.s", true)), ++ ("sw64", _, _, _) => Some(("src/arch/sw64.s", true)), + ("riscv32", _, _, _) => Some(("src/arch/riscv.s", true)), + ("riscv64", _, _, _) => Some(("src/arch/riscv64.s", true)), + ("wasm32", _, _, _) => Some(("src/arch/wasm32.o", true)), +diff --git a/vendor/psm-0.1.24/src/arch/sw64.s b/vendor/psm-0.1.24/src/arch/sw64.s +new file mode 100644 +index 00000000000..96ebb100035 +--- /dev/null ++++ b/vendor/psm-0.1.24/src/arch/sw64.s +@@ -0,0 +1,88 @@ ++/* ++Not only SW64 has 20 different ABIs... nobody tells anybody what specific variant of which ABI is ++used where. ++ ++This is an "EABI" implementation based on the following page: ++ ++http://www.cygwin.com/ml/binutils/2003-06/msg00436.html ++*/ ++ ++#include "psm.h" ++ ++.set noreorder /* we’ll manage the delay slots on our own, thanks! */ ++ ++.text ++.globl rust_psm_stack_direction ++.p2align 2 ++.type rust_psm_stack_direction,@function ++.ent rust_psm_stack_direction ++/* extern "C" fn() -> u8 */ ++rust_psm_stack_direction: ++.cfi_startproc ++ addw $31, STACK_DIRECTION_DESCENDING, $0 ++ ret $31, ($26), 1 ++.end rust_psm_stack_direction ++.rust_psm_stack_direction_end: ++.size rust_psm_stack_direction,.rust_psm_stack_direction_end-rust_psm_stack_direction ++.cfi_endproc ++ ++ ++.globl rust_psm_stack_pointer ++.p2align 2 ++.type rust_psm_stack_pointer,@function ++.ent rust_psm_stack_pointer ++/* extern "C" fn() -> *mut u8 */ ++rust_psm_stack_pointer: ++.cfi_startproc ++ mov $30, $0 ++ ret $31, ($26), 1 ++.end rust_psm_stack_pointer ++.rust_psm_stack_pointer_end: ++.size rust_psm_stack_pointer,.rust_psm_stack_pointer_end-rust_psm_stack_pointer ++.cfi_endproc ++ ++ ++.globl rust_psm_replace_stack ++.p2align 2 ++.type rust_psm_replace_stack,@function ++.ent rust_psm_replace_stack ++/* extern "C" fn(r16: usize, r17: extern "C" fn(usize), r18: *mut u8) */ ++rust_psm_replace_stack: ++.cfi_startproc ++ mov $30, $18 ++ jmp $31, ($17) ++.end rust_psm_replace_stack ++.rust_psm_replace_stack_end: ++.size rust_psm_replace_stack,.rust_psm_on_stack_end-rust_psm_on_stack ++.cfi_endproc ++ ++ ++.globl rust_psm_on_stack ++.p2align 2 ++.type rust_psm_on_stack,@function ++.ent rust_psm_on_stack ++/* extern "C" fn(r16: usize, r17: usize, r18: extern "C" fn(usize), r19: *mut u8) */ ++rust_psm_on_stack: ++.cfi_startproc ++ ldi $30, -16($30) ++ .cfi_def_cfa_offset 16 ++ stl $26, 0($30) ++ stl $15, 8($30) ++ .cfi_offset 26, -16 ++ .cfi_offset 15, -8 ++ mov $30, $15 ++ .cfi_def_cfa_register 15 ++ bis $19, $19, $30 ++ call $26, ($18), 0 ++ mov $15, $30 ++ ldl $26, 0($30) ++ ldl $15, 8($30) ++ ldi $30, 16($30) ++ .cfi_restore 15 ++ .cfi_restore 26 ++ .cfi_def_cfa 30, 0 ++ ret $31, ($26), 1 ++.end rust_psm_on_stack ++.rust_psm_on_stack_end: ++.size rust_psm_on_stack,.rust_psm_on_stack_end-rust_psm_on_stack ++.cfi_endproc +diff --git a/vendor/rustix-0.38.40/src/ioctl/linux.rs b/vendor/rustix-0.38.40/src/ioctl/linux.rs +index 552625f2d77..8af69b18eb6 100644 +--- a/vendor/rustix-0.38.40/src/ioctl/linux.rs ++++ b/vendor/rustix-0.38.40/src/ioctl/linux.rs +@@ -68,6 +68,7 @@ mod consts { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "powerpc", + target_arch = "powerpc64", + target_arch = "sparc", +diff --git a/vendor/rustix-0.38.43/src/backend/libc/c.rs b/vendor/rustix-0.38.43/src/backend/libc/c.rs +index 10d44e6d379..d5afa65c52b 100644 +--- a/vendor/rustix-0.38.43/src/backend/libc/c.rs ++++ b/vendor/rustix-0.38.43/src/backend/libc/c.rs +@@ -106,7 +106,7 @@ + #[cfg(all( + linux_kernel, + feature = "termios", +- any(target_arch = "powerpc", target_arch = "powerpc64") ++ any(target_arch = "powerpc", target_arch = "powerpc64", target_arch = "sw64") + ))] + pub(crate) use libc::{ + termios as termios2, TCGETS as TCGETS2, TCSETS as TCSETS2, TCSETSF as TCSETSF2, +@@ -118,7 +118,7 @@ + #[cfg(all( + linux_kernel, + feature = "termios", +- any(target_arch = "powerpc", target_arch = "powerpc64") ++ any(target_arch = "powerpc", target_arch = "powerpc64", target_arch = "sw64") + ))] + pub(crate) const CIBAUD: u32 = libc::CBAUD << libc::IBSHIFT; + +diff --git a/vendor/rustix-0.38.43/src/ioctl/linux.rs b/vendor/rustix-0.38.43/src/ioctl/linux.rs +index 552625f2d77..8af69b18eb6 100644 +--- a/vendor/rustix-0.38.43/src/ioctl/linux.rs ++++ b/vendor/rustix-0.38.43/src/ioctl/linux.rs +@@ -68,6 +68,7 @@ mod consts { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "powerpc", + target_arch = "powerpc64", + target_arch = "sparc", +diff --git a/vendor/rustix-0.38.44/src/backend/libc/c.rs b/vendor/rustix-0.38.44/src/backend/libc/c.rs +index 10d44e6d379..d5afa65c52b 100644 +--- a/vendor/rustix-0.38.44/src/backend/libc/c.rs ++++ b/vendor/rustix-0.38.44/src/backend/libc/c.rs +@@ -106,7 +106,7 @@ + #[cfg(all( + linux_kernel, + feature = "termios", +- any(target_arch = "powerpc", target_arch = "powerpc64") ++ any(target_arch = "powerpc", target_arch = "powerpc64", target_arch = "sw64") + ))] + pub(crate) use libc::{ + termios as termios2, TCGETS as TCGETS2, TCSETS as TCSETS2, TCSETSF as TCSETSF2, +@@ -118,7 +118,7 @@ + #[cfg(all( + linux_kernel, + feature = "termios", +- any(target_arch = "powerpc", target_arch = "powerpc64") ++ any(target_arch = "powerpc", target_arch = "powerpc64", target_arch = "sw64") + ))] + pub(crate) const CIBAUD: u32 = libc::CBAUD << libc::IBSHIFT; + +diff --git a/vendor/rustix-0.38.44/src/ioctl/linux.rs b/vendor/rustix-0.38.44/src/ioctl/linux.rs +index 552625f2d77..8af69b18eb6 100644 +--- a/vendor/rustix-0.38.44/src/ioctl/linux.rs ++++ b/vendor/rustix-0.38.44/src/ioctl/linux.rs +@@ -68,6 +68,7 @@ mod consts { + target_arch = "mips32r6", + target_arch = "mips64", + target_arch = "mips64r6", ++ target_arch = "sw64", + target_arch = "powerpc", + target_arch = "powerpc64", + target_arch = "sparc", +-- +2.33.0 + diff --git a/rust.spec b/rust.spec index 77412087286fdbbc9926a1f8b24222df3cf6b759..f78c5a37b73ae5db77cafad042696e18ee043faa 100644 --- a/rust.spec +++ b/rust.spec @@ -25,7 +25,7 @@ Name: rust Version: 1.86.0 -Release: 6 +Release: 7 Summary: The Rust Programming Language License: Apache-2.0 OR MIT URL: https://www.rust-lang.org @@ -43,6 +43,7 @@ Patch0001: 0001-Use-lld-provided-by-system.patch # Set a substitute-path in rust-gdb for standard library sources. Patch0002: rustc-1.70.0-rust-gdb-substitute-path.patch Patch0003: 0001-add-support-for-ppc64le.patch +Patch0004: 0001-Add-support-for-sw_64.patch %{lua: function rust_triple(arch) local abi = "gnu" @@ -290,6 +291,7 @@ sed -i.try-python -e '/^try python3 /i try "%{python}" "$@"' ./configure %patch -P 0001 -p1 %patch -P 0002 -p1 %patch -P 0003 -p1 +%patch -P 0004 -p1 rm -rf vendor/curl-sys*/curl/ rm -rf vendor/jemalloc-sys/jemalloc/ rm -rf vendor/libffi-sys*/libffi/ @@ -548,6 +550,9 @@ export %{rust_env} %{_mandir}/man1/cargo*.1* %changelog +* Thu Sep 25 2025 swcompiler - 1.86.0-7 +- Add support for Sw64 + * Wed Sep 24 2025 wangkai <13474090681@163.com> - 1.86.0-6 - Remove rls command - Cleanup spec